metrics: Add common functions to the common script

This PR adds the collect results function to the common metrics
script.

Fixes #7617

Signed-off-by: Gabriela Cervantes <gabriela.cervantes.tellez@intel.com>
This commit is contained in:
Gabriela Cervantes 2023-08-10 17:27:11 +00:00
parent a89c9cd620
commit 9879709aae

View File

@ -361,3 +361,25 @@ function wait_ksm_settle()
done
info "Timed out after ${1}s waiting for KSM to settle"
}
function collect_results() {
WORKLOAD=${1}
[[ -z ${WORKLOAD} ]] && die "Container workload is missing"
local tasks_running=("${containers[@]}")
local retries=100
while [ "${#tasks_running[@]}" -gt 0 ] && [ "${retries}" -gt 0 ]; do
for i in "${!tasks_running[@]}"; do
check_file=$(sudo -E "${CTR_EXE}" t exec --exec-id "$(random_name)" "${tasks_running[i]}" sh >
# if the current task is done, remove the corresponding container from the active list
[ "${check_file}" -eq "1" ] && unset 'tasks_running[i]'
done
((retries--))
sleep 3
echo -n "."
done
echo -e "\n"
}