diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 60969f0e2d1daba7c494a479614ce6a5f19c2309..9c92af4d3c45a19e4b4a572a2c9d493debf66d3b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -385,12 +385,20 @@ cleanup: tags: - build script: + - > + 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 -v REGEX=ood-$TIMESTAMP_REGEX + '{if ($0 ~ REGEX) result[count++] = $1} + END {for(i=NITK;i<count;i++) print result[i]}')) - | - 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 -v REGEX=ood-$TIMESTAMP_REGEX '{if ($0 ~ REGEX) result[count++] = $1} END {for(i=NITK;i<count;i++) print result[i]}')) for svr in ${SERVER_TO_BE_DELETE[@]}; do openstack server delete ${svr} done + - | for img in ${IMAGE_TO_BE_DELETE[@]}; do openstack image delete ${img} done