config

package
v1.78.0 Latest Latest
Warning

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

Go to latest
Published: Aug 24, 2023 License: Apache-2.0, BSD-2-Clause, MIT, + 1 more Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const GroupName = "admissioncontroller.config.gardener.cloud"

GroupName is the group name used in this package.

View Source
const WildcardAll = "*"

WildcardAll is a character which represents all elements in a set.

Variables

View Source
var (
	// SchemeBuilder used to register the Shoot resource.
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme is a pointer to SchemeBuilder.AddToScheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}

SchemeGroupVersion is group version used to register these objects.

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type AdmissionControllerConfiguration

type AdmissionControllerConfiguration struct {
	metav1.TypeMeta
	// GardenClientConnection specifies the kubeconfig file and the client connection settings
	// when communicating with the garden apiserver.
	GardenClientConnection componentbaseconfig.ClientConnectionConfiguration
	// LogLevel is the level/severity for the logs. Must be one of [info,debug,error].
	// Defaults to "info".
	LogLevel string
	// LogFormat is the format for the logs. Must be one of [json,text].
	// Defaults to "json".
	LogFormat string
	// Server defines the configuration of the HTTP server.
	Server ServerConfiguration
	// Debugging holds configuration for Debugging related features.
	Debugging *componentbaseconfig.DebuggingConfiguration
}

AdmissionControllerConfiguration defines the configuration for the Gardener admission controller.

func (*AdmissionControllerConfiguration) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdmissionControllerConfiguration.

func (*AdmissionControllerConfiguration) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AdmissionControllerConfiguration) DeepCopyObject

func (in *AdmissionControllerConfiguration) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type HTTPSServer

type HTTPSServer struct {
	// Server is the configuration for the bind address and the port.
	Server
	// TLSServer contains information about the TLS configuration for a HTTPS server.
	TLS TLSServer
}

HTTPSServer is the configuration for the HTTPSServer server.

func (*HTTPSServer) DeepCopy

func (in *HTTPSServer) DeepCopy() *HTTPSServer

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPSServer.

func (*HTTPSServer) DeepCopyInto

func (in *HTTPSServer) DeepCopyInto(out *HTTPSServer)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceAdmissionConfiguration

type ResourceAdmissionConfiguration struct {
	// Limits contains configuration for resources which are subjected to size limitations.
	Limits []ResourceLimit
	// UnrestrictedSubjects contains references to users, groups, or service accounts which aren't subjected to any resource size limit.
	UnrestrictedSubjects []rbacv1.Subject
	// OperationMode specifies the mode the webhooks operates in. Allowed values are "block" and "log". Defaults to "block".
	OperationMode *ResourceAdmissionWebhookMode
}

ResourceAdmissionConfiguration contains settings about arbitrary kinds and the size each resource should have at most.

func (*ResourceAdmissionConfiguration) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceAdmissionConfiguration.

func (*ResourceAdmissionConfiguration) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceAdmissionWebhookMode

type ResourceAdmissionWebhookMode string

ResourceAdmissionWebhookMode is an alias type for the resource admission webhook mode.

const (
	// AdmissionModeBlock specifies that the webhook should block violating requests.
	AdmissionModeBlock ResourceAdmissionWebhookMode = "block"
	// AdmissionModeLog specifies that the webhook should only log violating requests.
	AdmissionModeLog ResourceAdmissionWebhookMode = "log"
)

type ResourceLimit

type ResourceLimit struct {
	// APIGroup is the name of the APIGroup that contains the limited resource. WildcardAll represents all groups.
	APIGroups []string
	// APIVersions is the version of the resource. WildcardAll represents all versions.
	APIVersions []string
	// Resource is the name of the resource this rule applies to. WildcardAll represents all resources.
	Resources []string
	// Size specifies the imposed limit.
	Size resource.Quantity
}

ResourceLimit contains settings about a kind and the size each resource should have at most.

func (*ResourceLimit) DeepCopy

func (in *ResourceLimit) DeepCopy() *ResourceLimit

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceLimit.

func (*ResourceLimit) DeepCopyInto

func (in *ResourceLimit) DeepCopyInto(out *ResourceLimit)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Server

type Server struct {
	// BindAddress is the IP address on which to listen for the specified port.
	BindAddress string
	// Port is the port on which to serve requests.
	Port int
}

Server contains information for HTTP(S) server configuration.

func (*Server) DeepCopy

func (in *Server) DeepCopy() *Server

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Server.

func (*Server) DeepCopyInto

func (in *Server) DeepCopyInto(out *Server)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServerConfiguration

type ServerConfiguration struct {
	// Webhooks is the configuration for the HTTPS webhook server.
	Webhooks HTTPSServer
	// HealthProbes is the configuration for serving the healthz and readyz endpoints.
	HealthProbes *Server
	// Metrics is the configuration for serving the metrics endpoint.
	Metrics *Server
	// ResourceAdmissionConfiguration is the configuration for the resource admission.
	ResourceAdmissionConfiguration *ResourceAdmissionConfiguration
	// EnableDebugHandlers determines whether the /debug/ handlers are enabled.
	EnableDebugHandlers *bool
}

ServerConfiguration contains details for the HTTP(S) servers.

func (*ServerConfiguration) DeepCopy

func (in *ServerConfiguration) DeepCopy() *ServerConfiguration

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerConfiguration.

func (*ServerConfiguration) DeepCopyInto

func (in *ServerConfiguration) DeepCopyInto(out *ServerConfiguration)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TLSServer

type TLSServer struct {
	// ServerCertDir is the path to a directory containing the server's TLS certificate and key (the files must be
	// named tls.crt and tls.key respectively).
	ServerCertDir string
}

TLSServer contains information about the TLS configuration for a HTTPS server.

func (*TLSServer) DeepCopy

func (in *TLSServer) DeepCopy() *TLSServer

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSServer.

func (*TLSServer) DeepCopyInto

func (in *TLSServer) DeepCopyInto(out *TLSServer)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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