Skip to content

Create darc vmr add-repo and darc vmr remove-repo commands #5414

@mmitche

Description

@mmitche

To facilitate changing the VMR to include more repos (e.g. adding something into a feature band), or removal (initializing a feature band by removing shared components), it is necessary to have add and remove commands. There is sort of an add command today (initialize), but no remove.

Recommended course of action is to make darc vmr initialize into add-repo. However, if initialize does more than add a repo, then it should be retained and add-repo would added to the vmr command set. In addition, a remove-repo would also be created.

The commands should update all files that are involved in a repo being in the VMR, with one notable exception

  • Source mappings
  • source manifest
  • cred scan suppressoins
  • 3rd party notices
  • src/
  • Exception: Repo projects - If a repo project is present in the repo, remove should NOT remove it. The repo project tends to have a bit of non-mechanically creatable logic. However, on add, if a repo project is missing, one should be created. This file should just be a barebones <Project Sdk="Microsoft.Build.NoTargets"> project.

Additional notes:

  • When adding a specific sha and remote of the source repo given to do initial population of sources.
  • Changes should be staged locally
  • The add command should accept these arguments:
    • Remote URI - required
    • Commit SHA - required
    • List of file exclusions (optional)
  • The remove command should accept repository (mapping) name

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions