diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6129f82b6fa65e4944e8deab844efaa9c39dc2e0..42e3aa342511d8efafca85c924739c4e6858bb43 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -385,8 +385,8 @@ cleanup: - build script: - | - SERVER_TO_BE_DELETE=($(openstack server list --name $OOD_INSTANCE_NAME --sort-column Image --sort-descending -f value -c ID | sed -n $(($NUM_SERVER_TO_KEEP+1))',$p')) - IMAGE_TO_BE_DELETE=($(openstack image list --sort-column Name --sort-descending -f value -c Name -c ID | grep -P ' ood-\d{8}$' | sed -n $(($NUM_IMAGE_TO_KEEP+1))',$p' | awk '{print $1}')) + SERVER_TO_BE_DELETE=($(openstack server list --name $OOD_INSTANCE_NAME --sort-column Image --sort-descending -f value -c ID | awk -v NSTK=$NUM_SERVER_TO_KEEP '{count++} {if (count>NSTK) print}')) + IMAGE_TO_BE_DELETE=($(openstack image list --sort-column Name --sort-descending -f value -c Name -c ID | awk -v NITK=$NUM_IMAGE_TO_KEEP '/ ood-[[:digit:]]{8}$/ {count++} {if (count>NITK) print $1}')) for svr in ${SERVER_TO_BE_DELETE[@]}; do openstack server delete ${svr} done