MicrosoftDocs / appcenter-docs

content repo for Visual Studio App Center on docs.microsoft.com
https://docs.microsoft.com/appcenter/
Creative Commons Attribution 4.0 International
122 stars 321 forks source link

Apps with extension target(s) have additional provisioning profiles required for build #55

Closed ghost closed 6 years ago

ghost commented 6 years ago

My app has an extension target therefore I need to upload an additional provisioning profile for a build to succeed. Currently the UI for creating a build configuration only allows uploading a single provisioning profile. To overcome this I'm using a post-clone script that copies the mobile provisioning profile from the working directory to ~/Library/MobileDevice/Provisioning\ Profiles.


Document Details

Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

siminapasat commented 6 years ago

Hey @antonys1, this is great feedback! We currently don't support building extensions, though this is on our roadmap. I'd love to help other users with your workaround - using a post-clone script. Would you be open on submitting your script sample in this public repository where we collect useful scripts in App Center? https://github.com/microsoft/appcenter-build-scripts-examples

Thanks!

sivakumar-cf commented 6 years ago

I tried to copied all provisioning profiles from ~/Library/MobileDevice/Provisioning\ Profiles/ into project repo folder ios/Provision, and then I added this command into pst-clone-scrpit cp -f -v ios/Provision/*.mobileprovision ~/Library/MobileDevice/Provisioning\ Profiles/ Still not working, throwing code signing required for App extensions. Kindly help.

jwargo commented 6 years ago

@sivakumar-cf The comments feature of our documentation is intended to enable customers to suggest changes to the docs or ask clarifying questions about the docs.

App Center support is provided directly from within the App Center portal. Any time you need help, just click the blue chat button in the lower-right corner of any page and our dedicated support team will respond. For additional information, see the [App Center Help Center] (https://intercom.help/appcenter/getting-started/welcome-to-app-center-support).

macrozone commented 6 years ago

would also be interested for that feature. https://onesignal.com/ uses (an optional, but recommended) app extension. If you just follow the installation instructions, you will likely have that. It would be great, if appcenter would support this or provide a good workaround (in form of a script)

AndrewHenderson commented 6 years ago

To overcome this I'm using a post-clone script that copies the mobile provisioning profile from the working directory to ~/Library/MobileDevice/Provisioning\ Profiles.

@antonys1 I'm experiencing the same issue. Would you mind sharing the code and how you set this up in App Center?

ghost commented 6 years ago

@AndrewHenderson see https://docs.microsoft.com/en-us/appcenter/build/custom/scripts/

Put the following shell script code in a file named appcenter-post-clone.sh, replacing the path to the provisioning profile.

#!/usr/bin/env bash
cp ../Provisioning\ Profiles/My_App_Extension.mobileprovision ~/Library/MobileDevice/Provisioning\ Profiles
AndrewHenderson commented 6 years ago

@antonys1 I've successfully copied my share extension's provisioning file to that directory on the App Center server, yet I still receive the following error:

Code Signing Error: No profiles for 'com.XXX.XXX.share' were found:  Xcode couldn't find any iOS App Development provisioning profiles matching 'com.XXX.XXX.share'. Automatic signing is disabled and unable to generate a profile. To enable automatic signing, pass -allowProvisioningUpdates to xcodebuild.

I've asked App Center support if it's possible to pass -allowProvisioningUpdates to the share extension build, but was told by support engineer he doesn't know of a way to do this.

steverob commented 6 years ago

@AndrewHenderson Do I need to upload a provisioning profile with name same as that of the extension or can I just copy the main provisioning profile into the directory you've specified?

AndrewHenderson commented 6 years ago

@steverob I gave up and switched to Bitrise. I like it much better. Plus, it's works with React Native and a share extension. You can upload as many provisioning profiles as you need. They have a boilerplate config that takes care of just about everything, shy of the share extension part–that you have to manually upload the provisioning profile for.

nilofer commented 6 years ago

Hi @steverob @AndrewHenderson, we are currently working on iOS Extension support as seen on our roadmap. You'll be able to upload your provisioning profiles for each extension and sign your full app.

nick-gudumac commented 6 years ago

Hi @steverob @AndrewHenderson, we are currently working on iOS Extension support as seen on our roadmap. You'll be able to upload your provisioning profiles for each extension and sign your full app.

thank you for this! Any ETA on this feature? It's currently blocking the adoption of this tool for our company. Would love to see this added in App center.

plsgard commented 5 years ago

It has been added to the AppCenter changelog the november 19th but I can't find any way to add multiple provisioning files in Build configuration :

Build support for iOS App Extensions. Configure, build, and sign an iOS app with app extensions. Build and ship robust iOS apps with various app extensions.

Is there anybody who has succeeded to upload multiple provisioning files ? @nrajpurkar, any help ?

I specify that i'm using Xamarin iOS. Is it only available for iOS, not Xamarin ?

nilofer commented 5 years ago

@plsgard Hi there, we do not have support for Xamarin iOS app extensions at this time. Support on November 19th was released for Swift/Obj-C and React Native apps.

plsgard commented 5 years ago

@plsgard Hi there, we do not have support for Xamarin iOS app extensions at this time. Support on November 19th was released for Swift/Obj-C and React Native apps.

Thanks for your answer. Do you work on it ? Is there any ETA ?

jwargo commented 5 years ago

@plsgard I updated the docs (changelog and roadmap) to indicate it's just Swift, Objective-C and React Native. There is no ETA at this time for Xamarin support.

plsgard commented 5 years ago

Thanks @jwargo.

I chatted with a support guy (Manigandan) on AppCenter chat in order to get more informations. He told that the Xamarin Support is in your backlog - sounds good - but, as you said, there is no ETA. However he provided me an interesting workaround.

So for those who want to build and deploy Xamarin iOS extension, you can use Azure Pipelines - I think it is the platform used behind AppCenter build, isn't it?

You can create a Xamarin iOS build in one click with a MS template. This template does everything that AppCenter does. image

screenshot 2018-12-01 at 16 22 51

That is interesting is that you can edit it to add copy "Install an Apple provisioning file" task to install your app extension provisioning file. And you can directly connect the build to a distribution group in AppCenter (the last task in template).

Note that you have to re-implement the build auto increment with a task. I did that with a bash script like : https://gist.github.com/sekati/3172554#file-xcode-build-bump-sh And if you want to use the last commit message as Release notes, like in AppCenter build, you can provide the $(Build.SourceVersionMessage) variable in the distribute task filling the Release notes field.

Hope that can help someone waiting for the AppCenter Xamarin support.

jwargo commented 5 years ago

@plsgard thanks, I'll see if I can get that worked into the docs. @nrajpurkar

manb-msft commented 5 years ago

@jwargo I'm wondering if this is better posted as a Guest article in the Azure DevOps Blog https://blogs.msdn.microsoft.com/devops/?tag=CI,CD,Release%20Management

@chrisrpatterson I can get this created like a Tutorial to add under Azure DevOps blog, thoughts?

eclipsed4utoo commented 5 years ago

It's been almost 5 months. Is there an ETA on this? How does native iOS and React Native get support, but not Microsoft's own technology?

jwargo commented 5 years ago

@eclipsed4utoo if you want this feature, vote for it: https://github.com/Microsoft/appcenter/issues/30

nilofer commented 5 years ago

@eclipsed4utoo No ETA at the moment, but we are tracking this issue. We've had our plate full with other work and haven't been able to get to this yet.

eclipsed4utoo commented 5 years ago

Voted, or liked and commented...hopefully that counts for a vote.

In the mean time, I guess I'll start using Bitrise.

wsrzx commented 5 years ago

@knicholasa There an ETA on this?

nilofer commented 5 years ago

@willbuildapps, we're in the middle of adding in support for connecting to GitLab in Build at the moment, but we'll be taking a look into design for Xamarin.iOS extension support soon after that wraps up.

meliheran commented 5 years ago

Still waiting for the Xamarin.IOS extension provisioning file support !?

nilofer commented 5 years ago

@meliheran we haven't been able to get to this yet as other work is prioritized above this. I understand that this is an important feature request for Xamarin.iOS apps and we're taking that into account as we look at future priorities.

bo3po commented 5 years ago

Also need this ... and am still waiting for the Xamarin.IOS extension provisioning file support like @meliheran ... any workarounds that work ? I have tried the one mentioned here. But it did'nt work.

nilofer commented 5 years ago

Hi @bo3po, we're working on support for Xamarin.iOS extensions in this month's iteration plan.

bo3po commented 5 years ago

Hi @nrajpurkar - that is VERY good news. Very good indeed. Looking forward to try it out...

bo3po commented 5 years ago

It's working now... GREAT 👍

Sidd27 commented 3 years ago

How do I achieve this I had to add different provisioning profile for Notification Service Extension

Sidd27 commented 3 years ago

So Anyone who is still searching please find the below document https://devblogs.microsoft.com/appcenter/announcing-ios-app-extension-and-watchos-support-in-visual-studio-app-center/