v1alpha1

package
v0.0.0-...-58510ec Latest Latest
Warning

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

Go to latest
Published: Sep 8, 2025 License: Apache-2.0 Imports: 11 Imported by: 8

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the settings.gardener.cloud API group +groupName=metal.ironcore.dev +kubebuilder:object:generate=true

Package v1alpha1 contains API Schema definitions for the metal v1alpha1 API group +kubebuilder:object:generate=true +groupName=metal.ironcore.dev

Index

Constants

View Source
const (
	// BMCType is the type of the BMC resource.
	BMCType = "bmc"

	// ProtocolRedfish is the Redfish protocol.
	ProtocolRedfish = "Redfish"
	// ProtocolRedfishLocal is the RedfishLocal protocol.
	ProtocolRedfishLocal = "RedfishLocal"
	// ProtocolRedfishKube is the RedfishKube protocol.
	ProtocolRedfishKube = "RedfishKube"
)
View Source
const (
	// BMCSecretUsernameKeyName is the secret key name for the username.
	BMCSecretUsernameKeyName = "username"
	// BMCSecretPasswordKeyName is the secret key name for the password.F
	BMCSecretPasswordKeyName = "password"
)
View Source
const (
	// OperationAnnotation indicates which operation should be performed outside the current spec definition flow.
	OperationAnnotation = "metal.ironcore.dev/operation"
	// OperationAnnotationIgnore skips the reconciliation of a resource if set to true.
	OperationAnnotationIgnore = "ignore"
	// OperationAnnotationRetry restarts the reconciliation of a resource from failed state -> initial state.
	OperationAnnotationRetry = "retry"
	// InstanceTypeAnnotation is used to specify the type of Server.
	InstanceTypeAnnotation = "metal.ironcore.dev/instance-type"
	// ForceUpdateAnnotation is used to indicate that the spec should be forcefully updated.
	ForceUpdateAnnotation = "metal.ironcore.dev/force-update-resource"
	// OperationAnnotationForceUpdateOrDeleteInProgress allows update/Delete of a resource even if it is in progress.
	OperationAnnotationForceUpdateOrDeleteInProgress = "ForceUpdateOrDeleteInProgress"
	// OperationAnnotationForceUpdateInProgress allows update of a resource even if it is in progress.
	OperationAnnotationForceUpdateInProgress = "ForceUpdateInProgress"
)
View Source
const (
	// ServerMaintenanceNeededLabelKey is a label key that is used to indicate that a server requires maintenance.
	ServerMaintenanceNeededLabelKey = "metal.ironcore.dev/maintenance-needed"
	// ServerMaintenanceReasonAnnotationKey is an annotation key that is used to store the reason for a server maintenance.
	ServerMaintenanceReasonAnnotationKey = "metal.ironcore.dev/maintenance-reason"
	// ServerMaintenanceApprovalKey is an annotation key that is used to store the approval status for a server maintenance.
	ServerMaintenanceApprovalKey = "metal.ironcore.dev/maintenance-approval"
)

Variables

View Source
var (
	// GroupVersion is a group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "metal.ironcore.dev", Version: "v1alpha1"}

	// 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

func EqualIPPrefixes

func EqualIPPrefixes(a, b IPPrefix) bool

Types

type BIOSSettings

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

	Spec   BIOSSettingsSpec   `json:"spec,omitempty"`
	Status BIOSSettingsStatus `json:"status,omitempty"`
}

BIOSSettings is the Schema for the biossettings API.

func (*BIOSSettings) DeepCopy

func (in *BIOSSettings) DeepCopy() *BIOSSettings

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

func (*BIOSSettings) DeepCopyInto

func (in *BIOSSettings) DeepCopyInto(out *BIOSSettings)

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

func (*BIOSSettings) DeepCopyObject

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

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

type BIOSSettingsFlowState

type BIOSSettingsFlowState string
const (
	// BIOSSettingsFlowStatePending specifies that the BIOSSetting Controller is updating the settings for current Priority
	BIOSSettingsFlowStatePending BIOSSettingsFlowState = "Pending"
	// BIOSSettingsFlowStateInProgress specifies that the BIOSSetting Controller is updating the settings for current Priority
	BIOSSettingsFlowStateInProgress BIOSSettingsFlowState = "InProgress"
	// BIOSSettingsFlowStateApplied specifies that the bios setting has been completed for current Priority
	BIOSSettingsFlowStateApplied BIOSSettingsFlowState = "Applied"
	// BIOSSettingsFlowStateFailed specifies that the bios setting update has failed.
	BIOSSettingsFlowStateFailed BIOSSettingsFlowState = "Failed"
)

type BIOSSettingsFlowStatus

type BIOSSettingsFlowStatus struct {
	// State represents the current state of the bios configuration task for current priority.
	// +optional
	State BIOSSettingsFlowState `json:"flowState,omitempty"`

	// Name identifies current priority settings from the Spec
	// +optional
	Name string `json:"name,omitempty"`

	// Priority identifies the settings priority from the Spec
	// +optional
	Priority int32 `json:"priority"`

	// Conditions represents the latest available observations of the BIOSSettings's current Flowstate.
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`

	// LastAppliedTime represents the timestamp when the last setting was successfully applied.
	// +optional
	LastAppliedTime *metav1.Time `json:"lastAppliedTime,omitempty"`
}

func (*BIOSSettingsFlowStatus) DeepCopy

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

func (*BIOSSettingsFlowStatus) DeepCopyInto

func (in *BIOSSettingsFlowStatus) DeepCopyInto(out *BIOSSettingsFlowStatus)

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

type BIOSSettingsList

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

BIOSSettingsList contains a list of BIOSSettings.

func (*BIOSSettingsList) DeepCopy

func (in *BIOSSettingsList) DeepCopy() *BIOSSettingsList

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

func (*BIOSSettingsList) DeepCopyInto

func (in *BIOSSettingsList) DeepCopyInto(out *BIOSSettingsList)

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

func (*BIOSSettingsList) DeepCopyObject

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

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

type BIOSSettingsSet

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

	Spec   BIOSSettingsSetSpec   `json:"spec,omitempty"`
	Status BIOSSettingsSetStatus `json:"status,omitempty"`
}

BIOSSettingsSet is the Schema for the biossettingssets API.

func (*BIOSSettingsSet) DeepCopy

func (in *BIOSSettingsSet) DeepCopy() *BIOSSettingsSet

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

func (*BIOSSettingsSet) DeepCopyInto

func (in *BIOSSettingsSet) DeepCopyInto(out *BIOSSettingsSet)

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

func (*BIOSSettingsSet) DeepCopyObject

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

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

type BIOSSettingsSetList

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

BIOSSettingsSetList contains a list of BIOSSettingsSet.

func (*BIOSSettingsSetList) DeepCopy

func (in *BIOSSettingsSetList) DeepCopy() *BIOSSettingsSetList

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

func (*BIOSSettingsSetList) DeepCopyInto

func (in *BIOSSettingsSetList) DeepCopyInto(out *BIOSSettingsSetList)

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

func (*BIOSSettingsSetList) DeepCopyObject

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

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

type BIOSSettingsSetSpec

type BIOSSettingsSetSpec struct {
	// BiosSettingsTemplate defines the template for the BIOSSettings Resource to be applied to the servers.
	BIOSSettingsTemplate BIOSSettingsTemplate `json:"biosSettingsTemplate,omitempty"`

	// ServerSelector specifies a label selector to identify the servers that are to be selected.
	// +required
	ServerSelector metav1.LabelSelector `json:"serverSelector"`
}

BIOSSettingsSetSpec defines the desired state of BIOSSettingsSet.

func (*BIOSSettingsSetSpec) DeepCopy

func (in *BIOSSettingsSetSpec) DeepCopy() *BIOSSettingsSetSpec

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

func (*BIOSSettingsSetSpec) DeepCopyInto

func (in *BIOSSettingsSetSpec) DeepCopyInto(out *BIOSSettingsSetSpec)

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

type BIOSSettingsSetStatus

type BIOSSettingsSetStatus struct {
	// FullyLabeledServers is the number of server in the set.
	FullyLabeledServers int32 `json:"fullyLabeledServers,omitempty"`
	// AvailableBIOSVersion is the number of Settings current created by the set.
	AvailableBIOSSettings int32 `json:"availableBIOSSettings,omitempty"`
	// PendingBIOSSettings is the total number of pending server in the set.
	PendingBIOSSettings int32 `json:"pendingBIOSSettings,omitempty"`
	// InProgressBIOSSettings is the total number of server in the set that are currently in InProgress.
	InProgressBIOSSettings int32 `json:"inProgressBIOSSettings,omitempty"`
	// CompletedBIOSSettings is the total number of completed server in the set.
	CompletedBIOSSettings int32 `json:"completedBIOSSettings,omitempty"`
	// FailedBIOSSettings is the total number of failed server in the set.
	FailedBIOSSettings int32 `json:"failedBIOSSettings,omitempty"`
}

BIOSSettingsSetStatus defines the observed state of BIOSSettingsSet.

func (*BIOSSettingsSetStatus) DeepCopy

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

func (*BIOSSettingsSetStatus) DeepCopyInto

func (in *BIOSSettingsSetStatus) DeepCopyInto(out *BIOSSettingsSetStatus)

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

type BIOSSettingsSpec

type BIOSSettingsSpec struct {
	// BIOSSettingsTemplate defines the template for BIOS Settings to be applied on the servers.
	BIOSSettingsTemplate `json:",inline"`

	// ServerRef is a reference to a specific server to apply bios setting on.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="serverRef is immutable"
	ServerRef *corev1.LocalObjectReference `json:"serverRef,omitempty"`
}

BIOSSettingsSpec defines the desired state of BIOSSettings.

func (*BIOSSettingsSpec) DeepCopy

func (in *BIOSSettingsSpec) DeepCopy() *BIOSSettingsSpec

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

func (*BIOSSettingsSpec) DeepCopyInto

func (in *BIOSSettingsSpec) DeepCopyInto(out *BIOSSettingsSpec)

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

type BIOSSettingsState

type BIOSSettingsState string

BIOSSettingsState specifies the current state of the BIOS Settings update.

const (
	// BIOSSettingsStatePending specifies that the bios setting update is waiting
	BIOSSettingsStatePending BIOSSettingsState = "Pending"
	// BIOSSettingsStateInProgress specifies that the BIOSSetting Controller is updating the settings
	BIOSSettingsStateInProgress BIOSSettingsState = "InProgress"
	// BIOSSettingsStateApplied specifies that the bios setting update has been completed.
	BIOSSettingsStateApplied BIOSSettingsState = "Applied"
	// BIOSSettingsStateFailed specifies that the bios setting update has failed.
	BIOSSettingsStateFailed BIOSSettingsState = "Failed"
)

type BIOSSettingsStatus

type BIOSSettingsStatus struct {
	// State represents the current state of the bios configuration task.
	// +optional
	State BIOSSettingsState `json:"state,omitempty"`

	FlowState []BIOSSettingsFlowStatus `json:"flowState,omitempty"`

	// LastAppliedTime represents the timestamp when the last setting was successfully applied.
	// +optional
	LastAppliedTime *metav1.Time `json:"lastAppliedTime,omitempty"`

	// Conditions represents the latest available observations of the BIOSSettings's current state.
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}

BIOSSettingsStatus defines the observed state of BIOSSettings.

func (*BIOSSettingsStatus) DeepCopy

func (in *BIOSSettingsStatus) DeepCopy() *BIOSSettingsStatus

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

func (*BIOSSettingsStatus) DeepCopyInto

func (in *BIOSSettingsStatus) DeepCopyInto(out *BIOSSettingsStatus)

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

type BIOSSettingsTemplate

type BIOSSettingsTemplate struct {
	// Version contains software (eg: BIOS, BMC) version this settings applies to
	// +required
	Version string `json:"version"`

	// SettingsFlow contains BIOS settings sequence to apply on the BIOS in given order
	// +optional
	SettingsFlow []SettingsFlowItem `json:"settingsFlow,omitempty"`

	// ServerMaintenancePolicy is a maintenance policy to be enforced on the server.
	// +optional
	ServerMaintenancePolicy ServerMaintenancePolicy `json:"serverMaintenancePolicy,omitempty"`

	// ServerMaintenanceRef is a reference to a ServerMaintenance object that BiosSetting has requested for the referred server.
	// +optional
	ServerMaintenanceRef *corev1.ObjectReference `json:"serverMaintenanceRef,omitempty"`
}

func (*BIOSSettingsTemplate) DeepCopy

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

func (*BIOSSettingsTemplate) DeepCopyInto

func (in *BIOSSettingsTemplate) DeepCopyInto(out *BIOSSettingsTemplate)

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

type BIOSVersion

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

	Spec   BIOSVersionSpec   `json:"spec,omitempty"`
	Status BIOSVersionStatus `json:"status,omitempty"`
}

BIOSVersion is the Schema for the biosversions API.

func (*BIOSVersion) DeepCopy

func (in *BIOSVersion) DeepCopy() *BIOSVersion

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

func (*BIOSVersion) DeepCopyInto

func (in *BIOSVersion) DeepCopyInto(out *BIOSVersion)

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

func (*BIOSVersion) DeepCopyObject

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

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

type BIOSVersionList

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

BIOSVersionList contains a list of BIOSVersion.

func (*BIOSVersionList) DeepCopy

func (in *BIOSVersionList) DeepCopy() *BIOSVersionList

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

func (*BIOSVersionList) DeepCopyInto

func (in *BIOSVersionList) DeepCopyInto(out *BIOSVersionList)

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

func (*BIOSVersionList) DeepCopyObject

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

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

type BIOSVersionSet

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

	Spec   BIOSVersionSetSpec   `json:"spec,omitempty"`
	Status BIOSVersionSetStatus `json:"status,omitempty"`
}

BIOSVersionSet is the Schema for the biosversionsets API.

func (*BIOSVersionSet) DeepCopy

func (in *BIOSVersionSet) DeepCopy() *BIOSVersionSet

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

func (*BIOSVersionSet) DeepCopyInto

func (in *BIOSVersionSet) DeepCopyInto(out *BIOSVersionSet)

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

func (*BIOSVersionSet) DeepCopyObject

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

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

type BIOSVersionSetList

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

BIOSVersionSetList contains a list of BIOSVersionSet.

func (*BIOSVersionSetList) DeepCopy

func (in *BIOSVersionSetList) DeepCopy() *BIOSVersionSetList

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

func (*BIOSVersionSetList) DeepCopyInto

func (in *BIOSVersionSetList) DeepCopyInto(out *BIOSVersionSetList)

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

func (*BIOSVersionSetList) DeepCopyObject

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

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

type BIOSVersionSetSpec

type BIOSVersionSetSpec struct {
	// ServerSelector specifies a label selector to identify the servers that are to be selected.
	// +required
	ServerSelector metav1.LabelSelector `json:"serverSelector"`

	// BIOSVersionTemplate defines the template for the BIOSversion Resource to be applied to the servers.
	BIOSVersionTemplate BIOSVersionTemplate `json:"biosVersionTemplate,omitempty"`
}

BIOSVersionSetSpec defines the desired state of BIOSVersionSet.

func (*BIOSVersionSetSpec) DeepCopy

func (in *BIOSVersionSetSpec) DeepCopy() *BIOSVersionSetSpec

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

func (*BIOSVersionSetSpec) DeepCopyInto

func (in *BIOSVersionSetSpec) DeepCopyInto(out *BIOSVersionSetSpec)

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

type BIOSVersionSetStatus

type BIOSVersionSetStatus struct {
	// FullyLabeledServers is the number of servers in the set.
	FullyLabeledServers int32 `json:"fullyLabeledServers,omitempty"`
	// AvailableBIOSVersion is the number of BIOSVersion created by the set.
	AvailableBIOSVersion int32 `json:"availableBIOSVersion,omitempty"`
	// PendingBIOSVersion is the total number of pending BIOSVersion in the set.
	PendingBIOSVersion int32 `json:"pendingBIOSVersion,omitempty"`
	// InProgressBIOSVersion is the total number of BIOSVersion in the set that are currently in InProgress.
	InProgressBIOSVersion int32 `json:"inProgressBIOSVersion,omitempty"`
	// CompletedBIOSVersion is the total number of completed BIOSVersion in the set.
	CompletedBIOSVersion int32 `json:"completedBIOSVersion,omitempty"`
	// FailedBIOSVersion is the total number of failed BIOSVersion in the set.
	FailedBIOSVersion int32 `json:"failedBIOSVersion,omitempty"`
}

BIOSVersionSetStatus defines the observed state of BIOSVersionSet.

func (*BIOSVersionSetStatus) DeepCopy

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

func (*BIOSVersionSetStatus) DeepCopyInto

func (in *BIOSVersionSetStatus) DeepCopyInto(out *BIOSVersionSetStatus)

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

type BIOSVersionSpec

type BIOSVersionSpec struct {
	// BIOSVersionTemplate defines the template for Version to be applied on the servers.
	BIOSVersionTemplate `json:",inline"`

	// ServerRef is a reference to a specific server to apply bios upgrade on.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="serverRef is immutable"
	// +optional
	ServerRef *corev1.LocalObjectReference `json:"serverRef,omitempty"`
}

BIOSVersionSpec defines the desired state of BIOSVersion.

func (*BIOSVersionSpec) DeepCopy

func (in *BIOSVersionSpec) DeepCopy() *BIOSVersionSpec

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

func (*BIOSVersionSpec) DeepCopyInto

func (in *BIOSVersionSpec) DeepCopyInto(out *BIOSVersionSpec)

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

type BIOSVersionState

type BIOSVersionState string
const (
	// BIOSVersionStatePending specifies that the bios upgrade maintenance is waiting
	BIOSVersionStatePending BIOSVersionState = "Pending"
	// BIOSVersionStateInProgress specifies that upgrading bios is in progress.
	BIOSVersionStateInProgress BIOSVersionState = "Processing"
	// BIOSVersionStateCompleted specifies that the bios upgrade maintenance has been completed.
	BIOSVersionStateCompleted BIOSVersionState = "Completed"
	// BIOSVersionStateFailed specifies that the bios upgrade maintenance has failed.
	BIOSVersionStateFailed BIOSVersionState = "Failed"
)

type BIOSVersionStatus

type BIOSVersionStatus struct {
	// State represents the current state of the bios configuration task.
	// +optional
	State BIOSVersionState `json:"state,omitempty"`

	// UpgradeTask contains the state of the Upgrade Task created by the BMC
	// +optional
	UpgradeTask *Task `json:"upgradeTask,omitempty"`

	// Conditions represents the latest available observations of the Bios version upgrade state.
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}

BIOSVersionStatus defines the observed state of BIOSVersion.

func (*BIOSVersionStatus) DeepCopy

func (in *BIOSVersionStatus) DeepCopy() *BIOSVersionStatus

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

func (*BIOSVersionStatus) DeepCopyInto

func (in *BIOSVersionStatus) DeepCopyInto(out *BIOSVersionStatus)

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

type BIOSVersionTemplate

type BIOSVersionTemplate struct {
	// Version contains a BIOS version to upgrade to
	// +required
	Version string `json:"version"`

	// UpdatePolicy An indication of whether the server's upgrade service should bypass vendor update policies
	// +optional
	UpdatePolicy *UpdatePolicy `json:"updatePolicy,omitempty"`

	// details regarding the image to use to upgrade to given BIOS version
	// +required
	Image ImageSpec `json:"image"`

	// ServerMaintenancePolicy is a maintenance policy to be enforced on the server.
	// +optional
	ServerMaintenancePolicy ServerMaintenancePolicy `json:"serverMaintenancePolicy,omitempty"`

	// ServerMaintenanceRef is a reference to a ServerMaintenance object that that Controller has requested for the referred server.
	// +optional
	ServerMaintenanceRef *corev1.ObjectReference `json:"serverMaintenanceRef,omitempty"`
}

func (*BIOSVersionTemplate) DeepCopy

func (in *BIOSVersionTemplate) DeepCopy() *BIOSVersionTemplate

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

func (*BIOSVersionTemplate) DeepCopyInto

func (in *BIOSVersionTemplate) DeepCopyInto(out *BIOSVersionTemplate)

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

type BMC

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

	Spec   BMCSpec   `json:"spec,omitempty"`
	Status BMCStatus `json:"status,omitempty"`
}

BMC is the Schema for the bmcs API

func (*BMC) DeepCopy

func (in *BMC) DeepCopy() *BMC

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

func (*BMC) DeepCopyInto

func (in *BMC) DeepCopyInto(out *BMC)

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

func (*BMC) DeepCopyObject

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

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

type BMCAccess

type BMCAccess struct {
	// Protocol specifies the protocol to be used for communicating with the BMC.
	// +required
	Protocol Protocol `json:"protocol"`

	// Address is the address of the BMC.
	// +required
	Address string `json:"address"`

	// BMCSecretRef is a reference to the Kubernetes Secret object that contains the credentials
	// required to access the BMC. This secret includes sensitive information such as usernames and passwords.
	// +required
	BMCSecretRef v1.LocalObjectReference `json:"bmcSecretRef"`
}

BMCAccess defines the access details for the BMC.

func (*BMCAccess) DeepCopy

func (in *BMCAccess) DeepCopy() *BMCAccess

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

func (*BMCAccess) DeepCopyInto

func (in *BMCAccess) DeepCopyInto(out *BMCAccess)

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

type BMCList

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

BMCList contains a list of BMC

func (*BMCList) DeepCopy

func (in *BMCList) DeepCopy() *BMCList

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

func (*BMCList) DeepCopyInto

func (in *BMCList) DeepCopyInto(out *BMCList)

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

func (*BMCList) DeepCopyObject

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

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

type BMCPowerState

type BMCPowerState string

BMCPowerState defines the possible power states for a BMC.

const (
	// OnPowerState the system is powered on.
	OnPowerState BMCPowerState = "On"
	// OffPowerState the system is powered off, although some components may
	// continue to have AUX power such as management controller.
	OffPowerState BMCPowerState = "Off"
	// PausedPowerState the system is paused.
	PausedPowerState BMCPowerState = "Paused"
	// PoweringOnPowerState A temporary state between Off and On. This
	// temporary state can be very short.
	PoweringOnPowerState BMCPowerState = "PoweringOn"
	// PoweringOffPowerState A temporary state between On and Off. The power
	// off action can take time while the OS is in the shutdown process.
	PoweringOffPowerState BMCPowerState = "PoweringOff"
)

type BMCSecret

type BMCSecret struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	// Immutable, if set to true, ensures that data stored in the Secret cannot
	// be updated (only object metadata can be modified).
	// If not set to true, the field can be modified at any time.
	// Defaulted to nil.
	// +optional
	Immutable *bool `json:"immutable,omitempty" protobuf:"varint,5,opt,name=immutable"`

	// Data contains the secret data. Each key must consist of alphanumeric
	// characters, '-', '_' or '.'. The serialized form of the secret data is a
	// base64 encoded string, representing the arbitrary (possibly non-string)
	// data value here. Described in https://tools.ietf.org/html/rfc4648#section-4
	// +optional
	Data map[string][]byte `json:"data,omitempty" protobuf:"bytes,2,rep,name=data"`

	// stringData allows specifying non-binary secret data in string form.
	// It is provided as a write-only input field for convenience.
	// All keys and values are merged into the data field on write, overwriting any existing values.
	// The stringData field is never output when reading from the API.
	// +k8s:conversion-gen=false
	// +optional
	StringData map[string]string `json:"stringData,omitempty" protobuf:"bytes,4,rep,name=stringData"`

	// Used to facilitate programmatic handling of secret data.
	// More info: https://kubernetes.io/docs/concepts/configuration/secret/#secret-types
	// +optional
	Type corev1.SecretType `json:"type,omitempty" protobuf:"bytes,3,opt,name=type,casttype=SecretType"`
}

BMCSecret is the Schema for the bmcsecrets API

func (*BMCSecret) DeepCopy

func (in *BMCSecret) DeepCopy() *BMCSecret

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

func (*BMCSecret) DeepCopyInto

func (in *BMCSecret) DeepCopyInto(out *BMCSecret)

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

func (*BMCSecret) DeepCopyObject

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

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

type BMCSecretList

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

BMCSecretList contains a list of BMCSecret

func (*BMCSecretList) DeepCopy

func (in *BMCSecretList) DeepCopy() *BMCSecretList

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

func (*BMCSecretList) DeepCopyInto

func (in *BMCSecretList) DeepCopyInto(out *BMCSecretList)

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

func (*BMCSecretList) DeepCopyObject

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

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

type BMCSettings

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

	Spec   BMCSettingsSpec   `json:"spec,omitempty"`
	Status BMCSettingsStatus `json:"status,omitempty"`
}

BMCSettings is the Schema for the BMCSettings API.

func (*BMCSettings) DeepCopy

func (in *BMCSettings) DeepCopy() *BMCSettings

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

func (*BMCSettings) DeepCopyInto

func (in *BMCSettings) DeepCopyInto(out *BMCSettings)

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

func (*BMCSettings) DeepCopyObject

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

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

type BMCSettingsList

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

BMCSettingsList contains a list of BMCSettings.

func (*BMCSettingsList) DeepCopy

func (in *BMCSettingsList) DeepCopy() *BMCSettingsList

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

func (*BMCSettingsList) DeepCopyInto

func (in *BMCSettingsList) DeepCopyInto(out *BMCSettingsList)

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

func (*BMCSettingsList) DeepCopyObject

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

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

type BMCSettingsSpec

type BMCSettingsSpec struct {
	// Version defines the BMC firmware for which the settings should be applied.
	// +required
	Version string `json:"version"`

	// SettingsMap contains bmc settings as map
	// +optional
	SettingsMap map[string]string `json:"settings,omitempty"`

	// BMCRef is a reference to a specific BMC to apply setting to.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="serverRef is immutable"
	// +optional
	BMCRef *corev1.LocalObjectReference `json:"BMCRef,omitempty"`

	// ServerMaintenancePolicy is a maintenance policy to be applied on the server.
	// +optional
	ServerMaintenancePolicy ServerMaintenancePolicy `json:"serverMaintenancePolicy,omitempty"`

	// ServerMaintenanceRefs are references to ServerMaintenance objects which are created by the controller for each
	// server that needs to be updated with the BMC settings.
	// +optional
	ServerMaintenanceRefs []ServerMaintenanceRefItem `json:"serverMaintenanceRefs,omitempty"`
}

BMCSettingsSpec defines the desired state of BMCSettings.

func (*BMCSettingsSpec) DeepCopy

func (in *BMCSettingsSpec) DeepCopy() *BMCSettingsSpec

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

func (*BMCSettingsSpec) DeepCopyInto

func (in *BMCSettingsSpec) DeepCopyInto(out *BMCSettingsSpec)

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

type BMCSettingsState

type BMCSettingsState string

BMCSettingsState specifies the current state of the server maintenance.

const (
	// BMCSettingsStatePending specifies that the BMC maintenance is waiting
	BMCSettingsStatePending BMCSettingsState = "Pending"
	// BMCSettingsStateInProgress specifies that the BMC setting changes are in progress
	BMCSettingsStateInProgress BMCSettingsState = "InProgress"
	// BMCSettingsStateApplied specifies that the BMC maintenance has been completed.
	BMCSettingsStateApplied BMCSettingsState = "Applied"
	// BMCSettingsStateFailed specifies that the BMC maintenance has failed.
	BMCSettingsStateFailed BMCSettingsState = "Failed"
)

type BMCSettingsStatus

type BMCSettingsStatus struct {
	// State represents the current state of the BMC configuration task.
	// +optional
	State BMCSettingsState `json:"state,omitempty"`
}

BMCSettingsStatus defines the observed state of BMCSettings.

func (*BMCSettingsStatus) DeepCopy

func (in *BMCSettingsStatus) DeepCopy() *BMCSettingsStatus

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

func (*BMCSettingsStatus) DeepCopyInto

func (in *BMCSettingsStatus) DeepCopyInto(out *BMCSettingsStatus)

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

type BMCSpec

type BMCSpec struct {
	// BMCUUID is the unique identifier for the BMC as defined in Redfish API.
	// +kubebuilder:validation:Optional
	// +optional
	BMCUUID string `json:"bmcUUID,omitempty"`

	// EndpointRef is a reference to the Kubernetes object that contains the endpoint information for the BMC.
	// This reference is typically used to locate the BMC endpoint within the cluster.
	// +optional
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="endpointRef is immutable"
	EndpointRef *v1.LocalObjectReference `json:"endpointRef"`

	// Endpoint allows inline configuration of network access details for the BMC.
	// Use this field if access settings like address are to be configured directly within the BMC resource.
	// +optional
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="access is immutable"
	Endpoint *InlineEndpoint `json:"access,omitempty"`

	// BMCSecretRef is a reference to the Kubernetes Secret object that contains the credentials
	// required to access the BMC. This secret includes sensitive information such as usernames and passwords.
	// +required
	BMCSecretRef v1.LocalObjectReference `json:"bmcSecretRef"`

	// Protocol specifies the protocol to be used for communicating with the BMC.
	// It could be a standard protocol such as IPMI or Redfish.
	// +required
	Protocol Protocol `json:"protocol"`

	// ConsoleProtocol specifies the protocol to be used for console access to the BMC.
	// This field is optional and can be omitted if console access is not required.
	// +optional
	ConsoleProtocol *ConsoleProtocol `json:"consoleProtocol,omitempty"`

	// BMCSettingRef is a reference to a BMCSettings object that specifies
	// the BMC configuration for this BMC.
	// +optional
	BMCSettingRef *v1.LocalObjectReference `json:"bmcSettingsRef,omitempty"`
}

BMCSpec defines the desired state of BMC +kubebuilder:validation:XValidation:rule="has(self.access) != has(self.endpointRef)",message="exactly one of access or endpointRef needs to be set"

func (*BMCSpec) DeepCopy

func (in *BMCSpec) DeepCopy() *BMCSpec

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

func (*BMCSpec) DeepCopyInto

func (in *BMCSpec) DeepCopyInto(out *BMCSpec)

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

type BMCState

type BMCState string

BMCState defines the possible states of a BMC.

const (
	// BMCStateEnabled indicates that the BMC is enabled and functioning correctly.
	BMCStateEnabled BMCState = "Enabled"

	// BMCStateError indicates that there is an error with the BMC.
	BMCStateError BMCState = "Error"
)

type BMCStatus

type BMCStatus struct {
	// MACAddress is the MAC address of the BMC.
	// The format is validated using a regular expression pattern.
	// +kubebuilder:validation:Pattern=`^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$`
	// +optional
	MACAddress string `json:"macAddress,omitempty"`

	// IP is the IP address of the BMC.
	// The type is specified as string and is schemaless.
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Schemaless
	// +optional
	IP IP `json:"ip,omitempty"`

	// Manufacturer is the name of the BMC manufacturer.
	// +optional
	Manufacturer string `json:"manufacturer,omitempty"`

	// Model is the model number or name of the BMC.
	// +optional
	Model string `json:"model,omitempty"`

	// SKU is the stock keeping unit identifier for the BMC.
	// +optional
	SKU string `json:"sku,omitempty"`

	// SerialNumber is the serial number of the BMC.
	// +optional
	SerialNumber string `json:"serialNumber,omitempty"`

	// FirmwareVersion is the version of the firmware currently running on the BMC.
	// +optional
	FirmwareVersion string `json:"firmwareVersion,omitempty"`

	// State represents the current state of the BMC.
	// +optional
	State BMCState `json:"state,omitempty"`

	// PowerState represents the current power state of the BMC.
	// +optional
	PowerState BMCPowerState `json:"powerState,omitempty"`

	// Conditions represents the latest available observations of the BMC's current state.
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}

BMCStatus defines the observed state of BMC.

func (*BMCStatus) DeepCopy

func (in *BMCStatus) DeepCopy() *BMCStatus

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

func (*BMCStatus) DeepCopyInto

func (in *BMCStatus) DeepCopyInto(out *BMCStatus)

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

type BMCVersion

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

	Spec   BMCVersionSpec   `json:"spec,omitempty"`
	Status BMCVersionStatus `json:"status,omitempty"`
}

BMCVersion is the Schema for the bmcversions API.

func (*BMCVersion) DeepCopy

func (in *BMCVersion) DeepCopy() *BMCVersion

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

func (*BMCVersion) DeepCopyInto

func (in *BMCVersion) DeepCopyInto(out *BMCVersion)

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

func (*BMCVersion) DeepCopyObject

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

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

type BMCVersionList

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

BMCVersionList contains a list of BMCVersion.

func (*BMCVersionList) DeepCopy

func (in *BMCVersionList) DeepCopy() *BMCVersionList

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

func (*BMCVersionList) DeepCopyInto

func (in *BMCVersionList) DeepCopyInto(out *BMCVersionList)

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

func (*BMCVersionList) DeepCopyObject

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

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

type BMCVersionSet

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

	Spec   BMCVersionSetSpec   `json:"spec,omitempty"`
	Status BMCVersionSetStatus `json:"status,omitempty"`
}

BMCVersionSet is the Schema for the bmcversionsets API.

func (*BMCVersionSet) DeepCopy

func (in *BMCVersionSet) DeepCopy() *BMCVersionSet

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

func (*BMCVersionSet) DeepCopyInto

func (in *BMCVersionSet) DeepCopyInto(out *BMCVersionSet)

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

func (*BMCVersionSet) DeepCopyObject

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

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

type BMCVersionSetList

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

BMCVersionSetList contains a list of BMCVersionSet.

func (*BMCVersionSetList) DeepCopy

func (in *BMCVersionSetList) DeepCopy() *BMCVersionSetList

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

func (*BMCVersionSetList) DeepCopyInto

func (in *BMCVersionSetList) DeepCopyInto(out *BMCVersionSetList)

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

func (*BMCVersionSetList) DeepCopyObject

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

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

type BMCVersionSetSpec

type BMCVersionSetSpec struct {
	// BMCSelector specifies a label selector to identify the BMC that are to be selected.
	// +required
	BMCSelector metav1.LabelSelector `json:"bmcSelector"`

	// BMCVersionTemplate defines the template for the BMCversion Resource to be applied to the servers.
	BMCVersionTemplate BMCVersionTemplate `json:"bmcVersionTemplate,omitempty"`
}

BMCVersionSetSpec defines the desired state of BMCVersionSet.

func (*BMCVersionSetSpec) DeepCopy

func (in *BMCVersionSetSpec) DeepCopy() *BMCVersionSetSpec

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

func (*BMCVersionSetSpec) DeepCopyInto

func (in *BMCVersionSetSpec) DeepCopyInto(out *BMCVersionSetSpec)

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

type BMCVersionSetStatus

type BMCVersionSetStatus struct {
	// FullyLabeledBMCs is the number of server in the set.
	FullyLabeledBMCs int32 `json:"fullyLabeledBMCs,omitempty"`
	// AvailableBMCVersion is the number of BMCVersion current created by the set.
	AvailableBMCVersion int32 `json:"availableBMCVersion,omitempty"`
	// PendingBMCVersion is the total number of pending BMCVersion in the set.
	PendingBMCVersion int32 `json:"pendingBMCVersion,omitempty"`
	// InProgressBMCVersion is the total number of BMCVersion in the set that are currently in InProgress.
	InProgressBMCVersion int32 `json:"inProgressBMCVersion,omitempty"`
	// CompletedBMCVersion is the total number of completed BMCVersion in the set.
	CompletedBMCVersion int32 `json:"completedBMCVersion,omitempty"`
	// FailedBMCVersion is the total number of failed BMCVersion in the set.
	FailedBMCVersion int32 `json:"failedBMCVersion,omitempty"`
}

BMCVersionSetStatus defines the observed state of BMCVersionSet.

func (*BMCVersionSetStatus) DeepCopy

func (in *BMCVersionSetStatus) DeepCopy() *BMCVersionSetStatus

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

func (*BMCVersionSetStatus) DeepCopyInto

func (in *BMCVersionSetStatus) DeepCopyInto(out *BMCVersionSetStatus)

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

type BMCVersionSpec

type BMCVersionSpec struct {
	// BMCVersionTemplate defines the template for BMC version to be applied on the server's BMC.
	BMCVersionTemplate `json:",inline"`

	// BMCRef is a reference to a specific BMC to apply BMC upgrade on.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="bmcRef is immutable"
	BMCRef *corev1.LocalObjectReference `json:"bmcRef,omitempty"`
}

BMCVersionSpec defines the desired state of BMCVersion.

func (*BMCVersionSpec) DeepCopy

func (in *BMCVersionSpec) DeepCopy() *BMCVersionSpec

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

func (*BMCVersionSpec) DeepCopyInto

func (in *BMCVersionSpec) DeepCopyInto(out *BMCVersionSpec)

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

type BMCVersionState

type BMCVersionState string
const (
	// BMCVersionStatePending specifies that the BMC upgrade maintenance is waiting
	BMCVersionStatePending BMCVersionState = "Pending"
	// BMCVersionStateInProgress specifies that upgrading BMC is in progress.
	BMCVersionStateInProgress BMCVersionState = "InProgress"
	// BMCVersionStateCompleted specifies that the BMC upgrade maintenance has been completed.
	BMCVersionStateCompleted BMCVersionState = "Completed"
	// BMCVersionStateFailed specifies that the BMC upgrade maintenance has failed.
	BMCVersionStateFailed BMCVersionState = "Failed"
)

type BMCVersionStatus

type BMCVersionStatus struct {
	// State represents the current state of the BMC configuration task.
	State BMCVersionState `json:"state,omitempty"`

	// UpgradeTask contains the state of the Upgrade Task created by the BMC
	UpgradeTask *Task `json:"upgradeTask,omitempty"`
	// Conditions represents the latest available observations of the BMC version upgrade state.
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}

BMCVersionStatus defines the observed state of BMCVersion.

func (*BMCVersionStatus) DeepCopy

func (in *BMCVersionStatus) DeepCopy() *BMCVersionStatus

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

func (*BMCVersionStatus) DeepCopyInto

func (in *BMCVersionStatus) DeepCopyInto(out *BMCVersionStatus)

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

type BMCVersionTemplate

type BMCVersionTemplate struct {
	// Version contains a BMC version to upgrade to
	// +required
	Version string `json:"version"`

	// UpdatePolicy is an indication of whether the server's upgrade service should bypass vendor update policies
	// +optional
	UpdatePolicy *UpdatePolicy `json:"updatePolicy,omitempty"`

	// details regarding the image to use to upgrade to given BMC version
	// +required
	Image ImageSpec `json:"image"`

	// ServerMaintenancePolicy is a maintenance policy to be enforced on the server managed by referred BMC.
	// +optional
	ServerMaintenancePolicy ServerMaintenancePolicy `json:"serverMaintenancePolicy,omitempty"`

	// ServerMaintenanceRefs are references to a ServerMaintenance objects that Controller has requested for the each of the related server.
	// +optional
	ServerMaintenanceRefs []ServerMaintenanceRefItem `json:"serverMaintenanceRefs,omitempty"`
}

func (*BMCVersionTemplate) DeepCopy

func (in *BMCVersionTemplate) DeepCopy() *BMCVersionTemplate

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

func (*BMCVersionTemplate) DeepCopyInto

func (in *BMCVersionTemplate) DeepCopyInto(out *BMCVersionTemplate)

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

type BootOrder

type BootOrder struct {
	// Name is the name of the boot device.
	Name string `json:"name"`
	// Priority is the priority of the boot device.
	Priority int `json:"priority"`
	// Device is the device to boot from.
	Device string `json:"device"`
}

BootOrder represents the boot order of the server.

func (*BootOrder) DeepCopy

func (in *BootOrder) DeepCopy() *BootOrder

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

func (*BootOrder) DeepCopyInto

func (in *BootOrder) DeepCopyInto(out *BootOrder)

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

type ConsoleProtocol

type ConsoleProtocol struct {
	// Name specifies the name of the console protocol.
	// This could be a protocol such as "SSH", "Telnet", etc.
	// +kubebuilder:validation:Enum=IPMI;SSH;SSHLenovo
	// +required
	Name ConsoleProtocolName `json:"name"`

	// Port specifies the port number used for console access.
	// This port is used by the specified console protocol to establish connections.
	// +required
	Port int32 `json:"port"`
}

ConsoleProtocol defines the protocol and port used for console access to the BMC.

func (*ConsoleProtocol) DeepCopy

func (in *ConsoleProtocol) DeepCopy() *ConsoleProtocol

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

func (*ConsoleProtocol) DeepCopyInto

func (in *ConsoleProtocol) DeepCopyInto(out *ConsoleProtocol)

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

type ConsoleProtocolName

type ConsoleProtocolName string

ConsoleProtocolName defines the possible names for console protocols.

const (
	// ConsoleProtocolNameIPMI represents the IPMI console protocol.
	ConsoleProtocolNameIPMI ConsoleProtocolName = "IPMI"

	// ConsoleProtocolNameSSH represents the SSH console protocol.
	ConsoleProtocolNameSSH ConsoleProtocolName = "SSH"

	// ConsoleProtocolNameSSHLenovo represents the SSH console protocol specific to Lenovo hardware.
	ConsoleProtocolNameSSHLenovo ConsoleProtocolName = "SSHLenovo"
)

type Endpoint

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

	Spec   EndpointSpec   `json:"spec,omitempty"`
	Status EndpointStatus `json:"status,omitempty"`
}

Endpoint is the Schema for the endpoints API

func (*Endpoint) DeepCopy

func (in *Endpoint) DeepCopy() *Endpoint

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

func (*Endpoint) DeepCopyInto

func (in *Endpoint) DeepCopyInto(out *Endpoint)

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

func (*Endpoint) DeepCopyObject

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

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

type EndpointList

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

EndpointList contains a list of Endpoint

func (*EndpointList) DeepCopy

func (in *EndpointList) DeepCopy() *EndpointList

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

func (*EndpointList) DeepCopyInto

func (in *EndpointList) DeepCopyInto(out *EndpointList)

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

func (*EndpointList) DeepCopyObject

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

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

type EndpointSpec

type EndpointSpec struct {
	// MACAddress is the MAC address of the endpoint.
	// +optional
	MACAddress string `json:"macAddress"`

	// IP is the IP address of the endpoint.
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Schemaless
	// +optional
	IP IP `json:"ip"`
}

EndpointSpec defines the desired state of Endpoint

func (*EndpointSpec) DeepCopy

func (in *EndpointSpec) DeepCopy() *EndpointSpec

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

func (*EndpointSpec) DeepCopyInto

func (in *EndpointSpec) DeepCopyInto(out *EndpointSpec)

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

type EndpointStatus

type EndpointStatus struct {
}

EndpointStatus defines the observed state of Endpoint

func (*EndpointStatus) DeepCopy

func (in *EndpointStatus) DeepCopy() *EndpointStatus

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

func (*EndpointStatus) DeepCopyInto

func (in *EndpointStatus) DeepCopyInto(out *EndpointStatus)

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

type IP

type IP struct {
	netip.Addr `json:"-"`
}

IP is an IP address.

func MustParseIP

func MustParseIP(s string) IP

func MustParseNewIP

func MustParseNewIP(s string) *IP

func NewIP

func NewIP(ip netip.Addr) IP

func NewIPPtr

func NewIPPtr(ip netip.Addr) *IP

func ParseIP

func ParseIP(s string) (IP, error)

func ParseNewIP

func ParseNewIP(s string) (*IP, error)

func PtrToIP

func PtrToIP(addr IP) *IP

func (*IP) DeepCopy

func (in *IP) DeepCopy() *IP

func (*IP) DeepCopyInto

func (in *IP) DeepCopyInto(out *IP)

func (IP) Family

func (i IP) Family() v1.IPFamily

func (IP) GomegaString

func (i IP) GomegaString() string

func (*IP) IsValid

func (i *IP) IsValid() bool

func (*IP) IsZero

func (i *IP) IsZero() bool

func (IP) MarshalJSON

func (i IP) MarshalJSON() ([]byte, error)

func (IP) OpenAPISchemaFormat

func (i IP) OpenAPISchemaFormat() string

func (IP) OpenAPISchemaType

func (i IP) OpenAPISchemaType() []string

func (IP) ToUnstructured

func (i IP) ToUnstructured() interface{}

func (*IP) UnmarshalJSON

func (i *IP) UnmarshalJSON(b []byte) error

type IPPrefix

type IPPrefix struct {
	netip.Prefix `json:"-"`
}

IPPrefix represents a network prefix. +nullable

func MustParseIPPrefix

func MustParseIPPrefix(s string) IPPrefix

func MustParseNewIPPrefix

func MustParseNewIPPrefix(s string) *IPPrefix

func NewIPPrefix

func NewIPPrefix(prefix netip.Prefix) *IPPrefix

func ParseIPPrefix

func ParseIPPrefix(s string) (IPPrefix, error)

func ParseNewIPPrefix

func ParseNewIPPrefix(s string) (*IPPrefix, error)

func PtrToIPPrefix

func PtrToIPPrefix(prefix IPPrefix) *IPPrefix

func (*IPPrefix) DeepCopy

func (in *IPPrefix) DeepCopy() *IPPrefix

func (*IPPrefix) DeepCopyInto

func (in *IPPrefix) DeepCopyInto(out *IPPrefix)

func (IPPrefix) GomegaString

func (i IPPrefix) GomegaString() string

func (IPPrefix) IP

func (i IPPrefix) IP() IP

func (*IPPrefix) IsValid

func (in *IPPrefix) IsValid() bool

func (*IPPrefix) IsZero

func (in *IPPrefix) IsZero() bool

func (IPPrefix) MarshalJSON

func (i IPPrefix) MarshalJSON() ([]byte, error)

func (IPPrefix) OpenAPISchemaFormat

func (in IPPrefix) OpenAPISchemaFormat() string

func (IPPrefix) OpenAPISchemaType

func (in IPPrefix) OpenAPISchemaType() []string

func (IPPrefix) ToUnstructured

func (i IPPrefix) ToUnstructured() interface{}

func (*IPPrefix) UnmarshalJSON

func (i *IPPrefix) UnmarshalJSON(b []byte) error

type ImageSpec

type ImageSpec struct {
	// ImageSecretRef is a reference to the Kubernetes Secret (of type SecretTypeBasicAuth) object that contains the credentials
	// to access the ImageURI. This secret includes sensitive information such as usernames and passwords.
	// +optional
	SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`

	// The network protocol that the server's update service uses to retrieve 'ImageURI'
	// +optional
	TransferProtocol string `json:"transferProtocol,omitempty"`

	// The URI of the software image to update/install."
	// +required
	URI string `json:"URI"`
}

func (*ImageSpec) DeepCopy

func (in *ImageSpec) DeepCopy() *ImageSpec

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

func (*ImageSpec) DeepCopyInto

func (in *ImageSpec) DeepCopyInto(out *ImageSpec)

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

type IndicatorLED

type IndicatorLED string

IndicatorLED represents LED indicator states

const (
	// UnknownIndicatorLED indicates the state of the Indicator LED cannot be
	// determined.
	UnknownIndicatorLED IndicatorLED = "Unknown"
	// LitIndicatorLED indicates the Indicator LED is lit.
	LitIndicatorLED IndicatorLED = "Lit"
	// BlinkingIndicatorLED indicates the Indicator LED is blinking.
	BlinkingIndicatorLED IndicatorLED = "Blinking"
	// OffIndicatorLED indicates the Indicator LED is off.
	OffIndicatorLED IndicatorLED = "Off"
)

type InlineEndpoint

type InlineEndpoint struct {
	// MACAddress is the MAC address of the endpoint.
	// +optional
	MACAddress string `json:"macAddress,omitempty"`

	// IP is the IP address of the BMC.
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Schemaless
	// +optional
	IP IP `json:"ip"`
}

InlineEndpoint defines inline network access configuration for the BMC.

func (*InlineEndpoint) DeepCopy

func (in *InlineEndpoint) DeepCopy() *InlineEndpoint

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

func (*InlineEndpoint) DeepCopyInto

func (in *InlineEndpoint) DeepCopyInto(out *InlineEndpoint)

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

type NetworkInterface

type NetworkInterface struct {
	// Name is the name of the network interface.
	// +required
	Name string `json:"name"`

	// IP is the IP address assigned to the network interface.
	// The type is specified as string and is schemaless.
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Schemaless
	// +required
	IP IP `json:"ip"`

	// MACAddress is the MAC address of the network interface.
	// +required
	MACAddress string `json:"macAddress"`
}

NetworkInterface defines the details of a network interface.

func (*NetworkInterface) DeepCopy

func (in *NetworkInterface) DeepCopy() *NetworkInterface

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

func (*NetworkInterface) DeepCopyInto

func (in *NetworkInterface) DeepCopyInto(out *NetworkInterface)

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

type Phase

type Phase string

Phase defines the possible phases of a ServerClaim.

const (
	// PhaseBound indicates that the server claim is bound to a server.
	PhaseBound Phase = "Bound"
	// PhaseUnbound indicates that the server claim is not bound to any server.
	PhaseUnbound Phase = "Unbound"
)

type Power

type Power string

Power defines the possible power states for a device.

const (
	// PowerOn indicates that the device is powered on.
	PowerOn Power = "On"

	// PowerOff indicates that the device is powered off.
	PowerOff Power = "Off"
)

type Processor

type Processor struct {
	// ID is the name of the Processor.
	// +required
	ID string `json:"id"`

	// Type is the type of the Processor.
	// +optional
	Type string `json:"type,omitempty"`

	// Architecture is the architecture of the Processor.
	// +optional
	Architecture string `json:"architecture,omitempty"`

	// InstructionSet is the instruction set of the Processor.
	// +optional
	InstructionSet string `json:"instructionSet,omitempty"`

	// Manufacturer is the manufacturer of the Processor.
	// +optional
	Manufacturer string `json:"manufacturer,omitempty"`

	// Model is the model of the Processor.
	// +optional
	Model string `json:"model,omitempty"`

	// MaxSpeedMHz is the maximum speed of the Processor in MHz.
	// +optional
	MaxSpeedMHz int32 `json:"maxSpeedMHz,omitempty"`

	// TotalCores is the total number of cores in the Processor.
	// +optional
	TotalCores int32 `json:"totalCores,omitempty"`

	// TotalThreads is the total number of threads in the Processor.
	// +optional
	TotalThreads int32 `json:"totalThreads,omitempty"`
}

Processor defines the details of a Processor.

func (*Processor) DeepCopy

func (in *Processor) DeepCopy() *Processor

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

func (*Processor) DeepCopyInto

func (in *Processor) DeepCopyInto(out *Processor)

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

type Protocol

type Protocol struct {
	// Name specifies the name of the protocol.
	// This could be a protocol such as "IPMI", "Redfish", etc.
	Name ProtocolName `json:"name"`

	// Port specifies the port number used for communication.
	// This port is used by the specified protocol to establish connections.
	Port int32 `json:"port"`

	// Scheme specifies the scheme used for communication.
	Scheme ProtocolScheme `json:"scheme,omitempty"`
}

Protocol defines the protocol and port used for communicating with the BMC.

func (*Protocol) DeepCopy

func (in *Protocol) DeepCopy() *Protocol

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

func (*Protocol) DeepCopyInto

func (in *Protocol) DeepCopyInto(out *Protocol)

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

type ProtocolName

type ProtocolName string

ProtocolName defines the possible names for protocols used for communicating with the BMC.

const (
	// ProtocolNameRedfish represents the Redfish protocol.
	ProtocolNameRedfish ProtocolName = "Redfish"

	// ProtocolNameIPMI represents the IPMI protocol.
	ProtocolNameIPMI ProtocolName = "IPMI"

	// ProtocolNameSSH represents the SSH protocol.
	ProtocolNameSSH ProtocolName = "SSH"
)

type ProtocolScheme

type ProtocolScheme string

ProtocolScheme is a string that contains the protocol scheme

const (
	// HTTPProtocolScheme is the http protocol scheme
	HTTPProtocolScheme ProtocolScheme = "http"
	// HTTPSProtocolScheme is the https protocol scheme
	HTTPSProtocolScheme ProtocolScheme = "https"
)

type Server

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

	Spec   ServerSpec   `json:"spec,omitempty"`
	Status ServerStatus `json:"status,omitempty"`
}

Server is the Schema for the servers API

func (*Server) DeepCopy

func (in *Server) DeepCopy() *Server

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

func (*Server) DeepCopyInto

func (in *Server) DeepCopyInto(out *Server)

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

func (*Server) DeepCopyObject

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

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

type ServerBootConfiguration

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

	Spec   ServerBootConfigurationSpec   `json:"spec,omitempty"`
	Status ServerBootConfigurationStatus `json:"status,omitempty"`
}

ServerBootConfiguration is the Schema for the serverbootconfigurations API

func (*ServerBootConfiguration) DeepCopy

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

func (*ServerBootConfiguration) DeepCopyInto

func (in *ServerBootConfiguration) DeepCopyInto(out *ServerBootConfiguration)

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

func (*ServerBootConfiguration) DeepCopyObject

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

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

type ServerBootConfigurationList

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

ServerBootConfigurationList contains a list of ServerBootConfiguration

func (*ServerBootConfigurationList) DeepCopy

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

func (*ServerBootConfigurationList) DeepCopyInto

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

func (*ServerBootConfigurationList) DeepCopyObject

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

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

type ServerBootConfigurationSpec

type ServerBootConfigurationSpec struct {
	// ServerRef is a reference to the server for which this boot configuration is intended.
	// +required
	ServerRef v1.LocalObjectReference `json:"serverRef"`

	// Image specifies the boot image to be used for the server.
	// This field is optional and can be omitted if not specified.
	// +optional
	Image string `json:"image,omitempty"`

	// IgnitionSecretRef is a reference to the Kubernetes Secret object that contains
	// the ignition configuration for the server. This field is optional and can be omitted if not specified.
	// +optional
	IgnitionSecretRef *v1.LocalObjectReference `json:"ignitionSecretRef,omitempty"`
}

ServerBootConfigurationSpec defines the desired state of ServerBootConfiguration.

func (*ServerBootConfigurationSpec) DeepCopy

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

func (*ServerBootConfigurationSpec) DeepCopyInto

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

type ServerBootConfigurationState

type ServerBootConfigurationState string

ServerBootConfigurationState defines the possible states of a ServerBootConfiguration.

const (
	// ServerBootConfigurationStatePending indicates that the boot configuration is pending and not yet ready.
	ServerBootConfigurationStatePending ServerBootConfigurationState = "Pending"
	// ServerBootConfigurationStateReady indicates that the boot configuration is ready for use.
	ServerBootConfigurationStateReady ServerBootConfigurationState = "Ready"
	// ServerBootConfigurationStateError indicates that there is an error with the boot configuration.
	ServerBootConfigurationStateError ServerBootConfigurationState = "Error"
)

type ServerBootConfigurationStatus

type ServerBootConfigurationStatus struct {
	// State represents the current state of the boot configuration.
	// +optional
	State ServerBootConfigurationState `json:"state,omitempty"`
}

ServerBootConfigurationStatus defines the observed state of ServerBootConfiguration.

func (*ServerBootConfigurationStatus) DeepCopy

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

func (*ServerBootConfigurationStatus) DeepCopyInto

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

type ServerBootConfigurationTemplate

type ServerBootConfigurationTemplate struct {
	// Name specifies the name of the boot configuration.
	// +required
	Name string `json:"name"`

	// Parameters specify the parameters to be used for rendering the boot configuration.
	// +required
	Spec ServerBootConfigurationSpec `json:"spec"`
}

ServerBootConfigurationTemplate defines the parameters to be used for rendering a boot configuration.

func (*ServerBootConfigurationTemplate) DeepCopy

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

func (*ServerBootConfigurationTemplate) DeepCopyInto

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

type ServerClaim

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

	Spec   ServerClaimSpec   `json:"spec,omitempty"`
	Status ServerClaimStatus `json:"status,omitempty"`
}

ServerClaim is the Schema for the serverclaims API

func (*ServerClaim) DeepCopy

func (in *ServerClaim) DeepCopy() *ServerClaim

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

func (*ServerClaim) DeepCopyInto

func (in *ServerClaim) DeepCopyInto(out *ServerClaim)

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

func (*ServerClaim) DeepCopyObject

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

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

type ServerClaimList

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

ServerClaimList contains a list of ServerClaim

func (*ServerClaimList) DeepCopy

func (in *ServerClaimList) DeepCopy() *ServerClaimList

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

func (*ServerClaimList) DeepCopyInto

func (in *ServerClaimList) DeepCopyInto(out *ServerClaimList)

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

func (*ServerClaimList) DeepCopyObject

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

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

type ServerClaimSpec

type ServerClaimSpec struct {
	// Power specifies the desired power state of the server.
	// +required
	Power Power `json:"power"`

	// ServerRef is a reference to a specific server to be claimed.
	// This field is optional and can be omitted if the server is to be selected using ServerSelector.
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="serverRef is immutable"
	// +optional
	ServerRef *v1.LocalObjectReference `json:"serverRef,omitempty"`

	// ServerSelector specifies a label selector to identify the server to be claimed.
	// This field is optional and can be omitted if a specific server is referenced using ServerRef.
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="serverSelector is immutable"
	// +optional
	ServerSelector *metav1.LabelSelector `json:"serverSelector,omitempty"`

	// IgnitionSecretRef is a reference to the Kubernetes Secret object that contains
	// the ignition configuration for the server. This field is optional and can be omitted if not specified.
	// +optional
	IgnitionSecretRef *v1.LocalObjectReference `json:"ignitionSecretRef,omitempty"`

	// Image specifies the boot image to be used for the server.
	// +required
	Image string `json:"image"`
}

ServerClaimSpec defines the desired state of ServerClaim. +kubebuilder:validation:XValidation:rule="!has(oldSelf.serverRef) || has(self.serverRef)", message="serverRef is required once set" +kubebuilder:validation:XValidation:rule="!has(oldSelf.serverSelector) || has(self.serverSelector)", message="serverSelector is required once set"

func (*ServerClaimSpec) DeepCopy

func (in *ServerClaimSpec) DeepCopy() *ServerClaimSpec

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

func (*ServerClaimSpec) DeepCopyInto

func (in *ServerClaimSpec) DeepCopyInto(out *ServerClaimSpec)

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

type ServerClaimStatus

type ServerClaimStatus struct {
	// Phase represents the current phase of the server claim.
	// +optional
	Phase Phase `json:"phase,omitempty"`
}

ServerClaimStatus defines the observed state of ServerClaim.

func (*ServerClaimStatus) DeepCopy

func (in *ServerClaimStatus) DeepCopy() *ServerClaimStatus

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

func (*ServerClaimStatus) DeepCopyInto

func (in *ServerClaimStatus) DeepCopyInto(out *ServerClaimStatus)

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

type ServerList

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

ServerList contains a list of Server

func (*ServerList) DeepCopy

func (in *ServerList) DeepCopy() *ServerList

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

func (*ServerList) DeepCopyInto

func (in *ServerList) DeepCopyInto(out *ServerList)

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

func (*ServerList) DeepCopyObject

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

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

type ServerMaintenance

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

	Spec   ServerMaintenanceSpec   `json:"spec,omitempty"`
	Status ServerMaintenanceStatus `json:"status,omitempty"`
}

ServerMaintenance is the Schema for the ServerMaintenance API

func (*ServerMaintenance) DeepCopy

func (in *ServerMaintenance) DeepCopy() *ServerMaintenance

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

func (*ServerMaintenance) DeepCopyInto

func (in *ServerMaintenance) DeepCopyInto(out *ServerMaintenance)

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

func (*ServerMaintenance) DeepCopyObject

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

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

type ServerMaintenanceList

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

ServerMaintenanceList contains a list of ServerMaintenances

func (*ServerMaintenanceList) DeepCopy

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

func (*ServerMaintenanceList) DeepCopyInto

func (in *ServerMaintenanceList) DeepCopyInto(out *ServerMaintenanceList)

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

func (*ServerMaintenanceList) DeepCopyObject

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

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

type ServerMaintenancePolicy

type ServerMaintenancePolicy string

ServerMaintenancePolicy specifies the maintenance policy to be enforced on the server.

const (
	// ServerMaintenancePolicyOwnerApproval specifies that the maintenance policy requires owner approval.
	ServerMaintenancePolicyOwnerApproval ServerMaintenancePolicy = "OwnerApproval"
	// ServerMaintenancePolicyEnforced specifies that the maintenance policy is enforced.
	ServerMaintenancePolicyEnforced ServerMaintenancePolicy = "Enforced"
)

type ServerMaintenanceRefItem

type ServerMaintenanceRefItem struct {
	// ServerMaintenanceRef is a reference to a ServerMaintenance object that the BMCSettings has requested for the referred server.
	// +optional
	ServerMaintenanceRef *corev1.ObjectReference `json:"serverMaintenanceRef,omitempty"`
}

ServerMaintenanceRefItem is a reference to a ServerMaintenance object.

func (*ServerMaintenanceRefItem) DeepCopy

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

func (*ServerMaintenanceRefItem) DeepCopyInto

func (in *ServerMaintenanceRefItem) DeepCopyInto(out *ServerMaintenanceRefItem)

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

type ServerMaintenanceSpec

type ServerMaintenanceSpec struct {
	// Policy specifies the maintenance policy to be enforced on the server.
	// +optional
	Policy ServerMaintenancePolicy `json:"policy,omitempty"`

	// ServerRef is a reference to the server that is to be maintained.
	// +required
	ServerRef *corev1.LocalObjectReference `json:"serverRef"`

	// ServerPower specifies the power state of the server during maintenance.
	// +optional
	ServerPower Power `json:"serverPower,omitempty"`

	// ServerBootConfigurationTemplate specifies the boot configuration to be applied to the server during maintenance.
	// +optional
	ServerBootConfigurationTemplate *ServerBootConfigurationTemplate `json:"serverBootConfigurationTemplate,omitempty"`
}

ServerMaintenanceSpec defines the desired state of a ServerMaintenance

func (*ServerMaintenanceSpec) DeepCopy

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

func (*ServerMaintenanceSpec) DeepCopyInto

func (in *ServerMaintenanceSpec) DeepCopyInto(out *ServerMaintenanceSpec)

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

type ServerMaintenanceState

type ServerMaintenanceState string

ServerMaintenanceState specifies the current state of the server maintenance.

const (
	// ServerMaintenanceStatePending specifies that the server maintenance is pending.
	ServerMaintenanceStatePending ServerMaintenanceState = "Pending"
	// ServerMaintenanceStateInMaintenance specifies that the server is in maintenance.
	ServerMaintenanceStateInMaintenance ServerMaintenanceState = "InMaintenance"
	// ServerMaintenanceStateFailed specifies that the server maintenance has failed.
	ServerMaintenanceStateFailed ServerMaintenanceState = "Failed"
)

type ServerMaintenanceStatus

type ServerMaintenanceStatus struct {
	// State specifies the current state of the server maintenance.
	State ServerMaintenanceState `json:"state,omitempty"`
}

ServerMaintenanceStatus defines the observed state of a ServerMaintenance

func (*ServerMaintenanceStatus) DeepCopy

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

func (*ServerMaintenanceStatus) DeepCopyInto

func (in *ServerMaintenanceStatus) DeepCopyInto(out *ServerMaintenanceStatus)

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

type ServerPowerState

type ServerPowerState string

ServerPowerState defines the possible power states for a server.

const (
	// ServerOnPowerState indicates that the system is powered on.
	ServerOnPowerState ServerPowerState = "On"

	// ServerOffPowerState indicates that the system is powered off, although some components may
	// continue to have auxiliary power such as the management controller.
	ServerOffPowerState ServerPowerState = "Off"

	// ServerPausedPowerState indicates that the system is paused.
	ServerPausedPowerState ServerPowerState = "Paused"

	// ServerPoweringOnPowerState indicates a temporary state between Off and On.
	// This temporary state can be very short.
	ServerPoweringOnPowerState ServerPowerState = "PoweringOn"

	// ServerPoweringOffPowerState indicates a temporary state between On and Off.
	// The power off action can take time while the OS is in the shutdown process.
	ServerPoweringOffPowerState ServerPowerState = "PoweringOff"
)

type ServerSpec

type ServerSpec struct {
	// UUID is the unique identifier for the server.
	// Deprecated in favor of systemUUID.
	// +required
	UUID string `json:"uuid"`

	// SystemUUID is the unique identifier for the server.
	// +optional
	SystemUUID string `json:"systemUUID,omitempty"`

	// SystemURI is the unique URI for the server resource in REDFISH API.
	SystemURI string `json:"systemURI,omitempty"`

	// Power specifies the desired power state of the server.
	// +optional
	Power Power `json:"power,omitempty"`

	// IndicatorLED specifies the desired state of the server's indicator LED.
	// +optional
	IndicatorLED IndicatorLED `json:"indicatorLED,omitempty"`

	// ServerClaimRef is a reference to a ServerClaim object that claims this server.
	// This field is optional and can be omitted if no claim is associated with this server.
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:XValidation:rule="self == null || oldSelf == null || self == oldSelf",message="serverClaimRef cannot be switched directly"
	// +optional
	ServerClaimRef *v1.ObjectReference `json:"serverClaimRef,omitempty"`

	// ServerMaintenanceRef is a reference to a ServerMaintenance object that maintains this server.
	// +optional
	ServerMaintenanceRef *v1.ObjectReference `json:"serverMaintenanceRef,omitempty"`

	// BMCRef is a reference to the BMC object associated with this server.
	// This field is optional and can be omitted if no BMC is associated with this server.
	// +optional
	BMCRef *v1.LocalObjectReference `json:"bmcRef,omitempty"`

	// BMC contains the access details for the BMC.
	// This field is optional and can be omitted if no BMC access is specified.
	// +optional
	BMC *BMCAccess `json:"bmc,omitempty"`

	// BootConfigurationRef is a reference to a BootConfiguration object that specifies
	// the boot configuration for this server. This field is optional and can be omitted
	// if no boot configuration is specified.
	// +optional
	BootConfigurationRef *v1.ObjectReference `json:"bootConfigurationRef,omitempty"`

	// MaintenanceBootConfigurationRef is a reference to a BootConfiguration object that specifies
	// the boot configuration for this server during maintenance. This field is optional and can be omitted
	// +optional
	MaintenanceBootConfigurationRef *v1.ObjectReference `json:"maintenanceBootConfigurationRef,omitempty"`

	// BootOrder specifies the boot order of the server.
	// +optional
	BootOrder []BootOrder `json:"bootOrder,omitempty"`

	// BIOSSettingsRef is a reference to a biossettings object that specifies
	// the BIOS configuration for this server.
	// +optional
	BIOSSettingsRef *v1.LocalObjectReference `json:"biosSettingsRef,omitempty"`
}

ServerSpec defines the desired state of a Server.

func (*ServerSpec) DeepCopy

func (in *ServerSpec) DeepCopy() *ServerSpec

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

func (*ServerSpec) DeepCopyInto

func (in *ServerSpec) DeepCopyInto(out *ServerSpec)

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

type ServerState

type ServerState string

ServerState defines the possible states of a server.

const (
	// ServerStateInitial indicates that the server is in its initial state.
	ServerStateInitial ServerState = "Initial"

	// ServerStateDiscovery indicates that the server is in its discovery state.
	ServerStateDiscovery ServerState = "Discovery"

	// ServerStateAvailable indicates that the server is available for use.
	ServerStateAvailable ServerState = "Available"

	// ServerStateReserved indicates that the server is reserved for a specific use or user.
	ServerStateReserved ServerState = "Reserved"

	// ServerStateError indicates that there is an error with the server.
	ServerStateError ServerState = "Error"

	// ServerStateMaintenance indicates that the server is in maintenance.
	ServerStateMaintenance ServerState = "Maintenance"
)

type ServerStatus

type ServerStatus struct {
	// Manufacturer is the name of the server manufacturer.
	// +optional
	Manufacturer string `json:"manufacturer,omitempty"`

	// BIOSVersion is the version of the server's BIOS.
	BIOSVersion string `json:"biosVersion,omitempty"`

	// Model is the model of the server.
	// +optional
	Model string `json:"model,omitempty"`

	// SKU is the stock keeping unit identifier for the server.
	// +optional
	SKU string `json:"sku,omitempty"`

	// SerialNumber is the serial number of the server.
	// +optional
	SerialNumber string `json:"serialNumber,omitempty"`

	// PowerState represents the current power state of the server.
	// +optional
	PowerState ServerPowerState `json:"powerState,omitempty"`

	// IndicatorLED specifies the current state of the server's indicator LED.
	// +optional
	IndicatorLED IndicatorLED `json:"indicatorLED,omitempty"`

	// State represents the current state of the server.
	// +optional
	State ServerState `json:"state,omitempty"`

	// NetworkInterfaces is a list of network interfaces associated with the server.
	// +optional
	NetworkInterfaces []NetworkInterface `json:"networkInterfaces,omitempty"`

	// TotalSystemMemory is the total amount of memory in bytes available on the server.
	// +optional
	TotalSystemMemory *resource.Quantity `json:"totalSystemMemory,omitempty"`

	// Processors is a list of Processors associated with the server.
	// +optional
	Processors []Processor `json:"processors,omitempty"`

	// Storages is a list of storages associated with the server.
	// +optional
	Storages []Storage `json:"storages,omitempty"`

	// Conditions represents the latest available observations of the server's current state.
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}

ServerStatus defines the observed state of Server.

func (*ServerStatus) DeepCopy

func (in *ServerStatus) DeepCopy() *ServerStatus

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

func (*ServerStatus) DeepCopyInto

func (in *ServerStatus) DeepCopyInto(out *ServerStatus)

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

type SettingsFlowItem

type SettingsFlowItem struct {
	// Name identifies what this settings is doing
	// +required
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=1000
	Name string `json:"name"`

	// Settings contains software (eg: BIOS, BMC) settings as map
	// +optional
	Settings map[string]string `json:"settings,omitempty"`

	// Priority defines the order of applying the settings
	// any int greater than 0. lower number have higher Priority (ie; lower number is applied first)
	// +required
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=2147483645
	Priority int32 `json:"priority"`
}

func (*SettingsFlowItem) DeepCopy

func (in *SettingsFlowItem) DeepCopy() *SettingsFlowItem

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

func (*SettingsFlowItem) DeepCopyInto

func (in *SettingsFlowItem) DeepCopyInto(out *SettingsFlowItem)

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

type Storage

type Storage struct {
	// Name is the name of the storage interface.
	// +optional
	Name string `json:"name,omitempty"`

	// State specifies the state of the storage device.
	// +optional
	State StorageState `json:"state,omitempty"`

	// Volumes is a collection of volumes associated with this storage.
	// +optional
	Volumes []StorageVolume `json:"volumes,omitempty"`

	// Drives is a collection of drives associated with this storage.
	// +optional
	Drives []StorageDrive `json:"drives,omitempty"`
}

Storage defines the details of one storage device

func (*Storage) DeepCopy

func (in *Storage) DeepCopy() *Storage

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

func (*Storage) DeepCopyInto

func (in *Storage) DeepCopyInto(out *Storage)

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

type StorageDrive

type StorageDrive struct {
	// Name is the name of the storage interface.
	// +optional
	Name string `json:"name,omitempty"`

	// MediaType specifies the media type of the storage device.
	// +optional
	MediaType string `json:"mediaType,omitempty"`

	// Type specifies the type of the storage device.
	// +optional
	Type string `json:"type,omitempty"`

	// Capacity specifies the size of the storage device in bytes.
	// +optional
	Capacity *resource.Quantity `json:"capacity,omitempty"`

	// Vendor specifies the vendor of the storage device.
	// +optional
	Vendor string `json:"vendor,omitempty"`

	// Model specifies the model of the storage device.
	// +optional
	Model string `json:"model,omitempty"`

	// State specifies the state of the storage device.
	// +optional
	State StorageState `json:"state,omitempty"`
}

StorageDrive defines the details of one storage drive

func (*StorageDrive) DeepCopy

func (in *StorageDrive) DeepCopy() *StorageDrive

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

func (*StorageDrive) DeepCopyInto

func (in *StorageDrive) DeepCopyInto(out *StorageDrive)

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

type StorageState

type StorageState string

StorageState represents Storage states

const (
	// StorageStateEnabled indicates that the storage device is enabled.
	StorageStateEnabled StorageState = "Enabled"
	// StorageStateDisabled indicates that the storage device is disabled.
	StorageStateDisabled StorageState = "Disabled"
	// StorageStateAbsent indicates that the storage device is absent.
	StorageStateAbsent StorageState = "Absent"
)

type StorageVolume

type StorageVolume struct {
	// Name is the name of the storage interface.
	// +optional
	Name string `json:"name,omitempty"`

	// Capacity specifies the size of the storage device in bytes.
	// +optional
	Capacity *resource.Quantity `json:"capacity,omitempty"`

	// Status specifies the status of the volume.
	// +optional
	State StorageState `json:"state,omitempty"`

	// RAIDType specifies the RAID type of the associated Volume.
	// +optional
	RAIDType string `json:"raidType,omitempty"`

	// VolumeUsage specifies the volume usage type for the Volume.
	// +optional
	VolumeUsage string `json:"volumeUsage,omitempty"`
}

StorageVolume defines the details of one storage volume

func (*StorageVolume) DeepCopy

func (in *StorageVolume) DeepCopy() *StorageVolume

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

func (*StorageVolume) DeepCopyInto

func (in *StorageVolume) DeepCopyInto(out *StorageVolume)

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

type Task

type Task struct {
	// URI is the URI of the task created by the BMC for the BIOS upgrade.
	// +optional
	URI string `json:"URI,omitempty"`

	// State is the current state of the task.
	// +optional
	State redfish.TaskState `json:"state,omitempty"`

	// Status is the current status of the task.
	// +optional
	Status common.Health `json:"status,omitempty"`

	// PercentComplete is the percentage of completion of the task.
	// +optional
	PercentComplete int32 `json:"percentageComplete,omitempty"`
}

Task contains the status of the task created by the BMC for the BIOS upgrade.

func (*Task) DeepCopy

func (in *Task) DeepCopy() *Task

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

func (*Task) DeepCopyInto

func (in *Task) DeepCopyInto(out *Task)

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

type UpdatePolicy

type UpdatePolicy string
const (
	UpdatePolicyForce UpdatePolicy = "Force"
)

Jump to

Keyboard shortcuts

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