Skip to content

public-mirror.server (publishConfig.publicMirrorAcr.server) is now required after the change to run syft directly #1800

@dagood

Description

@dagood

PR #1787 adds an unconditional dependency on having a public mirror defined:

$syftImageName = "${{ parameters.publishConfig.publicMirrorAcr.server }}/$(imageNames.syft)"

In the microsoft/go-images pipelines, we define public-mirror.server to be ''. This has seemed reasonable because there's some logic elsewhere that detects/handles it:

if ("$(System.TeamProject)" -eq "public" -and "$(public-mirror.server)" -ne "") {
$commonMatrixAndBuildOptions = "$commonMatrixAndBuildOptions --base-override-regex '^(?!mcr\.microsoft\.com)' --base-override-sub '$(public-mirror.server)/'"
}

So, our build fails when trying to upgrade past it: https://dev.azure.com/dnceng/internal/_build/results?buildId=2787270&view=logs&j=fc59f0f2-c1bd-58ae-b870-833d1e8a924c&t=42b16712-47b7-5d4e-b8e4-5c4616c57a47&l=133

What's the best path forward for us?

(I'm not sure what it takes to maintain a public mirror--I'm not necessarily against it. I'm just not sure if it's necessary for our attempting-to-be-low-maintenance reuse of the .NET Docker infra. 🙂 Dev time is still much costlier than build time in our space.)

Metadata

Metadata

Assignees

Type

Projects

Status

In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions