Skip to content

Commit 0fd4e57

Browse files
authored
Filter developement certificates better (#281)
1 parent f85927a commit 0fd4e57

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

autocodesign/certificates.go

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -122,10 +122,9 @@ func matchLocalToAPICertificates(client DevPortalClient, localCertificates []cer
122122
log.Warnf("Certificate (%s) not found on Developer Portal: %s", localCert, err)
123123
continue
124124
}
125-
cert.CertificateInfo = localCert
126125

126+
cert.CertificateInfo = localCert
127127
log.Debugf("Certificate (%s) found with ID: %s", localCert, cert.ID)
128-
129128
matchingCertificates = append(matchingCertificates, cert)
130129
}
131130

@@ -156,7 +155,7 @@ func filterCertificates(certificates []certificateutil.CertificateInfoModel, cer
156155
for _, certificate := range certificates {
157156
if certificateType == appstoreconnect.IOSDistribution && isDistributionCertificate(certificate) {
158157
filteredCertificates = append(filteredCertificates, certificate)
159-
} else if certificateType == appstoreconnect.IOSDevelopment && !isDistributionCertificate(certificate) {
158+
} else if certificateType == appstoreconnect.IOSDevelopment && isDevelopmentCertificate(certificate) {
160159
filteredCertificates = append(filteredCertificates, certificate)
161160
}
162161
}
@@ -178,6 +177,12 @@ func filterCertificates(certificates []certificateutil.CertificateInfoModel, cer
178177
return filteredCertificates
179178
}
180179

180+
func isDevelopmentCertificate(cert certificateutil.CertificateInfoModel) bool {
181+
return strings.HasPrefix(strings.ToLower(cert.CommonName), strings.ToLower("Apple Development")) ||
182+
strings.HasPrefix(strings.ToLower(cert.CommonName), strings.ToLower("iPhone Developer")) ||
183+
strings.HasPrefix(strings.ToLower(cert.CommonName), strings.ToLower("iOS Developer"))
184+
}
185+
181186
func isDistributionCertificate(cert certificateutil.CertificateInfoModel) bool {
182187
// Apple certificate types: https://help.apple.com/xcode/mac/current/#/dev80c6204ec)
183188
return strings.HasPrefix(strings.ToLower(cert.CommonName), strings.ToLower("iPhone Distribution")) ||

0 commit comments

Comments
 (0)