diff options
Diffstat (limited to 'upload-os')
-rwxr-xr-x | upload-os | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/upload-os b/upload-os new file mode 100755 index 0000000..b573806 --- /dev/null +++ b/upload-os @@ -0,0 +1,29 @@ +#! /usr/bin/env bash + +# Upload the Build OS images to a TFTP server. +# +# If the tftp server host is not specified, then build@build-cache is +# assumed. The images are uploaded to /var/lib/tftpboot/buildos-devel/. +# +usage="usage: $0 [<user>@<host>]" + +owd="$(pwd)" +trap "{ cd '$owd'; exit 1; }" ERR +set -o errtrace # Trap in functions. + +function info () { echo "$*" 1>&2; } +function error () { info "$*"; exit 1; } + +if [ -z "$1" ]; then + host="build@build-cache" +else + host="$1" +fi + +# Use --delay-updates to make things a bit more atomic (we don't want to +# start rebooting before kernel/initrd are finished syncing). The cost +# is a bit more disk space used to temporarily hold copies. +# +rsync -v --progress -lpt -c --copy-unsafe-links --delay-updates \ + buildos-image buildos-initrd buildos-buildid \ + $host:/var/lib/tftpboot/buildos-devel/ |