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.
16 17 18 |
# File 'lib/circleci/coverage_reporter/client.rb', line 16 def initialize(configuration) @configuration = configuration end |
Instance Attribute Details
#configuration ⇒ Configuration (readonly)
13 14 15 |
# File 'lib/circleci/coverage_reporter/client.rb', line 13 def configuration @configuration end |
Instance Method Details
#artifacts(build_number) ⇒ Array<Artifact>
34 35 36 37 38 39 |
# File 'lib/circleci/coverage_reporter/client.rb', line 34 def artifacts(build_number) resp = get(artifacts_url(build_number)) body = JSON.parse(resp.body) raise RequestError.new(body['message'], resp) unless resp.success? body.map(&method(:create_artifact)) end |
#build_number_by_revision(revision, branch: nil) ⇒ Integer?
44 45 46 47 |
# File 'lib/circleci/coverage_reporter/client.rb', line 44 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
52 53 54 55 |
# File 'lib/circleci/coverage_reporter/client.rb', line 52 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?
23 24 25 26 27 28 29 |
# File 'lib/circleci/coverage_reporter/client.rb', line 23 def single_build(build_number) return unless build_number resp = get(single_build_url(build_number)) body = JSON.parse(resp.body) raise RequestError.new(body['message'], resp) unless resp.success? create_build(body) end |