v1alpha1

package
v0.4.5 Latest Latest
Warning

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

Go to latest
Published: Mar 31, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultKubeAPIServerAuthenticationTokenSecretKey is the default key to look up for tokens when the key in
	// KubeAPIServerAuthentication is blank.
	DefaultKubeAPIServerAuthenticationTokenSecretKey = "token.csv"
	// DefaultKubeAPIServerAuthenticationClientCertificateSecretKey is the default key to look up for client
	// certificates when the key in KubeAPIServerAuthentication.ClientCertificateSecret is blank.
	DefaultKubeAPIServerAuthenticationClientCertificateSecretKey = "ca.crt"
)
View Source
const (
	// DefaultKubeControllerManagerServiceAccountControllerConfigurationPrivateKeySecretKey is the default key for
	// KubeControllerManagerServiceAccountControllerConfiguration.PrivateKeySecret.
	DefaultKubeControllerManagerServiceAccountControllerConfigurationPrivateKeySecretKey = "tls.key"
	// DefaultKubeControllerManagerServiceAccountControllerConfigurationRootCertificateSecretKey is the default key for
	// KubeControllerManagerServiceAccountControllerConfiguration.RootCertificateSecret.
	DefaultKubeControllerManagerServiceAccountControllerConfigurationRootCertificateSecretKey = "tls.crt"
)
View Source
const DefaultKubeAPIServerETCDCertificateAuthoritySecretKey = "ca.crt"

DefaultKubeAPIServerETCDCertificateAuthoritySecretKey is the default key that will be used to look up the certificate authority in a secret referenced by KubeAPIServerETCD.CertificateAuthoritySecret.

View Source
const DefaultKubeControllerManagerAuthenticationKubeconfigSecretKey = "kubeconfig"

DefaultKubeControllerManagerAuthenticationKubeconfigSecretKey is the default key for KubeControllerManagerAuthentication.KubeconfigSecret.

View Source
const DefaultKubeControllerManagerAuthorizationKubeconfigSecretKey = "kubeconfig"

DefaultKubeControllerManagerAuthorizationKubeconfigSecretKey is the default key for KubeControllerManagerAuthorization.KubeconfigSecret.

View Source
const DefaultKubeControllerManagerGenericConfigurationKubeconfigKey = "kubeconfig"

DefaultKubeControllerManagerGenericConfigurationKubeconfigKey is the default key to lookup KubeControllerManagerGenericConfiguration kubeconfigs.

View Source
const DefaultKubeSchedulerAuthenticationKubeconfigSecretKey = "kubeconfig"

DefaultKubeSchedulerAuthenticationKubeconfigSecretKey is the default key for KubeSchedulerAuthentication.KubeconfigSecret.

View Source
const DefaultKubeSchedulerAuthorizationKubeconfigSecretKey = "kubeconfig"

DefaultKubeSchedulerAuthorizationKubeconfigSecretKey is the default key for KubeSchedulerAuthorization.KubeconfigSecret.

View Source
const DefaultKubeSchedulerConfigurationKubeconfigKey = "kubeconfig"

DefaultKubeSchedulerConfigurationKubeconfigKey is the default key to lookup KubeSchedulerConfiguration kubeconfig.

View Source
const DefaultKubeconfigAuthInfoClientCertificateSecretKey = "tls.crt"

DefaultKubeconfigAuthInfoClientCertificateSecretKey is the default key to use for KubeconfigAuthInfo.ClientCertificateSecret.

View Source
const DefaultKubeconfigAuthInfoClientKeySecretKey = "tls.key"

DefaultKubeconfigAuthInfoClientKeySecretKey is the default key for KubeconfigAuthInfo.ClientKeySecret.

View Source
const DefaultKubeconfigAuthInfoPasswordSecretKey = "password"

DefaultKubeconfigAuthInfoPasswordSecretKey is the default key for KubeconfigAuthInfo.PasswordSecret.

View Source
const DefaultKubeconfigAuthInfoTokenSecretKey = "token"

DefaultKubeconfigAuthInfoTokenSecretKey is the default key for KubeconfigAuthInfo.TokenSecret.

View Source
const DefaultKubeconfigClusterCertificateAuthoritySecretKey = "ca.crt"

DefaultKubeconfigClusterCertificateAuthoritySecretKey is the default key to look up for secrets referenced by KubeconfigCluster.CertificateAuthoritySecret.

View Source
const DefaultKubeconfigKey = "kubeconfig"

DefaultKubeconfigKey is the default key to write the kubeconfig into a secret's data.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "matryoshka.onmetal.de", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var KubeAPIServerFieldManager = fmt.Sprintf("%s/KubeAPIServer", GroupVersion.Group)

KubeAPIServerFieldManager specifies the field manager used for operations on an KubeAPIServer.

View Source
var KubeControllerManagerFieldManager = fmt.Sprintf("%s/KubeControllerManager", GroupVersion.Group)

KubeControllerManagerFieldManager specifies the field manager used for operations on a KubeControllerManager.

View Source
var KubeSchedulerFieldManager = fmt.Sprintf("%s/KubeScheduler", GroupVersion.Group)

KubeSchedulerFieldManager specifies the field manager used for operations on a KubeScheduler.

View Source
var KubeconfigFieldManager = fmt.Sprintf("%s/Kubeconfig", GroupVersion.Group)

KubeconfigFieldManager is the field manager used by the kubeconfig controller.

Functions

This section is empty.

Types

type ConfigMapSelector

type ConfigMapSelector struct {
	corev1.LocalObjectReference `json:",inline"`
	// Key is the key to look up in the config map data. Some types use a default if this value is unset.
	Key string `json:"key,omitempty"`
}

ConfigMapSelector selects a config map by name and a field in its data property by the key.

func (*ConfigMapSelector) DeepCopy

func (in *ConfigMapSelector) DeepCopy() *ConfigMapSelector

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

func (*ConfigMapSelector) DeepCopyInto

func (in *ConfigMapSelector) DeepCopyInto(out *ConfigMapSelector)

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

type ContainerOverlay added in v0.2.0

type ContainerOverlay struct {
	// AdditionalPorts specifies a list of additional ports to expose.
	AdditionalPorts []corev1.ContainerPort `json:"additionalPorts,omitempty"`
	// AdditionalEnvFrom specifies a list of additional env sources for the pod.
	AdditionalEnvFrom []corev1.EnvFromSource `json:"additionalEnvFrom,omitempty"`
	// AdditionalEnv specifies a list of additional env variables for the pod.
	AdditionalEnv []corev1.EnvVar `json:"additionalEnv,omitempty"`
	// Resources required by this container.
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
	// AdditionalVolumeMounts specifies additional volumes to mount into the container's filesystem.
	AdditionalVolumeMounts []corev1.VolumeMount `json:"additionalVolumeMounts,omitempty"`
	// AdditionalVolumeDevices is a list of additional block devices to be used by the container.
	AdditionalVolumeDevices []corev1.VolumeDevice `json:"additionalVolumeDevices,omitempty"`
	// ImagePullPolicy specifies the image pull policy.
	ImagePullPolicy *corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
	// SecurityContext defines the security options the container should be run with.
	SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"`
}

ContainerOverlay represents a container that is managed by a controller but allows for additional configuration to be passed in.

func (*ContainerOverlay) DeepCopy added in v0.2.0

func (in *ContainerOverlay) DeepCopy() *ContainerOverlay

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

func (*ContainerOverlay) DeepCopyInto added in v0.2.0

func (in *ContainerOverlay) DeepCopyInto(out *ContainerOverlay)

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

type KubeAPIServer

type KubeAPIServer struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   KubeAPIServerSpec   `json:"spec,omitempty"`
	Status KubeAPIServerStatus `json:"status,omitempty"`
}

KubeAPIServer is the Schema for the KubeAPIServers API

func (*KubeAPIServer) DeepCopy

func (in *KubeAPIServer) DeepCopy() *KubeAPIServer

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

func (*KubeAPIServer) DeepCopyInto

func (in *KubeAPIServer) DeepCopyInto(out *KubeAPIServer)

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

func (*KubeAPIServer) DeepCopyObject

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

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

type KubeAPIServerAuthentication

type KubeAPIServerAuthentication struct {
	// BootstrapToken specifies whether bootstrap token authentication is enabled.
	BootstrapToken bool `json:"bootstrapToken,omitempty"`
	// Anonymous specifies whether anonymous authentication is enabled.
	Anonymous bool `json:"anonymous,omitempty"`
	// TokenSecret specifies whether token authentication is enabled and where these tokens are located at.
	TokenSecret *SecretSelector `json:"tokenSecret,omitempty"`
	// ClientCertificateSecret makes any request presenting a client certificate signed by one of the authorities in
	// the client-ca-file to be authenticated with an identity corresponding to the CommonName of the
	// client certificate.
	ClientCertificateSecret *SecretSelector `json:"clientCertificateSecret,omitempty"`
}

KubeAPIServerAuthentication specifies how users may authenticate to the api server.

func (*KubeAPIServerAuthentication) DeepCopy

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

func (*KubeAPIServerAuthentication) DeepCopyInto

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

type KubeAPIServerCondition

type KubeAPIServerCondition struct {
	Type               KubeAPIServerConditionType `json:"type"`
	Status             corev1.ConditionStatus     `json:"status"`
	ObservedGeneration int64                      `json:"observedGeneration,omitempty"`
	LastUpdateTime     metav1.Time                `json:"lastUpdateTime"`
	LastTransitionTime metav1.Time                `json:"lastTransitionTime"`
	Reason             string                     `json:"reason"`
	Message            string                     `json:"message"`
}

KubeAPIServerCondition reports individual conditions of an KubeAPIServer.

func (*KubeAPIServerCondition) DeepCopy

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

func (*KubeAPIServerCondition) DeepCopyInto

func (in *KubeAPIServerCondition) DeepCopyInto(out *KubeAPIServerCondition)

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

type KubeAPIServerConditionType

type KubeAPIServerConditionType string

KubeAPIServerConditionType are types of KubeAPIServerCondition.

const (
	// KubeAPIServerAvailable reports whether the api server is available,
	// meaning the required number of replicas has met the health checks for a certain amount of time.
	KubeAPIServerAvailable KubeAPIServerConditionType = "Available"
	// KubeAPIServerProgressing reports whether the update of an api server
	// deployment is progressing as expected.
	KubeAPIServerProgressing KubeAPIServerConditionType = "Progressing"
	// KubeAPIServerDeploymentFailure indicates any error that might have occurred when
	// creating the deployment of an api server.
	KubeAPIServerDeploymentFailure KubeAPIServerConditionType = "DeploymentFailure"
)

type KubeAPIServerETCD

type KubeAPIServerETCD struct {
	// Servers is the list of etcd servers for the api server to connect to.
	//+kubebuilder:validation:MinItems=1
	Servers []string `json:"servers"`
	// CertificateAuthoritySecret is an optional specification of the certificate authority to use
	// when connecting to the etcd.
	CertificateAuthoritySecret *SecretSelector `json:"certificateAuthoritySecret,omitempty"`
	// KeySecret is an optional specification of the key to use when connecting to the etcd.
	KeySecret *SecretSelector `json:"keySecret,omitempty"`
}

KubeAPIServerETCD contains settings on how the api server connects to an etcd.

func (*KubeAPIServerETCD) DeepCopy

func (in *KubeAPIServerETCD) DeepCopy() *KubeAPIServerETCD

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

func (*KubeAPIServerETCD) DeepCopyInto

func (in *KubeAPIServerETCD) DeepCopyInto(out *KubeAPIServerETCD)

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

type KubeAPIServerETCDCertificateAuthority

type KubeAPIServerETCDCertificateAuthority struct {
	// Secret is a SecretSelector specifying where to retrieve the ca certificate.
	// If key is left blank, DefaultKubeAPIServerETCDCertificateAuthoritySecretKey is used.
	Secret SecretSelector `json:"secret"`
}

KubeAPIServerETCDCertificateAuthority specifies how to obtain the certificate authority to use when connecting to etcd.

func (*KubeAPIServerETCDCertificateAuthority) DeepCopy

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

func (*KubeAPIServerETCDCertificateAuthority) DeepCopyInto

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

type KubeAPIServerETCDKey

type KubeAPIServerETCDKey struct {
	// Secret references a secret containing the etcd key under 'tls.key'.
	Secret corev1.LocalObjectReference `json:"secret"`
}

KubeAPIServerETCDKey specifies how to obtain the etcd key used when connecting to etcd.

func (*KubeAPIServerETCDKey) DeepCopy

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

func (*KubeAPIServerETCDKey) DeepCopyInto

func (in *KubeAPIServerETCDKey) DeepCopyInto(out *KubeAPIServerETCDKey)

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

type KubeAPIServerList

type KubeAPIServerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []KubeAPIServer `json:"items"`
}

KubeAPIServerList contains a list of KubeAPIServer

func (*KubeAPIServerList) DeepCopy

func (in *KubeAPIServerList) DeepCopy() *KubeAPIServerList

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

func (*KubeAPIServerList) DeepCopyInto

func (in *KubeAPIServerList) DeepCopyInto(out *KubeAPIServerList)

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

func (*KubeAPIServerList) DeepCopyObject

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

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

type KubeAPIServerPodOverlay added in v0.2.0

type KubeAPIServerPodOverlay struct {
	// PodOverlay is the base managed pod specification.
	PodOverlay `json:",inline,omitempty"`
	// APIServerContainer is the ContainerOverlay that hosts the api server.
	APIServerContainer ContainerOverlay `json:"apiServerContainer,omitempty"`
}

KubeAPIServerPodOverlay is the PodOverlay with additional ContainerOverlay containers.

func (*KubeAPIServerPodOverlay) DeepCopy added in v0.2.0

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

func (*KubeAPIServerPodOverlay) DeepCopyInto added in v0.2.0

func (in *KubeAPIServerPodOverlay) DeepCopyInto(out *KubeAPIServerPodOverlay)

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

type KubeAPIServerPodTemplateOverlay added in v0.2.0

type KubeAPIServerPodTemplateOverlay struct {
	// ObjectMeta specifies additional object metadata to set on the managed pods.
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the KubeAPIServerPodOverlay overlay specification for the pod.
	Spec KubeAPIServerPodOverlay `json:"spec,omitempty"`
}

KubeAPIServerPodTemplateOverlay is the template overlay for pods.

func (*KubeAPIServerPodTemplateOverlay) DeepCopy added in v0.2.0

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

func (*KubeAPIServerPodTemplateOverlay) DeepCopyInto added in v0.2.0

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

type KubeAPIServerSecureServing added in v0.2.0

type KubeAPIServerSecureServing struct {
	// Secret references a secret containing 'tls.crt' and 'tls.key' to use
	// for TLS-securing the API server.
	Secret corev1.LocalObjectReference `json:"secret"`
}

KubeAPIServerSecureServing specifies where tls configuration for the api server is found.

func (*KubeAPIServerSecureServing) DeepCopy added in v0.2.0

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

func (*KubeAPIServerSecureServing) DeepCopyInto added in v0.2.0

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

type KubeAPIServerServiceAccount

type KubeAPIServerServiceAccount struct {
	// Issuer is the service account issuer.
	Issuer string `json:"issuer"`
	// KeySecret references a secret containing a key 'tls.key' that contains the
	// key to sign and verify service accounts with.
	KeySecret SecretSelector `json:"keySecret"`
	// SigningKeySecret references a secret containing a key 'tls.key' that contains the
	// key to sign and verify service accounts with.
	SigningKeySecret SecretSelector `json:"signingKeySecret"`
}

KubeAPIServerServiceAccount is the specification how service accounts are issued / signed.

func (*KubeAPIServerServiceAccount) DeepCopy

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

func (*KubeAPIServerServiceAccount) DeepCopyInto

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

type KubeAPIServerSpec

type KubeAPIServerSpec struct {
	// Replicas specifies the desired amount of replicas for the api server deployment.
	// This is a pointer to distinguish between not specified and explicit zero.
	//+kubebuilder:validation:Minimum=0
	//+kubebuilder:default=1
	Replicas *int32 `json:"replicas"`
	// Version is the api server version to use.
	Version string `json:"version"`
	// Selector specifies the label selector to discover managed pods.
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
	// Overlay is the KubeAPIServerPodTemplateOverlay to use to scaffold the deployment.
	Overlay KubeAPIServerPodTemplateOverlay `json:"overlay,omitempty"`
	// ETCD specifies the KubeAPIServerETCD connection settings.
	ETCD KubeAPIServerETCD `json:"etcd"`
	// Authentication specifies how users can authenticate to the api server.
	Authentication KubeAPIServerAuthentication `json:"authentication"`
	// SecureServing optionally defines how to secure the api server.
	SecureServing *KubeAPIServerSecureServing `json:"secureServing,omitempty"`
	// ServiceAccount are service account settings for the api server.
	ServiceAccount KubeAPIServerServiceAccount `json:"serviceAccount"`
	// FeatureGates describe which alpha features should be enabled or beta features disabled
	FeatureGates map[string]bool `json:"featureGates,omitempty"`
	// RuntimeConfig passes --runtime-config <comma-separated 'key=value' pairs>.
	// A set of key=value pairs that enable or disable built-in APIs. Supported options are:
	// v1=true|false for the core API group.
	// <group>/<version>=true|false for a specific API group and version (e.g. apps/v1=true).
	// api/all=true|false controls all API versions.
	// api/ga=true|false controls all API versions of the form v[0-9]+.
	// api/beta=true|false controls all API versions of the form v[0-9]+beta[0-9]+.
	// api/alpha=true|false controls all API versions of the form v[0-9]+alpha[0-9]+.
	// api/legacy is deprecated, and will be removed in a future version.
	RuntimeConfig map[string]bool `json:"runtimeConfig,omitempty"`
	// AdmissionPlugins defaults to NamespaceLifecycle,NodeRestriction,LimitRanger,ServiceAccount,DefaultStorageClass,ResourceQuota
	//+kubebuilder:default={NamespaceLifecycle,NodeRestriction,LimitRanger,ServiceAccount,DefaultStorageClass,ResourceQuota}
	AdmissionPlugins []string `json:"admissionPlugins,omitempty"`
}

KubeAPIServerSpec defines the desired state of KubeAPIServer

func (*KubeAPIServerSpec) DeepCopy

func (in *KubeAPIServerSpec) DeepCopy() *KubeAPIServerSpec

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

func (*KubeAPIServerSpec) DeepCopyInto

func (in *KubeAPIServerSpec) DeepCopyInto(out *KubeAPIServerSpec)

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

type KubeAPIServerStatus

type KubeAPIServerStatus struct {
	ObservedGeneration  int64              `json:"observedGeneration,omitempty"`
	Replicas            int32              `json:"replicas,omitempty"`
	UpdatedReplicas     int32              `json:"updatedReplicas,omitempty"`
	ReadyReplicas       int32              `json:"readyReplicas,omitempty"`
	AvailableReplicas   int32              `json:"availableReplicas,omitempty"`
	UnavailableReplicas int32              `json:"unavailableReplicas,omitempty"`
	Conditions          []metav1.Condition `json:"conditions,omitempty"`
}

KubeAPIServerStatus defines the observed state of KubeAPIServer

func (*KubeAPIServerStatus) DeepCopy

func (in *KubeAPIServerStatus) DeepCopy() *KubeAPIServerStatus

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

func (*KubeAPIServerStatus) DeepCopyInto

func (in *KubeAPIServerStatus) DeepCopyInto(out *KubeAPIServerStatus)

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

type KubeControllerManager

type KubeControllerManager struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   KubeControllerManagerSpec   `json:"spec,omitempty"`
	Status KubeControllerManagerStatus `json:"status,omitempty"`
}

KubeControllerManager is the Schema for the kubecontrollermanagers API

func (*KubeControllerManager) DeepCopy

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

func (*KubeControllerManager) DeepCopyInto

func (in *KubeControllerManager) DeepCopyInto(out *KubeControllerManager)

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

func (*KubeControllerManager) DeepCopyObject

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

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

type KubeControllerManagerAuthentication added in v0.2.0

type KubeControllerManagerAuthentication struct {
	// SkipLookup instructs the kube controller manager to skip looking up additional authentication
	// information from the api server.
	SkipLookup bool `json:"skipLookup,omitempty"`
	// KubeconfigSecret is the kubeconfig secret used for authenticating.
	KubeconfigSecret SecretSelector `json:"kubeconfigSecret"`
}

KubeControllerManagerAuthentication is configuration how the kube controller manager handles authentication and / or authenticating requests.

func (*KubeControllerManagerAuthentication) DeepCopy added in v0.2.0

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

func (*KubeControllerManagerAuthentication) DeepCopyInto added in v0.2.0

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

type KubeControllerManagerAuthorization added in v0.2.0

type KubeControllerManagerAuthorization struct {
	// KubeconfigSecret is the kugbeconfig secret used for authorizing.
	KubeconfigSecret SecretSelector `json:"kubeconfigSecret"`
}

KubeControllerManagerAuthorization is configuration how the kube controller manager handles authorization and / or authenticating requests.

func (*KubeControllerManagerAuthorization) DeepCopy added in v0.2.0

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

func (*KubeControllerManagerAuthorization) DeepCopyInto added in v0.2.0

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

type KubeControllerManagerCSRSigningControllerConfiguration added in v0.2.0

type KubeControllerManagerCSRSigningControllerConfiguration struct {
	// ClusterSigningSecret references the secret used for signing.
	// It is expected that this secret contains 'ca.crt' and 'tls.key' as items.
	ClusterSigningSecret *corev1.LocalObjectReference `json:"clusterSigningSecret,omitempty"`
}

KubeControllerManagerCSRSigningControllerConfiguration is configuration how the CSR (Certificate Signing Request) signing controller operates.

func (*KubeControllerManagerCSRSigningControllerConfiguration) DeepCopy added in v0.2.0

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

func (*KubeControllerManagerCSRSigningControllerConfiguration) DeepCopyInto added in v0.2.0

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

type KubeControllerManagerCondition

type KubeControllerManagerCondition struct {
	Type               KubeControllerManagerConditionType `json:"type"`
	Status             corev1.ConditionStatus             `json:"status"`
	ObservedGeneration int64                              `json:"observedGeneration,omitempty"`
	LastUpdateTime     metav1.Time                        `json:"lastUpdateTime"`
	LastTransitionTime metav1.Time                        `json:"lastTransitionTime"`
	Reason             string                             `json:"reason"`
	Message            string                             `json:"message"`
}

KubeControllerManagerCondition reports individual conditions of a KubeControllerManager.

func (*KubeControllerManagerCondition) DeepCopy

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

func (*KubeControllerManagerCondition) DeepCopyInto

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

type KubeControllerManagerConditionType

type KubeControllerManagerConditionType string

KubeControllerManagerConditionType are types of KubeControllerManagerCondition.

const (
	// KubeControllerManagerAvailable reports whether the kube controller manager is available,
	// meaning the required number of replicas has met the health checks for a certain amount of time.
	KubeControllerManagerAvailable KubeControllerManagerConditionType = "Available"
	// KubeControllerManagerProgressing reports whether the update of a kube controller manager
	// deployment is progressing as expected.
	KubeControllerManagerProgressing KubeControllerManagerConditionType = "Progressing"
	// KubeControllerManagerDeploymentFailure indicates any error that might have occurred when
	// creating the deployment of a kube controller manager.
	KubeControllerManagerDeploymentFailure KubeControllerManagerConditionType = "DeploymentFailure"
)

type KubeControllerManagerControllerCredentials added in v0.2.0

type KubeControllerManagerControllerCredentials string

KubeControllerManagerControllerCredentials specifies how the controllers managed by kube controller manager should handle their credentials towards the Kubernetes API.

const (
	// KubeControllerManagerGlobalCredentials instructs kube controller manager controllers to use the same set of
	// global credentials as the kube controller manager.
	KubeControllerManagerGlobalCredentials KubeControllerManagerControllerCredentials = "Global"
	// KubeControllerManagerServiceAccountCredentials instructs kube controller manager controllers to each use
	// individual service accounts.
	KubeControllerManagerServiceAccountCredentials KubeControllerManagerControllerCredentials = "ServiceAccount"
)

type KubeControllerManagerGenericConfiguration added in v0.2.0

type KubeControllerManagerGenericConfiguration struct {
	// KubeconfigSecret is the reference to the kubeconfig secret.
	KubeconfigSecret SecretSelector `json:"kubeconfigSecret"`
	// Controllers is the list of controllers to enable or disable
	// '*' means "all enabled by default controllers"
	// 'foo' means "enable 'foo'"
	// '-foo' means "disable 'foo'"
	// first item for a particular name wins.
	//+kubebuilder:default={*}
	Controllers []string `json:"controllers,omitempty"`
}

KubeControllerManagerGenericConfiguration is generic kube controller manager configuration required for each kube controller manager to start up.

func (*KubeControllerManagerGenericConfiguration) DeepCopy added in v0.2.0

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

func (*KubeControllerManagerGenericConfiguration) DeepCopyInto added in v0.2.0

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

type KubeControllerManagerList

type KubeControllerManagerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []KubeControllerManager `json:"items"`
}

KubeControllerManagerList contains a list of KubeControllerManager

func (*KubeControllerManagerList) DeepCopy

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

func (*KubeControllerManagerList) DeepCopyInto

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

func (*KubeControllerManagerList) DeepCopyObject

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

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

type KubeControllerManagerPodOverlay added in v0.2.0

type KubeControllerManagerPodOverlay struct {
	// PodOverlay is the base managed pod specification.
	PodOverlay `json:",inline,omitempty"`
	// ControllerManagerContainer is the ContainerOverlay that hosts the kube controller manager.
	ControllerManagerContainer ContainerOverlay `json:"controllerManagerContainer,omitempty"`
}

KubeControllerManagerPodOverlay is the PodOverlay with additional ContainerOverlay containers.

func (*KubeControllerManagerPodOverlay) DeepCopy added in v0.2.0

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

func (*KubeControllerManagerPodOverlay) DeepCopyInto added in v0.2.0

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

type KubeControllerManagerPodTemplateOverlay added in v0.2.0

type KubeControllerManagerPodTemplateOverlay struct {
	// ObjectMeta specifies additional object metadata to set on the managed pods.
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the KubeControllerManagerPodOverlay overlay specification for the pod.
	Spec KubeControllerManagerPodOverlay `json:"spec,omitempty"`
}

KubeControllerManagerPodTemplateOverlay is the template overlay for pods.

func (*KubeControllerManagerPodTemplateOverlay) DeepCopy added in v0.2.0

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

func (*KubeControllerManagerPodTemplateOverlay) DeepCopyInto added in v0.2.0

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

type KubeControllerManagerServiceAccountControllerConfiguration added in v0.2.0

type KubeControllerManagerServiceAccountControllerConfiguration struct {
	// PrivateKeySecret is the secret containing the private key to sign service accounts with.
	PrivateKeySecret *SecretSelector `json:"privateKeySecret,omitempty"`
	// RootCertificateSecret is the secret containing an optional root certificate to distribute
	// with each service account.
	RootCertificateSecret *SecretSelector `json:"rootCertificateSecret,omitempty"`
}

KubeControllerManagerServiceAccountControllerConfiguration contains configuration on how the kube controller manager service account controller operates.

func (*KubeControllerManagerServiceAccountControllerConfiguration) DeepCopy added in v0.2.0

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

func (*KubeControllerManagerServiceAccountControllerConfiguration) DeepCopyInto added in v0.2.0

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

type KubeControllerManagerSharedConfiguration added in v0.2.0

type KubeControllerManagerSharedConfiguration struct {
	// ClusterName is the instance prefix for the cluster.
	//+kubebuilder:default=kubernetes
	ClusterName string `json:"clusterName,omitempty"`
	// ControllerCredentials specifies how the controllers managed by kube controller manager should handle
	// their credentials towards the Kubernetes API.
	//+kubebuilder:default=ServiceAccount
	//+kubebuilder:validation:Enum=Global;ServiceAccount
	ControllerCredentials KubeControllerManagerControllerCredentials `json:"controllerCredentials,omitempty"`
}

KubeControllerManagerSharedConfiguration is configuration that is shared among other components of the kube controller manager.

func (*KubeControllerManagerSharedConfiguration) DeepCopy added in v0.2.0

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

func (*KubeControllerManagerSharedConfiguration) DeepCopyInto added in v0.2.0

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

type KubeControllerManagerSpec

type KubeControllerManagerSpec struct {
	// Replicas specifies the number of kube controller manager replicas to create.
	// This is a pointer to distinguish between not specified and explicit zero.
	//+kubebuilder:validation:Minimum=0
	//+kubebuilder:default=1
	Replicas *int32 `json:"replicas"`
	// Version is the kube controller manager version to use.
	Version string `json:"version"`
	// Selector specifies the label selector to discover managed pods.
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
	// Overlay is the KubeControllerManagerPodTemplateOverlay to use to scaffold the deployment.
	Overlay KubeControllerManagerPodTemplateOverlay `json:"overlay,omitempty"`
	// Generic is the generic / base configuration required for any kube controller manager.
	Generic KubeControllerManagerGenericConfiguration `json:"generic"`
	// Shared is configuration that is shared among any controller or other configuration options of a
	// kube controller manager.
	Shared KubeControllerManagerSharedConfiguration `json:"shared"`
	// CSRSigningController is configuration for the CSR (Certificate Signing Request) signing controller.
	CSRSigningController *KubeControllerManagerCSRSigningControllerConfiguration `json:"csrSigningController,omitempty"`
	// ServiceAccountController is configuration for the service account controller.
	ServiceAccountController *KubeControllerManagerServiceAccountControllerConfiguration `json:"serviceAccountController,omitempty"`
	// Authentication is configuration how the kube controller manager handles authentication / authenticating requests.
	Authentication *KubeControllerManagerAuthentication `json:"authentication,omitempty"`
	// Authorization is configuration how the kube controller manager handles authorization / authorizing requests.
	Authorization *KubeControllerManagerAuthorization `json:"authorization,omitempty"`
	// FeatureGates describe which alpha features should be enabled or beta features disabled
	FeatureGates map[string]bool `json:"featureGates,omitempty"`
}

KubeControllerManagerSpec defines the desired state of KubeControllerManager

func (*KubeControllerManagerSpec) DeepCopy

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

func (*KubeControllerManagerSpec) DeepCopyInto

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

type KubeControllerManagerStatus

type KubeControllerManagerStatus struct {
	ObservedGeneration  int64              `json:"observedGeneration,omitempty"`
	Replicas            int32              `json:"replicas,omitempty"`
	UpdatedReplicas     int32              `json:"updatedReplicas,omitempty"`
	ReadyReplicas       int32              `json:"readyReplicas,omitempty"`
	AvailableReplicas   int32              `json:"availableReplicas,omitempty"`
	UnavailableReplicas int32              `json:"unavailableReplicas,omitempty"`
	Conditions          []metav1.Condition `json:"conditions,omitempty"`
}

KubeControllerManagerStatus defines the observed state of KubeControllerManager

func (*KubeControllerManagerStatus) DeepCopy

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

func (*KubeControllerManagerStatus) DeepCopyInto

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

type KubeScheduler added in v0.4.2

type KubeScheduler struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   KubeSchedulerSpec   `json:"spec,omitempty"`
	Status KubeSchedulerStatus `json:"status,omitempty"`
}

KubeScheduler is the Schema for the kubeschedulers API

func (*KubeScheduler) DeepCopy added in v0.4.2

func (in *KubeScheduler) DeepCopy() *KubeScheduler

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

func (*KubeScheduler) DeepCopyInto added in v0.4.2

func (in *KubeScheduler) DeepCopyInto(out *KubeScheduler)

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

func (*KubeScheduler) DeepCopyObject added in v0.4.2

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

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

type KubeSchedulerAuthentication added in v0.4.2

type KubeSchedulerAuthentication struct {
	// SkipLookup instructs the kube scheduler to skip looking up additional authentication
	// information from the api server.
	SkipLookup bool `json:"skipLookup,omitempty"`
	// KubeconfigSecret is the kubeconfig secret used for authenticating.
	KubeconfigSecret SecretSelector `json:"kubeconfigSecret"`
}

KubeSchedulerAuthentication is configuration how the kube scheduler handles authentication and / or authenticating requests.

func (*KubeSchedulerAuthentication) DeepCopy added in v0.4.2

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

func (*KubeSchedulerAuthentication) DeepCopyInto added in v0.4.2

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

type KubeSchedulerAuthorization added in v0.4.2

type KubeSchedulerAuthorization struct {
	// KubeconfigSecret is the kugbeconfig secret used for authorizing.
	KubeconfigSecret SecretSelector `json:"kubeconfigSecret"`
}

KubeSchedulerAuthorization is configuration how the kube scheduler handles authorization and / or authenticating requests.

func (*KubeSchedulerAuthorization) DeepCopy added in v0.4.2

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

func (*KubeSchedulerAuthorization) DeepCopyInto added in v0.4.2

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

type KubeSchedulerCondition added in v0.4.2

type KubeSchedulerCondition struct {
	Type               KubeSchedulerConditionType `json:"type"`
	Status             corev1.ConditionStatus     `json:"status"`
	ObservedGeneration int64                      `json:"observedGeneration,omitempty"`
	LastUpdateTime     metav1.Time                `json:"lastUpdateTime"`
	LastTransitionTime metav1.Time                `json:"lastTransitionTime"`
	Reason             string                     `json:"reason"`
	Message            string                     `json:"message"`
}

KubeSchedulerCondition reports individual conditions of a KubeScheduler.

func (*KubeSchedulerCondition) DeepCopy added in v0.4.2

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

func (*KubeSchedulerCondition) DeepCopyInto added in v0.4.2

func (in *KubeSchedulerCondition) DeepCopyInto(out *KubeSchedulerCondition)

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

type KubeSchedulerConditionType added in v0.4.2

type KubeSchedulerConditionType string

KubeSchedulerConditionType are types of KubeSchedulerCondition.

const (
	// KubeSchedulerAvailable reports whether the kube scheduler is available,
	// meaning the required number of replicas has met the health checks for a certain amount of time.
	KubeSchedulerAvailable KubeSchedulerConditionType = "Available"
	// KubeSchedulerProgressing reports whether the update of a kube scheduler
	// deployment is progressing as expected.
	KubeSchedulerProgressing KubeSchedulerConditionType = "Progressing"
	// KubeSchedulerDeploymentFailure indicates any error that might have occurred when
	// creating the deployment of a kube scheduler.
	KubeSchedulerDeploymentFailure KubeSchedulerConditionType = "DeploymentFailure"
)

type KubeSchedulerConfiguration added in v0.4.2

type KubeSchedulerConfiguration struct {
	// KubeconfigSecret is the reference to the kubeconfig secret.
	KubeconfigSecret SecretSelector `json:"kubeconfigSecret"`
}

KubeSchedulerConfiguration is the kube scheduler configuration required for the kube scheduler to start up.

func (*KubeSchedulerConfiguration) DeepCopy added in v0.4.2

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

func (*KubeSchedulerConfiguration) DeepCopyInto added in v0.4.2

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

type KubeSchedulerList added in v0.4.2

type KubeSchedulerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []KubeScheduler `json:"items"`
}

KubeSchedulerList contains a list of KubeScheduler

func (*KubeSchedulerList) DeepCopy added in v0.4.2

func (in *KubeSchedulerList) DeepCopy() *KubeSchedulerList

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

func (*KubeSchedulerList) DeepCopyInto added in v0.4.2

func (in *KubeSchedulerList) DeepCopyInto(out *KubeSchedulerList)

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

func (*KubeSchedulerList) DeepCopyObject added in v0.4.2

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

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

type KubeSchedulerPodOverlay added in v0.4.2

type KubeSchedulerPodOverlay struct {
	// PodOverlay is the base managed pod specification.
	PodOverlay `json:",inline,omitempty"`
	// SchedulerContainer is the ContainerOverlay that hosts the kube scheduler.
	SchedulerContainer ContainerOverlay `json:"schedulerContainer,omitempty"`
}

KubeSchedulerPodOverlay is the PodOverlay with additional ContainerOverlay containers.

func (*KubeSchedulerPodOverlay) DeepCopy added in v0.4.2

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

func (*KubeSchedulerPodOverlay) DeepCopyInto added in v0.4.2

func (in *KubeSchedulerPodOverlay) DeepCopyInto(out *KubeSchedulerPodOverlay)

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

type KubeSchedulerPodTemplateOverlay added in v0.4.2

type KubeSchedulerPodTemplateOverlay struct {
	// ObjectMeta specifies additional object metadata to set on the managed pods.
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the KubeSchedulerPodOverlay overlay specification for the pod.
	Spec KubeSchedulerPodOverlay `json:"spec,omitempty"`
}

KubeSchedulerPodTemplateOverlay is the template overlay for pods.

func (*KubeSchedulerPodTemplateOverlay) DeepCopy added in v0.4.2

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

func (*KubeSchedulerPodTemplateOverlay) DeepCopyInto added in v0.4.2

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

type KubeSchedulerSpec added in v0.4.2

type KubeSchedulerSpec struct {
	// Replicas specifies the number of kube scheduler replicas to create.
	// This is a pointer to distinguish between not specified and explicit zero.
	//+kubebuilder:validation:Minimum=0
	//+kubebuilder:default=1
	Replicas *int32 `json:"replicas"`
	// Version is the kube scheduler version to use.
	Version string `json:"version"`
	// Selector specifies the label selector to discover managed pods.
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
	// Overlay is the KubeSchedulerPodTemplateOverlay to use to scaffold the deployment.
	Overlay KubeSchedulerPodTemplateOverlay `json:"overlay,omitempty"`
	// ComponentConfig is the base configuration required for any kube scheduler.
	ComponentConfig KubeSchedulerConfiguration `json:"componentConfig"`
	// Authentication is configuration how the kube scheduler handles authentication / authenticating requests.
	Authentication *KubeSchedulerAuthentication `json:"authentication,omitempty"`
	// Authorization is configuration how the kube scheduler handles authorization / authorizing requests.
	Authorization *KubeSchedulerAuthorization `json:"authorization,omitempty"`
	// FeatureGates describe which alpha features should be enabled or beta features disabled
	FeatureGates map[string]bool `json:"featureGates,omitempty"`
}

KubeSchedulerSpec defines the desired state of KubeScheduler

func (*KubeSchedulerSpec) DeepCopy added in v0.4.2

func (in *KubeSchedulerSpec) DeepCopy() *KubeSchedulerSpec

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

func (*KubeSchedulerSpec) DeepCopyInto added in v0.4.2

func (in *KubeSchedulerSpec) DeepCopyInto(out *KubeSchedulerSpec)

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

type KubeSchedulerStatus added in v0.4.2

type KubeSchedulerStatus struct {
	ObservedGeneration  int64              `json:"observedGeneration,omitempty"`
	Replicas            int32              `json:"replicas,omitempty"`
	UpdatedReplicas     int32              `json:"updatedReplicas,omitempty"`
	ReadyReplicas       int32              `json:"readyReplicas,omitempty"`
	AvailableReplicas   int32              `json:"availableReplicas,omitempty"`
	UnavailableReplicas int32              `json:"unavailableReplicas,omitempty"`
	Conditions          []metav1.Condition `json:"conditions,omitempty"`
}

KubeSchedulerStatus defines the observed state of KubeScheduler

func (*KubeSchedulerStatus) DeepCopy added in v0.4.2

func (in *KubeSchedulerStatus) DeepCopy() *KubeSchedulerStatus

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

func (*KubeSchedulerStatus) DeepCopyInto added in v0.4.2

func (in *KubeSchedulerStatus) DeepCopyInto(out *KubeSchedulerStatus)

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

type Kubeconfig

type Kubeconfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   KubeconfigSpec   `json:"spec,omitempty"`
	Status KubeconfigStatus `json:"status,omitempty"`
}

Kubeconfig is the Schema for the kubeconfigs API

func (*Kubeconfig) DeepCopy

func (in *Kubeconfig) DeepCopy() *Kubeconfig

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

func (*Kubeconfig) DeepCopyInto

func (in *Kubeconfig) DeepCopyInto(out *Kubeconfig)

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

func (*Kubeconfig) DeepCopyObject

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

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

type KubeconfigAuthInfo

type KubeconfigAuthInfo struct {
	// ClientCertificateSecret references a client certificate to present to the server.
	ClientCertificateSecret *SecretSelector `json:"clientCertificateSecret,omitempty"`
	// ClientKeySecret references a client key to present to the server.
	ClientKeySecret *SecretSelector `json:"clientKeySecret,omitempty"`
	// TokenSecret references a token to present to the server.
	TokenSecret *SecretSelector `json:"tokenSecret,omitempty"`
	// Impersonate sets the user to impersonate.
	Impersonate string `json:"as,omitempty"`
	// ImpersonateGroups sets the groups to impersonate.
	ImpersonateGroups []string `json:"asGroups,omitempty"`
	// Username sets the username to use.
	Username string `json:"username,omitempty"`
	// Password references a password.
	PasswordSecret *SecretSelector `json:"passwordSecret,omitempty"`
}

KubeconfigAuthInfo is information how to authenticate to the cluster.

func (*KubeconfigAuthInfo) DeepCopy

func (in *KubeconfigAuthInfo) DeepCopy() *KubeconfigAuthInfo

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

func (*KubeconfigAuthInfo) DeepCopyInto

func (in *KubeconfigAuthInfo) DeepCopyInto(out *KubeconfigAuthInfo)

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

type KubeconfigCluster

type KubeconfigCluster struct {
	// Server is the server's address.
	Server string `json:"server"`
	// TLSServerName name is the server's TLS name.
	TLSServerName string `json:"tlsServerName,omitempty"`
	// InsecureSkipTLSVerify may be used to disable https ca certificate validation.
	InsecureSkipTLSVerify bool `json:"insecureSkipTLSVerify,omitempty"`
	// CertificateAuthoritySecret is the ca to use for connecting to the server.
	CertificateAuthoritySecret *SecretSelector `json:"certificateAuthoritySecret,omitempty"`
	// ProxyURL is the proxy url to use to connect to the server.
	ProxyURL string `json:"proxyURL,omitempty"`
}

KubeconfigCluster specifies settings on how to connect to a cluster.

func (*KubeconfigCluster) DeepCopy

func (in *KubeconfigCluster) DeepCopy() *KubeconfigCluster

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

func (*KubeconfigCluster) DeepCopyInto

func (in *KubeconfigCluster) DeepCopyInto(out *KubeconfigCluster)

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

type KubeconfigContext

type KubeconfigContext struct {
	Cluster   string `json:"cluster"`
	AuthInfo  string `json:"user"`
	Namespace string `json:"namespace,omitempty"`
}

KubeconfigContext bundles together a cluster, auth info and optional namespace to use.

func (*KubeconfigContext) DeepCopy

func (in *KubeconfigContext) DeepCopy() *KubeconfigContext

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

func (*KubeconfigContext) DeepCopyInto

func (in *KubeconfigContext) DeepCopyInto(out *KubeconfigContext)

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

type KubeconfigList

type KubeconfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Kubeconfig `json:"items"`
}

KubeconfigList contains a list of Kubeconfig

func (*KubeconfigList) DeepCopy

func (in *KubeconfigList) DeepCopy() *KubeconfigList

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

func (*KubeconfigList) DeepCopyInto

func (in *KubeconfigList) DeepCopyInto(out *KubeconfigList)

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

func (*KubeconfigList) DeepCopyObject

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

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

type KubeconfigNamedAuthInfo

type KubeconfigNamedAuthInfo struct {
	// Name is the name of the KubeconfigAuthInfo.
	Name string `json:"name"`
	// AuthInfo is a KubeconfigAuthInfo.
	AuthInfo KubeconfigAuthInfo `json:"user"`
}

KubeconfigNamedAuthInfo is a named KubeconfigAuthInfo.

func (*KubeconfigNamedAuthInfo) DeepCopy

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

func (*KubeconfigNamedAuthInfo) DeepCopyInto

func (in *KubeconfigNamedAuthInfo) DeepCopyInto(out *KubeconfigNamedAuthInfo)

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

type KubeconfigNamedCluster

type KubeconfigNamedCluster struct {
	// Name is the name of the KubeconfigCluster.
	Name string `json:"name"`
	// Cluster is a KubeconfigCluster.
	Cluster KubeconfigCluster `json:"cluster"`
}

KubeconfigNamedCluster is a named KubeconfigCluster.

func (*KubeconfigNamedCluster) DeepCopy

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

func (*KubeconfigNamedCluster) DeepCopyInto

func (in *KubeconfigNamedCluster) DeepCopyInto(out *KubeconfigNamedCluster)

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

type KubeconfigNamedContext

type KubeconfigNamedContext struct {
	Name    string            `json:"name"`
	Context KubeconfigContext `json:"context"`
}

KubeconfigNamedContext is a named KubeconfigContext.

func (*KubeconfigNamedContext) DeepCopy

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

func (*KubeconfigNamedContext) DeepCopyInto

func (in *KubeconfigNamedContext) DeepCopyInto(out *KubeconfigNamedContext)

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

type KubeconfigSpec

type KubeconfigSpec struct {
	// SecretName is the name of the secret to create for the Kubeconfig.
	SecretName string `json:"secretName"`

	// KubeconfigKey is the Secret.Data key to write the kubeconfig into.
	// If left empty, DefaultKubeconfigKey will be used.
	KubeconfigKey string `json:"kubeconfigKey,omitempty"`

	Clusters       []KubeconfigNamedCluster  `json:"clusters"`
	AuthInfos      []KubeconfigNamedAuthInfo `json:"users"`
	Contexts       []KubeconfigNamedContext  `json:"contexts"`
	CurrentContext string                    `json:"currentContext"`
}

KubeconfigSpec defines the desired state of Kubeconfig

func (*KubeconfigSpec) DeepCopy

func (in *KubeconfigSpec) DeepCopy() *KubeconfigSpec

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

func (*KubeconfigSpec) DeepCopyInto

func (in *KubeconfigSpec) DeepCopyInto(out *KubeconfigSpec)

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

type KubeconfigStatus

type KubeconfigStatus struct {
}

KubeconfigStatus defines the observed state of Kubeconfig

func (*KubeconfigStatus) DeepCopy

func (in *KubeconfigStatus) DeepCopy() *KubeconfigStatus

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

func (*KubeconfigStatus) DeepCopyInto

func (in *KubeconfigStatus) DeepCopyInto(out *KubeconfigStatus)

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

type PodOverlay added in v0.2.0

type PodOverlay struct {
	// AdditionalVolumes is a list of additional volumes to mount to the pod.
	AdditionalVolumes []corev1.Volume `json:"additionalVolumes,omitempty"`
	// AdditionalInitContainers is a list of additional initialization containers belonging to the pod.
	AdditionalInitContainers []corev1.Container `json:"additionalInitContainers,omitempty"`
	// Containers is a list of additional containers belonging to the pod.
	AdditionalContainers []corev1.Container `json:"additionalContainers,omitempty"`
	// DNSPolicy sets the DNS policy for the pod.
	// Defaults to "ClusterFirst".
	DNSPolicy *corev1.DNSPolicy `json:"dnsPolicy,omitempty"`
	// NodeSelector is a selector which must be true for the pod to fit on a node.
	// Selector which must match a node's labels for the pod to be scheduled on that node.
	NodeSelector *map[string]string `json:"nodeSelector,omitempty"`
	// ServiceAccountName is the name of the ServiceAccount to use to run this pod.
	ServiceAccountName *string `json:"serviceAccountName,omitempty"`
	// AutomountServiceAccountToken indicates whether a service account token should be automatically mounted.
	AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty"`
	// NodeName is a request to schedule this pod onto a specific node. If it is non-empty,
	// the scheduler simply schedules this pod onto that node, assuming that it fits resource
	// requirements.
	NodeName *string `json:"nodeName,omitempty"`
	// Host networking requested for this pod. Use the host's network namespace.
	// If this option is set, the ports that will be used must be specified.
	HostNetwork *bool `json:"hostNetwork,omitempty"`
	// Use the host's pid namespace.
	// Optional: Default to false.
	HostPID *bool `json:"hostPID,omitempty"`
	// Use the host's ipc namespace.
	// Optional: Default to false.
	HostIPC *bool `json:"hostIPC,omitempty"`
	// Share a single process namespace between all the containers in a pod.
	// When this is set containers will be able to view and signal processes from other containers
	// in the same pod, and the first process in each container will not be assigned PID 1.
	// HostPID and ShareProcessNamespace cannot both be set.
	ShareProcessNamespace *bool `json:"shareProcessNamespace,omitempty"`
	// SecurityContext holds pod-level security attributes and common container settings.
	SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`
	// AdditionalImagePullSecrets is an additional list of references to secrets in the same namespace to use for
	// pulling any of the images used by this PodOverlay.
	AdditionalImagePullSecrets []corev1.LocalObjectReference `json:"additionalImagePullSecrets,omitempty"`
	// Specifies the hostname of the Pod
	// If not specified, the pod's hostname will be set to a system-defined value.
	Hostname *string `json:"hostname,omitempty"`
	// If specified, the fully qualified Pod hostname will be "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>".
	// If not specified, the pod will not have a domain name at all.
	Subdomain *string `json:"subdomain,omitempty"`
	// If specified, the pod's scheduling constraints
	Affinity *corev1.Affinity `json:"affinity,omitempty"`
	// If specified, the pod will be dispatched by specified scheduler.
	// If not specified, the pod will be dispatched by default scheduler.
	SchedulerName *string `json:"schedulerName,omitempty"`
	// If specified, the pod's tolerations.
	Tolerations *[]corev1.Toleration `json:"tolerations,omitempty"`
	// HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
	// file if specified. This is only valid for non-hostNetwork pods.
	HostAliases *[]corev1.HostAlias `json:"hostAliases,omitempty"`
	// PriorityClassName indicates the pod's priority.
	PriorityClassName *string `json:"priorityClassName,omitempty"`
	// Priority is the priority value.
	Priority *int32 `json:"priority,omitempty"`
	// DNSConfig Specifies the DNS parameters of a pod.
	DNSConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"`
	// AdditionalReadinessGates specifies additional readiness gates that will be evaluated for pod readiness.
	AdditionalReadinessGates []corev1.PodReadinessGate `json:"additionalReadinessGates,omitempty"`
	// RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used
	// to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run.
	RuntimeClassName *string `json:"runtimeClassName,omitempty"`
	// EnableServiceLinks indicates whether information about services should be injected into pod's
	// environment variables, matching the syntax of Docker links.
	EnableServiceLinks *bool `json:"enableServiceLinks,omitempty"`
	// PreemptionPolicy is the Policy for preempting pods with lower priority.
	PreemptionPolicy *corev1.PreemptionPolicy `json:"preemptionPolicy,omitempty"`
	// TopologySpreadConstraints describes constraints of how a group of pods ought to spread across topology domains.
	TopologySpreadConstraints *[]corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`
	// If true the pod's hostname will be configured as the pod's FQDN, rather than the leaf name (the default).
	SetHostnameAsFQDN *bool `json:"setHostnameAsFQDN,omitempty"`
}

PodOverlay represents a pod specification that is managed by a controller but allows for additional configuration to be passed in.

func (*PodOverlay) DeepCopy added in v0.2.0

func (in *PodOverlay) DeepCopy() *PodOverlay

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

func (*PodOverlay) DeepCopyInto added in v0.2.0

func (in *PodOverlay) DeepCopyInto(out *PodOverlay)

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

type SecretSelector

type SecretSelector struct {
	corev1.LocalObjectReference `json:",inline"`
	// Key is the key to look up in the config map data. Some types use a default if this value is unset.
	Key string `json:"key,omitempty"`
}

SecretSelector selects a secret by name and a field in its data property by the key.

func (*SecretSelector) DeepCopy

func (in *SecretSelector) DeepCopy() *SecretSelector

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

func (*SecretSelector) DeepCopyInto

func (in *SecretSelector) DeepCopyInto(out *SecretSelector)

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

Jump to

Keyboard shortcuts

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