Sha256: 73263d34b42219dfc20e00238e9c8e7f1f263d7bce32dbeb77b6d390f2c3f81c
Contents?: true
Size: 1.02 KB
Versions: 2
Compression:
Stored size: 1.02 KB
Contents
# frozen_string_literal: true require 'faraday' require_relative '../errors' require_relative 'base' module CircleCIReporter module VCS class GitHub < Base # @note Implement {Base#create_comment} # @param body [String] # @return [void] # @raise [RequestError] def create_comment(body) resp = request(body) raise RequestError.new(JSON.parse(resp.body)['message'], resp) unless resp.success? end private # @param body [String] # @return [Faraday::Response] def request(body) url = ['https://api.github.com', 'repos', configuration.project, 'commits', configuration.current_revision, 'comments'].join('/') Faraday.post(url) do |req| req.headers['Authorization'] = "token #{token}" req.headers['Content-Type'] = 'application/json' req.body = JSON.generate(body: body) end end # @return [Configuration] def configuration CircleCIReporter.configuration end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
circleci_reporter-1.0.1 | lib/circleci_reporter/vcs/github.rb |
circleci_reporter-1.0.0 | lib/circleci_reporter/vcs/github.rb |