v1alpha1

package
v0.0.0-...-501a0da Latest Latest
Warning

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

Go to latest
Published: Jul 10, 2024 License: Apache-2.0 Imports: 8 Imported by: 3

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 (
	// 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"
)

Variables

View Source
var (
	// GroupVersion is 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 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.
	Protocol Protocol `json:"protocol"`

	// Endpoint is the address of the BMC endpoint.
	Endpoint string `json:"endpoint"`

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

type BMCSpec struct {
	// 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.
	EndpointRef v1.LocalObjectReference `json:"endpointRef"`

	// 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.
	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.
	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"`
}

BMCSpec defines the desired state of BMC

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})$`
	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
	IP IP `json:"ip,omitempty"`

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

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

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

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

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

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

	// PowerState represents the current power state of the BMC.
	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 ConsoleProtocol

type ConsoleProtocol struct {
	// Name specifies the name of the console protocol.
	// This could be a protocol such as "SSH", "Telnet", etc.
	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.
	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.
	MACAddress string `json:"macAddress"`
	// IP is the IP address of the endpoint.
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Schemaless
	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 (_ IP) OpenAPISchemaFormat() string

func (IP) OpenAPISchemaType

func (_ 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 (_ IPPrefix) OpenAPISchemaFormat() string

func (IPPrefix) OpenAPISchemaType

func (_ IPPrefix) OpenAPISchemaType() []string

func (IPPrefix) ToUnstructured

func (i IPPrefix) ToUnstructured() interface{}

func (*IPPrefix) UnmarshalJSON

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

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 NetworkInterface

type NetworkInterface struct {
	// Name is the name of the network interface.
	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
	IP IP `json:"ip"`

	// MACAddress is the MAC address of the network interface.
	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 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"`
}

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 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.
	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.
	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.
	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.
	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 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.
	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.
	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.
	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.
	IgnitionSecretRef *v1.LocalObjectReference `json:"ignitionSecretRef,omitempty"`

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

ServerClaimSpec defines the desired state of ServerClaim.

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.
	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 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.
	UUID string `json:"uuid"`

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

	// IndicatorLED specifies the desired state of the server's indicator LED.
	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.
	ServerClaimRef *v1.ObjectReference `json:"serverClaimRef,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.
	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.
	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.
	BootConfigurationRef *v1.ObjectReference `json:"bootConfigurationRef,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"

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

type ServerStatus

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

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

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

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

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

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

	// NetworkInterfaces is a list of network interfaces associated with the server.
	NetworkInterfaces []NetworkInterface `json:"networkInterfaces,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.

Jump to

Keyboard shortcuts

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