Support ImageLoad for prebuilt images
What does this MR do?
- Move prebuilt loading functionality to its own package.
- Update prebuilt loading to also support loading "docker archive" images, where the file extension is
.docker.tar.zst
. - Creates "docker archive" images for Windows helper images. Continues to create "docker export" images for Linux.
This functionality is split into two commits, bested viewed one at a time.
Why was this MR needed?
For Linux, we've relied on this functionality to build helper images, and then subsequently use them for tests in the same pipeline, by loading them from disk.
For Windows, we couldn't support this, which typically meant using an older Windows helper image, or involving a registry.
Now we load from the prebuilt image archive.
zstd
has been chosen for "docker archive" support, because zstd
it builtin to Docker, whereas xz
relied on having the external tool installed. xz
is not available for Windows.
What's the best way to test this MR?
- Download Windows prebuilt package and place in
out/helper-images
- Run Windows integration tests with verbose logging. You won't see
Pulling helper image from...
because it will be loaded from disk.
What are the relevant issue numbers?
Closes #26678 (closed)
Edited by Arran Walker