Skip to content

ci(ios-release): support ad hoc distribution - #1833

Merged
FresnelR27 merged 1 commit into
developfrom
junyu/ios-adhoc-distribution
Sep 15, 2026
Merged

FresnelR27 merged 1 commit into
developfrom
junyu/ios-adhoc-distribution

Conversation

@beruro

@beruro beruro commented Sep 15, 2026

Copy link
Copy Markdown
Collaborator

Problem

The iOS release workflow only accepts App Store Connect provisioning profiles and always exports with app-store-connect. The resulting IPA can be uploaded to TestFlight but cannot be installed through Pgyer on registered devices.

Solution

Add an ad-hoc distribution choice to the existing iOS release workflow while keeping App Store Connect as the default. The workflow selects the dedicated Ad Hoc profile, validates that it contains registered devices and disables debugging, generates matching export options, and validates the exported IPA against the selected distribution method. TestFlight upload remains restricted to App Store Connect packages.

Potential risks

Ad Hoc builds install only on devices embedded in the selected provisioning profile; the current profile contains one registered iPhone. Adding devices later requires regenerating the profile and rebuilding. The existing App Store Connect path remains the default and retains its prior profile and upload checks.

Verification

  • node --test scripts/ios-release/manual-signing.test.mjs scripts/ios-release/readiness.test.mjs — passed, 33 tests
  • git diff --check — passed
  • Ruby YAML parser loaded .github/workflows/ios-testflight.yml successfully
  • Decoded the generated Ad Hoc profile locally and verified its bundle ID, team, expiry, and registered-device list; no profile contents or signing material are committed
  • Full GitHub Actions Ad Hoc build has not run yet because the workflow change must merge to the protected develop branch first

@FresnelR27
FresnelR27 merged commit 5058afa into develop Sep 15, 2026
16 checks passed
@Harry19081 Harry19081 added maintenance Maintenance, CI, build, release, cleanup, or tooling work dev-tooling Developer tooling, build, CI, tests, diagnostics, or release labels Sep 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dev-tooling Developer tooling, build, CI, tests, diagnostics, or release maintenance Maintenance, CI, build, release, cleanup, or tooling work

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants