language: c dist: trusty sudo: false cache: ccache env: global: - ARCH=x64 addons: apt: packages: - python3 - python3-pip - python3-setuptools # required by openssl installer - perl matrix: include: - name: "Linux GCC: +Debian packages" os: linux compiler: gcc env: ADDITIONAL_BUILDS="debian" LINKAGE=std before_script: - ./configure --install-deps --disable-lz4-ext --prefix="$PWD/dest" - name: "RPM packages" os: linux compiler: gcc env: ADDITIONAL_BUILDS="centos" SKIP_MAKE=y - name: "Linux clang: +alpine" os: linux compiler: clang env: ADDITIONAL_BUILDS="alpine" LINKAGE=std before_script: - ./configure --install-deps --disable-lz4-ext --prefix="$PWD/dest" - name: "Linux clang: +static +alpine-static" os: linux compiler: clang env: ADDITIONAL_BUILDS="alpine-static" LINKAGE=static before_script: - ./configure --enable-static --install-deps --source-deps-only --disable-gssapi --disable-lz4-ext --prefix="$PWD/dest" - name: "OSX GCC" os: osx compiler: gcc env: LINKAGE=std before_script: - ./configure --install-deps --disable-lz4-ext --prefix="$PWD/dest" - name: "OSX clang: +static" os: osx # Use an older image to disable syslog and for broader compatibility # with old and new osx versions. osx_image: xcode9.2 compiler: clang env: LINKAGE=static HOMEBREW_NO_AUTO_UPDATE=1 before_script: - ./configure --install-deps --disable-lz4-ext --prefix="$PWD/dest" --enable-static --disable-syslog - name: "Linux GCC: +integration-tests +copyright-check +doc-check" os: linux dist: xenial compiler: gcc env: NO_ARTIFACTS=y RUN_INTEGRATION_TESTS=y COPYRIGHT_CHECK=y DOC_CHECK=y before_script: - wget -O rapidjson-dev.deb https://launchpad.net/ubuntu/+archive/primary/+files/rapidjson-dev_1.1.0+dfsg2-3_all.deb - sudo dpkg -i rapidjson-dev.deb - sudo pip3 install -r tests/requirements.txt - sudo apt update - sudo apt install -y doxygen graphviz gdb - ./configure --install-deps --disable-lz4-ext --prefix="$PWD/dest" - name: "Linux GCC: +devel +code-cov" os: linux dist: bionic compiler: gcc env: NO_ARTIFACTS=y before_script: - ./configure --enable-devel --disable-lz4-ext --prefix="$PWD/dest" - ./packaging/tools/rdutcoverage.sh install: - ccache -s || echo "CCache is not available." - rm -rf artifacts dest - mkdir dest artifacts before_script: script: - if [[ $SKIP_MAKE != y ]]; then make -j2 all examples check && make -j2 -C tests build ; fi - if [[ $SKIP_MAKE != y && $RUN_INTEGRATION_TESTS != y ]]; then make -C tests run_local_quick ; fi - if [[ $SKIP_MAKE != y ]]; then make install ; fi - if [[ -z $NO_ARTIFACTS ]]; then (cd dest && tar cvzf ../artifacts/librdkafka-${CC}.tar.gz .) ; fi - for distro in $ADDITIONAL_BUILDS ; do packaging/tools/distro-build.sh $distro || exit 1 ; done - if [[ $COPYRIGHT_CHECK == y ]]; then make copyright-check ; fi - if [[ $DOC_CHECK == y ]]; then make docs ; fi - if [[ $RUN_INTEGRATION_TESTS == y ]]; then (cd tests && travis_retry ./interactive_broker_version.py -c "make quick" 2.4.0) ; fi - if [[ -f tests/core ]] && (which gdb >/dev/null); then (cd tests && LD_LIBRARY_PATH=../src:../src-cpp gdb ./test-runner core < backtrace.gdb) ; fi deploy: provider: s3 access_key_id: secure: "m8FQrFesK0xSS1wHo2S7cuWkpO7VB91dBmj1XIYLRXZSkbMpKBJATcFcHNbrAp3slEp7wLAnT7CHrQ4ccQi4H68Z7mjEwdq4VKRE+7zqJ/feK8MOFNeSHWLQzgwLUYlRlc9+tzLNwxMuL2ilWgdjKOArsUVHo9LEKNfQ3T6zCJU=" secret_access_key: secure: "GE6O0gk5VRervntCKAmczfBdSOvbr9bouJ15H2rpcOgHi8KTDEjI/NS69eLiRRSHBCARtcRqN4wfgy+/dn7D1VklY8a1rAKu02wGjw+fq7k7GVSSmynR/aF619R4SIABsaAhNCwswXnLHuLlq8HFk5ulG3z8DUvYBczB45bWZfQ=" bucket: librdkafka-ci-packages region: us-west-1 skip_cleanup: true local-dir: artifacts upload-dir: librdkafka/p-librdkafka__bld-travis__plat-${TRAVIS_OS_NAME}__arch-${ARCH}__tag-${TRAVIS_TAG}__sha-${TRAVIS_COMMIT}__bid-${TRAVIS_JOB_NUMBER}__lnk-${LINKAGE} on: repo: edenhill/librdkafka all_branches: true tags: true on: $NO_ARTIFACTS != y