Development certificate not being recognized in archive step

Description of the issue

Build continues to try and use the iOS Distribution certificate, ‘tbltop’, even though development is selected for archiving. ‘crazycabo350’ is the development certificate. The same error displays in the logs an exorbitant number of times.

This occurred immediately after updating my project to use Xcode 9 and Swift 3.2. The last successful build was #269. I got so frustrated I recreated both profiles and certificates and updated the project to reflect them, with no success

Environment:

Where did the issue happen?

Xcode 9.0.x, on macOS 10.12 (Sierra)

Which build Step causes the issue and which version of the step?

Xcode Archive v2.3.1

Reproducibility

  • Does a “Rebuild” help? (You can trigger a rebuild from the Build’s page, by clicking the “Rebuild” button in the top right corner of a finished build) : NO
  • Does a rebuild without caches help? (You can remove the Cache:Pull and Cache:Push steps temporarily to not to use the cache, or you can delete all the caches on the Settings tab of the app. : NO
  • If you have multiple different build configurations (workflows), does the issue affect all/more than one? : NO
  • If it’s an issue which happens sporadically, what’s the frequency? (e.g. Once a day ; about x% of the builds) : 100%
  • Does upgrading the build Step to the latest version help? : NO
  • When did the issue start? : After I updated the project to use Swift 3.2 and Xcode 9.

Build log

https://www.dropbox.com/s/1dpl8v8nkn58mn8/53342b40abb6faba.log?dl=0

Hi, thanks for the report!
Until we release a new version of the step, please use this workaround: Xcode 9 GM - Failed to create target code sign properties mapping, error

The following plist content is what I added to the archive step.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>compileBitcode</key>
	<true/>
	<key>method</key>
	<string>development</string>
	<key>provisioningProfiles</key>
	<dict>
		<key>com.ingendevelopment.tbltop</key>
		<string>crazycabo350</string>
	</dict>
	<key>signingCertificate</key>
	<string>iPhone Developer</string>
	<key>signingStyle</key>
	<string>manual</string>
	<key>stripSwiftSymbols</key>
	<true/>
	<key>teamID</key>
	<string>29BRZ6F7VD</string>
	<key>thinning</key>
	<string>iPhone9,1</string>
</dict>
</plist>

The following error still displays.

error: exportArchive: No signing certificate "iOS Development" found

When I try to change the name to “iOS Development” I get a different error.

error: exportArchive: No certificate for team '29BRZ6F7VD' matching 'iOS Development' found

I’m not sure what’s happening as the correct certificate is available.

In the mentioned workaround you should configure the ipa export on your local machine, the way you want to export an ipa on bitrise, so please do not change the content of the export options plist, instead generate a new one on your local machine with the desired options.

However in the attached exportOptions.plist you want to export your ipa with development certificate, but based on the log you attached in your first message you did not provided ios development certificate with team 29BRZ6F7VD.

I finally figured out my mistake. Instead of exporting the development certificate from my keychain, I attempted to use the certificate I created to sign the others from within the Apple Development portal. The file names I chose also matched each other, with exacerbated my confusion. :upside_down_face:

1 Like

@crazycabo thanks for the infos, i hope your builds are working fine now.

1 Like

Hi @crazycabo

I am facing the same issue, can you please elaborate whats the string crazycabo350 in provision Profiles. Is it name of the provision profile

 
 <dict>
 	<key>com.ingendevelopment.tbltop</key>
 	<string>crazycabo350</string>
 </dict>