v1

package
v0.2.8 Latest Latest
Warning

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

Go to latest
Published: Nov 24, 2023 License: Apache-2.0 Imports: 6 Imported by: 6

Documentation

Overview

Package v1 contains API Schema definitions for the bmp v1 API group +kubebuilder:object:generate=true +groupName=bmp.kanod.io

Index

Constants

View Source
const (
	// baremetalpoolFinalizer is the name of the finalizer
	BareMetalPoolFinalizer string = "baremetalpool.kanod.io/finalizer"

	// PausedAnnotation is the annotation that pauses the reconciliation
	PausedAnnotation string = "baremetalpool.kanod.io/paused"

	// BmhPausedKanodValue is the kanod value got BmhPausedAnnotation annotation
	BmhPausedKanodValue string = "kanod.io/bmpool"

	// finalizer added by baremetalpool operator to the baremetalhost
	BareMetalHostFinalizer string = "kanod.io.bmh.finalizer"

	// KanodPoolNameLabel is the label containing the poolName value
	KanodPoolNameLabel = "kanod.io/poolname"

	// KanodBareMetalPoolnameLabel is the label containing the baremetalpool name value
	KanodBareMetalPoolNameLabel = "kanod.io/baremetalpool"

	// BmpPausedAnnotation is the annotation indicating that the baremetalpool is disabled
	BmpPausedAnnotation = "baremetalpool.kanod.io/disabled"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "bmp.kanod.io", Version: "v1"}

	// 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 BareMetalPool added in v0.2.0

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

	Spec   BareMetalPoolSpec   `json:"spec,omitempty"`
	Status BareMetalPoolStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:subresource:scale:specpath=.spec.replicas,statuspath=.status.replicas +kubebuilder:printcolumn:name="Poolname",type="string",JSONPath=`.spec.poolName` +kubebuilder:printcolumn:name="Replicas",type="string",JSONPath=`.spec.replicas` +kubebuilder:printcolumn:name="Available",type="string",JSONPath=`.status.replicas` +kubebuilder:printcolumn:name="Status",type="string",JSONPath=`.status.status` BareMetalPool is the Schema for the baremetalpools API

func (*BareMetalPool) DeepCopy added in v0.2.0

func (in *BareMetalPool) DeepCopy() *BareMetalPool

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

func (*BareMetalPool) DeepCopyInto added in v0.2.0

func (in *BareMetalPool) DeepCopyInto(out *BareMetalPool)

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

func (*BareMetalPool) DeepCopyObject added in v0.2.0

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

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

type BareMetalPoolList added in v0.2.0

type BareMetalPoolList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []BareMetalPool `json:"items"`
}

BareMetalPoolList contains a list of BareMetalPool

func (*BareMetalPoolList) DeepCopy added in v0.2.0

func (in *BareMetalPoolList) DeepCopy() *BareMetalPoolList

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

func (*BareMetalPoolList) DeepCopyInto added in v0.2.0

func (in *BareMetalPoolList) DeepCopyInto(out *BareMetalPoolList)

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

func (*BareMetalPoolList) DeepCopyObject added in v0.2.0

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

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

type BareMetalPoolSpec added in v0.2.0

type BareMetalPoolSpec struct {
	// Number of baremetals requested
	Replicas *int32 `json:"replicas,omitempty"`
	// Name of the pool delivering baremetal access
	PoolName string `json:"poolName"`
	// Name of the secret associated with the pool
	CredentialName string `json:"credentialName"`
	// Address of the redfish broker
	Address string `json:"address"`
	// label for the selection of the baremetal which will be associated with the pool
	LabelSelector map[string]string `json:"labelSelector,omitempty"`
	// Number max of baremetal which can be associated with the pool a negative value
	// means no limit. 0 disable the pool.
	// +kubebuilder:default=-1
	MaxServers int `json:"maxServers,omitempty"`
	// +required
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Type=string
	// Schema used for BMC url with Refish
	RedfishSchema string `json:"redfishSchema"`
	// BrokerConfig is the name of the configmap containing the broker CA
	BrokerConfig string `json:"brokerConfig"`
	// Labels assigned to the baremetalhost created by the baremetalpool
	BmhLabels map[string]string `json:"bmhLabels,omitempty"`
	// Annotations assigned to the baremetalhost created by the baremetalpool
	BmhAnnotations map[string]string `json:"bmhAnnotations,omitempty"`
	// BlockingAnnotations contains a list of annotations which keeps the barematalhosts paused
	BlockingAnnotations []string `json:"blockingAnnotations,omitempty"`
	// Baremetalhost BootMode field
	// +kubebuilder:default="legacy"
	BootMode bmhv1alpha1.BootMode `json:"bootMode,omitempty"`
	// Baremetalhost online field
	// +kubebuilder:default=false
	Online bool `json:"online,omitempty"`
	// Baremetalhost Image field
	Image *bmhv1alpha1.Image `json:"image,omitempty"`
	// Baremetalhost UserData field
	UserData *corev1.SecretReference `json:"userData,omitempty"`
	// Baremetalhost MetaData field
	MetaData *corev1.SecretReference `json:"metaData,omitempty"`
	// Baremetalhost PreprovisioningNetworkDataName field
	PreprovisioningNetworkDataName string `json:"preprovisioningNetworkDataName,omitempty"`
	// Baremetalhost NetworkData field
	NetworkData *corev1.SecretReference `json:"networkData,omitempty"`
}

BareMetalPoolSpec defines the desired state of BareMetalPool

func (*BareMetalPoolSpec) DeepCopy added in v0.2.0

func (in *BareMetalPoolSpec) DeepCopy() *BareMetalPoolSpec

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

func (*BareMetalPoolSpec) DeepCopyInto added in v0.2.0

func (in *BareMetalPoolSpec) DeepCopyInto(out *BareMetalPoolSpec)

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

type BareMetalPoolStatus added in v0.2.0

type BareMetalPoolStatus struct {
	// List of the baremetalhost available
	BmhNamesList []string `json:"bmhnameslist,omitempty"`
	// Status of the pool
	Status string `json:"status"`
	// Number of baremetalhost available
	Replicas int32 `json:"replicas"`
}

BareMetalPoolStatus defines the observed state of BareMetalPool

func (*BareMetalPoolStatus) DeepCopy added in v0.2.0

func (in *BareMetalPoolStatus) DeepCopy() *BareMetalPoolStatus

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

func (*BareMetalPoolStatus) DeepCopyInto added in v0.2.0

func (in *BareMetalPoolStatus) DeepCopyInto(out *BareMetalPoolStatus)

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