v1alpha1

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Jan 29, 2025 License: Apache-2.0 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.SchemeBuilder

	// AddToScheme is a pointer to SchemeBuilder.AddToScheme.
	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

func SetDefaults_AdmissionControllerConfiguration

func SetDefaults_AdmissionControllerConfiguration(obj *AdmissionControllerConfiguration)

SetDefaults_AdmissionControllerConfiguration sets defaults for the configuration of the Gardener admission controller.

func SetDefaults_ClientConnectionConfiguration

func SetDefaults_ClientConnectionConfiguration(obj *componentbaseconfigv1alpha1.ClientConnectionConfiguration)

SetDefaults_ClientConnectionConfiguration sets defaults for the garden client connection.

func SetDefaults_ResourceAdmissionConfiguration

func SetDefaults_ResourceAdmissionConfiguration(obj *ResourceAdmissionConfiguration)

SetDefaults_ResourceAdmissionConfiguration sets defaults for the resource admission configuration.

func SetDefaults_ServerConfiguration

func SetDefaults_ServerConfiguration(obj *ServerConfiguration)

SetDefaults_ServerConfiguration sets defaults for the configuration of the server

func SetObjectDefaults_AdmissionControllerConfiguration

func SetObjectDefaults_AdmissionControllerConfiguration(in *AdmissionControllerConfiguration)

Types

type AdmissionControllerConfiguration

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

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 `json:",inline"`
	// TLSServer contains information about the TLS configuration for a HTTPS server.
	TLS TLSServer `json:"tls"`
}

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 `json:"limits"`
	// UnrestrictedSubjects contains references to users, groups, or service accounts which aren't subjected to any resource size limit.
	// +optional
	UnrestrictedSubjects []rbacv1.Subject `json:"unrestrictedSubjects,omitempty"`
	// OperationMode specifies the mode the webhooks operates in. Allowed values are "block" and "log". Defaults to "block".
	// +optional
	OperationMode *ResourceAdmissionWebhookMode `json:"operationMode,omitempty"`
}

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 {
	// APIGroups is the name of the APIGroup that contains the limited resource. WildcardAll represents all groups.
	// +optional
	APIGroups []string `json:"apiGroups,omitempty"`
	// APIVersions is the version of the resource. WildcardAll represents all versions.
	// +optional
	APIVersions []string `json:"apiVersions,omitempty"`
	// Resources is the name of the resource this rule applies to. WildcardAll represents all resources.
	Resources []string `json:"resources"`
	// Size specifies the imposed limit.
	Size resource.Quantity `json:"size"`
}

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 `json:"bindAddress"`
	// Port is the port on which to serve requests.
	Port int `json:"port"`
}

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 `json:"webhooks"`
	// HealthProbes is the configuration for serving the healthz and readyz endpoints.
	// +optional
	HealthProbes *Server `json:"healthProbes,omitempty"`
	// Metrics is the configuration for serving the metrics endpoint.
	// +optional
	Metrics *Server `json:"metrics,omitempty"`
	// ResourceAdmissionConfiguration is the configuration for the resource admission.
	// +optional
	ResourceAdmissionConfiguration *ResourceAdmissionConfiguration `json:"resourceAdmissionConfiguration,omitempty"`
	// EnableDebugHandlers determines whether the /debug/ handlers are enabled.
	// +optional
	EnableDebugHandlers *bool `json:"enableDebugHandlers,omitempty"`
}

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 `json:"serverCertDir"`
}

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