Skip to content
Snippets Groups Projects
.travis.yml 3.43 KiB
Newer Older
sudo: required
dist: trusty

services:
  - docker

  - COMPILER=gcc;   LCG_RELEASE=LCG_96b; STANDARD=17; COMPILER_VERSION=gcc9; PYTHON_CHECK="no"
  - COMPILER=gcc;   LCG_RELEASE=LCG_96b; STANDARD=17; COMPILER_VERSION=gcc8; PYTHON_CHECK="no"; SHARED=OFF
  - COMPILER=gcc;   LCG_RELEASE=LCG_96bpython3; STANDARD=17; COMPILER_VERSION=gcc8; PYTHON_CHECK="no"
  - COMPILER=clang; LCG_RELEASE=LCG_96b; STANDARD=17; COMPILER_VERSION=clang8; PYTHON_CHECK="no"
  - COMPILER=gcc;   LCG_RELEASE=LCG_96b; STANDARD=14; COMPILER_VERSION=gcc62; PYTHON_CHECK="no"
  - COMPILER=gcc; LCG_RELEASE=dev3; STANDARD=17; COMPILER_VERSION=gcc9; PYTHON_CHECK="no"
  - COMPILER=gcc; LCG_RELEASE=dev4; STANDARD=17; COMPILER_VERSION=gcc8; PYTHON_CHECK="no"
  - PYTHON_CHECK="yes"; COMPILER=gcc;   LCG_RELEASE=LCG_96b; STANDARD=17; COMPILER_VERSION=gcc8;

matrix:
  allow_failures:
    - env: COMPILER=gcc; LCG_RELEASE=dev3; STANDARD=17; COMPILER_VERSION=gcc9; PYTHON_CHECK="no"
    - env: COMPILER=gcc; LCG_RELEASE=dev4; STANDARD=17; COMPILER_VERSION=gcc8; PYTHON_CHECK="no"
  - wget --no-check-certificate https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/cvmfs-release-latest_all.deb
  - sudo dpkg -i cvmfs-release-latest_all.deb
  - sudo apt-get update
  - sudo apt-get install cvmfs cvmfs-config-default
  - rm -f cvmfs-release-latest_all.deb
  - wget --no-check-certificate https://lcd-data.web.cern.ch/lcd-data/CernVM/default.local
  - sudo mkdir -p /etc/cvmfs
  - sudo mv default.local /etc/cvmfs/default.local
  - sudo /etc/init.d/autofs stop
  - sudo cvmfs_config setup
Marko Petric's avatar
Marko Petric committed
  - sudo mkdir -p /cvmfs/sft.cern.ch
  - sudo mkdir -p /cvmfs/sft-nightlies.cern.ch
Marko Petric's avatar
Marko Petric committed
  - sudo mkdir -p /cvmfs/geant4.cern.ch
Marko Petric's avatar
Marko Petric committed
  - sudo mount -t cvmfs sft.cern.ch /cvmfs/sft.cern.ch
  - sudo mount -t cvmfs sft-nightlies.cern.ch /cvmfs/sft-nightlies.cern.ch
Marko Petric's avatar
Marko Petric committed
  - sudo mount -t cvmfs geant4.cern.ch /cvmfs/geant4.cern.ch
  - sudo mount -t cvmfs clicdp.cern.ch /cvmfs/clicdp.cern.ch
Marko Petric's avatar
Marko Petric committed
  - ls /cvmfs/sft.cern.ch
  - ls /cvmfs/sft-nightlies.cern.ch
Marko Petric's avatar
Marko Petric committed
  - ls /cvmfs/geant4.cern.ch
  - export CVMFS_REPOS="-v /cvmfs/sft.cern.ch:/cvmfs/sft.cern.ch"
  - export CVMFS_REPOS="${CVMFS_REPOS} -v /cvmfs/sft-nightlies.cern.ch:/cvmfs/sft-nightlies.cern.ch"
  - export CVMFS_REPOS="${CVMFS_REPOS} -v /cvmfs/geant4.cern.ch:/cvmfs/geant4.cern.ch"
  - export CVMFS_REPOS="${CVMFS_REPOS} -v /cvmfs/clicdp.cern.ch:/cvmfs/clicdp.cern.ch"
# command to install dependencies
install:
  - shopt -s extglob dotglob
  - shopt -u dotglob

# command to run tests
script:
  - docker run -ti --name CI_container -v $PKGDIR:/DD4hep -e COMPILER_TYPE=$COMPILER -e LCG_RELEASE=${LCG_RELEASE} -e STANDARD=${STANDARD} -e COMPILER_VERSION=${COMPILER_VERSION} -e SHARED=${SHARED:-ON} ${CVMFS_REPOS} -d clicdp/cc7-lcg /bin/bash
  - if [[ "$PYTHON_CHECK" == "yes" ]];
    then docker exec -ti CI_container /bin/bash -c "./DD4hep/.dd4hep-ci.d/runPythonChecks.sh";
    else docker exec -ti CI_container /bin/bash -c "./DD4hep/.dd4hep-ci.d/compile_and_test.sh";
    fi

after_success:
  - if [[ "${TRAVIS_EVENT_TYPE}" != "cron" && "${TRAVIS_EVENT_TYPE}" != "pull_request" && "${COMPILER}" == "clang" && "${TRAVIS_REPO_SLUG%/*}" == "AIDASoft" ]];
    then curl -X POST -F token=$GITLAB_TOKEN -F ref=master https://gitlab.cern.ch/api/v4/projects/7828/trigger/pipeline;
    fi

# Don't send e-mail notifications
notifications:
Marko Petric's avatar
Marko Petric committed
  email: false