Class: BundleUp::Unify::Git
- Defined in:
- lib/bundleup/unify/git.rb,
sig/bundleup/unify/git.rbs
Overview
Client for Git Unify endpoints.
Constant Summary
Constants inherited from Base
Base::API_VERSION, Base::BASE_URL
Instance Attribute Summary
Attributes inherited from Base
Instance Method Summary collapse
-
#branches(repo_name, params = {}) ⇒ { data: Array[git_branch], metadata: metadata }
Fetches branches for a specific repository from the connected Git provider.
-
#commits(repo_name, params = {}) ⇒ Object
Fetches commits for a specific repository from the connected Git provider.
-
#pulls(repo_name, params = {}) ⇒ { data: Array[git_pull], metadata: metadata }
Fetches pull requests for a specific repository from the connected Git provider.
-
#releases(repo_name, params = {}) ⇒ { data: Array[git_release], metadata: metadata }
Fetches releases for a specific repository from the connected Git provider.
-
#repos(params = {}) ⇒ { data: Array[git_repo], metadata: metadata }
Fetches repositories from the connected Git provider.
-
#tags(repo_name, params = {}) ⇒ { data: Array[git_tag], metadata: metadata }
Fetches tags for a specific repository from the connected Git provider.
Methods inherited from Base
Constructor Details
This class inherits a constructor from BundleUp::Unify::Base
Instance Method Details
#branches(repo_name, params = {}) ⇒ { data: Array[git_branch], metadata: metadata }
Fetches branches for a specific repository from the connected Git provider.
64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/bundleup/unify/git.rb', line 64 def branches(repo_name, params = {}) raise ArgumentError, 'repo_name is required to fetch branches.' if blank?(repo_name) encoded_repo_name = URI.encode_www_form_component(repo_name) response = connection.get("git/repos/#{encoded_repo_name}/branches") do |req| req.params = params end raise "Failed to fetch git/repos/#{encoded_repo_name}/branches: #{response.status}" unless response.success? response.body end |
#commits(repo_name, params = {}) ⇒ Object
Fetches commits for a specific repository from the connected Git provider.
79 80 81 82 83 84 85 86 87 88 89 90 91 |
# File 'lib/bundleup/unify/git.rb', line 79 def commits(repo_name, params = {}) raise ArgumentError, 'repo_name is required to fetch commits.' if blank?(repo_name) encoded_repo_name = URI.encode_www_form_component(repo_name) response = connection.get("git/repos/#{encoded_repo_name}/commits") do |req| req.params = params end raise "Failed to fetch git/repos/#{encoded_repo_name}/commits: #{response.status}" unless response.success? response.body end |
#pulls(repo_name, params = {}) ⇒ { data: Array[git_pull], metadata: metadata }
Fetches pull requests for a specific repository from the connected Git provider.
19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/bundleup/unify/git.rb', line 19 def pulls(repo_name, params = {}) raise ArgumentError, 'repo_name is required to fetch pulls.' if blank?(repo_name) encoded_repo_name = URI.encode_www_form_component(repo_name) response = connection.get("git/repos/#{encoded_repo_name}/pulls") do |req| req.params = params end raise "Failed to fetch git/repos/#{encoded_repo_name}/pulls: #{response.status}" unless response.success? response.body end |
#releases(repo_name, params = {}) ⇒ { data: Array[git_release], metadata: metadata }
Fetches releases for a specific repository from the connected Git provider.
49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/bundleup/unify/git.rb', line 49 def releases(repo_name, params = {}) raise ArgumentError, 'repo_name is required to fetch releases.' if blank?(repo_name) encoded_repo_name = URI.encode_www_form_component(repo_name) response = connection.get("git/repos/#{encoded_repo_name}/releases") do |req| req.params = params end raise "Failed to fetch git/repos/#{encoded_repo_name}/releases: #{response.status}" unless response.success? response.body end |
#repos(params = {}) ⇒ { data: Array[git_repo], metadata: metadata }
Fetches repositories from the connected Git provider.
8 9 10 11 12 13 14 15 16 |
# File 'lib/bundleup/unify/git.rb', line 8 def repos(params = {}) response = connection.get('git/repos') do |req| req.params = params end raise "Failed to fetch git/repos: #{response.status}" unless response.success? response.body end |
#tags(repo_name, params = {}) ⇒ { data: Array[git_tag], metadata: metadata }
Fetches tags for a specific repository from the connected Git provider.
34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/bundleup/unify/git.rb', line 34 def (repo_name, params = {}) raise ArgumentError, 'repo_name is required to fetch tags.' if blank?(repo_name) encoded_repo_name = URI.encode_www_form_component(repo_name) response = connection.get("git/repos/#{encoded_repo_name}/tags") do |req| req.params = params end raise "Failed to fetch git/repos/#{encoded_repo_name}/tags: #{response.status}" unless response.success? response.body end |