Discrepancy in certificate common name for macOS App Signing #2650
-
If you are looking for help, please confirm the following...
Which mobile framework are you using?Flutter (Dart) Steps to reproduceI followed the instructions from this documentation with the Automatic signature system to create a MacOS app with Flutter, just to test Code Magic and its integration. In the conclusion, there is this code: # Find the installer certificate common name in keychain
INSTALLER_CERT_NAME=$(keychain list-certificates \
| jq '.[]
| select(.common_name
| contains("Mac Developer Installer"))
| .common_name' \
| xargs) This means that the Here is the result of the > keychain list-certificates | jq
[
{
"common_name": "Apple Distribution: Vincent Herlemont (...)",
"extensions": [
"basicConstraints",
"authorityKeyIdentifier",
"authorityInfoAccess",
"certificatePolicies",
"extendedKeyUsage",
"subjectKeyIdentifier",
"keyUsage",
"Unknown OID",
"Unknown OID"
],
"has_expired": false,
"is_development_certificate": false,
"issuer": {
"C": "US",
"CN": "Apple Worldwide Developer Relations Certification Authority",
"O": "Apple Inc.",
"OU": "G3"
},
"not_after": "...",
"not_before": "...",
"serial": ...,
"subject": {
"C": "US",
"CN": "Apple Distribution: Vincent Herlemont (...)",
"O": "Vincent Herlemont",
"OU": "...",
"UID": "..."
}
}
] We see that the Expected resultsThe env varibles Actual resultsThe CI fail: The env varibles Build id (optional)66a2849f89f6667f00c441e1 |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments
-
If I use the productsign: error: Could not find appropriate signing identity for “Apple Distribution: Vincent Herlemont (...)”. An installer signing identity (not an application signing identity) is required for signing flat-style products. Do you have any suggestions? Related thread: https://stackoverflow.com/a/69048270 / https://forums.developer.apple.com/forums/thread/665901: The solution found there is to add the "3rd Party Mac Developer Installer" certificate. However, this should be added automatically by Code Magic with the use of the Build ID: 66a39fa8dd251d2f0281a449 |
Beta Was this translation helpful? Give feedback.
-
For previous posts, I generated the
When this documentation says that this new private key will be used to create the new "Mac App Distribution certificate," we agree that it's automatic, right? Because the following line given in your example seems to create the certificates (I found the detailed documentation here cli-tools/app-store-connect/certificates/create):
However, this does not seem to work correctly because the certificates created are "Enterprise Distribution Certificates" and not "Mac Installer Distribution Certificates." How is this possible? Do you have any leads? |
Beta Was this translation helpful? Give feedback.
-
Note: Resolved over Intercom chat There were two concerns:
Answer: The distribution certificate was created due to the command
Answer: The command |
Beta Was this translation helpful? Give feedback.
Note: Resolved over Intercom chat
There were two concerns:
Answer: The distribution certificate was created due to the command
app-store-connect fetch-signing-files "$BUNDLE_ID" --platform MAC_OS --type MAC_APP_STORE --create
in the previous step.Answer: The command
app-store-connect certificates list --type MAC_INSTALLER_DISTRIBUTION --save
exits with a successful status code 0 even if no certificates were found for the given private key. As a result, the subsequent commandapp-store-connect certificates create …