From 3bbba2548e6386ad541bc56cb8bfe03cedd255f4 Mon Sep 17 00:00:00 2001 From: Vladislav Sukhin Date: Thu, 12 Dec 2024 13:22:03 +0300 Subject: [PATCH] cleanup pvcs Signed-off-by: Vladislav Sukhin --- .../executionworker/controller/cleanup.go | 14 ++++++++++ .../mock_intermediate.go | 28 +++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/pkg/testworkflows/executionworker/controller/cleanup.go b/pkg/testworkflows/executionworker/controller/cleanup.go index 1a6faa7d8b6..a70d7194ee9 100644 --- a/pkg/testworkflows/executionworker/controller/cleanup.go +++ b/pkg/testworkflows/executionworker/controller/cleanup.go @@ -57,6 +57,17 @@ func cleanupJobs(labelName string) func(ctx context.Context, clientSet kubernete } } +func cleanupPvcs(labelName string) func(ctx context.Context, clientSet kubernetes.Interface, namespace, id string) error { + return func(ctx context.Context, clientSet kubernetes.Interface, namespace, id string) error { + return clientSet.CoreV1().PersistentVolumeClaims(namespace).DeleteCollection(ctx, metav1.DeleteOptions{ + GracePeriodSeconds: common.Ptr(int64(0)), + PropagationPolicy: common.Ptr(metav1.DeletePropagationBackground), + }, metav1.ListOptions{ + LabelSelector: fmt.Sprintf("%s=%s", labelName, id), + }) + } +} + func Cleanup(ctx context.Context, clientSet kubernetes.Interface, namespace, id string) error { var errs []error var errsMu sync.Mutex @@ -70,6 +81,8 @@ func Cleanup(ctx context.Context, clientSet kubernetes.Interface, namespace, id cleanupConfigMaps(constants.ResourceIdLabelName), cleanupSecrets(constants.RootResourceIdLabelName), cleanupSecrets(constants.ResourceIdLabelName), + cleanupPvcs(constants.RootResourceIdLabelName), + cleanupPvcs(constants.ResourceIdLabelName), } wg.Add(len(ops)) for _, op := range ops { @@ -96,6 +109,7 @@ func CleanupGroup(ctx context.Context, clientSet kubernetes.Interface, namespace cleanupPods(constants.GroupIdLabelName), cleanupConfigMaps(constants.GroupIdLabelName), cleanupSecrets(constants.GroupIdLabelName), + cleanupPvcs(constants.GroupIdLabelName), } wg.Add(len(ops)) for _, op := range ops { diff --git a/pkg/testworkflows/testworkflowprocessor/mock_intermediate.go b/pkg/testworkflows/testworkflowprocessor/mock_intermediate.go index 119db5cbdbf..5d42526cf59 100644 --- a/pkg/testworkflows/testworkflowprocessor/mock_intermediate.go +++ b/pkg/testworkflows/testworkflowprocessor/mock_intermediate.go @@ -79,6 +79,20 @@ func (mr *MockIntermediateMockRecorder) AddEmptyDirVolume(arg0, arg1 interface{} return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddEmptyDirVolume", reflect.TypeOf((*MockIntermediate)(nil).AddEmptyDirVolume), arg0, arg1) } +// AddPvc mocks base method. +func (m *MockIntermediate) AddPvc(arg0 v10.PersistentVolumeClaim) Intermediate { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "AddPvc", arg0) + ret0, _ := ret[0].(Intermediate) + return ret0 +} + +// AddPvc indicates an expected call of AddPvc. +func (mr *MockIntermediateMockRecorder) AddPvc(arg0 interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddPvc", reflect.TypeOf((*MockIntermediate)(nil).AddPvc), arg0) +} + // AddSecret mocks base method. func (m *MockIntermediate) AddSecret(arg0 v10.Secret) Intermediate { m.ctrl.T.Helper() @@ -220,6 +234,20 @@ func (mr *MockIntermediateMockRecorder) PodConfig() *gomock.Call { return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PodConfig", reflect.TypeOf((*MockIntermediate)(nil).PodConfig)) } +// Pvcs mocks base method. +func (m *MockIntermediate) Pvcs() []v10.PersistentVolumeClaim { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Pvcs") + ret0, _ := ret[0].([]v10.PersistentVolumeClaim) + return ret0 +} + +// Pvcs indicates an expected call of Pvcs. +func (mr *MockIntermediateMockRecorder) Pvcs() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Pvcs", reflect.TypeOf((*MockIntermediate)(nil).Pvcs)) +} + // Secrets mocks base method. func (m *MockIntermediate) Secrets() []v10.Secret { m.ctrl.T.Helper()