diff --git a/.travis.yml b/.travis.yml index 3a054b419..52595c111 100644 --- a/.travis.yml +++ b/.travis.yml @@ -94,6 +94,28 @@ matrix: <<: *not-on-master # Extended test suite on cron jobs and pushes to tested branches other than master + - python: "2.7" + env: + - TOXENV=travis-test-farm-apache2 + - secure: "f+j/Lj9s1lcuKo5sEFrlRd1kIAMnIJI4z0MTI7QF8jl9Fkmbx7KECGzw31TNgzrOSzxSapHbcueFYvNCLKST+kE/8ogMZBbwqXfEDuKpyF6BY3uYoJn+wPVE5pIb8Hhe08xPte8TTDSMIyHI3EyTfcAKrIreauoArePvh/cRvSw=" + <<: *extended-test-suite + - python: "2.7" + env: + - TOXENV=travis-test-farm-leauto-upgrades + - secure: "f+j/Lj9s1lcuKo5sEFrlRd1kIAMnIJI4z0MTI7QF8jl9Fkmbx7KECGzw31TNgzrOSzxSapHbcueFYvNCLKST+kE/8ogMZBbwqXfEDuKpyF6BY3uYoJn+wPVE5pIb8Hhe08xPte8TTDSMIyHI3EyTfcAKrIreauoArePvh/cRvSw=" + git: + depth: false # This is needed to have the history to checkout old versions of certbot-auto. + <<: *extended-test-suite + - python: "2.7" + env: + - TOXENV=travis-test-farm-certonly-standalone + - secure: "f+j/Lj9s1lcuKo5sEFrlRd1kIAMnIJI4z0MTI7QF8jl9Fkmbx7KECGzw31TNgzrOSzxSapHbcueFYvNCLKST+kE/8ogMZBbwqXfEDuKpyF6BY3uYoJn+wPVE5pIb8Hhe08xPte8TTDSMIyHI3EyTfcAKrIreauoArePvh/cRvSw=" + <<: *extended-test-suite + - python: "2.7" + env: + - TOXENV=travis-test-farm-sdists + - secure: "f+j/Lj9s1lcuKo5sEFrlRd1kIAMnIJI4z0MTI7QF8jl9Fkmbx7KECGzw31TNgzrOSzxSapHbcueFYvNCLKST+kE/8ogMZBbwqXfEDuKpyF6BY3uYoJn+wPVE5pIb8Hhe08xPte8TTDSMIyHI3EyTfcAKrIreauoArePvh/cRvSw=" + <<: *extended-test-suite - python: "3.7" dist: xenial env: TOXENV=py37 CERTBOT_NO_PIN=1 diff --git a/tests/letstest/travis-setup.sh b/tests/letstest/travis-setup.sh new file mode 100755 index 000000000..261a1504f --- /dev/null +++ b/tests/letstest/travis-setup.sh @@ -0,0 +1,10 @@ +#!/bin/bash -ex +# +# Preps the test farm tests to be run in Travis. + +if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then + echo This script must be run in Travis on a non-pull request build + exit 1 +fi + +openssl aes-256-cbc -K "${encrypted_9a387195a62e_key}" -iv "${encrypted_9a387195a62e_iv}" -in travis-test-farm.pem.enc -out travis-test-farm.pem -d diff --git a/tests/letstest/travis-test-farm.pem.enc b/tests/letstest/travis-test-farm.pem.enc new file mode 100644 index 000000000..f8b1d576c Binary files /dev/null and b/tests/letstest/travis-test-farm.pem.enc differ diff --git a/tox.ini b/tox.ini index 7f2c18d38..52ae1e97d 100644 --- a/tox.ini +++ b/tox.ini @@ -274,3 +274,50 @@ commands = --acme-server={env:ACME_SERVER:pebble} passenv = DOCKER_* setenv = {[testenv:py27-oldest]setenv} + +[testenv:travis-test-farm-tests-base] +changedir = tests/letstest +commands = + ./travis-setup.sh +deps = -rtests/letstest/requirements.txt +passenv = + AWS_* + TRAVIS_* + encrypted_* +setenv = AWS_DEFAULT_REGION=us-east-1 + +[testenv:travis-test-farm-apache2] +changedir = {[testenv:travis-test-farm-tests-base]changedir} +commands = + {[testenv:travis-test-farm-tests-base]commands} + python multitester.py apache2_targets.yaml travis-test-farm.pem SET_BY_ENV scripts/test_apache2.sh --repo {env:TRAVIS_BUILD_DIR} --branch {env:TRAVIS_BRANCH} --fast +deps = {[testenv:travis-test-farm-tests-base]deps} +passenv = {[testenv:travis-test-farm-tests-base]passenv} +setenv = {[testenv:travis-test-farm-tests-base]setenv} + +[testenv:travis-test-farm-leauto-upgrades] +changedir = {[testenv:travis-test-farm-tests-base]changedir} +commands = + {[testenv:travis-test-farm-tests-base]commands} + python multitester.py targets.yaml travis-test-farm.pem SET_BY_ENV scripts/test_leauto_upgrades.sh --repo {env:TRAVIS_BUILD_DIR} --branch {env:TRAVIS_BRANCH} --fast +deps = {[testenv:travis-test-farm-tests-base]deps} +passenv = {[testenv:travis-test-farm-tests-base]passenv} +setenv = {[testenv:travis-test-farm-tests-base]setenv} + +[testenv:travis-test-farm-certonly-standalone] +changedir = {[testenv:travis-test-farm-tests-base]changedir} +commands = + {[testenv:travis-test-farm-tests-base]commands} + python multitester.py targets.yaml travis-test-farm.pem SET_BY_ENV scripts/test_letsencrypt_auto_certonly_standalone.sh --repo {env:TRAVIS_BUILD_DIR} --branch {env:TRAVIS_BRANCH} --fast +deps = {[testenv:travis-test-farm-tests-base]deps} +passenv = {[testenv:travis-test-farm-tests-base]passenv} +setenv = {[testenv:travis-test-farm-tests-base]setenv} + +[testenv:travis-test-farm-sdists] +changedir = {[testenv:travis-test-farm-tests-base]changedir} +commands = + {[testenv:travis-test-farm-tests-base]commands} + python multitester.py targets.yaml travis-test-farm.pem SET_BY_ENV scripts/test_sdists.sh --repo {env:TRAVIS_BUILD_DIR} --branch {env:TRAVIS_BRANCH} --fast +deps = {[testenv:travis-test-farm-tests-base]deps} +passenv = {[testenv:travis-test-farm-tests-base]passenv} +setenv = {[testenv:travis-test-farm-tests-base]setenv}