diff options
author | Pradyun Gedam <pradyunsg@gmail.com> | 2018-10-22 12:16:43 +0530 |
---|---|---|
committer | Pradyun Gedam <pradyunsg@gmail.com> | 2018-10-22 12:16:43 +0530 |
commit | 5167495eb729f2f01ae0c4961b40dc1ca52ff828 (patch) | |
tree | 5fc98254611c68239c1794a4cfebfa5f1dd80b9e /.appveyor.yml | |
parent | 3a6a1c06a9c45659f4a6cc16ca4fee06c34c7d84 (diff) | |
download | pip-5167495eb729f2f01ae0c4961b40dc1ca52ff828.tar.gz |
Rename appveyor.yml -> .appveyor.yml and update references
Diffstat (limited to '.appveyor.yml')
-rw-r--r-- | .appveyor.yml | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/.appveyor.yml b/.appveyor.yml new file mode 100644 index 000000000..cfad2a52f --- /dev/null +++ b/.appveyor.yml @@ -0,0 +1,69 @@ +environment: + matrix: + # Unit and integration tests. + - PYTHON: "C:\\Python27" + - PYTHON: "C:\\Python36-x64" + - PYTHON: "C:\\Python27" + RUN_INTEGRATION_TESTS: "True" + - PYTHON: "C:\\Python36-x64" + RUN_INTEGRATION_TESTS: "True" + # Unit tests only. + - PYTHON: "C:\\Python27-x64" + - PYTHON: "C:\\Python34" + - PYTHON: "C:\\Python34-x64" + - PYTHON: "C:\\Python35" + - PYTHON: "C:\\Python35-x64" + - PYTHON: "C:\\Python36" + +install: + - "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%" + - "python --version" + - "pip install certifi tox" + # Fix git SSL errors. + - "python -m certifi >cacert.txt" + - "set /p GIT_SSL_CAINFO=<cacert.txt" + - "set GIT_SSL_CAINFO" + +build: off + +cache: + - '%LOCALAPPDATA%\pip\Cache' + +test_script: + - ps: | + function should_run_tests { + if ("$env:APPVEYOR_PULL_REQUEST_NUMBER" -eq "") { + Write-Host "Not a pull request - running tests" + return $true + } + Write-Host "Pull request $env:APPVEYOR_PULL_REQUEST_NUMBER based on branch $env:APPVEYOR_REPO_BRANCH" + git fetch -q origin +refs/heads/$env:APPVEYOR_REPO_BRANCH + $changes = (git diff --name-only HEAD (git merge-base HEAD FETCH_HEAD)) + Write-Host "Files changed:" + Write-Host $changes + $important = $changes | Where-Object { $_ -NotLike "*.rst" } | + Where-Object { $_ -NotLike "docs*" } | + Where-Object { $_ -NotLike "news*" } | + Where-Object { $_ -NotLike "*travis*" } | + Where-Object { $_ -NotLike ".github*" } + if (!$important) { + Write-Host "Only documentation changes - skipping tests" + return $false + } + + Write-Host "Pull request $env:APPVEYOR_PULL_REQUEST_NUMBER alters code - running tests" + return $true + } + + if (should_run_tests) { + # Shorten paths, workaround https://bugs.python.org/issue18199 + subst T: $env:TEMP + $env:TEMP = "T:\" + $env:TMP = "T:\" + if ($env:RUN_INTEGRATION_TESTS -eq "True") { + tox -e py -- -m integration -n 3 --duration=5 + } + else { + tox -e py -- -m unit -n 3 + } + } |