func()

in argocd-clusterprofile-syncer/cmd/main.go [79:100]


func (r *ClusterProfileReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {
	logger := log.FromContext(ctx).WithValues("clusterprofile", req.NamespacedName)
	logger.Info("Starting reconciliation")

	clusterProfile := &clusterinventoryv1alpha1.ClusterProfile{}
	if err := r.Get(ctx, req.NamespacedName, clusterProfile); err != nil {
		if apierrors.IsNotFound(err) {
			logger.Info("ClusterProfile not found, cleaning up associated secret")
			return ctrl.Result{}, r.deleteClusterSecret(ctx, req)
		}
		logger.Error(err, "Failed to get ClusterProfile")
		return ctrl.Result{}, client.IgnoreNotFound(err)
	}

	if err := r.createOrUpdateClusterSecret(ctx, clusterProfile); err != nil {
		logger.Error(err, "Failed to reconcile secret")
		return ctrl.Result{RequeueAfter: time.Minute}, err
	}

	logger.Info("Reconciliation completed successfully")
	return ctrl.Result{}, nil
}