Repository navigation
Conversation
HandleConfigUpdates calls deleteConfigUpdateExecutors for every node it resets, but no spec exercised that wiring: dropping or moving the call would let a reset node finish on a Job still running the old ConfigMap without failing a test. Seed an unfinished config Job on a reset node and on a node the reset leaves alone, and assert only the first is cleared. Part of #776 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Signed-off-by: Noah Kontur <nkontur@nvidia.com>
… Job cleanup spec Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Signed-off-by: Noah Kontur <nkontur@nvidia.com>
…fig-reset Job spec Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Signed-off-by: Noah Kontur <nkontur@nvidia.com>
Signed-off-by: Noah Kontur <nkontur@nvidia.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
|
This replaces #879 (same branch, now pushed to NVIDIA/nodewright so CI runs without fork approval). The review there is addressed and the replies are on #879:
The threads there are left open for the reviewers to resolve. |
Summary
Part of #776. Follow-up requested by @lockwobr on #776 (from #788).
HandleConfigUpdatesclears executors on every node it resets (deleteConfigUpdateExecutors), so the config stage re-runs on the new ConfigMap. No spec covered that wiring: dropping or moving the call would let a reset node finish on a Job still running the old data without failing a test.Change
One envtest spec next to the other
HandleConfigUpdatesones. It seeds an unfinished config Job on each of three nodes:config, which opens the gate and is reset;interrupt(in progress), which is reset without erroring, so cleanup cannot depend on the gate-opening node;apply, which the reset leaves alone.It runs
HandleConfigUpdatesand asserts the first two Jobs are deleted and the third is kept. envtest runs no garbage collector, so a foreground delete shows as adeletionTimestamp.Checked it fails when the
deleteConfigUpdateExecutorscall is removed.Tested locally (from
operator/)make vet lintgo test ./internal/controller/(the whole package, envtest 1.34.1)The full
make unit-teststarget runs in CI.🤖 Generated with Claude Code