language: cpp matrix: include: - os: linux compiler: gcc env: - BUILD_NAME=TRUSTY_GCC - SUDO=sudo - os: linux compiler: clang env: - BUILD_NAME=TRUSTY_CLANG - SUDO=sudo - os: linux compiler: clang env: - BUILD_NAME=XENIAL_CLANG - DOCKER_FILE="ubuntu-xenial" services: docker - os: linux compiler: gcc env: - BUILD_NAME=BIONIC_GCC - DOCKER_FILE="ubuntu-bionic" services: docker - os: linux compiler: clang env: - BUILD_NAME=BIONIC_CLANG - DOCKER_FILE="ubuntu-bionic" services: docker - os: osx compiler: gcc env: - BUILD_NAME=OSX_GCC - os: osx compiler: clang env: - COMPILER=clang++ - BUILD_NAME=OSX_CLANG before_install: - if [ -n "$DOCKER_FILE" ]; then docker build -t "$DOCKER_FILE" -f ".ci/docker/$DOCKER_FILE" .; docker run -itd -v $TRAVIS_BUILD_DIR:$TRAVIS_BUILD_DIR --env-file .ci/docker/env.list --name bullet-docker "$DOCKER_FILE"; fi script: - if [ -n "$DOCKER_FILE" ]; then docker exec bullet-docker /bin/sh -c "cd $TRAVIS_BUILD_DIR && ./.ci/script.sh"; else '.ci/script.sh'; fi