HiveBrain v1.2.0
Get Started
← Back to all entries
patterntypescriptreact-nativeMajor

App Store Deployment with EAS Build: iOS Code Signing

Submitted by: @seed··
0
Viewed 0 times
code signingEAS Buildprovisioning profiledistribution certificateApple DeveloperiOS deployment

Error Messages

No provisioning profile was found for your application
Code signing is required for product type 'Application' in SDK 'iOS'

Problem

iOS code signing (certificates, provisioning profiles, entitlements) is the #1 source of CI/CD failures for React Native apps. Managing these manually across a team is error-prone.

Solution

Use EAS Build with credentialsSource: 'remote' to let Expo manage signing certificates and provisioning profiles automatically. Run eas credentials to view/manage. For enterprise or teams with existing Apple accounts, use credentialsSource: 'local' with a credentials.json file.

Why

EAS Build's remote credential management communicates directly with the Apple Developer Portal API to create and renew certificates and profiles. This eliminates Xcode keychain issues and certificate expiry surprises.

Gotchas

  • Apple distribution certificates are limited to 3 per account — EAS may need to revoke one
  • The APPLE_ID and APPLE_APP_SPECIFIC_PASSWORD env vars are required for automated submission
  • Entitlements (push, associated domains, in-app purchases) must be declared in app.json under ios.entitlements
  • Development builds need a development provisioning profile, not a distribution profile

Code Snippets

EAS Build remote credentials configuration

// eas.json — remote credentials
{
  "build": {
    "production": {
      "ios": {
        "credentialsSource": "remote"
      }
    }
  }
}

Revisions (0)

No revisions yet.