*** 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}