diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e18f4a2b71f0a87d2ac302f49525f77838610b70..16b64ce865f5591f1771547817611bcd67e9c0ee 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -126,18 +126,12 @@ production-deploy: stage: deploy tags: [build] 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_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) chmod 400 "${SSH_PRIV_KEY}" ssh-add "${SSH_PRIV_KEY}" mkdir ~/.ssh chmod 700 ~/.ssh - - ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip sudo systemctl stop mariadb - - ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip sudo umount /var/lib/mysql && df -h - - openstack server remove volume $prod_instance_id $prod_volume - export instance_volume=$(openstack server show $instance_id -c volumes_attached -f value | awk -F"'" '{print $4}') - echo "Detaching instance_volume_id=${instance_volume} from new instance=${instance_id}" @@ -145,8 +139,15 @@ production-deploy: - ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$instance_floating_ip sudo umount /var/lib/mysql && df -h - openstack server remove volume $instance_id $instance_volume - - echo "Attach prod volume $xdmod-prod-vol-$BUILD_DATE to newly deployed instance $instance_id" + - 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}') + - echo "Detaching prod_volume=${prod_volume} from prod_instance_id=${prod_instance_id} and creating a snapshot" + - ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip sudo systemctl stop mariadb + - ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip sudo umount /var/lib/mysql && df -h + - openstack server remove volume $prod_instance_id $prod_volume - openstack volume snapshot create --volume $prod_volume xdmod-prod-data-vol-snapshot-$BUILD_DATE + + - echo "Attach copy of prod volume $xdmod-prod-vol-$BUILD_DATE to newly deployed instance $instance_id" - openstack volume create --snapshot xdmod-prod-data-vol-snapshot-$BUILD_DATE --size 150 xdmod-prod-vol-$BUILD_DATE - openstack server add volume $instance_id xdmod-prod-vol-$BUILD_DATE --device /dev/vdb @@ -155,6 +156,9 @@ production-deploy: - openstack server remove floating ip $instance_id $instance_floating_ip - openstack server add floating ip $instance_id $prod_floating_ip + - echo "Attach copy of prod volume $xdmod-prod-vol-$BUILD_DATE to newly deployed instance $instance_id" + - openstack volume create --snapshot xdmod-prod-data-vol-snapshot-$BUILD_DATE --size 150 xdmod-prod-vol-$BUILD_DATE + - openstack server add volume $instance_id xdmod-prod-vol-$BUILD_DATE --device /dev/vdb - ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip sudo mount /dev/vdb1 /var/lib/mysql - ssh -o StrictHostKeyChecking=no $SSH_USERNAME@$prod_floating_ip sudo systemctl start mariadb needs: