X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=dsfull;h=f1371d18ab07f59e43c2192cecec69b4fbef5a5f;hb=8bf6d9c4cc9ec88976c62af33f32c0c660e977e0;hp=40c933ca9c255f760aa7989f8193d8bbda85d8f3;hpb=c820c35e71e31c33de6743f8d225f7c5cd71a70f;p=automated-distro-installer diff --git a/dsfull b/dsfull index 40c933c..f1371d1 100755 --- a/dsfull +++ b/dsfull @@ -13,9 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -set -eE -o pipefail -cleanup() { :; } -trap 'cleanup; echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR +x="$(readlink -f "$BASH_SOURCE")"; source "${x%/*}/bash-trace" reboot=true if [[ $1 == -r ]]; then @@ -32,8 +30,9 @@ Note: relies on other repos and paths specific to Ian's system. Note: disables btrbk.timer. If it was active before, it should be manual reenabled after completion. ---no-r Don't ssh to host and reboot. -k ssh to host and kexec, don't use pxe. implies --no-r +--no-r Don't ssh to host and reboot. Use this for when you are + booting or rebooting from some other means. -h|--help Print help and exit. Note: Uses GNU getopt options parsing style @@ -60,28 +59,27 @@ host=$1 ##### end command line parsing ######## -e ser stop btrbk.timer +ser stop btrbk.timer if [[ ! $host ]]; then echo "$0: error: expected 1 arg of hostname" exit 1 fi -e() { echo "$@"; "$@"; } if $kexec; then - e fai-redep - e myfai-chboot $host - e fai-kexec $host ||: + fai-redep + myfai-chboot $host + live-kexec $host ||: else - cleanup() { pxe-server; } - e pxe-server $host fai + cleanup() { pxe-server; }; _errcatch_cleanup=cleanup + pxe-server $host fai if $reboot; then # untested, this caused hang using here doc. - ssh $host "touch /tmp/keyscript-off; sudo reboot" ||: & + ssh root@$host "touch /tmp/keyscript-off; reboot" ||: & fi - e pxe-server -a - cleanup() { :; } + pxe-server -a + unset _errcatch_cleanup fi error=true @@ -92,7 +90,7 @@ for ((i=0; i<240; i++)); do fi sleep 5 done -e faiserver-disable +faiserver-disable if $error; then echo "$0: error: timeout" exit 1 @@ -100,5 +98,8 @@ fi while [[ $(ser is-active btrbk.service) == active ]]; do sleep 5 done -e btrbk-run -t $host -e dsremote $host +btrbk-run -t $host +#ssh $host /a/bin/distro-setup/distro-begin +# this should be done instead of distro-begin, but +# keeping it to 2 steps for now +dsremote $host