Run each Windows version independently in CI.

This commit is contained in:
Matt Clay 2018-02-09 14:31:19 -08:00
parent 26f551d1c3
commit 1d419c737d
40 changed files with 68 additions and 50 deletions

View file

@ -17,10 +17,23 @@ matrix:
- env: T=units/3.6 - env: T=units/3.6
- env: T=units/3.7 - env: T=units/3.7
- env: T=windows/1 - env: T=windows/2008/1
- env: T=windows/2 - env: T=windows/2008-R2/1
- env: T=windows/3 - env: T=windows/2012/1
- env: T=windows/4 - env: T=windows/2012-R2/1
- env: T=windows/2016/1
- env: T=windows/2008/2
- env: T=windows/2008-R2/2
- env: T=windows/2012/2
- env: T=windows/2012-R2/2
- env: T=windows/2016/2
- env: T=windows/2008/3
- env: T=windows/2008-R2/3
- env: T=windows/2012/3
- env: T=windows/2012-R2/3
- env: T=windows/2016/3
- env: T=network - env: T=network

View file

@ -1,2 +1,2 @@
posix/ci/group1 posix/ci/group1
windows/ci/group4 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group2 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group1 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group2 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group1 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group2 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group1 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group1 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group1 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group2 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group2 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group3 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group1

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group2 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group1 windows/ci/group2

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group3

View file

@ -1 +1 @@
windows/ci/group4 windows/ci/group3

View file

@ -5,7 +5,8 @@ set -o pipefail
declare -a args declare -a args
IFS='/:' read -ra args <<< "$1" IFS='/:' read -ra args <<< "$1"
target="windows/ci/group${args[1]}/" version="${args[1]}"
target="windows/ci/group${args[2]}/"
stage="${S:-prod}" stage="${S:-prod}"
provider="${P:-default}" provider="${P:-default}"
@ -19,6 +20,9 @@ python_versions=(
2.7 2.7
) )
# version to test when only testing a single version
single_version=2012-R2
# shellcheck disable=SC2086 # shellcheck disable=SC2086
ansible-test windows-integration "${target}" --explain ${CHANGED:+"$CHANGED"} 2>&1 | { grep ' windows-integration: .* (targeted)$' || true; } > /tmp/windows.txt ansible-test windows-integration "${target}" --explain ${CHANGED:+"$CHANGED"} 2>&1 | { grep ' windows-integration: .* (targeted)$' || true; } > /tmp/windows.txt
@ -29,18 +33,19 @@ if [ -s /tmp/windows.txt ] || [ "${CHANGED:+$CHANGED}" == "" ]; then
echo "Running Windows integration tests for multiple versions concurrently." echo "Running Windows integration tests for multiple versions concurrently."
platforms=( platforms=(
--windows 2008 --windows "${version}"
--windows 2008-R2
--windows 2012
--windows 2012-R2
--windows 2016
) )
else else
echo "No changes requiring integration tests specific to Windows were detected." echo "No changes requiring integration tests specific to Windows were detected."
echo "Running Windows integration tests for a single version only." echo "Running Windows integration tests for a single version only: ${single_version}"
if [ "${version}" != "${single_version}" ]; then
echo "Skipping this job since it is for: ${version}"
exit 0
fi
platforms=( platforms=(
--windows 2012-R2 --windows "${version}"
) )
fi fi