Split test build and run into two jobs (2nd attempt) (dotnet/coreclr#26362)
authorTomáš Rylek <trylek@microsoft.com>
Mon, 26 Aug 2019 19:41:13 +0000 (21:41 +0200)
committerGitHub <noreply@github.com>
Mon, 26 Aug 2019 19:41:13 +0000 (21:41 +0200)
commitba2e4131441c80f19f82bd79d6db3b7024029192
treec4712ead64d3be2b34b8ce6a19522e25f7c5bf8c
parent80af9ec94189bc0bbdc410d0eaebdff6e1c35d58
Split test build and run into two jobs (2nd attempt) (dotnet/coreclr#26362)

This change is intended to split the test job in CI runs into two
jobs - one building the tests and another sending the run to Helix.
To facilitate this, I have copied the bulk of the existing
test-job.yml file into two new files, build-test.yml and run-test.yml;
test-job.yml has become a mere wrapper invoking these two new files.

The new build-test file builds the tests, zips the output folder
and publishes it as an Azure artifact (the artifact publishing step
is no longer optional). The subsequent run-test step downloads the
test artifacts and triggers the Helix run for the test set.

The motivation for this change is to mitigate various transient
issues seen in CoreCLR CI runs - when a test execution fails in a
non-deterministic manner, before this change the developer needed to
rerun the lengthy test build step just to retry the tests. This
change should enable rerunning just the test execution step in such
case.

Thanks

Tomas

P.S. This is my 2nd attempt at the merge; Jarret had to roll back my
original Friday merge that broke CoreCLR outerloop testing.

Commit migrated from https://github.com/dotnet/coreclr/commit/0ea60e99a30f0ef9116b13546578e55a0113b1f4
eng/build-test-job.yml [new file with mode: 0644]
eng/download-artifact-step.yml [new file with mode: 0644]
eng/pipelines/coreclr/ci.yml
eng/pipelines/coreclr/pr.yml
eng/run-test-job.yml [new file with mode: 0644]
eng/test-job.yml
eng/upload-artifact-step.yml [new file with mode: 0644]
eng/xplat-test-job.yml [new file with mode: 0644]