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-