| *** Settings *** | 
 | Documentation  BMC OEM serial update utilities keywords. | 
 |  | 
 | Resource    code_update_utils.robot | 
 | Resource    oem/ibm/serial_console_client.robot | 
 |  | 
 | *** Keywords *** | 
 |  | 
 | Reset Network Interface During Code Update | 
 |     [Documentation]  Disable and re-enable the network while doing code update. | 
 |     [Arguments]  ${image_file_path}  ${reboot} | 
 |  | 
 |     # Resetting the network will be done via the serial console. | 
 |     # | 
 |     # Description of argument(s): | 
 |     # image_file_path   Path to the image file to update to. | 
 |     # reboot            If set to true, will reboot the BMC after the code | 
 |     #                   update is finished. | 
 |  | 
 |     ${version_id}=  Upload And Activate Image  ${image_file_path}  wait=${0} | 
 |     Reset Network Interface | 
 |  | 
 |     # Verify code update was successful and 'Activation' state is 'Active'. | 
 |     Wait For Activation State Change  ${version_id}  ${ACTIVATING} | 
 |     ${software_state}=  Read Properties  ${SOFTWARE_VERSION_URI}${version_id} | 
 |     Should Be Equal As Strings  &{software_state}[Activation]  ${ACTIVE} | 
 |  | 
 |     Run Keyword If  '${reboot}'  OBMC Reboot (off)  stack_mode=normal | 
 |  | 
 |  | 
 | Reset Network Interface | 
 |     [Documentation]  Turn the ethernet network interface off and then on again | 
 |     ...              through the serial console. | 
 |  | 
 |     Import Resource  ${CURDIR}/oem/ibm/serial_console_client.robot | 
 |     Set Library Search Order  SSHLibrary  Telnet | 
 |     Execute Command On Serial Console  ifconfig eth0 down | 
 |     Sleep  30s | 
 |     Execute Command On Serial Console  ifconfig eth0 up |