Class: CircleCi2

Inherits:
Object
  • Object
show all
Defined in:
lib/codeclimate_circle_ci_coverage/circle_ci_2.rb

Constant Summary collapse

ARTIFACT_PREFIX =
"coverage"

Instance Method Summary collapse

Instance Method Details

#download_filesObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/codeclimate_circle_ci_coverage/circle_ci_2.rb', line 7

def download_files
  if ENV["CIRCLE_TOKEN"].nil?
    puts "You must create a Circle CI API token to use this on Circle CI 2.0"
    puts "Please create that, and store the key as CIRCLE_TOKEN"
    return []
  end

  api_url = "https://circleci.com/api/v1.1/project/github/#{ENV['CIRCLE_PROJECT_USERNAME']}/#{ENV['CIRCLE_PROJECT_REPONAME']}/#{ENV['CIRCLE_BUILD_NUM']}/artifacts?circle-token=#{ENV['CIRCLE_TOKEN']}"
  artifacts = open(api_url)

  JSON.load(artifacts).select do |artifact|
    artifact['path'] == "home/circleci/project/#{ARTIFACT_PREFIX}/.resultset.json"
  end.map do |artifact|
    JSON.load(open("#{artifact['url']}?circle-token=#{ENV['CIRCLE_TOKEN']}"))
  end
end