@@ -21,13 +21,11 @@ import (
2121 "errors"
2222 "fmt"
2323 "net/http"
24- "os"
2524
2625 "k8s.io/apimachinery/pkg/types"
2726 ctrl "sigs.k8s.io/controller-runtime"
2827 "sigs.k8s.io/controller-runtime/pkg/healthz"
2928
30- "github.com/go-logr/logr"
3129 cert "github.com/open-policy-agent/cert-controller/pkg/rotator"
3230
3331 "github.com/project-codeflare/appwrapper/internal/controller/appwrapper"
@@ -39,29 +37,21 @@ import (
3937)
4038
4139// SetupControllers creates and configures all components of the AppWrapper controller
42- func SetupControllers (ctx context.Context , mgr ctrl.Manager , awConfig * config.AppWrapperConfig ,
43- webhooksEnabled bool , certsReady chan struct {}, log logr.Logger ) {
44-
45- log .Info ("Waiting for certificates to be generated" )
46- <- certsReady
47- log .Info ("Certs ready" )
48-
49- if ! awConfig .StandaloneMode {
40+ func SetupControllers (ctx context.Context , mgr ctrl.Manager , awConfig * config.AppWrapperConfig ) error {
41+ if awConfig .EnableKueueIntegrations {
5042 if err := workload .WorkloadReconciler (
5143 mgr .GetClient (),
5244 mgr .GetEventRecorderFor ("kueue" ),
5345 jobframework .WithManageJobsWithoutQueueName (awConfig .ManageJobsWithoutQueueName ),
5446 ).SetupWithManager (mgr ); err != nil {
55- log .Error (err , "Failed to create workload controller" )
56- os .Exit (1 )
47+ return fmt .Errorf ("workload controller: %w" , err )
5748 }
5849
5950 if err := (& workload.ChildWorkloadReconciler {
6051 Client : mgr .GetClient (),
6152 Scheme : mgr .GetScheme (),
6253 }).SetupWithManager (mgr ); err != nil {
63- log .Error (err , "Failed to create child admission controller" )
64- os .Exit (1 )
54+ return fmt .Errorf ("child admission controller: %w" , err )
6555 }
6656 }
6757
@@ -70,22 +60,24 @@ func SetupControllers(ctx context.Context, mgr ctrl.Manager, awConfig *config.Ap
7060 Scheme : mgr .GetScheme (),
7161 Config : awConfig ,
7262 }).SetupWithManager (mgr ); err != nil {
73- log .Error (err , "Failed to create appwrapper controller" )
74- os .Exit (1 )
63+ return fmt .Errorf ("appwrapper controller: %w" , err )
7564 }
7665
77- if webhooksEnabled {
78- if err := (& webhook.AppWrapperWebhook {
79- Config : awConfig ,
80- }).SetupWebhookWithManager (mgr ); err != nil {
81- log .Error (err , "Failed to create webhook" )
82- os .Exit (1 )
83- }
66+ return nil
67+ }
68+
69+ // SetupWebhooks creates and configures the AppWrapper controller's Webhooks
70+ func SetupWebhooks (ctx context.Context , mgr ctrl.Manager , awConfig * config.AppWrapperConfig ) error {
71+ if err := (& webhook.AppWrapperWebhook {
72+ Config : awConfig ,
73+ }).SetupWebhookWithManager (mgr ); err != nil {
74+ return fmt .Errorf ("webhook: %w" , err )
8475 }
76+ return nil
8577}
8678
8779func SetupIndexers (ctx context.Context , mgr ctrl.Manager , awConfig * config.AppWrapperConfig ) error {
88- if ! awConfig .StandaloneMode {
80+ if awConfig .EnableKueueIntegrations {
8981 if err := jobframework .SetupWorkloadOwnerIndex (ctx , mgr .GetFieldIndexer (), workload .GVK ); err != nil {
9082 return fmt .Errorf ("workload indexer: %w" , err )
9183 }
0 commit comments