@@ -26,83 +26,76 @@ matrix:
26
26
- BUILD_TYPE="InstallScript"
27
27
OSX_PACKAGES="gcc@6"
28
28
GCC=6
29
- - os : osx
30
- env :
31
- - OSX_PACKAGES="gcc cmake"
32
- GCC=7
33
- OPENCOARRAYS_DEVELOPER=ON
34
29
- &ubuntu
35
30
os : linux
36
31
sudo : false
37
32
dist : trusty
38
33
env :
39
34
- GCC=6
40
35
cache :
41
- apt : false
36
+ apt : true
42
37
directories :
43
38
- " $CACHE"
44
39
addons :
45
40
apt :
46
- sources :
41
+ sources : &linuxsrcs
47
42
- ubuntu-toolchain-r-test
48
43
- george-edison55-precise-backports
49
- packages :
44
+ packages : &gcc6pkgs
50
45
- gcc-6
51
46
- gfortran-6
52
47
- g++-6
53
48
- binutils
54
49
- cmake-data
55
50
- cmake
56
- # - shellcheck
57
51
-
58
52
<< : *ubuntu
59
53
env :
60
54
- GCC=7
61
55
addons :
62
56
apt :
63
- sources :
64
- - ubuntu-toolchain-r-test
65
- - george-edison55-precise-backports
66
- packages :
57
+ sources : *linuxsrcs
58
+ packages : &gcc7pkgs
67
59
- gcc-7
68
60
- gfortran-7
69
61
- g++-7
70
62
- binutils
71
63
- cmake-data
72
64
- cmake
73
- # - shellcheck
74
65
-
75
66
<< : *ubuntu
76
67
env :
77
68
- BUILD_TYPE="InstallScript"
78
69
GCC=6
79
- cache : false
80
70
addons :
81
71
apt :
82
- sources :
83
- - ubuntu-toolchain-r-test
72
+ sources : *linuxsrcs
84
73
packages :
85
74
- gcc-6
86
75
- gfortran-6
87
76
- g++-6
88
- # - shellcheck
89
- allow_failures :
90
- - os : osx
77
+ - &linux_allowed_failure
78
+ << : *ubuntu
91
79
env :
92
- - OSX_PACKAGES="gcc cmake"
93
- GCC=7
80
+ - GCC=7
94
81
OPENCOARRAYS_DEVELOPER=ON
82
+ addons :
83
+ apt :
84
+ sources : *linuxsrcs
85
+ packages : *gcc7pkgs
86
+
87
+ allow_failures :
88
+ - *linux_allowed_failure
95
89
96
90
before_install :
97
91
- export FC=gfortran-${GCC}
98
92
- export CC=gcc-${GCC}
99
93
- export CXX=g++-${GCC}
100
94
- export MPICH_BOT_URL_HEAD=MPICH_GCC${GCC}_BOT_URL_HEAD
101
95
- |
102
- set -o errexit
103
96
if [[ (-n ${TRAVIS_TAG}) && (${TRAVIS_OS_NAME} == osx) ]] && ${TRAVIS_SECURE_ENV_VARS} ; then
104
97
brew update > /dev/null
105
- [[ "$( brew ls --versions gpg2)" ]] || brew install gpg2
98
+ brew ls --versions gpg2 >/dev/null || brew install gpg2
106
99
brew outdated gpg2 || brew upgrade gpg2
107
100
type -P openssl || brew install openssl
108
101
fi
@@ -116,9 +109,7 @@ before_install:
116
109
curl https://izaakbeekman.com/izaak.pubkey.txt | gpg --import
117
110
git tag -v ${TRAVIS_TAG}
118
111
fi
119
- set +o errexit
120
112
- |
121
- set -o errexit
122
113
if [[ (-n ${TRAVIS}) && (${TRAVIS_OS_NAME} == osx) ]]; then
123
114
export PATH="${PATH}:${HOME}/Library/Python/2.7/bin"
124
115
else
@@ -129,18 +120,16 @@ before_install:
129
120
${CC} --version
130
121
${CXX} --version
131
122
fi
132
- set +o errexit
133
123
134
124
install :
135
125
- |
136
- set -o errexit
137
126
if [[ (-n ${TRAVIS}) && (${TRAVIS_OS_NAME} == osx) ]]; then
138
127
brew update > /dev/null
139
128
140
- [[ "$( brew ls --versions shellcheck)" ]] || brew install --force-bottle shellcheck
129
+ brew ls --versions shellcheck >/dev/null || brew install --force-bottle shellcheck
141
130
brew outdated shellcheck || brew upgrade --force-bottle shellcheck
142
131
for pkg in ${OSX_PACKAGES}; do
143
- [[ "$( brew ls --versions ${pkg})" ]] || brew install ${pkg}
132
+ brew ls --versions ${pkg} >/dev/null || brew install ${pkg} || brew link --overwrite ${pkg}
144
133
brew outdated ${pkg} || brew upgrade ${pkg}
145
134
done
146
135
if [[ ${BUILD_TYPE} == InstallScript ]]; then # uninstall some stuff if present
@@ -150,9 +139,7 @@ install:
150
139
else
151
140
wget "${!MPICH_BOT_URL_HEAD}${MPICH_BOT_URL_TAIL}"
152
141
brew install --force-bottle ${MPICH_BOT_URL_TAIL}
153
- if ! [[ "$(brew ls --versions mpich)" ]]; then
154
- brew install --force-bottle mpich
155
- fi
142
+ brew ls --versions mpich >/dev/null || brew install --force-bottle mpich
156
143
fi
157
144
mpif90 --version || mpif90 -show || true
158
145
mpicc --version || mpicc -show || true
@@ -181,46 +168,40 @@ install:
181
168
mpicc --version
182
169
cmake --version
183
170
fi
184
- set +o errexit
185
171
186
172
script :
173
+ - echo "In Travis-CI 'script' section."
187
174
- |
188
- set -o errexit
189
175
if [[ ${BUILD_TYPE} == InstallScript ]]; then
190
176
./install.sh --yes-to-all -i "${HOME}/opencoarrays" -j 4 -f "$(type -P "${FC}")" -c "$(type -P "${CC}")" -C "$(type -P "${CXX}")"
191
177
cd prerequisites/builds/opencoarrays/*
192
- ../../../installations/cmake/*/bin/ctest --output-on-failure --schedule-random --repeat-until-fail 7
178
+ ../../../installations/cmake/*/bin/ctest --output-on-failure --schedule-random --repeat-until-fail ${NREPEAT:-5}
193
179
cd -
194
180
else
195
- mkdir cmake-build
181
+ mkdir cmake-build || echo "Cannot mkdir cmake-build"
196
182
for BUILD_TYPE in ${BUILD_TYPES}; do
197
183
rm -rf cmake-build/* || true
198
- cd cmake-build
199
- cmake -DCMAKE_INSTALL_PREFIX:PATH="${HOME}/OpenCoarrays" -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" ..
200
- make -j 4
201
- ctest --output-on-failure --schedule-random --repeat-until-fail 7
184
+ cd cmake-build || echo 'cannot cd to cmake-build/'
185
+ cmake -DCMAKE_INSTALL_PREFIX:PATH="${HOME}/OpenCoarrays" -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" .. || echo "running cmake failed"
186
+ make -j 4 || echo "running make failed"
187
+ ctest --output-on-failure --schedule-random --repeat-until-fail ${NREPEAT:-5} --timeout ${TEST_TIMEOUT:-200}
202
188
make install
203
189
make uninstall
204
190
cd ..
205
191
done
206
192
fi
207
- set +o errexit
208
193
209
194
after_script :
195
+ - find . -name '*.gcno' -print
196
+ - gcov-${GCC} --version
197
+ - bash <(curl -s https://codecov.io/bash) -x $(type -P gcov-${GCC})
210
198
- |
211
- set -o errexit
212
199
if [[ "${TRAVIS_TAG}" ]]; then
213
200
if [[ "v${TRAVIS_TAG}" != "v$(sed -n '/[0-9]\{1,\}\(\.[0-9]\{1,\}\)\{1,\}/{s/^\([^.]*\)\([0-9]\{1,\}\(\.[0-9]\{1,\}\)\{1,\}\)\(.*\)/\2/p;q;}' .VERSION)" ]]; then
214
201
echo "ERROR: You are trying to tag a new release but have a version missmatch in \`.VERSION\`"
215
202
false # throw an error
216
203
fi
217
204
fi
218
- set +o errexit
219
-
220
- after_success :
221
- - find . -name '*.gcno' -print
222
- - gcov-${GCC} --version
223
- - bash <(curl -s https://codecov.io/bash) -x $(type -P gcov-${GCC})
224
205
225
206
# before_deploy:
226
207
# - git archive -v --prefix "OpenCoarrays-${TRAVIS_TAG}/" -o "OpenCoarrays-${TRAVIS_TAG}.tar.gz" ${TRAVIS_TAG}
@@ -233,7 +214,6 @@ after_success:
233
214
# sha256sum "OpenCoarrays-${TRAVIS_TAG}.tar.gz" >> "opencoarrays-${TRAVIS_TAG}-SHA256.txt
234
215
# fi
235
216
# - |
236
- # set -o errexit
237
217
# openssl aes-256-cbc -K ${encrypted_ef4535c39461_key} -iv ${encrypted_ef4535c39461_iv} -in subkey-328B3A0E-secret.asc.enc -out ./subkey-328B3A0E-secret.asc -d
238
218
# gpg --allow-secret-key-import --import ./subkey-328B3A0E-secret.asc && rm subkey-328B3A0E-secret.asc
239
219
# rm subkey-328B3A0E-secret.* || true
@@ -252,7 +232,6 @@ after_success:
252
232
# --comment 'verify with:' \
253
233
# --comment '`gpg --verify opencoarrays-'"${TRAVIS_TAG}"'-SHA256.txt.asc`' \
254
234
# "opencoarrays-${TRAVIS_TAG}-SHA256.txt"
255
- # set +o errexit
256
235
257
236
# deploy:
258
237
# provider: releases
0 commit comments