Skip to content
This repository was archived by the owner on Jan 11, 2024. It is now read-only.
This repository was archived by the owner on Jan 11, 2024. It is now read-only.

Create a common build script auto-updater #1709

@dagood

Description

@dagood

Core repos all have a few scripts (init-tools.cmd/sh, run.cmd/sh, etc.) that are duplicated and drift apart over time. These should be automatically updated from a central source. A VersionTools updater can do this.

The complicated part of this is figuring out the "path" to the central source. I suggest we put the "master copy" of the scripts into BuildTools. Each Core repo then updates to the script version associated with the BuildTools package it's depending on. The updater would:

  • Download the currently-used BuildTools package
  • Open it and read version.txt for the BuildTools commit that built it
  • Download the scripts from BuildTools at that commit hash.

(When we publish built commit hashes to dotnet/versions, the updater doesn't need to do the package download of ~5 MB.)

We planned to do this for bootstrap.sh/ps1 initially (https://github.com/dotnet/core-eng/issues/393), but auto-updating scripts is useful independent of that.

Came up in dotnet/core-setup#3252 (comment). /cc @weshaggard @dleeapho @eerhardt


Edit: As a historical note, the WIP I had for this is here: master...dagood:script-updater/master

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions