summaryrefslogtreecommitdiff
path: root/.gitlab
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab')
-rwxr-xr-x.gitlab/rel_eng/upload_ghc_libs.py13
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)