v1beta1

package
v0.9.12 Latest Latest
Warning

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

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

Documentation

Overview

Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group

Index

Constants

View Source
const (
	// HostCleanupAnnotation annotation used to mark a host for cleanup
	HostCleanupAnnotation = "byoh.infrastructure.cluster.x-k8s.io/unregistering"
	// EndPointIPAnnotation annotation used to store the IP address of the endpoint
	EndPointIPAnnotation = "byoh.infrastructure.cluster.x-k8s.io/endpointip"
	// K8sVersionAnnotation annotation used to store the k8s version
	K8sVersionAnnotation = "byoh.infrastructure.cluster.x-k8s.io/k8sversion"
	// AttachedByoMachineLabel label used to mark a node name attached to a byo host
	AttachedByoMachineLabel = "byoh.infrastructure.cluster.x-k8s.io/byomachine-name"
	// BundleLookupBaseRegistryAnnotation annotation used to store the base registry for the bundle lookup
	BundleLookupBaseRegistryAnnotation = "byoh.infrastructure.cluster.x-k8s.io/bundle-registry"
	// MachineFinalizer allows ReconcileByoMachine to clean up Byo
	// resources associated with ByoMachine before removing it from the
	// API Server.
	MachineFinalizer = "byomachine.infrastructure.cluster.x-k8s.io"

	// BYOHostReady documents the k8s node is ready and can take on workloads
	BYOHostReady clusterv1.ConditionType = "BYOHostReady"

	// DefaultClusterName is the cluster name used in the generated bootstrap-kubeconfig
	DefaultClusterName = "default-cluster"

	// DefaultContext is the context name used in the generated bootstrap-kubeconfig
	DefaultContext = "default-context"

	// DefaultNamespace is the namespace used in the generated bootstrap-kubeconfig
	DefaultNamespace = "default"

	// DefaultAuth is the auth in the generated bootstrap-kubeconfig
	DefaultAuth = "default-auth"

	// BootstrapTokenDescription is the bootstrap token description for the secret that is generated
	BootstrapTokenDescription = "Token generated by cluster-api-provider-bringyourownhost"

	// BootstrapTokenExtraGroups is the byoh group that has access to create CertificateSigningRequest
	BootstrapTokenExtraGroups = "system:bootstrappers:byoh"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "infrastructure.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 BootstrapKubeconfig

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

	Spec   BootstrapKubeconfigSpec   `json:"spec,omitempty"`
	Status BootstrapKubeconfigStatus `json:"status,omitempty"`
}

BootstrapKubeconfig is the Schema for the bootstrapkubeconfigs API

func (*BootstrapKubeconfig) DeepCopy

func (in *BootstrapKubeconfig) DeepCopy() *BootstrapKubeconfig

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

func (*BootstrapKubeconfig) DeepCopyInto

func (in *BootstrapKubeconfig) DeepCopyInto(out *BootstrapKubeconfig)

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

func (*BootstrapKubeconfig) DeepCopyObject

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

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

type BootstrapKubeconfigList

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

BootstrapKubeconfigList contains a list of BootstrapKubeconfig

func (*BootstrapKubeconfigList) DeepCopy

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

func (*BootstrapKubeconfigList) DeepCopyInto

func (in *BootstrapKubeconfigList) DeepCopyInto(out *BootstrapKubeconfigList)

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

func (*BootstrapKubeconfigList) DeepCopyObject

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

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

type BootstrapKubeconfigSpec

type BootstrapKubeconfigSpec struct {
	// APIServer is the address of the kubernetes cluster (https://hostname:port).
	APIServer string `json:"apiserver"`

	// InsecureSkipTLSVerify skips the validity check for the server's certificate. This will make your HTTPS connections insecure.
	InsecureSkipTLSVerify bool `json:"insecure-skip-tls-verify,omitempty"`

	// CertificateAuthorityData contains PEM-encoded certificate authority certificates.
	CertificateAuthorityData string `json:"certificate-authority-data"`
}

BootstrapKubeconfigSpec defines the desired state of BootstrapKubeconfig

type BootstrapKubeconfigStatus

type BootstrapKubeconfigStatus struct {
	// BootstrapKubeconfigData is an optional reference to a bootstrap kubeconfig info
	// for starting the host registration process
	BootstrapKubeconfigData *string `json:"bootstrapKubeconfigData,omitempty"`
}

func (*BootstrapKubeconfigStatus) DeepCopy

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

func (*BootstrapKubeconfigStatus) DeepCopyInto

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

type ByoHost

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

	Spec   ByoHostSpec   `json:"spec,omitempty"`
	Status ByoHostStatus `json:"status,omitempty"`
}

ByoHost is the Schema for the byohosts API

func (*ByoHost) DeepCopy

func (in *ByoHost) DeepCopy() *ByoHost

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

func (*ByoHost) DeepCopyInto

func (in *ByoHost) DeepCopyInto(out *ByoHost)

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

func (*ByoHost) DeepCopyObject

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

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

func (*ByoHost) GetConditions

func (byoHost *ByoHost) GetConditions() clusterv1.Conditions

GetConditions gets the ByoHost status conditions

func (*ByoHost) SetConditions

func (byoHost *ByoHost) SetConditions(conditions clusterv1.Conditions)

SetConditions sets the ByoHost status conditions

type ByoHostList

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

ByoHostList contains a list of ByoHost

func (*ByoHostList) DeepCopy

func (in *ByoHostList) DeepCopy() *ByoHostList

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

func (*ByoHostList) DeepCopyInto

func (in *ByoHostList) DeepCopyInto(out *ByoHostList)

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

func (*ByoHostList) DeepCopyObject

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

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

type ByoHostSpec

type ByoHostSpec struct {
	// BootstrapSecret is an optional reference to a Cluster API Secret
	// for bootstrap purpose
	// +optional
	BootstrapSecret *corev1.ObjectReference `json:"bootstrapSecret,omitempty"`

	// InstallationSecret is an optional reference to InstallationSecret
	// generated by InstallerController for K8s installation
	// +optional
	InstallationSecret *corev1.ObjectReference `json:"installationSecret,omitempty"`

	// UninstallationScript is an optional field to store uninstall script
	// generated by InstallerController
	// +optional
	UninstallationScript *string `json:"uninstallationScript,omitempty"`
}

ByoHostSpec defines the desired state of ByoHost +kubebuilder:object:generate=true

func (*ByoHostSpec) DeepCopy

func (in *ByoHostSpec) DeepCopy() *ByoHostSpec

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

func (*ByoHostSpec) DeepCopyInto

func (in *ByoHostSpec) DeepCopyInto(out *ByoHostSpec)

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

type ByoHostStatus

type ByoHostStatus struct {
	// MachineRef is an optional reference to a Cluster API Machine
	// using this host.
	// +optional
	MachineRef *corev1.ObjectReference `json:"machineRef,omitempty"`

	// Conditions defines current service state of the BYOMachine.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`

	// HostDetails returns the platform details of the host.
	// +optional
	HostDetails HostInfo `json:"hostinfo,omitempty"`

	// Network returns the network status for each of the host's configured
	// network interfaces.
	// +optional
	Network []NetworkStatus `json:"network,omitempty"`
}

ByoHostStatus defines the observed state of ByoHost +kubebuilder:object:generate=true

func (*ByoHostStatus) DeepCopy

func (in *ByoHostStatus) DeepCopy() *ByoHostStatus

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

func (*ByoHostStatus) DeepCopyInto

func (in *ByoHostStatus) DeepCopyInto(out *ByoHostStatus)

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

type ByoMachine

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

	Spec   ByoMachineSpec   `json:"spec,omitempty"`
	Status ByoMachineStatus `json:"status,omitempty"`
}

ByoMachine is the Schema for the byomachines API

func (*ByoMachine) DeepCopy

func (in *ByoMachine) DeepCopy() *ByoMachine

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

func (*ByoMachine) DeepCopyInto

func (in *ByoMachine) DeepCopyInto(out *ByoMachine)

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

func (*ByoMachine) DeepCopyObject

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

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

func (*ByoMachine) GetConditions

func (byoMachine *ByoMachine) GetConditions() clusterv1.Conditions

GetConditions returns the conditions of ByoMachine status

func (*ByoMachine) SetConditions

func (byoMachine *ByoMachine) SetConditions(conditions clusterv1.Conditions)

SetConditions sets the conditions of ByoMachine status

type ByoMachineList

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

ByoMachineList contains a list of ByoMachine

func (*ByoMachineList) DeepCopy

func (in *ByoMachineList) DeepCopy() *ByoMachineList

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

func (*ByoMachineList) DeepCopyInto

func (in *ByoMachineList) DeepCopyInto(out *ByoMachineList)

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

func (*ByoMachineList) DeepCopyObject

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

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

type ByoMachineSpec

type ByoMachineSpec struct {
	// Label Selector to choose the byohost
	Selector *metav1.LabelSelector `json:"selector,omitempty"`

	ProviderID string `json:"providerID,omitempty"`

	// InstallerRef is an optional reference to a installer-specific resource that holds
	// the details of InstallationSecret to be used to install BYOH Bundle.
	// +optional
	InstallerRef *corev1.ObjectReference `json:"installerRef,omitempty"`
}

ByoMachineSpec defines the desired state of ByoMachine +kubebuilder:object:generate=true

func (*ByoMachineSpec) DeepCopy

func (in *ByoMachineSpec) DeepCopy() *ByoMachineSpec

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

func (*ByoMachineSpec) DeepCopyInto

func (in *ByoMachineSpec) DeepCopyInto(out *ByoMachineSpec)

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

type ByoMachineStatus

type ByoMachineStatus struct {

	// HostInfo has the attached host platform details.
	// +optional
	HostInfo HostInfo `json:"hostinfo,omitempty"`

	// +optional
	Ready bool `json:"ready"`

	// Conditions defines current service state of the BYOMachine.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}

ByoMachineStatus defines the observed state of ByoMachine +kubebuilder:object:generate=true

func (*ByoMachineStatus) DeepCopy

func (in *ByoMachineStatus) DeepCopy() *ByoMachineStatus

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

func (*ByoMachineStatus) DeepCopyInto

func (in *ByoMachineStatus) DeepCopyInto(out *ByoMachineStatus)

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

type HostInfo

type HostInfo struct {
	// The Operating System reported by the host.
	OSName string `json:"osname,omitempty"`

	// OS Image reported by the host.
	OSImage string `json:"osimage,omitempty"`

	// The Architecture reported by the host.
	Architecture string `json:"architecture,omitempty"`
}

HostInfo is a set of details about the host platform.

type NetworkStatus

type NetworkStatus struct {
	// Connected is a flag that indicates whether this network is currently
	// connected to the VM.
	Connected bool `json:"connected,omitempty"`

	// IPAddrs is one or more IP addresses reported by vm-tools.
	// +optional
	IPAddrs []string `json:"ipAddrs,omitempty"`

	// MACAddr is the MAC address of the network device.
	MACAddr string `json:"macAddr"`

	// NetworkInterfaceName is the name of the network interface.
	// +optional
	NetworkInterfaceName string `json:"networkInterfaceName,omitempty"`

	// IsDefault is a flag that indicates whether this interface name is where
	// the default gateway sit on.
	IsDefault bool `json:"isDefault,omitempty"`
}

NetworkStatus provides information about one of a VM's networks. +kubebuilder:object:generate=true

func (*NetworkStatus) DeepCopy

func (in *NetworkStatus) DeepCopy() *NetworkStatus

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

func (*NetworkStatus) DeepCopyInto

func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus)

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