Add new Redfish boot_table_redfish.json file
This is currently not used but as a future stagging boot table for
redfish when REST is disable upstream. If needed to use this boot
table, user can key in as from command line:
-v BOOT_TABLE_PATH:data/boot_table_redfish.json
Signed-off-by: Michael Shepos <shepos@us.ibm.com>
Change-Id: I6bab4cdc399533d9bb797a7e6c12f72df99a22bc
diff --git a/data/boot_table_redfish.json b/data/boot_table_redfish.json
new file mode 100644
index 0000000..d406c6c
--- /dev/null
+++ b/data/boot_table_redfish.json
@@ -0,0 +1,689 @@
+{
+ # Power on boot types:
+
+ # Initiate a power on using the Redfish API interface.
+ "Redfish Power On": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Redfish Power Operation On",
+ "lib_file_path": "bmc_redfish_utils.robot"
+ },
+ # Initiate a power on using the IPMI interface.
+ "IPMI Power On": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command power on -N 10 -R 1",
+ "lib_file_path": "ipmi_client.robot"
+ },
+
+ # Power off boot types:
+
+ # Initiate a power off using the Redfish API interface.
+ "Redfish Power Off": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$",
+ "os_ping": "^0$",
+ "os_login": "^0$",
+ "os_run_cmd": "^0$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Redfish Power Operation GracefulShutdown",
+ "lib_file_path": "bmc_redfish_utils.robot"
+ },
+ # Initiate a hard power off using the Redfish API interface.
+ "Redfish Hard Power Off": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$",
+ "os_ping": "^0$",
+ "os_login": "^0$",
+ "os_run_cmd": "^0$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Redfish Power Operation ForceOff",
+ "lib_file_path": "bmc_redfish_utils.robot"
+ },
+ # Initiate a power off using the IPMI interface.
+ "IPMI Power Off": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$",
+ "os_ping": "^0$",
+ "os_login": "^0$",
+ "os_run_cmd": "^0$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command power off -N 10 -R 1",
+ "lib_file_path": "ipmi_client.robot"
+ },
+ # Initiate a power soft using the IPMI interface.
+ "IPMI Power Soft": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$",
+ "os_ping": "^0$",
+ "os_login": "^0$",
+ "os_run_cmd": "^0$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command power soft -N 10 -R 1",
+ "lib_file_path": "ipmi_client.robot"
+ },
+ # Run a "shutdown" command on the OS_HOST.
+ "Host Power Off": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$",
+ "os_ping": "^0$",
+ "os_login": "^0$",
+ "os_run_cmd": "^0$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "utils.Initiate OS Host Power Off",
+ "lib_file_path": "utils.robot"
+ },
+
+ # OBMC re-boot boot types:
+
+ # APOR - Auto Power On Restart - Note that this is functionally equivalent
+ # to 'PDU AC Cycle (run)'.
+ "APOR": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Set Global Variable ${PDU_TYPE} pdu ; Set Global Variable ${PDU_IP} ${PDU_HOST} ; PDU Power Cycle",
+ "lib_file_path": "pdu/pdu.robot:pdu/synaccess.robot"
+ },
+ # Run a "reboot" on the OBMC while host is running.
+ "OBMC Reboot (run)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "BMC Execute Command /sbin/reboot fork=${1}"
+ },
+ # Run a REST "reboot" on the OBMC while host is running.
+ "REST OBMC Reboot (run)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Initiate BMC Reboot wait=${0}",
+ "lib_file_path": "state_manager.robot"
+ },
+ # Run a Redfish "reboot" on the OBMC while host is running.
+ "Redfish OBMC Reboot (run)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Redfish BMC Reset Operation",
+ "lib_file_path": "bmc_redfish_utils.robot"
+ },
+ # Run a "reboot" on the OBMC while host is off.
+ "OBMC Reboot (off)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "BMC Execute Command /sbin/reboot fork=${1}"
+ },
+ # Run a "reboot" on the OBMC while host is off.
+ "Redfish OBMC Reboot (off)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Redfish BMC Reset Operation",
+ "lib_file_path": "bmc_redfish_utils.robot"
+ },
+ # Cycle AC via the PDU while host is off.
+ "PDU AC Cycle (run)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Set Global Variable ${PDU_TYPE} pdu ; Set Global Variable ${PDU_IP} ${PDU_HOST} ; PDU Power Cycle",
+ "lib_file_path": "pdu/pdu.robot:pdu/synaccess.robot"
+ },
+ # Cycle AC via the PDU while host is off.
+ "PDU AC Cycle (off)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Set Global Variable ${PDU_TYPE} pdu ; Set Global Variable ${PDU_IP} ${PDU_HOST} ; PDU Power Cycle",
+ "lib_file_path": "pdu/pdu.robot:pdu/synaccess.robot"
+ },
+ # Initiate an mc reset warm using the IPMI interface while chassis is
+ # powered on.
+ "IPMI MC Reset Warm (run)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command mc reset warm -N 10 -R 1 ; Printn",
+ "lib_file_path": "ipmi_client.robot:gen_print.py"
+ },
+ # Initiate an mc reset warm using the IPMI interface while chassis is
+ # powered off.
+ "IPMI MC Reset Warm (off)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command mc reset warm -N 10 -R 1 ; Printn",
+ "lib_file_path": "ipmi_client.robot:gen_print.py"
+ },
+ # Initiate an mc reset cold using the IPMI interface while chassis is
+ # powered on.
+ "IPMI MC Reset Cold (run)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command mc reset cold -N 10 -R 1 ; Printn",
+ "lib_file_path": "ipmi_client.robot:gen_print.py"
+ },
+ # Initiate an mc reset cold using the IPMI interface while chassis is
+ # powered off.
+ "IPMI MC Reset Cold (off)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command mc reset cold -N 10 -R 1 ; Printn",
+ "lib_file_path": "ipmi_client.robot:gen_print.py"
+ },
+ # Initiate an mc reset warm using the IPMI standard interface while chassis
+ # is powered on.
+ "IPMI Std MC Reset Warm (run)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Run IPMI Standard Command mc reset warm -N 10 -R 1 ; Printn",
+ "lib_file_path": "ipmi_client.robot:gen_print.py"
+ },
+ # Initiate an mc reset warm using the IPMI standard interface while chassis
+ # is powered off.
+ "IPMI Std MC Reset Warm (off)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Run IPMI Standard Command mc reset warm -N 10 -R 1 ; Printn",
+ "lib_file_path": "ipmi_client.robot:gen_print.py"
+ },
+ # Initiate an mc reset cold using the IPMI standard interface while chassis
+ # is powered on.
+ "IPMI Std MC Reset Cold (run)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Run IPMI Standard Command mc reset cold -N 10 -R 1 ; Printn",
+ "lib_file_path": "ipmi_client.robot:gen_print.py"
+ },
+ # Initiate an mc reset cold using the IPMI standard interface while chassis
+ # is powered off.
+ "IPMI Std MC Reset Cold (off)": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^Off$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^Off$",
+ "operating_system": "^Inactive$",
+ "host": "^Off$"
+ },
+ "bmc_reboot": 1,
+ "method_type": "keyword",
+ "method": "Run IPMI Standard Command mc reset cold -N 10 -R 1 ; Printn",
+ "lib_file_path": "ipmi_client.robot:gen_print.py"
+ },
+
+ # Host OS re-boot boot types:
+
+ # Initiate a power cycle using the IPMI interface (equivalent to off/on).
+ "IPMI Power Cycle": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command power cycle -N 10 -R 1",
+ "lib_file_path": "ipmi_client.robot"
+ },
+ # Initiate a power reset using the IPMI interface (equivalent to off/on).
+ # Functionally equivalent to "IPMI Power Cycle".
+ "IPMI Power Reset": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Run External IPMI Standard Command power reset -N 10 -R 1",
+ "lib_file_path": "ipmi_client.robot"
+ },
+ # Do an auto reboot by setting auto reboot to "yes" and going to quiesce state.
+ "Auto Reboot": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "utils.Initiate Auto Reboot 1000",
+ "lib_file_path": "utils.robot"
+ },
+ # Run a "reboot" command on the OS_HOST.
+ "Host Reboot": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "utils.Initiate OS Host Reboot",
+ "lib_file_path": "utils.robot"
+ },
+ # Initiate host reboot using the Redfish API interface (GracefulRestart).
+ "RF SYS GracefulRestart": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Redfish Power Operation GracefulRestart",
+ "lib_file_path": "bmc_redfish_utils.robot"
+ },
+ # Initiate host reboot using the Redfish API interface (ForceRestart).
+ "RF SYS ForceRestart": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Redfish Power Operation ForceRestart",
+ "lib_file_path": "bmc_redfish_utils.robot"
+ },
+ # OPAL Terminate Immediate.
+ "OPAL TI": {
+ "start": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "end": {
+ "rest": "^1$",
+ "chassis": "^On$",
+ "operating_system": "^Standby|BootComplete$",
+ "host": "^Running$",
+ "os_ping": "^1$",
+ "os_login": "^1$",
+ "os_run_cmd": "^1$"
+ },
+ "bmc_reboot": 0,
+ "method_type": "keyword",
+ "method": "Inject OPAL TI",
+ "lib_file_path": "open_power_utils.robot"
+ }
+}