mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
pr-pull: update for gpg environment and secrets
Co-Authored-By: Mike McQuaid <mike@mikemcquaid.com>
This commit is contained in:
parent
1147106134
commit
cd56e8b03e
@ -46,6 +46,27 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def setup_git_environment!
|
||||||
|
# Passthrough Git environment variables
|
||||||
|
ENV["GIT_COMMITTER_NAME"] = ENV["HOMEBREW_GIT_NAME"] if ENV["HOMEBREW_GIT_NAME"]
|
||||||
|
ENV["GIT_COMMITTER_EMAIL"] = ENV["HOMEBREW_GIT_EMAIL"] if ENV["HOMEBREW_GIT_EMAIL"]
|
||||||
|
|
||||||
|
# Depending on user configuration, git may try to invoke gpg.
|
||||||
|
return unless Utils.popen_read("git config --get --bool commit.gpgsign").chomp == "true"
|
||||||
|
|
||||||
|
begin
|
||||||
|
gnupg = Formula["gnupg"]
|
||||||
|
rescue FormulaUnavailableError
|
||||||
|
nil
|
||||||
|
else
|
||||||
|
if gnupg.installed?
|
||||||
|
path = PATH.new(ENV.fetch("PATH"))
|
||||||
|
path.prepend(gnupg.installed_prefix/"bin")
|
||||||
|
ENV["PATH"] = path
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def signoff!(pr, path: ".", dry_run: false)
|
def signoff!(pr, path: ".", dry_run: false)
|
||||||
message = Utils.popen_read "git", "-C", path, "log", "-1", "--pretty=%B"
|
message = Utils.popen_read "git", "-C", path, "log", "-1", "--pretty=%B"
|
||||||
close_message = "Closes ##{pr}."
|
close_message = "Closes ##{pr}."
|
||||||
@ -98,18 +119,20 @@ module Homebrew
|
|||||||
|
|
||||||
bintray_user = ENV["HOMEBREW_BINTRAY_USER"]
|
bintray_user = ENV["HOMEBREW_BINTRAY_USER"]
|
||||||
bintray_key = ENV["HOMEBREW_BINTRAY_KEY"]
|
bintray_key = ENV["HOMEBREW_BINTRAY_KEY"]
|
||||||
ENV.clear_sensitive_environment!
|
bintray_org = args.bintray_org || "homebrew"
|
||||||
|
|
||||||
if bintray_user.blank? || bintray_key.blank?
|
if bintray_user.blank? || bintray_key.blank?
|
||||||
odie "Missing HOMEBREW_BINTRAY_USER or HOMEBREW_BINTRAY_KEY variables!" if !args.dry_run? && !args.no_upload?
|
odie "Missing HOMEBREW_BINTRAY_USER or HOMEBREW_BINTRAY_KEY variables!" if !args.dry_run? && !args.no_upload?
|
||||||
else
|
else
|
||||||
bintray = Bintray.new(user: bintray_user, key: bintray_key, org: args.bintray_org)
|
bintray = Bintray.new(user: bintray_user, key: bintray_key, org: bintray_org)
|
||||||
end
|
end
|
||||||
|
|
||||||
workflow = args.workflow || "tests.yml"
|
workflow = args.workflow || "tests.yml"
|
||||||
artifact = args.artifact || "bottles"
|
artifact = args.artifact || "bottles"
|
||||||
tap = Tap.fetch(args.tap || "homebrew/core")
|
tap = Tap.fetch(args.tap || "homebrew/core")
|
||||||
|
|
||||||
|
setup_git_environment!
|
||||||
|
|
||||||
args.named.each do |arg|
|
args.named.each do |arg|
|
||||||
arg = "#{tap.default_remote}/pull/#{arg}" if arg.to_i.positive?
|
arg = "#{tap.default_remote}/pull/#{arg}" if arg.to_i.positive?
|
||||||
url_match = arg.match HOMEBREW_PULL_OR_COMMIT_URL_REGEX
|
url_match = arg.match HOMEBREW_PULL_OR_COMMIT_URL_REGEX
|
||||||
|
Loading…
x
Reference in New Issue
Block a user