From 25d4b7da82f1a236d9af8add45569d654e0cf6b3 Mon Sep 17 00:00:00 2001 From: Haim Kortovich Date: Wed, 15 May 2024 14:22:18 -0500 Subject: [PATCH] Debug errors [ZITADOPER-1] --- .../controller/zitadelcluster_controller.go | 22 ++++++++++++------- src/pkg/condition/ready.go | 4 ++-- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/internal/controller/zitadelcluster_controller.go b/src/internal/controller/zitadelcluster_controller.go index e0d0f09..1edf031 100644 --- a/src/internal/controller/zitadelcluster_controller.go +++ b/src/internal/controller/zitadelcluster_controller.go @@ -107,9 +107,6 @@ func (r *ZitadelClusterReconciler) Reconcile(ctx context.Context, req ctrl.Reque return ctrl.Result{}, client.IgnoreNotFound(err) } - if err := r.patchStatus(ctx, &zitadel, r.patcher(ctx, &zitadel)); err != nil && !errors.IsNotFound(err) { - return ctrl.Result{}, err - } phases := []reconcilePhase{ { Name: "Spec", @@ -181,6 +178,10 @@ func (r *ZitadelClusterReconciler) Reconcile(ctx context.Context, req ctrl.Reque return result, err } } + + if err := r.patchStatus(ctx, &zitadel, r.patcher(ctx, &zitadel)); err != nil && !errors.IsNotFound(err) { + return ctrl.Result{}, err + } return ctrl.Result{RequeueAfter: 5 * time.Minute}, nil } @@ -373,7 +374,6 @@ func (r *ZitadelClusterReconciler) reconcileDefaultInstance(ctx context.Context, return ctrl.Result{}, fmt.Errorf("Error listing instances: %v", err) } for _, instance := range resp.Result { - fmt.Println(instance.Id) if instance.Id != zitadel.Status.DefaultInstanceId || instance.Id == "" { fmt.Println("DELETING INSTANCE") _, err := ztdClient.RemoveInstance(ctx, &pb.RemoveInstanceRequest{InstanceId: instance.Id}) @@ -393,9 +393,15 @@ func (r *ZitadelClusterReconciler) reconcileDefaultInstance(ctx context.Context, InstanceName: "DEFAULT", FirstOrgName: "DEFAULT", CustomDomain: zitadel.Spec.Host, - Owner: &pb.CreateInstanceRequest_Machine_{Machine: &pb.CreateInstanceRequest_Machine{Name: "k8s-operator", UserName: "k8s-operator", MachineKey: &pb.CreateInstanceRequest_MachineKey{Type: authn.KeyType_KEY_TYPE_JSON}, PersonalAccessToken: &pb.CreateInstanceRequest_PersonalAccessToken{}}}}) + Owner: &pb.CreateInstanceRequest_Machine_{Machine: &pb.CreateInstanceRequest_Machine{ + Name: "k8s-operator", + UserName: "k8s-operator", + MachineKey: &pb.CreateInstanceRequest_MachineKey{ + Type: authn.KeyType_KEY_TYPE_JSON}, + PersonalAccessToken: &pb.CreateInstanceRequest_PersonalAccessToken{}}, + }}) if err != nil { - return ctrl.Result{}, err + return ctrl.Result{}, fmt.Errorf("Error creating default instance: %v", err) } var machineKeyData zitadelClient.MachineKey if err := json.Unmarshal(resp.MachineKey, &machineKeyData); err != nil { @@ -423,7 +429,7 @@ func (r *ZitadelClusterReconciler) reconcileDefaultInstance(ctx context.Context, zitadel.Status.DefaultInstanceId = resp.InstanceId return ctrl.Result{}, r.Status().Patch(ctx, zitadel, patch) } else { - return ctrl.Result{}, err + return ctrl.Result{}, fmt.Errorf("Error getting instance with id: %s: %v", zitadel.Status.DefaultInstanceId, err) } } @@ -462,7 +468,7 @@ func (r *ZitadelClusterReconciler) patcher(ctx context.Context, zitadel *zitadel } zitadel.Status.Replicas = sts.Status.ReadyReplicas - condition.SetReadyWithDeployment(&zitadel.Status, &sts) + condition.SetReadyWithDeployment(&zitadel.Status, &sts, zitadel.Status.DefaultInstanceId) return nil } } diff --git a/src/pkg/condition/ready.go b/src/pkg/condition/ready.go index b688ab8..73965fe 100644 --- a/src/pkg/condition/ready.go +++ b/src/pkg/condition/ready.go @@ -51,8 +51,8 @@ func SetReadyFailed(c Conditioner) { SetReadyFailedWithMessage(c, "Failed") } -func SetReadyWithDeployment(c Conditioner, sts *appsv1.Deployment) { - if sts.Status.Replicas == 0 || sts.Status.ReadyReplicas != sts.Status.Replicas { +func SetReadyWithDeployment(c Conditioner, sts *appsv1.Deployment, instanceId string) { + if sts.Status.Replicas == 0 || sts.Status.ReadyReplicas != sts.Status.Replicas || instanceId != "" { c.SetCondition(metav1.Condition{ Type: zitadelv1alpha1.ConditionTypeReady, Status: metav1.ConditionFalse,