Skip to content

Add runtime-wasm pipeline - #64830

Merged
radical merged 13 commits into
dotnet:mainfrom
radical:wasm-manual
Feb 8, 2022
Merged

Add runtime-wasm pipeline#64830
radical merged 13 commits into
dotnet:mainfrom
radical:wasm-manual

Conversation

@radical

@radicalradical commented Feb 4, 2022

Copy link
Copy Markdown
Member

This adds support for a runtime-wasm pipeline, which uses
runtime-extra-platforms.yml.

The wasm jobs have been moved to runtime-extra-platforms-wasm.yml, and
the rest to runtime-extra-platforms-other.yml. And the two files are
included conditionally.

Effectively, this still runs all these jobs when
runtime-extra-platforms is run (same as before). But it allows running
just the wasm jobs, triggered manually with:

`/azp run runtime-wasm`

When runtime-wasm is manually run:

  • LibraryTests will run all the tests on linux+windows
  • LibraryTests_EAT will run all the tests on linux
  • LibraryTests_AOT will run all the tests on linux+windows
  • Wasm.Build.Tests, and Wasm debugger tests will run on linux+windows
  • Runtime tests will run on linux

When runtime-extra-platforms is manually run:

  • LibraryTests will run all the tests, if paths changed
  • LibraryTests_EAT will run all the tests on linux, if paths changed
  • LibraryTests_AOT will run all the tests on linux+windows, if paths changed
  • Wasm.Build.Tests, and Wasm debugger tests will never run
  • Runtime tests will never run

On rolling builds, runtime-extra-platforms runs by default:

  • LibraryTests will run all the tests
  • LibraryTests_EAT will run all the tests on linux
  • LibraryTests_AOT will run all the tests on linux+windows
  • Wasm.Build.Tests, and Wasm debugger tests will never run
  • Runtime tests will never run

With feedback from @steveisok, and @safern.

@ghost

ghost commented Feb 4, 2022

Copy link
Copy Markdown

Tagging subscribers to this area: @dotnet/area-infrastructure-libraries
See info in area-owners.md if you want to be subscribed.

Issue Details

This adds support for a wasm-only pipeline, which use
runtime-extra-platforms.yml.

When wasm-only is manually run:

  • LibraryTests will run all the tests on linux+windows
  • LibraryTests_EAT will run all the tests on linux
  • LibraryTests_AOT will run all the tests on linux+windows
  • Wasm.Build.Tests, and Wasm debugger tests will run on linux+windows
  • Runtime tests will run on linux

When runtime-extra-platforms is manually run:

  • LibraryTests will run all the tests, if paths changed
  • LibraryTests_EAT will run all the tests on linux, if paths changed
  • LibraryTests_AOT will run all the tests on linux+windows, if paths changed
  • Wasm.Build.Tests, and Wasm debugger tests will never run
  • Runtime tests will never run

On rolling builds, runtime-extra-platforms runs by default:

  • LibraryTests will run all the tests
  • LibraryTests_EAT will run all the tests on linux
  • LibraryTests_AOT will run all the tests on linux+windows
  • Wasm.Build.Tests, and Wasm debugger tests will never run
  • Runtime tests will never run
Author:radical
Assignees:radical
Labels:

area-Infrastructure-libraries

Milestone:-

@radical

radical commented Feb 4, 2022

Copy link
Copy Markdown
MemberAuthor

This is the new state:

  • jobs with only-pc are run only if the path checks are true

PR:

.runtimeruntime-stagingruntime-extra-platforms(manual only)wasm-only (manual only)
libtestslinux: all, only-pcwindows: all, only-pclinux+windows: all, only-pclinux+windows: all
libtests eatlinux: smoke, only-pc-linux: all, only-pclinux: all
libtests aotlinux: smoke, only-pcwindows: smoke, only-pclinux+windows: all, only-pclinux+windows: all
Wasm.Build.Testslinux: only-pcwindows: only-pc-linux+windows
Debugger tests-linux+windows: only-pc-linux+windows
Runtime testslinux: only-pc--linux

Rolling build:

  • jobs w/o only-pc are always run
.runtimeruntime-stagingruntime-extra-platforms (always run)wasm-only (manual only)
libtestslinux: allwindows: all, only-pclinux+windows: allNA
libtests eatlinux: smoke(=all)-linux: all
libtests aotlinux: smoke(=all)windows: smoke(=all), only-pclinux+windows: all
Wasm.Build.Testslinux: allwindows: only-pclinux+windows
Debugger tests-linux+windows-
Runtime testslinux: all--

There is an existing inconsistency in rolling builds:

  • runtime is always running the tests
  • runtime-staging is running the tests only on on path changes
  • runtime-extra-platforms

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines failed to run 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines failed to run 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines failed to run 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines failed to run 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines failed to run 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines failed to run 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run wasm-only

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@safern

Copy link
Copy Markdown
Member

May I suggest that we name it runtime-wasm to match all our other naming conventions?

Comment threadeng/pipelines/runtime-extra-platforms-non-wasm.yml Outdated
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 2 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-wasm,runtime-extra-platforms

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines failed to run 2 pipeline(s).

@@ -13,7 +13,7 @@ variables:
- template: /eng/pipelines/common/variables.yml

- ${{ if eq(variables.isNotSpecificPlatformOnlyBuild, true) }}:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I don't think expand time conditions work for schedules. We would have to go to the AzDo UI for this pipeline and override the CI triggers/schedule.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I don't think it'll work either.

If you want such a behavior and not use AzDo UI, I think you'd have to make a template and then have two pipelines. One with a schedule and one w/o.

@radicalradicalFeb 7, 2022

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

I disabled it from the UI for runtime-wasm specifically.

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-wasm,runtime-extra-platforms

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 2 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

Merging main to pick up some test fixes for Android.
The windows/x64 test failures are failing on rolling builds too.

@radical

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-extra-platforms

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@radical

Copy link
Copy Markdown
MemberAuthor

Anything else needed for this PR?

@premun

Copy link
Copy Markdown
Member

@radical love the table overview!

@MaximLipnin

Copy link
Copy Markdown
Contributor

Does it need to be reflected in somewhere in docs, e.g. https://github.com/dotnet/runtime/blob/main/docs/pr-builds.md ?

@radical

Copy link
Copy Markdown
MemberAuthor

Does it need to be reflected in somewhere in docs, e.g. https://github.com/dotnet/runtime/blob/main/docs/pr-builds.md ?

I can add it in a follow up PR.

@radical
radical merged commit 05dbb13 into dotnet:mainFeb 8, 2022
@radical
radical deleted the wasm-manual branch February 8, 2022 21:56
@ghostghost locked as resolved and limited conversation to collaborators Mar 11, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants

@radical@safern@premun@MaximLipnin@steveisok@akoeplinger@jkotas