From 841cb9aaec49484b178b50fed8f930b66501ae16 Mon Sep 17 00:00:00 2001 From: vjrj Date: Tue, 21 Jul 2026 23:57:38 +0200 Subject: [PATCH] ci(release): serialize play before the fdroid_reference chain MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A tag push started play (AAB → Play) and fdroid_reference_armeabi_v7a at the same instant; two heavy Android builds on the shared runner (capacity:2) OOM-killed play's Gradle daemon ('daemon disappeared') deep in bundleRelease. Chain the fdroid references after play with needs:play + if:always() so only one Android build runs at a time. if:always() keeps the fdroid chain independent of play's result (still runs when play fails or, on workflow_dispatch, is skipped). --- .forgejo/workflows/release.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.forgejo/workflows/release.yml b/.forgejo/workflows/release.yml index 96da7ee..71d33aa 100644 --- a/.forgejo/workflows/release.yml +++ b/.forgejo/workflows/release.yml @@ -111,6 +111,13 @@ jobs: run: rm -f android/key.properties "$GITHUB_WORKSPACE/tane-upload.jks" fdroid_reference_armeabi_v7a: + # Serialize after play so two heavy Android builds never run concurrently on + # the shared host (capacity:2) — that contention OOM-killed play's Gradle + # daemon. `if: always()` keeps the fdroid chain independent of play's result + # (runs after play whether it succeeded, failed, or — on workflow_dispatch — + # was skipped). + needs: play + if: ${{ always() }} runs-on: docker container: image: registry.gitlab.com/fdroid/fdroidserver:buildserver-trixie