Separate integration tests; simplify test scripts (#4006)
* Separate build integration tests; simplify test scripts - Move build tests out of the regular Travis unit tests, add more smoke test packages to build. - Run all test scripts with bash -e, which fails on error. - Factor coverage out into a Travis environment variable, so it's more obvious from .travis.yml which tests contribute to coverage and which don't. - Factor dependency checking and much of the front-matter in tests scripts into a setup.sh script, which is sourced by all the test scripts. Extra cruft in each tests script now reduced to 2 lines at the beginning.
This commit is contained in:
29
share/spack/qa/run-build-tests
Executable file
29
share/spack/qa/run-build-tests
Executable file
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash -e
|
||||
#
|
||||
# Description:
|
||||
# Runs Spack build smoke tests. This installs a few packages that
|
||||
# cover different parts of the build system. It is not an exhaustive
|
||||
# test of Spack's packages.
|
||||
#
|
||||
# Usage:
|
||||
# run-build-tests
|
||||
#
|
||||
. "$(dirname $0)/setup.sh"
|
||||
check_dependencies ${coverage} git hg svn
|
||||
|
||||
# Move to root directory of Spack
|
||||
# Allows script to be run from anywhere
|
||||
cd "$SPACK_ROOT"
|
||||
|
||||
# Make sure we have a spec to build.
|
||||
if [ -z "$SPEC" ]; then
|
||||
echo "Error: run-build-tests requires the $SPEC to build to be set."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Print compiler information
|
||||
spack config get compilers
|
||||
|
||||
# Run some build smoke tests, potentially with code coverage
|
||||
${coverage_run} bin/spack install -v ${SPEC}
|
||||
${coverage_combine}
|
Reference in New Issue
Block a user