102 lines
4.5 KiB
YAML
102 lines
4.5 KiB
YAML
# See https://github.com/hvr/multi-ghc-travis for more information.
|
|
|
|
sudo: required
|
|
|
|
services:
|
|
- docker
|
|
|
|
env:
|
|
# We use CABALVER=1.22 everywhere because it uses the flag --enable-coverage
|
|
# instead of --enable-library-coverage used by older versions.
|
|
#- GHCVER=7.8.4 CABALVER=1.22 MONGO=2.6.12
|
|
#- GHCVER=7.10.3 CABALVER=1.22 MONGO=2.6.12
|
|
#- GHCVER=8.0.2 CABALVER=1.24 MONGO=2.6.12
|
|
- GHCVER=8.4.2 CABALVER=2.2 MONGO=3.6 STACKAGE=nightly
|
|
- GHCVER=8.2.2 CABALVER=1.24 MONGO=3.6 STACKAGE=lts-11.6
|
|
- GHCVER=8.0.2 CABALVER=1.24 MONGO=3.6 STACKAGE=lts-9.21
|
|
- GHCVER=8.2.2 CABALVER=1.24 MONGO=3.0 STACKAGE=lts-11.6
|
|
- GHCVER=8.0.2 CABALVER=1.24 MONGO=3.0 STACKAGE=lts-9.21
|
|
- GHCVER=8.2.2 CABALVER=1.24 MONGO=3.4 STACKAGE=lts-11.6
|
|
- GHCVER=8.0.2 CABALVER=1.24 MONGO=3.4 STACKAGE=lts-9.21
|
|
- GHCVER=8.2.2 CABALVER=1.24 MONGO=3.2 STACKAGE=lts-11.6
|
|
- GHCVER=8.0.2 CABALVER=1.24 MONGO=3.2 STACKAGE=lts-9.21
|
|
|
|
before_install:
|
|
|
|
- travis_retry sudo add-apt-repository -y ppa:hvr/ghc
|
|
- travis_retry sudo apt-get update
|
|
- travis_retry sudo apt-get install cabal-install-$CABALVER ghc-$GHCVER
|
|
- export PATH=$HOME/.cabal/bin:/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
|
|
- cabal --version
|
|
#- sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
|
|
#- sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
|
|
#- sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
|
|
#- echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
|
|
#- echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
|
|
#- echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
|
|
#- echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
|
|
#- sudo apt-get update
|
|
#- if [[ ${MONGO:0:3} == "2.4" ]]; then sudo apt-get install mongodb-10gen=$MONGO; else sudo apt-get install --allow-downgrades -y mongodb-org=$MONGO mongodb-org-server=$MONGO mongodb-org-shell=$MONGO mongodb-org-tools=$MONGO; fi
|
|
#- ls /etc/init.d
|
|
#- if [[ ${MONGO:0:3} == "2.4" ]]; then sudo service mongodb start; fi
|
|
#- sudo service --status-all
|
|
#- sudo service mongod start
|
|
#- sleep 15 #mongo may not be responded directly. See http://docs.travis-ci.com/user/database-setup/#MongoDB
|
|
#- ps axf | grep mongo
|
|
#- sudo netstat -apn
|
|
#- mongo --version
|
|
- sudo docker pull mongo:$MONGO
|
|
- sudo docker run -d -p 27017:27017 mongo:$MONGO
|
|
|
|
install:
|
|
- travis_retry cabal update
|
|
# Install the combined dependencies for this package and all other packages
|
|
# needed to reduce conflicts.
|
|
- cabal sandbox init
|
|
- wget https://www.stackage.org/$STACKAGE/cabal.config
|
|
- sed -e '/mongoDB/d' cabal.config > cabal.config.new
|
|
- mv cabal.config.new cabal.config
|
|
- cabal install --only-dependencies --enable-tests --enable-benchmarks --force-reinstalls
|
|
|
|
script:
|
|
- cabal configure --enable-tests -v2 --enable-benchmarks
|
|
- cabal build
|
|
# cabal test fails due a to hpc error. Using run-cabal-test instead.
|
|
# - cabal test --show-details=always
|
|
- cabal test --show-details=always
|
|
# Ignoring the exit code here. Need to register with coveralls.io?
|
|
# Ignoring the exit code here. cabal check recommends against
|
|
# 'ghc-prof-options: -auto-all'.
|
|
- cabal check || true
|
|
- cabal sdist
|
|
- export SRC_TGZ=$(cabal info . | awk '{print $2 ".tar.gz";exit}');
|
|
cd dist/;
|
|
if [ -f "$SRC_TGZ" ]; then
|
|
cabal install --force-reinstalls "$SRC_TGZ";
|
|
else
|
|
echo "expected '$SRC_TGZ' not found";
|
|
exit 1;
|
|
fi
|
|
|
|
jobs:
|
|
include:
|
|
- stage: deploy
|
|
env: GHCVER=8.0.2 CABALVER=1.24 MONGO=3.6
|
|
before_install:
|
|
- travis_retry sudo add-apt-repository -y ppa:hvr/ghc
|
|
- travis_retry sudo apt-get update
|
|
- travis_retry sudo apt-get install cabal-install-$CABALVER
|
|
- export PATH=$HOME/.cabal/bin:/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
|
|
- cabal --version
|
|
install: skip
|
|
script: skip
|
|
deploy:
|
|
provider: hackage
|
|
username: VictorDenisov
|
|
password:
|
|
secure: DPYlqRN09gFp06paLj9bRBzpxTkqkZzfsTrU3j0WiqRzqUMeWEeiZNAkIE/maC9xrEuuYBTk0KlSdz+esF4kjfyRQFTxb9CvXrZ474qHozVLC01vh/av5bGZBDQOwgzJrJNVpfl+g+EADOicz9/nhPXiAd7nCQIv/2s/xM1Yj1U=
|
|
on:
|
|
repo: mongodb-haskell/mongodb
|
|
tags: true
|
|
|