Module: Usps::Support::Models::GitHub
- Defined in:
- lib/usps/support/models/git_hub.rb
Overview
GitHub API
Constant Summary collapse
- ORG =
'unitedstatespowersquadrons'
Class Method Summary collapse
- .check_suites(repo, branch) ⇒ Object
- .expired? ⇒ Boolean
- .expires_at ⇒ Object
- .fetch_head_commit(repo, branch) ⇒ Object
- .latest_tag(repo, include_prereleases: false) ⇒ Object
- .permissions ⇒ Object
- .repository_selection ⇒ Object
Class Method Details
.check_suites(repo, branch) ⇒ Object
10 11 12 |
# File 'lib/usps/support/models/git_hub.rb', line 10 def check_suites(repo, branch) client.check_suites_for_ref("#{ORG}/#{repo}", branch).check_suites end |
.expired? ⇒ Boolean
30 |
# File 'lib/usps/support/models/git_hub.rb', line 30 def expired? = expires_at <= Time.zone.now |
.expires_at ⇒ Object
31 |
# File 'lib/usps/support/models/git_hub.rb', line 31 def expires_at = @auth[:expires_at] |
.fetch_head_commit(repo, branch) ⇒ Object
14 15 16 17 |
# File 'lib/usps/support/models/git_hub.rb', line 14 def fetch_head_commit(repo, branch) sha = client.ref("#{ORG}/#{repo}", "heads/#{branch}").object.sha client.commit("#{ORG}/#{repo}", sha).commit end |
.latest_tag(repo, include_prereleases: false) ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/usps/support/models/git_hub.rb', line 19 def latest_tag(repo, include_prereleases: false) client .("#{ORG}/#{repo}") .pluck(:name) .grep(/^v\d+\.\d+\.\d(?:-[\w\-.]+)?/) .index_with { Gem::Version.new(it.delete('v')) } .reject { |_, gv| gv.prerelease? unless include_prereleases } .max_by { |_, gv| gv } .first end |
.permissions ⇒ Object
32 |
# File 'lib/usps/support/models/git_hub.rb', line 32 def = @auth[:permissions] |
.repository_selection ⇒ Object
33 |
# File 'lib/usps/support/models/git_hub.rb', line 33 def repository_selection = @auth[:repository_selection] |