Skip to content

[eas-cli] Set up TestFlight internal group when submitting with an existing ascAppId - #4136

Open
tchayen wants to merge 4 commits into
mainfrom
tchayen/testflight-setup-existing-asc-app
Open

[eas-cli] Set up TestFlight internal group when submitting with an existing ascAppId#4136
tchayen wants to merge 4 commits into
mainfrom
tchayen/testflight-setup-existing-asc-app

Conversation

@tchayen

@tchayen tchayen commented Aug 2, 2026

Copy link
Copy Markdown
Member

Why

The automatic TestFlight setup (internal group and admin testers) runs only on the interactive submit path that creates the App Store Connect app. Apps created on the ASC website never get a group, so processed builds sit in TestFlight with nobody able to install them.

How

  • eas submit -p ios runs the group setup best-effort when ascAppId resolves from the submit profile. Auth is strictly non-interactive: an ASC API key from env vars or the EAS credentials service. Without a key the setup is skipped silently, so submits gain no new prompts or failures. apple-utils routes token-auth beta group and tester requests to the official ASC API, so no cookie session is needed.
  • ensureTestFlightGroupExistsAsync gains a nonInteractive option that skips the destructive group-regeneration confirm with a warning.
  • Fix the TestFlight group URL printed on partial tester failure.
  • eas go reuses the shared implementation instead of its own copy.
  • EAS_NO_AUTO_TESTFLIGHT_SETUP is respected on the new path.

Test plan

CI passes. New unit tests cover the non-interactive behavior: no prompt, no group deletion, opt-out env var. The IosSubmitCommand suite asserts the setup runs for a profile-provided ascAppId. Reproduced the original gap end to end while shipping a real app: an app created on the ASC website and submitted with eas build --auto-submit --non-interactive reached TestFlight with no internal group.

@github-actions

github-actions Bot commented Aug 2, 2026

Copy link
Copy Markdown

Subscribed to pull request

File Patterns Mentions
packages/eas-cli/** @douglowder

Generated by CodeMention

Warning: The preamble and epilogue options in commentConfiguration are deprecated. Use template instead.

@tchayen
tchayen force-pushed the tchayen/testflight-setup-existing-asc-app branch from 4e14402 to de8a2e7 Compare August 2, 2026 07:06
tchayen added 2 commits August 2, 2026 13:42
The automatic internal TestFlight group setup previously ran only when the
CLI itself created the App Store Connect app during interactive submit.
Apps created on the App Store Connect website (or submitted with ascAppId
in the submit profile) never got a group, so processed builds sat in
TestFlight with no one able to install them.

eas submit now runs the same setup best-effort for existing apps, using
strictly non-interactive App Store Connect API key auth (env vars or the
EAS credentials service) and skipping silently when no key is available.
The group regeneration prompt is skipped in non-interactive mode instead
of hanging, the TestFlight group URL no longer hardcodes a foreign app id,
and eas go now reuses the shared implementation instead of a duplicated
copy.

Claude-Session: https://claude.ai/code/session_0192qAxJXYhEtc91K1xRqNnk
@tchayen
tchayen force-pushed the tchayen/testflight-setup-existing-asc-app branch from de8a2e7 to 2a553d3 Compare August 2, 2026 10:44
@codecov

codecov Bot commented Aug 2, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 47.72727% with 23 lines in your changes missing coverage. Please review.
✅ Project coverage is 62.50%. Comparing base (1b7a876) to head (db7f08c).

Files with missing lines Patch % Lines
...es/eas-cli/src/submit/ios/ensureTestFlightSetup.ts 34.49% 18 Missing and 1 partial ⚠️
.../credentials/ios/appstore/ensureTestFlightGroup.ts 70.00% 3 Missing ⚠️
packages/eas-cli/src/submit/ios/AppProduce.ts 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4136      +/-   ##
==========================================
+ Coverage   62.40%   62.50%   +0.11%     
==========================================
  Files        1009     1010       +1     
  Lines       45699    45708       +9     
  Branches     9615     9613       -2     
==========================================
+ Hits        28513    28565      +52     
+ Misses      15723    15691      -32     
+ Partials     1463     1452      -11     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

✅ Thank you for adding the changelog entry!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant