Class: CircleCI::CoverageReporter::Client
- Inherits:
-
Object
- Object
- CircleCI::CoverageReporter::Client
- Defined in:
- lib/circleci/coverage_reporter/client.rb
Constant Summary collapse
- CIRCLECI_ENDPOINT =
'https://circleci.com/api/v1.1'.freeze
Instance Attribute Summary collapse
- #configuration ⇒ Configuration readonly
Instance Method Summary collapse
- #artifacts(build_number) ⇒ Array<Artifact>
- #build_number_by_revision(revision, branch: nil) ⇒ Integer?
- #get(url, params = {}) ⇒ Faraday::Response
-
#initialize(configuration) ⇒ Client
constructor
A new instance of Client.
- #single_build(build_number) ⇒ Build?
Constructor Details
#initialize(configuration) ⇒ Client
Returns a new instance of Client.
15 16 17 |
# File 'lib/circleci/coverage_reporter/client.rb', line 15 def initialize(configuration) @configuration = configuration end |
Instance Attribute Details
#configuration ⇒ Configuration (readonly)
12 13 14 |
# File 'lib/circleci/coverage_reporter/client.rb', line 12 def configuration @configuration end |
Instance Method Details
#artifacts(build_number) ⇒ Array<Artifact>
28 29 30 31 32 |
# File 'lib/circleci/coverage_reporter/client.rb', line 28 def artifacts(build_number) JSON.parse(get(artifacts_url(build_number)).body).map do |hash| Artifact.new(hash['path'], hash['pretty_path'], hash['node_index'], hash['url']) end end |
#build_number_by_revision(revision, branch: nil) ⇒ Integer?
37 38 39 40 |
# File 'lib/circleci/coverage_reporter/client.rb', line 37 def build_number_by_revision(revision, branch: nil) build = recent_builds(branch).find { |b| b.match?(revision) } build ? build.build_number : nil end |
#get(url, params = {}) ⇒ Faraday::Response
45 46 47 48 |
# File 'lib/circleci/coverage_reporter/client.rb', line 45 def get(url, params = {}) params['circle-token'] = configuration.circleci_token Faraday.get(url + '?' + params.map { |k, v| "#{k}=#{v}" }.join('&')) end |
#single_build(build_number) ⇒ Build?
21 22 23 24 |
# File 'lib/circleci/coverage_reporter/client.rb', line 21 def single_build(build_number) return unless build_number create_build(JSON.parse(get(single_build_url(build_number)).body)) end |