From f8086f2dac1e01fb37e137f3d38ddc5aa3bbb7e0 Mon Sep 17 00:00:00 2001 From: Clayton Coleman Date: Mon, 23 Jan 2023 20:37:31 -0500 Subject: [PATCH] kubelet: Convert IsMirrorOf to a function Shrinks the PodManager interface by one method, no abstraction is necessary here. --- pkg/kubelet/kubelet.go | 2 +- pkg/kubelet/pod/pod_manager.go | 6 ++---- pkg/kubelet/pod/testing/mock_manager.go | 14 -------------- 3 files changed, 3 insertions(+), 19 deletions(-) diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index a2a74aba453..f38bbb8f263 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -1823,7 +1823,7 @@ func (kl *Kubelet) SyncPod(ctx context.Context, updateType kubetypes.SyncPodType if kubetypes.IsStaticPod(pod) { deleted := false if mirrorPod != nil { - if mirrorPod.DeletionTimestamp != nil || !kl.podManager.IsMirrorPodOf(mirrorPod, pod) { + if mirrorPod.DeletionTimestamp != nil || !kubepod.IsMirrorPodOf(mirrorPod, pod) { // The mirror pod is semantically different from the static pod. Remove // it. The mirror pod will get recreated later. klog.InfoS("Trying to delete pod", "pod", klog.KObj(pod), "podUID", mirrorPod.ObjectMeta.UID) diff --git a/pkg/kubelet/pod/pod_manager.go b/pkg/kubelet/pod/pod_manager.go index 69457e6c983..c33c507a494 100644 --- a/pkg/kubelet/pod/pod_manager.go +++ b/pkg/kubelet/pod/pod_manager.go @@ -86,9 +86,6 @@ type Manager interface { // GetUIDTranslations returns the mappings of static pod UIDs to mirror pod // UIDs and mirror pod UIDs to static pod UIDs. GetUIDTranslations() (podToMirror map[kubetypes.ResolvedPodUID]kubetypes.MirrorPodUID, mirrorToPod map[kubetypes.MirrorPodUID]kubetypes.ResolvedPodUID) - // IsMirrorPodOf returns true if mirrorPod is a correct representation of - // pod; false otherwise. - IsMirrorPodOf(mirrorPod, pod *v1.Pod) bool MirrorClient } @@ -292,7 +289,8 @@ func (pm *basicManager) GetOrphanedMirrorPodNames() []string { return podFullNames } -func (pm *basicManager) IsMirrorPodOf(mirrorPod, pod *v1.Pod) bool { +// IsMirrorPodOf returns true if pod and mirrorPod are associated with each other. +func IsMirrorPodOf(mirrorPod, pod *v1.Pod) bool { // Check name and namespace first. if pod.Name != mirrorPod.Name || pod.Namespace != mirrorPod.Namespace { return false diff --git a/pkg/kubelet/pod/testing/mock_manager.go b/pkg/kubelet/pod/testing/mock_manager.go index 2de02e970e6..c4cf0dcf553 100644 --- a/pkg/kubelet/pod/testing/mock_manager.go +++ b/pkg/kubelet/pod/testing/mock_manager.go @@ -238,20 +238,6 @@ func (mr *MockManagerMockRecorder) GetUIDTranslations() *gomock.Call { return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetUIDTranslations", reflect.TypeOf((*MockManager)(nil).GetUIDTranslations)) } -// IsMirrorPodOf mocks base method. -func (m *MockManager) IsMirrorPodOf(arg0, arg1 *v1.Pod) bool { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "IsMirrorPodOf", arg0, arg1) - ret0, _ := ret[0].(bool) - return ret0 -} - -// IsMirrorPodOf indicates an expected call of IsMirrorPodOf. -func (mr *MockManagerMockRecorder) IsMirrorPodOf(arg0, arg1 interface{}) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "IsMirrorPodOf", reflect.TypeOf((*MockManager)(nil).IsMirrorPodOf), arg0, arg1) -} - // SetPods mocks base method. func (m *MockManager) SetPods(arg0 []*v1.Pod) { m.ctrl.T.Helper()