# 2017/02/20 Note: Commenting out 'boot_progress' requirements until they are working in product code.
# TODO:  Uncomment the boot_progress lines when support is re-introduced.
{
    # Note: "IPMI Power On" will be added soon.
    # Initiate a power on using the REST API interface.
    "REST Power On": {
        "start": {
            "chassis": "^Off$",
            "boot_progress": "^Off$",
            "host": "^Off$"
        },
        "end": {
            "chassis": "^On$",
            "boot_progress": "^FW Progress, Starting OS$",
            "host": "^Running$",
            "os_ping": "^1$",
            "os_login": "^1$",
            "os_run_cmd": "^1$"
        },
        "bmc_reboot": 0,
        "method_type": "keyword",
        "method": "Initiate Power On  wait=${0}"
    },
    # Initiate a power off using the REST API interface.
    "REST Power Off": {
        "start": {
            "chassis": "^On$",
            "boot_progress": "^FW Progress, Starting OS$",
            "host": "^Running$"
        },
        "end": {
            "chassis": "^Off$",
            "boot_progress": "^Off$",
            "host": "^Off$",
            "os_ping": "^0$",
            "os_login": "^0$",
            "os_run_cmd": "^0$"
        },
        "bmc_reboot": 0,
        "method_type": "keyword",
        "method": "Initiate Power Off"
    },
    # Run a "reboot" on the OBMC..
    "OBMC Reboot": {
        "start": {
            "chassis": "^Off$"
        },
        "end": {
            "chassis": "^Off$",
            "boot_progress": "^Off$",
            "host": "^Off$"
        },
        "bmc_reboot": 1,
        "method_type": "keyword",
        "method": "Open Connection And Log In ; Start Command  /sbin/reboot"
    },
    # Run a "reboot" command on the OS_HOST.
    "Host Reboot": {
        "start": {
            "chassis": "^On$",
            "boot_progress": "^FW Progress, Starting OS$",
            "host": "^Running$",
            "os_ping": "^1$",
            "os_login": "^1$",
            "os_run_cmd": "^1$"
        },
        "end": {
            "chassis": "^On$",
            "boot_progress": "^FW Progress, Starting OS$",
            "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"
    },
    # Run a "shutdown" command on the OS_HOST.
    "Host Power Off": {
        "start": {
            "chassis": "^On$",
            "boot_progress": "^FW Progress, Starting OS$",
            "host": "^Running$",
            "os_ping": "^1$",
            "os_login": "^1$",
            "os_run_cmd": "^1$"
        },
        "end": {
            "chassis": "^Off$",
            "boot_progress": "^Off$",
            "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"
    },
    # Do an auto reboot by setting auto reboot to "yes" and going to quiesce state.
    "Auto Reboot": {
        "start": {
            "chassis": "^On$",
            "boot_progress": "^FW Progress, Starting OS$",
            "host": "^Running$",
            "os_ping": "^1$",
            "os_login": "^1$",
            "os_run_cmd": "^1$"
        },
        "end": {
            "chassis": "^On$",
            "boot_progress": "^FW Progress, Starting OS$",
            "host": "^Running$",
            "os_ping": "^1$",
            "os_login": "^1$",
            "os_run_cmd": "^1$"
        },
        "bmc_reboot": 0,
        "method_type": "keyword",
        "method": "utils.Initiate Auto Reboot",
        "lib_file_path": "utils.robot"
    }
}
