Documentation
¶
Index ¶
- type BootInfoType
- type CPUType
- type ConfigurationType
- type ExtraDataItem
- type ExtraDataSection
- type ExtraDataType
- type HardwareManager
- type InterfaceType
- type InventoryType
- type LLDPTLVType
- type MemoryType
- type NUMACPU
- type NUMANIC
- type NUMARAM
- type NUMATopology
- type ParsedLLDP
- type ProcessedInterfaceType
- type RootDiskType
- type StandardPluginData
- type SystemFirmwareType
- type SystemVendorType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BootInfoType ¶
type ConfigurationType ¶
type ConfigurationType struct { // Collectors is a list of enabled collectors - ramdisk-side inspection // plugins that populated the plugin data. Collectors []string `json:"collectors"` // Managers is a list of hardware managers - ramdisk-side plugins that // implement all actions, such as writing images or collecting // inventory. Managers []HardwareManager `json:"managers"` }
type ExtraDataItem ¶
type ExtraDataSection ¶
type ExtraDataSection map[string]ExtraDataItem
type ExtraDataType ¶
type ExtraDataType struct { CPU ExtraDataSection `json:"cpu"` Disk ExtraDataSection `json:"disk"` Firmware ExtraDataSection `json:"firmware"` IPMI ExtraDataSection `json:"ipmi"` Memory ExtraDataSection `json:"memory"` Network ExtraDataSection `json:"network"` System ExtraDataSection `json:"system"` }
type HardwareManager ¶
type InterfaceType ¶
type InterfaceType struct { BIOSDevName string `json:"biosdevname"` ClientID string `json:"client_id"` HasCarrier bool `json:"has_carrier"` IPV4Address string `json:"ipv4_address"` IPV6Address string `json:"ipv6_address"` MACAddress string `json:"mac_address"` Name string `json:"name"` Product string `json:"product"` SpeedMbps int `json:"speed_mbps"` Vendor string `json:"vendor"` }
type InventoryType ¶
type InventoryType struct { BmcAddress string `json:"bmc_address"` Boot BootInfoType `json:"boot"` CPU CPUType `json:"cpu"` Disks []RootDiskType `json:"disks"` Interfaces []InterfaceType `json:"interfaces"` Memory MemoryType `json:"memory"` SystemVendor SystemVendorType `json:"system_vendor"` Hostname string `json:"hostname"` }
type LLDPTLVType ¶
func (*LLDPTLVType) UnmarshalJSON ¶
func (r *LLDPTLVType) UnmarshalJSON(data []byte) error
UnmarshalJSON interprets an LLDP TLV [key, value] pair as an LLDPTLVType structure
type MemoryType ¶
type NUMATopology ¶
type ParsedLLDP ¶
type ProcessedInterfaceType ¶
type ProcessedInterfaceType struct { InterfaceType // Whether PXE was enabled on this interface during inspection PXEEnabled bool `json:"pxe_enabled"` }
type RootDiskType ¶
type RootDiskType struct { Hctl string `json:"hctl"` Model string `json:"model"` Name string `json:"name"` ByPath string `json:"by_path"` Rotational bool `json:"rotational"` Serial string `json:"serial"` Size int64 `json:"size"` Vendor string `json:"vendor"` Wwn string `json:"wwn"` WwnVendorExtension string `json:"wwn_vendor_extension"` WwnWithExtension string `json:"wwn_with_extension"` }
type StandardPluginData ¶
type StandardPluginData struct { AllInterfaces map[string]ProcessedInterfaceType `json:"all_interfaces"` BootInterface string `json:"boot_interface"` Configuration ConfigurationType `json:"configuration"` Error string `json:"error"` Extra ExtraDataType `json:"extra"` MACs []string `json:"macs"` NUMATopology NUMATopology `json:"numa_topology"` ParsedLLDP map[string]ParsedLLDP `json:"parsed_lldp"` RawLLDP map[string][]LLDPTLVType `json:"lldp_raw"` RootDisk RootDiskType `json:"root_disk"` ValidInterfaces map[string]ProcessedInterfaceType `json:"valid_interfaces"` }
StandardPluginData represents the plugin data as collected and processes by a standard ramdisk and a standard Ironic deployment. The format and contents of the stored data depends on the ramdisk used and plugins enabled both in the ramdisk and in inspector itself. This structure has been provided for basic compatibility but it will need extensions.
type SystemFirmwareType ¶
type SystemVendorType ¶
type SystemVendorType struct { Manufacturer string `json:"manufacturer"` ProductName string `json:"product_name"` SerialNumber string `json:"serial_number"` Firmware SystemFirmwareType `json:"firmware"` }
Click to show internal directories.
Click to hide internal directories.