Basic info + Prerequisities
- It is assumed that the app is already prepared - Prepare app for 1st release
- There are infinite options how to setup CI, this tutorial showcases just one example based on Matee DevStack
- It consists from the fastlane configuration and runs via GitHub Actions on self-hosted runners (most common setup for our projects)
- If the project requires something else you have to adjust the setup by yourself (just UTFG 🙃)
1) Create a Development certificate
- For its simplicity we are usually using Xcode Cloud Signing for CI builds - we partially sign the build with a Development certificate and Xcode Cloud Signing then completes the signing for Distribution, you can find more details in this WWDC session
- In CI environment you can get a clean instance for every build, therefore we have to create and store the Development certificate in the repository
- Open Keychain Access on your Mac and go to Certificate Assistant - Request a Certificate From a Certificate Authority

- Fill in the request and save the CertificateSigningRequest somewhere.
- It doesn't matter what information you fill in, but for consistency prefer
Matee Fastlane
/ [email protected]

- Go to the Apple Developer portal and create a new Apple Development certificate
- You will have to upload the previously created CertificateSigningRequest, after that download the newly created certificate


- Import the downloaded
.cer
to the Keychain Access by double click
- Find the certificate in the Keychain Access (sort by expiration) and export its
.p12
by right click and selecting Export
