You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This phase would optimize the build for cases where a particular build job would end up not producing any new images because all the images it would have been result in cache hits. To do this, the same logic that the build command uses to determine whether an image needs to be built would be executed as part of the build matrix generation. When that logic is run over the entire set of Dockerfiles, any build legs that do not have any Dockerfiles to be built can simply be trimmed from the matrix. This avoids executing build jobs that would end up not building any new images. This is only intended as an optimization for trimming out such jobs. The build command would still be responsible for calculating which images need to be built on its own.
In order to implement this, we need to ensure that generating the build matrix is not done in parallel with mirroring the base images. This could lead to incorrect caching results where an image is mistakenly thought to be up-to-date when in fact the base image tag had not been mirrored yet. See dotnet/dotnet-docker#2617.
Activity
mthalman commentedon Feb 23, 2021
In order to implement this, we need to ensure that generating the build matrix is not done in parallel with mirroring the base images. This could lead to incorrect caching results where an image is mistakenly thought to be up-to-date when in fact the base image tag had not been mirrored yet. See dotnet/dotnet-docker#2617.
lbussell commentedon Feb 2, 2026
@mthalman is this complete with #1449?