Documentation
¶
Overview ¶
Package v1 contains API Schema definitions for the bmp v1 API group +kubebuilder:object:generate=true +groupName=bmp.kanod.io
Index ¶
Constants ¶
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 ¶
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.