Sha256: fd3c00ec2ea899f2e721dba997ea2ace93e0994e29ea46ab6304e3393b0f57d2

Contents?: true

Size: 748 Bytes

Versions: 14

Compression:

Stored size: 748 Bytes

Contents

require_relative 'github_status_formatter/status_builder'

module Pronto
  module Formatter
    class GithubStatusFormatter
      def format(messages, repo, _)
        client = Github.new(repo)
        head = repo.head_commit_sha

        messages_by_runner = messages.uniq.group_by(&:runner)

        Runner.runners.each do |runner|
          create_status(client, head, runner, messages_by_runner[runner] || [])
        end
      end

      private

      def create_status(client, sha, runner, messages)
        builder = StatusBuilder.new(runner, messages)
        status = Status.new(sha, builder.state,
                            builder.context, builder.description)

        client.create_commit_status(status)
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
pronto-0.11.1 lib/pronto/formatter/github_status_formatter.rb
pronto-0.11.0 lib/pronto/formatter/github_status_formatter.rb
pronto-0.10.0 lib/pronto/formatter/github_status_formatter.rb
pronto-0.9.5 lib/pronto/formatter/github_status_formatter.rb
pronto-0.9.4 lib/pronto/formatter/github_status_formatter.rb
pronto-0.9.3 lib/pronto/formatter/github_status_formatter.rb
pronto-0.9.2 lib/pronto/formatter/github_status_formatter.rb
pronto-0.9.1 lib/pronto/formatter/github_status_formatter.rb
pronto-0.9.0 lib/pronto/formatter/github_status_formatter.rb
pronto-0.8.2 lib/pronto/formatter/github_status_formatter.rb
pronto-0.8.1 lib/pronto/formatter/github_status_formatter.rb
pronto-0.8.0 lib/pronto/formatter/github_status_formatter.rb
pronto-0.7.1 lib/pronto/formatter/github_status_formatter.rb
pronto-0.7.0 lib/pronto/formatter/github_status_formatter.rb