mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-04 04:08:16 +00:00 
			
		
		
		
	Merge pull request #127579 from chrishenzie/context
Propagate existing ctx instead of context.TODO() in sample-controller
This commit is contained in:
		@@ -267,7 +267,7 @@ func (c *Controller) syncHandler(ctx context.Context, objectRef cache.ObjectName
 | 
			
		||||
	deployment, err := c.deploymentsLister.Deployments(foo.Namespace).Get(deploymentName)
 | 
			
		||||
	// If the resource doesn't exist, we'll create it
 | 
			
		||||
	if errors.IsNotFound(err) {
 | 
			
		||||
		deployment, err = c.kubeclientset.AppsV1().Deployments(foo.Namespace).Create(context.TODO(), newDeployment(foo), metav1.CreateOptions{FieldManager: FieldManager})
 | 
			
		||||
		deployment, err = c.kubeclientset.AppsV1().Deployments(foo.Namespace).Create(ctx, newDeployment(foo), metav1.CreateOptions{FieldManager: FieldManager})
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// If an error occurs during Get/Create, we'll requeue the item so we can
 | 
			
		||||
@@ -290,7 +290,7 @@ func (c *Controller) syncHandler(ctx context.Context, objectRef cache.ObjectName
 | 
			
		||||
	// should update the Deployment resource.
 | 
			
		||||
	if foo.Spec.Replicas != nil && *foo.Spec.Replicas != *deployment.Spec.Replicas {
 | 
			
		||||
		logger.V(4).Info("Update deployment resource", "currentReplicas", *foo.Spec.Replicas, "desiredReplicas", *deployment.Spec.Replicas)
 | 
			
		||||
		deployment, err = c.kubeclientset.AppsV1().Deployments(foo.Namespace).Update(context.TODO(), newDeployment(foo), metav1.UpdateOptions{FieldManager: FieldManager})
 | 
			
		||||
		deployment, err = c.kubeclientset.AppsV1().Deployments(foo.Namespace).Update(ctx, newDeployment(foo), metav1.UpdateOptions{FieldManager: FieldManager})
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// If an error occurs during Update, we'll requeue the item so we can
 | 
			
		||||
@@ -302,7 +302,7 @@ func (c *Controller) syncHandler(ctx context.Context, objectRef cache.ObjectName
 | 
			
		||||
 | 
			
		||||
	// Finally, we update the status block of the Foo resource to reflect the
 | 
			
		||||
	// current state of the world
 | 
			
		||||
	err = c.updateFooStatus(foo, deployment)
 | 
			
		||||
	err = c.updateFooStatus(ctx, foo, deployment)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
@@ -311,7 +311,7 @@ func (c *Controller) syncHandler(ctx context.Context, objectRef cache.ObjectName
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *Controller) updateFooStatus(foo *samplev1alpha1.Foo, deployment *appsv1.Deployment) error {
 | 
			
		||||
func (c *Controller) updateFooStatus(ctx context.Context, foo *samplev1alpha1.Foo, deployment *appsv1.Deployment) error {
 | 
			
		||||
	// NEVER modify objects from the store. It's a read-only, local cache.
 | 
			
		||||
	// You can use DeepCopy() to make a deep copy of original object and modify this copy
 | 
			
		||||
	// Or create a copy manually for better performance
 | 
			
		||||
@@ -321,7 +321,7 @@ func (c *Controller) updateFooStatus(foo *samplev1alpha1.Foo, deployment *appsv1
 | 
			
		||||
	// we must use Update instead of UpdateStatus to update the Status block of the Foo resource.
 | 
			
		||||
	// UpdateStatus will not allow changes to the Spec of the resource,
 | 
			
		||||
	// which is ideal for ensuring nothing other than resource status has been updated.
 | 
			
		||||
	_, err := c.sampleclientset.SamplecontrollerV1alpha1().Foos(foo.Namespace).UpdateStatus(context.TODO(), fooCopy, metav1.UpdateOptions{FieldManager: FieldManager})
 | 
			
		||||
	_, err := c.sampleclientset.SamplecontrollerV1alpha1().Foos(foo.Namespace).UpdateStatus(ctx, fooCopy, metav1.UpdateOptions{FieldManager: FieldManager})
 | 
			
		||||
	return err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user