42 lines
1.2 KiB
Bash
42 lines
1.2 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
set -o pipefail -eux
|
|
|
|
declare -a args
|
|
IFS='/:' read -ra args <<< "$1"
|
|
|
|
group="${args[1]}"
|
|
|
|
if [ "${BASE_BRANCH:-}" ]; then
|
|
base_branch="origin/${BASE_BRANCH}"
|
|
else
|
|
base_branch=""
|
|
fi
|
|
|
|
if [ "${group}" == "extra" ]; then
|
|
../internal_test_tools/tools/run.py --color --bot --junit
|
|
exit
|
|
fi
|
|
|
|
case "${group}" in
|
|
1) options=(--skip-test pylint --skip-test ansible-doc --skip-test validate-modules) ;;
|
|
2) options=( --test ansible-doc --test validate-modules) ;;
|
|
3) options=(--test pylint plugins/modules/) ;;
|
|
4) options=(--test pylint --exclude plugins/modules/) ;;
|
|
esac
|
|
|
|
# allow collection migration sanity tests for groups 3 and 4 to pass without updating this script during migration
|
|
network_path="lib/ansible/modules/network/"
|
|
|
|
if [ -d "${network_path}" ]; then
|
|
if [ "${group}" -eq 3 ]; then
|
|
options+=(--exclude "${network_path}")
|
|
elif [ "${group}" -eq 4 ]; then
|
|
options+=("${network_path}")
|
|
fi
|
|
fi
|
|
|
|
# shellcheck disable=SC2086
|
|
ansible-test sanity --color -v --junit ${COVERAGE:+"$COVERAGE"} ${CHANGED:+"$CHANGED"} \
|
|
--docker --base-branch "${base_branch}" \
|
|
"${options[@]}" --allow-disabled
|