func server()

in cmd/server.go [66:138]


func server() error {
	ctrl.SetLogger(packageLog)
	config := ctrl.GetConfigOrDie()
	// Upping the defaults of 20/30 to 75/150 when flowcontrol filter is not enabled.
	config.QPS = 75.0
	config.Burst = 150
	enabled, err := flowcontrol.IsEnabled(context.Background(), config)
	packageLog.Info("Starting package controller", "config", pkgConfig.GetGlobalConfig())
	if err == nil && enabled {
		// Checks if the Kubernetes apiserver has PriorityAndFairness flow control filter enabled
		// A negative QPS and Burst indicates that the client should not have a rate limiter.
		// Ref: https://github.com/kubernetes/kubernetes/blob/v1.24.0/staging/src/k8s.io/client-go/rest/config.go#L354-L364
		config.QPS = -1
		config.Burst = -1
	}
	mgr, err := ctrl.NewManager(config, ctrl.Options{
		Scheme: scheme,
		Metrics: ctrlmetricsserver.Options{
			BindAddress: serverCommandContext.metricsAddr,
		},
		WebhookServer: ctrlwebhook.NewServer(ctrlwebhook.Options{
			Port: 9443,
		}),
		HealthProbeBindAddress: serverCommandContext.probeAddr,
		LeaderElection:         serverCommandContext.enableLeaderElection,
		LeaderElectionID:       "6ef7a950.eks.amazonaws.com",
	})
	if err != nil {
		return fmt.Errorf("unable to start manager: %v", err)
	}

	ecrCredAdapter, err := registry.NewECRCredInjector(rootCmd.Context(), mgr.GetClient(), packageLog)
	if err != nil {
		return fmt.Errorf("unable to create ecrCredAdapter: %v", err)
	}
	go ecrCredAdapter.Run(rootCmd.Context())

	if err = controllers.RegisterPackageBundleReconciler(mgr); err != nil {
		return fmt.Errorf("unable to register package bundle controller: %v", err)
	}
	if err = controllers.RegisterPackageBundleControllerReconciler(mgr); err != nil {
		return fmt.Errorf("unable to register package bundle controller controller: %v", err)
	}
	if err = controllers.RegisterPackageReconciler(mgr); err != nil {
		return fmt.Errorf("unable to register package controller: %v", err)
	}

	if os.Getenv("ENABLE_WEBHOOKS") == "true" {
		if err := webhook.InitPackageBundleValidator(mgr); err != nil {
			return fmt.Errorf("unable to create package bundle webhook: %v", err)
		}
		if err := webhook.InitPackageBundleControllerValidator(mgr); err != nil {
			return fmt.Errorf("unable to create package bundle controller webhook: %v", err)
		}
		if err = webhook.InitPackageValidator(mgr); err != nil {
			return fmt.Errorf("unable to create package webhook: %v", err)
		}
	}

	if err := mgr.AddHealthzCheck("healthz", healthz.Ping); err != nil {
		return fmt.Errorf("unable to set up health check")
	}
	if err := mgr.AddReadyzCheck("readyz", healthz.Ping); err != nil {
		return fmt.Errorf("unable to set up ready check")
	}

	packageLog.Info("starting manager")
	if err := mgr.Start(ctrl.SetupSignalHandler()); err != nil {
		return fmt.Errorf("problem running manager: %v", err)
	}

	return nil
}