Test code flows against a test VMR
Context
As part of https://github.com/dotnet/arcade-services/issues/4362, we agreed that it would be a good idea to be able to trigger code flows for all repositories (but in maestro-auth-test) so that we can see what will the first code flow PRs look like when we switch to the flat flow.
Goal
Similarly to the ReproTool, prepare some C# tool / command / script that will:
- Use the locally running PCS
- Finds all latest builds for all repositories on all branches/channels that lead to
dotnet/sdk's main - Open forward flow PRs against the test VMR using these builds
- Open backflow PR from the latest
mainof the test VMR into every repository (again undermaestro-auth-test) - Link the PRs to this issue
Note: Contact me for details on how to get the list of all repos/builds that are to be flown. I have a script I have been working on due to a related issue.
Looks like we're having some problems when trying to flow runtime:
Microsoft.DotNet.DarcLib.VirtualMonoRepo.PatchApplicationFailedException: 'Failed to apply the patch runtime-7dd74fc-adcc7eb.patch to src/runtime.
Exit code: 1
Std err:
C:/Users/dkurepa/source/VMR-temp/runtime-7dd74fc-adcc7eb.patch:8567: trailing whitespace.
C:/Users/dkurepa/source/VMR-temp/runtime-7dd74fc-adcc7eb.patch:13789: trailing whitespace.
C:/Users/dkurepa/source/VMR-temp/runtime-7dd74fc-adcc7eb.patch:16303: trailing whitespace.
error: patch failed: src/runtime/Directory.Build.props:17
error: src/runtime/Directory.Build.props: patch does not apply
error: patch failed: src/runtime/eng/DotNetBuild.props:107
error: src/runtime/eng/DotNetBuild.props: patch does not apply
error: src/runtime/eng/OSArch.props: already exists in index
error: patch failed: src/runtime/eng/Publishing.props:1
error: src/runtime/eng/Publishing.props: patch does not apply
error: src/runtime/eng/RuntimeIdentifier.props: already exists in index
error: patch failed: src/runtime/eng/Signing.props:1
error: src/runtime/eng/Signing.props: patch does not apply
error: patch failed: src/runtime/eng/pipelines/common/global-build-job.yml:52
error: src/runtime/eng/pipelines/common/global-build-job.yml: patch does not apply
error: patch failed: src/runtime/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml:27
error: src/runtime/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml: patch does not apply
error: patch failed: src/runtime/eng/pipelines/common/templates/runtimes/build-runtime-tests.yml:11
error: src/runtime/eng/pipelines/common/templates/runtimes/build-runtime-tests.yml: patch does not apply
error: patch failed: src/runtime/eng/pipelines/common/templates/runtimes/xplat-job.yml:18
error: src/runtime/eng/pipelines/common/templates/runtimes/xplat-job.yml: patch does not apply
error: src/runtime/eng/pipelines/official/jobs/prepare-signed-artifacts.yml: does not exist in index
error: src/runtime/eng/pipelines/official/stages/publish.yml: does not exist in index
error: patch failed: src/runtime/eng/pipelines/runtime-official.yml:72
error: src/runtime/eng/pipelines/runtime-official.yml: patch does not apply
Testfx is also failing because we can't find the source manifest for it
Does testfx show in the dependency tree?
Does testfx show in the dependency tree?
It does, yes, apparently it's in the source mappings, but not in the VMR, not sure what went on there
I merged all PRs opened in this test into branch https://github.com/maestro-auth-test/dotnet/tree/repro/21283b94-b656-432d-95ce-cb603b39b353, going to port it to dotnet/dotnet now and queue up a build
here's the build https://dev.azure.com/dnceng/internal/_build/results?buildId=2660401&view=results
List of backflow prs opened in the test https://github.com/pulls?q=is%3Aopen+is%3Apr+user%3Amaestro-auth-test+%5Bcodeflowtest%5D. We used assets from a main VMR build, since the build we started here failed. Note that only first 1000 assets were taken from the build, since I had some issues creating a build with all of them, but that should be good enough for testing purposes. The most important thing is that the assets contained Arcade
completed for now. We added two new darc tasks that we'll be abele to