Skip to content

Conversation

premun
Copy link
Member

@premun premun commented Dec 13, 2021

Backport of XHarness related functionality of Helix SDK from main to the release/6.0 branch.

Fixes #8253
Related to https://github.com/dotnet/core-eng/issues/14888

Context

As part of the runtime-staging pipeline in dotnet/runtime, we run Apple and Android simulator tests. We also run device tests in the PR build of dotnet/arcade.
These tests are relying on the Helix on-prem infrastructure using the XHarness submodule of Helix SDK.
As we improve the SDK in how we work with the Apple/Android infrastructure, we make the test runs more resilient and careful with how we treat the simulators/devices.

Motivation

Last week, we have rotated Apple signing certificates in the Helix infrastructure which broke Arcade's release/6.0 PR build (see #8253).
This backport brings the latest shape of the XHarness related part of Helix SDK so that we can keep using the infrastructure from both main and release/6.0 branches.
It is probably easier to copy the whole XHarness functionality as there were no breaking changes and keep the branches in sync than to try fixing the issue only and diverging.

Bringing over all of the changes will make release/6.0 tests more stable, will start collecting useful telemetry and will keep the infra in a better shape.

Customer Impact

This code is not part of the product. It is used by the test infrastructure to run unit tests on Apple and Android simulators in the runtime-staging pipeline. We run iOSSimulator-x64, tvOSSimulator-x64, Android-x86 and Android-x64 BCL tests on the release/6.0 branch of dotnet/runtime.

Testing

The code we're bringing over has almost full unit test coverage + we run E2E integration tests as part of the Arcade PR build (that is run in this PR).

Risk

Low. Affected is only the runtime-staging test build which will be immediately validated once changes flow to dotnet/runtime's releas/6.0.

Changes in Helix SDK are minimal and only "additions" so no other test infrastructure using Helix is affected apart from XHarness.

@premun premun requested a review from MattGal December 13, 2021 13:59
MattGal
MattGal previously approved these changes Dec 13, 2021
Copy link
Member

@MattGal MattGal left a comment

Choose a reason for hiding this comment

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

LGTM. Discussed further offline. It has a little more changes in the Helix SDK than I expected but the tests are all green.

@MattGal MattGal dismissed their stale review December 13, 2021 17:14

Needs approval template and dotneteslt signoff

@premun premun merged commit 47f8ea1 into dotnet:release/6.0 Dec 14, 2021
@premun premun deleted the prvysoky/6.0-xharness branch December 14, 2021 16:46
@premun premun mentioned this pull request Dec 14, 2021
2 tasks
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.

3 participants