Documentation ¶
Overview ¶
Package v1beta1 contains a v1beta1 api for bootstrap resources.
+k8s:deepcopy-gen=package
Package v1beta1 contains API Schema definitions for the bootstrap v1beta1 API group +kubebuilder:object:generate=true +groupName=bootstrap.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- func DefaultRKE2ConfigSpec(spec *RKE2ConfigSpec)
- func ValidateRKE2ConfigSpec(_ string, spec *RKE2ConfigSpec) field.ErrorList
- type AdditionalUserData
- type CISProfile
- type ComponentConfig
- type Encoding
- type File
- type FileSource
- type Format
- type Mirror
- type NTP
- type RKE2AgentConfig
- type RKE2Config
- func (in *RKE2Config) DeepCopy() *RKE2Config
- func (in *RKE2Config) DeepCopyInto(out *RKE2Config)
- func (in *RKE2Config) DeepCopyObject() runtime.Object
- func (r *RKE2Config) Default()
- func (r *RKE2Config) GetConditions() clusterv1.Conditions
- func (*RKE2Config) Hub()
- func (r *RKE2Config) SetConditions(conditions clusterv1.Conditions)
- func (r *RKE2Config) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *RKE2Config) ValidateCreate() (admission.Warnings, error)
- func (r *RKE2Config) ValidateDelete() (admission.Warnings, error)
- func (r *RKE2Config) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)
- type RKE2ConfigList
- type RKE2ConfigSpec
- type RKE2ConfigStatus
- type RKE2ConfigTemplate
- func (in *RKE2ConfigTemplate) DeepCopy() *RKE2ConfigTemplate
- func (in *RKE2ConfigTemplate) DeepCopyInto(out *RKE2ConfigTemplate)
- func (in *RKE2ConfigTemplate) DeepCopyObject() runtime.Object
- func (r *RKE2ConfigTemplate) Default()
- func (*RKE2ConfigTemplate) Hub()
- func (r *RKE2ConfigTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *RKE2ConfigTemplate) ValidateCreate() (admission.Warnings, error)
- func (r *RKE2ConfigTemplate) ValidateDelete() (admission.Warnings, error)
- func (r *RKE2ConfigTemplate) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)
- type RKE2ConfigTemplateList
- type RKE2ConfigTemplateResource
- type RKE2ConfigTemplateSpec
- type Registry
- type RegistryConfig
- type SecretFileSource
- type TLSConfig
Constants ¶
const ( // DataSecretGenerationFailedReason (Severity=Warning) documents a RKE2Config controller detecting // an error while generating a data secret; those kind of errors are usually due to misconfigurations // and user intervention is required to get them fixed. DataSecretGenerationFailedReason string = "DataSecretGenerationFailed" // WaitingForClusterInfrastructureReason (Severity=Info) document a bootstrap secret generation process // waiting for the cluster infrastructure to be ready. // // NOTE: Having the cluster infrastructure ready is a pre-condition for starting to create machines. WaitingForClusterInfrastructureReason string = "WaitingForClusterInfrastructure" )
const ( // CertificatesAvailableCondition documents the status of the certificates generation process. CertificatesAvailableCondition clusterv1.ConditionType = "CertificatesAvailable" // CertificatesGenerationFailedReason documents a RKE2Config controller detecting // an error while generating certificates; those kind of errors are usually due to misconfigurations // and user intervention is required to get them fixed. CertificatesGenerationFailedReason string = "CertificateGenerationFailed" )
const ( // DataSecretAvailableCondition documents the status of the bootstrap secret generation process. // // NOTE: When the DataSecret generation starts the process completes immediately and within the // same reconciliation, so the user will always see a transition from Wait to Generated without having // to wait for the next reconciliation. DataSecretAvailableCondition clusterv1.ConditionType = "Available" )
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "bootstrap.cluster.x-k8s.io", Version: "v1beta1"} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = schemeBuilder.AddToScheme )
var RKE2configtemplatelog = logf.Log.WithName("RKE2configtemplate-resource")
RKE2configtemplatelog is for logging in this package.
Functions ¶
func DefaultRKE2ConfigSpec ¶
func DefaultRKE2ConfigSpec(spec *RKE2ConfigSpec)
DefaultRKE2ConfigSpec defaults the RKE2ConfigSpec.
func ValidateRKE2ConfigSpec ¶
func ValidateRKE2ConfigSpec(_ string, spec *RKE2ConfigSpec) field.ErrorList
ValidateRKE2ConfigSpec validates the RKE2ConfigSpec.
Types ¶
type AdditionalUserData ¶
type AdditionalUserData struct { // In case of using ignition, the data format is documented here: https://kinvolk.io/docs/flatcar-container-linux/latest/provisioning/cl-config/ // NOTE: All fields of the UserData that are managed by the RKE2Config controller will be ignored, this include "write_files", "runcmd", "ntp". // +optional Config string `json:"config,omitempty"` // Data allows to pass arbitrary set of key/value pairs consistent with // https://cloudinit.readthedocs.io/en/latest/reference/modules.html // to extend existing cloud-init configuration Data map[string]string `json:"data,omitempty"` // Strict controls if Config should be strictly parsed. If so, warnings are treated as errors. // +optional Strict bool `json:"strict,omitempty"` }
AdditionalUserData is a field that allows users to specify additional cloud-init configuration . +kubebuilder:validation:XValidation:rule="!has(self.data) || !has(self.config)", message="Only config or data could be populated at once"
func (*AdditionalUserData) DeepCopy ¶
func (in *AdditionalUserData) DeepCopy() *AdditionalUserData
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalUserData.
func (*AdditionalUserData) DeepCopyInto ¶
func (in *AdditionalUserData) DeepCopyInto(out *AdditionalUserData)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CISProfile ¶
type CISProfile string
CISProfile defines the CIS Benchmark profile to be activated in RKE2.
const ( // CIS references RKE2's CIS Profile "cis". CIS CISProfile = "cis" // CIS1_23 references RKE2's CIS Profile "cis-1.23". CIS1_23 CISProfile = "cis-1.23" // CIS1_5 references RKE2's CIS Profile "cis-1.5". CIS1_5 CISProfile = "cis-1.5" // CIS1_6 references RKE2's CIS Profile "cis-1.6". CIS1_6 CISProfile = "cis-1.6" )
type ComponentConfig ¶
type ComponentConfig struct { // ExtraEnv is a map of environment variables to pass on to a Kubernetes Component command. //+optional ExtraEnv map[string]string `json:"extraEnv,omitempty"` // ExtraArgs is a list of command line arguments (format: flag=value) to pass to a Kubernetes Component command. //+optional ExtraArgs []string `json:"extraArgs,omitempty"` // ExtraMounts is a map of volume mounts to be added for the Kubernetes component StaticPod //+optional ExtraMounts map[string]string `json:"extraMounts,omitempty"` // OverrideImage is a string that references a container image to override the default one for the Kubernetes Component //+optional OverrideImage string `json:"overrideImage,omitempty"` }
ComponentConfig defines the configuration for a Kubernetes Component.
func (*ComponentConfig) DeepCopy ¶
func (in *ComponentConfig) DeepCopy() *ComponentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentConfig.
func (*ComponentConfig) DeepCopyInto ¶
func (in *ComponentConfig) DeepCopyInto(out *ComponentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Encoding ¶
type Encoding string
Encoding specifies the cloud-init file encoding.
const ( // Base64 implies the contents of the file are encoded as base64. Base64 Encoding = "base64" // Gzip implies the contents of the file are encoded with gzip. Gzip Encoding = "gzip" // GzipBase64 implies the contents of the file are first base64 encoded and then gzip encoded. GzipBase64 Encoding = "gzip+base64" )
type File ¶
type File struct { // Path specifies the full path on disk where to store the file. Path string `json:"path"` // Owner specifies the ownership of the file, e.g. "root:root". //+optional Owner string `json:"owner,omitempty"` // Permissions specifies the permissions to assign to the file, e.g. "0640". //+optional Permissions string `json:"permissions,omitempty"` // Encoding specifies the encoding of the file contents. // +kubebuilder:validation:Enum=base64;gzip;gzip+base64 //+optional Encoding Encoding `json:"encoding,omitempty"` // Content is the actual content of the file. //+optional Content string `json:"content,omitempty"` // ContentFrom is a referenced source of content to populate the file. //+optional ContentFrom *FileSource `json:"contentFrom,omitempty"` }
File defines the input for generating write_files in cloud-init.
func (*File) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new File.
func (*File) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FileSource ¶
type FileSource struct { // SecretFileSource represents a secret that should populate this file. Secret SecretFileSource `json:"secret"` }
FileSource is a union of all possible external source types for file data. Only one field may be populated in any given instance. Developers adding new sources of data for target systems should add them here.
func (*FileSource) DeepCopy ¶
func (in *FileSource) DeepCopy() *FileSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileSource.
func (*FileSource) DeepCopyInto ¶
func (in *FileSource) DeepCopyInto(out *FileSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Format ¶
type Format string
Format specifies the output format of the bootstrap data +kubebuilder:validation:Enum=cloud-config;ignition
type Mirror ¶
type Mirror struct { // Endpoints are endpoints for a namespace. CRI plugin will try the endpoints // one by one until a working one is found. The endpoint must be a valid url // with host specified. // The scheme, host and path from the endpoint URL will be used. //+optional Endpoint []string `json:"endpoint,omitempty"` // Rewrites are repository rewrite rules for a namespace. When fetching image resources // from an endpoint and a key matches the repository via regular expression matching // it will be replaced with the corresponding value from the map in the resource request. //+optional Rewrite map[string]string `json:"rewrite,omitempty"` }
Mirror contains the config related to the registry mirror.
func (*Mirror) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mirror.
func (*Mirror) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NTP ¶
type NTP struct { // Servers specifies which NTP servers to use // +optional Servers []string `json:"servers,omitempty"` // Enabled specifies whether NTP should be enabled // +optional Enabled *bool `json:"enabled,omitempty"` }
NTP defines input for generated ntp in cloud-init.
func (*NTP) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NTP.
func (*NTP) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RKE2AgentConfig ¶
type RKE2AgentConfig struct { // DataDir Folder to hold state. //+optional DataDir string `json:"dataDir,omitempty"` // NodeLabels Registering and starting kubelet with set of labels. //+optional NodeLabels []string `json:"nodeLabels,omitempty"` // NodeAnnotations are annotations that are created on nodes post bootstrap phase. // Unfortunately it is not possible to apply annotations via kubelet // using current bootstrap configurations. // Issue: https://github.com/kubernetes/kubernetes/issues/108046 //+optional NodeAnnotations map[string]string `json:"nodeAnnotations,omitempty"` // NodeTaints Registering kubelet with set of taints. //+optional NodeTaints []string `json:"nodeTaints,omitempty"` // NodeNamePrefix Prefix to the Node Name that CAPI will generate. //+optional NodeNamePrefix string `json:"nodeName,omitempty"` // NTP specifies NTP configuration // +optional NTP *NTP `json:"ntp,omitempty"` // ImageCredentialProviderConfigMap is a reference to the ConfigMap that contains credential provider plugin config // The config map should contain a key "credential-config.yaml" with YAML file content and // a key "credential-provider-binaries" with the a path to the binaries for the credential provider. //+optional ImageCredentialProviderConfigMap *corev1.ObjectReference `json:"imageCredentialProviderConfigMap,omitempty"` // ContainerRuntimeEndpoint Disable embedded containerd and use alternative CRI implementation. //+optional ContainerRuntimeEndpoint string `json:"containerRuntimeEndpoint,omitempty"` // Snapshotter override default containerd snapshotter (default: "overlayfs"). //+optional Snapshotter string `json:"snapshotter,omitempty"` // CISProfile activates CIS compliance of RKE2 for a certain profile // +kubebuilder:validation:Enum=cis;cis-1.23;cis-1.5;cis-1.6 //+optional CISProfile CISProfile `json:"cisProfile,omitempty"` // PodSecurityPolicyConfigFile contains the path to the PodSecurityPolicy configuration file. The file can be passed through // spec.Files field. //+optional PodSecurityAdmissionConfigFile string `json:"podSecurityAdmissionConfigFile,omitempty"` // ResolvConf is a reference to a ConfigMap containing resolv.conf content for the node. //+optional ResolvConf *corev1.ObjectReference `json:"resolvConf,omitempty"` // ProtectKernelDefaults defines Kernel tuning behavior. If true, error if kernel tunables are different than kubelet defaults. // if false, kernel tunable can be different from kubelet defaults //+optional ProtectKernelDefaults bool `json:"protectKernelDefaults,omitempty"` // SystemDefaultRegistry Private registry to be used for all system images. //+optional SystemDefaultRegistry string `json:"systemDefaultRegistry,omitempty"` // EnableContainerdSElinux defines the policy for enabling SELinux for Containerd // if value is true, Containerd will run with selinux-enabled=true flag // if value is false, Containerd will run without the above flag //+optional EnableContainerdSElinux bool `json:"enableContainerdSElinux,omitempty"` // KubeletPath Override kubelet binary path. //+optional KubeletPath string `json:"kubeletPath,omitempty"` // KubeletArgs Customized flag for kubelet process. //+optional Kubelet *ComponentConfig `json:"kubelet,omitempty"` // KubeProxyArgs Customized flag for kube-proxy process. //+optional KubeProxy *ComponentConfig `json:"kubeProxy,omitempty"` // RuntimeImage override image to use for runtime binaries (containerd, kubectl, crictl, etc). //+optional RuntimeImage string `json:"runtimeImage,omitempty"` // LoadBalancerPort local port for supervisor client load-balancer. If the supervisor and apiserver are // not colocated an additional port 1 less than this port will also be used for the apiserver client load-balancer (default: 6444). //+optional LoadBalancerPort int `json:"loadBalancerPort,omitempty"` // AirGapped is a boolean value to define if the bootstrapping should be air-gapped, // basically supposing that online container registries and RKE2 install scripts are not reachable. AirGapped bool `json:"airGapped,omitempty"` // AirGappedChecksum is a string value with a sha256sum checksum to compare with checksum // of existing sha256sum-<arch>.txt file for packages already available on the machine // before performing air-gapped installation. //+optional AirGappedChecksum string `json:"airGappedChecksum,omitempty"` // Format specifies the output format of the bootstrap data. Defaults to cloud-config. // +optional Format Format `json:"format,omitempty"` // AdditionalUserData is a field that allows users to specify additional cloud-init or ignition configuration to be included in the // generated cloud-init/ignition script. //+optional AdditionalUserData AdditionalUserData `json:"additionalUserData,omitempty"` }
RKE2AgentConfig describes some attributes that are common to agent and server nodes.
func (*RKE2AgentConfig) DeepCopy ¶
func (in *RKE2AgentConfig) DeepCopy() *RKE2AgentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2AgentConfig.
func (*RKE2AgentConfig) DeepCopyInto ¶
func (in *RKE2AgentConfig) DeepCopyInto(out *RKE2AgentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RKE2Config ¶
type RKE2Config struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RKE2ConfigSpec `json:"spec,omitempty"` Status RKE2ConfigStatus `json:"status,omitempty"` }
RKE2Config is the Schema for the rke2configs API.
func (*RKE2Config) DeepCopy ¶
func (in *RKE2Config) DeepCopy() *RKE2Config
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2Config.
func (*RKE2Config) DeepCopyInto ¶
func (in *RKE2Config) DeepCopyInto(out *RKE2Config)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RKE2Config) DeepCopyObject ¶
func (in *RKE2Config) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RKE2Config) Default ¶
func (r *RKE2Config) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type.
func (*RKE2Config) GetConditions ¶
func (r *RKE2Config) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for a RKE2Config.
func (*RKE2Config) SetConditions ¶
func (r *RKE2Config) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the conditions for a RKE2Config.
func (*RKE2Config) SetupWebhookWithManager ¶
func (r *RKE2Config) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager sets up and registers the webhook with the manager.
func (*RKE2Config) ValidateCreate ¶
func (r *RKE2Config) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*RKE2Config) ValidateDelete ¶
func (r *RKE2Config) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*RKE2Config) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type RKE2ConfigList ¶
type RKE2ConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RKE2Config `json:"items"` }
RKE2ConfigList contains a list of RKE2Config.
func (*RKE2ConfigList) DeepCopy ¶
func (in *RKE2ConfigList) DeepCopy() *RKE2ConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2ConfigList.
func (*RKE2ConfigList) DeepCopyInto ¶
func (in *RKE2ConfigList) DeepCopyInto(out *RKE2ConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RKE2ConfigList) DeepCopyObject ¶
func (in *RKE2ConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RKE2ConfigList) Hub ¶
func (*RKE2ConfigList) Hub()
Hub is a conversion hub for RKE2ConfigList.
type RKE2ConfigSpec ¶
type RKE2ConfigSpec struct { // Files specifies extra files to be passed to user_data upon creation. //+optional Files []File `json:"files,omitempty"` // PreRKE2Commands specifies extra commands to run before rke2 setup runs. //+optional PreRKE2Commands []string `json:"preRKE2Commands,omitempty"` // PostRKE2Commands specifies extra commands to run after rke2 setup runs. //+optional PostRKE2Commands []string `json:"postRKE2Commands,omitempty"` // AgentConfig specifies configuration for the agent nodes. //+optional AgentConfig RKE2AgentConfig `json:"agentConfig,omitempty"` // PrivateRegistriesConfig defines the containerd configuration for private registries and local registry mirrors. //+optional PrivateRegistriesConfig Registry `json:"privateRegistriesConfig,omitempty"` }
RKE2ConfigSpec defines the desired state of RKE2Config.
func (*RKE2ConfigSpec) DeepCopy ¶
func (in *RKE2ConfigSpec) DeepCopy() *RKE2ConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2ConfigSpec.
func (*RKE2ConfigSpec) DeepCopyInto ¶
func (in *RKE2ConfigSpec) DeepCopyInto(out *RKE2ConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RKE2ConfigStatus ¶
type RKE2ConfigStatus struct { // Ready indicates the BootstrapData field is ready to be consumed. Ready bool `json:"ready,omitempty"` // DataSecretName is the name of the secret that stores the bootstrap data script. //+optional DataSecretName *string `json:"dataSecretName,omitempty"` // FailureReason will be set on non-retryable errors. //+optional FailureReason string `json:"failureReason,omitempty"` // FailureMessage will be set on non-retryable errors. //+optional FailureMessage string `json:"failureMessage,omitempty"` // ObservedGeneration is the latest generation observed by the controller. //+optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions defines current service state of the RKE2Config. //+optional Conditions clusterv1.Conditions `json:"conditions,omitempty"` }
RKE2ConfigStatus defines the observed state of RKE2Config.
func (*RKE2ConfigStatus) DeepCopy ¶
func (in *RKE2ConfigStatus) DeepCopy() *RKE2ConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2ConfigStatus.
func (*RKE2ConfigStatus) DeepCopyInto ¶
func (in *RKE2ConfigStatus) DeepCopyInto(out *RKE2ConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RKE2ConfigTemplate ¶
type RKE2ConfigTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Spec details the RKE2ConfigTemplate specification. Spec RKE2ConfigTemplateSpec `json:"spec"` }
RKE2ConfigTemplate is the Schema for the RKE2configtemplates API.
func (*RKE2ConfigTemplate) DeepCopy ¶
func (in *RKE2ConfigTemplate) DeepCopy() *RKE2ConfigTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2ConfigTemplate.
func (*RKE2ConfigTemplate) DeepCopyInto ¶
func (in *RKE2ConfigTemplate) DeepCopyInto(out *RKE2ConfigTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RKE2ConfigTemplate) DeepCopyObject ¶
func (in *RKE2ConfigTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RKE2ConfigTemplate) Default ¶
func (r *RKE2ConfigTemplate) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type.
func (*RKE2ConfigTemplate) Hub ¶
func (*RKE2ConfigTemplate) Hub()
Hub is a conversion hub for RKE2ConfigTemplate.
func (*RKE2ConfigTemplate) SetupWebhookWithManager ¶
func (r *RKE2ConfigTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager sets up and registers the webhook with the manager.
func (*RKE2ConfigTemplate) ValidateCreate ¶
func (r *RKE2ConfigTemplate) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*RKE2ConfigTemplate) ValidateDelete ¶
func (r *RKE2ConfigTemplate) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*RKE2ConfigTemplate) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type RKE2ConfigTemplateList ¶
type RKE2ConfigTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RKE2ConfigTemplate `json:"items"` }
RKE2ConfigTemplateList contains a list of RKE2ConfigTemplate.
func (*RKE2ConfigTemplateList) DeepCopy ¶
func (in *RKE2ConfigTemplateList) DeepCopy() *RKE2ConfigTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2ConfigTemplateList.
func (*RKE2ConfigTemplateList) DeepCopyInto ¶
func (in *RKE2ConfigTemplateList) DeepCopyInto(out *RKE2ConfigTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RKE2ConfigTemplateList) DeepCopyObject ¶
func (in *RKE2ConfigTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RKE2ConfigTemplateList) Hub ¶
func (*RKE2ConfigTemplateList) Hub()
Hub is a conversion hub for RKE2ConfigTemplateList.
type RKE2ConfigTemplateResource ¶
type RKE2ConfigTemplateResource struct { // Spec is the RKE2ConfigSpec that should be used for the template. Spec RKE2ConfigSpec `json:"spec"` }
RKE2ConfigTemplateResource is a struct that wraps the desired spec for the RKE2ConfigSpec inside the template field.
func (*RKE2ConfigTemplateResource) DeepCopy ¶
func (in *RKE2ConfigTemplateResource) DeepCopy() *RKE2ConfigTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2ConfigTemplateResource.
func (*RKE2ConfigTemplateResource) DeepCopyInto ¶
func (in *RKE2ConfigTemplateResource) DeepCopyInto(out *RKE2ConfigTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RKE2ConfigTemplateSpec ¶
type RKE2ConfigTemplateSpec struct { // Template references a RKE2ConfigTemplate, which is used to include an RKE2ConfigSpec struct. // This is used to include a desired RKE2ConfigSpec configuration when an RKE2Config resource is generated by a MachineDeployment resource. Template RKE2ConfigTemplateResource `json:"template"` }
RKE2ConfigTemplateSpec defines the specification of RKE2ConfigTemplate.
func (*RKE2ConfigTemplateSpec) DeepCopy ¶
func (in *RKE2ConfigTemplateSpec) DeepCopy() *RKE2ConfigTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RKE2ConfigTemplateSpec.
func (*RKE2ConfigTemplateSpec) DeepCopyInto ¶
func (in *RKE2ConfigTemplateSpec) DeepCopyInto(out *RKE2ConfigTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Registry ¶
type Registry struct { // Mirrors are namespace to mirror mapping for all namespaces. //+optional Mirrors map[string]Mirror `json:"mirrors,omitempty"` // Configs are configs for each registry. // The key is the FDQN or IP of the registry. //+optional Configs map[string]RegistryConfig `json:"configs,omitempty"` }
Registry is registry settings including mirrors, TLS, and credentials.
func (*Registry) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Registry.
func (*Registry) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegistryConfig ¶
type RegistryConfig struct { // Auth is a reference to a Secret containing information to authenticate to the registry. // The Secret must provite a username and a password data entry. //+optional AuthSecret corev1.ObjectReference `json:"authSecret,omitempty"` // TLS is a pair of CA/Cert/Key which then are used when creating the transport // that communicates with the registry. //+optional TLS TLSConfig `json:"tls,omitempty"` }
RegistryConfig contains configuration used to communicate with the registry.
func (*RegistryConfig) DeepCopy ¶
func (in *RegistryConfig) DeepCopy() *RegistryConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryConfig.
func (*RegistryConfig) DeepCopyInto ¶
func (in *RegistryConfig) DeepCopyInto(out *RegistryConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretFileSource ¶
type SecretFileSource struct { // Name of the secret in the RKE2BootstrapConfig's namespace to use. Name string `json:"name"` // Key is the key in the secret's data map for this value. Key string `json:"key"` }
SecretFileSource adapts a Secret into a FileSource.
The contents of the target Secret's Data field will be presented as files using the keys in the Data field as the file names.
func (*SecretFileSource) DeepCopy ¶
func (in *SecretFileSource) DeepCopy() *SecretFileSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretFileSource.
func (*SecretFileSource) DeepCopyInto ¶
func (in *SecretFileSource) DeepCopyInto(out *SecretFileSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSConfig ¶
type TLSConfig struct { // TLSConfigSecret is a reference to a secret of type `kubernetes.io/tls` thich has up to 3 entries: tls.crt, tls.key and ca.crt // which describe the TLS configuration necessary to connect to the registry. // +optional TLSConfigSecret corev1.ObjectReference `json:"tlsConfigSecret,omitempty"` // InsecureSkipVerify may be set to false to skip verifying the registry's certificate, default is true. //+optional InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty"` }
TLSConfig contains the CA/Cert/Key used for a registry.
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.