From a6d5688eb76bc3197c13418fe48467f53a17a9c0 Mon Sep 17 00:00:00 2001 From: Krzysztof kuhy Rudnicki Date: Fri, 2 Oct 2026 15:08:47 +0200 Subject: [PATCH] CI: slim Flutter SDK for the interop job; APK only on app changes, Gradle cached Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/python-tests.yml | 5 ++--- .github/workflows/release-apk.yml | 10 ++++++++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/.github/workflows/python-tests.yml b/.github/workflows/python-tests.yml index 7ffa815..0eeac6a 100644 --- a/.github/workflows/python-tests.yml +++ b/.github/workflows/python-tests.yml @@ -69,11 +69,10 @@ jobs: uv pip install --quiet --python .freedays-venv/bin/python .utils/crdt-sync uv pip install --quiet --python .freedays-venv/bin/python --no-deps .utils/freedays - - uses: subosito/flutter-action@v2 + - uses: kuhyx/utils/flutter-setup@flutter-setup-v1 with: flutter-version: 3.47.6 - channel: stable - cache: true + working-directory: phone_app - name: Dart writes, Python replays, both must agree run: FREEDAYS_PYTHON="$PWD/.freedays-venv/bin/python" bash scripts/free_days_interop/check.sh diff --git a/.github/workflows/release-apk.yml b/.github/workflows/release-apk.yml index 4dcefb6..c4f3f20 100644 --- a/.github/workflows/release-apk.yml +++ b/.github/workflows/release-apk.yml @@ -3,6 +3,14 @@ name: release-apk on: push: branches: [main] + # A publisher, not a gate: build only when something that ends up in + # the APK changed. versionCode is the commit count, so skipped pushes + # still leave it monotonic. + paths: + - 'phone_app/**' + - '.fvmrc' + - '.versioncode-offset' + - '.github/workflows/release-apk.yml' # Lets a release be rebuilt from the current main without a dummy commit. workflow_dispatch: @@ -74,6 +82,8 @@ jobs: with: distribution: temurin java-version: "17" + # ~/.gradle caches + wrapper, keyed on the Gradle files. + cache: gradle - uses: subosito/flutter-action@v2 with: