initial travis-ci support
PATCH 1/1 initial travis-ci support
--- .travis.yml | 85 ++++++++++++++++++++++++++++++++++++++++++ .travis/build-mbedtls-linux.sh | 10 +++++ .travis/build-mbedtls-osx.sh | 9 +++++ .travis/build-openssl-linux.sh | 12 ++++++ .travis/build-openssl-osx.sh | 11 ++++++ 5 files changed, 127 insertions(+) create mode 100644 .travis.yml create mode 100755 .travis/build-mbedtls-linux.sh create mode 100755 .travis/build-mbedtls-osx.sh create mode 100755 .travis/build-openssl-linux.sh create mode 100755 .travis/build-openssl-osx.sh
.travis.yml new file +85 -0
@@ -0,0 +1,85 @@ +sudo: required +dist: trusty + +os: linux + +language: c + +compiler: + - gcc + +env: + global: + - JOBS=3 + - MBEDTLS_VERSION=2.2.1 + - MBEDTLS_PREFIX=~/opt/mbedtls + - MBEDTLS_LIBS="-L$MBEDTLS_PREFIX/lib -lmbedtls -lmbedx509 -lmbedcrypto" + - MBEDTLS_CFLAGS="-I$MBEDTLS_PREFIX/include" + - OPENSSL_VERSION=1.0.1t + - OPENSSL_PREFIX=~/opt/openssl + - OPENSSL_LIB=$OPENSSL_PREFIX/lib + - OPENSSL_INC=$OPENSSL_PREFIX/include + - OPENSSL_CFLAGS="-I$OPENSSL_PREFIX/include" + - OPENSSL_LIBS="-L$OPENSSL_PREFIX/lib -lssl -lcrypto" + +matrix: + include: + - env: CONFIG="--with-crypto-library=openssl" + compiler: gcc + - env: CONFIG="--with-crypto-library=openssl" + compiler: clang + - env: CONFIG="--with-crypto-library=mbedtls" + compiler: gcc + - env: CONFIG="--with-crypto-library=mbedtls" + compiler: clang + - env: CONFIG="--with-crypto-library=openssl --disable-crypto" + compiler: clang + - env: CONFIG="--with-crypto-library=openssl --disable-lzo" + compiler: clang + - env: CONFIG="--with-crypto-library=openssl --enable-small" + compiler: clang + - env: CONFIG="--with-crypto-library=openssl" + os: osx + osx_image: xcode7.3 + compiler: clang + - env: CONFIG="--with-crypto-library=mbedtls" + os: osx + osx_image: xcode7.3 + compiler: clang + allow_failures: + - env: CONFIG="--with-crypto-library=openssl --disable-crypto" + compiler: clang + exclude: + - compiler: gcc + +addons: + apt: + packages: + - liblzo2-dev + - libpam0g-dev + - liblz4-dev + - linux-libc-dev + +cache: + apt: true + ccache: true + directories: + - download-cache + +before_install: + - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi + - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install lzo; fi + +install: + - mkdir ~/bin && ln -s $(which ccache) ~/bin/$CC && export PATH=$HOME/bin:$PATH + - if [ ! -d download-cache ]; then mkdir download-cache; fi + - if [[ $CONFIG == *"--with-crypto-library=openssl"* ]]; then .travis/build-openssl-${TRAVIS_OS_NAME}.sh; fi + - if [[ $CONFIG == *"--with-crypto-library=mbedtls"* ]]; then .travis/build-mbedtls-${TRAVIS_OS_NAME}.sh; fi + +script: + - autoreconf -vi + - ./configure $CONFIG || (cat config.log && exit 1) + - make -j$JOBS + - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ldd src/openvpn/openvpn; fi + - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then otool -L src/openvpn/openvpn; fi + - make check
.travis/build-mbedtls-linux.sh new file +10 -0
@@ -0,0 +1,10 @@ +#!/bin/sh + +if [ ! -f download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz ]; then + wget -O download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz https://tls.mbed.org/download/mbedtls-${MBEDTLS_VERSION}-apache.tgz; +fi + +tar zxf download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz +cd mbedtls-${MBEDTLS_VERSION} && make > build.log 2>&1 || (cat build.log && exit 1) +make install DESTDIR=$MBEDTLS_PREFIX && cd .. +
.travis/build-mbedtls-osx.sh new file +9 -0
@@ -0,0 +1,9 @@ +#!/bin/sh + +if [ ! -f download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz ]; then + wget -O download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz https://tls.mbed.org/download/mbedtls-${MBEDTLS_VERSION}-apache.tgz; +fi + +tar zxf download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz +cd mbedtls-${MBEDTLS_VERSION} && make > build.log 2>&1 || (cat build.log && exit 1) +make install DESTDIR=$MBEDTLS_PREFIX && cd ..
.travis/build-openssl-linux.sh new file +12 -0
@@ -0,0 +1,12 @@ +#!/bin/sh + +if [ ! -f download-cache/openssl-${OPENSSL_VERSION}.tar.gz ]; then + wget -O download-cache/openssl-${OPENSSL_VERSION}.tar.gz https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz; +fi + +tar zxf download-cache/openssl-${OPENSSL_VERSION}.tar.gz +cd openssl-${OPENSSL_VERSION}/ +./config shared --prefix=$OPENSSL_PREFIX -DPURIFY > build.log 2>&1 || (cat build.log && exit 1) +make > build.log 2>&1 || (cat build.log && exit 1) +make install_sw > build.log 2>&1 || (cat build.log && exit 1) +cd ..
.travis/build-openssl-osx.sh new file +11 -0
@@ -0,0 +1,11 @@ +#!/bin/sh + +if [ ! -f download-cache/openssl-${OPENSSL_VERSION}.tar.gz ]; then + wget -O download-cache/openssl-${OPENSSL_VERSION}.tar.gz https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz; +fi + +tar zxf download-cache/openssl-${OPENSSL_VERSION}.tar.gz +cd openssl-${OPENSSL_VERSION}/ +./Configure darwin64-x86_64-cc shared --prefix=$OPENSSL_PREFIX -DPURIFY > build.log 2>&1 || (cat build.log && exit 1) +make depend install > build.log 2>&1 || (cat build.log && exit 1) +cd ..
Signature · 1 line
2.5.5
ACK. Your patch has been applied to the master branch
(Talking with Steffan, we've decided to squash both patches into just one, because it seems to be somewhat silly to add a file just to completely rewrite in the next patch again)
commit 368991264d82f038bde30a67910ac6c7681a4ba9
Author: Ilya Shipitsin Date: Thu Sep 15 16:26:48 2016 +0500
initial travis-ci support
Acked-by: Gert Doering <[email protected]...>
Message-Id: <[email protected]...>
URL: http://www.mail-archive.com/search?l=mid&[email protected]...
Signed-off-by: Steffan Karger <[email protected]...>
Acked-by: Gert Doering <[email protected]...>
Message-Id: <[email protected]...>
URL: http://www.mail-archive.com/search?l=mid&[email protected]...
Signed-off-by: Gert Doering <[email protected]...>--
kind regards,
Gert Doering
thanks!
I'm going to unleash "allowed as failure" tests now.
2016-09-17 14:19 GMT+05:00 Gert Doering <[email protected]...>:
Quoted 30 lines
ACK. Your patch has been applied to the master branch
(Talking with Steffan, we've decided to squash both patches into just one, because it seems to be somewhat silly to add a file just to completely rewrite in the next patch again)
commit
368991264d82f038bde30a67910ac6c7681a4ba9Author: Ilya Shipitsin Date: Thu Sep 15 16:26:48 2016 +0500initial travis-ci support Acked-by: Gert Doering <[email protected]...> Message-Id: <[email protected]...> URL: http://www.mail-archive.com/search?l=mid&q=1473938808- [email protected]... Signed-off-by: Steffan Karger <[email protected]...> Acked-by: Gert Doering <[email protected]...> Message-Id: <[email protected]...> URL: http://www.mail-archive.com/search?l=mid&q=1473938818- [email protected]... Signed-off-by: Gert Doering <[email protected]...>--
kind regards,Gert Doering
PATCH 1/1 travis-ci refactor by Steffan Karger
From: Steffan Karger <[email protected]...>
--- .travis.yml | 63 ++++++++++++++++++++------------------ .travis/build-deps.sh | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 119 insertions(+), 29 deletions(-) create mode 100755 .travis/build-deps.sh
.travis.yml +34 -29
@@ -11,43 +11,49 @@ compiler: env: global: - JOBS=3 - - MBEDTLS_VERSION=2.2.1 - - MBEDTLS_PREFIX=~/opt/mbedtls - - MBEDTLS_LIBS="-L$MBEDTLS_PREFIX/lib -lmbedtls -lmbedx509 -lmbedcrypto" - - MBEDTLS_CFLAGS="-I$MBEDTLS_PREFIX/include" - - OPENSSL_VERSION=1.0.1t - - OPENSSL_PREFIX=~/opt/openssl - - OPENSSL_LIB=$OPENSSL_PREFIX/lib - - OPENSSL_INC=$OPENSSL_PREFIX/include - - OPENSSL_CFLAGS="-I$OPENSSL_PREFIX/include" - - OPENSSL_LIBS="-L$OPENSSL_PREFIX/lib -lssl -lcrypto" + - PREFIX="${HOME}/opt" + - MBEDTLS_VERSION="2.2.1" + - MBEDTLS_CFLAGS="-I${PREFIX}/include" + - MBEDTLS_LIBS="-L${PREFIX}/lib -lmbedtls -lmbedx509 -lmbedcrypto" + - OPENSSL_VERSION="1.0.1t" + - OPENSSL_CFLAGS="-I${PREFIX}/include" + - OPENSSL_LIBS="-L${PREFIX}/lib -lssl -lcrypto" + - LD_LIBRARY_PATH="${PREFIX}/lib:${LD_LIBRARY_PATH}" matrix: include: - - env: CONFIG="--with-crypto-library=openssl" + - env: SSLLIB="openssl" + os: linux compiler: gcc - - env: CONFIG="--with-crypto-library=openssl" + - env: SSLLIB="openssl" + os: linux compiler: clang - - env: CONFIG="--with-crypto-library=mbedtls" + - env: SSLLIB="mbedtls" + os: linux compiler: gcc - - env: CONFIG="--with-crypto-library=mbedtls" + - env: SSLLIB="mbedtls" + os: linux compiler: clang - - env: CONFIG="--with-crypto-library=openssl --disable-crypto" + - env: SSLLIB="openssl" EXTRA_CONFIG="--disable-crypto" + os: linux compiler: clang - - env: CONFIG="--with-crypto-library=openssl --disable-lzo" + - env: SSLLIB="openssl" EXTRA_CONFIG="--disable-lzo" + os: linux compiler: clang - - env: CONFIG="--with-crypto-library=openssl --enable-small" + - env: SSLLIB="openssl" EXTRA_CONFIG="--enable-small" + os: linux compiler: clang - - env: CONFIG="--with-crypto-library=openssl" + - env: SSLLIB="openssl" os: osx osx_image: xcode7.3 compiler: clang - - env: CONFIG="--with-crypto-library=mbedtls" + - env: SSLLIB="mbedtls" os: osx osx_image: xcode7.3 compiler: clang allow_failures: - - env: CONFIG="--with-crypto-library=openssl --disable-crypto" + - env: SSLLIB="openssl" EXTRA_CONFIG="--disable-crypto" + os: linux compiler: clang exclude: - compiler: gcc
@@ -65,21 +71,20 @@ cache: ccache: true directories: - download-cache + - ${HOME}/opt before_install: - - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi - - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install lzo; fi + - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then brew update ; fi + - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then brew install lzo; fi install: - - mkdir ~/bin && ln -s $(which ccache) ~/bin/$CC && export PATH=$HOME/bin:$PATH - - if [ ! -d download-cache ]; then mkdir download-cache; fi - - if [[ $CONFIG == *"--with-crypto-library=openssl"* ]]; then .travis/build-openssl-${TRAVIS_OS_NAME}.sh; fi - - if [[ $CONFIG == *"--with-crypto-library=mbedtls"* ]]; then .travis/build-mbedtls-${TRAVIS_OS_NAME}.sh; fi + - .travis/build-deps.sh > build-deps.log 2>&1 || (cat build-deps.log && exit 1) script: - autoreconf -vi - - ./configure $CONFIG || (cat config.log && exit 1) + - ./configure --with-crypto-library="${SSLLIB}" ${EXTRA_CONFIG} || (cat config.log && exit 1) - make -j$JOBS - - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ldd src/openvpn/openvpn; fi - - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then otool -L src/openvpn/openvpn; fi + - src/openvpn/openvpn --version || true + - if [ "${TRAVIS_OS_NAME}" = "linux" ]; then ldd src/openvpn/openvpn; fi + - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then otool -L src/openvpn/openvpn; fi - make check
.travis/build-deps.sh new file +85 -0
85 lines not on this page · raw message
Signature · 1 line
2.5.5