fastlane warned it was relying on App Store Connect's default (true) for
notifying external testers. Set notify_external_testers:true explicitly so
behavior doesn't depend on an Apple-side default that could change.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Two changes:
- Pass app_platform:"ios" to upload_to_testflight. In distribute_only mode
fastlane calls fetch_app_platform, which prompts for input and crashes in
CI ("Could not retrieve response as fastlane runs in non-interactive mode").
- Drop the iOS "What to Test" changelog. The release notes are already posted
to Slack by the nightly workflow, so there's no need to also set them on the
TestFlight build. Removes the releaseNotes input and changelog plumbing.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
fastlane's Token.from_json_file requires the .p8 contents inline under a
"key" field (PEM with embedded newlines), but the JSON used "key_filepath"
(a path), so spaceship failed with "missing field(s): key" at login.
Decode the .p8 and write its contents into "key", built with jq so the PEM
newlines are escaped correctly. No longer writes the raw .p8 to disk.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
GitHub statically validates the reusable-workflow permission ceiling, so
calling build-submit-android.yml fails validation because its attachToRelease
job requests contents: write while the nightly caller only granted read. That
job is skipped for nightly builds (it needs a production tag), but the check
runs at parse time regardless. Scope the write permission to the android
caller job so the rest of the workflow stays read-only.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sets the "What to test" field in TestFlight to distinguish between
TestFlight and Production builds.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Configure concurrency groups so only one iOS build and one Android build
can run at a time across all workflows. This prevents manual builds from
conflicting with automatic builds triggered by fingerprint changes.
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
* use xlarge runner for macos build
* try and fix yarn cache
* update actions/cache for pods step
* use expo github action main rather than v8
* update all actions to the same
* use yarn cache where missing