diff options
author | tv <tv@shackspace.de> | 2015-09-27 00:22:50 +0200 |
---|---|---|
committer | tv <tv@shackspace.de> | 2015-09-27 00:37:20 +0200 |
commit | c9ccf22b154205caf55262ba6aa305e2c2247a02 (patch) | |
tree | 1190657c3702bbeada39de2c449a17aea3d931c5 /krebs/3modules/build/infest/finalize.sh | |
parent | 9157c6fbc9e355dd7a6ea8c9e33a280492a4d35b (diff) |
krebs.build: merge deploy and infest
Diffstat (limited to 'krebs/3modules/build/infest/finalize.sh')
-rw-r--r-- | krebs/3modules/build/infest/finalize.sh | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/krebs/3modules/build/infest/finalize.sh b/krebs/3modules/build/infest/finalize.sh new file mode 100644 index 000000000..ced5a4d4d --- /dev/null +++ b/krebs/3modules/build/infest/finalize.sh @@ -0,0 +1,65 @@ +#! /bin/sh +set -eux +{ + umount /mnt/nix || [ $? -eq 32 ] + umount /mnt/boot || [ $? -eq 32 ] + umount /mnt/root || [ $? -eq 32 ] + umount /mnt || [ $? -eq 32 ] + umount /boot || [ $? -eq 32 ] + + PATH=$(set +f; for i in /nix/store/*coreutils*/bin; do :; done; echo $i) + export PATH + + mkdir /oldshit + + mv /bin /oldshit/ + mv /newshit/bin / + + # TODO ensure /boot is empty + rmdir /newshit/boot + + # skip /dev + rmdir /newshit/dev + + mv /etc /oldshit/ + mv /newshit/etc / + + # skip /nix (it's already there) + rmdir /newshit/nix + + # skip /proc + rmdir /newshit/proc + + # skip /run + rmdir /newshit/run + + # skip /sys + rmdir /newshit/sys + + # skip /root + rmdir /newshit/root + + # skip /tmp + # TODO rmdir /newshit/tmp + + mv /home /oldshit/ + mv /newshit/home / + + mv /usr /oldshit/ + mv /newshit/usr / + + mv /var /oldshit/ + mv /newshit/var / + + mv /lib /oldshit/ + mv /lib64 /oldshit/ + mv /sbin /oldshit/ + mv /srv /oldshit/ + mv /opt /oldshit/ + + + mv /newshit /root/ # TODO this one shoult be empty + mv /oldshit /root/ + + sync +} |