Repository navigation
fix(e2e): compare config digests in the kind image check - #21
Merged
Merged
Conversation
Since 2026-10-26 the GitHub runners build with Docker's containerd image store, where `docker image inspect .Id` is the manifest digest. crictl reports the config digest, so verify_image_in_node failed every run even though the load worked: on the failing run the node held exactly the config digest buildx exported. Read the config digest from docker save's manifest.json instead, which names it under either store. Also pass -o before the image to crictl inspecti: the crictl in kind v0.31 nodes (1.33) treats a trailing -o as an image name, so the node id read as absent. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Same runner change as the previous commit: these images are multi-arch, the containerd image store keeps only the host platform after docker pull, and kind load's ctr import --all-platforms then fails with "content digest ... not found". The node pulls them with crictl, once: an image already in the node is not pulled again. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
E2E has failed on every run since 2026-10-26 at
cluster-upwith "The image load did NOT take effect". The load works; the check compares two different digests.Changes
hack/cluster.shverify_image_in_node: host side reads the config digest fromdocker save'smanifest.jsoninstead ofdocker image inspect .Id. With the containerd image store (runner default since 2026-10-26).Idis the manifest digest; crictl reports the config digest. Evidence from run 40837806983: nodesha256:6ac0bb3f…= buildxexporting config sha256:6ac0bb3f…; host.Idsha256:8f1b24d8…=exporting manifest sha256:8f1b24d8…(same for all three images).crictl pullinside the node instead ofdocker pull+kind load: they are multi-arch, the containerd store keeps only the host platform, and kind'sctr import --all-platformsfailed withcontent digest ... not found(second run of this PR).crictl inspecti -o json <img>: crictl 1.33 (kind v0.31 node) reads a trailing-oas an image name.Test Plan
🤖 Generated with Claude Code