bmc

State module for BMC (Baseboard Management Controller) hardware.

Idempotent states for power control and boot-device override. The underlying transport (Redfish, IPMI, or auto-detect) is selected per profile in pillar — see saltext.bmc.utils.backend for details.

Example SLS:

bmc-host-01-boot:
  bmc.boot_device:
    - name: bmc-host-01
    - device: http
    - persistent: false

bmc-host-01-power:
  bmc.powered:
    - name: bmc-host-01
    - power: 'on'
saltext.bmc.states.bmc.powered(name: str, power, **conn) dict[source]

Ensure the BMC’s host is powered on or off.

Parameters:
  • name (str) – BMC profile name (key under saltext.bmc:profiles) or arbitrary identifier when explicit connection kwargs are supplied.

  • power – Desired state: 'on' or 'off' (also accepts bool/0/1).

Connection kwargs (host, username, password, verify_ssl) may be passed through; otherwise the pillar profile under name is used.

my-host-power:
  bmc.powered:
    - name: bmc-host-01
    - power: 'on'
saltext.bmc.states.bmc.boot_device(name: str, device: str, persistent: bool = False, **conn) dict[source]

Ensure the BMC has the given boot-device override configured.

Parameters:
  • name (str) – BMC profile name.

  • device (str) – One of disk, pxe, http, bios, cd, usb, none.

  • persistent (bool) – True for Continuous, False for Once.

my-host-boot:
  bmc.boot_device:
    - name: bmc-host-01
    - device: http
    - persistent: false