212 lines
9.0 KiB
YAML
212 lines
9.0 KiB
YAML
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.12.1
|
|
labels:
|
|
clusterctl.cluster.x-k8s.io: ""
|
|
name: hardwaredata.metal3.io
|
|
spec:
|
|
group: metal3.io
|
|
names:
|
|
kind: HardwareData
|
|
listKind: HardwareDataList
|
|
plural: hardwaredata
|
|
shortNames:
|
|
- hd
|
|
singular: hardwaredata
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- description: Time duration since creation of HardwareData
|
|
jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: HardwareData is the Schema for the hardwaredata API.
|
|
properties:
|
|
apiVersion:
|
|
description: 'APIVersion defines the versioned schema of this representation
|
|
of an object. Servers should convert recognized schemas to the latest
|
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
|
type: string
|
|
kind:
|
|
description: 'Kind is a string value representing the REST resource this
|
|
object represents. Servers may infer this from the endpoint the client
|
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: HardwareDataSpec defines the desired state of HardwareData.
|
|
properties:
|
|
hardware:
|
|
description: The hardware discovered on the host during its inspection.
|
|
properties:
|
|
cpu:
|
|
description: CPU describes one processor on the host.
|
|
properties:
|
|
arch:
|
|
type: string
|
|
clockMegahertz:
|
|
description: ClockSpeed is a clock speed in MHz
|
|
format: double
|
|
type: number
|
|
count:
|
|
type: integer
|
|
flags:
|
|
items:
|
|
type: string
|
|
type: array
|
|
model:
|
|
type: string
|
|
type: object
|
|
firmware:
|
|
description: Firmware describes the firmware on the host.
|
|
properties:
|
|
bios:
|
|
description: The BIOS for this firmware
|
|
properties:
|
|
date:
|
|
description: The release/build date for this BIOS
|
|
type: string
|
|
vendor:
|
|
description: The vendor name for this BIOS
|
|
type: string
|
|
version:
|
|
description: The version of the BIOS
|
|
type: string
|
|
type: object
|
|
type: object
|
|
hostname:
|
|
type: string
|
|
nics:
|
|
items:
|
|
description: NIC describes one network interface on the host.
|
|
properties:
|
|
ip:
|
|
description: The IP address of the interface. This will
|
|
be an IPv4 or IPv6 address if one is present. If both
|
|
IPv4 and IPv6 addresses are present in a dual-stack environment,
|
|
two nics will be output, one with each IP.
|
|
type: string
|
|
mac:
|
|
description: The device MAC address
|
|
pattern: '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'
|
|
type: string
|
|
model:
|
|
description: The vendor and product IDs of the NIC, e.g.
|
|
"0x8086 0x1572"
|
|
type: string
|
|
name:
|
|
description: The name of the network interface, e.g. "en0"
|
|
type: string
|
|
pxe:
|
|
description: Whether the NIC is PXE Bootable
|
|
type: boolean
|
|
speedGbps:
|
|
description: The speed of the device in Gigabits per second
|
|
type: integer
|
|
vlanId:
|
|
description: The untagged VLAN ID
|
|
format: int32
|
|
maximum: 4094
|
|
minimum: 0
|
|
type: integer
|
|
vlans:
|
|
description: The VLANs available
|
|
items:
|
|
description: VLAN represents the name and ID of a VLAN.
|
|
properties:
|
|
id:
|
|
description: VLANID is a 12-bit 802.1Q VLAN identifier
|
|
format: int32
|
|
maximum: 4094
|
|
minimum: 0
|
|
type: integer
|
|
name:
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: array
|
|
ramMebibytes:
|
|
type: integer
|
|
storage:
|
|
items:
|
|
description: Storage describes one storage device (disk, SSD,
|
|
etc.) on the host.
|
|
properties:
|
|
alternateNames:
|
|
description: A list of alternate Linux device names of the
|
|
disk, e.g. "/dev/sda". Note that this list is not exhaustive,
|
|
and names may not be stable across reboots.
|
|
items:
|
|
type: string
|
|
type: array
|
|
hctl:
|
|
description: The SCSI location of the device
|
|
type: string
|
|
model:
|
|
description: Hardware model
|
|
type: string
|
|
name:
|
|
description: A Linux device name of the disk, e.g. "/dev/disk/by-path/pci-0000:01:00.0-scsi-0:2:0:0".
|
|
This will be a name that is stable across reboots if one
|
|
is available.
|
|
type: string
|
|
rotational:
|
|
description: Whether this disk represents rotational storage.
|
|
This field is not recommended for usage, please prefer
|
|
using 'Type' field instead, this field will be deprecated
|
|
eventually.
|
|
type: boolean
|
|
serialNumber:
|
|
description: The serial number of the device
|
|
type: string
|
|
sizeBytes:
|
|
description: The size of the disk in Bytes
|
|
format: int64
|
|
type: integer
|
|
type:
|
|
description: 'Device type, one of: HDD, SSD, NVME.'
|
|
enum:
|
|
- HDD
|
|
- SSD
|
|
- NVME
|
|
type: string
|
|
vendor:
|
|
description: The name of the vendor of the device
|
|
type: string
|
|
wwn:
|
|
description: The WWN of the device
|
|
type: string
|
|
wwnVendorExtension:
|
|
description: The WWN Vendor extension of the device
|
|
type: string
|
|
wwnWithExtension:
|
|
description: The WWN with the extension
|
|
type: string
|
|
type: object
|
|
type: array
|
|
systemVendor:
|
|
description: HardwareSystemVendor stores details about the whole
|
|
hardware system.
|
|
properties:
|
|
manufacturer:
|
|
type: string
|
|
productName:
|
|
type: string
|
|
serialNumber:
|
|
type: string
|
|
type: object
|
|
type: object
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources: {}
|