diff --git a/pkg/controller/kubelet-config/kubelet_config_nodes.go b/pkg/controller/kubelet-config/kubelet_config_nodes.go index 65a43676e7..c77d8aa689 100644 --- a/pkg/controller/kubelet-config/kubelet_config_nodes.go +++ b/pkg/controller/kubelet-config/kubelet_config_nodes.go @@ -73,10 +73,6 @@ func (ctrl *Controller) syncNodeConfigHandler(key string) error { err := fmt.Errorf("could not fetch Node: %w", err) return err } - if err := ctrl.cleanUpDuplicatedMC(managedNodeConfigKeyPrefix); err != nil { - return err - } - // Fetch the controllerconfig cc, err := ctrl.ccLister.Get(ctrlcommon.ControllerConfigName) if err != nil { @@ -163,6 +159,9 @@ func (ctrl *Controller) syncNodeConfigHandler(key string) error { klog.Infof("Applied Node configuration %v on MachineConfigPool %v", key, pool.Name) ctrlcommon.UpdateStateMetric(ctrlcommon.MCCSubControllerState, "machine-config-controller-kubelet-config", "Sync NodeConfig", pool.Name) } + if err := ctrl.cleanUpDuplicatedMC(managedNodeConfigKeyPrefix); err != nil { + return err + } // fetch the kubeletconfigs kcs, err := ctrl.mckLister.List(labels.Everything()) if err != nil { diff --git a/pkg/controller/kubelet-config/kubelet_config_nodes_test.go b/pkg/controller/kubelet-config/kubelet_config_nodes_test.go index e75fcb786f..fb94bbbb1b 100644 --- a/pkg/controller/kubelet-config/kubelet_config_nodes_test.go +++ b/pkg/controller/kubelet-config/kubelet_config_nodes_test.go @@ -74,6 +74,7 @@ func TestNodeConfigDefault(t *testing.T) { f.expectGetMachineConfigAction(mcsDeprecated) f.expectGetMachineConfigAction(mcs) f.expectCreateMachineConfigAction(mcs) + f.expectGetMachineConfigAction(mcs) f.runNode(getKeyFromConfigNode(nodeConfig, t)) }) }