|  | *** Settings *** | 
|  | Resource                ../lib/utils.robot | 
|  | Resource                ../lib/connection_client.robot | 
|  | Resource                ../lib/boot_utils.robot | 
|  |  | 
|  | *** Variables *** | 
|  | # User defined path to do the cleanup. | 
|  | ${CLEANUP_DIR_PATH}  ${EMPTY} | 
|  | # List that holds space separated filepaths to skip from cleanup. | 
|  | ${SKIP_LIST}  ${EMPTY} | 
|  |  | 
|  | *** Keywords *** | 
|  |  | 
|  | ############################################################################### | 
|  |  | 
|  | Cleanup Dir | 
|  | [Documentation]  Remove leftover files in cleanup directory path. | 
|  | [Arguments]      ${cleanup_dir_path}=${CLEANUP_DIR_PATH} | 
|  | ...              ${skip_list}=${SKIP_LIST} | 
|  |  | 
|  | # Description of argument(s): | 
|  | # cleanup_dir_path  Directory path to do the cleanup. | 
|  | # skip_list  List of files to skip from cleanup. | 
|  |  | 
|  | Should Not Be Empty  ${cleanup_dir_path} | 
|  | Should Not Be Empty  ${SKIP_LIST} | 
|  | Open Connection And Log In | 
|  | @{skip_list}=  Set Variable  ${skip_list.split()} | 
|  | ${skip_list_string}=  Set Variable  ${EMPTY} | 
|  | :FOR  ${file}  IN  @{skip_list} | 
|  | \  ${skip_list_string}=   Set Variable  ${skip_list_string} ! -path "${file}" | 
|  |  | 
|  | ${file_count1}=  Execute Command On BMC  find ${cleanup_dir_path} | wc -l | 
|  | Set Global Variable  ${file_count1} | 
|  | Write  find ${cleanup_dir_path} \\( ${skip_list_string} \\) | xargs rm | 
|  | Write  find ${cleanup_dir_path} \\( ${skip_list_string} \\) | xargs rmdir | 
|  | ${file_count2}=  Execute Command On BMC  find ${cleanup_dir_path} | wc -l | 
|  |  | 
|  | Run Keyword If  ${file_count2} < ${file_count1} | 
|  | ...  Reboot And Verify | 
|  |  | 
|  | Reboot And Verify | 
|  | [Documentation]  Reboot BMC and verify cleanup. | 
|  | [Arguments]      ${cleanup_dir_path}=${CLEANUP_DIR_PATH} | 
|  |  | 
|  | # Description of argument(s): | 
|  | # cleanup_dir_path  Directory path to do the cleanup. | 
|  |  | 
|  | OBMC Reboot (off) | 
|  | # Take SSH session post BMC reboot before executing command. | 
|  | Open Connection And Log In | 
|  | ${file_count2}=  Execute Command On BMC  find ${cleanup_dir_path} | wc -l | 
|  | Should Be True  ${file_count2} < ${file_count1} |