• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

NVIDIA / nodewright / 25232357251

01 May 2026 08:44PM UTC coverage: 81.75% (+0.4%) from 81.373%
25232357251

push

github

web-flow
feat: add explicit uninstall to support uninstalls that require the config information (#200)

Adds an opt-in declarative uninstall workflow to the Skyhook CRD and
operator, replacing the prior "remove-from-spec-to-uninstall" behavior.

Packages expose a new `uninstall` block with `enabled` and `apply`
flags. Setting `apply=true` triggers an uninstall pod on every target
node with the package's full config. Packages with an `interrupt`
configured (reboot, service restart, etc.) run the interrupt after
uninstall via a new `StageUninstallInterrupt` stage, distinct from
the install-cycle `StageInterrupt`.

The webhook enforces: `apply` requires `enabled`; removing an enabled
package requires prior uninstall completion; version downgrades are
rejected unless the package is already fully uninstalled.

CR deletion drives uninstall via a finalizer that waits for all nodes
to complete before cleaning up labels, annotations, and ConfigMaps.

The legacy "downgrade auto-triggers uninstall" path is removed.
Downgrades of `enabled=false` packages are allowed but preserve the
old version's node-state entry (D2 semantics: non-absent signals
"not cleanly uninstalled").

Adds a stage-agnostic skyhook.nvidia.com/NodeStateMalformed condition and
the plumbing that makes it reliably reachable even when every downstream
state reader bails on a parse error.

619 of 731 new or added lines in 8 files covered. (84.68%)

11 existing lines in 3 files now uncovered.

7736 of 9463 relevant lines covered (81.75%)

3.93 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

83.16
/operator/internal/controller/skyhook_controller.go


Source Not Available

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc