func()

in appconfigmgrv2/controllers/network_policies.go [67:97]


func (r *AppEnvConfigTemplateV2Reconciler) reconcileNetworkPolicy(
	ctx context.Context,
	desired *netv1.NetworkPolicy,
) error {
	found := &netv1.NetworkPolicy{}
	err := r.Get(ctx, types.NamespacedName{
		Name:      desired.Name,
		Namespace: desired.Namespace,
	}, found)
	if err != nil {
		if errors.IsNotFound(err) {
			log.Info("Creating", "resource", "networkpolicies", "namespace", found.Namespace, "name", found.Name)
			if err := r.Create(ctx, desired); err != nil {
				return fmt.Errorf("creating: %v", err)
			}
			return nil
		} else {
			return fmt.Errorf("getting: %v", err)
		}
	}

	if !reflect.DeepEqual(desired.Spec, found.Spec) {
		found.Spec = desired.Spec
		log.Info("Updating", "resource", "networkpolicies", "namespace", found.Namespace, "name", found.Name)
		if err := r.Update(ctx, found); err != nil {
			return fmt.Errorf("updating: %v", err)
		}
	}

	return nil
}