ci: run Forgejo Actions & Packages test w/ dynamic matrix (#1367)

Incorporates these changes:
- When `forgejo/build-from-sources` is present, Actions & Packages tests are run only against the built versions.  Otherwise, they are run against the versions defined in `$RELEASE_NUMBERS`
- Updates Packages tests which are testing Alpine publishing to use currently supported Alpine releases
- Actions & Packages tests are run in a matrix, allowing parallel execution

Only the Actions & Packages tests take a significant amount of time (>10 minutes), so changes have been limited to those test suites -- every test suite that is moved into a matrix adds additional overhead in the 1 minute `prepare-end-to-end` step.

Reviewed-on: https://code.forgejo.org/forgejo/end-to-end/pulls/1367
Co-authored-by: Mathieu Fenniak <mathieu@fenniak.net>
Co-committed-by: Mathieu Fenniak <mathieu@fenniak.net>
This commit is contained in:
Mathieu Fenniak 2026-01-01 22:16:33 +00:00 committed by Mathieu Fenniak
parent 6e89c972c3
commit 1064337c89
13 changed files with 24 additions and 7 deletions

View file

@ -79,6 +79,7 @@ jobs:
- name: determine if the PR is from a fork
id: forked
run: |
set -x
if test ${{ forge.event.pull_request.base.repo.full_name }} = ${{ forge.event.pull_request.head.repo.full_name }} ; then
echo value=false >> $FORGEJO_OUTPUT
else
@ -87,6 +88,7 @@ jobs:
- name: save event
run: |
set -x
d=/srv/example/cache-pull-request/contexts/${{ forgejo.event.pull_request.head.repo.owner.username }}/$FORGEJO_EVENT_NAME
mkdir -p $d
cat > $d/forgejo-${{ forgejo.event.action }} <<'EOF'

View file

@ -53,6 +53,7 @@ function main() {
# wait for the opened event to succeed using the cache on all pull requests
#
if ! forgejo.sh retry $EXAMPLE_DIR/assert-contexts-opened.sh; then
echo "assert-contexts-opened.sh failed; printing related logs and information:"
find $d
sed -e 's/^/[RUNNER LOGS]/' <$FORGEJO_RUNNER_LOGS
return 1
@ -69,6 +70,7 @@ function main() {
# wait for the closed event to succeed using the cache on all pull requests
#
if ! forgejo.sh retry $EXAMPLE_DIR/assert-contexts-closed.sh; then
echo "assert-contexts-closed.sh failed; printing related logs and information:"
find $d
sed -e 's/^/[RUNNER LOGS]/' <$FORGEJO_RUNNER_LOGS
return 1