Run documentation tests when documentation is modified
This commit is contained in:
		@@ -1,4 +1,40 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
#
 | 
			
		||||
# Description:
 | 
			
		||||
#     Builds Spack documentation and checks for
 | 
			
		||||
#     possible syntax errors. Treats warnings as
 | 
			
		||||
#     fatal errors.
 | 
			
		||||
#
 | 
			
		||||
# Usage:
 | 
			
		||||
#     run-doc-tests
 | 
			
		||||
#
 | 
			
		||||
# Notes:
 | 
			
		||||
#     Requires sphinx. Can be installed by running:
 | 
			
		||||
#         `spack install py-sphinx`
 | 
			
		||||
#     or:
 | 
			
		||||
#         `pip install sphinx`
 | 
			
		||||
#     and adding the bin directory to your PATH.
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
QA_DIR="$(dirname "$0")"
 | 
			
		||||
SPACK_ROOT="$QA_DIR/../../.."
 | 
			
		||||
DOC_DIR="$SPACK_ROOT/lib/spack/docs"
 | 
			
		||||
 | 
			
		||||
# Move to documentation directory
 | 
			
		||||
# Allows script to be run from anywhere
 | 
			
		||||
cd "$DOC_DIR"
 | 
			
		||||
 | 
			
		||||
# Gather array of changed files
 | 
			
		||||
changed=($("$QA_DIR/changed_files" lib/spack/docs))
 | 
			
		||||
 | 
			
		||||
# Cleanup temporary files upon exit or when script is killed
 | 
			
		||||
trap 'make clean' EXIT SIGINT SIGTERM
 | 
			
		||||
 | 
			
		||||
# Only run tests if documentation was updated
 | 
			
		||||
if [[ "${changed[@]}" ]]; then
 | 
			
		||||
    # Treat warnings as fatal errors
 | 
			
		||||
    make SPHINXOPTS=-W
 | 
			
		||||
else
 | 
			
		||||
    echo No documentation was modified.
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# pass
 | 
			
		||||
exit 0
 | 
			
		||||
 
 | 
			
		||||
@@ -28,7 +28,6 @@ SPACK_ROOT="$QA_DIR/../../.."
 | 
			
		||||
 | 
			
		||||
# Move to root directory of Spack
 | 
			
		||||
# Allows script to be run from anywhere
 | 
			
		||||
SPACK_ROOT="$(dirname "$0")/../../.."
 | 
			
		||||
cd "$SPACK_ROOT"
 | 
			
		||||
 | 
			
		||||
# Gather array of changed files
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user