REDFISH: verifying Boot policies after bmc reset using REDFISH scripts
Changes:
- under redfish/systems/test_boot_devices.robot after BMC and
Host reboot verified boot policies are working as expected
Tested:
- Ran redfish/systems/test_boot_devices.robot scripts Successfully
Change-Id: I7cc791ce26a05aafffc453e978246fdc85752b28
Signed-off-by: manimozhik <manimozhik@ami.com>
diff --git a/redfish/systems/test_boot_devices.robot b/redfish/systems/test_boot_devices.robot
index 574b330..d046bef 100644
--- a/redfish/systems/test_boot_devices.robot
+++ b/redfish/systems/test_boot_devices.robot
@@ -38,6 +38,8 @@
&{redfish_ipmi_mode_map} Legacy=BIOS PC Compatible (legacy) boot
... UEFI=BIOS EFI boot
+${loop_count} 2
+
*** Test Cases ***
Verify BMC Redfish Boot Source Override with Enabled Mode As Once
@@ -100,10 +102,106 @@
Disabled None Legacy
+Verify Boot Source Override Policy Persistency with Enabled Mode As Once After BMC Reboot
+ [Documentation] Verify Boot Source Override Policy Persistency with Enabled Mode As Once After BMC Reboot.
+ [Tags] Verify_Boot_Source_Override_Policy_Persistency_With_Enabled_Mode_As_Once_After_BMC_Reboot
+ [Template] Verify Boot Source Override After BMC Reboot
+
+ #BootSourceOverrideEnabled BootSourceOverrideTarget BootSourceOverrideMode
+ Once Hdd UEFI
+ Once Pxe UEFI
+ Once Diags UEFI
+ Once Cd UEFI
+ Once BiosSetup UEFI
+ Once None UEFI
+ Once Hdd Legacy
+ Once Pxe Legacy
+ Once Diags Legacy
+ Once Cd Legacy
+ Once BiosSetup Legacy
+ Once None Legacy
+
+
+Verify Boot Source Override Policy Persistency with Enabled Mode As Continuous After BMC Reboot
+ [Documentation] Verify Boot Source Override Policy Persistency with Enabled Mode As Continuous After BMC Reboot.
+ [Tags] Verify_Boot_Source_Override_Policy_Persistency_With_Enabled_Mode_As_Continuous_After_BMC_Reboot
+ [Template] Verify Boot Source Override After BMC Reboot
+
+ #BootSourceOverrideEnabled BootSourceOverrideTarget BootSourceOverrideMode
+ Continuous Hdd UEFI
+ Continuous Pxe UEFI
+ Continuous Diags UEFI
+ Continuous Cd UEFI
+ Continuous BiosSetup UEFI
+ Continuous None UEFI
+ Continuous Hdd Legacy
+ Continuous Pxe Legacy
+ Continuous Diags Legacy
+ Continuous Cd Legacy
+ Continuous BiosSetup Legacy
+ Continuous None Legacy
+
+
+Verify Boot Source Override Policy with Enabled Mode As Once After Host Reboot
+ [Documentation] Verify Boot Source Override Policy with Enabled Mode As Once After Host Reboot.
+ [Tags] Verify_Boot_Source_Override_Policy_With_Enabled_Mode_As_Once_After_Host_Reboot
+ [Template] Verify Boot Source Override with Enabled Mode As Once After Host Reboot
+
+ #BootSourceOverrideTarget BootSourceOverrideMode
+ Hdd UEFI
+ Pxe UEFI
+ Diags UEFI
+ Cd UEFI
+ None UEFI
+ Hdd Legacy
+ Pxe Legacy
+ Diags Legacy
+ Cd Legacy
+ None Legacy
+
+
+Verify Boot Source Override Policy with Enabled Mode As Continuous After Host Reboot
+ [Documentation] Verify Boot Source Override Policy With Enabled Mode As Continuous After Host Reboot.
+ [Tags] Verify_Boot_Source_Override_Policy_With_Enabled_Mode_As_Continuous_After_Host_Reboot
+ [Template] Verify Boot Source Override with Enabled Mode As Continuous After Host Reboot
+
+ #BootSourceOverrideTarget BootSourceOverrideMode
+ Hdd UEFI
+ Pxe UEFI
+ Diags UEFI
+ Cd UEFI
+ None UEFI
+ Hdd Legacy
+ Pxe Legacy
+ Diags Legacy
+ Cd Legacy
+ None Legacy
+
+
+Verify Boot Source Override with Enabled Mode As Once After Host Reboot For Bios Setup
+ [Documentation] Verify Boot Source Override with Enabled Mode As Once After Host Reboot For Bios Setup.
+ [Tags] Verify_Boot_Source_Override_With_Enabled_Mode_As_Once_After_Host_Reboot_For_Bios_Setup
+ [Template] Verify Boot Source Override with Enabled Mode As Once After Host Reboot
+
+ #BootSourceOverrideTarget BootSourceOverrideMode Biosflag
+ BiosSetup UEFI True
+ BiosSetup Legacy True
+
+
+Verify Boot Source Override with Enabled Mode As Continuous After Host Reboot For Bios Setup
+ [Documentation] Verify Boot Source Override with Enabled Mode As Continuous After Host Reboot For Bios Setup.
+ [Tags] Verify_Boot_Source_Override_With_Enabled_Mode_As_Continuous_After_Host_Reboot_For_Bios_Setup
+ [Template] Verify Boot Source Override with Enabled Mode As Continuous After Host Reboot
+
+ #BootSourceOverrideTarget BootSourceOverrideMode Biosflag
+ BiosSetup UEFI True
+ BiosSetup Legacy True
+
+
*** Keywords ***
Set And Verify Boot Source Override
- [Documentation] Set and Verify Boot source override
+ [Documentation] Set and Verify Boot source override.
[Arguments] ${override_enabled} ${override_target} ${override_mode}=UEFI
# Description of argument(s):
@@ -155,6 +253,199 @@
... Should Contain ${output} ${redfish_ipmi_mode_map['${override_mode}']}
+Verify Boot Source Override After BMC Reboot
+ [Documentation] Verify Boot Source Override After BMC Reboot.
+ [Arguments] ${override_enabled} ${override_target} ${override_mode}=UEFI
+
+ # Description of argument(s):
+ # override_enabled Boot source override enable type.
+ # ('Once', 'Continuous', 'Disabled').
+ # override_target Boot source override target.
+ # ('Pxe', 'Cd', 'Hdd', 'Diags', 'BiosSetup', 'None').
+ # override_mode Boot source override mode (relevant only for x86 arch).
+ # ('Legacy', 'UEFI').
+
+ # Example:
+ # "Boot": {
+ # "BootSourceOverrideEnabled": "Disabled",
+ # "BootSourceOverrideMode": "Legacy",
+ # "BootSourceOverrideTarget": "None",
+ # "BootSourceOverrideTarget@Redfish.AllowableValues": [
+ # "None",
+ # "Pxe",
+ # "Hdd",
+ # "Cd",
+ # "Diags",
+ # "BiosSetup"]}
+
+ # The values set using Redfish are verified via IPMI using the command:
+ # chassis bootparam get 5
+ # Option 5 returns the boot parameters.
+ #
+ # Sample output:
+ # Boot parameter version: 1
+ # Boot parameter 5 is valid/unlocked
+ # Boot parameter data: c000000000
+ # Boot Flags :
+ # - Boot Flag Valid
+ # - Options apply to all future boots
+ # - BIOS PC Compatible (legacy) boot
+ # - Boot Device Selector : No override
+ # - Console Redirection control : System Default
+ # - BIOS verbosity : Console redirection occurs per BIOS configuration
+ # setting (default)
+ # - BIOS Mux Control Override : BIOS uses recommended setting of the mux at
+ # the end of POST
+
+ Redfish Set Boot Default ${override_enabled} ${override_target} ${override_mode}
+
+ Redfish OBMC Reboot (run)
+
+ ${output}= Run IPMI Standard Command chassis bootparam get 5
+ Should Contain ${output} ${redfish_ipmi_enabled_map['${override_enabled}']}
+ Should Contain ${output} ${redfish_ipmi_target_map['${override_target}']}
+ Run Keyword If '${PLATFORM_ARCH_TYPE}' == 'x86'
+ ... Should Contain ${output} ${redfish_ipmi_mode_map['${override_mode}']}
+
+
+Verify Boot Source Override with Enabled Mode As Once After Host Reboot
+ [Documentation] Verify Boot Source Override with Enabled Mode As Once After Host Reboot.
+ [Arguments] ${override_target} ${override_mode}=UEFI ${is_bios_setup}=False
+
+ # Description of argument(s):
+ # override_enabled Boot source override enable type.
+ # ('Once', 'Continuous', 'Disabled').
+ # override_target Boot source override target.
+ # ('Pxe', 'Cd', 'Hdd', 'Diags', 'BiosSetup', 'None').
+ # override_mode Boot source override mode (relevant only for x86 arch).
+ # ('Legacy', 'UEFI').
+
+ # Example:
+ # "Boot": {
+ # "BootSourceOverrideEnabled": "Disabled",
+ # "BootSourceOverrideMode": "Legacy",
+ # "BootSourceOverrideTarget": "None",
+ # "BootSourceOverrideTarget@Redfish.AllowableValues": [
+ # "None",
+ # "Pxe",
+ # "Hdd",
+ # "Cd",
+ # "Diags",
+ # "BiosSetup"]}
+
+ # The values set using Redfish are verified via IPMI using the command:
+ # chassis bootparam get 5
+ # Option 5 returns the boot parameters.
+ #
+ # Sample output:
+ # Boot parameter version: 1
+ # Boot parameter 5 is valid/unlocked
+ # Boot parameter data: c000000000
+ # Boot Flags :
+ # - Boot Flag Valid
+ # - Options apply to all future boots
+ # - BIOS PC Compatible (legacy) boot
+ # - Boot Device Selector : No override
+ # - Console Redirection control : System Default
+ # - BIOS verbosity : Console redirection occurs per BIOS configuration
+ # setting (default)
+ # - BIOS Mux Control Override : BIOS uses recommended setting of the mux at
+ # the end of POST
+
+ Redfish Set Boot Default Once ${override_target} ${override_mode}
+
+ IF '${is_bios_setup}' == 'True'
+ Repeat Keyword ${loop_count} times Host Reboot For Bios Setup
+ ELSE
+ RF SYS GracefulRestart
+ ${output}= Run IPMI Standard Command chassis bootparam get 5
+ Should Contain ${output} ${redfish_ipmi_enabled_map['Once']}
+ Should Contain ${output} ${redfish_ipmi_target_map['None']}
+ IF '${PLATFORM_ARCH_TYPE}' == 'x86'
+ Should Contain ${output} ${redfish_ipmi_mode_map['Legacy']}
+ END
+ END
+
+ ${resp}= Redfish.Get Attribute /redfish/v1/Systems/system Boot
+ Should Be Equal As Strings ${resp["BootSourceOverrideEnabled"]} Disabled
+ Should Be Equal As Strings ${resp["BootSourceOverrideTarget"]} None
+ Run Keyword If '${PLATFORM_ARCH_TYPE}' == 'x86'
+ ... Should Be Equal As Strings ${resp["BootSourceOverrideMode"]} Legacy
+
+
+Verify Boot Source Override with Enabled Mode As Continuous After Host Reboot
+ [Documentation] Verify Boot Source Override with Enabled Mode As Continuous After Host Reboot.
+ [Arguments] ${override_target} ${override_mode}=UEFI ${is_bios_setup}=False
+
+ # Description of argument(s):
+ # override_enabled Boot source override enable type.
+ # ('Once', 'Continuous', 'Disabled').
+ # override_target Boot source override target.
+ # ('Pxe', 'Cd', 'Hdd', 'Diags', 'BiosSetup', 'None').
+ # override_mode Boot source override mode (relevant only for x86 arch).
+ # ('Legacy', 'UEFI').
+
+ # Example:
+ # "Boot": {
+ # "BootSourceOverrideEnabled": "Disabled",
+ # "BootSourceOverrideMode": "Legacy",
+ # "BootSourceOverrideTarget": "None",
+ # "BootSourceOverrideTarget@Redfish.AllowableValues": [
+ # "None",
+ # "Pxe",
+ # "Hdd",
+ # "Cd",
+ # "Diags",
+ # "BiosSetup"]}
+
+ # The values set using Redfish are verified via IPMI using the command:
+ # chassis bootparam get 5
+ # Option 5 returns the boot parameters.
+ #
+ # Sample output:
+ # Boot parameter version: 1
+ # Boot parameter 5 is valid/unlocked
+ # Boot parameter data: c000000000
+ # Boot Flags :
+ # - Boot Flag Valid
+ # - Options apply to all future boots
+ # - BIOS PC Compatible (legacy) boot
+ # - Boot Device Selector : No override
+ # - Console Redirection control : System Default
+ # - BIOS verbosity : Console redirection occurs per BIOS configuration
+ # setting (default)
+ # - BIOS Mux Control Override : BIOS uses recommended setting of the mux at
+ # the end of POST
+
+ Redfish Set Boot Default Continuous ${override_target} ${override_mode}
+
+ IF '${is_bios_setup}' == 'True'
+ Repeat Keyword ${loop_count} times Host Reboot For Bios Setup
+ ELSE
+ RF SYS GracefulRestart
+ ${output}= Run IPMI Standard Command chassis bootparam get 5
+ Should Contain ${output} ${redfish_ipmi_enabled_map['Continuous']}
+ Should Contain ${output} ${redfish_ipmi_target_map['${override_target}']}
+ IF '${PLATFORM_ARCH_TYPE}' == 'x86'
+ Should Contain ${output} ${redfish_ipmi_mode_map['${override_mode}']}
+ END
+ END
+
+ ${resp}= Redfish.Get Attribute /redfish/v1/Systems/system Boot
+ Should Be Equal As Strings ${resp["BootSourceOverrideEnabled"]} Continuous
+ Should Be Equal As Strings ${resp["BootSourceOverrideTarget"]} ${override_target}
+ Run Keyword If '${PLATFORM_ARCH_TYPE}' == 'x86'
+ ... Should Be Equal As Strings ${resp["BootSourceOverrideMode"]} ${override_mode}
+
+
+Host Reboot For Bios Setup
+ [Documentation] Rebooting Host without checking Host state.
+
+ Redfish Power Operation GracefulRestart
+
+ Sleep 1min
+
+
Suite Teardown Execution
[Documentation] Do the post suite teardown.