Skip to content

Split iOS release from the desktop release train#481

Merged
BunsDev merged 1 commit intomainfrom
copilot/separate-ios-desktop-release-run
Apr 20, 2026
Merged

Split iOS release from the desktop release train#481
BunsDev merged 1 commit intomainfrom
copilot/separate-ios-desktop-release-run

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 20, 2026

What Changed

The release pipeline now treats iOS/TestFlight as a separate workflow instead of a blocker for desktop and CLI publishing. The iOS lane now uses the App Store Connect API key + provisioning profile flow and no longer expects p12 certificate secrets.

  • Release workflow split

    • Removed iOS preflight/TestFlight jobs from release.yml
    • Kept desktop artifact publishing, npm publish, and GitHub Release creation gated only by desktop prerequisites
    • Preserved tag-based version alignment across both workflows
  • Dedicated iOS workflow

    • Replaced the release-ios.yml dry-run stub with the real iOS/TestFlight pipeline
    • Added tag-triggered execution plus manual dispatch
    • Added iOS-specific preflight validation for:
      • APPLE_API_KEY
      • APPLE_API_KEY_ID
      • APPLE_API_ISSUER
      • APPLE_TEAM_ID
      • IOS_PROVISIONING_PROFILE
      • IOS_PROVISIONING_PROFILE_NAME
  • Signing/auth changes

    • Removed dependency on IOS_CERTIFICATE_P12 / IOS_CERTIFICATE_PASSWORD
    • Archives and exports now use App Store Connect authentication via -authenticationKeyPath, -authenticationKeyID, and -authenticationKeyIssuerID
    • TestFlight upload stages the .p8 API key for Apple tooling instead of importing a p12
xcodebuild archive \
  -allowProvisioningUpdates \
  -authenticationKeyPath "$APPLE_API_KEY_PATH" \
  -authenticationKeyID "$APPLE_API_KEY_ID" \
  -authenticationKeyIssuerID "$APPLE_API_ISSUER"
  • Docs/runbook updates
    • Updated release docs to describe:
      • release.yml as the desktop/CLI/GitHub Release workflow
      • release-ios.yml as the separate TestFlight workflow
      • the new monitoring expectations for both workflows during a release

Why

The coordinated release train was coupling desktop publication to the iOS lane, and the failing path was still checking for p12-based signing inputs that are no longer the intended auth model. Splitting the workflows removes an unnecessary release blocker and aligns iOS signing with the App Store Connect API key flow that is already passing.

UI Changes

Not applicable.

Checklist

  • This PR is small and focused
  • I explained what changed and why
  • I included before/after screenshots for any UI changes
  • I included a video for animation/interaction changes

Agent-Logs-Url: https://github.com/OpenKnots/okcode/sessions/8ea02c90-6101-4817-8bca-bcbc5647227e

Co-authored-by: BunsDev <68980965+BunsDev@users.noreply.github.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented Apr 20, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
okcode-marketing Ready Ready Preview Apr 20, 2026 5:21pm
v0-compute-the-platform-to-build Ready Ready Preview, Open in v0 Apr 20, 2026 5:21pm

@BunsDev BunsDev marked this pull request as ready for review April 20, 2026 17:21
@BunsDev BunsDev merged commit c99576c into main Apr 20, 2026
4 checks passed
@github-actions github-actions Bot added size:XL vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Apr 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants