sudo: required addons: apt: update: true notifications: email: false language: python cache: - pip - directories: - /home/travis/virtualenv install: # |cat to disable progress bar. - pip install -r dev_requirements.txt |cat script: - | if [ -f "${TRAVIS_BUILD_DIR}/.ci/${MODE}_tests.sh" ]; then ${TRAVIS_BUILD_DIR}/.ci/${MODE}_tests.sh; else ${TRAVIS_BUILD_DIR}/.ci/${MODE}_tests.py; fi services: - docker # To avoid matrix explosion, just test against oldest->newest and # newest->oldest in various configuartions. matrix: include: # Mitogen tests. # 2.7 -> 2.7 - python: "2.7" env: MODE=mitogen DISTRO=debian # 2.7 -> 2.6 - python: "2.7" env: MODE=mitogen DISTRO=centos6 # 2.6 -> 2.7 - python: "2.6" env: MODE=mitogen DISTRO=centos7 # 3.6 -> 2.6 - python: "3.6" env: MODE=mitogen DISTRO=centos6 # Debops tests. # 2.4.6.0; 2.7 -> 2.7 - python: "2.7" env: MODE=debops_common VER=2.4.6.0 # 2.5.7; 3.6 -> 2.7 - python: "3.6" env: MODE=debops_common VER=2.6.2 # ansible_mitogen tests. # 2.6 -> {debian, centos6, centos7} - python: "2.6" env: MODE=ansible VER=2.4.6.0 - python: "2.6" env: MODE=ansible VER=2.6.2 # 3.6 -> {debian, centos6, centos7} - python: "3.6" env: MODE=ansible VER=2.4.6.0 - python: "3.6" env: MODE=ansible VER=2.6.2 # Sanity check against vanilla Ansible. One job suffices. - python: "2.7" env: MODE=ansible VER=2.6.2 DISTROS=debian STRATEGY=linear