 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- func AddOpenshiftVersionRoute(container *restful.Container, path string)
- func NewClusterQuotaMappingController(nsInternalInformer corev1informers.NamespaceInformer, ...) *clusterquotamapping.ClusterQuotaMappingController
- func NewProjectAuthorizationCache(subjectLocator rbacauthorizer.SubjectLocator, ...) *projectauth.AuthorizationCache
- func NewProjectCache(nsInformer corev1informers.NamespaceInformer, ...) (*projectcache.ProjectCache, error)
- func NewRESTOptionsGetter(startingFlags map[string][]string, storageConfig configv1.EtcdStorageConfig) (genericregistry.RESTOptionsGetter, error)
- func NewRuleResolver(informers rbacinformers.Interface) rbacregistryvalidation.AuthorizationRuleResolver
- func NewSubjectLocator(informers rbacinformers.Interface) rbacauthorizer.SubjectLocator
- func OpenshiftHandlerChain(apiHandler http.Handler, genericConfig *genericapiserver.Config) http.Handler
- type CompletedConfig
- type InformerHolder
- func (i *InformerHolder) GetKubernetesInformers() kexternalinformers.SharedInformerFactory
- func (i *InformerHolder) GetOpenshiftAuthorizationInformers() authorizationv1informer.SharedInformerFactory
- func (i *InformerHolder) GetOpenshiftImageInformers() imagev1informer.SharedInformerFactory
- func (i *InformerHolder) GetOpenshiftOauthInformers() oauthv1informer.SharedInformerFactory
- func (i *InformerHolder) GetOpenshiftQuotaInformers() quotainformer.SharedInformerFactory
- func (i *InformerHolder) GetOpenshiftRouteInformers() routev1informer.SharedInformerFactory
- func (i *InformerHolder) GetOpenshiftSecurityInformers() securityv1informer.SharedInformerFactory
- func (i *InformerHolder) GetOpenshiftUserInformers() userv1informer.SharedInformerFactory
- func (i *InformerHolder) Start(stopCh <-chan struct{})
 
- type OpenshiftAPIConfig
- type OpenshiftAPIExtraConfig
- type OpenshiftAPIServer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AddOpenshiftVersionRoute ¶
initVersionRoute initializes an HTTP endpoint for the server's version information.
func NewClusterQuotaMappingController ¶
func NewClusterQuotaMappingController(nsInternalInformer corev1informers.NamespaceInformer, clusterQuotaInformer quotainformer.ClusterResourceQuotaInformer) *clusterquotamapping.ClusterQuotaMappingController
func NewProjectAuthorizationCache ¶
func NewProjectAuthorizationCache(subjectLocator rbacauthorizer.SubjectLocator, namespaces corev1informers.NamespaceInformer, rbacInformers rbacinformers.Interface) *projectauth.AuthorizationCache
func NewProjectCache ¶
func NewProjectCache(nsInformer corev1informers.NamespaceInformer, privilegedLoopbackConfig *restclient.Config, defaultNodeSelector string) (*projectcache.ProjectCache, error)
func NewRESTOptionsGetter ¶
func NewRESTOptionsGetter(startingFlags map[string][]string, storageConfig configv1.EtcdStorageConfig) (genericregistry.RESTOptionsGetter, error)
NewConfigGetter returns a restoptions.Getter implemented using information from the provided master config.
func NewRuleResolver ¶
func NewRuleResolver(informers rbacinformers.Interface) rbacregistryvalidation.AuthorizationRuleResolver
func NewSubjectLocator ¶
func NewSubjectLocator(informers rbacinformers.Interface) rbacauthorizer.SubjectLocator
func OpenshiftHandlerChain ¶
Types ¶
type CompletedConfig ¶
type CompletedConfig struct {
	// contains filtered or unexported fields
}
    func (CompletedConfig) EnsureOpenShiftInfraNamespace ¶
func (c CompletedConfig) EnsureOpenShiftInfraNamespace(context genericapiserver.PostStartHookContext) error
EnsureOpenShiftInfraNamespace is called as part of global policy initialization to ensure infra namespace exists
func (CompletedConfig) New ¶
func (c CompletedConfig) New(delegationTarget genericapiserver.DelegationTarget, keepRemovedNetworkingAPIs bool) (*OpenshiftAPIServer, error)
type InformerHolder ¶
type InformerHolder struct {
	// contains filtered or unexported fields
}
    informerHolder is a convenient way for us to keep track of the informers, but is intentionally private. We don't want to leak it out further than this package. Everything else should say what it wants.
func NewInformers ¶
func NewInformers(kubeInformers kexternalinformers.SharedInformerFactory, kubeClientConfig *rest.Config, loopbackClientConfig *rest.Config) (*InformerHolder, error)
NewInformers is only exposed for the build's integration testing until it can be fixed more appropriately.
func (*InformerHolder) GetKubernetesInformers ¶
func (i *InformerHolder) GetKubernetesInformers() kexternalinformers.SharedInformerFactory
func (*InformerHolder) GetOpenshiftAuthorizationInformers ¶
func (i *InformerHolder) GetOpenshiftAuthorizationInformers() authorizationv1informer.SharedInformerFactory
func (*InformerHolder) GetOpenshiftImageInformers ¶
func (i *InformerHolder) GetOpenshiftImageInformers() imagev1informer.SharedInformerFactory
func (*InformerHolder) GetOpenshiftOauthInformers ¶
func (i *InformerHolder) GetOpenshiftOauthInformers() oauthv1informer.SharedInformerFactory
func (*InformerHolder) GetOpenshiftQuotaInformers ¶
func (i *InformerHolder) GetOpenshiftQuotaInformers() quotainformer.SharedInformerFactory
func (*InformerHolder) GetOpenshiftRouteInformers ¶
func (i *InformerHolder) GetOpenshiftRouteInformers() routev1informer.SharedInformerFactory
func (*InformerHolder) GetOpenshiftSecurityInformers ¶
func (i *InformerHolder) GetOpenshiftSecurityInformers() securityv1informer.SharedInformerFactory
func (*InformerHolder) GetOpenshiftUserInformers ¶
func (i *InformerHolder) GetOpenshiftUserInformers() userv1informer.SharedInformerFactory
func (*InformerHolder) Start ¶
func (i *InformerHolder) Start(stopCh <-chan struct{})
Start initializes all requested informers.
type OpenshiftAPIConfig ¶
type OpenshiftAPIConfig struct {
	GenericConfig *genericapiserver.RecommendedConfig
	ExtraConfig   OpenshiftAPIExtraConfig
}
    func NewOpenshiftAPIConfig ¶
func NewOpenshiftAPIConfig(config *openshiftcontrolplanev1.OpenShiftAPIServerConfig) (*OpenshiftAPIConfig, error)
func (*OpenshiftAPIConfig) Complete ¶
func (c *OpenshiftAPIConfig) Complete() completedConfig
Complete fills in any fields not set that are required to have valid data. It's mutating the receiver.
type OpenshiftAPIExtraConfig ¶
type OpenshiftAPIExtraConfig struct {
	// we phrase it like this so we can build the post-start-hook, but no one can take more indirect dependencies on informers
	InformerStart func(stopCh <-chan struct{})
	KubeAPIServerClientConfig *rest.Config
	KubeInformers             kubeinformers.SharedInformerFactory
	QuotaInformers    quotainformer.SharedInformerFactory
	SecurityInformers securityv1informer.SharedInformerFactory
	// these are all required to build our storage
	RuleResolver   rbacregistryvalidation.AuthorizationRuleResolver
	SubjectLocator rbacauthorizer.SubjectLocator
	// for Images
	// RegistryHostnameRetriever retrieves the internal and external hostname of
	// the integrated registry, or false if no such registry is available.
	RegistryHostnameRetriever          registryhostname.RegistryHostnameRetriever
	AllowedRegistriesForImport         openshiftcontrolplanev1.AllowedRegistries
	MaxImagesBulkImportedPerRepository int
	AdditionalTrustedCA                []byte
	RouteAllocator *routeallocationcontroller.RouteAllocationController
	ProjectAuthorizationCache *projectauth.AuthorizationCache
	ProjectCache              *projectcache.ProjectCache
	ProjectRequestTemplate    string
	ProjectRequestMessage     string
	RESTMapper                *restmapper.DeferredDiscoveryRESTMapper
	// oauth API server
	ServiceAccountMethod string
	ClusterQuotaMappingController *clusterquotamapping.ClusterQuotaMappingController
}
    func (*OpenshiftAPIExtraConfig) Validate ¶
func (c *OpenshiftAPIExtraConfig) Validate() error
Validate helps ensure that we build this config correctly, because there are lots of bits to remember for now
type OpenshiftAPIServer ¶
type OpenshiftAPIServer struct {
	GenericAPIServer *genericapiserver.GenericAPIServer
}
    OpenshiftAPIServer is only responsible for serving the APIs for Openshift It does NOT expose oauth, related oauth endpoints, or any kube APIs.