2019-06-17 19:15:58 +02:00
|
|
|
dist: xenial
|
2014-05-11 06:18:23 +02:00
|
|
|
language: cpp
|
2016-04-13 00:05:56 +02:00
|
|
|
os:
|
2016-06-30 23:34:50 +02:00
|
|
|
- linux
|
2016-04-13 00:05:56 +02:00
|
|
|
- osx
|
2017-06-06 00:34:40 +02:00
|
|
|
compiler:
|
|
|
|
- clang
|
|
|
|
- gcc
|
2017-06-01 19:11:23 +02:00
|
|
|
osx_image: xcode8.3
|
2016-11-16 19:36:49 +01:00
|
|
|
jdk:
|
2019-06-17 19:15:58 +02:00
|
|
|
- openjdk7
|
2017-01-09 22:45:04 +01:00
|
|
|
cache:
|
|
|
|
- ccache
|
|
|
|
- apt
|
2015-09-10 02:55:33 +02:00
|
|
|
|
2016-04-13 00:05:56 +02:00
|
|
|
addons:
|
2018-07-13 19:47:49 +02:00
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- curl
|
|
|
|
- g++-8
|
|
|
|
- libbz2-dev
|
|
|
|
- libgflags-dev
|
|
|
|
- libsnappy-dev
|
|
|
|
- mingw-w64
|
|
|
|
- zlib1g-dev
|
2016-04-13 00:05:56 +02:00
|
|
|
env:
|
2017-05-30 19:32:16 +02:00
|
|
|
- TEST_GROUP=platform_dependent # 16-18 minutes
|
|
|
|
- TEST_GROUP=1 # 33-35 minutes
|
2018-03-14 02:47:38 +01:00
|
|
|
- TEST_GROUP=2 # 18-20 minutes
|
|
|
|
- TEST_GROUP=3 # 20-22 minutes
|
|
|
|
- TEST_GROUP=4 # 12-14 minutes
|
2016-04-13 23:22:29 +02:00
|
|
|
# Run java tests
|
2017-05-30 19:32:16 +02:00
|
|
|
- JOB_NAME=java_test # 4-11 minutes
|
2016-04-13 23:22:29 +02:00
|
|
|
# Build ROCKSDB_LITE
|
2017-05-30 19:32:16 +02:00
|
|
|
- JOB_NAME=lite_build # 3-4 minutes
|
2017-04-07 19:36:09 +02:00
|
|
|
# Build examples
|
2017-05-30 19:32:16 +02:00
|
|
|
- JOB_NAME=examples # 5-7 minutes
|
|
|
|
- JOB_NAME=cmake # 3-5 minutes
|
2018-07-13 19:47:49 +02:00
|
|
|
- JOB_NAME=cmake-gcc8 # 3-5 minutes
|
2017-05-30 19:32:16 +02:00
|
|
|
- JOB_NAME=cmake-mingw # 3 minutes
|
2015-09-10 03:53:55 +02:00
|
|
|
|
2017-01-09 22:45:04 +01:00
|
|
|
matrix:
|
|
|
|
exclude:
|
2017-02-27 20:04:27 +01:00
|
|
|
- os: osx
|
|
|
|
env: TEST_GROUP=1
|
|
|
|
- os: osx
|
|
|
|
env: TEST_GROUP=2
|
2017-08-31 18:27:14 +02:00
|
|
|
- os: osx
|
|
|
|
env: TEST_GROUP=3
|
2018-03-14 02:47:38 +01:00
|
|
|
- os: osx
|
|
|
|
env: TEST_GROUP=4
|
2018-07-13 19:47:49 +02:00
|
|
|
- os: osx
|
|
|
|
env: JOB_NAME=cmake-gcc8
|
2017-05-06 01:09:24 +02:00
|
|
|
- os : osx
|
|
|
|
env: JOB_NAME=cmake-mingw
|
2017-06-06 00:34:40 +02:00
|
|
|
- os : linux
|
|
|
|
compiler: clang
|
|
|
|
- os : osx
|
|
|
|
compiler: gcc
|
2017-05-30 19:32:16 +02:00
|
|
|
|
|
|
|
# https://docs.travis-ci.com/user/caching/#ccache-cache
|
|
|
|
install:
|
|
|
|
- if [ "${TRAVIS_OS_NAME}" == osx ]; then
|
2018-06-16 01:42:35 +02:00
|
|
|
brew install ccache zstd lz4 snappy xz;
|
2017-05-30 19:32:16 +02:00
|
|
|
PATH=$PATH:/usr/local/opt/ccache/libexec;
|
|
|
|
fi
|
2018-07-13 19:47:49 +02:00
|
|
|
- if [ "${JOB_NAME}" == cmake-gcc8 ]; then
|
|
|
|
CC=gcc-8 && CXX=g++-8;
|
|
|
|
fi
|
2017-11-28 21:13:20 +01:00
|
|
|
- if [[ "${JOB_NAME}" == cmake* ]] && [ "${TRAVIS_OS_NAME}" == linux ]; then
|
2019-06-17 19:15:58 +02:00
|
|
|
mkdir cmake-dist && curl -sfSL https://github.com/Kitware/CMake/releases/download/v3.14.5/cmake-3.14.5-Linux-x86_64.tar.gz | tar --strip-components=1 -C cmake-dist -xz && export PATH=$PWD/cmake-dist/bin:$PATH;
|
|
|
|
fi
|
|
|
|
- if [[ "${JOB_NAME}" == java_test ]]; then
|
|
|
|
java -version && echo "JAVA_HOME=${JAVA_HOME}";
|
2017-11-28 21:13:20 +01:00
|
|
|
fi
|
2016-04-13 23:22:29 +02:00
|
|
|
|
2015-09-10 03:53:55 +02:00
|
|
|
before_script:
|
2017-05-30 19:32:16 +02:00
|
|
|
# Increase the maximum number of open file descriptors, since some tests use
|
|
|
|
# more FDs than the default limit.
|
|
|
|
- ulimit -n 8192
|
2015-09-10 02:55:33 +02:00
|
|
|
|
2015-09-18 19:15:02 +02:00
|
|
|
script:
|
2017-01-09 22:45:04 +01:00
|
|
|
- ${CXX} --version
|
2017-10-11 07:13:39 +02:00
|
|
|
- if [ `command -v ccache` ]; then ccache -C; fi
|
2018-07-13 19:47:49 +02:00
|
|
|
- case $TEST_GROUP in
|
|
|
|
platform_dependent)
|
|
|
|
OPT=-DTRAVIS V=1 ROCKSDBTESTS_END=db_block_cache_test make -j4 all_but_some_tests check_some
|
|
|
|
;;
|
|
|
|
1)
|
|
|
|
OPT=-DTRAVIS V=1 ROCKSDBTESTS_START=db_block_cache_test ROCKSDBTESTS_END=full_filter_block_test make -j4 check_some
|
|
|
|
;;
|
|
|
|
2)
|
2018-10-19 23:43:55 +02:00
|
|
|
OPT=-DTRAVIS V=1 make -j4 tools && OPT=-DTRAVIS V=1 ROCKSDBTESTS_START=full_filter_block_test ROCKSDBTESTS_END=write_batch_with_index_test make -j4 check_some
|
2018-07-13 19:47:49 +02:00
|
|
|
;;
|
|
|
|
3)
|
|
|
|
OPT=-DTRAVIS V=1 ROCKSDBTESTS_START=write_batch_with_index_test ROCKSDBTESTS_END=write_prepared_transaction_test make -j4 check_some
|
|
|
|
;;
|
|
|
|
4)
|
|
|
|
OPT=-DTRAVIS V=1 ROCKSDBTESTS_START=write_prepared_transaction_test make -j4 check_some
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
- case $JOB_NAME in
|
|
|
|
java_test)
|
2019-06-17 19:15:58 +02:00
|
|
|
OPT=-DTRAVIS V=1 make rocksdbjava jtest
|
2018-07-13 19:47:49 +02:00
|
|
|
;;
|
|
|
|
lite_build)
|
|
|
|
OPT='-DTRAVIS -DROCKSDB_LITE' V=1 make -j4 static_lib tools
|
|
|
|
;;
|
|
|
|
examples)
|
|
|
|
OPT=-DTRAVIS V=1 make -j4 static_lib && cd examples && make -j4
|
|
|
|
;;
|
|
|
|
cmake-mingw)
|
2019-06-17 19:15:58 +02:00
|
|
|
sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix;
|
2018-07-13 19:47:49 +02:00
|
|
|
mkdir build && cd build && cmake -DJNI=1 .. -DCMAKE_C_COMPILER=x86_64-w64-mingw32-gcc -DCMAKE_CXX_COMPILER=x86_64-w64-mingw32-g++ -DCMAKE_SYSTEM_NAME=Windows && make -j4 rocksdb rocksdbjni
|
|
|
|
;;
|
|
|
|
cmake*)
|
|
|
|
mkdir build && cd build && cmake -DJNI=1 .. -DCMAKE_BUILD_TYPE=Release && make -j4 rocksdb rocksdbjni
|
|
|
|
;;
|
|
|
|
esac
|
2014-05-15 01:08:02 +02:00
|
|
|
notifications:
|
2015-09-10 05:30:00 +02:00
|
|
|
email:
|
|
|
|
- leveldb@fb.com
|
2015-09-10 02:55:33 +02:00
|
|
|
webhooks:
|
|
|
|
- https://buildtimetrend.herokuapp.com/travis
|