add rescue, fix default pxe, ubuntu locale
[automated-distro-installer] / faiserver-revm
index 2b2864ae4e3e239a1dab8940b55df87fc06dff64..6d598a6f3f084b1771e3f6fb3fa7ffa1cb7d9882 100755 (executable)
@@ -1,14 +1,27 @@
 #!/bin/bash -l
-# 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 $?" >&2' ERR
-
-cd "${BASH_SOURCE%/*}"
-
+cleanup() { :; }
+trap 'cleanup; echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
+
+x="$(readlink -f "$BASH_SOURCE")"; cd ${x%/*}
+
+usage() {
+    cat <<EOF
+usage: ${0##*/} [-h|--help]
+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. That mac is a randomly generated one in the libvirt range.
+EOF
+    exit $1
+}
+case $1 in
+    -h|--help) usage ;;
+esac
+
+cleanup() { pxe-server :; }
 ./debian-pxe-preseed -i 192.168.1.1 -u ian -g vda
 
 name=faiserver
@@ -28,6 +41,8 @@ while ! scp $opts faiserver-setup root@faiserver:; do
     sleep 5
 done
 
-./pxe-server :
+# 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