kickstart/lib/kickstart-deploy

27 lines
583 B
Bash
Executable File

#!/bin/bash -e
[[ "$1" == "--sudo" ]] && prefix="sudo " && shift
[[ "$1" == "--password" ]] && shift && prefix="echo \"$1\" | sudo -S " && shift
target=$1
[ "$target" ] || echo "Please, provide an ssh target"
shift
[ "$DEBUG" ] && debug="-x"
remote_command=$(
cat <<CMD
deploy_folder=\$(mktemp -d -t kickstart.XXXXX)
mkdir -p "\$deploy_folder"
cd "\$deploy_folder"
tar xz
exit_status=0
$prefix bash $debug install.sh || exit_status=\$?
rm -rf "\$deploy_folder"
exit \$exit_status
CMD
)
kickstart compile "$@"
tar chz -C compile . | ssh $target "$remote_command"