Skip to content

test(breakfix): implement BFX01-04 cordon validation - #570

Open
osu wants to merge 1 commit into
NVIDIA:cursor/bfx-remediation-suite-4f18from
osu:issue-209-cordon-e2e
Open

test(breakfix): implement BFX01-04 cordon validation#570
osu wants to merge 1 commit into
NVIDIA:cursor/bfx-remediation-suite-4f18from
osu:issue-209-cordon-e2e

Conversation

@osu

@osu osu commented Aug 6, 2026

Copy link
Copy Markdown
Member

Summary

  • replace the my-isv BFX01-04 placeholder with a real, reversible Kubernetes cordon workflow
  • prove that the selected node becomes unschedulable, an existing probe remains running, and a new node-targeted probe is rejected by the scheduler
  • always remove probe pods and uncordon the node, treating cleanup failures as test failures
  • support configured kubectl-compatible commands, optional node/namespace/image selection, and pre-existing GPU-node taints without tolerating the cordon itself
  • add unit coverage for success, failure cleanup, pre-cordoned nodes, uncordon failure, and taint handling

Why

PR #562 introduces the BFX01-04 validation contract but leaves the provider script as a dummy-success scaffold. This implements the actual Kubernetes behavior required by #209.

This PR is stacked on #562 because the break-fix validation and provider wiring do not exist on main yet.

Impact

Providers using the my-isv Kubernetes configuration now get evidence-backed BFX01-04 results instead of a placeholder. The workflow requires permission to create/delete pods and cordon/uncordon nodes.

Validation

  • live run against an isolated k3s v1.35.0 cluster: all three operation fields returned true
  • independently verified the node was Ready and schedulable afterward, with no BFX probe pods remaining
  • focused tests: 18 passed
  • full make test: 1505 passed, 58 passed, 1323 passed with 175 deselected, and 124 passed
  • pre-commit checks passed for both changed files

Closes #209

Signed-off-by: Hasan Khan <hasank@nvidia.com>
@copy-pr-bot

copy-pr-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (1)
  • release/*

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 103a41b8-05e0-49f0-b66d-5ea11118bcfc

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@osu
osu marked this pull request as ready for review August 6, 2026 05:56
@osu
osu requested a review from a team as a code owner August 6, 2026 05:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant