Provisioning Profile installed, but missing

Description of the issue

I’m trying to deploy my app to AppStore & PlayStore. I’m using fastlane-match for signing profile, and the step ends without problem and with a successfully message. But in the next step, the cordova-achive says I’m missing the provisioning profile.

I’m using fastlane match (fastlane-match@0.1.0) for signing profile, the step ends successfully

[14:32:52]: All required keys, certificates and provisioning profiles are installed 🙌
Success

But, the next step cordova-achirve (cordova-archive@1.0.1) can’t find the provisioning profile, throw an error and ends like this:

2018-01-11 14:34:47.820 xcodebuild[6746:20396] [MT] IDEDistribution: Step failed: <IDEDistributionSigningAssetsStep: 0x7fa1aefa8070>: Error Domain=IDEDistributionSigningAssetStepErrorDomain Code=0 "Locating signing assets failed." UserInfo={NSLocalizedDescription=Locating signing assets failed., IDEDistributionSigningAssetStepUnderlyingErrors=(
    "Error Domain=IDEProvisioningErrorDomain Code=9 \"\"Cloudponics.app\" requires a provisioning profile.\" UserInfo={NSLocalizedDescription=\"Cloudponics.app\" requires a provisioning profile., NSLocalizedRecoverySuggestion=Add a profile to the \"provisioningProfiles\" dictionary in your Export Options property list.}"
)}
error: exportArchive: "Cloudponics.app" requires a provisioning profile.
Error Domain=IDEProvisioningErrorDomain Code=9 ""Cloudponics.app" requires a provisioning profile." UserInfo={NSLocalizedDescription="Cloudponics.app" requires a provisioning profile., NSLocalizedRecoverySuggestion=Add a profile to the "provisioningProfiles" dictionary in your Export Options property list.}
** EXPORT FAILED **
Error: Error code 70 for command: xcodebuild with args: -exportArchive,-archivePath,Cloudponics.xcarchive,-exportOptionsPlist,/Users/vagrant/git/platforms/ios/exportOptions.plist,-exportPath,/Users/vagrant/git/platforms/ios/build/device
cordova failed, error: exit status 1

Environment:

Where did the issue happen?

Xamarin, Visual Studio for Mac, Stable channel, on macOS, a.k.a.: osX - vs4mac - stable
details: bitrise.io/osx-vs4mac-stable.log at master · bitrise-io/bitrise.io · GitHub

Which build Step causes the issue and which version of the step?

cordova-archive@1.0.1

Reproducibility

  • Rebuild doesn’t work, even without cache.
  • It happens every time
  • It’s in the latest version
  • After include iOS in the build. It use to work when I was working only with Android

Local reproduction

I can’t reproduce local

Build log

Hi @pl-joseglego,

All that means is that the signing files you have in your match repo were installed. It does not mean that all required signing files are present. Match itself does not check anything, it just installs the Cert & Profiles you store in its repo.

This exactly means that you either don’t have the required export (App Store) prov profile & cert in your match repo, or that you did not specify which one should be used in your Cordova build.json.

You can either generate the build.json yourself (https://cordova.apache.org/docs/en/latest/guide/platforms/ios/#using-buildjson) and e.g. store it in your repository or alternatively you can use our Generate cordova build configuration to let it generate the build.json for you, based on the inputs you provide.

In either case I’d suggest you to run the build locally with our CLI to check that the build config is correct (How to experiment with Bitrise configs locally, on your Mac/Linux).

If you’d have any questions just let us know! :slight_smile:

Hi @viktorbenei,

You’re right it could be related to a missing cert or profile in my repo. And it’s totally possible. But it wasn’t the case.

We found a lot of people with the similar problem
http://ioscake.com/after-upgrading-to-xcode-9-cordova-app-wont-build-error-70-requires-provisioning-profile.html

So, we ran again, but we move to another stack :
Hybrid stack, with both Android tools and Xcode 8
details: https://github.com/bitrise-io/bitrise.io/blob/master/system_reports/osx-xamarin-stable.log

And it works :smiley:

Thanks!

Ahh, indeed, I believe Cordova has issues with Xcode 9 (code signing config changes introduced in Xcode 9 were not supported initially) and you most likely used an Xcode 9 stack initially, then switch to an Xcode 8 stack.

AFAIK Cordova should work with Xcode 9 just fine but the code signing config requires some tweaking / changing due to the related changes introduced in Xcode 9 (requires more info for code signing, the same params which worked with Xcode 8 usually don’t work with Xcode 9…).

Anyway, happy to hear you found a solution - let us know if you’d have any questions! :wink:
Happy Building!