rootapiserver

package
v0.4.0-alpha.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 3, 2022 License: Apache-2.0 Imports: 17 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CompletedConfig

type CompletedConfig struct {
	// contains filtered or unexported fields
}

func (CompletedConfig) New

func (c CompletedConfig) New(delegationTarget genericapiserver.DelegationTarget) (*RootAPIServer, error)

func (CompletedConfig) NewRequestInfo

func (c CompletedConfig) NewRequestInfo(req *http.Request) (*genericapirequest.RequestInfo, error)

NewRequestInfo method makes the `completedConfig` an implementation of a RequestInfoResolver. And when creating the RootAPIServer (in the New method), the RequestInfoResolver of the associated GenericConfig is replaced by the `completedConfig`.

Since we reuse the DefaultBuildChainHandler in our customized getRootChainHandler method (that checks the URL Path against virtual workspace root paths), that means that the RequestInfo object will be created, as part of the DefaultBuildChainHandler.

So we also override the RequestInfoResolver in order to use the same URL Path as the one that will be forwarded to the virtual workspace deletegated APIServers.

func (CompletedConfig) WithOpenAPIAggregationController

func (c CompletedConfig) WithOpenAPIAggregationController(delegatedAPIServer *genericapiserver.GenericAPIServer) error

type InformerStart

type InformerStart func(stopCh <-chan struct{})

type InformerStarts

type InformerStarts []InformerStart

type RootAPIConfig

type RootAPIConfig struct {
	GenericConfig *genericapiserver.RecommendedConfig
	ExtraConfig   RootAPIExtraConfig
}

func NewRootAPIConfig

func NewRootAPIConfig(recommendedConfig *genericapiserver.RecommendedConfig, informerStarts InformerStarts, virtualWorkspaces ...framework.VirtualWorkspace) (*RootAPIConfig, error)

func (*RootAPIConfig) Complete

func (c *RootAPIConfig) Complete() completedConfig

Complete fills in any fields not set that are required to have valid data. It's mutating the receiver.

type RootAPIExtraConfig

type RootAPIExtraConfig struct {
	VirtualWorkspaces []framework.VirtualWorkspace
	// contains filtered or unexported fields
}

func (*RootAPIExtraConfig) Validate

func (c *RootAPIExtraConfig) Validate() error

Validate helps ensure that we build this config correctly, because there are lots of bits to remember for now

type RootAPIServer

type RootAPIServer struct {
	GenericAPIServer *genericapiserver.GenericAPIServer
}

RootAPIServer is only responsible for serving the APIs for the virtual workspace at a given root path or root path family It does NOT expose oauth, related oauth endpoints, or any kube APIs.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL