forked from iLCSoft/LCTuple
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
60 lines (52 loc) · 2.34 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
sudo: required
dist: trusty
services:
- docker
language: cpp
env:
matrix:
- COMPILER=gcc
- COMPILER=llvm
before_install:
- wget 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 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
- sudo mkdir -p /cvmfs/clicdp.cern.ch
- sudo mount -t cvmfs clicdp.cern.ch /cvmfs/clicdp.cern.ch
- ls /cvmfs/clicdp.cern.ch
# command to install dependencies
install:
- shopt -s extglob dotglob
- mkdir Package
- mv !(Package) Package
- shopt -u dotglob
- export PKGDIR=${PWD}/Package
- export description=`date`
- export COVERITY_REPO=`echo ${TRAVIS_REPO_SLUG} | sed 's/\//\%2F/g'`
- if [[ "${TRAVIS_EVENT_TYPE}" == "cron" && "${COMPILER}" == "gcc" ]];
then wget https://scan.coverity.com/download/linux64 --post-data "token=${COVERITY_SCAN_TOKEN}&project=${COVERITY_REPO}" -O Package/coverity_tool.tgz; cd Package; mkdir cov-analysis-linux64; tar -xf coverity_tool.tgz -C cov-analysis-linux64 --strip-components=1;
fi
# command to run tests
script:
- docker run -it --name CI_container -v $PKGDIR:/Package -e COMPILER=$COMPILER -v /cvmfs/clicdp.cern.ch:/cvmfs/clicdp.cern.ch -d clicdp/slc6-build /bin/bash
- if [[ "${TRAVIS_EVENT_TYPE}" == "cron" && "${COMPILER}" == "gcc" ]];
then docker exec -it CI_container /bin/bash -c "./Package/.travis-ci.d/coverity_scan.sh";
elif [[ "${TRAVIS_EVENT_TYPE}" == "cron" && "${COMPILER}" == "llvm" ]];
then echo "Running the weekly Coverity Scan, no LLVM/Clang build this time";
else docker exec -it CI_container /bin/bash -c "./Package/.travis-ci.d/compile_and_test.sh";
fi
- if [[ "${TRAVIS_EVENT_TYPE}" == "cron" && "${COMPILER}" == "gcc" ]];
then curl --form token=${COVERITY_SCAN_TOKEN} --form [email protected] --form file=@${PKGDIR}/build/myproject.tgz --form version="master" --form description="${description}" https://scan.coverity.com/builds?project=${COVERITY_REPO} ;
fi
# Don't send e-mail notifications
notifications:
email:
on_success: never
on_failure: always