aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/dev-cmd/test-bot.rb
diff options
context:
space:
mode:
authorMike McQuaid2016-09-11 21:43:37 +0100
committerMike McQuaid2016-09-11 21:43:37 +0100
commitdf1f9806a4e82d3a4f2a2a793f5ac8b6778344c1 (patch)
treee15cd7dc036abe75b4114955c70c7c733aaee2eb /Library/Homebrew/dev-cmd/test-bot.rb
parent8448fe17cba78e35a260d4c4e0189abe7ab75fcf (diff)
downloadbrew-df1f9806a4e82d3a4f2a2a793f5ac8b6778344c1.tar.bz2
test-bot: handle more Jenkins configurations.
Used in trying to use a `Jenkinsfile`.
Diffstat (limited to 'Library/Homebrew/dev-cmd/test-bot.rb')
-rw-r--r--Library/Homebrew/dev-cmd/test-bot.rb30
1 files changed, 19 insertions, 11 deletions
diff --git a/Library/Homebrew/dev-cmd/test-bot.rb b/Library/Homebrew/dev-cmd/test-bot.rb
index 7d95d2ebb..df8317faa 100644
--- a/Library/Homebrew/dev-cmd/test-bot.rb
+++ b/Library/Homebrew/dev-cmd/test-bot.rb
@@ -883,11 +883,12 @@ module Homebrew
job = ENV["UPSTREAM_JOB_NAME"]
id = ENV["UPSTREAM_BUILD_ID"]
raise "Missing Jenkins variables!" if !jenkins || !job || !id
+
bottles = Dir["#{jenkins}/jobs/#{job}/configurations/axis-version/*/builds/#{id}/archive/*.bottle*.*"]
return if bottles.empty?
- end
- FileUtils.cp bottles, Dir.pwd, :verbose => true
+ FileUtils.cp bottles, Dir.pwd, :verbose => true
+ end
json_files = Dir.glob("*.bottle.json")
bottles_hash = json_files.reduce({}) do |hash, json_file|
@@ -902,29 +903,34 @@ module Homebrew
ENV["GIT_WORK_TREE"] = tap.path
ENV["GIT_DIR"] = "#{ENV["GIT_WORK_TREE"]}/.git"
- pr = ENV["UPSTREAM_PULL_REQUEST"]
- number = ENV["UPSTREAM_BUILD_NUMBER"]
-
quiet_system "git", "am", "--abort"
quiet_system "git", "rebase", "--abort"
safe_system "git", "checkout", "-f", "master"
safe_system "git", "reset", "--hard", "origin/master"
safe_system "brew", "update"
- if pr
+ if (pr = ENV["UPSTREAM_PULL_REQUEST"])
pull_pr = "https://github.com/#{tap.user}/homebrew-#{tap.repo}/pull/#{pr}"
safe_system "brew", "pull", "--clean", pull_pr
end
- if ENV["UPSTREAM_BOTTLE_KEEP_OLD"]
+ if ENV["UPSTREAM_BOTTLE_KEEP_OLD"] || ENV["BOT_PARAMS"].include?("--keep-old")
system "brew", "bottle", "--merge", "--write", "--keep-old", *json_files
else
system "brew", "bottle", "--merge", "--write", *json_files
end
remote = "git@github.com:BrewTestBot/homebrew-#{tap.repo}.git"
- git_tag = pr ? "pr-#{pr}" : "testing-#{number}"
- safe_system "git", "push", "--force", remote, "master:master", ":refs/tags/#{git_tag}"
+ git_tag = if pr
+ "pr-#{pr}"
+ elsif (upstream_number = ENV["UPSTREAM_BUILD_NUMBER"])
+ "testing-#{upstream_number}"
+ elsif (number = ENV["BUILD_NUMBER"])
+ "other-#{number}"
+ end
+ if git_tag
+ safe_system "git", "push", "--force", remote, "master:master", ":refs/tags/#{git_tag}"
+ end
formula_packaged = {}
@@ -969,8 +975,10 @@ module Homebrew
end
end
- safe_system "git", "tag", "--force", git_tag
- safe_system "git", "push", "--force", remote, "master:master", "refs/tags/#{git_tag}"
+ if git_tag
+ safe_system "git", "tag", "--force", git_tag
+ safe_system "git", "push", "--force", remote, "master:master", "refs/tags/#{git_tag}"
+ end
end
def sanitize_ARGV_and_ENV