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

aws / karpenter-provider-aws / 12773590313

14 Jan 2025 05:59PM UTC coverage: 64.983% (+0.05%) from 64.937%
12773590313

Pull #7597

github

saurav-agarwalla
fix: unify nodeclass status and termination controllers to prevent race conditions from leaking instance profiles

As part of a recent investigation, I found that the nodeclass status and termination controllers race against each other at times, and depending on who wins the race, the instance profile can be leaked. Discussed options with the team and merging these two controllers is the most straightforward thing to do at the moment. All other solutions are not a 100% failsafe with the exception of adding new finalizers for instance profiles but they have their own issues due to being backwards incompatible.

The primary downside of this change is that nodeclaim delete events can trigger a reconciliation now if the nodeclass is not deleted/deleting but looking through the current list of reconcilers, the impact of that should be minimal since all we're doing is making a few additional calls to EC2 for subnets and security groups and the additional calls for Instance Profile reconciliation only when nodeclaims are getting deleted.
Pull Request #7597: fix: unify nodeclass status and termination controllers to prevent ra…

51 of 64 new or added lines in 3 files covered. (79.69%)

5775 of 8887 relevant lines covered (64.98%)

0.73 hits per line

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

70.0
/pkg/controllers/nodeclass/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