spack create: ask how many to download (#17373)

This commit is contained in:
Adam J. Stewart 2020-07-08 02:38:42 -05:00 committed by GitHub
parent f0391db096
commit 207e496162
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 4 deletions

View file

@ -65,7 +65,7 @@ def checksum(parser, args):
version_lines = spack.stage.get_checksums_for_versions( version_lines = spack.stage.get_checksums_for_versions(
url_dict, pkg.name, keep_stage=args.keep_stage, url_dict, pkg.name, keep_stage=args.keep_stage,
batch=(args.batch or len(args.versions) > 0), batch=(args.batch or len(args.versions) > 0 or len(url_dict) == 1),
fetch_options=pkg.fetch_options) fetch_options=pkg.fetch_options)
print() print()

View file

@ -445,6 +445,9 @@ def setup_parser(subparser):
subparser.add_argument( subparser.add_argument(
'--skip-editor', action='store_true', '--skip-editor', action='store_true',
help="skip the edit session for the package (e.g., automation)") help="skip the edit session for the package (e.g., automation)")
subparser.add_argument(
'-b', '--batch', action='store_true',
help="don't ask which versions to checksum")
class BuildSystemGuesser: class BuildSystemGuesser:
@ -511,7 +514,7 @@ def __call__(self, stage, url):
# Determine the build system based on the files contained # Determine the build system based on the files contained
# in the archive. # in the archive.
for pattern, bs in clues: for pattern, bs in clues:
if any(re.search(pattern, l) for l in lines): if any(re.search(pattern, line) for line in lines):
self.build_system = bs self.build_system = bs
break break
@ -629,7 +632,8 @@ def get_versions(args, name):
versions = spack.stage.get_checksums_for_versions( versions = spack.stage.get_checksums_for_versions(
url_dict, name, first_stage_function=guesser, url_dict, name, first_stage_function=guesser,
keep_stage=args.keep_stage, batch=True) keep_stage=args.keep_stage,
batch=(args.batch or len(url_dict) == 1))
else: else:
versions = unhashed_versions versions = unhashed_versions

View file

@ -639,7 +639,7 @@ _spack_containerize() {
_spack_create() { _spack_create() {
if $list_options if $list_options
then then
SPACK_COMPREPLY="-h --help --keep-stage -n --name -t --template -r --repo -N --namespace -f --force --skip-editor" SPACK_COMPREPLY="-h --help --keep-stage -n --name -t --template -r --repo -N --namespace -f --force --skip-editor -b --batch"
else else
SPACK_COMPREPLY="" SPACK_COMPREPLY=""
fi fi