This patch adds the ability to detect and manage GPU and Disk expansion
bays, and either add their internal components into the device
corresponding to the blade server, or into a dedicated device.
It takes advantage of the work made by @cyrinux on GPU bays management, and
applies the same principle to the external disk bays, but harmonize the
inventory management:
- If no argument is specified on the command line, the GPU cards, RAID
controllers and their attached disks are added in the blade device,
and the device corresponding to an expansion device is deleted.
- If the `--expansion-as-device` option is specified on the command
line, a dedicated device corresponding to the expansion bay is
created, and the GPUs, RAID card and attached disks are removed from
the blade device and added to the expansion device.
* When nvme binary absent or too old and no json output, this crash the inventory, i prefer just pass nvme inventory and continue
* log if nvme-cli is not installed
* Add "ProLiant BL460c Gen10 Graphics Exp"
* Add GPU expansion support for HP_ProLiant_BL460c_Gen10_Graphics_Exp
* Add ProLiant BL460c Graphics Expansion Blade support in README
* Dont crash if vendor other than HP
* Typo
* Adds support for:
* sets the tenant for IP addresses and Devices.
* setting device tags
* setting the blade, chassis, and server roles.
Co-authored-by: Thomas Davis <tdavis@nersc.gov>
Co-authored-by: Solvik <solvik@solvik.fr>
* Some messages about the cache for example, with indentation level 0 break the parsing.
I ignore line indentation if indentation level and line dont match REGEXP_CONTROLLER_HP.
```bash
DC1|server-01:~# hpacucli ctrl all show detail
Smart Array P244br in Slot 0 (Embedded)
A cache backup failure has occurred. Please execute the "reenablecache" command
to enable the cache. Your controller may require a reboot after the operation
to complete the cache recovery process.
Bus Interface: PCI
Slot: 0
Serial Number: PDZVU0WLM241FP
Cache Serial Number: PDZVU0WLM241FP
RAID 6 (ADG) Status: Enabled
Controller Status: OK
Hardware Revision: B
Firmware Version: 7.00-0
...
```
* Remove whitespace
Add ability to create Virtual Machine in netbox with an auto-detecting feature (currently VirtualBox, Xen, Hyper-V, VMWare, GCP)
One caveat, I made the choice not to report the disk as Netbox model allow only one size but VM often have multiples.
Also, lot of code refactoring to be able to use create_or_update function style, fixing a lot of corner case