aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--.travis.yml52
1 files changed, 20 insertions, 32 deletions
diff --git a/.travis.yml b/.travis.yml
index ebe68b4..73c37d8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,9 +1,5 @@
1# NB: don't set `language: haskell` here
2language: c 1language: c
3 2
4# See also https://github.com/hvr/multi-ghc-travis for more information
5
6# explicitly request container-based infrastructure
7sudo: false 3sudo: false
8 4
9# The following lines enable several GHC versions and/or HP versions 5# The following lines enable several GHC versions and/or HP versions
@@ -12,12 +8,12 @@ sudo: false
12# GHCVER. Omit lines with versions you don't need/want testing for. 8# GHCVER. Omit lines with versions you don't need/want testing for.
13matrix: 9matrix:
14 include: 10 include:
15 - env: CABALVER=1.18 GHCVER=7.8.4 11 - env: CABALVER=1.18 GHCVER=7.8.4
16 addons: {apt: {packages: [cabal-install-1.18,ghc-7.8.4], sources: [hvr-ghc]}} 12 addons: {apt: {packages: [cabal-install-1.18,ghc-7.8.4], sources: [hvr-ghc]}}
17 - env: CABALVER=1.22 GHCVER=7.10.1 13 - env: CABALVER=1.22 GHCVER=7.10.1
18 addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.1],sources: [hvr-ghc]}} 14 addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.1],sources: [hvr-ghc]}}
19 - env: CABALVER=head GHCVER=head 15 - env: CABALVER=head GHCVER=head
20 addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}} 16 addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
21 17
22 allow_failures: 18 allow_failures:
23 - env: CABALVER=head GHCVER=head 19 - env: CABALVER=head GHCVER=head
@@ -26,34 +22,26 @@ before_install:
26 - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH 22 - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
27 23
28install: 24install:
29 - cabal --version 25 - cabal --version
30 - echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]" 26 - echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
31 - travis_retry cabal update 27 - travis_retry cabal update
32 - sed -i 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config # The container environment reports 16 cores 28 - sed -i 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config # The container environment reports 16 cores
33 - cabal install hpc-coveralls 29 - cabal install hpc-coveralls
34 - cabal install --only-dependencies 30 - cabal install --only-dependencies
35 31
36# Here starts the actual work to be performed for the package under
37# test; any command which exits with a non-zero exit code causes the
38# build to fail.
39script: 32script:
40 # -v2 provides useful information for debugging
41 - cabal configure --enable-tests --enable-benchmarks --enable-coverage -v2 33 - cabal configure --enable-tests --enable-benchmarks --enable-coverage -v2
34 - cabal build
42 35
43 # this builds all libraries and executables 36 - run-cabal-test --show-details=streaming
44 # (including tests/benchmarks)
45 - cabal build
46 37
47 - run-cabal-test --show-details=streaming 38 - cabal check
48 - cabal check
49 39
50 # tests that a source-distribution can be generated 40 - cabal sdist
51 - cabal sdist
52 41
53 # check that the generated source-distribution can be built & installed 42 - SRC_TGZ=$(cabal info . | awk '{print $2;exit}').tar.gz &&
54 - SRC_TGZ=$(cabal info . | awk '{print $2;exit}').tar.gz && 43 (cd dist && cabal install --force-reinstalls "$SRC_TGZ")
55 (cd dist && cabal install --force-reinstalls "$SRC_TGZ")
56 44
57after_script: 45after_script:
58 - hpc-coveralls test 46- hpc-coveralls test
59# EOF 47# EOF