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
Without it the correct value is given, but when it is enabled the wrong value is given. The wrong value will be the index digest instead of the config digest. This has impact when for example writing the image to disk as the file name is derived from the config name.
I have determined that the problem comes from the method config name is fetched. The current implementation assumes that the image id returned from the Docker client is the config digest. This is the case for Docker due to historical reasons. It is not the case in Containerd.
Describe the bug
I have observed that an image loaded from the Docker daemon gives different results depending if Containerd snapshotter is enabled or not.
https://docs.docker.com/storage/containerd/
Without it the correct value is given, but when it is enabled the wrong value is given. The wrong value will be the index digest instead of the config digest. This has impact when for example writing the image to disk as the file name is derived from the config name.
I have determined that the problem comes from the method config name is fetched. The current implementation assumes that the image id returned from the Docker client is the config digest. This is the case for Docker due to historical reasons. It is not the case in Containerd.
go-containerregistry/pkg/v1/daemon/image.go
Lines 177 to 181 in 3764db2
To Reproduce
Expected behavior
Running without Containerd snapshotter we get the right result.
Running with Containerd snapshotter we get the wrong result.
Additional context
More details is given in zarf-dev/zarf#2584.
The text was updated successfully, but these errors were encountered: