Skip to content

Add iOS/tvOS signing capability to Helix SDK (XHarness)#6823

Merged
premun merged 24 commits intodotnet:masterfrom
premun:prvysoky/iphones
Jan 27, 2021
Merged

Add iOS/tvOS signing capability to Helix SDK (XHarness)#6823
premun merged 24 commits intodotnet:masterfrom
premun:prvysoky/iphones

Conversation

@premun
Copy link
Copy Markdown
Member

@premun premun commented Jan 20, 2021

Adds the possibility to target real Apple devices and sign the applications before deploying them using XHarness.

The signing process requires certificates to be placed on each Helix machine in a KeyChain and a provisioning profile from netcorenativeassets that is embedded into the application.

Integration testing will be coming soon

Resolves https://github.com/dotnet/core-eng/issues/11678

Copy link
Copy Markdown
Member

@akoeplinger akoeplinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work! I left a few questions.

Comment thread src/Microsoft.DotNet.Helix/Sdk/tools/xharness-runner/Entitlements.template.plist Outdated
@premun
Copy link
Copy Markdown
Member Author

premun commented Jan 21, 2021

I will wait for this one before merging:
dotnet/xharness#424

…y/iphones

Conflicts:
	src/Microsoft.DotNet.Helix/Sdk/CreateXHarnessAppleWorkItems.cs
	src/Microsoft.DotNet.Helix/Sdk/tools/xharness-runner/XHarnessRunner.targets
@premun
Copy link
Copy Markdown
Member Author

premun commented Jan 26, 2021

Waiting for #6856 with this

Conflicts:
	src/Microsoft.DotNet.Helix/Sdk/CreateXHarnessAppleWorkItems.cs
	src/Microsoft.DotNet.Helix/Sdk/tools/xharness-runner/XHarnessRunner.targets
	src/Microsoft.DotNet.Helix/Sdk/tools/xharness-runner/xharness-runner.apple.sh
@premun premun requested a review from akoeplinger January 26, 2021 21:00
@premun
Copy link
Copy Markdown
Member Author

premun commented Jan 26, 2021

@akoeplinger together with the better uninstall, I was able to purge the iPhones in Helix from the old HelloiOS app. Originally - the installed app had more specific permissions and couldn't be overridden since we didn't uninstall after a failed install. And it wasn't uninstalled properly because it had Task.Delay(-1) and the jobs timed out and had no time left for the uninstall before 😅

I was able to re-deploy it using the entitlements created on-fly using the commands you have provided.
However, I had to change a lot of code since I also renamed ios to apple in the meantime.

I will try later with an app from Egor but this is ready for another review, if you would. Cheers!

@premun premun merged commit afd54cd into dotnet:master Jan 27, 2021
@premun premun deleted the prvysoky/iphones branch January 27, 2021 08:51
akoeplinger pushed a commit to akoeplinger/arcade that referenced this pull request Apr 12, 2021
Adds the possibility to target real Apple devices and sign the applications before deploying them using XHarness.

The signing process requires certificates to be placed on each Helix machine in a KeyChain and a provisioning profile from netcorenativeassets that is embedded into the application.

Integration testing will be coming soon

- The `OSX.1015.Amd64.Iphone.Open` queue is already populated with signing certificates and is ready to start signing
- The `OSX.1015.Amd64.AppleTV.Open` will be ready soon (dotnet#11675)

Resolves dotnet/core-eng#11678
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants