merge-after-ci: rewrite according to #814
This commit is contained in:
parent
fdedf40e27
commit
398a61acbc
@ -1,26 +1,33 @@
|
|||||||
{ writeShellApplication
|
{ bash
|
||||||
|
, callPackage
|
||||||
, coreutils
|
, coreutils
|
||||||
, bash
|
|
||||||
, git
|
, git
|
||||||
, tea
|
, lib
|
||||||
|
, nix
|
||||||
, openssh
|
, openssh
|
||||||
|
, tea
|
||||||
, tea-create-pr
|
, tea-create-pr
|
||||||
, ...
|
, ...
|
||||||
}:
|
}:
|
||||||
writeShellApplication {
|
let
|
||||||
name = "merge-after-ci";
|
writers = callPackage ../builders/script-writers.nix { };
|
||||||
runtimeInputs = [
|
in
|
||||||
|
writers.writePython3Bin "merge-after-ci"
|
||||||
|
{
|
||||||
|
makeWrapperArgs = [
|
||||||
|
"--prefix"
|
||||||
|
"PATH"
|
||||||
|
":"
|
||||||
|
(lib.makeBinPath [
|
||||||
bash
|
bash
|
||||||
coreutils
|
coreutils
|
||||||
git
|
git
|
||||||
tea
|
nix
|
||||||
openssh
|
openssh
|
||||||
|
tea
|
||||||
tea-create-pr
|
tea-create-pr
|
||||||
|
])
|
||||||
];
|
];
|
||||||
text = ''
|
|
||||||
remoteName="''${1:-origin}"
|
|
||||||
targetBranch="''${2:-main}"
|
|
||||||
shift && shift
|
|
||||||
tea-create-pr "$remoteName" "$targetBranch" --assignees clan-bot "$@"
|
|
||||||
'';
|
|
||||||
}
|
}
|
||||||
|
./merge-after-ci.py
|
||||||
|
|
||||||
|
24
pkgs/merge-after-ci/merge-after-ci.py
Normal file
24
pkgs/merge-after-ci/merge-after-ci.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
import argparse
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument("--reviewers", nargs="*")
|
||||||
|
parser.add_argument("--no-review", action="store_true")
|
||||||
|
parser.add_argument("args", nargs="*")
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
# complain if neither --reviewers nor --no-review is given
|
||||||
|
if not args.reviewers and not args.no_review:
|
||||||
|
parser.error("either --reviewers or --no-review must be given")
|
||||||
|
|
||||||
|
subprocess.run(
|
||||||
|
[
|
||||||
|
"tea-create-pr",
|
||||||
|
"origin",
|
||||||
|
"main",
|
||||||
|
"--assignees",
|
||||||
|
"clan-bot",
|
||||||
|
*([*args.reviewers] if args.reviewers else []),
|
||||||
|
*args.args,
|
||||||
|
]
|
||||||
|
)
|
Loading…
Reference in New Issue
Block a user