github-rundeck 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/github-rundeck.rb +34 -6
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6df24e5e1878a7de0e102d228f3776fa258ef9ce
4
- data.tar.gz: ae6dfe564d705b6e2e92789f9c6827c04919e79d
3
+ metadata.gz: 47d1b7364c0c57961c587257fd0cd862652a2386
4
+ data.tar.gz: 2c1627c159047cd8de857e371e1ac3ad1a98e2b7
5
5
  SHA512:
6
- metadata.gz: 3336e9a8a221f435ed8eb0d23f9b68c929c405c6abe237db347ae498472e3620d19db180b7ee2af7bb6a6b0f233e0055ca5ea569c93e46fbbf2cc1de46cdec26
7
- data.tar.gz: adb1cd5ca2e4dbb46ffae176aafc0391876f9be84195cdcb33392496696052c1bb6ea02211062f2ba136783b52aaa43d16a368aa3a1c46385879c9cd183f981f
6
+ metadata.gz: 3732824f6d991df279724a9db58461198bf4f3e30eec8c6528cef34afdf08de0bba10b23996517eb5fa87d10c5aff7005a6f99c8e9d1bc8f683be1e5d874acaf
7
+ data.tar.gz: 5db88ee35bf05004fc8c688dbfa13e52cc775dfeeaea761531df6ebd47f207111c5f7a8d3b8e051953f2fb34d879b429a9409711ab43830b060e995f0970b6bf
@@ -24,7 +24,7 @@ class GithubRunDeck < Sinatra::Base
24
24
  register Sinatra::Reloader
25
25
  end
26
26
 
27
- VERSION = '0.1.1'.freeze
27
+ VERSION = '0.1.2'.freeze
28
28
 
29
29
  ######################
30
30
  # => Definitions <=#
@@ -32,7 +32,7 @@ class GithubRunDeck < Sinatra::Base
32
32
 
33
33
  def ghclient
34
34
  # => Instantiate a new GitHub Client
35
- Github::Client::Repos.new
35
+ Github::Client.new
36
36
  end
37
37
 
38
38
  def serialize(response)
@@ -91,23 +91,51 @@ class GithubRunDeck < Sinatra::Base
91
91
 
92
92
  # => Get Organization Repo List
93
93
  get '/repos/org/:org' do |org|
94
- ghresponse = ghclient.list(org: org, per_page: 100)
94
+ ghresponse = ghclient.repos.list(org: org, per_page: 100)
95
95
  etag ghresponse.headers.etag
96
96
  body serialize(ghresponse)
97
97
  end
98
98
 
99
99
  # => Get User Repo List
100
100
  get '/repos/user/:user' do |user|
101
- ghresponse = ghclient.list(user: user, per_page: 100)
101
+ ghresponse = ghclient.repos.list(user: user, per_page: 100)
102
102
  etag ghresponse.headers.etag
103
103
  body serialize(ghresponse)
104
104
  end
105
105
 
106
106
  # => Get Branch/Tag Names
107
107
  get '/revisions/:user/:repo' do |user, repo|
108
- branches = ghclient.branches(user: user, repo: repo)
109
- tags = ghclient.tags(user: user, repo: repo)
108
+ branches = ghclient.repos.branches(user: user, repo: repo)
109
+ tags = ghclient.repos.tags(user: user, repo: repo)
110
110
  body serialize_revisions(branches, tags)
111
111
  end
112
+
113
+ # => Compare Branch/Tags
114
+ get '/compare/:user/:repo' do |user, repo|
115
+ # => Check Parameters - Default to Master
116
+ refs = [
117
+ { 'target' => params['ref1'] || 'master' },
118
+ { 'target' => params['ref2'] || 'master' }
119
+ ]
120
+
121
+ begin
122
+ refs.each do |ref|
123
+ # => Pull the SHA
124
+ ref['sha'] = ghclient.git_data.trees.get(user, repo, ref['target']).first[1]
125
+ end
126
+
127
+ if refs[0]['sha'] == refs[1]['sha']
128
+ return "ref1(#{user}/#{repo}/#{refs[0]['target']}) is the same as ref2(#{user}/#{repo}/#{refs[1]['target']})".to_json
129
+ else
130
+ status 500 unless params['errorok'] == '1'
131
+ return "ALERT!!! - ref1(#{user}/#{repo}/#{refs[0]['target']}) is different than ref2(#{user}/#{repo}/#{refs[1]['target']})".to_json
132
+ end
133
+
134
+ # => Catch any GitHub Errors
135
+ rescue Github::Error::GithubError => e
136
+ status 500 unless params['errorok'] == '1'
137
+ e.message.to_json
138
+ end
139
+ end
112
140
  end
113
141
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: github-rundeck
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Dwyer
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-08-05 00:00:00.000000000 Z
11
+ date: 2016-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: github_api