diff options
author | Teodor Mircea Ionita <teodor@mariadb.org> | 2018-06-29 11:17:28 +0300 |
---|---|---|
committer | Vicențiu-Marian Ciorbaru <cvicentiu@gmail.com> | 2018-06-29 13:57:36 +0300 |
commit | 7b6e8672889cf3eb06138ec0a3fe53049310d918 (patch) | |
tree | 8e8771bcd6bd8bda6d6c74430691357961408539 /.travis.compiler.sh | |
parent | 1d5220ae23f96a2d4b20e627dc5338525bfede84 (diff) | |
download | mariadb-git-7b6e8672889cf3eb06138ec0a3fe53049310d918.tar.gz |
MDEV-16213: Further improvements to the Travis config
* Exclude some storage engines from Travis to conserve
build time and disk usage per job. Exluded:
TOKUDB MROONGA SPIDER OQGRAPH PERFSCHEMA SPHINX
* Increase travis_wait from default 20m to 30 for MTR
* Use travis_wait for long running MTR command (wait
30m instead of default 20m)
* Increase testcase-timeout to 20m for OSX, 2m for Linux
* Set ccache size only on Linux, adjust timeout again
* Increase cache push timeout to 5 mins
* Remove AWS defines, not needed
* Remove commented out ASAN rules, has been disabled
previously since it has a significant impact on job
runtime, should be used more in buildbot instead
* Misc cleanup and fixes
Diffstat (limited to '.travis.compiler.sh')
-rwxr-xr-x | .travis.compiler.sh | 62 |
1 files changed, 34 insertions, 28 deletions
diff --git a/.travis.compiler.sh b/.travis.compiler.sh index de3b0d82823..3bc55ef7d20 100755 --- a/.travis.compiler.sh +++ b/.travis.compiler.sh @@ -1,45 +1,51 @@ #!/bin/sh set -v -x + +# Exclude modules from build not directly affecting the current +# test suites found in $MYSQL_TEST_SUITES, to conserve job time +# as well as disk usage + +function exclude_modules() { +# excludes for all +CMAKE_OPT="${CMAKE_OPT} -DPLUGIN_TOKUDB=NO -DPLUGIN_MROONGA=NO -DPLUGIN_SPIDER=NO -DPLUGIN_OQGRAPH=NO -DPLUGIN_PERFSCHEMA=NO -DPLUGIN_SPHINX=NO" +# exclude storage engines not being tested in current job +if [[ ! "${MYSQL_TEST_SUITES}" =~ "archive" ]]; then +CMAKE_OPT="${CMAKE_OPT} -DPLUGIN_ARCHIVE=NO" +fi +if [[ ! "${MYSQL_TEST_SUITES}" =~ "rocksdb" ]]; then +CMAKE_OPT="${CMAKE_OPT} -DPLUGIN_ROCKSDB=NO" +fi +} + if [[ "${TRAVIS_OS_NAME}" == 'linux' ]]; then + TEST_CASE_TIMEOUT=2 + exclude_modules; + if which ccache ; then + CMAKE_OPT="${CMAKE_OPT} -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache" + ccache --max-size=1200M + fi if [[ "${CXX}" == 'clang++' ]]; then - CMAKE_OPT="-DWITHOUT_TOKUDB_STORAGE_ENGINE=ON -DWITHOUT_MROONGA_STORAGE_ENGINE=ON" - #CMAKE_OPT="${CMAKE_OPT} -DWITH_ASAN=ON" - if which ccache ; then - CMAKE_OPT="${CMAKE_OPT} -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache" - fi export CXX CC=${CXX/++/} elif [[ "${CXX}" == 'g++' ]]; then - CMAKE_OPT="" - if [[ "${MYSQL_TEST_SUITES}" == 'rpl' ]]; then - CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_TOKUDB_STORAGE_ENGINE=TRUE" - CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_MROONGA_STORAGE_ENGINE=TRUE" - fi export CXX=g++-${CC_VERSION} export CC=gcc-${CC_VERSION} fi if [[ ${CC_VERSION} == 6 ]]; then - wget http://mirrors.kernel.org/ubuntu/pool/universe/p/percona-xtradb-cluster-galera-2.x/percona-xtradb-cluster-galera-2.x_165-0ubuntu1_amd64.deb ; - ar vx percona-xtradb-cluster-galera-2.x_165-0ubuntu1_amd64.deb - tar -xJvf data.tar.xz - export WSREP_PROVIDER=$PWD/usr/lib/libgalera_smm.so - MYSQL_TEST_SUITES="${MYSQL_TEST_SUITES},wsrep" - #elif [[ ${CC_VERSION} != 5 ]]; then - #CMAKE_OPT="${CMAKE_OPT} -DWITH_ASAN=ON" + wget http://mirrors.kernel.org/ubuntu/pool/universe/p/percona-xtradb-cluster-galera-2.x/percona-xtradb-cluster-galera-2.x_165-0ubuntu1_amd64.deb ; + ar vx percona-xtradb-cluster-galera-2.x_165-0ubuntu1_amd64.deb + tar -xJvf data.tar.xz + export WSREP_PROVIDER=$PWD/usr/lib/libgalera_smm.so + MYSQL_TEST_SUITES="${MYSQL_TEST_SUITES},wsrep" fi -else - # osx_image based tests - CMAKE_OPT="-DOPENSSL_ROOT_DIR=/usr/local/opt/openssl" - #CMAKE_OPT="${CMAKE_OPT} -DWITH_ASAN=ON" +fi + +if [[ "${TRAVIS_OS_NAME}" == 'osx' ]]; then + TEST_CASE_TIMEOUT=20 + exclude_modules; + CMAKE_OPT="${CMAKE_OPT} -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl" if which ccache ; then CMAKE_OPT="${CMAKE_OPT} -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache" fi - if [[ "${MYSQL_TEST_SUITES}" == 'rpl' ]]; then - CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_TOKUDB_STORAGE_ENGINE=ON" - fi - CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_MROONGA_STORAGE_ENGINE=ON" - if [[ "${TYPE}" == "Debug" ]]; then - CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_TOKUDB_STORAGE_ENGINE=ON" - fi fi set +v +x |