I'm new to DevOps so please go easy on me if I've missed something basic :)
I’m using the following in Azure Pipelines: Hosted MacOS with an Xcode Build Agent (Xcode Version 5.142.0)
I've just started trying to set up a pipeline for an Xcode based project which uses multiple provisioning profiles. In my scenario I have profiles for the following in my app:
- Intents
- ItentsUI
- Widget
- App
I've followed the instructions for setting up certs and provisioning profiles here (although my project uses automatic signing): https://docs.microsoft.com/en-us/azure/devops/pipelines/apps/mobile/app-signing?view=vsts&tabs=apple-install-during-build
These are being installed correctly to a hosted build agent (no errors) and the build is proceeding perfectly until signing.
During signing it seems that the none of the targets can find their provisioning profiles (both when using 'manual' and 'automatic' assignment).
Here's what is run in the logs:
[command]/usr/bin/xcodebuild -workspace /Users/vsts/agent/2.142.1/work/1/s/*MYAPP**.xcworkspace -scheme **MYAPP** archive -sdk iphoneos -configuration Release -archivePath /Users/vsts/agent/2.142.1/work/1/s/**MYAPP** CODE_SIGN_STYLE=Manual PROVISIONING_PROFILE= PROVISIONING_PROFILE_SPECIFIER= | /usr/local/bin/xcpretty --no-color
Then later when it comes to archiving the following occurs for each scheme:
error: "xxx Today Widget" requires a provisioning profile with the Push Notifications and App Groups features. Select a provisioning profile for the "Release" build configuration in the project editor. (in target 'xxx Today Widget')
A few questions:
Is there an updated guide anyone can point me to? This seems like a common use case and I'm obviously missing something.
Alternatively is there a way to force which profile gets used for which scheme when archiving and signing multiple schemes in the same build?
Is automatic signing an option in pipelines?
For completeness I've seen what looks like a somewhat similar issue here: https://github.com/Microsoft/azure-pipelines-tasks/issues/964 but it's been closed for more than two years.