usage: ${0##*/} [OPTIONS] [HOST]
Deploy fai config (the one in nfs) to HOST or default faiserver
+Note, for booting from fai-cd, this needs to be called from myfai-chboot or that via pxe-server,
+due to setting
+echo FAI_ACTION=$fai_action >> /srv/fai/config/class/LAST.var
+note FAI_ACTION might be able to be set elsewhere, like in grub for this case
-d DISTRO DISTRO for setting up fai class DESKTOP packages, for preinstalling stuff.
-t TARGET_HOST Copy only secrets for TARGET_HOST into the config space. Useful for virtual server
# these files are not available.
if [[ $target ]]; then
+ if sudo test -e /q/root/shadow/$target; then
+ shadowfile=shadow/$target # empty otherwise
+ fi
sudo rsync -lpt --files-from=- /q/root root@$faiserver_host:/srv/fai/config/distro-install-common <<EOF
luks/$target
luks/host-$target
-shadow/$target
+$shadowfile
EOF
else
sudo rsync -rlpt /q/root/shadow /q/root/luks root@$faiserver_host:/srv/fai/config/distro-install-common
ssh root@$faiserver_host dd of=/srv/fai/config/package_config/DESKTOP 2>/dev/null ||: # broken pipe
-rsync -rplt --delete $BASEFILE_DIR/*.gz root@$faiserver_host:/srv/fai/config/basefiles/
+rsync -rplt --include '/*.gz' --exclude '/**' --delete-excluded $BASEFILE_DIR/ root@$faiserver_host:/srv/fai/config/basefiles/
ssh root@$faiserver_host bash <<'EOF'
set -eE -o pipefail
# make it the root because pxe-kexec only looks there.