Sha256: 75f38ffe9fa79aaed36221137a52d910cd75448e9234db3bae26b9f6452a99b6
Contents?: true
Size: 1.19 KB
Versions: 1
Compression:
Stored size: 1.19 KB
Contents
require 'octokit' require 'kachikachi/pull_request' module Kachikachi class GitHub attr_accessor :client def initialize(options) @options = options end def pull_requests pull_request_numbers = @options['pull-request-numbers'] return pull_request_numbers.map { |number| PullRequest.new(number, @options) } if pull_request_numbers options = { state: @options[:state] } options[:creator] = @options[:user] if @options[:user] issues = milestone_numbers.map { |number| options[:milestone] = number client.list_issues(@options[:repo], options).select(&:pull_request) }.flatten issues.map{ |issue| PullRequest.new(issue.number, @options) }.select{ |pr| pr.base.ref == @options['base-branch'] } end private def milestone_numbers client.list_milestones(@options[:repo], state: :all).select{ |milestone| @options[:milestones].include?(milestone.title) }.map(&:number) end def client Octokit.configure do |c| c.api_endpoint = @options['endpoint'] end @client ||= Octokit::Client.new(access_token: @options[:token], auto_paginate: true) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
kachikachi-0.1.0 | lib/kachikachi/git_hub.rb |