@@ -84,28 +84,6 @@ func (r *IpfsClusterReconciler) Reconcile(ctx context.Context, req ctrl.Request)
84
84
return ctrl.Result {}, r .Update (ctx , instance )
85
85
}
86
86
87
- if err = r .createCircuitRelays (ctx , instance ); err != nil {
88
- return ctrl.Result {}, fmt .Errorf ("cannot create circuit relays: %w" , err )
89
- }
90
-
91
- // Check the status of circuit relays.
92
- // wait for them to complte so we can determine announce addresses.
93
- for _ , relayName := range instance .Status .CircuitRelays {
94
- relay := clusterv1alpha1.CircuitRelay {}
95
- relay .Name = relayName
96
- relay .Namespace = instance .Namespace
97
- if err = r .Client .Get (ctx , client .ObjectKeyFromObject (& relay ), & relay ); err != nil {
98
- return ctrl.Result {Requeue : true }, fmt .Errorf ("could not lookup circuitRelay %q: %w" , relayName , err )
99
- }
100
- if relay .Status .AddrInfo .ID == "" {
101
- log .Info ("relay is not ready yet. Will continue waiting." , "relay" , relayName )
102
- return failResult , nil
103
- }
104
- }
105
- if err = r .Status ().Update (ctx , instance ); err != nil {
106
- return ctrl.Result {}, err
107
- }
108
-
109
87
// Reconcile the tracked objects
110
88
err = r .createTrackedObjects (ctx , instance )
111
89
if err != nil {
@@ -137,6 +115,9 @@ func (r *IpfsClusterReconciler) createTrackedObjects(
137
115
if secret , err = r .EnsureSecretConfig (ctx , instance ); err != nil {
138
116
return fmt .Errorf ("failed to ensure secret config: %w" , err )
139
117
}
118
+ if err = r .EnsureCircuitRelay (ctx , instance , secret ); err != nil {
119
+ return fmt .Errorf ("failed to ensure circuit relays: %w" , err )
120
+ }
140
121
if relayPeers , relayStatic , err = r .EnsureRelayCircuitInfo (ctx , instance ); err != nil {
141
122
return fmt .Errorf ("could not retrieve information from the relay circuit: %w" , err )
142
123
}
@@ -178,41 +159,6 @@ func (r *IpfsClusterReconciler) ensureIPFSCluster(
178
159
return nil , fmt .Errorf ("failed to get Ipfs: %w" , err )
179
160
}
180
161
181
- // createCircuitRelays Creates the necessary amount of circuit relays if any are missing.
182
- // FIXME: if we change the number of CircuitRelays, we should update
183
- // the IPFS config file as well.
184
- func (r * IpfsClusterReconciler ) createCircuitRelays (
185
- ctx context.Context ,
186
- instance * clusterv1alpha1.IpfsCluster ,
187
- ) error {
188
- // do nothing
189
- if len (instance .Status .CircuitRelays ) >= int (instance .Spec .Networking .CircuitRelays ) {
190
- // FIXME: handle scale-down of circuit relays
191
- return nil
192
- }
193
- // create the CircuitRelays
194
- for i := 0 ; int32 (i ) < instance .Spec .Networking .CircuitRelays ; i ++ {
195
- name := fmt .Sprintf ("%s-%d" , instance .Name , i )
196
- relay := clusterv1alpha1.CircuitRelay {}
197
- relay .Name = name
198
- relay .Namespace = instance .Namespace
199
- if err := ctrl .SetControllerReference (instance , & relay , r .Scheme ); err != nil {
200
- return fmt .Errorf (
201
- "cannot set controller reference for new circuitRelay: %w, circuitRelay: %s" ,
202
- err , relay .Name ,
203
- )
204
- }
205
- if err := r .Create (ctx , & relay ); err != nil {
206
- return fmt .Errorf ("cannot create new circuitRelay: %w" , err )
207
- }
208
- instance .Status .CircuitRelays = append (instance .Status .CircuitRelays , relay .Name )
209
- }
210
- if err := r .Status ().Update (ctx , instance ); err != nil {
211
- return err
212
- }
213
- return nil
214
- }
215
-
216
162
// SetupWithManager sets up the controller with the Manager.
217
163
func (r * IpfsClusterReconciler ) SetupWithManager (mgr ctrl.Manager ) error {
218
164
return ctrl .NewControllerManagedBy (mgr ).
0 commit comments