Module: GitLab
- Defined in:
- lib/GitLab/gitlab.rb
Defined Under Namespace
Classes: Comment, Issue, List, MergeRequest, User
Class Method Summary collapse
- .check_authorized(res) ⇒ Object
- .check_errors_404(res) ⇒ Object
- .create_labels ⇒ Object
- .request_get(url) ⇒ Object
- .request_post(url, params) ⇒ Object
- .request_put(url, params) ⇒ Object
Class Method Details
.check_authorized(res) ⇒ Object
51 52 53 54 55 |
# File 'lib/GitLab/gitlab.rb', line 51 def self. res if res.code == "401" raise "Unauthorized. Check GITLAB_TOKEN and file .env" end end |
.check_errors_404(res) ⇒ Object
45 46 47 48 49 |
# File 'lib/GitLab/gitlab.rb', line 45 def self.check_errors_404 res if res.code == "404" raise "Project: #{$GITLAB_PROJECT_ID} \n#{JSON.parse(res.body)['message']}" end end |
.create_labels ⇒ Object
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/GitLab/gitlab.rb', line 57 def self.create_labels url = "projects/#{$GITLAB_PROJECT_ID}/labels" params = [ {name: 'feature', color: "#5CB85C"}, {name: 'default_branch', color: "#34495E"}, {name: 'version', color: "#34495E"}, {name: 'hotfix', color: "#d9534f"}, {name: 'production', color: "#F45D43"}, {name: 'urgent', color: "#d9534f"}, {name: 'bugfix', color: "#D9534F"}, {name: 'changelog', color: "#0033CC"}, {name: 'Staging', color: "#FAD8C7"}, {name: 'tasks', color: "#F0AD4E"}, ] $GIT_BRANCHES_STAGING.each do |staging| params << {name: staging, color: '#FAD8C7'} end params << {name: $GITLAB_NEXT_RELEASE_LIST, color: '#34495E'} params.each do |label_params| self.request_post(url, label_params) end end |
.request_get(url) ⇒ Object
34 35 36 37 38 39 40 41 42 43 |
# File 'lib/GitLab/gitlab.rb', line 34 def self.request_get url request = "#{$GITLAB_URL_API}/#{url}" uri = URI(request) req = Net::HTTP::Get.new(uri) req['PRIVATE-TOKEN'] = $GITLAB_TOKEN res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) {|http| http.request(req) } res check_errors_404 res JSON.parse(res.body) end |
.request_post(url, params) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/GitLab/gitlab.rb', line 10 def self.request_post url, params request = "#{$GITLAB_URL_API}/#{url}" uri = URI(request) req = Net::HTTP::Post.new(uri) req['PRIVATE-TOKEN'] = $GITLAB_TOKEN req.set_form_data(params) res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) {|http| http.request(req) } res check_errors_404 res JSON.parse(res.body) end |
.request_put(url, params) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/GitLab/gitlab.rb', line 22 def self.request_put url, params request = "#{$GITLAB_URL_API}/#{url}" uri = URI(request) req = Net::HTTP::Put.new(uri) req['PRIVATE-TOKEN'] = $GITLAB_TOKEN req.set_form_data(params) res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) {|http| http.request(req) } res check_errors_404 res JSON.parse(res.body) end |