Documentation
¶
Overview ¶
Package v1alpha1 contains code that was copied from the upstream Kamaji@v1.0.0 types. This was done to prevent needing to import Kamaji as a library to: 1) Use strong types for Kamaji objects. 2) Avoid adding a large number of dependencies to the go.mod. 3) Allow the DPF operator to keep Kubernetes library versions independent of the Kamaji versions.
Copying the API was done by copying the relevant files and removing all functions from the files. The alternative to this would be to generate our own types with just the fields we care about from Kamaji or to work with unstructured objects and utility methods.
Package v1alpha1 contains API Schema definitions for the kamaji v1alpha1 API group +kubebuilder:object:generate=true +groupName=kamaji.clastix.io nolint
Index ¶
- Constants
- Variables
- type APIServerCertificatesStatus
- type AdditionalMetadata
- type AdditionalVolumeMounts
- type AddonSpec
- type AddonStatus
- type AddonsSpec
- type AddonsStatus
- type AdmissionController
- type AdmissionControllers
- type BasicAuth
- type CGroupDriver
- type CertKeyPair
- type CertificatePrivateKeyPairStatus
- type CertificatesStatus
- type ClientCertificate
- type ContentRef
- type ControlPlane
- type ControlPlaneComponentsResources
- type ControlPlaneExtraArgs
- type DataStore
- type DataStoreCertificateStatus
- type DataStoreConfigStatus
- type DataStoreList
- type DataStoreSetupStatus
- type DataStoreSpec
- type DataStoreStatus
- type DatastoreUsedSecret
- func (in *DatastoreUsedSecret) DeepCopy() *DatastoreUsedSecret
- func (in *DatastoreUsedSecret) DeepCopyInto(out *DatastoreUsedSecret)
- func (d *DatastoreUsedSecret) ExtractValue() client.IndexerFunc
- func (d *DatastoreUsedSecret) Field() string
- func (d *DatastoreUsedSecret) Object() client.Object
- func (d *DatastoreUsedSecret) SetupWithManager(ctx context.Context, mgr controllerruntime.Manager) error
- type DeploymentSpec
- type Driver
- type ETCDCertificateStatus
- type ETCDCertificatesStatus
- type Endpoints
- type ExternalKubernetesObjectStatus
- type ExtraArgs
- type ImageOverrideTrait
- type IngressSpec
- type KonnectivityAgentSpec
- type KonnectivityConfigMap
- type KonnectivityServerSpec
- type KonnectivitySpec
- type KonnectivityStatus
- type KubeadmConfigChecksumDependant
- type KubeadmConfigStatus
- type KubeadmPhaseStatus
- type KubeadmPhasesStatus
- type KubeconfigStatus
- type KubeconfigsStatus
- type KubeletPreferredAddressType
- type KubeletSpec
- type KubernetesDeploymentStatus
- type KubernetesIngressStatus
- type KubernetesServiceStatus
- type KubernetesSpec
- type KubernetesStatus
- type KubernetesVersion
- type KubernetesVersionStatus
- type NetworkProfileSpec
- type PublicKeyPrivateKeyPairStatus
- type RegistrySettings
- func (in *RegistrySettings) DeepCopy() *RegistrySettings
- func (in *RegistrySettings) DeepCopyInto(out *RegistrySettings)
- func (r *RegistrySettings) KubeAPIServerImage(version string) string
- func (r *RegistrySettings) KubeControllerManagerImage(version string) string
- func (r *RegistrySettings) KubeSchedulerImage(version string) string
- type SecretReference
- type ServiceSpec
- type ServiceType
- type StorageStatus
- type TLSConfig
- type TenantControlPlane
- type TenantControlPlaneList
- type TenantControlPlaneSpec
- type TenantControlPlaneStatus
- type TenantControlPlaneStatusDataStore
- func (in *TenantControlPlaneStatusDataStore) DeepCopy() *TenantControlPlaneStatusDataStore
- func (in *TenantControlPlaneStatusDataStore) DeepCopyInto(out *TenantControlPlaneStatusDataStore)
- func (t *TenantControlPlaneStatusDataStore) ExtractValue() client.IndexerFunc
- func (t *TenantControlPlaneStatusDataStore) Field() string
- func (t *TenantControlPlaneStatusDataStore) Object() client.Object
- func (t *TenantControlPlaneStatusDataStore) SetupWithManager(ctx context.Context, mgr controllerruntime.Manager) error
Constants ¶
const ( ServiceTypeLoadBalancer = (ServiceType)(corev1.ServiceTypeLoadBalancer) ServiceTypeClusterIP = (ServiceType)(corev1.ServiceTypeClusterIP) ServiceTypeNodePort = (ServiceType)(corev1.ServiceTypeNodePort) KubeconfigSecretKeyAnnotation = "kamaji.clastix.io/kubeconfig-secret-key" )
const (
DatastoreUsedSecretNamespacedNameKey = "secretRef"
)
const TenantControlPlaneKind = "TenantControlPlane"
const (
TenantControlPlaneUsedDataStoreKey = "status.storage.dataStoreName"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "kamaji.clastix.io", 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 )
Functions ¶
This section is empty.
Types ¶
type APIServerCertificatesStatus ¶
type APIServerCertificatesStatus struct { SecretName string `json:"secretName,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` Checksum string `json:"checksum,omitempty"` }
APIServerCertificatesStatus defines the observed state of ETCD Certificate for API server.
func (*APIServerCertificatesStatus) DeepCopy ¶
func (in *APIServerCertificatesStatus) DeepCopy() *APIServerCertificatesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerCertificatesStatus.
func (*APIServerCertificatesStatus) DeepCopyInto ¶
func (in *APIServerCertificatesStatus) DeepCopyInto(out *APIServerCertificatesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdditionalMetadata ¶
type AdditionalMetadata struct { Labels map[string]string `json:"labels,omitempty"` Annotations map[string]string `json:"annotations,omitempty"` }
AdditionalMetadata defines which additional metadata, such as labels and annotations, must be attached to the created resource.
func (*AdditionalMetadata) DeepCopy ¶
func (in *AdditionalMetadata) DeepCopy() *AdditionalMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalMetadata.
func (*AdditionalMetadata) DeepCopyInto ¶
func (in *AdditionalMetadata) DeepCopyInto(out *AdditionalMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdditionalVolumeMounts ¶
type AdditionalVolumeMounts struct { APIServer []corev1.VolumeMount `json:"apiServer,omitempty"` ControllerManager []corev1.VolumeMount `json:"controllerManager,omitempty"` Scheduler []corev1.VolumeMount `json:"scheduler,omitempty"` }
AdditionalVolumeMounts allows mounting additional volumes to the Control Plane components.
func (*AdditionalVolumeMounts) DeepCopy ¶
func (in *AdditionalVolumeMounts) DeepCopy() *AdditionalVolumeMounts
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalVolumeMounts.
func (*AdditionalVolumeMounts) DeepCopyInto ¶
func (in *AdditionalVolumeMounts) DeepCopyInto(out *AdditionalVolumeMounts)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonSpec ¶
type AddonSpec struct {
ImageOverrideTrait `json:",inline"`
}
AddonSpec defines the spec for every addon.
func (*AddonSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonSpec.
func (*AddonSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonStatus ¶
type AddonStatus struct { Enabled bool `json:"enabled"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` }
AddonStatus defines the observed state of an Addon.
func (*AddonStatus) DeepCopy ¶
func (in *AddonStatus) DeepCopy() *AddonStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonStatus.
func (*AddonStatus) DeepCopyInto ¶
func (in *AddonStatus) DeepCopyInto(out *AddonStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonsSpec ¶
type AddonsSpec struct { // Enables the DNS addon in the Tenant Cluster. // The registry and the tag are configurable, the image is hard-coded to `coredns`. CoreDNS *AddonSpec `json:"coreDNS,omitempty"` // Enables the Konnectivity addon in the Tenant Cluster, required if the worker nodes are in a different network. Konnectivity *KonnectivitySpec `json:"konnectivity,omitempty"` // Enables the kube-proxy addon in the Tenant Cluster. // The registry and the tag are configurable, the image is hard-coded to `kube-proxy`. KubeProxy *AddonSpec `json:"kubeProxy,omitempty"` }
AddonsSpec defines the enabled addons and their features.
func (*AddonsSpec) DeepCopy ¶
func (in *AddonsSpec) DeepCopy() *AddonsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonsSpec.
func (*AddonsSpec) DeepCopyInto ¶
func (in *AddonsSpec) DeepCopyInto(out *AddonsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonsStatus ¶
type AddonsStatus struct { CoreDNS AddonStatus `json:"coreDNS,omitempty"` KubeProxy AddonStatus `json:"kubeProxy,omitempty"` Konnectivity KonnectivityStatus `json:"konnectivity,omitempty"` }
AddonsStatus defines the observed state of the different Addons.
func (*AddonsStatus) DeepCopy ¶
func (in *AddonsStatus) DeepCopy() *AddonsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonsStatus.
func (*AddonsStatus) DeepCopyInto ¶
func (in *AddonsStatus) DeepCopyInto(out *AddonsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdmissionController ¶
type AdmissionController string
+kubebuilder:validation:Enum=AlwaysAdmit;AlwaysDeny;AlwaysPullImages;CertificateApproval;CertificateSigning;CertificateSubjectRestriction;DefaultIngressClass;DefaultStorageClass;DefaultTolerationSeconds;DenyEscalatingExec;DenyExecOnPrivileged;DenyServiceExternalIPs;EventRateLimit;ExtendedResourceToleration;ImagePolicyWebhook;LimitPodHardAntiAffinityTopology;LimitRanger;MutatingAdmissionWebhook;NamespaceAutoProvision;NamespaceExists;NamespaceLifecycle;NodeRestriction;OwnerReferencesPermissionEnforcement;PersistentVolumeClaimResize;PersistentVolumeLabel;PodNodeSelector;PodSecurity;PodSecurityPolicy;PodTolerationRestriction;Priority;ResourceQuota;RuntimeClass;SecurityContextDeny;ServiceAccount;StorageObjectInUseProtection;TaintNodesByCondition;ValidatingAdmissionWebhook
type AdmissionControllers ¶
type AdmissionControllers []AdmissionController
func (AdmissionControllers) DeepCopy ¶
func (in AdmissionControllers) DeepCopy() AdmissionControllers
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdmissionControllers.
func (AdmissionControllers) DeepCopyInto ¶
func (in AdmissionControllers) DeepCopyInto(out *AdmissionControllers)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (AdmissionControllers) ToSlice ¶
func (a AdmissionControllers) ToSlice() []string
type BasicAuth ¶
type BasicAuth struct { Username ContentRef `json:"username"` Password ContentRef `json:"password"` }
BasicAuth contains the required information to perform the connection using user credentials to the data store.
func (*BasicAuth) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BasicAuth.
func (*BasicAuth) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CGroupDriver ¶
type CGroupDriver string
+kubebuilder:validation:Enum=systemd;cgroupfs
func (CGroupDriver) String ¶
func (c CGroupDriver) String() string
type CertKeyPair ¶
type CertKeyPair struct { Certificate ContentRef `json:"certificate"` PrivateKey *ContentRef `json:"privateKey,omitempty"` }
func (*CertKeyPair) DeepCopy ¶
func (in *CertKeyPair) DeepCopy() *CertKeyPair
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertKeyPair.
func (*CertKeyPair) DeepCopyInto ¶
func (in *CertKeyPair) DeepCopyInto(out *CertKeyPair)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertificatePrivateKeyPairStatus ¶
type CertificatePrivateKeyPairStatus struct { SecretName string `json:"secretName,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` Checksum string `json:"checksum,omitempty"` }
CertificatePrivateKeyPairStatus defines the status.
func (*CertificatePrivateKeyPairStatus) DeepCopy ¶
func (in *CertificatePrivateKeyPairStatus) DeepCopy() *CertificatePrivateKeyPairStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificatePrivateKeyPairStatus.
func (*CertificatePrivateKeyPairStatus) DeepCopyInto ¶
func (in *CertificatePrivateKeyPairStatus) DeepCopyInto(out *CertificatePrivateKeyPairStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertificatesStatus ¶
type CertificatesStatus struct { CA CertificatePrivateKeyPairStatus `json:"ca,omitempty"` APIServer CertificatePrivateKeyPairStatus `json:"apiServer,omitempty"` APIServerKubeletClient CertificatePrivateKeyPairStatus `json:"apiServerKubeletClient,omitempty"` FrontProxyCA CertificatePrivateKeyPairStatus `json:"frontProxyCA,omitempty"` FrontProxyClient CertificatePrivateKeyPairStatus `json:"frontProxyClient,omitempty"` SA PublicKeyPrivateKeyPairStatus `json:"sa,omitempty"` ETCD *ETCDCertificatesStatus `json:"etcd,omitempty"` }
CertificatesStatus defines the observed state of ETCD TLSConfig.
func (*CertificatesStatus) DeepCopy ¶
func (in *CertificatesStatus) DeepCopy() *CertificatesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificatesStatus.
func (*CertificatesStatus) DeepCopyInto ¶
func (in *CertificatesStatus) DeepCopyInto(out *CertificatesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClientCertificate ¶
type ClientCertificate struct { Certificate ContentRef `json:"certificate"` PrivateKey ContentRef `json:"privateKey"` }
func (*ClientCertificate) DeepCopy ¶
func (in *ClientCertificate) DeepCopy() *ClientCertificate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientCertificate.
func (*ClientCertificate) DeepCopyInto ¶
func (in *ClientCertificate) DeepCopyInto(out *ClientCertificate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContentRef ¶
type ContentRef struct { // Bare content of the file, base64 encoded. // It has precedence over the SecretReference value. Content []byte `json:"content,omitempty"` SecretRef *SecretReference `json:"secretReference,omitempty"` }
func (*ContentRef) DeepCopy ¶
func (in *ContentRef) DeepCopy() *ContentRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentRef.
func (*ContentRef) DeepCopyInto ¶
func (in *ContentRef) DeepCopyInto(out *ContentRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ContentRef) GetContent ¶
GetContent is the resolver for the container of the Secret. The bare content has priority over the external reference.
type ControlPlane ¶
type ControlPlane struct { // Defining the options for the deployed Tenant Control Plane as Deployment resource. Deployment DeploymentSpec `json:"deployment,omitempty"` // Defining the options for the Tenant Control Plane Service resource. Service ServiceSpec `json:"service"` // Defining the options for an Optional Ingress which will expose API Server of the Tenant Control Plane Ingress *IngressSpec `json:"ingress,omitempty"` }
ControlPlane defines how the Tenant Control Plane Kubernetes resources must be created in the Admin Cluster, such as the number of Pod replicas, the Service resource, or the Ingress.
func (*ControlPlane) DeepCopy ¶
func (in *ControlPlane) DeepCopy() *ControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlane.
func (*ControlPlane) DeepCopyInto ¶
func (in *ControlPlane) DeepCopyInto(out *ControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneComponentsResources ¶
type ControlPlaneComponentsResources struct { APIServer *corev1.ResourceRequirements `json:"apiServer,omitempty"` ControllerManager *corev1.ResourceRequirements `json:"controllerManager,omitempty"` Scheduler *corev1.ResourceRequirements `json:"scheduler,omitempty"` // Define the kine container resources. // Available only if Kamaji is running using Kine as backing storage. Kine *corev1.ResourceRequirements `json:"kine,omitempty"` }
func (*ControlPlaneComponentsResources) DeepCopy ¶
func (in *ControlPlaneComponentsResources) DeepCopy() *ControlPlaneComponentsResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneComponentsResources.
func (*ControlPlaneComponentsResources) DeepCopyInto ¶
func (in *ControlPlaneComponentsResources) DeepCopyInto(out *ControlPlaneComponentsResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneExtraArgs ¶
type ControlPlaneExtraArgs struct { APIServer []string `json:"apiServer,omitempty"` ControllerManager []string `json:"controllerManager,omitempty"` Scheduler []string `json:"scheduler,omitempty"` // Available only if Kamaji is running using Kine as backing storage. Kine []string `json:"kine,omitempty"` }
ControlPlaneExtraArgs allows specifying additional arguments to the Control Plane components.
func (*ControlPlaneExtraArgs) DeepCopy ¶
func (in *ControlPlaneExtraArgs) DeepCopy() *ControlPlaneExtraArgs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneExtraArgs.
func (*ControlPlaneExtraArgs) DeepCopyInto ¶
func (in *ControlPlaneExtraArgs) DeepCopyInto(out *ControlPlaneExtraArgs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataStore ¶
type DataStore struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DataStoreSpec `json:"spec,omitempty"` Status DataStoreStatus `json:"status,omitempty"` }
DataStore is the Schema for the datastores API.
func (*DataStore) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataStore.
func (*DataStore) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DataStore) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DataStoreCertificateStatus ¶
type DataStoreCertificateStatus struct { SecretName string `json:"secretName,omitempty"` Checksum string `json:"checksum,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` }
func (*DataStoreCertificateStatus) DeepCopy ¶
func (in *DataStoreCertificateStatus) DeepCopy() *DataStoreCertificateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataStoreCertificateStatus.
func (*DataStoreCertificateStatus) DeepCopyInto ¶
func (in *DataStoreCertificateStatus) DeepCopyInto(out *DataStoreCertificateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataStoreConfigStatus ¶
type DataStoreConfigStatus struct { SecretName string `json:"secretName,omitempty"` Checksum string `json:"checksum,omitempty"` }
func (*DataStoreConfigStatus) DeepCopy ¶
func (in *DataStoreConfigStatus) DeepCopy() *DataStoreConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataStoreConfigStatus.
func (*DataStoreConfigStatus) DeepCopyInto ¶
func (in *DataStoreConfigStatus) DeepCopyInto(out *DataStoreConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataStoreList ¶
type DataStoreList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DataStore `json:"items"` }
DataStoreList contains a list of DataStore.
func (*DataStoreList) DeepCopy ¶
func (in *DataStoreList) DeepCopy() *DataStoreList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataStoreList.
func (*DataStoreList) DeepCopyInto ¶
func (in *DataStoreList) DeepCopyInto(out *DataStoreList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DataStoreList) DeepCopyObject ¶
func (in *DataStoreList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DataStoreSetupStatus ¶
type DataStoreSetupStatus struct { Schema string `json:"schema,omitempty"` User string `json:"user,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` Checksum string `json:"checksum,omitempty"` }
func (*DataStoreSetupStatus) DeepCopy ¶
func (in *DataStoreSetupStatus) DeepCopy() *DataStoreSetupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataStoreSetupStatus.
func (*DataStoreSetupStatus) DeepCopyInto ¶
func (in *DataStoreSetupStatus) DeepCopyInto(out *DataStoreSetupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataStoreSpec ¶
type DataStoreSpec struct { // The driver to use to connect to the shared datastore. Driver Driver `json:"driver"` // List of the endpoints to connect to the shared datastore. // No need for protocol, just bare IP/FQDN and port. Endpoints Endpoints `json:"endpoints"` // In case of authentication enabled for the given data store, specifies the username and password pair. // This value is optional. BasicAuth *BasicAuth `json:"basicAuth,omitempty"` // Defines the TLS/SSL configuration required to connect to the data store in a secure way. // This value is optional. TLSConfig *TLSConfig `json:"tlsConfig,omitempty"` }
DataStoreSpec defines the desired state of DataStore.
func (*DataStoreSpec) DeepCopy ¶
func (in *DataStoreSpec) DeepCopy() *DataStoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataStoreSpec.
func (*DataStoreSpec) DeepCopyInto ¶
func (in *DataStoreSpec) DeepCopyInto(out *DataStoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataStoreStatus ¶
type DataStoreStatus struct { // List of the Tenant Control Planes, namespaced named, using this data store. UsedBy []string `json:"usedBy,omitempty"` }
DataStoreStatus defines the observed state of DataStore.
func (*DataStoreStatus) DeepCopy ¶
func (in *DataStoreStatus) DeepCopy() *DataStoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataStoreStatus.
func (*DataStoreStatus) DeepCopyInto ¶
func (in *DataStoreStatus) DeepCopyInto(out *DataStoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatastoreUsedSecret ¶
type DatastoreUsedSecret struct{}
func (*DatastoreUsedSecret) DeepCopy ¶
func (in *DatastoreUsedSecret) DeepCopy() *DatastoreUsedSecret
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatastoreUsedSecret.
func (*DatastoreUsedSecret) DeepCopyInto ¶
func (in *DatastoreUsedSecret) DeepCopyInto(out *DatastoreUsedSecret)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatastoreUsedSecret) ExtractValue ¶
func (d *DatastoreUsedSecret) ExtractValue() client.IndexerFunc
func (*DatastoreUsedSecret) Field ¶
func (d *DatastoreUsedSecret) Field() string
func (*DatastoreUsedSecret) Object ¶
func (d *DatastoreUsedSecret) Object() client.Object
func (*DatastoreUsedSecret) SetupWithManager ¶
func (d *DatastoreUsedSecret) SetupWithManager(ctx context.Context, mgr controllerruntime.Manager) error
type DeploymentSpec ¶
type DeploymentSpec struct { // RegistrySettings allows to override the default images for the given Tenant Control Plane instance. // It could be used to point to a different container registry rather than the public one. // +kubebuilder:default={registry:"registry.k8s.io",apiServerImage:"kube-apiserver",controllerManagerImage:"kube-controller-manager",schedulerImage:"kube-scheduler"} RegistrySettings RegistrySettings `json:"registrySettings,omitempty"` // +kubebuilder:default=2 Replicas *int32 `json:"replicas,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. // More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ NodeSelector map[string]string `json:"nodeSelector,omitempty"` // RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used // to run the Tenant Control Plane pod. If no RuntimeClass resource matches the named class, the pod will not be run. // If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit class with an // empty definition that uses the default runtime handler. // More info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class RuntimeClassName string `json:"runtimeClassName,omitempty"` // Strategy describes how to replace existing pods with new ones for the given Tenant Control Plane. // Default value is set to Rolling Update, with a blue/green strategy. // +kubebuilder:default={type:"RollingUpdate",rollingUpdate:{maxUnavailable:0,maxSurge:"100%"}} Strategy appsv1.DeploymentStrategy `json:"strategy,omitempty"` // If specified, the Tenant Control Plane pod's tolerations. // More info: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // If specified, the Tenant Control Plane pod's scheduling constraints. // More info: https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/ Affinity *corev1.Affinity `json:"affinity,omitempty"` // TopologySpreadConstraints describes how the Tenant Control Plane pods ought to spread across topology // domains. Scheduler will schedule pods in a way which abides by the constraints. // In case of nil underlying LabelSelector, the Kamaji one for the given Tenant Control Plane will be used. // All topologySpreadConstraints are ANDed. TopologySpreadConstraints []corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"` // Resources defines the amount of memory and CPU to allocate to each component of the Control Plane // (kube-apiserver, controller-manager, and scheduler). Resources *ControlPlaneComponentsResources `json:"resources,omitempty"` // ExtraArgs allows adding additional arguments to the Control Plane components, // such as kube-apiserver, controller-manager, and scheduler. WARNING - This option // can override existing parameters and cause components to misbehave in unxpected ways. // Only modify if you know what you are doing. ExtraArgs *ControlPlaneExtraArgs `json:"extraArgs,omitempty"` AdditionalMetadata AdditionalMetadata `json:"additionalMetadata,omitempty"` PodAdditionalMetadata AdditionalMetadata `json:"podAdditionalMetadata,omitempty"` // AdditionalInitContainers allows adding additional init containers to the Control Plane deployment. AdditionalInitContainers []corev1.Container `json:"additionalInitContainers,omitempty"` // AdditionalContainers allows adding additional containers to the Control Plane deployment. AdditionalContainers []corev1.Container `json:"additionalContainers,omitempty"` // AdditionalVolumes allows to add additional volumes to the Control Plane deployment. AdditionalVolumes []corev1.Volume `json:"additionalVolumes,omitempty"` // AdditionalVolumeMounts allows to mount an additional volume into each component of the Control Plane // (kube-apiserver, controller-manager, and scheduler). AdditionalVolumeMounts *AdditionalVolumeMounts `json:"additionalVolumeMounts,omitempty"` // +kubebuilder:default="default" // ServiceAccountName allows to specify the service account to be mounted to the pods of the Control plane deployment ServiceAccountName string `json:"serviceAccountName,omitempty"` }
func (*DeploymentSpec) DeepCopy ¶
func (in *DeploymentSpec) DeepCopy() *DeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentSpec.
func (*DeploymentSpec) DeepCopyInto ¶
func (in *DeploymentSpec) DeepCopyInto(out *DeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ETCDCertificateStatus ¶
type ETCDCertificateStatus struct { SecretName string `json:"secretName,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` Checksum string `json:"checksum,omitempty"` }
ETCDCertificateStatus defines the observed state of ETCD Certificate for API server.
func (*ETCDCertificateStatus) DeepCopy ¶
func (in *ETCDCertificateStatus) DeepCopy() *ETCDCertificateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ETCDCertificateStatus.
func (*ETCDCertificateStatus) DeepCopyInto ¶
func (in *ETCDCertificateStatus) DeepCopyInto(out *ETCDCertificateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ETCDCertificatesStatus ¶
type ETCDCertificatesStatus struct { APIServer APIServerCertificatesStatus `json:"apiServer,omitempty"` CA ETCDCertificateStatus `json:"ca,omitempty"` }
ETCDCertificatesStatus defines the observed state of ETCD Certificate for API server.
func (*ETCDCertificatesStatus) DeepCopy ¶
func (in *ETCDCertificatesStatus) DeepCopy() *ETCDCertificatesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ETCDCertificatesStatus.
func (*ETCDCertificatesStatus) DeepCopyInto ¶
func (in *ETCDCertificatesStatus) DeepCopyInto(out *ETCDCertificatesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Endpoints ¶
type Endpoints []string
func (Endpoints) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoints.
func (Endpoints) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalKubernetesObjectStatus ¶
type ExternalKubernetesObjectStatus struct { Name string `json:"name,omitempty"` Namespace string `json:"namespace,omitempty"` // Last time when k8s object was updated LastUpdate metav1.Time `json:"lastUpdate,omitempty"` }
func (*ExternalKubernetesObjectStatus) DeepCopy ¶
func (in *ExternalKubernetesObjectStatus) DeepCopy() *ExternalKubernetesObjectStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalKubernetesObjectStatus.
func (*ExternalKubernetesObjectStatus) DeepCopyInto ¶
func (in *ExternalKubernetesObjectStatus) DeepCopyInto(out *ExternalKubernetesObjectStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtraArgs ¶
type ExtraArgs []string
ExtraArgs allows adding additional arguments to said component. WARNING - This option can override existing konnectivity parameters and cause konnectivity components to misbehave in unxpected ways. Only modify if you know what you are doing.
func (ExtraArgs) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtraArgs.
func (ExtraArgs) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageOverrideTrait ¶
type ImageOverrideTrait struct { // ImageRepository sets the container registry to pull images from. // if not set, the default ImageRepository will be used instead. ImageRepository string `json:"imageRepository,omitempty"` // ImageTag allows to specify a tag for the image. // In case this value is set, kubeadm does not change automatically the version of the above components during upgrades. ImageTag string `json:"imageTag,omitempty"` }
func (*ImageOverrideTrait) DeepCopy ¶
func (in *ImageOverrideTrait) DeepCopy() *ImageOverrideTrait
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageOverrideTrait.
func (*ImageOverrideTrait) DeepCopyInto ¶
func (in *ImageOverrideTrait) DeepCopyInto(out *ImageOverrideTrait)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressSpec ¶
type IngressSpec struct { AdditionalMetadata AdditionalMetadata `json:"additionalMetadata,omitempty"` IngressClassName string `json:"ingressClassName,omitempty"` // Hostname is an optional field which will be used as Ingress's Host. If it is not defined, // Ingress's host will be "<tenant>.<namespace>.<domain>", where domain is specified under NetworkProfileSpec Hostname string `json:"hostname,omitempty"` }
IngressSpec defines the options for the ingress which will expose API Server of the Tenant Control Plane.
func (*IngressSpec) DeepCopy ¶
func (in *IngressSpec) DeepCopy() *IngressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressSpec.
func (*IngressSpec) DeepCopyInto ¶
func (in *IngressSpec) DeepCopyInto(out *IngressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KonnectivityAgentSpec ¶
type KonnectivityAgentSpec struct { // AgentImage defines the container image for Konnectivity's agent. // +kubebuilder:default=registry.k8s.io/kas-network-proxy/proxy-agent Image string `json:"image,omitempty"` // Version for Konnectivity agent. // +kubebuilder:default=v0.0.32 Version string `json:"version,omitempty"` // Tolerations for the deployed agent. // Can be customized to start the konnectivity-agent even if the nodes are not ready or tainted. // +kubebuilder:default={{key: "CriticalAddonsOnly", operator: "Exists"}} Tolerations []corev1.Toleration `json:"tolerations,omitempty"` ExtraArgs ExtraArgs `json:"extraArgs,omitempty"` }
func (*KonnectivityAgentSpec) DeepCopy ¶
func (in *KonnectivityAgentSpec) DeepCopy() *KonnectivityAgentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KonnectivityAgentSpec.
func (*KonnectivityAgentSpec) DeepCopyInto ¶
func (in *KonnectivityAgentSpec) DeepCopyInto(out *KonnectivityAgentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KonnectivityConfigMap ¶
type KonnectivityConfigMap struct { Name string `json:"name,omitempty"` Checksum string `json:"checksum,omitempty"` }
func (*KonnectivityConfigMap) DeepCopy ¶
func (in *KonnectivityConfigMap) DeepCopy() *KonnectivityConfigMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KonnectivityConfigMap.
func (*KonnectivityConfigMap) DeepCopyInto ¶
func (in *KonnectivityConfigMap) DeepCopyInto(out *KonnectivityConfigMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KonnectivityServerSpec ¶
type KonnectivityServerSpec struct { // The port which Konnectivity server is listening to. Port int32 `json:"port"` // Container image version of the Konnectivity server. // +kubebuilder:default=v0.0.32 Version string `json:"version,omitempty"` // Container image used by the Konnectivity server. // +kubebuilder:default=registry.k8s.io/kas-network-proxy/proxy-server Image string `json:"image,omitempty"` // Resources define the amount of CPU and memory to allocate to the Konnectivity server. Resources *corev1.ResourceRequirements `json:"resources,omitempty"` ExtraArgs ExtraArgs `json:"extraArgs,omitempty"` }
func (*KonnectivityServerSpec) DeepCopy ¶
func (in *KonnectivityServerSpec) DeepCopy() *KonnectivityServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KonnectivityServerSpec.
func (*KonnectivityServerSpec) DeepCopyInto ¶
func (in *KonnectivityServerSpec) DeepCopyInto(out *KonnectivityServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KonnectivitySpec ¶
type KonnectivitySpec struct { // +kubebuilder:default={version:"v0.0.32",image:"registry.k8s.io/kas-network-proxy/proxy-server",port:8132} KonnectivityServerSpec KonnectivityServerSpec `json:"server,omitempty"` // +kubebuilder:default={version:"v0.0.32",image:"registry.k8s.io/kas-network-proxy/proxy-agent"} KonnectivityAgentSpec KonnectivityAgentSpec `json:"agent,omitempty"` }
KonnectivitySpec defines the spec for Konnectivity.
func (*KonnectivitySpec) DeepCopy ¶
func (in *KonnectivitySpec) DeepCopy() *KonnectivitySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KonnectivitySpec.
func (*KonnectivitySpec) DeepCopyInto ¶
func (in *KonnectivitySpec) DeepCopyInto(out *KonnectivitySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KonnectivityStatus ¶
type KonnectivityStatus struct { Enabled bool `json:"enabled"` ConfigMap KonnectivityConfigMap `json:"configMap,omitempty"` Certificate CertificatePrivateKeyPairStatus `json:"certificate,omitempty"` Kubeconfig KubeconfigStatus `json:"kubeconfig,omitempty"` ServiceAccount ExternalKubernetesObjectStatus `json:"sa,omitempty"` ClusterRoleBinding ExternalKubernetesObjectStatus `json:"clusterrolebinding,omitempty"` Agent ExternalKubernetesObjectStatus `json:"agent,omitempty"` Service KubernetesServiceStatus `json:"service,omitempty"` }
KonnectivityStatus defines the status of Konnectivity as Addon.
func (*KonnectivityStatus) DeepCopy ¶
func (in *KonnectivityStatus) DeepCopy() *KonnectivityStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KonnectivityStatus.
func (*KonnectivityStatus) DeepCopyInto ¶
func (in *KonnectivityStatus) DeepCopyInto(out *KonnectivityStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeadmConfigChecksumDependant ¶
KubeadmConfigChecksumDependant is the interface used to retrieve the checksum of the kubeadm phases and addons configuration, required to validate the changes and, upon from that, perform the required reconciliation. +kubebuilder:object:generate=false
type KubeadmConfigStatus ¶
type KubeadmConfigStatus struct { ConfigmapName string `json:"configmapName,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` // Checksum of the kubeadm configuration to detect changes Checksum string `json:"checksum,omitempty"` }
KubeadmConfigStatus contains the status of the configuration required by kubeadm.
func (*KubeadmConfigStatus) DeepCopy ¶
func (in *KubeadmConfigStatus) DeepCopy() *KubeadmConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeadmConfigStatus.
func (*KubeadmConfigStatus) DeepCopyInto ¶
func (in *KubeadmConfigStatus) DeepCopyInto(out *KubeadmConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeadmPhaseStatus ¶
type KubeadmPhaseStatus struct { Checksum string `json:"checksum,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` }
KubeadmPhaseStatus contains the status of a kubeadm phase action.
func (*KubeadmPhaseStatus) DeepCopy ¶
func (in *KubeadmPhaseStatus) DeepCopy() *KubeadmPhaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeadmPhaseStatus.
func (*KubeadmPhaseStatus) DeepCopyInto ¶
func (in *KubeadmPhaseStatus) DeepCopyInto(out *KubeadmPhaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (KubeadmPhaseStatus) GetChecksum ¶
func (in KubeadmPhaseStatus) GetChecksum() string
func (*KubeadmPhaseStatus) SetChecksum ¶
func (in *KubeadmPhaseStatus) SetChecksum(checksum string)
type KubeadmPhasesStatus ¶
type KubeadmPhasesStatus struct {
BootstrapToken KubeadmPhaseStatus `json:"bootstrapToken"`
}
KubeadmPhasesStatus contains the status of the different kubeadm phases action.
func (*KubeadmPhasesStatus) DeepCopy ¶
func (in *KubeadmPhasesStatus) DeepCopy() *KubeadmPhasesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeadmPhasesStatus.
func (*KubeadmPhasesStatus) DeepCopyInto ¶
func (in *KubeadmPhasesStatus) DeepCopyInto(out *KubeadmPhasesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeconfigStatus ¶
type KubeconfigStatus struct { SecretName string `json:"secretName,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` Checksum string `json:"checksum,omitempty"` }
KubeconfigStatus contains information about the generated 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 KubeconfigsStatus ¶
type KubeconfigsStatus struct { Admin KubeconfigStatus `json:"admin,omitempty"` ControllerManager KubeconfigStatus `json:"controllerManager,omitempty"` Scheduler KubeconfigStatus `json:"scheduler,omitempty"` }
KubeconfigsStatus stores information about all the generated kubeconfig resources.
func (*KubeconfigsStatus) DeepCopy ¶
func (in *KubeconfigsStatus) DeepCopy() *KubeconfigsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeconfigsStatus.
func (*KubeconfigsStatus) DeepCopyInto ¶
func (in *KubeconfigsStatus) DeepCopyInto(out *KubeconfigsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeletPreferredAddressType ¶
type KubeletPreferredAddressType string
+kubebuilder:validation:Enum=Hostname;InternalIP;ExternalIP;InternalDNS;ExternalDNS
const ( NodeHostName KubeletPreferredAddressType = "Hostname" NodeInternalIP KubeletPreferredAddressType = "InternalIP" NodeExternalIP KubeletPreferredAddressType = "ExternalIP" NodeInternalDNS KubeletPreferredAddressType = "InternalDNS" NodeExternalDNS KubeletPreferredAddressType = "ExternalDNS" )
type KubeletSpec ¶
type KubeletSpec struct { // Ordered list of the preferred NodeAddressTypes to use for kubelet connections. // Default to Hostname, InternalIP, ExternalIP. // +kubebuilder:default={"Hostname","InternalIP","ExternalIP"} // +kubebuilder:validation:MinItems=1 PreferredAddressTypes []KubeletPreferredAddressType `json:"preferredAddressTypes,omitempty"` // CGroupFS defines the cgroup driver for Kubelet // https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/ CGroupFS CGroupDriver `json:"cgroupfs,omitempty"` }
func (*KubeletSpec) DeepCopy ¶
func (in *KubeletSpec) DeepCopy() *KubeletSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletSpec.
func (*KubeletSpec) DeepCopyInto ¶
func (in *KubeletSpec) DeepCopyInto(out *KubeletSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesDeploymentStatus ¶
type KubernetesDeploymentStatus struct { appsv1.DeploymentStatus `json:",inline"` // Selector is the label selector used to group the Tenant Control Plane Pods used by the scale subresource. Selector string `json:"selector"` // The name of the Deployment for the given cluster. Name string `json:"name"` // The namespace which the Deployment for the given cluster is deployed. Namespace string `json:"namespace"` // Last time when deployment was updated LastUpdate metav1.Time `json:"lastUpdate,omitempty"` }
KubernetesDeploymentStatus defines the status for the Tenant Control Plane Deployment in the management cluster.
func (*KubernetesDeploymentStatus) DeepCopy ¶
func (in *KubernetesDeploymentStatus) DeepCopy() *KubernetesDeploymentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesDeploymentStatus.
func (*KubernetesDeploymentStatus) DeepCopyInto ¶
func (in *KubernetesDeploymentStatus) DeepCopyInto(out *KubernetesDeploymentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesIngressStatus ¶
type KubernetesIngressStatus struct { networkingv1.IngressStatus `json:",inline"` // The name of the Ingress for the given cluster. Name string `json:"name"` // The namespace which the Ingress for the given cluster is deployed. Namespace string `json:"namespace"` }
KubernetesIngressStatus defines the status for the Tenant Control Plane Ingress in the management cluster.
func (*KubernetesIngressStatus) DeepCopy ¶
func (in *KubernetesIngressStatus) DeepCopy() *KubernetesIngressStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesIngressStatus.
func (*KubernetesIngressStatus) DeepCopyInto ¶
func (in *KubernetesIngressStatus) DeepCopyInto(out *KubernetesIngressStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesServiceStatus ¶
type KubernetesServiceStatus struct { corev1.ServiceStatus `json:",inline"` // The name of the Service for the given cluster. Name string `json:"name"` // The namespace which the Service for the given cluster is deployed. Namespace string `json:"namespace"` // The port where the service is running Port int32 `json:"port"` }
KubernetesServiceStatus defines the status for the Tenant Control Plane Service in the management cluster.
func (*KubernetesServiceStatus) DeepCopy ¶
func (in *KubernetesServiceStatus) DeepCopy() *KubernetesServiceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesServiceStatus.
func (*KubernetesServiceStatus) DeepCopyInto ¶
func (in *KubernetesServiceStatus) DeepCopyInto(out *KubernetesServiceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesSpec ¶
type KubernetesSpec struct { // Kubernetes Version for the tenant control plane Version string `json:"version"` Kubelet KubeletSpec `json:"kubelet"` // List of enabled Admission Controllers for the Tenant cluster. // Full reference available here: https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers // +kubebuilder:default=CertificateApproval;CertificateSigning;CertificateSubjectRestriction;DefaultIngressClass;DefaultStorageClass;DefaultTolerationSeconds;LimitRanger;MutatingAdmissionWebhook;NamespaceLifecycle;PersistentVolumeClaimResize;Priority;ResourceQuota;RuntimeClass;ServiceAccount;StorageObjectInUseProtection;TaintNodesByCondition;ValidatingAdmissionWebhook AdmissionControllers AdmissionControllers `json:"admissionControllers,omitempty"` }
KubernetesSpec defines the desired state of Kubernetes.
func (*KubernetesSpec) DeepCopy ¶
func (in *KubernetesSpec) DeepCopy() *KubernetesSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesSpec.
func (*KubernetesSpec) DeepCopyInto ¶
func (in *KubernetesSpec) DeepCopyInto(out *KubernetesSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesStatus ¶
type KubernetesStatus struct { // KubernetesVersion contains the information regarding the running Kubernetes version, and its upgrade status. Version KubernetesVersion `json:"version,omitempty"` Deployment KubernetesDeploymentStatus `json:"deployment,omitempty"` Service KubernetesServiceStatus `json:"service,omitempty"` Ingress *KubernetesIngressStatus `json:"ingress,omitempty"` }
KubernetesStatus defines the status of the resources deployed in the management cluster, such as Deployment and Service.
func (*KubernetesStatus) DeepCopy ¶
func (in *KubernetesStatus) DeepCopy() *KubernetesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesStatus.
func (*KubernetesStatus) DeepCopyInto ¶
func (in *KubernetesStatus) DeepCopyInto(out *KubernetesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesVersion ¶
type KubernetesVersion struct { // Version is the running Kubernetes version of the Tenant Control Plane. Version string `json:"version,omitempty"` // +kubebuilder:default=Provisioning // Status returns the current status of the Kubernetes version, such as its provisioning state, or completed upgrade. Status *KubernetesVersionStatus `json:"status,omitempty"` }
func (*KubernetesVersion) DeepCopy ¶
func (in *KubernetesVersion) DeepCopy() *KubernetesVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesVersion.
func (*KubernetesVersion) DeepCopyInto ¶
func (in *KubernetesVersion) DeepCopyInto(out *KubernetesVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesVersionStatus ¶
type KubernetesVersionStatus string
+kubebuilder:validation:Enum=Provisioning;CertificateAuthorityRotating;Upgrading;Migrating;Ready;NotReady
var ( VersionProvisioning KubernetesVersionStatus = "Provisioning" VersionCARotating KubernetesVersionStatus = "CertificateAuthorityRotating" VersionUpgrading KubernetesVersionStatus = "Upgrading" VersionMigrating KubernetesVersionStatus = "Migrating" VersionReady KubernetesVersionStatus = "Ready" VersionNotReady KubernetesVersionStatus = "NotReady" )
type NetworkProfileSpec ¶
type NetworkProfileSpec struct { // Address where API server of will be exposed. // In case of LoadBalancer Service, this can be empty in order to use the exposed IP provided by the cloud controller manager. Address string `json:"address,omitempty"` // AllowAddressAsExternalIP will include tenantControlPlane.Spec.NetworkProfile.Address in the section of // ExternalIPs of the Kubernetes Service (only ClusterIP or NodePort) AllowAddressAsExternalIP bool `json:"allowAddressAsExternalIP,omitempty"` // Port where API server of will be exposed // +kubebuilder:default=6443 Port int32 `json:"port,omitempty"` // CertSANs sets extra Subject Alternative Names (SANs) for the API Server signing certificate. // Use this field to add additional hostnames when exposing the Tenant Control Plane with third solutions. CertSANs []string `json:"certSANs,omitempty"` // Kubernetes Service // +kubebuilder:default="10.96.0.0/16" ServiceCIDR string `json:"serviceCidr,omitempty"` // CIDR for Kubernetes Pods // +kubebuilder:default="10.244.0.0/16" PodCIDR string `json:"podCidr,omitempty"` // +kubebuilder:default={"10.96.0.10"} DNSServiceIPs []string `json:"dnsServiceIPs,omitempty"` }
NetworkProfileSpec defines the desired state of NetworkProfile.
func (*NetworkProfileSpec) DeepCopy ¶
func (in *NetworkProfileSpec) DeepCopy() *NetworkProfileSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkProfileSpec.
func (*NetworkProfileSpec) DeepCopyInto ¶
func (in *NetworkProfileSpec) DeepCopyInto(out *NetworkProfileSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PublicKeyPrivateKeyPairStatus ¶
type PublicKeyPrivateKeyPairStatus struct { SecretName string `json:"secretName,omitempty"` LastUpdate metav1.Time `json:"lastUpdate,omitempty"` Checksum string `json:"checksum,omitempty"` }
PublicKeyPrivateKeyPairStatus defines the status.
func (*PublicKeyPrivateKeyPairStatus) DeepCopy ¶
func (in *PublicKeyPrivateKeyPairStatus) DeepCopy() *PublicKeyPrivateKeyPairStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicKeyPrivateKeyPairStatus.
func (*PublicKeyPrivateKeyPairStatus) DeepCopyInto ¶
func (in *PublicKeyPrivateKeyPairStatus) DeepCopyInto(out *PublicKeyPrivateKeyPairStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegistrySettings ¶
type RegistrySettings struct { // +kubebuilder:default="registry.k8s.io" Registry string `json:"registry,omitempty"` // The tag to append to all the Control Plane container images. // Optional. TagSuffix string `json:"tagSuffix,omitempty"` // +kubebuilder:default="kube-apiserver" APIServerImage string `json:"apiServerImage,omitempty"` // +kubebuilder:default="kube-controller-manager" ControllerManagerImage string `json:"controllerManagerImage,omitempty"` // +kubebuilder:default="kube-scheduler" SchedulerImage string `json:"schedulerImage,omitempty"` }
func (*RegistrySettings) DeepCopy ¶
func (in *RegistrySettings) DeepCopy() *RegistrySettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistrySettings.
func (*RegistrySettings) DeepCopyInto ¶
func (in *RegistrySettings) DeepCopyInto(out *RegistrySettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RegistrySettings) KubeAPIServerImage ¶
func (r *RegistrySettings) KubeAPIServerImage(version string) string
func (*RegistrySettings) KubeControllerManagerImage ¶
func (r *RegistrySettings) KubeControllerManagerImage(version string) string
func (*RegistrySettings) KubeSchedulerImage ¶
func (r *RegistrySettings) KubeSchedulerImage(version string) string
type SecretReference ¶
type SecretReference struct { corev1.SecretReference `json:",inline"` // Name of the key for the given Secret reference where the content is stored. // This value is mandatory. KeyPath secretReferKeyPath `json:"keyPath"` }
func (*SecretReference) DeepCopy ¶
func (in *SecretReference) DeepCopy() *SecretReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretReference.
func (*SecretReference) DeepCopyInto ¶
func (in *SecretReference) DeepCopyInto(out *SecretReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceSpec ¶
type ServiceSpec struct { AdditionalMetadata AdditionalMetadata `json:"additionalMetadata,omitempty"` // ServiceType allows specifying how to expose the Tenant Control Plane. ServiceType ServiceType `json:"serviceType"` }
func (*ServiceSpec) DeepCopy ¶
func (in *ServiceSpec) DeepCopy() *ServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec.
func (*ServiceSpec) DeepCopyInto ¶
func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceType ¶
type ServiceType corev1.ServiceType
+kubebuilder:validation:Enum=ClusterIP;NodePort;LoadBalancer
type StorageStatus ¶
type StorageStatus struct { Driver string `json:"driver,omitempty"` DataStoreName string `json:"dataStoreName,omitempty"` Config DataStoreConfigStatus `json:"config,omitempty"` Setup DataStoreSetupStatus `json:"setup,omitempty"` Certificate DataStoreCertificateStatus `json:"certificate,omitempty"` }
StorageStatus defines the observed state of StorageStatus.
func (*StorageStatus) DeepCopy ¶
func (in *StorageStatus) DeepCopy() *StorageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageStatus.
func (*StorageStatus) DeepCopyInto ¶
func (in *StorageStatus) DeepCopyInto(out *StorageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSConfig ¶
type TLSConfig struct { // Retrieve the Certificate Authority certificate and private key, such as bare content of the file, or a SecretReference. // The key reference is required since etcd authentication is based on certificates, and Kamaji is responsible in creating this. CertificateAuthority CertKeyPair `json:"certificateAuthority"` // Specifies the SSL/TLS key and private key pair used to connect to the data store. ClientCertificate *ClientCertificate `json:"clientCertificate,omitempty"` }
TLSConfig contains the information used to connect to the data store using a secured connection.
func (*TLSConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSConfig.
func (*TLSConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TenantControlPlane ¶
type TenantControlPlane struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TenantControlPlaneSpec `json:"spec,omitempty"` Status TenantControlPlaneStatus `json:"status,omitempty"` }
TenantControlPlane is the Schema for the tenantcontrolplanes API.
func (*TenantControlPlane) DeepCopy ¶
func (in *TenantControlPlane) DeepCopy() *TenantControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantControlPlane.
func (*TenantControlPlane) DeepCopyInto ¶
func (in *TenantControlPlane) DeepCopyInto(out *TenantControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TenantControlPlane) DeepCopyObject ¶
func (in *TenantControlPlane) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TenantControlPlaneList ¶
type TenantControlPlaneList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TenantControlPlane `json:"items"` }
TenantControlPlaneList contains a list of TenantControlPlane.
func (*TenantControlPlaneList) DeepCopy ¶
func (in *TenantControlPlaneList) DeepCopy() *TenantControlPlaneList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantControlPlaneList.
func (*TenantControlPlaneList) DeepCopyInto ¶
func (in *TenantControlPlaneList) DeepCopyInto(out *TenantControlPlaneList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TenantControlPlaneList) DeepCopyObject ¶
func (in *TenantControlPlaneList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TenantControlPlaneSpec ¶
type TenantControlPlaneSpec struct { // DataStore allows to specify a DataStore that should be used to store the Kubernetes data for the given Tenant Control Plane. // This parameter is optional and acts as an override over the default one which is used by the Kamaji Operator. // Migration from a different DataStore to another one is not yet supported and the reconciliation will be blocked. DataStore string `json:"dataStore,omitempty"` ControlPlane ControlPlane `json:"controlPlane"` // Kubernetes specification for tenant control plane Kubernetes KubernetesSpec `json:"kubernetes"` // NetworkProfile specifies how the network is NetworkProfile NetworkProfileSpec `json:"networkProfile,omitempty"` // Addons contain which addons are enabled Addons AddonsSpec `json:"addons,omitempty"` }
TenantControlPlaneSpec defines the desired state of TenantControlPlane.
func (*TenantControlPlaneSpec) DeepCopy ¶
func (in *TenantControlPlaneSpec) DeepCopy() *TenantControlPlaneSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantControlPlaneSpec.
func (*TenantControlPlaneSpec) DeepCopyInto ¶
func (in *TenantControlPlaneSpec) DeepCopyInto(out *TenantControlPlaneSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TenantControlPlaneStatus ¶
type TenantControlPlaneStatus struct { // Storage Status contains information about Kubernetes storage system Storage StorageStatus `json:"storage,omitempty"` // Certificates contains information about the different certificates // that are necessary to run a kubernetes control plane Certificates CertificatesStatus `json:"certificates,omitempty"` // KubeConfig contains information about the kubenconfigs that control plane pieces need KubeConfig KubeconfigsStatus `json:"kubeconfig,omitempty"` // Kubernetes contains information about the reconciliation of the required Kubernetes resources deployed in the admin cluster Kubernetes KubernetesStatus `json:"kubernetesResources,omitempty"` // KubeadmConfig contains the status of the configuration required by kubeadm KubeadmConfig KubeadmConfigStatus `json:"kubeadmconfig,omitempty"` // KubeadmPhase contains the status of the kubeadm phases action KubeadmPhase KubeadmPhasesStatus `json:"kubeadmPhase,omitempty"` // ControlPlaneEndpoint contains the status of the kubernetes control plane ControlPlaneEndpoint string `json:"controlPlaneEndpoint,omitempty"` // Addons contains the status of the different Addons Addons AddonsStatus `json:"addons,omitempty"` }
TenantControlPlaneStatus defines the observed state of TenantControlPlane.
func (*TenantControlPlaneStatus) DeepCopy ¶
func (in *TenantControlPlaneStatus) DeepCopy() *TenantControlPlaneStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantControlPlaneStatus.
func (*TenantControlPlaneStatus) DeepCopyInto ¶
func (in *TenantControlPlaneStatus) DeepCopyInto(out *TenantControlPlaneStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TenantControlPlaneStatusDataStore ¶
type TenantControlPlaneStatusDataStore struct{}
func (*TenantControlPlaneStatusDataStore) DeepCopy ¶
func (in *TenantControlPlaneStatusDataStore) DeepCopy() *TenantControlPlaneStatusDataStore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantControlPlaneStatusDataStore.
func (*TenantControlPlaneStatusDataStore) DeepCopyInto ¶
func (in *TenantControlPlaneStatusDataStore) DeepCopyInto(out *TenantControlPlaneStatusDataStore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TenantControlPlaneStatusDataStore) ExtractValue ¶
func (t *TenantControlPlaneStatusDataStore) ExtractValue() client.IndexerFunc
func (*TenantControlPlaneStatusDataStore) Field ¶
func (t *TenantControlPlaneStatusDataStore) Field() string
func (*TenantControlPlaneStatusDataStore) Object ¶
func (t *TenantControlPlaneStatusDataStore) Object() client.Object
func (*TenantControlPlaneStatusDataStore) SetupWithManager ¶
func (t *TenantControlPlaneStatusDataStore) SetupWithManager(ctx context.Context, mgr controllerruntime.Manager) error
Source Files
¶
- datastore_funcs.go
- datastore_types.go
- doc.go
- groupversion_info.go
- indexer_datastore_usedsecret.go
- indexer_tenantcontrolplane_useddatastore.go
- tenantcontrolplane_interfaces.go
- tenantcontrolplane_kubeadmphase_funcs.go
- tenantcontrolplane_registrysettings.go
- tenantcontrolplane_registrysettings_funcs.go
- tenantcontrolplane_status.go
- tenantcontrolplane_types.go
- types.go
- zz_generated.deepcopy.go