31 lines
913 B
Ruby
31 lines
913 B
Ruby
# frozen_string_literal: true
|
|
|
|
require 'net/http'
|
|
require 'json'
|
|
require 'time'
|
|
require_relative './report_adapter'
|
|
require_relative './github_check_run_service'
|
|
require_relative './github_client'
|
|
require_relative './coverage_report'
|
|
|
|
def read_json(path)
|
|
JSON.parse(File.read(path))
|
|
end
|
|
|
|
@event_json = read_json(ENV['GITHUB_EVENT_PATH']) if ENV['GITHUB_EVENT_PATH']
|
|
@github_data = {
|
|
sha: ENV['GITHUB_SHA'],
|
|
token: ENV['INPUT_TOKEN'],
|
|
owner: ENV['GITHUB_REPOSITORY_OWNER'] || @event_json.dig('repository', 'owner', 'login'),
|
|
repo: ENV['GITHUB_REPOSITORY_NAME'] || @event_json.dig('repository', 'name'),
|
|
}
|
|
|
|
@coverage_type = ENV['INPUT_TYPE']
|
|
@report_path = ENV['INPUT_RESULT_PATH']
|
|
@report_name: ENV['INPUT_REPORT_NAME']
|
|
@data = { min: ENV['INPUT_MIN_COVERAGE'] }
|
|
|
|
@report = CoverageReport.generate(@coverage_type, @report_path, @data)
|
|
|
|
GithubCheckRunService.new(@report, @github_data, ReportAdapter).run
|