summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam J. Stewart <ajstewart426@gmail.com>2016-08-22 10:22:42 -0500
committerAdam J. Stewart <ajstewart426@gmail.com>2016-08-30 15:20:03 -0500
commit732c1985efde2ef0ef1e0c57c2e0ef464be6a2e9 (patch)
tree639cf72d011a9cb0c91b4f5bc0fd6150702efed9
parent7e4c6afd9160beedf7956bc5492c93eb30f93a3e (diff)
downloadspack-732c1985efde2ef0ef1e0c57c2e0ef464be6a2e9.tar.gz
spack-732c1985efde2ef0ef1e0c57c2e0ef464be6a2e9.tar.bz2
spack-732c1985efde2ef0ef1e0c57c2e0ef464be6a2e9.tar.xz
spack-732c1985efde2ef0ef1e0c57c2e0ef464be6a2e9.zip
Overhaul Spack's CI Infrastructure
-rw-r--r--.travis.yml39
-rw-r--r--README.md2
-rwxr-xr-xshare/spack/qa/run-doc-tests4
-rwxr-xr-xshare/spack/qa/run-flake8-tests (renamed from share/spack/qa/run-flake8)2
4 files changed, 27 insertions, 20 deletions
diff --git a/.travis.yml b/.travis.yml
index b376a33490..f6c6817121 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,27 +1,35 @@
language: python
+# Construct build matrix
python:
- - "2.6"
- - "2.7"
+ - 2.6
+ - 2.7
+
env:
- - TEST_TYPE=unit
- - TEST_TYPE=flake8
+ - TEST_SUITE=unit
+ - TEST_SUITE=flake8
+ - TEST_SUITE=doc
-# Exclude flake8 from python 2.6
matrix:
exclude:
- - python: "2.6"
+ - python: 2.6
+ # Flake8 no longer supports Python 2.6
env: TEST_TYPE=flake8
# Use new Travis infrastructure (Docker can't sudo yet)
sudo: false
-# Install coveralls to obtain code coverage
+# Cache dependencies
+cache: pip
+
+# Install various dependencies
install:
- - "pip install coveralls"
- - "pip install flake8"
+ - pip install coveralls
+ - pip install flake8
+ - pip install sphinx
+ - pip install mercurial
-before_install:
+before_script:
# Need this for the git tests to succeed.
- git config --global user.email "spack@example.com"
- git config --global user.name "Test User"
@@ -29,18 +37,13 @@ before_install:
# Need this to be able to compute the list of changed files
- git fetch origin develop:develop
-script:
- # Run unit tests with code coverage plus install libdwarf
- - 'if [ "$TEST_TYPE" = "unit" ]; then share/spack/qa/run-unit-tests; fi'
- # Run flake8 code style checks.
- - 'if [ "$TEST_TYPE" = "flake8" ]; then share/spack/qa/run-flake8; fi'
+script: share/spack/qa/run-$TEST_SUITE-tests
after_success:
- - 'if [ "$TEST_TYPE" = "unit" ] && [ "$TRAVIS_PYTHON_VERSION" = "2.7" ]; then coveralls; fi'
+ - if [[ $TEST_SUITE == unit && $TRAVIS_PYTHON_VERSION -eq 2.7 ]]; then coveralls; fi
notifications:
email:
- recipients:
- - tgamblin@llnl.gov
+ recipients: tgamblin@llnl.gov
on_success: change
on_failure: always
diff --git a/README.md b/README.md
index 27d62951a1..cf6f008ea6 100644
--- a/README.md
+++ b/README.md
@@ -68,7 +68,7 @@ Before you send a PR, your code should pass the following checks:
* Your contribution will need to pass the `spack test` command.
Run this before submitting your PR.
-* Also run the `share/spack/qa/run-flake8` script to check for PEP8 compliance.
+* Also run the `share/spack/qa/run-flake8-tests` script to check for PEP8 compliance.
To encourage contributions and readability by a broad audience,
Spack uses the [PEP8](https://www.python.org/dev/peps/pep-0008/) coding
standard with [a few exceptions](https://github.com/LLNL/spack/blob/develop/.flake8).
diff --git a/share/spack/qa/run-doc-tests b/share/spack/qa/run-doc-tests
new file mode 100755
index 0000000000..e5b684fe59
--- /dev/null
+++ b/share/spack/qa/run-doc-tests
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+
+# pass
+exit 0
diff --git a/share/spack/qa/run-flake8 b/share/spack/qa/run-flake8-tests
index ffc82313a5..9556b0d250 100755
--- a/share/spack/qa/run-flake8
+++ b/share/spack/qa/run-flake8-tests
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
#
# This script runs source code style checks on Spack.
#