/
.travis.yml
44 lines (44 loc) · 1.42 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
dist: xenial
language: haskell
cache:
directories:
- $HOME/.cabal
- $HOME/.ghc
- $HOME/.stack
# Make sure to update tested-with in .cabal when updating these:
ghc:
- 8.8.1
- 7.6.3
- 7.8.4
- 8.6.5
- 8.4.4
- 8.2.2
- 8.0.2
- 7.10.3
env:
- STACK=yes
- CABAL=yes
matrix:
exclude:
# ghc 8.8.1 not yet supported by stack lts
- ghc: 8.8.1
env: STACK=yes
# stack lts does not support ghc 7.6
- ghc: 7.6.3
env: STACK=yes
script:
- if [ "$CABAL" = yes ]; then cabal configure --enable-tests && cabal build && cabal test; fi
- if [ "$STACK" = yes ]; then stack --no-terminal --stack-yaml stack-$GHCVER.yaml build --test --no-run-tests; fi
before_install:
- export GHCVER=${GHCVER:-$TRAVIS_HASKELL_VERSION}
- sudo apt-get update -qq
- if [ "$CABAL" = yes ]; then sudo apt-get install alex happy; fi
- if [ "$STACK" = yes ]; then
mkdir -p $HOME/.local/bin &&
export PATH=$HOME/.local/bin:$PATH &&
travis_retry curl -L https://github.com/commercialhaskell/stack/releases/download/v1.9.3/stack-1.9.3-linux-x86_64-static.tar.gz | tar xz --wildcards --strip-components=1 -C $HOME/.local/bin '*/stack' &&
stack config set system-ghc --global true;
fi
install:
- if [ "$CABAL" = yes ]; then cabal install --enable-tests --dependencies-only; fi
- if [ "$STACK" = yes ]; then stack --no-terminal --stack-yaml stack-$GHCVER.yaml build --test --dependencies-only; fi