-cleanup() { :; }
-set -eE -o pipefail
-trap 'cleanup; echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
-script_dir=$(dirname $(readlink -f "$BASH_SOURCE"))
+x="$(readlink -f "$BASH_SOURCE")"
+script_dir="${x%/*}"
+source "${script_dir}/bash-trace"
e() { echo "$*"; "$@"; }
exit $1
}
+orig_args=("$@")
new_disk=false
temp=$(getopt -l help hnr "$@") || usage 1
eval set -- "$temp"
esac
done
-
# change this to test different disk counts. 1 and > 1 should be the only
# important things to test.
disk_count=1
# Copy our script elsewhere so we can develop it
# and save it at the same time it's running
rm -rf /tmp/faifreeze
- mkdir -p /a/tmp
cp -ar /a/bin/fai /tmp/faifreeze
- exec /tmp/faifreeze/${BASH_SOURCE##*/} "$@"
+ exec /tmp/faifreeze/${BASH_SOURCE##*/} "${orig_args[@]}"
fi
cd $script_dir
./pxe-server
./faiserver-disable
}
+_errcatch_cleanup=cleanup
+
if is_arch_revm; then
- ./pxe-server demohost arch
+ e ./pxe-server demohost arch
sleep 2
# via osinfo-query os. guessing arch is closest to latest fedora.
variant=fedora22
else
- ./pxe-server demohost fai
+ e ./pxe-server demohost fai
sleep 2
# I don't think these variants actually make a diff for us, but I
# use the appropriate one when trying a new distro just in case.
disk_arg+=("--disk path=$f")
if $new_disk || [[ ! -e $f ]]; then
s rm -f $f
- e s qemu-img create -o preallocation=metadata -f qcow2 $f 20G
+ e s qemu-img create -o preallocation=metadata -f qcow2 $f 50G
fi
done
while ! timeout -s 9 10 ssh -oBatchMode=yes root@$name /bin/true; do
e sleep 5
done
-cleanup() { :; }
+unset _errcatch_cleanup
e pxe-server
if is_arch_revm; then
./arch-init-remote $name