Skip to content

Commit 70038c9

Browse files
authored
Merge pull request #471 from sourceryinstitute/travis-fix
Fix "brew install gcc" failures on Travis macOS
2 parents 3eba3b6 + aca08d6 commit 70038c9

File tree

1 file changed

+30
-51
lines changed

1 file changed

+30
-51
lines changed

.travis.yml

Lines changed: 30 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -26,83 +26,76 @@ matrix:
2626
- BUILD_TYPE="InstallScript"
2727
OSX_PACKAGES="gcc@6"
2828
GCC=6
29-
- os: osx
30-
env:
31-
- OSX_PACKAGES="gcc cmake"
32-
GCC=7
33-
OPENCOARRAYS_DEVELOPER=ON
3429
- &ubuntu
3530
os: linux
3631
sudo: false
3732
dist: trusty
3833
env:
3934
- GCC=6
4035
cache:
41-
apt: false
36+
apt: true
4237
directories:
4338
- "$CACHE"
4439
addons:
4540
apt:
46-
sources:
41+
sources: &linuxsrcs
4742
- ubuntu-toolchain-r-test
4843
- george-edison55-precise-backports
49-
packages:
44+
packages: &gcc6pkgs
5045
- gcc-6
5146
- gfortran-6
5247
- g++-6
5348
- binutils
5449
- cmake-data
5550
- cmake
56-
# - shellcheck
5751
-
5852
<<: *ubuntu
5953
env:
6054
- GCC=7
6155
addons:
6256
apt:
63-
sources:
64-
- ubuntu-toolchain-r-test
65-
- george-edison55-precise-backports
66-
packages:
57+
sources: *linuxsrcs
58+
packages: &gcc7pkgs
6759
- gcc-7
6860
- gfortran-7
6961
- g++-7
7062
- binutils
7163
- cmake-data
7264
- cmake
73-
# - shellcheck
7465
-
7566
<<: *ubuntu
7667
env:
7768
- BUILD_TYPE="InstallScript"
7869
GCC=6
79-
cache: false
8070
addons:
8171
apt:
82-
sources:
83-
- ubuntu-toolchain-r-test
72+
sources: *linuxsrcs
8473
packages:
8574
- gcc-6
8675
- gfortran-6
8776
- g++-6
88-
# - shellcheck
89-
allow_failures:
90-
- os: osx
77+
- &linux_allowed_failure
78+
<<: *ubuntu
9179
env:
92-
- OSX_PACKAGES="gcc cmake"
93-
GCC=7
80+
- GCC=7
9481
OPENCOARRAYS_DEVELOPER=ON
82+
addons:
83+
apt:
84+
sources: *linuxsrcs
85+
packages: *gcc7pkgs
86+
87+
allow_failures:
88+
- *linux_allowed_failure
9589

9690
before_install:
9791
- export FC=gfortran-${GCC}
9892
- export CC=gcc-${GCC}
9993
- export CXX=g++-${GCC}
10094
- export MPICH_BOT_URL_HEAD=MPICH_GCC${GCC}_BOT_URL_HEAD
10195
- |
102-
set -o errexit
10396
if [[ (-n ${TRAVIS_TAG}) && (${TRAVIS_OS_NAME} == osx) ]] && ${TRAVIS_SECURE_ENV_VARS} ; then
10497
brew update > /dev/null
105-
[[ "$(brew ls --versions gpg2)" ]] || brew install gpg2
98+
brew ls --versions gpg2 >/dev/null || brew install gpg2
10699
brew outdated gpg2 || brew upgrade gpg2
107100
type -P openssl || brew install openssl
108101
fi
@@ -116,9 +109,7 @@ before_install:
116109
curl https://izaakbeekman.com/izaak.pubkey.txt | gpg --import
117110
git tag -v ${TRAVIS_TAG}
118111
fi
119-
set +o errexit
120112
- |
121-
set -o errexit
122113
if [[ (-n ${TRAVIS}) && (${TRAVIS_OS_NAME} == osx) ]]; then
123114
export PATH="${PATH}:${HOME}/Library/Python/2.7/bin"
124115
else
@@ -129,18 +120,16 @@ before_install:
129120
${CC} --version
130121
${CXX} --version
131122
fi
132-
set +o errexit
133123
134124
install:
135125
- |
136-
set -o errexit
137126
if [[ (-n ${TRAVIS}) && (${TRAVIS_OS_NAME} == osx) ]]; then
138127
brew update > /dev/null
139128
140-
[[ "$(brew ls --versions shellcheck)" ]] || brew install --force-bottle shellcheck
129+
brew ls --versions shellcheck >/dev/null || brew install --force-bottle shellcheck
141130
brew outdated shellcheck || brew upgrade --force-bottle shellcheck
142131
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}
144133
brew outdated ${pkg} || brew upgrade ${pkg}
145134
done
146135
if [[ ${BUILD_TYPE} == InstallScript ]]; then # uninstall some stuff if present
@@ -150,9 +139,7 @@ install:
150139
else
151140
wget "${!MPICH_BOT_URL_HEAD}${MPICH_BOT_URL_TAIL}"
152141
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
156143
fi
157144
mpif90 --version || mpif90 -show || true
158145
mpicc --version || mpicc -show || true
@@ -181,46 +168,40 @@ install:
181168
mpicc --version
182169
cmake --version
183170
fi
184-
set +o errexit
185171
186172
script:
173+
- echo "In Travis-CI 'script' section."
187174
- |
188-
set -o errexit
189175
if [[ ${BUILD_TYPE} == InstallScript ]]; then
190176
./install.sh --yes-to-all -i "${HOME}/opencoarrays" -j 4 -f "$(type -P "${FC}")" -c "$(type -P "${CC}")" -C "$(type -P "${CXX}")"
191177
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}
193179
cd -
194180
else
195-
mkdir cmake-build
181+
mkdir cmake-build || echo "Cannot mkdir cmake-build"
196182
for BUILD_TYPE in ${BUILD_TYPES}; do
197183
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}
202188
make install
203189
make uninstall
204190
cd ..
205191
done
206192
fi
207-
set +o errexit
208193
209194
after_script:
195+
- find . -name '*.gcno' -print
196+
- gcov-${GCC} --version
197+
- bash <(curl -s https://codecov.io/bash) -x $(type -P gcov-${GCC})
210198
- |
211-
set -o errexit
212199
if [[ "${TRAVIS_TAG}" ]]; then
213200
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
214201
echo "ERROR: You are trying to tag a new release but have a version missmatch in \`.VERSION\`"
215202
false # throw an error
216203
fi
217204
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})
224205
225206
# before_deploy:
226207
# - git archive -v --prefix "OpenCoarrays-${TRAVIS_TAG}/" -o "OpenCoarrays-${TRAVIS_TAG}.tar.gz" ${TRAVIS_TAG}
@@ -233,7 +214,6 @@ after_success:
233214
# sha256sum "OpenCoarrays-${TRAVIS_TAG}.tar.gz" >> "opencoarrays-${TRAVIS_TAG}-SHA256.txt
234215
# fi
235216
# - |
236-
# set -o errexit
237217
# openssl aes-256-cbc -K ${encrypted_ef4535c39461_key} -iv ${encrypted_ef4535c39461_iv} -in subkey-328B3A0E-secret.asc.enc -out ./subkey-328B3A0E-secret.asc -d
238218
# gpg --allow-secret-key-import --import ./subkey-328B3A0E-secret.asc && rm subkey-328B3A0E-secret.asc
239219
# rm subkey-328B3A0E-secret.* || true
@@ -252,7 +232,6 @@ after_success:
252232
# --comment 'verify with:' \
253233
# --comment '`gpg --verify opencoarrays-'"${TRAVIS_TAG}"'-SHA256.txt.asc`' \
254234
# "opencoarrays-${TRAVIS_TAG}-SHA256.txt"
255-
# set +o errexit
256235

257236
# deploy:
258237
# provider: releases

0 commit comments

Comments
 (0)