@@ -23,6 +23,7 @@ import (
23
23
"time"
24
24
25
25
corev1 "k8s.io/api/core/v1"
26
+ apierrors "k8s.io/apimachinery/pkg/api/errors"
26
27
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
27
28
"k8s.io/apimachinery/pkg/labels"
28
29
"k8s.io/apimachinery/pkg/runtime"
@@ -55,7 +56,7 @@ func NewClusterBootstrapConfigReconciler(c client.Client, s *runtime.Scheme) *Cl
55
56
}
56
57
57
58
// TODO: make this configurable on the Spec
58
- var requeueAfterTime = time .Minute * 2
59
+ var requeueAfterTime = time .Second * 32
59
60
60
61
//+kubebuilder:rbac:groups=capi.weave.works,resources=clusterbootstrapconfigs,verbs=get;list;watch;create;update;patch;delete
61
62
//+kubebuilder:rbac:groups=capi.weave.works,resources=clusterbootstrapconfigs/status,verbs=get;update;patch
@@ -88,6 +89,11 @@ func (r *ClusterBootstrapConfigReconciler) Reconcile(ctx context.Context, req ct
88
89
clusterName := types.NamespacedName {Name : c .GetName (), Namespace : c .GetNamespace ()}
89
90
clusterClient , err := r .clientForCluster (ctx , clusterName )
90
91
if err != nil {
92
+ if apierrors .IsNotFound (err ) {
93
+ logger .Info ("waiting for cluster access secret to be available" )
94
+ return ctrl.Result {RequeueAfter : requeueAfterTime }, nil
95
+ }
96
+
91
97
return ctrl.Result {}, fmt .Errorf ("failed to create client for cluster %s: %w" , clusterName , err )
92
98
}
93
99
@@ -97,6 +103,7 @@ func (r *ClusterBootstrapConfigReconciler) Reconcile(ctx context.Context, req ct
97
103
}
98
104
if ! ready {
99
105
logger .Info ("waiting for control plane to be ready" , "cluster" , clusterName )
106
+
100
107
return ctrl.Result {RequeueAfter : time .Minute * 2 }, nil
101
108
}
102
109
}
0 commit comments