summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/spack/spack/cmd/stage.py1
-rw-r--r--lib/spack/spack/test/cmd/stage.py11
-rwxr-xr-xshare/spack/spack-completion.bash2
3 files changed, 13 insertions, 1 deletions
diff --git a/lib/spack/spack/cmd/stage.py b/lib/spack/spack/cmd/stage.py
index 8e039c832a..474efe375c 100644
--- a/lib/spack/spack/cmd/stage.py
+++ b/lib/spack/spack/cmd/stage.py
@@ -24,6 +24,7 @@ def setup_parser(subparser):
subparser.add_argument(
'-p', '--path', dest='path',
help="path to stage package, does not add to spack tree")
+ arguments.add_concretizer_args(subparser)
def stage(parser, args):
diff --git a/lib/spack/spack/test/cmd/stage.py b/lib/spack/spack/test/cmd/stage.py
index 5c586a11b0..5dec5ca3ff 100644
--- a/lib/spack/spack/test/cmd/stage.py
+++ b/lib/spack/spack/test/cmd/stage.py
@@ -8,6 +8,7 @@ import sys
import pytest
+import spack.config
import spack.environment as ev
import spack.repo
from spack.main import SpackCommand
@@ -122,3 +123,13 @@ def test_stage_full_env(mutable_mock_env_path, monkeypatch):
# assert that all were staged
assert len(expected) == 0
+
+
+@pytest.mark.disable_clean_stage_check
+def test_concretizer_arguments(mock_packages, mock_fetch):
+ """Make sure stage also has --reuse and --fresh flags."""
+ stage("--reuse", "trivial-install-test-package")
+ assert spack.config.get("concretizer:reuse", None) is True
+
+ stage("--fresh", "trivial-install-test-package")
+ assert spack.config.get("concretizer:reuse", None) is False
diff --git a/share/spack/spack-completion.bash b/share/spack/spack-completion.bash
index ca503673da..6bdefc6754 100755
--- a/share/spack/spack-completion.bash
+++ b/share/spack/spack-completion.bash
@@ -1688,7 +1688,7 @@ _spack_spec() {
_spack_stage() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -n --no-checksum --deprecated -p --path"
+ SPACK_COMPREPLY="-h --help -n --no-checksum --deprecated -p --path -U --fresh --reuse"
else
_all_packages
fi