This section lists the default workflows available in Workflow Hub for VMware Bare Metal Automation (BMA). These workflows are tested with VMware Telco Cloud Automation (TCA) 3.1. Infrastructure Automation workflows and BMA workflows are supported from the TCA 3.1 release onwards.

Parent Workflows

BMA Host imaging

Table 1. Description
Name Id
BMA Host Imaging bma-host-imaging

This workflow can be used to perform Host imaging via TCA WorkdlowHub using VMware Bare Metal Automation.

ESXi host imaging and PhotonOS host imaging are the supported usecases.

Table 2. Payload Details
Parameters Description
bma BMA IP
worker_group BMA Worker Group name
workflow_bundle_name

Workflow Bundle name - Path of Workflow

Eg:

  1. VMware_Bare_Metal_Automation_4_0
  2. bma_4_0/VMware_Bare_Metal_Automation_4_0
workflow_name Workflow name
authentication

Authentication to access BMA instance and APIs

authorization - "Its a fixed value as supported by BMA Platform"

username - BMA Username

password - Password to access the BMA

scope - BMA API privileges

host_imaging This section encapsulates all the attributes to be passed onto BMA for imaging
network_config The network configuration.

The supported values are dhcp and static.

  • If network_config is configured to dhcp,
    • you need not specify the host network details like host_ip, host_fqdn, netmask, gateway,dns_servers, and dns_suffixes.
    • the customer input provisioning specification should contain homogenous set of hosts only and every set of homogenous hosts runs using different imaging workflow. For example, one workflow instance for one set of homogenous hosts. You can present multiple hosts in the customer input specification only when network_device_name = vmnic*. The user can have only one host in the input specification, if network_device_name = MAC address.
  • If network_config is configured to static,
    • you must specify host network details like host_ip, host_fqdn, netmask, gateway, dns_servers, dns_suffixes.
    • the customer input specification can contain heterogenous set of hosts. For example, every host can have different values of network_device_name, vlanid and other host network details.
custom_tag Name to uniquely identify the Custom ISO Image name that is created for each host. This must be unique for every host presented. This parameter is not required to be presented if network_config is set to dhcp. Every block in the servers array section of the customer input specification must contain a custom_tag attribute and have a unique name assigned as value.
global tag Name to uniquely identify the global Custom ISO Image name that is created. This must be unique for every workflow (batch of hosts) presented. This parameter is not required to be presented if network_config is set to static.
network_device_name Specifies either the MAC address of the network card or the device name, in the form vmnicNN. For example, vmnic0. This option refers to the uplink device for the virtual switch.
host_fqdn Assign this attribute with complete FQDN of the host.
vlanid An ID String. (1-4094). This is the VLAN ID number.
host_root_password The password configured to access the host presented in the customer input specification after the imaging operation. You can access the host through SSH using this password.
servers It has the details of iDRAC/IMPI details and the details of the host with network configuration. It contains ipmi_ip, ipmi_username, ipmi_password as the mandatory fields. It also contains raid_level attribute which is configured on the iDRAC/IPMI which is optional.
secret_key Secret key used to decrypt password fields
iso_image_info This includes the VMware ISO image details about the location of the ISO image. This includes:
  • Web server IP address (server_ip)
  • Absolute path of the ISO image on the web server (image_location)
  • Location URL of the ISO image on the web server (image_url_path)
  • Name of the image (image_name)
  • Username to access the Web server (username)
  • Password to access the Web server (password)
  • Scheme/Protocol of the ISO image URL (image_url_scheme).

    Value can be either http or https.

  • Type of the Operating System to be installed on the host (os_type).

    Value is "esxi" for ESXi Host imaging, "photon" for PhotonOS host imaging

smtp_server_info This section includes the:
  • server_ip is the IP address of the SMTP server
  • port is the Port of the SMTP server
  • sender_address is the email address of the customer or machine which is responsible to send the workflow result to the customers or stakeholders.
  • recipient_mail_addresses: This section contains the email addresses of all the stakeholders to whom the workflow execution summary has to be sent.
  • username and password are optional for smtp_server_info section of the JSON file.
locusId Site identifier of the customer in TCSA context (Optional)
market Market name of the customer in TCSA context (Optional)
model Vendor model name in TCSA context (Optional)
region Region of the customer in TCSA context (Optional)
vendor Vendor name in TCSA context (Optional)
url TCSA Kafka URL with port number in TCSA context (Optional)
Table 3. BMA Host Imaging : Sample Payload
BMA Host Imaging
{
   "bma":"<ip address of BMA>",
   "worker_group":"<name of BMA worker group>",
   "workflow_bundle_name":"<name of the BMA workflow bundle>",
   "workflow_name":"<name of the BMA workflow>",
   "authentication":{
      "authorization":"<basic authentication to access BMA>",
      "username":"<bma username>",
      "password":"<bma password>",
      "scope":"read+write+execute"
   },
   "host_imaging":{
      "network_config":"<value of network configuration either dhcp or static>",
      "host_root_password":"<host root password>",
      "network_device_name":"<name of network device>",
      "global_tag":"<name of global ISO image>",
      "vlanid":0,
      "servers":[
         {
            "ipmi_ip":"<ip address of bare metal server>",
            "ipmi_username":"<username of bare metal server>",
            "ipmi_password":"<password of bare metal server>",
            "raid_level":0
         },
         {
            "ipmi_ip":"<ip address of bare metal server>",
            "ipmi_username":"<username of bare metal server>",
            "ipmi_password":"<password of bare metal server>",
            "raid_level":1
         }
      ],
      "secret_key":"<secret key used to decrypt password fields>",
      "iso_image_info":{
         "server_ip":"<ip address of web server>",
         "image_location":"<ip address of web server>",
         "image_url_scheme":"<URL scheme of web server>",
         "image_url_path":"<ISO image URL short path>",
         "image_name":"<ISO image name>",
         "username":"<username of web server>",
         "password":"<password of web server>",
         "os_type":"<type of operating system to be installed>"
      },
      "smtp_server_info":{
         "server_ip":"<ip address of SMTP server>",
         "port":"<port number of SMTP server>",
         "sender_address":"<email address of sender>",
         "recipient_mail_addresses":[
            "<email addresses of recipients>"
         ],
         "username":"<username of the SMTP server - optional>",
         "password":"<password of the SMTP server - optional>"
      }
   },
   "locusId":"<site identifier of the customer - optional>",
   "market":"<market name of the customer - optional>",
   "model":"<vendor model name - optional>",
   "region":"<region of the customer - optional>",
   "vendor":"<vendor name - optional>",
   "url":"<TCSA Kafka URL with port number - optional>"
}

BMA Server Information Collection

Table 4. Description
Name Id
Collect Server Information collect-server-information
This workflow can be used to collect bare metal server information via TCA WorkflowHub using VMware Bare Metal Automation.
Table 5. Payload Details
Parameters Description
authentication

Authentication to access BMA instance and APIs

authorization - "Its a fixed value as supported by BMA Platform"

username - BMA Username

password - Password to access the BMA

scope - BMA API privileges

bma BMA IP
iso_image_info This has web server details where the server information records will be stored. This includes:
  • Web server IP address (server_ip)
  • Username to access the Web server (username)
  • Password to access the Web server (password)
locusId Site identifier of the customer in TCSA context (Optional)
market Market name of the customer in TCSA context (Optional)
model Vendor model name in TCSA context (Optional)
region Region of the customer in TCSA context (Optional)
secret_key Secret key used to decrypt password fields
server_info_collection This section encapsulates all the attributes to be passed onto BMA for server information collection
servers It has the details of iDRAC/IMPI details. It contains ipmi_ip, ipmi_username, ipmi_password as the mandatory fields
smtp_server_info This section includes the:
  • server_ip is the IP address of the SMTP server
  • port is the Port of the SMTP server
  • sender_address is the email address of the customer or machine which is responsible to send the workflow result to the customers or stakeholders.
  • recipient_mail_addresses: This section contains the email addresses of all the stakeholders to whom the workflow execution summary has to be sent.
  • username and password are optional for smtp_server_info section of the JSON file.
url TCSA Kafka URL with port number in TCSA context (Optional)
vendor Vendor name in TCSA context (Optional)
worker_group BMA Worker Group name
workflow_bundle_name

Workflow Bundle name - Path of Workflow

Eg:

  1. VMware_Bare_Metal_Automation_4_0
  2. bma_4_0/VMware_Bare_Metal_Automation_4_0
workflow_name Workflow name
Table 6. Collect Server Information : Sample Payload
{
   "bma":"<ip address of BMA>",
   "worker_group":"<name of BMA worker group>",
   "workflow_bundle_name":"<name of the BMA workflow bundle>",
   "workflow_name":"<name of the BMA workflow>",
   "authentication":{
      "authorization":"<basic authentication to access BMA>",
      "username":"<bma username>",
      "password":"<bma password>",
      "scope":"read+write+execute"
   },
   "server_info_collection":{
      "servers":[
         {
            "ipmi_ip":"<ip address of bare metal server>",
            "ipmi_username":"<username of bare metal server>",
            "ipmi_password":"<password of bare metal server>"
         },
         {
            "ipmi_ip":"<ip address of bare metal server>",
            "ipmi_username":"<username of bare metal server>",
            "ipmi_password":"<password of bare metal server>"
         }
      ],
      "secret_key":"<secret key used to decrypt password fields>",
      "iso_image_info":{
         "server_ip":"<ip address of web server>",
         "username":"<username of web server>",
         "password":"<password of web server>"
      },
      "smtp_server_info":{
         "server_ip":"<ip address of SMTP server>",
         "port":"<port number of SMTP server>",
         "sender_address":"<email address of sender>",
         "recipient_mail_addresses":[
            "<email addresses of recipients>"
         ],
         "username":"<username of the SMTP server - optional>",
         "password":"<password of the SMTP server - optional>"
      }
   },
   "locusId":"<site identifier of the customer - optional>",
   "market":"<market name of the customer - optional>",
   "model":"<vendor model name - optional>",
   "region":"<region of the customer - optional>",
   "vendor":"<vendor name - optional>",
   "url":"<TCSA Kafka URL with port number - optional>"
}

BMA Firmware Update

Table 7. Description
Name Id
BMA Firmware Update bma-firmware-update
This workflow can be used to perform BIOS and firmware update on the bare metal server via TCA WorkflowHub using VMware Bare Metal Automation.
Table 8. Payload Details
Parameters Description
bma BMA IP
worker_group BMA Worker Group name
workflow_bundle_name

Workflow Bundle name - Path of Workflow

Eg:

  1. VMware_Bare_Metal_Automation_4_0
  2. bma_4_0/VMware_Bare_Metal_Automation_4_0
workflow_name Workflow name
authentication

Authentication to access BMA instance and APIs

authorization - "Its a fixed value as supported by BMA Platform"

username - BMA Username

password - Password to access the BMA

scope - BMA API privileges

firmware_update This section encapsulates all the attributes to be passed onto BMA for firmware update
system_images_location URL - HTTP/HTTPS location of the Firmware images on the Web server
servers It has the details of iDRAC/IMPI details. It contains ipmi_ip, ipmi_username, ipmi_password, images as the mandatory fields
secret_key Secret key used to decrypt password fields
smtp_server_info This section includes the:
  • server_ip is the IP address of the SMTP server
  • port is the Port of the SMTP server
  • sender_address is the email address of the customer or machine which is responsible to send the workflow result to the customers or stakeholders.
  • recipient_mail_addresses: This section contains the email addresses of all the stakeholders to whom the workflow execution summary has to be sent.
  • username and password are optional for smtp_server_info section of the JSON file.
locusId Site identifier of the customer in TCSA context (Optional)
market Market name of the customer in TCSA context (Optional)
model Vendor model name in TCSA context (Optional)
region Region of the customer in TCSA context (Optional)
vendor Vendor name in TCSA context (Optional)
url TCSA Kafka URL with port number in TCSA context (Optional)
Table 9. BMA Firmware Update : Sample Payload
{
   "bma":"<ip address of BMA>",
   "worker_group":"<name of BMA worker group>",
   "workflow_bundle_name":"<name of the BMA workflow bundle>",
   "workflow_name":"<name of the BMA workflow>",
   "authentication":{
      "authorization":"<basic authentication to access BMA>",
      "username":"<bma username>",
      "password":"<bma password>",
      "scope":"read+write+execute"
   },
   "firmware_update":{
      "system_images_location":"<URL - HTTP/HTTPS location of the Firmware images on the Web server>",
      "servers":[
         {
            "ipmi_ip":"<ip address of bare metal server>",
            "ipmi_username":"<username of bare metal server>",
            "ipmi_password":"<password of bare metal server>",
            "images":"<array of names of firmware images>"
         },
         {
            "ipmi_ip":"<ip address of bare metal server>",
            "ipmi_username":"<username of bare metal server>",
            "ipmi_password":"<password of bare metal server>",
            "images":"<array of names of firmware images>"
         }
      ],
      "secret_key":"<secret key used to decrypt password fields>",
      "smtp_server_info":{
         "server_ip":"<ip address of SMTP server>",
         "port":"<port number of SMTP server>",
         "sender_address":"<email address of sender>",
         "recipient_mail_addresses":[
            "<email addresses of recipients>"
         ],
         "username":"<username of the SMTP server - optional>",
         "password":"<password of the SMTP server - optional>"
      }
   },
   "locusId":"<site identifier of the customer - optional>",
   "market":"<market name of the customer - optional>",
   "model":"<vendor model name - optional>",
   "region":"<region of the customer - optional>",
   "vendor":"<vendor name - optional>",
   "url":"<TCSA Kafka URL with port number - optional>"
}