attempted bug fix for dsfull
[automated-distro-installer] / dsfull
diff --git a/dsfull b/dsfull
index f141bc508a2f7a7012f96aaa06ea96f99cee8296..c6f18759b4e711ebb33cf7c28eac1a8282962e46 100755 (executable)
--- a/dsfull
+++ b/dsfull
@@ -7,6 +7,12 @@
 set -eE -o pipefail
 trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
 
+reboot=true
+if [[ $1 == -r ]]; then
+    reboot=false
+    shift
+fi
+
 host=$1
 
 if [[ ! $host || $host == -h ]]; then
@@ -15,14 +21,13 @@ if [[ ! $host || $host == -h ]]; then
 fi
 
 set -x
-ssh $host sudo bash <<'EOF'
-set -e
-systemctl stop keyscriptoff.service
-reboot ||:
-EOF
+if $reboot; then
+    # untested, this caused hang using here doc.
+    ssh $host sudo bash -c "touch /tmp/keyscript-off; reboot" ||:
+fi
 
 pxe-server fai $host
 while ! ssh $host :; do
-      sleep 5
+    sleep 5
 done
 dsremote $host