Skip to content
Snippets Groups Projects

Feat prod deploy xdmod

Merged Eesaan Atluri requested to merge feat-prod-deploy-xdmod into master
1 file
+ 14
5
Compare changes
  • Side-by-side
  • Inline
+ 14
5
@@ -109,7 +109,6 @@ tf-apply:
@@ -109,7 +109,6 @@ tf-apply:
reports:
reports:
dotenv: vars.env
dotenv: vars.env
staging-post-deploy:
staging-post-deploy:
environment:
environment:
name: staging
name: staging
@@ -141,6 +140,7 @@ production-deploy:
@@ -141,6 +140,7 @@ production-deploy:
script:
script:
- 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_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_volume=$(openstack server show $prod_instance_id -c volumes_attached -f value | awk -F"'" '{print $4}')
 
- echo "Detaching prod_volume_id=${prod_volume} from prod_instance_id=${prod_instance_id}"
- |
- |
eval $(ssh-agent -s)
eval $(ssh-agent -s)
chmod 400 "$SSH_PRIV_KEY"
chmod 400 "$SSH_PRIV_KEY"
@@ -150,15 +150,24 @@ production-deploy:
@@ -150,15 +150,24 @@ production-deploy:
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip systemctl stop mariadb
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip systemctl stop mariadb
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip umount /var/lib/mysql && df -h
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip umount /var/lib/mysql && df -h
- openstack server remove volume $prod_instance_id $prod_volume
- openstack server remove volume $prod_instance_id $prod_volume
- openstack server stop $prod_instance_id
- openstack server stop $prod_instance_id
- openstack server remove floating ip $prod_instance_id $prod_floating_ip
- openstack server remove floating ip $instance_id $staging_floating_ip
- export staging_volume=$(openstack server show $instance_id -c volumes_attached -f value | awk -F"'" '{print $4}')
- openstack server add floating ip $instance_id $prod_floating_ip
- echo "Detaching staging_volume_id=${staging_volume} from staging_instance_id=${instance_id}"
 
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$staging_floating_ip systemctl stop mariadb
 
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$staging_floating_ip umount /var/lib/mysql && df -h
 
- openstack server remove volume $instance_id $staging_volume
 
 
- echo "Attach prod volume $xdmod-prod-vol-$BUILD_DATE to staging instance $instance_id"
- openstack volume snapshot create --volume $prod_volume xdmod-prod-data-vol-snapshot
- openstack volume snapshot create --volume $prod_volume xdmod-prod-data-vol-snapshot
- openstack volume create --snapshot xdmod-prod-data-vol-snapshot --size 150 xdmod-prod-vol-$BUILD_DATE"
- openstack volume create --snapshot xdmod-prod-data-vol-snapshot --size 150 xdmod-prod-vol-$BUILD_DATE"
- openstack server add volume $instance_id $xdmod-prod-vol-$BUILD_DATE --device /dev/vdb
- openstack server add volume $instance_id $xdmod-prod-vol-$BUILD_DATE --device /dev/vdb
 
- echo "swap the floating IP between prod and staging instances"
 
- openstack server remove floating ip $prod_instance_id $prod_floating_ip
 
- openstack server remove floating ip $instance_id $staging_floating_ip
 
- openstack server add floating ip $instance_id $prod_floating_ip
 
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip mount /dev/vdb1 /var/lib/mysql
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip mount /dev/vdb1 /var/lib/mysql
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip systemctl start mariadb
- ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip systemctl start mariadb
Loading