forked from ValeevGroup/tiledarray
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
111 lines (105 loc) · 3.44 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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# See http://about.travis-ci.org/docs/user/build-configuration/
# To validate this file: http://lint.travis-ci.org/
language: cpp
dist: focal
cache: ccache
cache:
directories:
- /home/travis/_install
os: linux
addons:
apt:
packages: &base_packages
- libblas-dev
- liblapack-dev
- liblapacke-dev
- libtbb-dev
- lcov
- python3
- python3-pip
- python3-pytest
- python3-numpy
env:
global:
- BUILD_PREFIX=/home/travis/_build
- INSTALL_PREFIX=/home/travis/_install
matrix:
fast_finish: true
include:
- compiler: gcc
env: GCC_VERSION=7 BUILD_TYPE=Debug MADNESS_OVER_PARSEC=1
addons:
apt:
packages:
- *base_packages
- g++-7
- gfortran-7
- compiler: gcc
env: GCC_VERSION=7 BUILD_TYPE=Debug
addons:
apt:
packages:
- *base_packages
- g++-7
- gfortran-7
- compiler: gcc
env: GCC_VERSION=7 BUILD_TYPE=Release
addons:
apt:
packages:
- *base_packages
- g++-7
- gfortran-7
- compiler: gcc
env: GCC_VERSION=8 BUILD_TYPE=Debug COMPUTE_COVERAGE=1 MADNESS_OVER_PARSEC=1
addons:
apt:
packages:
- *base_packages
- g++-8
- gfortran-8
- compiler: gcc
env: GCC_VERSION=8 BUILD_TYPE=Release
addons:
apt:
packages:
- *base_packages
- g++-8
- gfortran-8
- compiler: gcc
env: GCC_VERSION=9 BUILD_TYPE=Debug MADNESS_OVER_PARSEC=1
addons:
apt:
sources:
- sourceline: 'ppa:ubuntu-toolchain-r/test'
packages:
- *base_packages
- g++-9
- gfortran-9
before_install:
- env
- mkdir -p ${BUILD_PREFIX} && mkdir -p ${INSTALL_PREFIX}
# use timeout to stop long-running (i.e. cache-rebuilding) jobs right before they get killed by Travis-CI
# in case of timeout report success to Travis to force cache upload
script:
- travis_wait 50 timeout 2850 ${TRAVIS_BUILD_DIR}/bin/build-$TRAVIS_OS_NAME.sh; RESULT=$?; if [ $RESULT -eq 0 ] || [ $RESULT -eq 124 ]; then true; else false; fi;
after_failure:
- cat ${BUILD_PREFIX}/TA/external/madness-build/CMakeFiles/CMakeError.log
- cat ${BUILD_PREFIX}/TA/external/madness-build/CMakeFiles/CMakeOutput.log
- cat ${BUILD_PREFIX}/TA/CMakeFiles/CMakeError.log
- cat ${BUILD_PREFIX}/TA/CMakeFiles/CMakeOutput.log
# codecov
after_success:
# create report
- cd ${TRAVIS_BUILD_DIR}
- if [ "$COMPUTE_COVERAGE" = "1" ]; then lcov --gcov-tool gcov-${GCC_VERSION} --directory ${BUILD_PREFIX}/TA --capture --output-file coverage.info; fi; # capture coverage info
- if [ "$COMPUTE_COVERAGE" = "1" ]; then lcov --remove coverage.info '/usr/*' '*/madness/*' '*/btas/*' '*/tests/*' --output-file coverage.info; fi; # filter out non-project files
- if [ "$COMPUTE_COVERAGE" = "1" ]; then lcov --list coverage.info; fi; #debug info
- echo ${TRAVIS_CMD}
# upload report to CodeCov
- if [ "$COMPUTE_COVERAGE" = "1" ]; then bash <(curl -s https://codecov.io/bash) -t token; fi;
# deploy artifacts: currently only dox
- if [ "$DEPLOY" = "1" ]; then bash ${TRAVIS_BUILD_DIR}/bin/deploy-$TRAVIS_OS_NAME.sh; fi;
notifications:
slack:
secure: aSmy6FmiEf+0gcbVpJs0GIrmpI1dF7/WFOXgUkM2wLxw5DBQxE4LW/yt01mvFqAMJLe0LzGujx/V/z98i0kA1S8DEMTqJ+IG2bbdmgb5CAw5LTP5Air1P2SeAyKW/eAAsnGsERaEnHj8nnZEa2dhbAFOPD5QDM7nwWG/xUkIGMU=