ci: Try falling back to stable branch before HEAD

For non-MR pipelines, we check for a matching branch or tag name
in mutter. As we use the same naming policy for stable branches
and branch at about the same time, this works generally fine for
branches.

However for tags, it is less unlikely that there is no matching
tag in mutter, in particularly late in a stable cycle when most
changes are translation updates (which are much rare in mutter
than gnome-shell).

Before falling back to main (which is doomed to fail in that case),
try to guess the correct stable branch based on the tag name.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2293>
This commit is contained in:
Florian Müllner 2022-05-06 16:45:20 +02:00
parent d14bb7b536
commit 9e30afe678

View File

@ -47,9 +47,23 @@ if [ -z "$mutter_target" ]; then
mutter_target=FETCH_HEAD mutter_target=FETCH_HEAD
else else
echo \ not found echo \ not found
mutter_target=HEAD
echo Using $mutter_target instead
fi fi
fi fi
fallback_branch=${CI_COMMIT_TAG:+gnome-}${CI_COMMIT_TAG%%.*}
if [ -z "$mutter_target" -a "$fallback_branch" ]; then
echo -n Looking for $fallback_branch instead ...
if fetch origin $fallback_branch; then
echo \ found
mutter_target=FETCH_HEAD
else
echo \ not found
fi
fi
if [ -z "$mutter_target" ]; then
mutter_target=HEAD
echo Using $mutter_target instead
fi
git checkout -q $mutter_target git checkout -q $mutter_target