...

Package admission

import "k8s.io/kubernetes/pkg/kubeapiserver/admission"
Overview
Index
Subdirectories

Overview ▾

type Config

Config holds the configuration needed to for initialize the admission plugins

type Config struct {
    CloudConfigFile      string
    LoopbackClientConfig *rest.Config
    ExternalInformers    externalinformers.SharedInformerFactory
}

func (*Config) New

func (c *Config) New(proxyTransport *http.Transport, egressSelector *egressselector.EgressSelector, serviceResolver webhook.ServiceResolver, tp trace.TracerProvider) ([]admission.PluginInitializer, error)

New sets up the plugins and admission start hooks needed for admission

type PluginInitializer

PluginInitializer is used for initialization of the Kubernetes specific admission plugins.

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

func NewPluginInitializer

func NewPluginInitializer(
    cloudConfig []byte,
    quotaConfiguration quota.Configuration,
    excludedAdmissionResources []schema.GroupResource,
) *PluginInitializer

NewPluginInitializer constructs new instance of PluginInitializer TODO: switch these parameters to use the builder pattern or just make them all public, this construction method is pointless boilerplate.

func (*PluginInitializer) Initialize

func (i *PluginInitializer) Initialize(plugin admission.Interface)

Initialize checks the initialization interfaces implemented by each plugin and provide the appropriate initialization data

type WantsCloudConfig

WantsCloudConfig defines a function which sets CloudConfig for admission plugins that need it.

type WantsCloudConfig interface {
    SetCloudConfig([]byte)
}

Subdirectories

Name Synopsis
..
exclusion