@@ -187,14 +187,17 @@ func main() {
187187 }
188188
189189 setupLog .Info ("setting up indexers" )
190- exitOnError (setupIndexers (ctx , mgr , kubeClient , cfg ), "unable to setup indexers" )
190+ exitOnError (setupIndexers (ctx , mgr , cfg ), "unable to setup indexers" )
191191
192- setupLog .Info ("setting up health endpoints" )
192+ setupLog .Info ("setting up health endpoints" )
193193 exitOnError (setupProbeEndpoints (mgr , cfg , certsReady ), "unable to set up health check" )
194194
195195 setupLog .Info ("setting up RayCluster controller" )
196196 go waitForRayClusterAPIandSetupController (ctx , mgr , cfg , isOpenShift (ctx , kubeClient .DiscoveryClient ), certsReady )
197197
198+ setupLog .Info ("setting up AppWrapper controller" )
199+ go setupAppWrapperController (mgr , cfg , certsReady )
200+
198201 setupLog .Info ("starting manager" )
199202 exitOnError (mgr .Start (ctx ), "error running manager" )
200203}
@@ -265,31 +268,25 @@ func waitForRayClusterAPIandSetupController(ctx context.Context, mgr ctrl.Manage
265268 }
266269 }
267270 }
271+ }
272+
273+ func setupAppWrapperController (mgr ctrl.Manager , cfg * config.CodeFlareOperatorConfiguration , certsReady chan struct {}) {
274+ setupLog .Info ("Waiting for certificate generation to complete" )
275+ <- certsReady
276+ setupLog .Info ("Certs ready" )
268277
269278 if cfg .AppWrapper != nil && ptr .Deref (cfg .AppWrapper .Enabled , false ) {
270- hasAW , errAW := hasAPIResourceForGVK (dc , awv1beta2 .GroupVersion .WithKind ("AppWrapper" ))
271- hasWL , errWL := hasAPIResourceForGVK (dc , kueue .GroupVersion .WithKind ("Workload" ))
272- if hasAW && hasWL {
273- exitOnError (awctrl .SetupWebhooks (mgr , cfg .AppWrapper .Config ), "error setting up AppWrapper webhook" )
274- exitOnError (awctrl .SetupControllers (mgr , cfg .AppWrapper .Config ), "error setting up AppWrapper controller" )
275- } else if errAW != nil || errWL != nil {
276- exitOnError (err , "Could not determine if Workload and AppWrapper CRDs present on cluster." )
277- } else {
278- setupLog .Info ("AppWrapper controller disabled" , "Workload CRD present" , hasWL ,
279- "AppWrapper CRD present" , hasAW , "Config flag value" , * cfg .AppWrapper .Enabled )
280- }
279+ exitOnError (awctrl .SetupWebhooks (mgr , cfg .AppWrapper .Config ), "error setting up AppWrapper webhook" )
280+ exitOnError (awctrl .SetupControllers (mgr , cfg .AppWrapper .Config ), "error setting up AppWrapper controller" )
281+ } else {
282+ setupLog .Info ("AppWrapper controller disabled" , "Config flag value" , * cfg .AppWrapper .Enabled )
281283 }
282284}
283285
284- func setupIndexers (ctx context.Context , mgr ctrl.Manager , dc discovery. DiscoveryInterface , cfg * config.CodeFlareOperatorConfiguration ) error {
286+ func setupIndexers (ctx context.Context , mgr ctrl.Manager , cfg * config.CodeFlareOperatorConfiguration ) error {
285287 if cfg .AppWrapper != nil && ptr .Deref (cfg .AppWrapper .Enabled , false ) {
286- hasWL , errWL := hasAPIResourceForGVK (dc , kueue .GroupVersion .WithKind ("Workload" ))
287- if hasWL {
288- if err := awctrl .SetupIndexers (ctx , mgr , cfg .AppWrapper .Config ); err != nil {
289- return fmt .Errorf ("workload indexer: %w" , err )
290- }
291- } else if errWL != nil {
292- return fmt .Errorf ("checking Workload CR: %w" , errWL )
288+ if err := awctrl .SetupIndexers (ctx , mgr , cfg .AppWrapper .Config ); err != nil {
289+ return fmt .Errorf ("workload indexer: %w" , err )
293290 }
294291 }
295292 return nil
0 commit comments