summaryrefslogtreecommitdiff
path: root/.travis.yml
diff options
context:
space:
mode:
authorMassimiliano Culpo <massimiliano.culpo@googlemail.com>2017-08-19 23:52:27 +0200
committerTodd Gamblin <tgamblin@llnl.gov>2017-08-19 14:52:27 -0700
commit99fb394ac18b7ef1bc4f9ee34242a69b42781ab8 (patch)
tree378dd100563a4ee5a3ab1a37b45137e3c269a4d4 /.travis.yml
parentbb10bc39abd27d9ffee379b02ceff23a020f2391 (diff)
downloadspack-99fb394ac18b7ef1bc4f9ee34242a69b42781ab8.tar.gz
spack-99fb394ac18b7ef1bc4f9ee34242a69b42781ab8.tar.bz2
spack-99fb394ac18b7ef1bc4f9ee34242a69b42781ab8.tar.xz
spack-99fb394ac18b7ef1bc4f9ee34242a69b42781ab8.zip
Group Travis CI jobs in stages (#5104)
- This should speed-up Travis CI tests and refers to #5049 - Travis uses build-stages to group tests together - The idea is to let fast tests fail first, then move to longer ones. - Added external perl to avoid download failure from CPAN and reduce build time - Disabling perl-dbi: continues to fail with (504 Gateway Time-out) on Travis - We now cover all the build systems in tests: - Add back `openblas` to Travis as a separate package. - Switched `openblas` for `astyle` to build a simpler MakefilePackage. - Added 'tut' (WafPackage) - Added 'py-setuptools' (PythonPackage) - Added 'perl-dbi' (PerlPackage) - Added 'build_systems' directory to the ones for which we get a summary - Added 'openjpeg' (CMakePackage) - Added 'r-rcpp' (RPackage) - Added comments to build tests to show the covered build system
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml72
1 files changed, 59 insertions, 13 deletions
diff --git a/.travis.yml b/.travis.yml
index eeeaee85df..ec88f02e39 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -11,21 +11,23 @@ branches:
#=============================================================================
# Build matrix
#=============================================================================
-matrix:
+jobs:
fast_finish: true
include:
- - python: '2.6'
+ - stage: 'flake8'
+ python: '2.7'
os: linux
language: python
- env: TEST_SUITE=unit
- - python: '2.7'
+ env: TEST_SUITE=flake8
+ - stage: 'unit tests + documentation'
+ python: '2.6'
os: linux
language: python
- env: [ TEST_SUITE=unit, COVERAGE=true ]
+ env: TEST_SUITE=unit
- python: '2.7'
os: linux
language: python
- env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=hypre^mpich' ]
+ env: [ TEST_SUITE=unit, COVERAGE=true ]
- python: '3.3'
os: linux
language: python
@@ -42,21 +44,54 @@ matrix:
os: linux
language: python
env: [ TEST_SUITE=unit, COVERAGE=true ]
- - python: '3.6'
+ - os: osx
+ language: generic
+ env: [ TEST_SUITE=unit, PYTHON_VERSION=2.7, COVERAGE=true ]
+ - python: '2.7'
+ os: linux
+ language: python
+ env: TEST_SUITE=doc
+# mpich (AutotoolsPackage)
+ - stage: 'build tests'
+ python: '2.7'
os: linux
language: python
- env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=hypre^mpich' ]
+ env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=mpich' ]
+# astyle (MakefilePackage)
- python: '2.7'
os: linux
language: python
- env: TEST_SUITE=flake8
+ env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=astyle' ]
+# tut (WafPackage)
- python: '2.7'
os: linux
language: python
- env: TEST_SUITE=doc
- - os: osx
- language: generic
- env: [ TEST_SUITE=unit, PYTHON_VERSION=2.7, COVERAGE=true ]
+ env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=tut' ]
+# py-setuptools (PythonPackage)
+ - python: '2.7'
+ os: linux
+ language: python
+ env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=py-setuptools' ]
+# perl-dbi (PerlPackage)
+# - python: '2.7'
+# os: linux
+# language: python
+# env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=perl-dbi' ]
+# openjpeg (CMakePackage + external cmake)
+ - python: '2.7'
+ os: linux
+ language: python
+ env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=openjpeg' ]
+# r-rcpp (RPackage + external R)
+ - python: '2.7'
+ os: linux
+ language: python
+ env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=r-rcpp' ]
+# mpich (AutotoolsPackage)
+ - python: '3.6'
+ os: linux
+ language: python
+ env: [ TEST_SUITE=build, COVERAGE=true, 'SPEC=mpich' ]
#=============================================================================
# Environment
@@ -72,6 +107,14 @@ addons:
- mercurial
- graphviz
- gnupg2
+ - cmake
+ - r-base
+ - r-base-core
+ - r-base-dev
+ - perl
+ - perl-base
+
+cache: pip
# Work around Travis's lack of support for Python on OSX
before_install:
@@ -99,6 +142,9 @@ before_script:
# Need this to be able to compute the list of changed files
- git fetch origin develop:develop
+ # Set up external dependencies for build tests, because the take too long to compile
+ - if [[ "$TEST_SUITE" == "build" ]]; then cp share/spack/qa/configuration/packages.yaml etc/spack/packages.yaml; fi
+
#=============================================================================
# Building
#=============================================================================