[mcp] Mend installation scripts
[fuel.git] / mcp / reclass / scripts / infra.sh
index 7f5c210..b83f215 100755 (executable)
@@ -1,7 +1,5 @@
 #!/bin/bash
 
-SSH_KEY=mcp.rsa
-SALT_MASTER=192.168.10.100
 BASE_IMAGE=https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img
 declare -A NODES=( [cfg01]=4096 [ctl01]=6144 [ctl02]=6144 [ctl03]=6144 [gtw01]=2048 [cmp01]=2048 )
 
@@ -13,7 +11,7 @@ apt-get install -y mkisofs curl virtinst cpu-checker qemu-kvm
 
 # get base image
 mkdir -p images
-wget -nc $BASE_IMAGE
+wget -P /tmp -nc $BASE_IMAGE
 
 for node in "${!NODES[@]}"; do
   # clean up existing nodes
@@ -24,7 +22,7 @@ for node in "${!NODES[@]}"; do
 
   # create/prepare images
   [ -f images/mcp_${node}.iso ] || ./create-config-drive.sh -k ${SSH_KEY}.pub -u user-data.sh -h ${node} images/mcp_${node}.iso
-  cp ${BASE_IMAGE/*\/} images/mcp_${node}.qcow2
+  cp /tmp/${BASE_IMAGE/*\/} images/mcp_${node}.qcow2
   qemu-img resize images/mcp_${node}.qcow2 100G
 done
 
@@ -47,6 +45,7 @@ for node in "${!NODES[@]}"; do
   --network network:internal,model=virtio \
   --network network:public,model=virtio \
   --disk path=$(pwd)/images/mcp_${node}.qcow2,format=qcow2,bus=virtio,cache=none,io=native \
+  --os-type linux --os-variant none \
   --boot hd --vnc --console pty --autostart --noreboot \
   --disk path=$(pwd)/images/mcp_${node}.iso,device=cdrom
 done
@@ -64,20 +63,16 @@ done
 CONNECTION_ATTEMPTS=20
 SLEEP=15
 
-# refresh salt master host key
-ssh-keygen -R $SALT_MASTER
-
 # wait until ssh on Salt master is available
 echo "Attempting to ssh to Salt master ..."
 ATTEMPT=1
 
 while (($ATTEMPT <= $CONNECTION_ATTEMPTS)); do
-  ssh -i ${SSH_KEY} ubuntu@$SALT_MASTER uptime
+  ssh $SSH_OPTS ubuntu@$SALT_MASTER uptime
   case $? in
     (0) echo "${ATTEMPT}> Success"; break ;;
     (*) echo "${ATTEMPT}/${CONNECTION_ATTEMPTS}> ssh server ain't ready yet, waiting for ${SLEEP} seconds ..." ;;
   esac
   sleep $SLEEP
-  ssh-keyscan -t ecdsa $SALT_MASTER >> ~/.ssh/known_hosts
   ((ATTEMPT+=1))
 done