-
Notifications
You must be signed in to change notification settings - Fork 61
Description
When the building and testing of Docker images get split out into separate stages, it introduces overhead because the agents used in the test stage need to pull down the images that were built. The PR builds do not use separate stages because that would require access to secrets for accessing the ACR to store the images. Evidence shows that the PR builds run significantly faster as a result of this difference.
.NET Core
Multi-stage: 50 mins
Single stage: 30 mins
.NET Fx
Multi-stage: 2 hr 15 mins
Single stage: 1 hr 10 mins
There can be so much variability in the performance of pulling images. It's completely unpredictable. We're really at the mercy of this unpredictable performance, especially for the very large .NET Fx images.
The proposal is for this to be the default way in which builds are executed but still allow for a multi-stage to be optionally used. There are scenarios where it is still beneficial to run multiple stages, such as when pre-building images prior to release tic-toc and then testing/publishing them during the release.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status