From 9496fbe7b03f7d316782545d32f7cfc19f9a6eb5 Mon Sep 17 00:00:00 2001
From: Krish Moodbidri <krish94@uab.edu>
Date: Wed, 3 Apr 2024 11:30:33 -0500
Subject: [PATCH] Snapshot and reattach prod_queue_volume for production
 environment

- Detach the prod_queue_volume from the production instance
- Create a snapshot of the prod_queue_volume
- Reattach the prod_queue_volume to the production instance
---
 .gitlab-ci.yml | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6e09b72..70854af 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -42,13 +42,19 @@ prep-deploy:
       elif [ "$TARGET_ENV" = "production" ]; then
            export prod_instance_id=$(openstack floating ip show $prod_floating_ip -c port_details -f value | awk -F', ' '{print $2}' | awk -F"'" '{print $2}')
            export prod_volume=$(openstack server show $prod_instance_id -c volumes_attached -f value | awk -F"'" '{print $4}')
+           export prod_queue_volume=$(openstack server show $prod_instance_id -c volumes_attached -f value | awk -F"'" '{print $4}' | awk 'NR==2')
+
            echo "Detaching prod_volume=${prod_volume} from prod_instance_id=${prod_instance_id} and creating a snapshot"
+           echo "Detaching prod_queue_volume=${prod_queue_volume} from prod_instance_id=${prod_instance_id} and creating a snapshot"
            openstack server stop $prod_instance_id && openstack server show $prod_instance_id 
            openstack server remove volume $prod_instance_id $prod_volume
+           openstack server remove volume $prod_instance_id $prod_queue_volume          
            openstack volume snapshot create --volume $prod_volume xdmod-prod-vol-snapshot-$BUILD_DATE
-
+           openstack volume snapshot create --volume $prod_queue_volume xdmod-prod_queue_volume-snapshot-$BUILD_DATE
+           
            echo "Reattach the prod_volume=${prod_volume} to prod_instance_id=${prod_instance_id} after snapshot is created"
            openstack server add volume $prod_instance_id $prod_volume --device /dev/vdb
+           openstack server add volume $prod_instance_id $prod_queue_volume --device /dev/vdc
            openstack server start $prod_instance_id
 
            echo "Make a copy of prod volume $prod_volume to be used in tf-apply"
-- 
GitLab