From 92791d5901c23de6af79ec38fcb05e79eff00c03 Mon Sep 17 00:00:00 2001 From: randogoth Date: Wed, 14 Oct 2026 10:49:31 +0300 Subject: [PATCH] ci: disable Gradle daemon reuse in release build The shared runner host keeps Gradle daemons alive for up to 3 hours and hands them to the next matching build regardless of which project started them. A daemon warmed by an unrelated checkout (even a local devbox test build) can serve this project's CI run next, carrying over stale in-memory classpath state and producing inconsistent "package android.app does not exist" failures. Disabling the daemon for this one step keeps dependency/wrapper caches shared while avoiding the live-process contamination. --- .forgejo/workflows/release.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.forgejo/workflows/release.yml b/.forgejo/workflows/release.yml index a320fda..e8b03fc 100644 --- a/.forgejo/workflows/release.yml +++ b/.forgejo/workflows/release.yml @@ -27,6 +27,12 @@ jobs: STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }} KEY_ALIAS: ${{ secrets.KEY_ALIAS }} KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} + # This host runs other projects' builds too, and Gradle daemons + # persist across them. A daemon warmed by a different checkout + # can serve this build next, carrying over stale classpath state. + # ~/.gradle/caches (dependency jars, wrapper dists) stays shared + # and warm; only the long-lived daemon process is avoided. + GRADLE_OPTS: -Dorg.gradle.daemon=false run: | env -u GITHUB_TOKEN -u GH_TOKEN -u JAVA_HOME \ devbox run -- flutter build apk --release