# 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.0.2 CABALVER=1.24 MONGO=3.0 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.2 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.4 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.6 STACKAGE=lts-9.21 - GHCVER=8.2.2 CABALVER=1.24 MONGO=3.6 STACKAGE=lts-11.6 - GHCVER=8.4.2 CABALVER=2.2.0.1 MONGO=3.6 STACKAGE=nightly 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 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