dotnet / docker-tools

This is a repo to house some common tools for our various docker repos.
MIT License
124 stars 46 forks source link

Factor out default build agent pools and image names into shared variables #1227

Closed lbussell closed 1 month ago

lbussell commented 7 months ago

Related: https://github.com/dotnet/dotnet-docker-internal/issues/4475

With the addition of 1ES pipeline templates, we have a few places where our default pool definitions are overridden or ignored. We should consolidate these into one set of variables for our pools and image names so we don't have any hardcoded values anywhere.

https://github.com/dotnet/docker-tools/blob/5a5564806a23862c5a8416477a59c89b30b66b4d/eng/common/templates/stages/dotnet/build-test-publish-repo.yml#L64-L73

https://github.com/dotnet/docker-tools/blob/5a5564806a23862c5a8416477a59c89b30b66b4d/eng/common/templates/variables/common.yml#L46-L57

https://github.com/dotnet/docker-tools/blob/5a5564806a23862c5a8416477a59c89b30b66b4d/eng/pipelines/dotnet-buildtools-image-builder-official.yml#L21-L27

https://github.com/lbussell/dotnet-docker/blob/9482b39dbd103f56ce42b62cbb14bda00f223c40/eng/pipelines/cg-images.yml#L25-L36

lbussell commented 7 months ago

[Triage] The default*PoolImage variables should stay .NET-independent, and we can continue to use the /dotnet/build-test-publish-repo.yml file to define the 1ES PT compliant images. We should however define variables for the SDL scanning pool so that they can be shared between all of our pipelines: https://github.com/dotnet/docker-tools/blob/5a5564806a23862c5a8416477a59c89b30b66b4d/eng/pipelines/dotnet-buildtools-image-builder-official.yml#L21-L27

lbussell commented 5 months ago

Marking as wave1 since this is 1ES PT follow-up.

ellahathaway commented 1 month ago

I'm continuing to work on this issue. Hoping to have a few PRs out for it soon.

ellahathaway commented 1 month ago

https://github.com/microsoft/dotnet-framework-docker/pull/1171 is the last PR needed to close out this issue.