-
Notifications
You must be signed in to change notification settings - Fork 249
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
need an API for altering image digests #999
Comments
I don’t think that’s quite what is going on here? Isn’t what we want actually a correctly managed RepoDigests? If you search for that, e.g. in Podman, there are several tickets (notably containers/podman#3761 ) discussing how we reliably record only repo:tag values, and separately all digests, whereas the RepoDigests model (and various useful features) would like a full repo@digest association (e.g. on every pull, whether by digest or by tag, record repo@digest associating that digest with that repo, instead of reporting all possible combinations like we usually do in RepoDigests. |
TBH I don’t immediately know what Or is it expected to work some other way? |
It's only removing the specified RepoDigest from the image.
|
@mtrmac Do you think we have a consensus on this and should we have this in c/storage cause it seems we need this for containers/common#1053, containers/buildah#3866 |
One reason for having this API is that if we want to implement solution for containers/buildah#3866 an image could contain digest which is not directly computed by generated from a remote repo and we only keep it in localstorage for a better UX. |
So, on push:
On pull, we already add the pushed manifest, and we add a reference that was used for pulling (tagged or digested); we should always record a digested reference even if the image was pulled by tag. So, it seems attractive to have an “add a manifest and an appropriate digested reference” API, which could be used both for pulls (directly in c/image) and pushes (in libimage). OTOH #595 (comment) … pulls ultimately shouldn’t use a set of a dozen individual “edit image” calls. I suppose we can add one more “edit image” call like that, and continue deferring |
Similar to
SetNames(...)
for altering the names of an image, I desire an API to alter the digests of an image.Background:
docker rmi foo@RepoDigest
is actually removingRepoDigest
fromfoo
without removing the image. However, we currently have no way of altering the digests and misbehave.WDYT @mtrmac @nalind @rhatdan ?
The text was updated successfully, but these errors were encountered: