@@ -332,7 +332,7 @@ func deployUnstructured(ctx context.Context, deployingToMgmtCluster bool, destCo
332332 logger .V (logs .LogDebug ).Info (fmt .Sprintf ("deploying resource %s %s/%s (deploy to management cluster: %v)" ,
333333 policy .GetKind (), policy .GetNamespace (), policy .GetName (), deployingToMgmtCluster ))
334334
335- resource , policyHash := getResource (policy , referencedObject , profileTier , featureID , logger )
335+ resource , policyHash := getResource (policy , hasIgnoreConfigurationDriftAnnotation ( policy ), referencedObject , profileTier , featureID , logger )
336336
337337 // If policy is namespaced, create namespace if not already existing
338338 err = createNamespace (ctx , destClient , clusterSummary , policy .GetNamespace ())
@@ -520,17 +520,20 @@ func canDeployResource(ctx context.Context, dr dynamic.ResourceInterface, policy
520520 return resourceInfo , false , nil
521521}
522522
523- func generateResourceReport (policyHash string , resourceInfo * deployer.ResourceInfo , resource * configv1beta1. Resource ,
524- ) * configv1beta1.ResourceReport {
523+ func generateResourceReport (policyHash string , resourceInfo * deployer.ResourceInfo ,
524+ resource * configv1beta1. Resource ) * configv1beta1.ResourceReport {
525525
526+ resourceReport := & configv1beta1.ResourceReport {Resource : * resource }
526527 if resourceInfo .ResourceVersion == "" {
527- return & configv1beta1. ResourceReport { Resource : * resource , Action : string (configv1beta1 .CreateResourceAction )}
528+ resourceReport . Action = string (configv1beta1 .CreateResourceAction )
528529 } else if policyHash != resourceInfo .Hash {
529- return & configv1beta1. ResourceReport { Resource : * resource , Action : string (configv1beta1 .UpdateResourceAction )}
530+ resourceReport . Action = string (configv1beta1 .UpdateResourceAction )
530531 } else {
531- return & configv1beta1. ResourceReport { Resource : * resource , Action : string (configv1beta1 .NoResourceAction ),
532- Message : "Object already deployed. And policy referenced by ClusterProfile has not changed since last deployment." }
532+ resourceReport . Action = string (configv1beta1 .NoResourceAction )
533+ resourceReport . Message = "Object already deployed. And policy referenced by ClusterProfile has not changed since last deployment."
533534 }
535+
536+ return resourceReport
534537}
535538
536539// addExtraLabels adds ExtraLabels to policy.
@@ -580,8 +583,8 @@ func addExtraAnnotations(policy *unstructured.Unstructured, extraAnnotations map
580583}
581584
582585// getResource returns sveltos Resource and the resource hash hash
583- func getResource (policy * unstructured.Unstructured , referencedObject * corev1. ObjectReference ,
584- tier int32 , featureID configv1beta1.FeatureID , logger logr.Logger ,
586+ func getResource (policy * unstructured.Unstructured , ignoreForConfigurationDrift bool ,
587+ referencedObject * corev1. ObjectReference , tier int32 , featureID configv1beta1.FeatureID , logger logr.Logger ,
585588) (resource * configv1beta1.Resource , policyHash string ) {
586589
587590 resource = & configv1beta1.Resource {
@@ -595,6 +598,7 @@ func getResource(policy *unstructured.Unstructured, referencedObject *corev1.Obj
595598 Name : referencedObject .Name ,
596599 Kind : referencedObject .Kind ,
597600 },
601+ IgnoreForConfigurationDrift : ignoreForConfigurationDrift ,
598602 }
599603
600604 var err error
0 commit comments