Decouple TestFlight distribution to avoid CI hangs - #12
Merged
Merged
Conversation
upload_to_testflight waited for build processing so it could assign the build to a group, but that wait is a well-known source of CI hangs (pilot polls the oldest processing build, not the one just uploaded). Switch to skip_waiting_for_build_processing: true so the job returns right after upload. Distribution to internal testers is now automatic: the "Testers (all builds)" group is configured with access to all builds, so every build reaches testers once App Store Connect finishes processing — no in-lane group assignment (which forced the wait) needed. Add a 30-minute job timeout as a safety cap. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Upload to TestFlight job was hanging for 25+ minutes (and could run for hours) on the post-upload processing wait — a well-known fastlane bug where pilot polls the oldest build still processing, not the one just uploaded.
Change
upload_to_testflightnow usesskip_waiting_for_build_processing: true, so the job returns immediately after the upload succeeds (~1 min, no wait).groupsassignment (that was the only reason the lane had to wait — assigning a group requires a processed build).timeout-minutes: 30to the job as a safety cap.Distribution still automatic
The internal group Testers (all builds) is now configured with access to all builds, so every build is delivered to testers automatically once App Store Connect finishes processing it — no in-lane assignment needed. (Apple only allows the "all builds" flag at group creation, so the group was recreated with the same single internal tester.)
Verified locally:
Fastfileparses; the ASC group is confirmedhas_access_to_all_builds=truewith the tester in place.