#!/bin/bash -l
+# Usage: faiserver-revm
+# Create a vm which is a fai server.
+#
+# This assumes you've set the dhcp server to make
+# 52:54:00:56:09:f9 be faiserver.
set -x
set -eE -o pipefail
-trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?"' ERR
+cleanup() { :; }
+trap 'cleanup; echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
-cd $(dirname $(readlink -f "$BASH_SOURCE"))
+cd "${BASH_SOURCE%/*}"
+cleanup() { pxe-server :; }
./debian-pxe-preseed -i 192.168.1.1 -u ian -g vda
name=faiserver
f=/var/lib/libvirt/images/${name}
s qemu-img create -o preallocation=metadata -f qcow2 $f 30G
+# uniq because virt-viewer spams me with pointless gtk warnings
s virt-install --os-variant debian8 --cpu host -n $name --pxe -r 1024 --vcpus 1 \
- --disk $f -w bridge=br0,mac=52:54:00:56:09:f9 &
+ --disk $f -w bridge=br0,mac=52:54:00:56:09:f9 |& sed "/^ *$/d" | uniq &
sleep $((60*6)) # takes like 10x as long as a fai install!
-while ! scp fai-setup root@faiserver:; do
+
+opts="-oStrictHostKeyChecking=false -oUserKnownHostsFile=/dev/null"
+while ! scp $opts faiserver-setup root@faiserver:; do
sleep 5
done
-ssh root@faiserver ./fai-setup
+# note: with a vm, pxe boot is turned off in the bios after it's first reboot.
+cleanup() { :; }
+./pxe-server
+
+ssh $opts root@faiserver ./faiserver-setup