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.