1 apiVersion: apiextensions.k8s.io/v1beta1
2 kind: CustomResourceDefinition
4 name: baremetalhosts.metal3.io
6 additionalPrinterColumns:
7 - JSONPath: .status.operationalStatus
8 description: Operational status
11 - JSONPath: .status.provisioning.state
12 description: Provisioning status
13 name: Provisioning Status
15 - JSONPath: .spec.consumerRef.name
16 description: Consumer using this host
19 - JSONPath: .spec.bmc.address
20 description: Address of management controller
23 - JSONPath: .status.hardwareProfile
24 description: The type of hardware detected
25 name: Hardware Profile
27 - JSONPath: .spec.online
28 description: Whether the host is online or not
31 - JSONPath: .status.errorMessage
32 description: Most recent error
38 listKind: BareMetalHostList
39 plural: baremetalhosts
43 singular: baremetalhost
49 description: BareMetalHost is the Schema for the baremetalhosts API
52 description: 'APIVersion defines the versioned schema of this representation
53 of an object. Servers should convert recognized schemas to the latest
54 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
57 description: 'Kind is a string value representing the REST resource this
58 object represents. Servers may infer this from the endpoint the client
59 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
64 description: BareMetalHostSpec defines the desired state of BareMetalHost
67 description: How do we connect to the BMC?
70 description: Address holds the URL for accessing the controller
74 description: The name of the secret containing the BMC credentials
75 (requires keys "username" and "password").
77 disableCertificateVerification:
78 description: DisableCertificateVerification disables verification
79 of server certificates when using HTTPS to connect to the BMC.
80 This is required when the server certificate is self-signed, but
81 is insecure because it allows a man-in-the-middle to intercept
89 description: Which MAC address will PXE boot? This is optional for some
90 types, but required for libvirt VMs driven by vbmc.
91 pattern: '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'
94 description: ConsumerRef can be used to store information about something
95 that is using a host. When it is not empty, the host is considered
99 description: API version of the referent.
102 description: 'If referring to a piece of an object instead of an
103 entire object, this string should contain a valid JSON/Go field
104 access statement, such as desiredState.manifest.containers[2].
105 For example, if the object reference is to a container within
106 a pod, this would take on a value like: "spec.containers{name}"
107 (where "name" refers to the name of the container that triggered
108 the event) or if no container name is specified "spec.containers[2]"
109 (container with index 2 in this pod). This syntax is chosen only
110 to have some well-defined way of referencing a part of an object.
111 TODO: this design is not final and this field is subject to change
115 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
118 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
121 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
124 description: 'Specific resourceVersion to which this reference is
125 made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
128 description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
132 description: Description is a human-entered text used to help identify
135 externallyProvisioned:
136 description: ExternallyProvisioned means something else is managing
137 the image running on the host and the operator should only manage
138 the power status and hardware inventory inspection. If the Image field
139 is filled in, this field is ignored.
142 description: What is the name of the hardware profile for this host?
143 It should only be necessary to set this when inspection cannot automatically
144 determine the profile.
147 description: Image holds the details of the image to be provisioned.
150 description: Checksum is the checksum for the image.
153 description: URL is a location of an image to deploy.
160 description: NetworkData holds the reference to the Secret containing
161 content of network_data.json which is passed to Config Drive
164 description: Name is unique within a namespace to reference a secret
168 description: Namespace defines the space within which the secret
173 description: Should the server be online?
176 description: Taints is the full, authoritative list of taints to apply
177 to the corresponding Machine. This list will overwrite any modifications
178 made to the Machine on an ongoing basis.
180 description: The node this Taint is attached to has the "effect" on
181 any pod that does not tolerate the Taint.
184 description: Required. The effect of the taint on pods that do
185 not tolerate the taint. Valid effects are NoSchedule, PreferNoSchedule
189 description: Required. The taint key to be applied to a node.
192 description: TimeAdded represents the time at which the taint
193 was added. It is only written for NoExecute taints.
197 description: Required. The taint value corresponding to the taint
206 description: UserData holds the reference to the Secret containing the
207 user data to be passed to the host before it boots.
210 description: Name is unique within a namespace to reference a secret
214 description: Namespace defines the space within which the secret
222 description: BareMetalHostStatus defines the observed state of BareMetalHost
225 description: the last error message reported by the provisioning subsystem
228 description: ErrorType indicates the type of failure encountered when
229 the OperationalStatus is OperationalStatusError
234 - power management error
237 description: the last credentials we were able to validate as working
240 description: SecretReference represents a Secret Reference. It has
241 enough information to retrieve secret in any namespace
244 description: Name is unique within a namespace to reference
248 description: Namespace defines the space within which the secret
256 description: The hardware discovered to exist on the host.
259 description: CPU describes one processor on the host.
264 description: ClockSpeed is a clock speed in MHz
281 description: Firmware describes the firmware on the host.
284 description: The BIOS for this firmware
287 description: The release/build date for this BIOS
290 description: The vendor name for this BIOS
293 description: The version of the BIOS
307 description: NIC describes one network interface on the host.
310 description: The IP address of the device
313 description: The device MAC addr
314 pattern: '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'
317 description: The name of the model, e.g. "virt-io"
320 description: The name of the NIC, e.g. "nic-1"
323 description: Whether the NIC is PXE Bootable
326 description: The speed of the device
329 description: The untagged VLAN ID
333 description: The VLANs available
335 description: VLAN represents the name and ID of a VLAN
338 description: VLANID is a 12-bit 802.1Q VLAN identifier
361 description: Storage describes one storage device (disk, SSD,
365 description: The SCSI location of the device
368 description: Hardware model
371 description: A name for the disk, e.g. "disk 1 (boot)"
374 description: Whether this disk represents rotational storage
377 description: The serial number of the device
380 description: The size of the disk in Bytes
384 description: The name of the vendor of the device
387 description: The WWN of the device
390 description: The WWN Vendor extension of the device
393 description: The WWN with the extension
403 description: HardwareSystemVendor stores details about the whole
427 description: The name of the profile matching the hardware details.
430 description: LastUpdated identifies when this status was last observed.
434 description: OperationHistory holds information about operations performed
438 description: OperationMetric contains metadata about an operation
439 (inspection, provisioning, etc.) used for tracking metrics.
451 description: OperationMetric contains metadata about an operation
452 (inspection, provisioning, etc.) used for tracking metrics.
464 description: OperationMetric contains metadata about an operation
465 (inspection, provisioning, etc.) used for tracking metrics.
477 description: OperationMetric contains metadata about an operation
478 (inspection, provisioning, etc.) used for tracking metrics.
491 description: OperationalStatus holds the status of the host
499 description: indicator for whether or not the host is powered on
502 description: Information tracked by the provisioner.
505 description: The machine's UUID from the underlying provisioning
509 description: Image holds the details of the last image successfully
510 provisioned to the host.
513 description: Checksum is the checksum for the image.
516 description: URL is a location of an image to deploy.
523 description: An indiciator for what the provisioner is doing with
531 description: the last credentials we sent to the provisioning backend
534 description: SecretReference represents a Secret Reference. It has
535 enough information to retrieve secret in any namespace
538 description: Name is unique within a namespace to reference
542 description: Namespace defines the space within which the secret