Skip to content

Enable repo-based full VMR validation #4539

@premun

Description

@premun

Context

As outlined here, repositories will have optional build legs which can insert the repository PR branch into the VMR and build it.
This means that they need an easy way to inject their current branch into the VMR and build it.

Luckily, we already have this running in dotnet/sdk where we synchronize the whole VMR during PRs.
Ideally we take those templates and move them to Arcade so that they become available in all repositories via eng/common.
Repo owners will then just create pipelines pointing to these templates and developers will (optionally) queue the pipelines in their PRs.

Goal

We need to provide tooling that will enable repos to insert themselves into a VMR during a build.

  • Similarly to dotnet/sdk's PRs, prepare a generic template in Arcade's eng/common which will:
    • Accept the repo name (mapping name) as a parameter
    • Clone the VMR
    • Use darc to push the current repo's PR branch's contents into the local VMR
    • Build+test the VMR
  • We will start simple and support linux-x64 as it's the fastest and gives us a lot of coverage but ideally in future people could specify the list of platforms to build. Maybe it can be a parameter from the start if it's easy.
  • We will need YAML templates and an .sh and .ps1 scripts.

Notes

  • It is up for discussion whether for the push of the source code, we'd want darc vmr forwardflow or darc vmr update. Possibly the first one as it will be more reliable?

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions