I've been using Fastlane to build, test, and distribute iOS apps for a few years now but I'm trying for the first time with a MacOS app.

For MacOS Apps, the certificates needed to sign the app for distribution are slightly different. Basically each MacOS app need 2 distribution certificates:

  • 1 for signing the app itself
  • 1 for signing the installer package the app will be bundled in.

After spending couple of days trying a number of things and looking at every doc and tutorial I can find, I still can't manage to get Fastlane Match to store the app-installer-distribution certificate in the certs repo for me so it can be installed automatically on the CI or when another teammate picks the app repo for example.

Note that after I gave up on Match because none of the "mac_installer_distribution" commands / arguments seemed to work. I eventually:

  • created the “Mac Installer Distribution” Certificate manually on the apple developer portal.
  • installed it manually in my keychain. And was able to get a successful Mac build of the app. But that's all done manually on my development build machine. I was unable to get Fastlane Match to automatically create this certificate for us or import it to our certs repo. So it is not in our Match certificates and provisioning profiles repo which makes it difficult for CI and team work.

Anybody know a way to do this? Is this / should it be a feature request to add this functionality to Fastlane Match?

1

There are 1 best solutions below

0
On

You can do this by passing additional_cert_types: "mac_installer_distribution" to match. E.g.

match(
      type: "appstore",
      additional_cert_types: "mac_installer_distribution"
    )