#!/bin/bash
SERVERNAME=puppetmaster
CONFIG_VOLUME=745eb087-69a8-49c9-bbd5-58158ad67391

echo "Creating VM ${SERVERNAME}"

openstack server create  \
--image ubuntu-18.04.0.2-amd64 \
--user-data data-${SERVERNAME}.yaml \
--key-name "Sebastian Rojo" \
--flavor m1.large.md \
--min 1 \
--max 1 \
--security-group DefaultSapian \
--security-group puppet \
--security-group WebApp \
--availability-zone nuczone \
--nic net-id=41f72a3e-eecf-4c85-aec5-0007ad1a0201 \
--wait \
${SERVERNAME}

for RUN in {1..50}; do
    if [ "$(openstack server show ${SERVERNAME} | awk '/status/ {print $4}')" == "ACTIVE" ]
    then
      openstack server show ${SERVERNAME}
      echo "${SERVERNAME} Active. Attahing CONFIG_VOLUME ${CONFIG_VOLUME}..."
      openstack server add volume --device /dev/vdb ${SERVERNAME} ${CONFIG_VOLUME}
      openstack server add floating ip ${SERVERNAME} 172.16.253.107
      openstack volume show ${CONFIG_VOLUME}
      openstack server show ${SERVERNAME}
      exit 0
    else
      echo "VM ${SERVERNAME} is not active yet"
      sleep 2
    fi
done
