Search code examples
iosprovisioning-profileazure-pipelinesxcodebuild

How to run the xcodebuild command on multiple projects, but apply different signing rules to each


The Xcode command I'm running is as follows:

xcodebuild -sdk iphoneos -configuration Release -workspace ***.xcworkspace -scheme TPE-Stage build CODE_SIGN_STYLE=Manual CODE_SIGN_IDENTITY=\*\*\*IDENTITY HERE\*\*\* PROVISIONING_PROFILE=\*\*\*UUID HERE\*\*\* PROVISIONING_PROFILE_SPECIFIER=

Which seems to fail, because it's signing all projects in the workspace and I get this error for one of the cocoapods being signed:

Code Signing Error: JSONUtilities-iOS9.0 does not support provisioning profiles.

I require it to not sign 2 of the projects (cocoapods and frameworks), but to sign the final one. I've tried to separate them out into multiple commands that I run, but because of dependencies it doesn't like that either.

How can I do this?


Solution

  • After several hours more searching I found the answer! @Ben Flynn supplied the answer here:

    https://stackoverflow.com/a/39901677/3825136

    Adding CODE_SIGNING_ALLOWED="NO"; inside the project file to the build targets that were complaining did the trick.