Add release-branch option to filter the Pull Requests by those applied on a partcular release branch
This commit is contained in:
parent
3fdf0c64df
commit
06a8fe8169
|
@ -22,6 +22,7 @@ module GitHubChangelogGenerator
|
|||
github_options[:oauth_token] = @github_token unless @github_token.nil?
|
||||
github_options[:endpoint] = @options[:github_endpoint] unless @options[:github_endpoint].nil?
|
||||
github_options[:site] = @options[:github_endpoint] unless @options[:github_site].nil?
|
||||
@release_branch = @options[:release_branch] unless @options[:release_branch].nil?
|
||||
|
||||
@github = check_github_response { Github.new github_options }
|
||||
end
|
||||
|
@ -123,7 +124,11 @@ Make sure, that you push tags to remote repo via 'git push --tags'".yellow
|
|||
def fetch_closed_pull_requests
|
||||
pull_requests = []
|
||||
begin
|
||||
response = @github.pull_requests.list @options[:user], @options[:project], state: "closed"
|
||||
if @options[:release_branch].nil?
|
||||
response = @github.pull_requests.list @options[:user], @options[:project], state: "closed"
|
||||
else
|
||||
response = @github.pull_requests.list @options[:user], @options[:project], state: "closed", base: @options[:release_branch]
|
||||
end
|
||||
page_i = 0
|
||||
count_pages = response.count_pages
|
||||
response.each_page do |page|
|
||||
|
|
|
@ -178,8 +178,10 @@ module GitHubChangelogGenerator
|
|||
fetched_pr = closed_pull_requests.find do |fpr|
|
||||
fpr.number == pr.number
|
||||
end
|
||||
pr[:merged_at] = fetched_pr[:merged_at]
|
||||
closed_pull_requests.delete(fetched_pr)
|
||||
unless fetched_pr.nil?
|
||||
pr[:merged_at] = fetched_pr[:merged_at]
|
||||
closed_pull_requests.delete(fetched_pr)
|
||||
end
|
||||
end
|
||||
|
||||
pull_requests.select! do |pr|
|
||||
|
|
|
@ -143,6 +143,9 @@ module GitHubChangelogGenerator
|
|||
opts.on("--future-release [RELEASE-VERSION]", "Put the unreleased changes in the specified release number.") do |future_release|
|
||||
options[:future_release] = future_release
|
||||
end
|
||||
opts.on("--release-branch [RELEASE-BRANCH]", "Limit pull requests to the release branch, such as master or release") do |release_branch|
|
||||
options[:release_branch] = release_branch
|
||||
end
|
||||
opts.on("--[no-]verbose", "Run verbosely. Default is true") do |v|
|
||||
options[:verbose] = v
|
||||
end
|
||||
|
|
|
@ -16,7 +16,8 @@ module GitHubChangelogGenerator
|
|||
bug_labels enhancement_labels
|
||||
between_tags exclude_tags since_tag max_issues
|
||||
github_site github_endpoint simple_list
|
||||
future_release verbose release_url base )
|
||||
future_release release_branch verbose release_url
|
||||
base )
|
||||
|
||||
OPTIONS.each do |o|
|
||||
attr_accessor o.to_sym
|
||||
|
|
Loading…
Reference in New Issue
Block a user