ansible/test/utils/shippable/windows.sh
Matt Davis 8527013fbe Complete rewrite of Windows exec wrapper (#21510)
* supports pipelining for faster execution
* supports become (runas), creates interactive subsession under WinRM batch logon
* supports usage of arbitrary module_utils files
* modular exec wrapper payload supports easier extension
* integrates async wrapper behavior for pipelined/become'd async
* module_utils are loaded as true Powershell modules, no more runtime modifications to module code
2017-02-17 00:09:56 -08:00

41 lines
1.3 KiB
Bash
Executable file

#!/bin/bash -eux
set -o pipefail
declare -a args
IFS='/:' read -ra args <<< "${TEST}"
job="${args[1]}"
ansible-test windows-integration --explain 2>&1 | { grep ' windows-integration: .* (targeted)$' || true; } > /tmp/windows.txt
if [ -s /tmp/windows.txt ]; then
echo "Detected changes requiring integration tests specific to Windows:"
cat /tmp/windows.txt
if [ "${job}" != "1" ]; then
echo "Nothing to do, all Windows tests will run under TEST=windows/1 instead."
exit 0
fi
echo "Running Windows integration tests for multiple versions concurrently."
target="windows/ci/"
ansible-test windows-integration --color -v --retry-on-error "${target}" --requirements \
--windows 2012-RTM \
--windows 2012-R2_RTM \
# removed due to increased memory usage from pipelining triggering memory quota bug in WMF3 (due to AMIs unpatched for KB2842230
# --windows 2008-SP2 \
# --windows 2008-R2_SP1 \
else
echo "No changes requiring integration tests specific to Windows were detected."
echo "Running Windows integration tests for a single version only."
target="windows/ci/group${job}/"
ansible-test windows-integration --color -v --retry-on-error "${target}" --requirements \
--windows 2012-R2_RTM
fi