storage
storage copied to clipboard
Newer buildah claims that zstd:chunked layers pushed with older buildah don't have tar-split data (but they do)
I have two versions of buildah, one installed from ubuntu 24 repos, one built locally
$ buildah --version
buildah version 1.33.7 (image-spec 1.1.0-rc.5, runtime-spec 1.1.0)
$ ~/go/bin/buildah --version
buildah version 1.39.0 (image-spec 1.1.0, runtime-spec 1.2.0)
pulled ubuntu:24.10 image, then pushed it to local docker registry while compressing with zstd:chunked, using the old buildah:
buildah pull ubuntu:24.10
buildah push --tls-verify=false --compression-format zstd:chunked ubuntu:24.10 docker://localhost:5000/img
cleared the image from local storage
buildah rmi ubuntu:24.10
now pulling with newer buildah
~/go/bin/buildah --log-level trace --tls-verify=false pull docker://localhost:5000/img
with enable_partial_images = true
The trace logs show:
DEBU[0000] Failed to retrieve partial blob: zstd:chunked layers without tar-split data don't support partial pulls with guaranteed consistency with non-partial pulls
claiming that the layer doesn't have tar-split data. But it does...
$ skopeo inspect --tls-verify=false docker://localhost:5000/img --raw | jq '.layers[].annotations'
{
"io.github.containers.zstd-chunked.manifest-checksum": "sha256:22c0216bd28cebc2c6bb5469e9950ae75c712dc77c67d324fc09350e153f8918",
"io.github.containers.zstd-chunked.manifest-position": "32664085:380036:2043318:1",
"io.github.containers.zstd-chunked.tarsplit-checksum": "sha256:87dc0ad2400e2f96c6705c3f2eed3377904cf94759a9887298934db4955f7da1",
"io.github.containers.zstd-chunked.tarsplit-position": "33044129:151529:3784936"
}
pulling it with the same version that was used to build works (uses the partial blob pull logic)
Is the storage format still being changed? Or is this a bug?