Set Xcode auto signing to false and set provisioning profile and certificate with Fastlane match and gym
We are using Fusetools to build the application. Using the command uno build --target=ios --configuration=Release
, we create a new file myapp.xcodeproj
for the application.
When I open .xcodeproj
manually in Xcode IDE, I see a checkbox Automatically manage signing
. We then use Fastlane mapping to get the certificates and manually select the appstore certificate in Xcode. This all works great.
We are now trying to build this with a CI provider like Bitrise using a headless build process. Then everything stops at one point. our .xcodeproj
checkbox is checked Automatically manage signing
.
Our Fastfile looks like this:
`` `disable_automatic_code_signing (path:" ../myapp.xcodeproj ")
match(git_url: "git@github.com:MyRepo/match.git", app_identifier: "com.myapp.myapp", type: "appstore", readonly: true)
gym(
workspace: "myapp.xcworkspace",
scheme: "MyApp",
export_method: "app-store",
xcargs: "PROVISIONING_PROFILE_SPECIFIER='match AppStore com.myapp.myapp'"
)
``,
In ours Fastfile
we are trying to turn off auto signing first, in the gym we are trying to pass a parameter xcargs: "PROVISIONING_PROFILE_SPECIFIER='match AppStore com.myapp.myapp'"
to set the provisioning profile before building.
Then I get this from the CI Bitrise monitor:
Code signing is required for product type 'Application' in SDK 'iOS 10.3'
I can reproduce this if you run locally trying to set auto-signing to false and do the same.
Any idea?
source to share
xcargs: "PROVISIONING_PROFILE_SPECIFIER='match AppStore com.myapp.myapp'"
This approach no longer works as applications can have multiple targets. Instead, check out the Xcode Customization Guide , which describes that you can use matched-matched environment variables for each target profile's profile name parameter ๐
source to share