ci: update .travis.yml and jenkins scripts

Change-Id: I315196cb9d8e96f46e706a78c2d15d856a0a8d8b
This commit is contained in:
Davide Pesavento committed 2019-03-19 14:42:15 -04:00
1 parent 9ecbdc95c5
commit 0b0eddd60c
8 files changed
+81 -43

No files matched your search

+1 -1
View File
@@ -7,7 +7,7 @@ source "$JDIR"/util.sh
set -x
if has OSX $NODE_LABELS; then
FORMULAE=(boost pkg-config openssl)
FORMULAE=(boost openssl pkg-config)
brew update
if [[ -n $TRAVIS ]]; then
# travis images come with a large number of brew packages
+3 -3
View File
@@ -37,14 +37,14 @@ fi
sudo rm -f /usr/local/bin/ndnsec*
sudo rm -fr /usr/local/include/ndn-cxx
sudo rm -f /usr/local/lib/libndn-cxx*
sudo rm -f /usr/local/lib/pkgconfig/libndn-cxx.pc
sudo rm -f /usr/local/lib{,64}/libndn-cxx*
sudo rm -f /usr/local/lib{,64}/pkgconfig/libndn-cxx.pc
pushd ndn-cxx >/dev/null
./waf configure --color=yes --enable-shared --disable-static --without-osx-keychain
./waf build --color=yes -j${WAF_JOBS:-1}
sudo env "PATH=$PATH" ./waf install --color=yes
sudo_preserve_env PATH -- ./waf install --color=yes
popd >/dev/null
popd >/dev/null
+3 -3
View File
@@ -34,8 +34,8 @@ else
fi
sudo rm -fr /usr/local/include/ChronoSync
sudo rm -f /usr/local/lib/libChronoSync*
sudo rm -f /usr/local/lib/pkgconfig/ChronoSync*
sudo rm -f /usr/local/lib{,64}/libChronoSync*
sudo rm -f /usr/local/lib{,64}/pkgconfig/ChronoSync.pc
pushd ChronoSync >/dev/null
@@ -45,7 +45,7 @@ fi
./waf configure --color=yes
./waf build --color=yes -j${WAF_JOBS:-1}
sudo env "PATH=$PATH" ./waf install --color=yes
sudo_preserve_env PATH -- ./waf install --color=yes
popd >/dev/null
popd >/dev/null
+3 -3
View File
@@ -34,8 +34,8 @@ else
fi
sudo rm -fr /usr/local/include/PSync
sudo rm -f /usr/local/lib/libPSync*
sudo rm -f /usr/local/lib/pkgconfig/PSync*
sudo rm -f /usr/local/lib{,64}/libPSync*
sudo rm -f /usr/local/lib{,64}/pkgconfig/PSync.pc
pushd PSync >/dev/null
@@ -45,7 +45,7 @@ fi
./waf configure --color=yes
./waf build --color=yes -j${WAF_JOBS:-1}
sudo env "PATH=$PATH" ./waf install --color=yes
sudo_preserve_env PATH -- ./waf install --color=yes
popd >/dev/null
popd >/dev/null
+4 -4
View File
@@ -17,7 +17,7 @@ elif [[ -z $DISABLE_ASAN ]]; then
fi
# Cleanup
sudo env "PATH=$PATH" ./waf --color=yes distclean
sudo_preserve_env PATH -- ./waf --color=yes distclean
if [[ $JOB_NAME != *"code-coverage" && $JOB_NAME != *"limited-build" ]]; then
# Configure/build in optimized mode with tests
@@ -25,14 +25,14 @@ if [[ $JOB_NAME != *"code-coverage" && $JOB_NAME != *"limited-build" ]]; then
./waf --color=yes build -j${WAF_JOBS:-1}
# Cleanup
sudo env "PATH=$PATH" ./waf --color=yes distclean
sudo_preserve_env PATH -- ./waf --color=yes distclean
# Configure/build in optimized mode without tests
./waf --color=yes configure
./waf --color=yes build -j${WAF_JOBS:-1}
# Cleanup
sudo env "PATH=$PATH" ./waf --color=yes distclean
sudo_preserve_env PATH -- ./waf --color=yes distclean
fi
# Configure/build in debug mode with tests
@@ -42,4 +42,4 @@ fi
# (tests will be run against debug version)
# Install
sudo env "PATH=$PATH" ./waf --color=yes install
sudo_preserve_env PATH -- ./waf --color=yes install
+19 -1
View File
@@ -1,12 +1,27 @@
#!/usr/bin/env bash
set -e
JDIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
source "$JDIR"/util.sh
set -x
# Prepare environment
rm -Rf ~/.ndn
BOOST_VERSION=$(python -c "import sys; sys.path.append('build/c4che'); import _cache; print(_cache.BOOST_VERSION_NUMBER);")
ut_log_args() {
echo --log_level=test_suite
if (( BOOST_VERSION >= 106200 )); then
echo --logger=HRF,test_suite,stdout:XML,all,build/xunit-${1:-report}.xml
else
if [[ -n $XUNIT ]]; then
echo --log_level=all $( (( BOOST_VERSION >= 106000 )) && echo -- ) \
--log_format2=XML --log_sink2=build/xunit-${1:-report}.xml
else
echo --log_level=test_suite
fi
fi
}
ASAN_OPTIONS="color=always"
@@ -19,5 +34,8 @@ ASAN_OPTIONS+=":strict_string_checks=true"
ASAN_OPTIONS+=":strip_path_prefix=${PWD}/"
export ASAN_OPTIONS
export BOOST_TEST_BUILD_INFO=1
export BOOST_TEST_COLOR_OUTPUT=1
# Run unit tests
./build/unit-tests-nlsr $(ut_log_args)
+19
View File
@@ -16,3 +16,22 @@ has() {
set ${saved_xtrace}
return ${ret}
}
sudo_preserve_env() {
local saved_xtrace
[[ $- == *x* ]] && saved_xtrace=-x || saved_xtrace=+x
set +x
local vars=()
while [[ $# -gt 0 ]]; do
local arg=$1
shift
case ${arg} in
--) break ;;
*) vars+=("${arg}=${!arg}") ;;
esac
done
set ${saved_xtrace}
sudo env "${vars[@]}" "$@"
}
+29 -28
View File
@@ -1,6 +1,5 @@
language: cpp
dist: xenial
sudo: required
env:
global:
- JOB_NAME=limited-build
@@ -21,12 +20,6 @@ matrix:
# Linux/clang
# https://apt.llvm.org/
- os: linux
env: COMPILER=clang++-3.5
- os: linux
env: COMPILER=clang++-3.6
- os: linux
env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
- os: linux
env: COMPILER=clang++-3.8
- os: linux
@@ -37,40 +30,43 @@ matrix:
env: COMPILER=clang++-5.0
- os: linux
env: COMPILER=clang++-6.0
# temporarily disable AddressSanitizer on clang-7 and later
# due to https://bugs.llvm.org/show_bug.cgi?id=40808
- os: linux
env: COMPILER=clang++-7
env: COMPILER=clang++-7 DISABLE_ASAN=yes
- os: linux
env: COMPILER=clang++-8 DISABLE_ASAN=yes
- os: linux
env: COMPILER=clang++-9 DISABLE_ASAN=yes
# macOS/clang
# https://docs.travis-ci.com/user/reference/osx/#OS-X-Version
- os: osx
osx_image: xcode7.3
env: OSX_VERSION=10.11
# https://docs.travis-ci.com/user/reference/osx/#macos-version
- os: osx
osx_image: xcode8.3
env: OSX_VERSION=10.12
- os: osx
osx_image: xcode9.3
osx_image: xcode9.2
env: OSX_VERSION=10.12
- os: osx
osx_image: xcode9.4
env: OSX_VERSION=10.13
- os: osx
osx_image: xcode10.1
env: OSX_VERSION=10.13
- os: osx
osx_image: xcode10.2
env: OSX_VERSION=10.14
allow_failures:
- env: COMPILER=g++-6
- env: COMPILER=g++-7
- env: COMPILER=g++-8
- env: COMPILER=clang++-3.5
- env: COMPILER=clang++-3.6
- env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
- env: COMPILER=clang++-3.8
- env: COMPILER=clang++-3.9
- env: COMPILER=clang++-4.0
- env: COMPILER=clang++-5.0
- env: COMPILER=clang++-6.0
- env: COMPILER=clang++-7
- env: COMPILER=clang++-9 DISABLE_ASAN=yes
fast_finish: true
install: |
case ${COMPILER} in
g++-[6789])
g++-5)
;;
g++-*)
travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
travis_retry sudo apt-get -qq update
travis_retry sudo apt-get -qy install "${COMPILER}"
@@ -78,8 +74,8 @@ install: |
clang++-*)
CLANG_VERSION=${COMPILER/clang++}
if [[ ${CLANG_VERSION} != "-3."* ]]; then
wget -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial${CLANG_VERSION/-7} main"
travis_retry wget -nv -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial${CLANG_VERSION/-9} main"
fi
travis_retry sudo apt-get -qq update
travis_retry sudo apt-get -qy install "clang${CLANG_VERSION}"
@@ -89,6 +85,11 @@ install: |
before_script:
- if [[ ${TRAVIS_OS_NAME} == linux ]]; then export NODE_LABELS="Linux Ubuntu Ubuntu-16.04"; fi
- if [[ ${TRAVIS_OS_NAME} == osx ]]; then export NODE_LABELS="OSX OSX-${OSX_VERSION}"; fi
- if [[ ${OSX_VERSION} == 10.12 ]]; then brew update; fi
# workaround for https://github.com/Homebrew/homebrew-core/issues/26358
- if [[ ${OSX_VERSION} == 10.12 ]]; then brew outdated python || brew upgrade python; fi
# workaround for https://github.com/travis-ci/travis-ci/issues/6688
- if [[ ${OSX_VERSION} == 10.12 ]]; then /usr/bin/yes | pip2 uninstall numpy || true; fi
- if [[ -n ${COMPILER} ]]; then export CXX=${COMPILER}; fi
- ${CXX:-c++} --version
- python --version