kubernetesk8s.io/kubernetes/cmd/kube-aggregator/pkg/apiserver Index | Files

package apiserver

import "k8s.io/kubernetes/cmd/kube-aggregator/pkg/apiserver"

Index

Functions

func WithAPIs

func WithAPIs(handler http.Handler, informer informers.APIServiceInformer, serviceLister v1listers.ServiceLister, endpointsLister v1listers.EndpointsLister) http.Handler

WithAPIs adds the handling for /apis and /apis/<group: -apiregistration.k8s.io>.

func WithProxyMux

func WithProxyMux(handler http.Handler, mux *http.ServeMux) http.Handler

Types

type APIAggregator

type APIAggregator struct {
	GenericAPIServer *genericapiserver.GenericAPIServer
	// contains filtered or unexported fields
}

APIAggregator contains state for a Kubernetes cluster master/api server.

func (*APIAggregator) AddAPIService

func (s *APIAggregator) AddAPIService(apiService *apiregistration.APIService)

AddAPIService adds an API service. It is not thread-safe, so only call it on one thread at a time please. It's a slow moving API, so its ok to run the controller on a single thread

func (*APIAggregator) RemoveAPIService

func (s *APIAggregator) RemoveAPIService(apiServiceName string)

RemoveAPIService removes the APIService from being handled. Later on it will disable the proxy endpoint. Right now it does nothing because our handler has to properly 404 itself since muxes don't unregister

type APIHandlerManager

type APIHandlerManager interface {
	AddAPIService(apiServer *apiregistration.APIService)
	RemoveAPIService(apiServerName string)
}

type APIServiceRegistrationController

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

func NewAPIServiceRegistrationController

func NewAPIServiceRegistrationController(apiServerInformer informers.APIServiceInformer, apiHandlerManager APIHandlerManager) *APIServiceRegistrationController

func (*APIServiceRegistrationController) Run

func (c *APIServiceRegistrationController) Run(stopCh <-chan struct{})

type Config

type Config struct {
	GenericConfig       *genericapiserver.Config
	CoreAPIServerClient kubeclientset.Interface

	// ProxyClientCert/Key are the client cert used to identify this proxy. Backing APIServices use
	// this to confirm the proxy's identity
	ProxyClientCert []byte
	ProxyClientKey  []byte
}

func (*Config) Complete

func (c *Config) Complete() completedConfig

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

func (*Config) SkipComplete

func (c *Config) SkipComplete() completedConfig

SkipComplete provides a way to construct a server instance without config completion.

Source Files

apiserver.go apiservice_controller.go handler_apis.go handler_proxy.go

Version
v1.6.0-alpha.2
Published
Feb 12, 2017
Platform
darwin/amd64
Imports
40 packages
Last checked
9 minutes ago

Tools for package owners.