parameters: name: '' pool: '' sign: false steps: - script: "PYTHONVERSION=$(python.version) .ci/prep_azure.py" displayName: "Run prep_azure.py" # The VSTS-shipped Pythons available via UsePythonVErsion are pure garbage, # broken symlinks, incorrect permissions and missing codecs. So we use the # deadsnakes PPA to get sane Pythons, and setup a virtualenv to install our # stuff into. The virtualenv can probably be removed again, but this was a # hard-fought battle and for now I am tired of this crap. - script: | # TODO: get python3 tests passing set -o errexit set -o nounset set -o pipefail set -x # Ensure virtualenv is in system-wide $PATH on OSX, for Ansible test tasks # that use it, e.g. regression/issue_152__virtualenv_python_fails.yml if [[ -d /Library/Frameworks/Python.framework/Versions/2.7/bin ]]; then echo $PATH which python python -m pip install -U pip virtualenv ln -s /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv /usr/local/bin/virtualenv virtualenv --version fi # Create virtualenv using desired Python version, to run the testcases python$(python.version) -m pip install -U pip wheel setuptools virtualenv python$(python.version) -m virtualenv /tmp/venv -p python$(python.version) echo "##vso[task.prependpath]/tmp/venv/bin" displayName: activate venv - script: .ci/spawn_reverse_shell.py displayName: "Spawn reverse shell" - script: .ci/$(MODE)_install.py displayName: "Run $(MODE)_install.py" - script: .ci/$(MODE)_tests.py displayName: "Run $(MODE)_tests.py" env: NOCOVERAGE: 1