-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Closed
Labels
kind/bugCategorizes issue or PR as related to a bug.Categorizes issue or PR as related to a bug.
Description
@nalind @mtrmac here's the situation:
- when pulling an image by tag we need to always store the digested reference along with the tag (same as docker does)
- we don't have a
RepoDigestsforImageStatusand we just fillRepoTagswithstatus.Nameswhich just contains tagged references for that image - (guess what) we need
RepoDigestsslice - digests must not be stored and shown as the ID of an image (see reproducer 1). The image ID in docker is the digest of its
configblob which should be unique due to content addressability! - if you pull an image by digest corresponding to a tag different than
latestimage list reports that it has a:latesttag whether that's not true at all (see reproducer 2) - image ID should be the config blob digest!
--
reproducer 1 (digest shown as image ID, the image ID should be the config digest blob!):
$ crioctl image pull nginx@sha256:4aacdcf186934dcb02f642579314075910f1855590fd3039d8fa4c9f96e48315
$ crioctl image list
ID: 4aacdcf186934dcb02f642579314075910f1855590fd3039d8fa4c9f96e48315
Tag: docker.io/library/nginx:latest
--
reproducer 2 (wrong tag applied to a digested image, there should not be any tag for this image unless someone has previously pulled the same image by tag, in which case we already have the digest as well):
# this is the digest for redis:alpine but redis:latest is shown below, incorrectly
# notice how the same issue as reproducer 1 is shown below (ID != digest)
$ crioctl image pull redis@sha256:03789f402b2ecfb98184bf128d180f398f81c63364948ff1454583b02442f73b
$ crioctl image list
ID: 03789f402b2ecfb98184bf128d180f398f81c63364948ff1454583b02442f73b
Tag: docker.io/library/redis:latestmrunalp
Metadata
Metadata
Assignees
Labels
kind/bugCategorizes issue or PR as related to a bug.Categorizes issue or PR as related to a bug.