fix(ci): gate USB e2e by Kubernetes version and fallback to default NFS storage class#2307
Merged
Merged
Conversation
…FS storage class Signed-off-by: Nikita Korolev <nikita.korolev@flant.com>
hardcoretime
approved these changes
Apr 30, 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.
Description
Skip USB e2e specs on nested clusters that run Kubernetes versions below 1.34 by checking the actual API server version during the reusable CI pipeline. Also make NFS infra disks omit
storageClassNamewhen no storage class is explicitly set so the cluster default storage class can be used.Why do we need it, and what problem does it solve?
The nested NFS CI job can be created with an automatically selected Kubernetes version, and that version may be lower than 1.34. In that case the cluster does not provide the USB setup required by the
usb-precheck, so the suite fails inSynchronizedBeforeSuitebefore any regular specs run.This change makes the pipeline decide whether USB e2e should run from the actual nested cluster server version instead of relying on the requested cluster configuration. It also keeps the NFS infra templates aligned with the existing storage class behavior by falling back to the cluster default storage class when one is not passed explicitly.
What is the expected result?
usb-precheck.VirtualDiskresources can still be created whenstorageClassis omitted and the cluster default storage class is configured.Checklist
Changelog entries