support/scripts: prioritize conditions for pipeline creation
When multiple conditions match simultaneously, even though that should not happen in practice, we want the more "important" one to win over the less "important" ones. For example, a tag is more important than a branch name or a trigger. Currently, the latest condition to match takes precendence over any previous one, while we want the exact opposite. Fix that with proper fallbacks in else-blocks. Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
48f0548ab3
commit
245a64c387
@ -49,26 +49,26 @@ gen_defconfigs() {
|
||||
if [ -n "${CI_COMMIT_TAG}" ]; then
|
||||
# For tags, create a pipeline.
|
||||
template=base
|
||||
fi
|
||||
if [ -n "${CI_PIPELINE_TRIGGERED}" ]; then
|
||||
elif [ -n "${CI_PIPELINE_TRIGGERED}" ]; then
|
||||
# For pipeline created by using a trigger token.
|
||||
template=base
|
||||
else
|
||||
case "${CI_COMMIT_REF_NAME}" in
|
||||
# For master, next, and maintenance branches, only check the defconfigs
|
||||
(master|next|????.??.x)
|
||||
template=check
|
||||
ext=_check
|
||||
;;
|
||||
# For the branch or tag name named *-defconfigs, create a pipeline.
|
||||
(*-defconfigs)
|
||||
template=base
|
||||
;;
|
||||
(*-*_defconfig)
|
||||
defconfigs=( "${CI_COMMIT_REF_NAME##*-}" )
|
||||
template=base
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
case "${CI_COMMIT_REF_NAME}" in
|
||||
# For master, next, and maintenance branches, only check the defconfigs
|
||||
(master|next|????.??.x)
|
||||
template=check
|
||||
ext=_check
|
||||
;;
|
||||
# For the branch or tag name named *-defconfigs, create a pipeline.
|
||||
(*-defconfigs)
|
||||
template=base
|
||||
;;
|
||||
(*-*_defconfig)
|
||||
defconfigs=( "${CI_COMMIT_REF_NAME##*-}" )
|
||||
template=base
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -n "${template}" ]; then
|
||||
for cfg in "${defconfigs[@]}"; do
|
||||
@ -91,21 +91,21 @@ gen_tests() {
|
||||
if [ -n "${CI_COMMIT_TAG}" ]; then
|
||||
# For tags, create a pipeline.
|
||||
run_tests=true
|
||||
fi
|
||||
if [ -n "${CI_PIPELINE_TRIGGERED}" ]; then
|
||||
elif [ -n "${CI_PIPELINE_TRIGGERED}" ]; then
|
||||
# For pipeline created by using a trigger token.
|
||||
run_tests=true
|
||||
else
|
||||
case "${CI_COMMIT_REF_NAME}" in
|
||||
# For the branch or tag name named *-runtime-tests, create a pipeline.
|
||||
(*-runtime-tests)
|
||||
run_tests=true
|
||||
;;
|
||||
(*-tests.*)
|
||||
tests=( "${CI_COMMIT_REF_NAME##*-}" )
|
||||
run_tests=true
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
case "${CI_COMMIT_REF_NAME}" in
|
||||
# For the branch or tag name named *-runtime-tests, create a pipeline.
|
||||
(*-runtime-tests)
|
||||
run_tests=true
|
||||
;;
|
||||
(*-tests.*)
|
||||
tests=( "${CI_COMMIT_REF_NAME##*-}" )
|
||||
run_tests=true
|
||||
;;
|
||||
esac
|
||||
|
||||
if ${run_tests}; then
|
||||
printf '%s: { extends: .runtime_test_base }\n' "${tests[@]}"
|
||||
|
Loading…
Reference in New Issue
Block a user