summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorMassimiliano Culpo <massimiliano.culpo@gmail.com>2023-09-29 10:24:42 +0200
committerGitHub <noreply@github.com>2023-09-29 10:24:42 +0200
commit210d221357abdd1c91e01f93bdee9444fe423eab (patch)
treefcde81f91b75c83ca3bfe045375f14775ee018c3 /share
parentc9ef5c8152149c31aa91a159fdd603dcfec65d8d (diff)
downloadspack-210d221357abdd1c91e01f93bdee9444fe423eab.tar.gz
spack-210d221357abdd1c91e01f93bdee9444fe423eab.tar.bz2
spack-210d221357abdd1c91e01f93bdee9444fe423eab.tar.xz
spack-210d221357abdd1c91e01f93bdee9444fe423eab.zip
Test package detection in a systematic way (#18175)
This PR adds a new audit sub-command to check that detection of relevant packages is performed correctly in a few scenarios mocking real use-cases. The data for each package being tested is in a YAML file called detection_test.yaml alongside the corresponding package.py file. This is to allow encoding detection tests for compilers and other widely used tools, in preparation for compilers as dependencies.
Diffstat (limited to 'share')
-rwxr-xr-xshare/spack/spack-completion.bash11
-rwxr-xr-xshare/spack/spack-completion.fish9
2 files changed, 19 insertions, 1 deletions
diff --git a/share/spack/spack-completion.bash b/share/spack/spack-completion.bash
index 1983b960d5..b9521b8f0c 100755
--- a/share/spack/spack-completion.bash
+++ b/share/spack/spack-completion.bash
@@ -423,7 +423,7 @@ _spack_audit() {
then
SPACK_COMPREPLY="-h --help"
else
- SPACK_COMPREPLY="configs packages-https packages list"
+ SPACK_COMPREPLY="configs externals packages-https packages list"
fi
}
@@ -431,6 +431,15 @@ _spack_audit_configs() {
SPACK_COMPREPLY="-h --help"
}
+_spack_audit_externals() {
+ if $list_options
+ then
+ SPACK_COMPREPLY="-h --help --list"
+ else
+ SPACK_COMPREPLY=""
+ fi
+}
+
_spack_audit_packages_https() {
if $list_options
then
diff --git a/share/spack/spack-completion.fish b/share/spack/spack-completion.fish
index c5da416817..f4ac310ada 100755
--- a/share/spack/spack-completion.fish
+++ b/share/spack/spack-completion.fish
@@ -508,6 +508,7 @@ complete -c spack -n '__fish_spack_using_command arch' -s b -l backend -d 'print
# spack audit
set -g __fish_spack_optspecs_spack_audit h/help
complete -c spack -n '__fish_spack_using_command_pos 0 audit' -f -a configs -d 'audit configuration files'
+complete -c spack -n '__fish_spack_using_command_pos 0 audit' -f -a externals -d 'check external detection in packages'
complete -c spack -n '__fish_spack_using_command_pos 0 audit' -f -a packages-https -d 'check https in packages'
complete -c spack -n '__fish_spack_using_command_pos 0 audit' -f -a packages -d 'audit package recipes'
complete -c spack -n '__fish_spack_using_command_pos 0 audit' -f -a list -d 'list available checks and exits'
@@ -519,6 +520,14 @@ set -g __fish_spack_optspecs_spack_audit_configs h/help
complete -c spack -n '__fish_spack_using_command audit configs' -s h -l help -f -a help
complete -c spack -n '__fish_spack_using_command audit configs' -s h -l help -d 'show this help message and exit'
+# spack audit externals
+set -g __fish_spack_optspecs_spack_audit_externals h/help list
+complete -c spack -n '__fish_spack_using_command_pos_remainder 0 audit externals' -f -a '(__fish_spack_packages)'
+complete -c spack -n '__fish_spack_using_command audit externals' -s h -l help -f -a help
+complete -c spack -n '__fish_spack_using_command audit externals' -s h -l help -d 'show this help message and exit'
+complete -c spack -n '__fish_spack_using_command audit externals' -l list -f -a list_externals
+complete -c spack -n '__fish_spack_using_command audit externals' -l list -d 'if passed, list which packages have detection tests'
+
# spack audit packages-https
set -g __fish_spack_optspecs_spack_audit_packages_https h/help all
complete -c spack -n '__fish_spack_using_command_pos_remainder 0 audit packages-https' -f -a '(__fish_spack_packages)'