Open
Description
Currently
$ bootc switch quay.io/centos-bootc/centos-bootc:stream10@sha256:9735171dc889739be0ee60621b1ee2f74811ab1eaa54b4f63b5a662c1ebe2949
ERROR Switching: Pulling: Creating importer: failed to invoke method OpenImage: failed to invoke method OpenImage: Docker references with both a tag and digest are currently not supported
$
This is coming from skopeo
$ skopeo inspect docker://quay.io/centos-bootc/centos-bootc:stream10@sha256:9735171dc889739be0ee60621b1ee2f74811ab1eaa54b4f63b5a662c1ebe2949
FATA[0000] Error parsing image name "docker://quay.io/centos-bootc/centos-bootc:stream10@sha256:9735171dc889739be0ee60621b1ee2f74811ab1eaa54b4f63b5a662c1ebe2949": Docker references with both a tag and digest are currently not supported
Yet
$ podman pull quay.io/centos-bootc/centos-bootc:stream10@sha256:9735171dc889739be0ee60621b1ee2f74811ab1eaa54b4f63b5a662c1ebe2949
...
works just fine.
There's a lot of prior discussion of this, see containers/image#1736
AFAICS from the change to cri-o here cri-o/cri-o@c862e1f the idea is all c/image consumers need to do the tag-stripping first, which is presumably what podman is doing too.
So I guess we should also just do that. To implement this, we basically need to do that tag stripping before we pass the target image to containers-image-proxy.
To be clear the implementation here is that the tag is purely for human consumption, it's not validated (beyond syntactically).
Note do want to retain the original full tag+digest form so it appears in bootc status
.
Activity