[cluster-api] Handle ignored errors
This commit is contained in:
		
							parent
							
								
									edf8779bda
								
							
						
					
					
						commit
						6040d29252
					
				|  | @ -270,7 +270,7 @@ func (c *machineController) findMachineByProviderID(providerID normalizedProvide | |||
| 		return nil, nil | ||||
| 	} | ||||
| 
 | ||||
| 	machineID, _ := node.Annotations[machineAnnotationKey] | ||||
| 	machineID := node.Annotations[machineAnnotationKey] | ||||
| 	return c.findMachine(machineID) | ||||
| } | ||||
| 
 | ||||
|  | @ -380,7 +380,9 @@ func newMachineController( | |||
| 			Resource: resourceNameMachineDeployment, | ||||
| 		} | ||||
| 		machineDeploymentInformer = managementInformerFactory.ForResource(gvrMachineDeployment) | ||||
| 		machineDeploymentInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{}) | ||||
| 		if _, err := machineDeploymentInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{}); err != nil { | ||||
| 			return nil, fmt.Errorf("failed to add event handler for resource %q: %v", resourceNameMachineDeployment, err) | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	gvrMachineSet := schema.GroupVersionResource{ | ||||
|  | @ -389,7 +391,9 @@ func newMachineController( | |||
| 		Resource: resourceNameMachineSet, | ||||
| 	} | ||||
| 	machineSetInformer := managementInformerFactory.ForResource(gvrMachineSet) | ||||
| 	machineSetInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{}) | ||||
| 	if _, err := machineSetInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{}); err != nil { | ||||
| 		return nil, fmt.Errorf("failed to add event handler for resource %q: %v", resourceNameMachineSet, err) | ||||
| 	} | ||||
| 
 | ||||
| 	gvrMachine := schema.GroupVersionResource{ | ||||
| 		Group:    CAPIGroup, | ||||
|  | @ -397,10 +401,14 @@ func newMachineController( | |||
| 		Resource: resourceNameMachine, | ||||
| 	} | ||||
| 	machineInformer := managementInformerFactory.ForResource(gvrMachine) | ||||
| 	machineInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{}) | ||||
| 	if _, err := machineInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{}); err != nil { | ||||
| 		return nil, fmt.Errorf("failed to add event handler for resource %q: %v", resourceNameMachine, err) | ||||
| 	} | ||||
| 
 | ||||
| 	nodeInformer := workloadInformerFactory.Core().V1().Nodes().Informer() | ||||
| 	nodeInformer.AddEventHandler(cache.ResourceEventHandlerFuncs{}) | ||||
| 	if _, err := nodeInformer.AddEventHandler(cache.ResourceEventHandlerFuncs{}); err != nil { | ||||
| 		return nil, fmt.Errorf("failed to add event handler for resource %q: %v", "nodes", err) | ||||
| 	} | ||||
| 
 | ||||
| 	if err := machineInformer.Informer().GetIndexer().AddIndexers(cache.Indexers{ | ||||
| 		machineProviderIDIndex: indexMachineByProviderID, | ||||
|  | @ -750,7 +758,7 @@ func (c *machineController) getInfrastructureResource(resource schema.GroupVersi | |||
| 
 | ||||
| 	infra, ok := obj.(*unstructured.Unstructured) | ||||
| 	if !ok { | ||||
| 		err := fmt.Errorf("Unable to convert infrastructure reference for %s/%s", namespace, name) | ||||
| 		err := fmt.Errorf("unable to convert infrastructure reference for %s/%s", namespace, name) | ||||
| 		klog.V(4).Infof("%v", err) | ||||
| 		return nil, err | ||||
| 	} | ||||
|  |  | |||
|  | @ -171,9 +171,7 @@ func mustCreateTestController(t *testing.T, testConfigs ...*testConfig) (*machin | |||
| 		if subresource != "scale" { | ||||
| 			// Handle a bug in the client-go fakeNamespaceScaleClient, where the action namespace and subresource are
 | ||||
| 			// switched for update actions
 | ||||
| 			if action.GetVerb() == "update" && action.GetNamespace() == "scale" { | ||||
| 				subresource = "scale" | ||||
| 			} else { | ||||
| 			if action.GetVerb() != "update" || action.GetNamespace() != "scale" { | ||||
| 				// Do not attempt to respond to anything but scale subresource requests
 | ||||
| 				return false, nil, nil | ||||
| 			} | ||||
|  | @ -385,7 +383,9 @@ func createTestConfigs(specs ...testSpec) []*testConfig { | |||
| 			} | ||||
| 			config.machineDeployment.SetAnnotations(spec.annotations) | ||||
| 			config.machineDeployment.SetLabels(machineDeploymentLabels) | ||||
| 			unstructured.SetNestedStringMap(config.machineDeployment.Object, machineDeploymentLabels, "spec", "selector", "matchLabels") | ||||
| 			if err := unstructured.SetNestedStringMap(config.machineDeployment.Object, machineDeploymentLabels, "spec", "selector", "matchLabels"); err != nil { | ||||
| 				panic(err) | ||||
| 			} | ||||
| 
 | ||||
| 			ownerRefs := []metav1.OwnerReference{ | ||||
| 				{ | ||||
|  | @ -397,7 +397,9 @@ func createTestConfigs(specs ...testSpec) []*testConfig { | |||
| 			config.machineSet.SetOwnerReferences(ownerRefs) | ||||
| 		} | ||||
| 		config.machineSet.SetLabels(machineSetLabels) | ||||
| 		unstructured.SetNestedStringMap(config.machineSet.Object, machineSetLabels, "spec", "selector", "matchLabels") | ||||
| 		if err := unstructured.SetNestedStringMap(config.machineSet.Object, machineSetLabels, "spec", "selector", "matchLabels"); err != nil { | ||||
| 			panic(err) | ||||
| 		} | ||||
| 
 | ||||
| 		machineOwner := metav1.OwnerReference{ | ||||
| 			Name: config.machineSet.GetName(), | ||||
|  | @ -418,7 +420,9 @@ func createTestConfigs(specs ...testSpec) []*testConfig { | |||
| 					}, | ||||
| 				}, | ||||
| 			} | ||||
| 			unstructured.SetNestedStringMap(config.machineTemplate.Object, spec.capacity, "status", "capacity") | ||||
| 			if err := unstructured.SetNestedStringMap(config.machineTemplate.Object, spec.capacity, "status", "capacity"); err != nil { | ||||
| 				panic(err) | ||||
| 			} | ||||
| 		} else { | ||||
| 			klog.V(4).Infof("not adding capacity") | ||||
| 		} | ||||
|  | @ -1899,11 +1903,6 @@ func Test_machineController_nodeGroupForNode(t *testing.T) { | |||
| 	}, nil) | ||||
| 	mdTestConfigs = append(mdTestConfigs, uniqueMDConfig) | ||||
| 
 | ||||
| 	allMachineDeployments := make([]*unstructured.Unstructured, 0, len(mdTestConfigs)) | ||||
| 	for i := range mdTestConfigs { | ||||
| 		allMachineDeployments = append(allMachineDeployments, mdTestConfigs[i].machineDeployment) | ||||
| 	} | ||||
| 
 | ||||
| 	uniqueMSConfig := createMachineSetTestConfig(RandomString(6), RandomString(6), RandomString(6), 1, map[string]string{ | ||||
| 		nodeGroupMinSizeAnnotationKey: "1", | ||||
| 		nodeGroupMaxSizeAnnotationKey: "10", | ||||
|  | @ -1915,11 +1914,6 @@ func Test_machineController_nodeGroupForNode(t *testing.T) { | |||
| 	}, nil) | ||||
| 	msTestConfigs = append(msTestConfigs, uniqueMSConfig) | ||||
| 
 | ||||
| 	allMachineSets := make([]*unstructured.Unstructured, 0, len(msTestConfigs)) | ||||
| 	for i := range msTestConfigs { | ||||
| 		allMachineSets = append(allMachineSets, msTestConfigs[i].machineSet) | ||||
| 	} | ||||
| 
 | ||||
| 	allTestConfigs := append(mdTestConfigs, msTestConfigs...) | ||||
| 
 | ||||
| 	for _, tc := range []struct { | ||||
|  |  | |||
|  | @ -281,6 +281,9 @@ func TestNodeGroupIncreaseSizeErrors(t *testing.T) { | |||
| 
 | ||||
| 		scalableResource, err := ng.machineController.managementScaleClient.Scales(testConfig.spec.namespace). | ||||
| 			Get(context.TODO(), gvr.GroupResource(), ng.scalableResource.Name(), metav1.GetOptions{}) | ||||
| 		if err != nil { | ||||
| 			t.Fatalf("unexpected error: %v", err) | ||||
| 		} | ||||
| 
 | ||||
| 		if scalableResource.Spec.Replicas != tc.initial { | ||||
| 			t.Errorf("expected %v, got %v", tc.initial, scalableResource.Spec.Replicas) | ||||
|  | @ -354,6 +357,9 @@ func TestNodeGroupIncreaseSize(t *testing.T) { | |||
| 
 | ||||
| 		scalableResource, err := ng.machineController.managementScaleClient.Scales(ng.scalableResource.Namespace()). | ||||
| 			Get(context.TODO(), gvr.GroupResource(), ng.scalableResource.Name(), metav1.GetOptions{}) | ||||
| 		if err != nil { | ||||
| 			t.Fatalf("unexpected error: %v", err) | ||||
| 		} | ||||
| 
 | ||||
| 		if scalableResource.Spec.Replicas != tc.expected { | ||||
| 			t.Errorf("expected %v, got %v", tc.expected, scalableResource.Spec.Replicas) | ||||
|  | @ -478,8 +484,12 @@ func TestNodeGroupDecreaseTargetSize(t *testing.T) { | |||
| 				} | ||||
| 			}, | ||||
| 		} | ||||
| 		controller.machineSetInformer.Informer().AddEventHandler(handler) | ||||
| 		controller.machineDeploymentInformer.Informer().AddEventHandler(handler) | ||||
| 		if _, err := controller.machineSetInformer.Informer().AddEventHandler(handler); err != nil { | ||||
| 			t.Fatalf("unexpected error adding event handler for machineSetInformer: %v", err) | ||||
| 		} | ||||
| 		if _, err := controller.machineDeploymentInformer.Informer().AddEventHandler(handler); err != nil { | ||||
| 			t.Fatalf("unexpected error adding event handler for machineDeploymentInformer: %v", err) | ||||
| 		} | ||||
| 
 | ||||
| 		scalableResource.Spec.Replicas += tc.targetSizeIncrement | ||||
| 
 | ||||
|  | @ -606,6 +616,9 @@ func TestNodeGroupDecreaseSizeErrors(t *testing.T) { | |||
| 
 | ||||
| 		scalableResource, err := ng.machineController.managementScaleClient.Scales(testConfig.spec.namespace). | ||||
| 			Get(context.TODO(), gvr.GroupResource(), ng.scalableResource.Name(), metav1.GetOptions{}) | ||||
| 		if err != nil { | ||||
| 			t.Fatalf("unexpected error: %v", err) | ||||
| 		} | ||||
| 
 | ||||
| 		if scalableResource.Spec.Replicas != tc.initial { | ||||
| 			t.Errorf("expected %v, got %v", tc.initial, scalableResource.Spec.Replicas) | ||||
|  | @ -1126,6 +1139,9 @@ func TestNodeGroupDeleteNodesSequential(t *testing.T) { | |||
| 
 | ||||
| 		scalableResource, err := ng.machineController.managementScaleClient.Scales(testConfig.spec.namespace). | ||||
| 			Get(context.TODO(), gvr.GroupResource(), ng.scalableResource.Name(), metav1.GetOptions{}) | ||||
| 		if err != nil { | ||||
| 			t.Fatalf("unexpected error: %v", err) | ||||
| 		} | ||||
| 
 | ||||
| 		if scalableResource.Spec.Replicas != int32(expectedSize) { | ||||
| 			t.Errorf("expected %v, got %v", expectedSize, scalableResource.Spec.Replicas) | ||||
|  | @ -1181,7 +1197,9 @@ func TestNodeGroupWithFailedMachine(t *testing.T) { | |||
| 		machine := testConfig.machines[3].DeepCopy() | ||||
| 
 | ||||
| 		unstructured.RemoveNestedField(machine.Object, "spec", "providerID") | ||||
| 		unstructured.SetNestedField(machine.Object, "FailureMessage", "status", "failureMessage") | ||||
| 		if err := unstructured.SetNestedField(machine.Object, "FailureMessage", "status", "failureMessage"); err != nil { | ||||
| 			t.Fatalf("unexpected error setting nested field: %v", err) | ||||
| 		} | ||||
| 
 | ||||
| 		if err := updateResource(controller.managementClient, controller.machineInformer, controller.machineResource, machine); err != nil { | ||||
| 			t.Fatalf("unexpected error updating machine, got %v", err) | ||||
|  |  | |||
|  | @ -66,6 +66,9 @@ func TestSetSize(t *testing.T) { | |||
| 
 | ||||
| 		s, err := sr.controller.managementScaleClient.Scales(testResource.GetNamespace()). | ||||
| 			Get(context.TODO(), gvr.GroupResource(), testResource.GetName(), metav1.GetOptions{}) | ||||
| 		if err != nil { | ||||
| 			t.Fatalf("error getting scale subresource: %v", err) | ||||
| 		} | ||||
| 
 | ||||
| 		if s.Spec.Replicas != int32(updatedReplicas) { | ||||
| 			t.Errorf("expected %v, got: %v", updatedReplicas, s.Spec.Replicas) | ||||
|  | @ -185,8 +188,12 @@ func TestReplicas(t *testing.T) { | |||
| 			}, | ||||
| 		} | ||||
| 
 | ||||
| 		controller.machineSetInformer.Informer().AddEventHandler(handler) | ||||
| 		controller.machineDeploymentInformer.Informer().AddEventHandler(handler) | ||||
| 		if _, err := controller.machineSetInformer.Informer().AddEventHandler(handler); err != nil { | ||||
| 			t.Fatal(err) | ||||
| 		} | ||||
| 		if _, err := controller.machineDeploymentInformer.Informer().AddEventHandler(handler); err != nil { | ||||
| 			t.Fatal(err) | ||||
| 		} | ||||
| 
 | ||||
| 		_, err = sr.controller.managementScaleClient.Scales(testResource.GetNamespace()). | ||||
| 			Update(context.TODO(), gvr.GroupResource(), s, metav1.UpdateOptions{}) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue