Fastlane Match: manually updating the git repo
There have been a couple of times where I wanted to replace a signing certificate in use with one of our apps.
For example, a certificate is expiring soon, and I want to create a new one and seamlessly transfer to the new certificate without orphaning app installs still using the old certificate.
Your only option via fastlane is to fastlane nuke and start over. But this removes everything, and invalidates the signing of your existing installed apps. [To be fair, this is only for enterprise deployments, i.e. non-app store.]
After creating a new certificate and provisioning profile pair in the Apple Developer Portal, you can then follow the steps below to get them in the match git repo so they will get picked up by fastlane match, while the old certificate and profile are still valid on the Developer Portal.
- Run
irbin the terminal, followed by these commands: require 'match'git_url = '<github url>'workspace = Match::GitHelper.clone(git_url, false)- Open the workspace directory reported by the previous command in Finder.
- In the
certsfolder, replace the.cerand.p12files with the new versions. - In the
profilesfolder, replace the provisioning profile. - Back in the
irbconsole, runMatch::GitHelper.commit_changes(workspace, "manual profile update", git_url)
That's it.