Merge pull request #17671 from prezha/fix-containerd-ImageExists

fix containerd ImageExists to look for image name and image id sha
pull/17676/head
Medya Ghazizadeh 2023-11-28 10:35:17 -08:00 committed by GitHub
commit bfffdb9fbc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 6 deletions

View File

@ -248,12 +248,12 @@ func (r *Containerd) Disable() error {
// ImageExists checks if image exists based on image name and optionally image sha
func (r *Containerd) ImageExists(name string, sha string) bool {
c := exec.Command("/bin/bash", "-c", fmt.Sprintf("sudo ctr -n=k8s.io images check | grep %s", name))
rr, err := r.Runner.RunCmd(c)
if err != nil {
return false
}
if sha != "" && !strings.Contains(rr.Output(), sha) {
klog.Infof("Checking existence of image with name %q and sha %q", name, sha)
c := exec.Command("sudo", "ctr", "-n=k8s.io", "images", "check")
// note: image name and image id's sha can be on different lines in ctr output
if rr, err := r.Runner.RunCmd(c); err != nil ||
!strings.Contains(rr.Output(), name) ||
(sha != "" && !strings.Contains(rr.Output(), sha)) {
return false
}
return true