-
Notifications
You must be signed in to change notification settings - Fork 41
Expand file tree
/
Copy pathcert_manager_controller_set.go
More file actions
66 lines (60 loc) · 4.16 KB
/
cert_manager_controller_set.go
File metadata and controls
66 lines (60 loc) · 4.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package certmanager
import (
"k8s.io/client-go/informers"
"k8s.io/client-go/kubernetes"
configinformers "github.com/openshift/client-go/config/informers/externalversions"
"github.com/openshift/library-go/pkg/controller/factory"
"github.com/openshift/library-go/pkg/operator/events"
"github.com/openshift/library-go/pkg/operator/resource/resourceapply"
"github.com/openshift/library-go/pkg/operator/status"
"github.com/openshift/library-go/pkg/operator/v1helpers"
certmanoperatorinformers "github.com/openshift/cert-manager-operator/pkg/operator/informers/externalversions"
"github.com/openshift/cert-manager-operator/pkg/operator/utils"
)
type ControllerSet struct {
certManagerControllerStaticResourcesController factory.Controller
certManagerControllerDeploymentController factory.Controller
certManagerWebhookStaticResourcesController factory.Controller
certManagerWebhookDeploymentController factory.Controller
certManagerCAInjectorStaticResourcesController factory.Controller
certManagerCAInjectorDeploymentController factory.Controller
certManagerNetworkPolicyStaticResourcesController factory.Controller
certManagerNetworkPolicyUserDefinedController factory.Controller
}
func NewControllerSet(
kubeClient kubernetes.Interface,
kubeInformersForNamespaces v1helpers.KubeInformersForNamespaces,
kubeInformersForTargetNamespace informers.SharedInformerFactory,
infraInformers utils.OptionalInformer[configinformers.SharedInformerFactory],
operatorClient v1helpers.OperatorClientWithFinalizers,
certManagerOperatorInformers certmanoperatorinformers.SharedInformerFactory,
kubeClientContainer *resourceapply.ClientHolder,
eventRecorder events.Recorder,
targetVersion string,
versionRecorder status.VersionGetter,
trustedCAConfigmapName,
cloudCredentialsSecretName string,
) *ControllerSet {
return &ControllerSet{
certManagerControllerStaticResourcesController: NewCertManagerControllerStaticResourcesController(operatorClient, kubeClientContainer, kubeInformersForNamespaces, eventRecorder),
certManagerControllerDeploymentController: NewCertManagerControllerDeploymentController(operatorClient, certManagerOperatorInformers, infraInformers, kubeClient, kubeInformersForTargetNamespace, eventRecorder, targetVersion, versionRecorder, trustedCAConfigmapName, cloudCredentialsSecretName),
certManagerWebhookStaticResourcesController: NewCertManagerWebhookStaticResourcesController(operatorClient, kubeClientContainer, kubeInformersForNamespaces, eventRecorder),
certManagerWebhookDeploymentController: NewCertManagerWebhookDeploymentController(operatorClient, certManagerOperatorInformers, infraInformers, kubeClient, kubeInformersForTargetNamespace, eventRecorder, targetVersion, versionRecorder, trustedCAConfigmapName, cloudCredentialsSecretName),
certManagerCAInjectorStaticResourcesController: NewCertManagerCAInjectorStaticResourcesController(operatorClient, kubeClientContainer, kubeInformersForNamespaces, eventRecorder),
certManagerCAInjectorDeploymentController: NewCertManagerCAInjectorDeploymentController(operatorClient, certManagerOperatorInformers, infraInformers, kubeClient, kubeInformersForTargetNamespace, eventRecorder, targetVersion, versionRecorder, trustedCAConfigmapName, cloudCredentialsSecretName),
certManagerNetworkPolicyStaticResourcesController: NewCertManagerNetworkPolicyStaticResourcesController(operatorClient, kubeClientContainer, kubeInformersForNamespaces, certManagerOperatorInformers, eventRecorder),
certManagerNetworkPolicyUserDefinedController: NewNetworkPolicyUserDefinedController(operatorClient, certManagerOperatorInformers, kubeClient, kubeInformersForNamespaces, eventRecorder),
}
}
func (c *ControllerSet) ToArray() []factory.Controller {
return []factory.Controller{
c.certManagerControllerStaticResourcesController,
c.certManagerControllerDeploymentController,
c.certManagerWebhookStaticResourcesController,
c.certManagerWebhookDeploymentController,
c.certManagerCAInjectorStaticResourcesController,
c.certManagerCAInjectorDeploymentController,
c.certManagerNetworkPolicyStaticResourcesController,
c.certManagerNetworkPolicyUserDefinedController,
}
}