From 5b379e35505f9f6156d4d7cf42cc18dc2d9cb61b Mon Sep 17 00:00:00 2001 From: Monis Khan Date: Tue, 5 Dec 2017 10:14:19 -0500 Subject: [PATCH] Wire up OAuth shared informer This change wires up the OAuth informer to allow performant lookups to be made for the OAuth resources. Signed-off-by: Monis Khan --- pkg/cmd/server/origin/master_config.go | 2 ++ pkg/cmd/server/start/informers.go | 12 ++++++++++++ 2 files changed, 14 insertions(+) diff --git a/pkg/cmd/server/origin/master_config.go b/pkg/cmd/server/origin/master_config.go index 5f711cb6b161..0d1e7f332942 100644 --- a/pkg/cmd/server/origin/master_config.go +++ b/pkg/cmd/server/origin/master_config.go @@ -34,6 +34,7 @@ import ( imageadmission "github.com/openshift/origin/pkg/image/admission" imageapi "github.com/openshift/origin/pkg/image/apis/image" imageinformer "github.com/openshift/origin/pkg/image/generated/informers/internalversion" + oauthinformer "github.com/openshift/origin/pkg/oauth/generated/informers/internalversion" projectauth "github.com/openshift/origin/pkg/project/auth" projectcache "github.com/openshift/origin/pkg/project/cache" "github.com/openshift/origin/pkg/quota/controller/clusterquotamapping" @@ -99,6 +100,7 @@ type InformerAccess interface { GetClientGoKubeInformers() kubeclientgoinformers.SharedInformerFactory GetAuthorizationInformers() authorizationinformer.SharedInformerFactory GetImageInformers() imageinformer.SharedInformerFactory + GetOauthInformers() oauthinformer.SharedInformerFactory GetQuotaInformers() quotainformer.SharedInformerFactory GetSecurityInformers() securityinformer.SharedInformerFactory GetUserInformers() userinformer.SharedInformerFactory diff --git a/pkg/cmd/server/start/informers.go b/pkg/cmd/server/start/informers.go index 1ff074939dfd..e15ae6b53a2a 100644 --- a/pkg/cmd/server/start/informers.go +++ b/pkg/cmd/server/start/informers.go @@ -24,6 +24,8 @@ import ( configapi "github.com/openshift/origin/pkg/cmd/server/api" imageinformer "github.com/openshift/origin/pkg/image/generated/informers/internalversion" imageclient "github.com/openshift/origin/pkg/image/generated/internalclientset" + oauthinformer "github.com/openshift/origin/pkg/oauth/generated/informers/internalversion" + oauthclient "github.com/openshift/origin/pkg/oauth/generated/internalclientset" quotainformer "github.com/openshift/origin/pkg/quota/generated/informers/internalversion" quotaclient "github.com/openshift/origin/pkg/quota/generated/internalclientset" securityinformer "github.com/openshift/origin/pkg/security/generated/informers/internalversion" @@ -43,6 +45,7 @@ type informers struct { authorizationInformers authorizationinformer.SharedInformerFactory buildInformers buildinformer.SharedInformerFactory imageInformers imageinformer.SharedInformerFactory + oauthInformers oauthinformer.SharedInformerFactory quotaInformers quotainformer.SharedInformerFactory securityInformers securityinformer.SharedInformerFactory templateInformers templateinformer.SharedInformerFactory @@ -72,6 +75,10 @@ func NewInformers(options configapi.MasterConfig) (*informers, error) { if err != nil { return nil, err } + oauthClient, err := oauthclient.NewForConfig(clientConfig) + if err != nil { + return nil, err + } quotaClient, err := quotaclient.NewForConfig(clientConfig) if err != nil { return nil, err @@ -105,6 +112,7 @@ func NewInformers(options configapi.MasterConfig) (*informers, error) { authorizationInformers: authorizationinformer.NewSharedInformerFactory(authorizationClient, defaultInformerResyncPeriod), buildInformers: buildinformer.NewSharedInformerFactory(buildClient, defaultInformerResyncPeriod), imageInformers: imageinformer.NewSharedInformerFactory(imageClient, defaultInformerResyncPeriod), + oauthInformers: oauthinformer.NewSharedInformerFactory(oauthClient, defaultInformerResyncPeriod), quotaInformers: quotainformer.NewSharedInformerFactory(quotaClient, defaultInformerResyncPeriod), securityInformers: securityinformer.NewSharedInformerFactory(securityClient, defaultInformerResyncPeriod), templateInformers: templateinformer.NewSharedInformerFactory(templateClient, defaultInformerResyncPeriod), @@ -133,6 +141,9 @@ func (i *informers) GetBuildInformers() buildinformer.SharedInformerFactory { func (i *informers) GetImageInformers() imageinformer.SharedInformerFactory { return i.imageInformers } +func (i *informers) GetOauthInformers() oauthinformer.SharedInformerFactory { + return i.oauthInformers +} func (i *informers) GetQuotaInformers() quotainformer.SharedInformerFactory { return i.quotaInformers } @@ -155,6 +166,7 @@ func (i *informers) Start(stopCh <-chan struct{}) { i.authorizationInformers.Start(stopCh) i.buildInformers.Start(stopCh) i.imageInformers.Start(stopCh) + i.oauthInformers.Start(stopCh) i.quotaInformers.Start(stopCh) i.securityInformers.Start(stopCh) i.templateInformers.Start(stopCh)