Ios-moe gradle plugin 1.4.1 and xcode 9.x - Locating signing assets failed

I upgraded to Xcode 9.x and cannot longer sign a libGDX application which worked fine using Xcode 8.x

I get this error:

###########
# ERROR LOG
###########


2018-02-07 16:58:40.132 xcodebuild[13654:131781] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/m0/mc2v3k1d16b5ftc1n59dmgz40000gn/T/ios-moe_2018-02-07_16-58-40.130.xcdistributionlogs'.
2018-02-07 17:00:14.681 xcodebuild[13654:131781] [MT] IDEDistribution: Step failed: <IDEDistributionSigningAssetsStep: 0x7fb6c6b2bdb0>: Error Domain=IDEDistributionSigningAssetStepErrorDomain Code=0 "Locating signing assets failed." UserInfo={NSLocalizedDescription=Locating signing assets failed., IDEDistributionSigningAssetStepUnderlyingErrors=(
    "Error Domain=IDEProfileLocatorErrorDomain Code=1 "No profiles for 'com.mydomain.appname' were found" UserInfo={NSLocalizedDescription=No profiles for 'com.mydomain.appname' were found, NSLocalizedRecoverySuggestion=Xcode couldn't find any iOS App Store provisioning profiles matching 'com.mydomain.appname'. Automatic signing is disabled and unable to generate a profile. To enable automatic signing, pass -allowProvisioningUpdates to xcodebuild.}"
)}
error: exportArchive: No profiles for 'com.mydomain.appname' were found

Error Domain=IDEProfileLocatorErrorDomain Code=1 "No profiles for 'com.mydomain.appname' were found" UserInfo={NSLocalizedDescription=No profiles for 'com.mydomain.appname' were found, NSLocalizedRecoverySuggestion=Xcode couldn't find any iOS App Store provisioning profiles matching 'com.mydomain.appname'. Automatic signing is disabled and unable to generate a profile. To enable automatic signing, pass -allowProvisioningUpdates to xcodebuild.}

I am using the gradle task moeIpaBuild which does not allow me to add parameter -allowProvisioningUpdates. Is it somehow possible?

Any solutions besides going back to Xcode 8.3?

I’m on MOE SDK 1.4.2 and gradle plugin 1.4.3 with Xcode 9.1 and I’m able to build a LibGDX app (gdx version 1.9.6) with moeIpaBuild, so it’s definitely possible.

Note that I’m letting Xcode manage the signing for me (at least for Development) and then I re-sign it with my Distribution profile of choice with xcodebuild -exportArchive. Have successfully built and submitted a LibGDX app to the App Store with this method.

I guess the first thing to try is to update your SDK and plugin, and probably run the moeUpdateXcodeSettings gradle task after updating everything.

Use automatic signing in your xcode project or try this.

I got it running. Looks like it was a very rare bug with xcode and/or moe-gradle-plugin.

This is what I did.

  1. I created a fresh libGDX 1.9.8 project and run ./gradlew moeIpaBuild

I got the same error as above.

  1. I run ./gradlew moeIpaBuild --info to get more info about the subtasks which get called

Turns out the last task producing the error was causes by this subtask:

Starting process ‘command ‘xcrun’’. Working directory: /Users/tom/development/game/ios-moe Command: xcrun xcodebuild -exportArchive -archivePath /Users/tom/development/game/ios-moe/build/archive.xcarchive -exportPath /Users/tom/development/game/ios-moe/build -exportOptionsPlist /Users/tom/development/game/ios-moe/build/moe/export_options.plist\

  1. I manually run the command above adding -allowProvisioningUpdates to the end.

xcodebuild -exportArchive -archivePath /Users/tom/development/game/ios-moe/build/archive.xcarchive -exportPath /Users/tom/development/game/ios-moe/build -exportOptionsPlist /Users/tom/development/game/ios-moe/build/moe/export_options.plist -allowProvisioningUpdates

This time the task got executed.

Now comes the fun part. I run ./gradlew moeIpaBuild in my main project and this time everything worked. Kinda looks like a system/xcode-wide flag is now set and things work as expected.