Documentation ¶
Index ¶
Constants ¶
View Source
const ( // Dell specific component slugs SlugDellSystemCPLD = "Dell System CPLD" SlugDellBossAdapter = "Boss Adapter" SlugDellIdracServiceModule = "IDrac Service Module" SlugDellBossAdapterDisk0 = "Boss Adapter - Disk 0" SlugDellBossAdapterDisk1 = "Boss Adapter - Disk 1" SlugDellLifeCycleController = "Lifecycle Controller" SlugDellOSCollector = "OS Collector" SlugDell64bitUefiDiagnostics = "Dell 64 bit uEFI diagnostics" SlugDellBackplaneExpander = "Backplane-Expander" SlugDellNonExpanderStorageBackplane = "Non-Expander Storage Backplane (SEP)" // EnvDellDSURelease is the Dell DSU release version // // e.g: 21.11.12 from https://linux.dell.com/repo/hardware/DSU_21.11.12/ EnvDellDSURelease = "DELL_DSU_RELEASE" // EnvDellDSUVersion is the Dell DSU utility package version // // e.g: 1.9.2.0-21.07.00 from https://linux.dell.com/repo/hardware/DSU_21.11.12/os_independent/x86_64/dell-system-update-1.9.2.0-21.07.00.x86_64.rpm EnvDellDSUVersion = "DELL_DSU_VERSION" // EnvDNFDisableGPGCheck disables GPG checks in DNF package installs EnvDNFDellDisableGPGCheck = "DNF_DISABLE_GPG_CHECK" // EnvUpdateStoreURL defines up the update store base URL prefix EnvUpdateBaseURL = "UPDATE_BASE_URL" )
Variables ¶
View Source
var ( // OemComponentDell is a lookup table for dell OEM components // these components are specific to the OEMs - in this case Dell OemComponentDell = map[string]struct{}{ SlugDellSystemCPLD: {}, common.SlugBackplaneExpander: {}, SlugDellIdracServiceModule: {}, SlugDellBossAdapterDisk0: {}, SlugDellBossAdapterDisk1: {}, SlugDellBossAdapter: {}, SlugDellLifeCycleController: {}, SlugDellNonExpanderStorageBackplane: {}, SlugDellOSCollector: {}, SlugDell64bitUefiDiagnostics: {}, } // DellComponentSlug is an ordered list of of dell component identifiers to component slug // To identify components correctly, if two components contain a similar string // e.g: "idrac", "dell emc idrac service module" the latter should be positioned before the former in the list. DellComponentSlug = [][]string{ {"bios", common.SlugBIOS}, {"ethernet", common.SlugNIC}, {"dell emc idrac service module", SlugDellIdracServiceModule}, {"idrac", common.SlugBMC}, {"backplane", common.SlugBackplaneExpander}, {"power supply", common.SlugPSU}, {"hba330", common.SlugStorageController}, {"nvmepcissd", common.SlugDrive}, {"system cpld", SlugDellSystemCPLD}, {"sep firmware", SlugDellNonExpanderStorageBackplane}, {"lifecycle controller", SlugDellLifeCycleController}, {"os collector", SlugDellOSCollector}, {"disk 0 of boss adapter", SlugDellBossAdapterDisk0}, {"disk 1 of boss adapter", SlugDellBossAdapterDisk1}, {"boss", SlugDellBossAdapter}, {"dell 64 bit uefi diagnostics", SlugDell64bitUefiDiagnostics}, {"integrated dell remote access controller", common.SlugBMC}, } ErrTypeComponentFirmware = errors.New("ironlib.GetComponentFirmware() was passed an object type which is not handled") )
Functions ¶
func DriveTypeSlug ¶
func FormatProductName ¶
Return a normalized product name given a product name
func UpdateReleaseEnvironments ¶
func UpdateReleaseEnvironments() []string
UpdateReleaseEnvironments is the list of update environments this is related to the fup tooling
Types ¶
type CollectorUtility ¶ added in v0.2.4
type CollectorUtility string
CollectorUtility is the name of a utility defined in utils/
type Component ¶
type Component struct { Serial string `json:"serial"` Vendor string `json:"vendor"` Type string `json:"type"` Model string `json:"model"` Name string `json:"name"` Slug string `json:"slug"` FirmwareInstalled string `json:"firmware_installed"` // The firmware revision installed FirmwareAvailable string `json:"firmware_available"` // The firmware revision available Metadata map[string]string `json:"metadata"` // Additional metadata if any Oem bool `json:"oem"` // Component is an OEM component FirmwareManaged bool `json:"firmware_managed"` // Firmware on the component is managed/unmanaged }
Component is a low level device component - before its classified into a device type (BMC{}, BIOS{}, NIC{})
type CreateVirtualDiskOptions ¶ added in v0.2.0
type DestroyVirtualDiskOptions ¶ added in v0.2.0
type DestroyVirtualDiskOptions struct {
VirtualDiskID int
}
type Hardware ¶
type Hardware struct { PendingReboot bool // set when the device requires a reboot after running an upgrade UpdatesInstalled bool // set when updates were installed on the device UpdatesAvailable int // -1 == no update lookup as yet, 0 == no updates available, 1 == updates available Device *common.Device OemComponents *OemComponents // OemComponents hold OEM specific components that may not show up in dmidecode/lshw and other collectors. }
Hardware is a base struct that various providers inherit
func NewHardware ¶
NewHardware returns the base Hardware struct that various providers inherit
type OemComponents ¶
type OemComponents struct {
Dell []*Component `json:"dell"`
}
OemComponents are OEM specific device components
type UpdateOptions ¶
type UpdateOptions struct { AllowDowngrade bool // Allow firmware to be downgraded InstallAll bool // Install all available updates (vendor tooling like DSU fetches the updates and installs them) DownloadOnly bool // Only download updates, skip install - Works with InstallAll (where updates are fetched by the vendor tooling) Serial string Vendor string Model string Name string Slug string UpdateFile string // Location of the UpdateFile to be installed InstallerVersion string // The all available updates installer version (specific to dell DSU) RepositoryVersion string // The update repository version to activate when defined BaseURL string // The BaseURL for the updates }
UpdateOptions sets firmware update options for a device component
Click to show internal directories.
Click to hide internal directories.