I've configured an CI/CD environment using Github Actions to build and deploy Apps automatically.
But since Github has updated the runner, I get the error Provisioning profile "foo" doesn't include the currently selected device "Mac-1719908638417.local" (identifier FOOO-BAAAAAAAAR).
After looking for a solution on web, I found nothing that works.
The only way I have today is to add the identifier used by runner in the Provisioning Profile but this task is tedious because each times new UUID is used by the runner.
So, there is a way to avoid this behavior ?
Maybe to use a fixed UUID, or use an identified selected device for the build, or another thing...
So, after a long analysis of this issue, I identified that's from macos-13 runner, when xcodebuild
is run, the list of platform starts with :
{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
Since macos-14 runner, the list starts with :
{ platform:macOS, arch:arm64, variant:Designed for [iPad,iPhone], id:0000FE00-72C76CA0FC1D03E0, name:My Mac }
{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
So with macos 14 and later, xcode trye to build dependancies for the first platform, `macOS`.
I fix my issue by adding -destination "generic/platform=iOS"
to xcodebuild
command line.
But this add implies to install iOS Distribution certificates, not Apple Distribution certificates. (I don't find any solution to use Apple Distribution certificates)