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

kubernetes-sigs / karpenter / 35323450290
83%
main: 83%

Build:
Build:
LAST BUILD BRANCH: ignore-during-disruption-simulation
DEFAULT BRANCH: main
Ran 18 Sep 2026 08:31AM UTC
Jobs 1
Files 187
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

18 Sep 2026 08:14AM UTC coverage: 83.332% (-0.02%) from 83.352%
35323450290

Pull #3330

github

semx
fix: set DisruptionReason on forceful expiration and garbage collection

The DisruptionReason condition is set only by the disruption queue, so a
NodeClaim deleted by the expiration or garbage collection controller
carries no reason, and the pod drain metric reports it as a forceful
termination with no detail.

Set the condition before the delete in both controllers, with Expired or
GarbageCollected as the reason and a message that names the expireAfter
and timestamps, or the missing instance. The NodeClaim is re-read and
patched with an optimistic lock, retried on conflict, so a concurrent
status update is not overwritten; a patch failure returns before the
delete so the reconcile retries.

The reasons are condition reasons, not NodePool budget reasons, so they
are not added to the DisruptionReason enum, and they follow the
PascalCase of the voluntary reasons set on the same condition.

Fixes #2023

Signed-off-by: Sergey Sannikov <sergey@sannikov.dev>
Pull Request #3330: fix: set DisruptionReason on forceful expiration and garbage collection

19 of 28 new or added lines in 2 files covered. (67.86%)

2 existing lines in 1 file now uncovered.

17523 of 21028 relevant lines covered (83.33%)

76697.36 hits per line

Uncovered Changes

Lines Coverage ∆ File
5
73.91
-1.73% pkg/controllers/nodeclaim/garbagecollection/controller.go
4
81.33
-2.27% pkg/controllers/nodeclaim/expiration/controller.go

Coverage Regressions

Lines Coverage ∆ File
2
76.77
-0.79% pkg/controllers/node/termination/controller.go
Jobs
ID Job ID Ran Files Coverage
1 35323450290.1 18 Sep 2026 08:31AM UTC 187
83.33
GitHub Action Run
Source Files on build 35323450290
  • Tree
  • List 187
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #3330
  • PR Base - main (#35157266801)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc