diff options
author | Ben Gamari <ben@smart-cactus.org> | 2023-01-17 18:35:41 -0500 |
---|---|---|
committer | Ben Gamari <ben@well-typed.com> | 2023-02-12 23:04:35 +0000 |
commit | d65e9331b027ca36b80fedb8315916179c2311d9 (patch) | |
tree | dc9832cd31b6c766ae6992216ab3c2f8a81c7f5e | |
parent | 133516af8426d775fa0dc75c787edd56299ee6cf (diff) | |
download | haskell-wip/upload-ghc-libs.tar.gz |
upload_ghc_libs: More control over which packages to operate onwip/upload-ghc-libs
Here we add a `--skip` flag to `upload_ghc_libs`, making it easier to
limit which packages to upload. This is often necessary when one package
is not uploadable (e.g. see #22740).
-rwxr-xr-x | .gitlab/rel_eng/upload_ghc_libs.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/.gitlab/rel_eng/upload_ghc_libs.py b/.gitlab/rel_eng/upload_ghc_libs.py index fdb1c55324..ecbfa11bd4 100755 --- a/.gitlab/rel_eng/upload_ghc_libs.py +++ b/.gitlab/rel_eng/upload_ghc_libs.py @@ -197,19 +197,24 @@ def main() -> None: parser_prepare.add_argument('--bindist', required=True, type=Path, help='extracted binary distribution') parser_upload = subparsers.add_parser('upload') + parser_upload.add_argument('--skip', default=[], action='append', type=str, help='skip uploading of the given package') parser_upload.add_argument('--docs', required = True, type=Path, help='folder created by --prepare') parser_upload.add_argument('--publish', action='store_true', help='Publish Hackage packages instead of just uploading candidates') args = parser.parse_args() - pkgs = args.pkg + pkgs = set(args.pkg) for pkg_name in pkgs: assert pkg_name in PACKAGES - if pkgs == []: - pkgs = PACKAGES.keys() + if not pkgs: + pkgs = set(PACKAGES.keys()) - if args.command == "prepare": + if args.command == "upload": + for pkg_name in args.skip: + assert pkg_name in PACKAGES + pkgs = pkgs - set(args.skip) + if args.command == "prepare": manifest = {} for pkg_name in pkgs: print(pkg_name) |