v1beta1

package
v1.0.13 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2024 License: Apache-2.0 Imports: 10 Imported by: 5

Documentation

Overview

Package v1beta1 contains API Schema definitions for the etcd boostrap v1beta1 API group +kubebuilder:object:generate=true +groupName=bootstrap.cluster.x-k8s.io

Package v1beta1 contains API Schema definitions for the bootstrap v1beta1 API group +kubebuilder:object:generate=true +groupName=bootstrap.cluster.x-k8s.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "bootstrap.cluster.x-k8s.io", Version: "v1beta1"}

	// 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 BottlerocketBootstrapContainer added in v1.0.6

type BottlerocketBootstrapContainer struct {
	// Name is the bootstrap container name that will be given to the container in BR's `apiserver`.
	// +kubebuilder:validation:Required
	Name string `json:"name"`

	// Image is the actual image used for Bottlerocket bootstrap.
	Image string `json:"image"`

	// Essential decides whether or not the container should fail the boot process.
	// Bootstrap containers configured with essential = true will stop the boot process if they exit code is a non-zero value.
	// Default is false.
	// +optional
	Essential bool `json:"essential"`

	// Mode represents the bootstrap container mode.
	// +kubebuilder:validation:Enum=always;off;once
	Mode string `json:"mode"`

	// UserData is the base64-encoded userdata.
	// +optional
	UserData string `json:"userData,omitempty"`
}

BottlerocketBootstrapContainer holds the bootstrap container setting for bottlerocket.

func (*BottlerocketBootstrapContainer) DeepCopy added in v1.0.6

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

func (*BottlerocketBootstrapContainer) DeepCopyInto added in v1.0.6

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

type BottlerocketConfig

type BottlerocketConfig struct {
	// EtcdImage specifies the etcd image to use by etcdadm
	EtcdImage string `json:"etcdImage,omitempty"`

	// BootstrapImage specifies the container image to use for bottlerocket's bootstrapping
	BootstrapImage string `json:"bootstrapImage"`

	// AdminImage specifies the admin container image to use for bottlerocket.
	// +optional
	AdminImage string `json:"adminImage,omitempty"`

	// ControlImage specifies the control container image to use for bottlerocket.
	// +optional
	ControlImage string `json:"controlImage,omitempty"`

	// PauseImage specifies the image to use for the pause container
	PauseImage string `json:"pauseImage"`

	// CustomHostContainers adds additional host containers for bottlerocket.
	// +optional
	CustomHostContainers []BottlerocketHostContainer `json:"customHostContainers,omitempty"`

	// CustomBootstrapContainers adds additional bootstrap containers for bottlerocket.
	// +optional
	CustomBootstrapContainers []BottlerocketBootstrapContainer `json:"customBootstrapContainers,omitempty"`

	// Kernel specifies additional kernel settings for bottlerocket
	Kernel *capbk.BottlerocketKernelSettings `json:"kernel,omitempty"`

	// Boot specifies boot settings for bottlerocket
	Boot *capbk.BottlerocketBootSettings `json:"boot,omitempty"`
}

func (*BottlerocketConfig) DeepCopy

func (in *BottlerocketConfig) DeepCopy() *BottlerocketConfig

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

func (*BottlerocketConfig) DeepCopyInto

func (in *BottlerocketConfig) DeepCopyInto(out *BottlerocketConfig)

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

type BottlerocketHostContainer added in v1.0.6

type BottlerocketHostContainer struct {
	// Name is the host container name that will be given to the container in BR's `apiserver`
	// +kubebuilder:validation:Required
	Name string `json:"name"`

	// Superpowered indicates if the container will be superpowered
	// +kubebuilder:validation:Required
	Superpowered bool `json:"superpowered"`

	// Image is the actual location of the host container image.
	Image string `json:"image"`

	// UserData is the userdata that will be attached to the image.
	// +optional
	UserData string `json:"userData,omitempty"`
}

BottlerocketHostContainer holds the host container setting for bottlerocket.

func (*BottlerocketHostContainer) DeepCopy added in v1.0.6

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

func (*BottlerocketHostContainer) DeepCopyInto added in v1.0.6

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

type CloudInitConfig

type CloudInitConfig struct {
	// +optional
	Version string `json:"version,omitempty"`

	// EtcdReleaseURL is an optional field to specify where etcdadm can download etcd from
	// +optional
	EtcdReleaseURL string `json:"etcdReleaseURL,omitempty"`

	// InstallDir is an optional field to specify where etcdadm will extract etcd binaries to
	// +optional
	InstallDir string `json:"installDir,omitempty"`
}

func (*CloudInitConfig) DeepCopy

func (in *CloudInitConfig) DeepCopy() *CloudInitConfig

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

func (*CloudInitConfig) DeepCopyInto

func (in *CloudInitConfig) DeepCopyInto(out *CloudInitConfig)

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

type EtcdadmConfig

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

	Spec   EtcdadmConfigSpec   `json:"spec,omitempty"`
	Status EtcdadmConfigStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:storageversion +kubebuilder:subresource:status EtcdadmConfig is the Schema for the etcdadmconfigs API

func (*EtcdadmConfig) DeepCopy

func (in *EtcdadmConfig) DeepCopy() *EtcdadmConfig

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

func (*EtcdadmConfig) DeepCopyInto

func (in *EtcdadmConfig) DeepCopyInto(out *EtcdadmConfig)

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

func (*EtcdadmConfig) DeepCopyObject

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

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

func (*EtcdadmConfig) Default

func (r *EtcdadmConfig) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*EtcdadmConfig) GetConditions

func (e *EtcdadmConfig) GetConditions() clusterv1.Conditions

func (*EtcdadmConfig) Hub

func (*EtcdadmConfig) Hub()

Hub marks EtcdadmConfig as a conversion hub.

func (*EtcdadmConfig) SetConditions

func (e *EtcdadmConfig) SetConditions(conditions clusterv1.Conditions)

func (*EtcdadmConfig) SetupWebhookWithManager

func (r *EtcdadmConfig) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*EtcdadmConfig) ValidateCreate

func (r *EtcdadmConfig) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*EtcdadmConfig) ValidateDelete

func (r *EtcdadmConfig) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*EtcdadmConfig) ValidateUpdate

func (r *EtcdadmConfig) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type EtcdadmConfigList

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

EtcdadmConfigList contains a list of EtcdadmConfig

func (*EtcdadmConfigList) DeepCopy

func (in *EtcdadmConfigList) DeepCopy() *EtcdadmConfigList

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

func (*EtcdadmConfigList) DeepCopyInto

func (in *EtcdadmConfigList) DeepCopyInto(out *EtcdadmConfigList)

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

func (*EtcdadmConfigList) DeepCopyObject

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

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

func (*EtcdadmConfigList) Hub

func (*EtcdadmConfigList) Hub()

Hub marks EtcdadmConfigList as a conversion hub.

type EtcdadmConfigSpec

type EtcdadmConfigSpec struct {
	// Users specifies extra users to add
	// +optional
	Users []capbk.User `json:"users,omitempty"`

	// +optional
	EtcdadmBuiltin bool `json:"etcdadmBuiltin,omitempty"`

	// +optional
	EtcdadmInstallCommands []string `json:"etcdadmInstallCommands,omitempty"`

	// PreEtcdadmCommands specifies extra commands to run before kubeadm runs
	// +optional
	PreEtcdadmCommands []string `json:"preEtcdadmCommands,omitempty"`

	// PostEtcdadmCommands specifies extra commands to run after kubeadm runs
	// +optional
	PostEtcdadmCommands []string `json:"postEtcdadmCommands,omitempty"`

	// Format specifies the output format of the bootstrap data
	// +optional
	Format Format `json:"format,omitempty"`

	// BottlerocketConfig specifies the configuration for the bottlerocket bootstrap data
	// +optional
	BottlerocketConfig *BottlerocketConfig `json:"bottlerocketConfig,omitempty"`

	// CloudInitConfig specifies the configuration for the cloud-init bootstrap data
	// +optional
	CloudInitConfig *CloudInitConfig `json:"cloudInitConfig,omitempty"`

	// Files specifies extra files to be passed to user_data upon creation.
	// +optional
	Files []capbk.File `json:"files,omitempty"`

	// Proxy holds the https and no proxy information
	// This is only used for bottlerocket
	// +optional
	Proxy *ProxyConfiguration `json:"proxy,omitempty"`

	// RegistryMirror holds the image registry mirror information
	// This is only used for bottlerocket
	// +optional
	RegistryMirror *RegistryMirrorConfiguration `json:"registryMirror,omitempty"`

	// CipherSuites is a list of comma-delimited supported TLS cipher suites, mapping to the --cipher-suites flag.
	// Default is empty, which means that they will be auto-populated by Go.
	// +optional
	CipherSuites string `json:"cipherSuites,omitempty"`

	// NTP specifies NTP configuration
	// +optional
	NTP *capbk.NTP `json:"ntp,omitempty"`

	// Certbundle holds additional cert bundles.
	// +optional
	CertBundles []capbk.CertBundle `json:"certBundles,omitempty"`
}

EtcdadmConfigSpec defines the desired state of EtcdadmConfig

func (*EtcdadmConfigSpec) DeepCopy

func (in *EtcdadmConfigSpec) DeepCopy() *EtcdadmConfigSpec

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

func (*EtcdadmConfigSpec) DeepCopyInto

func (in *EtcdadmConfigSpec) DeepCopyInto(out *EtcdadmConfigSpec)

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

type EtcdadmConfigStatus

type EtcdadmConfigStatus struct {
	// Conditions defines current service state of the KubeadmConfig.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`

	DataSecretName *string `json:"dataSecretName,omitempty"`

	Ready bool `json:"ready,omitempty"`
}

EtcdadmConfigStatus defines the observed state of EtcdadmConfig

func (*EtcdadmConfigStatus) DeepCopy

func (in *EtcdadmConfigStatus) DeepCopy() *EtcdadmConfigStatus

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

func (*EtcdadmConfigStatus) DeepCopyInto

func (in *EtcdadmConfigStatus) DeepCopyInto(out *EtcdadmConfigStatus)

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;bottlerocket

const (
	DataSecretAvailableCondition clusterv1.ConditionType = "DataSecretAvailable"
	// CloudConfig make the bootstrap data to be of cloud-config format.
	CloudConfig Format = "cloud-config"
	// Bottlerocket make the bootstrap data to be of bottlerocket format.
	Bottlerocket Format = "bottlerocket"
)

NOTE: json tags are required. Any new fields you add must have json tags for the fields to be serialized.

type ProxyConfiguration

type ProxyConfiguration struct {
	// HTTP Proxy
	HTTPProxy string `json:"httpProxy,omitempty"`

	// HTTPS proxy
	HTTPSProxy string `json:"httpsProxy,omitempty"`

	// No proxy, list of ips that should not use proxy
	NoProxy []string `json:"noProxy,omitempty"`
}

ProxyConfiguration holds the settings for proxying bottlerocket services

func (*ProxyConfiguration) DeepCopy

func (in *ProxyConfiguration) DeepCopy() *ProxyConfiguration

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

func (*ProxyConfiguration) DeepCopyInto

func (in *ProxyConfiguration) DeepCopyInto(out *ProxyConfiguration)

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

type RegistryMirrorConfiguration

type RegistryMirrorConfiguration struct {
	// Endpoint defines the registry mirror endpoint to use for pulling images
	Endpoint string `json:"endpoint,omitempty"`

	// CACert defines the CA cert for the registry mirror
	CACert string `json:"caCert,omitempty"`
}

RegistryMirrorConfiguration holds the settings for image registry mirror

func (*RegistryMirrorConfiguration) DeepCopy

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

func (*RegistryMirrorConfiguration) DeepCopyInto

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

Jump to

Keyboard shortcuts

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