serversession/.travis.yml

82 lines
2.7 KiB
YAML

# Travis file upgraded to stack at 2015-31-12 using template from
# <http://docs.haskellstack.org/en/stable/travis_ci.html>.
#
# Travis file initially created at 2015-05-31 using template from
# <https://github.com/hvr/multi-ghc-travis/commit/c9c87d36c450d7f9cb3183dcaf1f77b60f916f28>
# and taking the idea of using cabal-meta from yesodweb/yesod.
sudo: false
services:
- redis-server
addons:
postgresql: "9.3"
cache:
directories:
- $HOME/.stack
matrix:
include:
- env: GHCVER=7.8.4 RESOLVER=lts-2.22 EXTRADEPS="hedis-0.6.6" STACKARGS="--flag serversession-backend-redis:old-locale"
addons:
apt:
sources:
- hvr-ghc
packages:
- ghc-7.8.4
- env: GHCVER=7.10.2 RESOLVER=lts-3.4 EXTRADEPS="" STACKARGS=""
addons:
apt:
sources:
- hvr-ghc
packages:
- ghc-7.10.2
- env: GHCVER=7.10.2 RESOLVER=lts-3.20 EXTRADEPS="" STACKARGS=""
addons:
apt:
sources:
- hvr-ghc
packages:
- ghc-7.10.2
- env: GHCVER=head RESOLVER=nightly EXTRADEPS="" STACKARGS=""
addons:
apt:
sources:
- hvr-ghc
packages:
- ghc-head
allow_failures:
- env: GHCVER=head RESOLVER=nightly EXTRADEPS="" STACKARGS=""
before_install:
# Download and unpack the stack executable
- mkdir -p ~/.local/bin
- export PATH=$HOME/.local/bin:$PATH
- travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
- export PATH=/opt/ghc/$GHCVER/bin:$PATH
- export RUNSTACK="stack --no-terminal --skip-ghc-check --resolver=$RESOLVER"
install:
- $RUNSTACK --version
- echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
- $RUNSTACK install alex happy
before_script:
- psql -c "CREATE USER test WITH PASSWORD 'test';" -U postgres
- psql -c "CREATE DATABASE test;" -U postgres
- psql -c "GRANT ALL PRIVILEGES ON DATABASE test TO test;" -U postgres
- for dep in $EXTRADEPS; do echo " - $dep" >> stack.yaml; done
script:
- $RUNSTACK test $STACKARGS serversession
- $RUNSTACK test $STACKARGS serversession-backend-acid-state
- du -hcs serversession-backend-acid-state/state; rm -Rfv serversession-backend-acid-state/state
- $RUNSTACK test $STACKARGS serversession-backend-persistent --test-arguments='"--skip=100 MiB"'
- du -hcs serversession-backend-persistent/test.db*; rm -Rfv serversession-backend-persistent/test.db*
- psql -c 'SELECT COUNT(*) FROM "persistent_session";' -U test test; psql -c 'DROP DATABASE test;' -U postgres
- $RUNSTACK test $STACKARGS serversession-backend-redis
- redis-cli FLUSHALL
- $RUNSTACK test $STACKARGS --no-run-tests # Make sure everything else builds