The submit_review fastlane lane identified the just-uploaded build by CFBundleVersion alone. In this project the production iOS profile resets the build number per marketing version, so every release sits at build 2 and Spaceship::ConnectAPI::Build.all returns the whole TestFlight history. The .find call picked an arbitrary match, which is how 0.1.76's binary got attached to the 0.1.75 App Store version slot and submitted for review under the wrong label. The release workflow now forwards app_version and app_build_version from the build_ios outputs into the fastlane step as env vars, and the Fastfile filters builds by marketing version plus build number to pin the exact binary. The standalone resubmit workflow takes the same identifiers as optional workflow_dispatch inputs; with both unset it falls back to "most recently uploaded iOS build" so manual reruns still work. Pinning fastlane in the Gemfile to lock the Spaceship behavior this lane depends on.
34 lines
1.1 KiB
YAML
34 lines
1.1 KiB
YAML
name: Resubmit iOS for App Store review
|
|
|
|
# Standalone re-trigger for the App Store review submission step. The iOS
|
|
# binary is already uploaded to TestFlight via the main release-mobile flow;
|
|
# this workflow just runs the fastlane submit_review lane against the latest
|
|
# TestFlight build, without rebuilding or re-uploading.
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
app_version:
|
|
type: string
|
|
required: false
|
|
description: "Marketing version to resubmit, e.g. 0.1.76. Leave empty to target the most recently uploaded iOS build."
|
|
app_build_version:
|
|
type: string
|
|
required: false
|
|
description: "CFBundleVersion to resubmit, e.g. 2. Only used when app_version is set."
|
|
|
|
jobs:
|
|
submit_ios_for_review:
|
|
name: Submit iOS for App Store review
|
|
environment: production
|
|
runs_on: macos-medium
|
|
steps:
|
|
- uses: eas/checkout
|
|
- name: Install fastlane
|
|
run: bundle install
|
|
- name: Submit for review
|
|
run: |
|
|
export APP_VERSION="${{ inputs.app_version }}"
|
|
export APP_BUILD_VERSION="${{ inputs.app_build_version }}"
|
|
bundle exec fastlane ios submit_review
|