Can I use xcodebuild to build an archive without signing it with xcode?

I am building an IOS app for another company.


I was using xcode 7 and was able to use xcodebuild to build an unsigned archive which I was able to give to the customer who would then use it to generate their app signed with their own id.


It seems that with xcode 9 I now need to sign the archive. I think I could still do this with wild card developer id but the problem is that the app has group entitlements which are not allowed in wildcard ids.


I do not want to have to have customers provide me with their codesigning certificates and provisioning files.


This is the command line I use to use as part of a script run by Jenkins:


xcodebuild archive -project <my_project> -scheme <my_sheme> -configuration Release -archivePath <my_archive_path>  OTHER_CODE_SIGN_FLAGS='--keychain /Users/me/Library/Keychains/Buildsystem' CODE_SIGN_ENTITLEMENTS=/Users/me/entitlements.plist CODE_SIGN_IDENTITY= CODE_SIGNING_REQUIRED=NO  HEADERMAP_INCLUDES_PROJECT_HEADERS=NO USE_HEADERMAP=NO


The provisioning file I was using was a developers wild card provisioning file. If I do the following:

xcodebuild archive -project <my_project> -scheme <my_sheme> -configuration Release -archivePath <my_archive_path>  OTHER_CODE_SIGN_FLAGS='--keychain /Users/me/Library/Keychains/Buildsystem' CODE_SIGN_ENTITLEMENTS=/Users/me/entitlements.plist CODE_SIGN_STYLE=Manual DEVELOPMENT_TEAM=<My_dev_id>  CODE_SIGN_IDENTITY="iPhone Developer"  HEADERMAP_INCLUDES_PROJECT_HEADERS=NO USE_HEADERMAP=NO


I will get an error:

Check dependencies
Code Signing Error: Provisioning profile "Developer" doesn't include the com.apple.security.application-groups entitlement.
Code Signing Error: Code signing is required for product type 'Application' in SDK 'iOS 11.2'



Is there a way to build an archive for a customer with out having to have them supply me with their provisioning file and codesigning credentials?

Replies

Hi BarryLeslie,


Did you able to find some soluton for your broblem, I am also facing same issue?


Thanks

There is no way of avoiding having to access the customers provisioning file.


You need to have the customer setup their own account and add you as a team member. You then generate your own code signing certificate for their account and then they generate a development provisioning file containing your certificate.


You can then build the archive using your developer certificate and a development provisioning file.


The customer then takes the archive and excport it or upload it to iTunes using their own certificate.


Hope this helps.