mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
add pr-upload command
This commit is contained in:
parent
dad4249774
commit
3dd5a7465d
43
Library/Homebrew/dev-cmd/pr-upload.rb
Normal file
43
Library/Homebrew/dev-cmd/pr-upload.rb
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require "cli/parser"
|
||||||
|
require "bintray"
|
||||||
|
|
||||||
|
module Homebrew
|
||||||
|
module_function
|
||||||
|
|
||||||
|
def pr_upload_args
|
||||||
|
Homebrew::CLI::Parser.new do
|
||||||
|
usage_banner <<~EOS
|
||||||
|
`pr-upload` [<options>]
|
||||||
|
|
||||||
|
Apply the bottle commit and publish bottles to Bintray.
|
||||||
|
EOS
|
||||||
|
switch "--no-publish",
|
||||||
|
description: "Apply the bottle commit and upload the bottles, but don't publish them."
|
||||||
|
switch "--dry-run", "-n",
|
||||||
|
description: "Print what would be done rather than doing it."
|
||||||
|
flag "--bintray-org=",
|
||||||
|
description: "Upload to the specified Bintray organisation (default: homebrew)."
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def pr_upload
|
||||||
|
pr_upload_args.parse
|
||||||
|
|
||||||
|
bintray_org = args.bintray_org || "homebrew"
|
||||||
|
bintray = Bintray.new(org: bintray_org)
|
||||||
|
|
||||||
|
if args.dry_run?
|
||||||
|
puts "brew bottle --merge --write #{Dir["*.json"].join " "}"
|
||||||
|
else
|
||||||
|
system HOMEBREW_BREW_FILE, "bottle", "--merge", "--write", *Dir["*.json"]
|
||||||
|
end
|
||||||
|
|
||||||
|
if args.dry_run?
|
||||||
|
puts "Upload bottles described by these JSON files to Bintray:\n #{Dir["*.json"].join("\n ")}"
|
||||||
|
else
|
||||||
|
bintray.upload_bottle_json Dir["*.json"], publish_package: !args.no_publish?
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
7
Library/Homebrew/test/dev-cmd/pr-upload_spec.rb
Normal file
7
Library/Homebrew/test/dev-cmd/pr-upload_spec.rb
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require "cmd/shared_examples/args_parse"
|
||||||
|
|
||||||
|
describe "Homebrew.pr_upload_args" do
|
||||||
|
it_behaves_like "parseable arguments"
|
||||||
|
end
|
@ -897,6 +897,17 @@ repository.
|
|||||||
* `--tap`:
|
* `--tap`:
|
||||||
Target tap repository (default: homebrew/core).
|
Target tap repository (default: homebrew/core).
|
||||||
|
|
||||||
|
### `pr-upload` [*`options`*]
|
||||||
|
|
||||||
|
Apply the bottle commit and publish bottles to Bintray.
|
||||||
|
|
||||||
|
* `--no-publish`:
|
||||||
|
Apply the bottle commit and upload the bottles, but don't publish them.
|
||||||
|
* `-n`, `--dry-run`:
|
||||||
|
Print what would be done rather than doing it.
|
||||||
|
* `--bintray-org`:
|
||||||
|
Upload to the specified Bintray organisation (default: homebrew).
|
||||||
|
|
||||||
### `prof` *`command`*
|
### `prof` *`command`*
|
||||||
|
|
||||||
Run Homebrew with the Ruby profiler, e.g. `brew prof readall`.
|
Run Homebrew with the Ruby profiler, e.g. `brew prof readall`.
|
||||||
|
@ -1163,6 +1163,21 @@ Upload to the specified Bintray organisation (default: homebrew)\.
|
|||||||
\fB\-\-tap\fR
|
\fB\-\-tap\fR
|
||||||
Target tap repository (default: homebrew/core)\.
|
Target tap repository (default: homebrew/core)\.
|
||||||
.
|
.
|
||||||
|
.SS "\fBpr\-upload\fR [\fIoptions\fR]"
|
||||||
|
Apply the bottle commit and publish bottles to Bintray\.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
\fB\-\-no\-publish\fR
|
||||||
|
Apply the bottle commit and upload the bottles, but don\'t publish them\.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
\fB\-n\fR, \fB\-\-dry\-run\fR
|
||||||
|
Print what would be done rather than doing it\.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
\fB\-\-bintray\-org\fR
|
||||||
|
Upload to the specified Bintray organisation (default: homebrew)\.
|
||||||
|
.
|
||||||
.SS "\fBprof\fR \fIcommand\fR"
|
.SS "\fBprof\fR \fIcommand\fR"
|
||||||
Run Homebrew with the Ruby profiler, e\.g\. \fBbrew prof readall\fR\.
|
Run Homebrew with the Ruby profiler, e\.g\. \fBbrew prof readall\fR\.
|
||||||
.
|
.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user