Skip to content

Renewing release certificates

Jiří Zdvomka edited this page Mar 16, 2021 · 5 revisions

AppStore release certificates and provisioning profiles are only valid for a year, therefore the must be renewed every year. There is no automatic Continues Delivery configured so the renewal has to be done manually.

Remove old certificate and provisioning profiles

  1. Go to the list of certificates in Apple Developer Portal, click the expired certificate and revoke it.
  2. Also remove expired Apple Push Services certificate for cz.cvut.fit.grades app ID.
  3. Go to the list of provisioning profiles and remove expired profiles for Grades and Grades Notification Extension.

Add new certificate

  1. Click on + button at the list of certificates in Apple Developer Portal
  2. Chose Apple Distribution
  3. Upload Certificate Signing Request
  4. Download your certificate and add it to Keychain (otherwise signing the app locally in XCode will not work).

Create a new certificate for notification server

The notification server also needs a new certificate for authenticating with Apple Push Notification Service.

  1. Click on + button at the list of certificates.
  2. Chose Apple Push Notification service SSL (Sandbox & Production)
  3. Select cz.cvut.fit.grades
  4. Upload Certificate Signing Request
  5. Download the certificate and export it to .p12 file with password
  6. Deploy the certificate to the notification server (see its docs).

Add new provisioning profiles

  1. Go to the list of provisioning profiles and click + button.
  2. Chose AppStore
  3. Select Grades App ID
  4. Select Distribution certificate (not iOS Distribution)
  5. Name the certificate Grades - AppStore
  6. Download it

Repeat the same and create another certificate, but in step 2. choose Grades Notification Extension

Add new provisioning profiles to the app in XCode

  1. Open the Grades project in XCode
  2. Select Release scheme at the top of XCode
  3. Click on project root in file navigator on the left
  4. Select Signing & Capabilities
  5. Click Grades target and under Signing -> Provisioning Profile import the new certificate Grades - AppStore.
  6. Click GradesNotificationExtension target and import the certificate for the notification extension with the same process.
  7. Increase minor app version in General tab for both Grades and GradesNotificationExtension targets, commit and push the changes.
  8. Archive the app, upload it to App Store Connect and publish a new version.
Clone this wiki locally