From 06858e94715b3271abf53cd168b7e6557925d4e0 Mon Sep 17 00:00:00 2001 From: ThePhaseless Date: Tue, 6 Oct 2026 16:24:42 +0200 Subject: [PATCH] feat(release): replace the Google Play screenshots from a manual run The track `listing`, from any tag, renders the screenshots and replaces the Google Play listing images that differ, without a version or release. App Store screenshots change only with a new App Store version. Also runs the two Play screenshot tests, which sat after the __main__ block. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/flutter-release.yml | 26 ++++++++++++++++--- README.md | 4 +++ scripts/google_play.py | 18 +++++++++++-- tests/test_google_play.py | 37 +++++++++++++++++++++++++-- 4 files changed, 77 insertions(+), 8 deletions(-) diff --git a/.github/workflows/flutter-release.yml b/.github/workflows/flutter-release.yml index 21231db..dfffa19 100644 --- a/.github/workflows/flutter-release.yml +++ b/.github/workflows/flutter-release.yml @@ -32,7 +32,7 @@ on: type: string default: beta publish-track: - description: "Manual runs from a release's tag: `production` or the open testing track (play-beta-track)." + description: "Manual runs from a release's tag: `production` or the open testing track (play-beta-track). `listing`, from any tag, only replaces the Google Play screenshots (screenshots-task)." type: string publish-platforms: description: "Manual runs: `all` (the default), `android` or `ios`." @@ -134,6 +134,23 @@ jobs: exit 1 ;; esac + if [ "$EVENT" = workflow_dispatch ] && [ "$TRACK" = listing ]; then + # The store listing alone: no version, release or build. + if [ "$PLATFORMS" = ios ]; then + echo "::error::App Store screenshots change only with a new App Store version: publish a production release." + exit 1 + fi + echo "::notice::App Store screenshots change only with a new App Store version, so the next production release updates them." + { + echo "mode=listing" + echo "manual=true" + echo "channel=listing" + echo "android=true" + echo "ios=false" + echo "tag=$TAG" + } >> "$GITHUB_OUTPUT" + exit 0 + fi # [v]X.Y.Z, or [v]X.Y.Z-