Baremetal hosts information
In order to make the framework aware of the existence of external baremetal nodes that should be taken into consideration the user should provide details about those nodes.
Tip
For fully virtualized environments the framework automatically generates these details for the user.
Structure
The BM hosts details are stored in the cifmw_baremetal_hosts
variable that,
if not passed to the ansible-playbook
command, is fetched from
~/ci-framework-data/parameters/baremetal-info.yml
.
The structure of that variable is the following:
cifmw_baremetal_hosts:
compute-0:
# Mandatory if credentials_file is missing:
# (string) The BMC password of the host
password: password
# Mandatory if credentials_file is missing:
# (string) The BMC username of the host
username: user
# Mandatory if user/password are missing
# (string) A path to a yaml file containing the
# the username and password fields
credentials_file: /path/to/credentials.yaml
# Mandatory: (string) The BMC connection URL
# The format should be: <proto>://host:port
connection: idrac://host-bmc.example.local
# Mandatory: (string) The type of boot of the host
# One of: UEFI, UEFISecureBoot, or legacy
boot_mode: UEFI
# Optional: (list) Of dicts with the mac address of each
# network interface.
nics:
- mac: "aa:bb:cc:dd:ee:ff"
# The provisioning network nic is used for Metal3 BMH
# bootMACAddress field rendering.
network: provisioning
# Optional: (string) The state of the machine
status: running
# Optional: (string) The storage device to use for provisioning.
root_device_hint: /dev/sda
# Optional: (string) The field to be used as rootHint. Defaults
# to the cifmw_deploy_bmh_root_device_hint_field.
root_device_hint_field: deviceName
# Optional: (dict) Nmstate to apply to the host when provisioned
nmstate:
# interfaces: # Sample nmstate state snippet
# - name: enp6s0f0.161
compute-1:
# Another BM host