Skip to content

Commit a0c5812

Browse files
committed
fix: report async workspace deletes correctly
1 parent 9f5e827 commit a0c5812

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

internal/aggregated/storage/storage_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -697,8 +697,8 @@ func TestWorkspaceStorageCRUDWithCoderSDK(t *testing.T) {
697697
if err != nil {
698698
t.Fatalf("expected workspace delete to succeed: %v", err)
699699
}
700-
if !deleted {
701-
t.Fatal("expected delete to report deleted=true")
700+
if deleted {
701+
t.Fatal("expected delete to report deleted=false for async delete transition")
702702
}
703703
if !containsTransition(state.buildTransitionsSnapshot(), codersdk.WorkspaceTransitionDelete) {
704704
t.Fatal("expected delete to queue delete transition")

internal/aggregated/storage/workspace.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -481,7 +481,9 @@ func (s *WorkspaceStorage) Delete(
481481
return nil, false, coder.MapCoderError(err, aggregationv1alpha1.Resource("coderworkspaces"), name)
482482
}
483483

484-
return &metav1.Status{Status: metav1.StatusSuccess}, true, nil
484+
// Deletion is asynchronous in Coder: we only enqueue a delete build transition here.
485+
// Report deleted=false so Kubernetes callers know the resource is not gone yet.
486+
return &metav1.Status{Status: metav1.StatusSuccess}, false, nil
485487
}
486488

487489
// ConvertToTable converts a workspace object or list into kubectl table output.

0 commit comments

Comments
 (0)