-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ws-manager] Properly stop workspaces that never make it to the RUNNING phase #5396
Conversation
Codecov Report
@@ Coverage Diff @@
## main #5396 +/- ##
=========================================
+ Coverage 0 38.28% +38.28%
=========================================
Files 0 13 +13
Lines 0 3772 +3772
=========================================
+ Hits 0 1444 +1444
- Misses 0 2203 +2203
- Partials 0 125 +125
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
I'll add a fix for #5275 as well /hold |
/lgtm |
LGTM label has been added. Git tree hash: 98c10f75005742afb7f6249622245cdc62558e23
|
/hold cancel |
@csweichel missing file? |
/lgtm |
LGTM label has been added. Git tree hash: 304aea188d4c79901cc9a8830b05003d639f4a55
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: aledbf Associated issue: #5271 The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
When we introduced the finalizer based shutdown mechanism we did not consider that workspaces which never make it to the running phase don't get a finalizer at all. The status machinery assumed that the finalizer would run eventually and set a disposal state annotation.
This PR fixes that issue by marking a workspace as
stopped
if it's being deleted and doesn't have a finalizer. In the regular shutdown path this works because we add the disposal annotation before we remove the finalizer.In addition, this PR introduces a unit test for
actOnPodEvent
by making it act on an interface only, and recording the calls made as fixtures.actOnPodEvent
tests re-use thestatus_*
test fixtures.fixes #5271
fixes #5273
fixes #5274
fixes #5275