*** Settings ***
Documentation     Trigger code update to a target BMC.
...               Execution Method :
...               python -m robot -v OPENBMC_HOST:<hostname>
...               -v FILE_PATH:<path/*all.tar>  update_bmc.robot
...
...               Code update method BMC using REST
...               Update work flow sequence:
...                 - User input BMC File existence check
...                 - Ping Test and REST authentication
...                 - Set Host Power host setting Policy to RESTORE_LAST_STATE
...                   On reboot this policy would ensure the BMC comes
...                   online and stays at HOST_POWERED_OFF state.
...                 - Issue poweroff
...                 - Prune archived journal logs
...                 - Prepare for Update
...                 - Wait for BMC to come online clean
...                 - Wait for BMC_READY state
...                 - Apply preserve BMC Network setting
...                 - SCP image to BMC
...                 - Activate the flash image
...                 - Warm Reset BMC to activate code
...                 - Wait for BMC to come online time out 30 minutes
...                 - Version check post update
...                 - Identify REST url post update

Library                 ../../lib/gen_robot_keyword.py
Library                 String

Resource                code_update_utils.robot
Resource                ../../lib/boot/boot_resource_master.robot
Resource                ../../lib/state_manager.robot
Resource                ../../lib/utils.robot
Resource                ../../lib/list_utils.robot
Resource                ../../lib/openbmc_ffdc.robot
Resource                ../../extended/obmc_boot_test_resource.robot

Test Teardown           Run Key  FFDC On Test Case Fail

*** Variables ***

${QUIET}                ${1}
# Boot failures are not acceptable so we set the threshold to 0.
${boot_fail_threshold}  ${0}

${FILE_PATH}            ${EMPTY}
${FORCE_UPDATE}         ${0}
${REST_URL_FILE_PATH}   ${EMPTY}

# There are two reboots issued by code update.
${MAX_BOOT_COUNT}       ${2}

*** Test Cases ***

Test Basic BMC Performance Before Code Update
    [Documentation]   Check performance of memory, CPU & file system of BMC.
    [Tags]  Test_Basic_BMC_Performance_Before_Code_Update
    Open Connection And Log In
    Check BMC CPU Performance
    Check BMC Mem Performance
    Check BMC File System Performance

Check Core Dump Exist Before Code Update
    [Documentation]  Check core dump existence on BMC before code update.
    [Tags]  Check_Core_Dump_Exist_Before_Code_Update
    Check For Core Dumps

Check URLs Before Code Update
    [Documentation]  Check available URLs before code update.
    [Tags]  Check_URLs_Before_Code_Update

    ${url_list}=  Get URL List  ${OPENBMC_BASE_URI}
    Set Global Variable  ${URL_BEFORE_CU}  ${url_list}

    ${bmc_version}=  Get BMC Version
    Set Suite Variable  ${bmc_version_before}  ${bmc_version}

Initiate Code Update BMC
    [Documentation]  Initiate a code update on the BMC.
    [Tags]  Initiate_Code_Update_BMC

    ${status}=  Run Keyword If  '${LAST_KNOWN_GOOD_VERSION}' != '${EMPTY}'
    ...  Run Keyword And Return Status
    ...  Validate BMC Version  ${LAST_KNOWN_GOOD_VERSION}

    Run Keyword if  '${status}' == '${True}'
    ...  Pass Execution  The BMC already has the requested build loaded so no further action will be taken.

    # Enable user to bypass prerequisite operations.
    # Use cases for if BMC is not in working state.
    Run Keyword If  ${FORCE_UPDATE} == ${0}
    ...  Prepare BMC For Update

    Run Key U  Preserve BMC Network Setting
    Run Key  SCP Tar Image File To BMC \ ${FILE_PATH}
    Run Key  Activate BMC Flash Image
    Run Key U  OBMC Boot Test \ OBMC Reboot (off)
    Run Key U  Check Boot Count And Time
    Run Keyword If  ${BOOT_COUNT} == ${1}
    ...  Log  Boot time not updated by kernel.  level=WARN

Install BMC Debug Tarball
    [Documentation]  Install the downloaded debug tarball on BMC.
    [Tags]  Install_BMC_Debug_Tarball
    Run Keyword If  '${DEBUG_TARBALL_PATH}' != '${EMPTY}'
    ...  Install Debug Tarball On BMC  ${DEBUG_TARBALL_PATH}

Compare URLs Before And After Code Update
    [Documentation]  Compare URLs before and after code update.
    [Tags]  Compare_URLs_Before_And_After_Code_Update

    ${bmc_version}=  Get BMC Version
    Set Suite Variable  ${bmc_version_after}  ${bmc_version}

    # Exit test for same firmware version.
    Pass Execution If  '${bmc_version_before}' == '${bmc_version_after}'
    ...  Same BMC firmware version found

    ${url_after_cu}=  Get URL List  ${OPENBMC_BASE_URI}
    Compare URL List After Code Update  ${URL_BEFORE_CU}  ${url_after_cu}

Test Basic BMC Performance At Ready State
    [Documentation]   Check performance of memory, CPU & file system of BMC.
    [Tags]  Test_Basic_BMC_Performance_At_Ready_State
    Open Connection And Log In
    Check BMC CPU Performance
    Check BMC Mem Performance
    Check BMC File System Performance

Check Core Dump Exist After Code Update
    [Documentation]  Check core dump existence on BMC after code update.
    [Tags]  Check_Core_Dump_Exist_After_Code_Update
    Check For Core Dumps

Enable Core Dump File Size To Be Unlimited
    [Documentation]  Set core dump file size to unlimited.
    [Tags]  Enable_Core_Dump_File_size_To_Be_unlimited
    Set Core Dump File Size Unlimited

*** Keywords ***

Prepare BMC For Update
    [Documentation]  Prerequisite operation before code update.
    Check Boot Count And Time
    Prune Journal Log
    Power Off Request
    Set Policy Setting   RESTORE_LAST_STATE
    Prepare For Update
    Check If BMC is Up  20 min  10 sec
    Check Boot Count And Time

    # Temporary fix for lab migration for driver which is booted with
    # BMC state "/xyz/openbmc_project/state/BMC0/".
    ${status}=  Run Keyword And Return Status  Temp BMC URI Check
    Run Keyword If  '${status}' == '${False}'
    ...  Wait For BMC Ready
    ...  ELSE  Wait For Temp BMC Ready

Check Boot Count And Time
    [Documentation]  Check for unexpected reboots.
    Set BMC Reset Reference Time
    Log To Console  \n Boot Count: ${BOOT_COUNT}
    Log To Console  \n Boot Time: ${BOOT_TIME}
    Run Keyword If  ${BOOT_COUNT} > ${MAX_BOOT_COUNT}
    ...  Log  Phantom Reboot!!! Unexpected reboot detected  level=WARN

Temp BMC URI Check
    [Documentation]  Check for transient "BMC0" interface.
    ${resp}=  Openbmc Get Request  /xyz/openbmc_project/state/BMC0/
    Should Be Equal As Strings  ${resp.status_code}  ${HTTP_OK}

Check Temp BMC State
    [Documentation]  BMC state should be "Ready".
    # quiet - Suppress REST output logging to console.
    ${state}=
    ...  Read Attribute  /xyz/openbmc_project/state/BMC0/  CurrentBMCState
    Should Be Equal  Ready  ${state.rsplit('.', 1)[1]}

Wait For Temp BMC Ready
    [Documentation]  Check for BMC "Ready" until timedout.
    Wait Until Keyword Succeeds
    ...  10 min  10 sec  Check Temp BMC State

Compare URL List After Code Update
    [Documentation]  Compare URL list before and after code update.
    [Arguments]  ${url_before_cu}  ${url_after_cu}
    # Description of arguments:
    # url_before_cu  List of URLs available before code update.
    # url_after_cu   List of URLs available after code update.

    ${url_removed_list}=  Subtract Lists  ${url_before_cu}  ${url_after_cu}
    ${url_added_list}=  Subtract Lists  ${url_after_cu}  ${url_before_cu}
    Log  ${url_removed_list}
    Log  ${url_added_list}

    Return From Keyword If  '${REST_URL_FILE_PATH}' == '${EMPTY}'

    # Create file with BMC firmware version before and after code update.
    # i.e. <Before_Version>--<After_Version>
    # Example v1.99.6-141-ge662190--v1.99.6-141-ge664242

    ${file_name}=  Catenate  SEPARATOR=--
    ...  ${bmc_version_before}  ${bmc_version_after}
    ${REST_URL_FILE}=  Catenate  ${REST_URL_FILE_PATH}/${file_name}
    Create File  ${REST_URL_FILE}  URL Removed${\n}

    Return From Keyword If
    ...  ${url_removed_list} == [] and ${url_added_list} == []

    Create File  ${REST_URL_FILE}  URL Removed${\n}
    Append To File  ${REST_URL_FILE}  [${url_removed_list}]
    Append To File  ${REST_URL_FILE}  ${\n}URL Added${\n}
    Append To File  ${REST_URL_FILE}  [${url_added_list}]
