Fix: Pin kind version and node image in E2E workflow - #522
Open
meyrevived wants to merge 5 commits into
Open
Conversation
|
|
The /dl/latest/ endpoint resolved to kind v0.33.0-alpha which ships kindest/node:v1.36.1 with an OCI spec version incompatible with the GitHub runner crun binary when using podman provider. Pin kind to v0.32.0 and node image to kindest/node:v1.35.5. Authored-by: Claude Code (Opus)
meyrevived
force-pushed
the
fix/pin-kind-version
branch
from
August 2, 2026 08:47
38cf249 to
fc4eafe
Compare
meyrevived
marked this pull request as ready for review
August 2, 2026 08:56
ilaydamari
approved these changes
Aug 2, 2026
Extracting the kind version into a variable with a Renovate datasource comment enables automated dependency updates while maintaining the pin. Semver versioning excludes pre-release/alpha builds by default. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The Renovate inline annotations on KIND_VERSION and kindest/node require matching customManagers entries to be discovered. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Ensures Renovate proposes both in a single PR, preventing version mismatch between kind binary and node image. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
glevi-rh
approved these changes
Aug 4, 2026
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: glevi-rh, ilaydamari The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
filariow
reviewed
Aug 4, 2026
sadlerap
reviewed
Aug 6, 2026
Contributor
|
/retest |
…e's regex custom manager cannot perform initial digest pinning — it can only maintain an existing digest. That's why the digest must be manually added first (which these changes do). After that, Renovate updates both tag and digest together on version bumps. This is a documented limitation (renovatebot/renovate#10993).
|
New changes are detected. LGTM label has been removed. |
This was referenced Aug 10, 2026
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
/dl/latest/kindest/node:v1.35.5Root cause
kind.sigs.k8s.io/dl/latest/resolved tov0.33.0-alpha, which shipskindest/node:v1.36.1. That node image uses an OCI runtime spec version incompatible with thecrunbinary on GitHub Actions ubuntu runners whenKIND_EXPERIMENTAL_PROVIDER=podman, producingcrun: unknown version specified(exit 126) at cluster creation.Approach
Rather than hardcoding a version that rots, the kind binary version and node image are annotated with Renovate datasource comments:
datasource=github-releases depName=kubernetes-sigs/kind— Renovate's default semver versioning excludes pre-release tags (-alpha,-beta,-rc), so only stable kind releases are proposed.datasource=docker depName=kindest/node— tracked as a Docker image tag.Because kind and its node image are not independently versionable, a Renovate update to one without the other could cause a mismatch. This is safe because CI creates a kind cluster on every PR — an incompatible pairing fails the E2E workflow before merge, making the mismatch visible and blocking the update.
Test plan
🤖 Generated with Claude Code