Skip to content

Commit cf313f2

Browse files
committed
update travis.yml
1 parent a761c53 commit cf313f2

File tree

1 file changed

+17
-68
lines changed

1 file changed

+17
-68
lines changed

.travis.yml

Lines changed: 17 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,76 +1,25 @@
1-
# This file has been generated -- see https://github.com/hvr/multi-ghc-travis
2-
language: c
31
sudo: false
42

5-
cache:
6-
directories:
7-
- $HOME/.cabsnap
8-
- $HOME/.cabal/packages
9-
10-
before_cache:
11-
- rm -fv $HOME/.cabal/packages/hackage.haskell.org/build-reports.log
12-
- rm -fv $HOME/.cabal/packages/hackage.haskell.org/00-index.tar
3+
env:
4+
- STACK_YAML=stack.yaml
135

14-
matrix:
15-
include:
16-
- env: CABALVER=1.24 GHCVER=8.0.1
17-
compiler: ": #GHC 8.0.1"
18-
addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.1], sources: [hvr-ghc]}}
19-
20-
before_install:
21-
- unset CC
22-
- export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
6+
addons:
7+
apt:
8+
packages: libgmp-dev
239

2410
install:
25-
- cabal --version
26-
- echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
27-
- if [ -f $HOME/.cabal/packages/hackage.haskell.org/00-index.tar.gz ];
28-
then
29-
zcat $HOME/.cabal/packages/hackage.haskell.org/00-index.tar.gz >
30-
$HOME/.cabal/packages/hackage.haskell.org/00-index.tar;
31-
fi
32-
- travis_retry cabal update -v
33-
- sed -i 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config
34-
- cabal install --only-dependencies --enable-tests --enable-benchmarks --dry -v > installplan.txt
35-
- sed -i -e '1,/^Resolving /d' installplan.txt; cat installplan.txt
36-
37-
# check whether current requested install-plan matches cached package-db snapshot
38-
- if diff -u installplan.txt $HOME/.cabsnap/installplan.txt;
39-
then
40-
echo "cabal build-cache HIT";
41-
rm -rfv .ghc;
42-
cp -a $HOME/.cabsnap/ghc $HOME/.ghc;
43-
cp -a $HOME/.cabsnap/lib $HOME/.cabsnap/share $HOME/.cabsnap/bin $HOME/.cabal/;
44-
else
45-
echo "cabal build-cache MISS";
46-
rm -rf $HOME/.cabsnap;
47-
mkdir -p $HOME/.ghc $HOME/.cabal/lib $HOME/.cabal/share $HOME/.cabal/bin;
48-
cabal install --only-dependencies --enable-tests --enable-benchmarks;
49-
fi
11+
# stack
12+
- mkdir -p ~/.local/bin
13+
- export PATH=~/.local/bin:$PATH
14+
- travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
15+
- stack --version
5016

51-
# snapshot package-db on cache miss
52-
- if [ ! -d $HOME/.cabsnap ];
53-
then
54-
echo "snapshotting package-db to build-cache";
55-
mkdir $HOME/.cabsnap;
56-
cp -a $HOME/.ghc $HOME/.cabsnap/ghc;
57-
cp -a $HOME/.cabal/lib $HOME/.cabal/share $HOME/.cabal/bin installplan.txt $HOME/.cabsnap/;
58-
fi
59-
60-
# Here starts the actual work to be performed for the package under test;
61-
# any command which exits with a non-zero exit code causes the build to fail.
6217
script:
63-
- if [ -f configure.ac ]; then autoreconf -i; fi
64-
- cabal configure --enable-tests --enable-benchmarks -v2 # -v2 provides useful information for debugging
65-
- cabal build # this builds all libraries and executables (including tests/benchmarks)
66-
- cabal test
67-
- cabal check
68-
- cabal sdist # tests that a source-distribution can be generated
69-
70-
# Check that the resulting source distribution can be built & installed.
71-
# If there are no other `.tar.gz` files in `dist`, this can be even simpler:
72-
# `cabal install --force-reinstalls dist/*-*.tar.gz`
73-
- SRC_TGZ=$(cabal info . | awk '{print $2;exit}').tar.gz &&
74-
(cd dist && cabal install --force-reinstalls "$SRC_TGZ")
18+
- stack setup --no-terminal
19+
- stack build --ghc-options=-Werror --no-terminal
20+
- stack test --ghc-options=-Werror --no-terminal --coverage
21+
- stack haddock --no-terminal
7522

76-
# EOF
23+
cache:
24+
directories:
25+
- $HOME/.stack

0 commit comments

Comments
 (0)