mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
35 lines
985 B
Bash
35 lines
985 B
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
set -o pipefail -eux
|
||
|
|
||
|
declare -a args
|
||
|
IFS='/:' read -ra args <<< "$1"
|
||
|
|
||
|
cloud="${args[0]}"
|
||
|
python="${args[1]}"
|
||
|
group="${args[2]}"
|
||
|
|
||
|
target="shippable/${cloud}/group${group}/"
|
||
|
|
||
|
stage="${S:-prod}"
|
||
|
|
||
|
changed_all_target="shippable/${cloud}/smoketest/"
|
||
|
|
||
|
if ! ansible-test integration "${changed_all_target}" --list-targets > /dev/null 2>&1; then
|
||
|
# no smoketest tests are available for this cloud
|
||
|
changed_all_target="none"
|
||
|
fi
|
||
|
|
||
|
if [ "${group}" == "1" ]; then
|
||
|
# only run smoketest tests for group1
|
||
|
changed_all_mode="include"
|
||
|
else
|
||
|
# smoketest tests already covered by group1
|
||
|
changed_all_mode="exclude"
|
||
|
fi
|
||
|
|
||
|
# shellcheck disable=SC2086
|
||
|
ansible-test integration --color -v --retry-on-error "${target}" ${COVERAGE:+"$COVERAGE"} ${CHANGED:+"$CHANGED"} ${UNSTABLE:+"$UNSTABLE"} \
|
||
|
--remote-terminate always --remote-stage "${stage}" \
|
||
|
--docker --python "${python}" --changed-all-target "${changed_all_target}" --changed-all-mode "${changed_all_mode}"
|