From 56b4db76b8b159be6398bf8bb09718925b0df3ce Mon Sep 17 00:00:00 2001 From: Bo-Chun Louis Chen <louistw@uab.edu> Date: Mon, 12 Feb 2024 15:10:08 -0600 Subject: [PATCH] Add clean up stage in pipeline --- .gitlab-ci.yml | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index bad5c1e..6129f82 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -34,6 +34,7 @@ stages: - build - test - deploy + - cleanup workflow: rules: @@ -361,15 +362,6 @@ deploy_knightly: openstack server add floating ip $NEW_INSTANCE_ID $CAMPUS_IP openstack server add floating ip $NEW_INSTANCE_ID $CHEAHA_IP fi - - | - 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}')) - 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 only: - schedules @@ -384,3 +376,22 @@ deploy_cheaha: when: manual only: - main + +cleanup: + stage: cleanup + environment: + name: knightly + tags: + - 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}')) + 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 + allow_failure: true + when: always -- GitLab