Make it work. Basic BSD shell doesn't seem to have array support (read
failed and ${!VAR[@]} as well). Also I don't know integer arithmetic so
I do a runtime length for the loop.
As we don't put $MACHINE/$RELASE into an `` block we should be okay
and not run into remote execution.
We can not use --link-dest when doing the dryrun as it will consider
everything up to date. So create some base args and then add the right
parts to it. Skip --checksum from the cli as it makes things really
slow. Use rsync (instead of diff -r) as this will be used for the final
handling. Keep on using sub dirs as this gives higher control. We could
otherwise just syncrhonize everything.
This is not tested and will be debugged on the server. Begin to
automate the on-server setup so we can make this a self-service
without much user interaction.
Create a Makefile that does the lifting of setting up the config
as it is done on the system. Handles the creation of the .ssh/config
for upload.
In the past upstream poned on such master Makefiles but as we
customize our build environment quite a bit it probably makes
sense and reduces the clone+set-up to two calls.