dist: trusty sudo: required language: cpp compiler: - clang - gcc env: - TARGET=doc - TARGET=python - TARGET=java - TARGET=node4 - TARGET=node5 - TARGET=node6 - TARGET=android - TARGET=sonar-scan matrix: exclude: - compiler: clang env: TARGET=java - compiler: gcc env: TARGET=android - compiler: clang env: TARGET=sonar-scan include: - compiler: gcc env: GCC_VERSION=6 TARGET=doc - compiler: gcc env: GCC_VERSION=6 TARGET=python - compiler: gcc env: GCC_VERSION=6 TARGET=java - compiler: gcc env: GCC_VERSION=6 TARGET=node4 - compiler: gcc env: GCC_VERSION=6 TARGET=node5 - compiler: gcc env: GCC_VERSION=6 TARGET=node6 allow_failures: - compiler: gcc env: TARGET=sonar-scan services: - docker before_install: - sudo rm /usr/local/bin/docker-compose - curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > docker-compose - chmod +x docker-compose - sudo mv docker-compose /usr/local/bin before_script: - if [ "$CC" == "gcc" ]; then export CC=gcc-${GCC_VERSION:-5}; fi - if [ "$CXX" == "g++" ]; then export CXX=g++-${GCC_VERSION:-5}; fi - if [ "$CC" == "clang" ]; then export CC=clang-3.8; fi - if [ "$CXX" == "clang++" ]; then export CXX=clang++-3.8; fi - docker-compose build base - if [ "$TARGET" == "android" ]; then docker-compose build java; fi - docker-compose build ${TARGET} script: - docker-compose run ${TARGET}