Module: QCloudHive::CodeOA
- Defined in:
- lib/qcloudhive/gitlab.rb
Class Method Summary collapse
- .branch(project, name) ⇒ Object
- .branchs(project) ⇒ Object
- .createProject(projectName) ⇒ Object
- .empty?(project) ⇒ Boolean
- .exist?(projectName) ⇒ Boolean
- .existProjectByName?(projectName) ⇒ Boolean
- .setup(token) ⇒ Object
Class Method Details
.branch(project, name) ⇒ Object
22 23 24 25 26 27 28 |
# File 'lib/qcloudhive/gitlab.rb', line 22 def CodeOA.branch(project, name) begin Gitlab.branch(project, name) rescue Gitlab::Error::NotFound return nil end end |
.branchs(project) ⇒ Object
57 58 59 |
# File 'lib/qcloudhive/gitlab.rb', line 57 def CodeOA.branchs(project) Gitlab.branches(project.id) end |
.createProject(projectName) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/qcloudhive/gitlab.rb', line 43 def CodeOA.createProject(projectName) project = CodeOA.existProjectByName?(projectName) if project != nil puts ("#{name}已经在CodeOA上存在,将不会在git.code.oa.com上再次新建改项目") return project else Gitlab.create_project(projectName, { :description => "#{projectName}的仓库", :namespace_id => Config.namespaceID }) CodeOA.existProjectByName?(projectName) end end |
.empty?(project) ⇒ Boolean
61 62 63 64 65 66 67 |
# File 'lib/qcloudhive/gitlab.rb', line 61 def CodeOA.empty?(project) if Gitlab.branches(project.id).count == 0 true else false end end |
.exist?(projectName) ⇒ Boolean
12 13 14 15 16 17 18 19 20 |
# File 'lib/qcloudhive/gitlab.rb', line 12 def CodeOA.exist?(projectName) project = existProjectByName?(projectName) L.debug "project #{project}" if project != nil return true else return false end end |
.existProjectByName?(projectName) ⇒ Boolean
29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/qcloudhive/gitlab.rb', line 29 def CodeOA.existProjectByName?(projectName) projects = Gitlab.project_search(projectName) L.info "所有项目 #{projects.count}" aimProjects = projects.select{ |p| L.debug "#{projectName} #{p.name} #{p.namespace.path} #{Config.team}" p.name == projectName && p.namespace.path == Config.team } if aimProjects.count > 0 return aimProjects.first else return nil end end |
.setup(token) ⇒ Object
8 9 10 11 |
# File 'lib/qcloudhive/gitlab.rb', line 8 def CodeOA.setup(token) Gitlab.endpoint = "http://git.code.oa.com/api/v3" Gitlab.private_token = token end |