diff --git a/.travis.yml b/.travis.yml index 815192a6..ca59ff82 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,11 +9,15 @@ cache: pip python: - "2.7" +env: +- MODE=mitogen +- MODE=debops + install: - pip install -r dev_requirements.txt script: -- MITOGEN_LOG_LEVEL=debug PYTHONPATH=. ${TRAVIS_BUILD_DIR}/test +- ${TRAVIS_BUILD_DIR}/.travis/${MODE}_tests.sh services: - docker diff --git a/.travis/debops_tests.sh b/.travis/debops_tests.sh new file mode 100755 index 00000000..0e3e3607 --- /dev/null +++ b/.travis/debops_tests.sh @@ -0,0 +1,34 @@ +#!/bin/bash -ex +# Run some invocations of DebOps. + +TMPDIR="/tmp/debops-$$" +TRAVIS_BUILD_DIR="${TRAVIS_BUILD_DIR:-`pwd`}" + +function on_exit() +{ + [ "$KEEP" ] || { + rm -rvf "$TMPDIR" || true + docker kill target || true + } +} + +trap on_exit EXIT +mkdir "$TMPDIR" + +docker run --rm --detach --name=target d2mw/mitogen-test /bin/sleep 86400 + +pip install -U debops==0.7.2 ansible==2.4.3.0 +debops-init "$TMPDIR/project" +cd "$TMPDIR/project" + +cat > .debops.cfg <<-EOF +[ansible defaults] +strategy_plugins = ${TRAVIS_BUILD_DIR}/ansible_mitogen/plugins/strategy +strategy = mitogen_linear +EOF + +cat >> ansible/inventory/hosts <<-EOF +target ansible_python_interpreter=/usr/bin/python2.7 ansible_connection=docker +EOF + +debops common diff --git a/.travis/mitogen_tests.sh b/.travis/mitogen_tests.sh new file mode 100644 index 00000000..01d008b7 --- /dev/null +++ b/.travis/mitogen_tests.sh @@ -0,0 +1,4 @@ +#!/bin/bash -ex +# Run the Mitogen tests. + +MITOGEN_LOG_LEVEL=debug PYTHONPATH=. ${TRAVIS_BUILD_DIR}/test