diff options
Diffstat (limited to 'lib/spack/spack/cmd/stage.py')
-rw-r--r-- | lib/spack/spack/cmd/stage.py | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/lib/spack/spack/cmd/stage.py b/lib/spack/spack/cmd/stage.py index ad12955b41..9af55c8346 100644 --- a/lib/spack/spack/cmd/stage.py +++ b/lib/spack/spack/cmd/stage.py @@ -1,10 +1,24 @@ +import argparse import spack.packages as packages description="Expand downloaded archive in preparation for install" def setup_parser(subparser): - subparser.add_argument('name', help="name of package to stage") + subparser.add_argument( + '-n', '--no-checksum', action='store_true', dest='no_checksum', + help="Do not check packages against checksum") + subparser.add_argument( + 'packages', nargs=argparse.REMAINDER, help="specs of packages to stage") + def stage(parser, args): - package = packages.get(args.name) - package.do_stage() + if not args.packages: + tty.die("stage requires at least one package argument") + + if args.no_checksum: + spack.do_checksum = False + + specs = spack.cmd.parse_specs(args.packages, concretize=True) + for spec in specs: + package = packages.get(spec) + package.do_stage() |