set -x
if [ "$#" -ne 4 ]; then
- echo 'Need domain name and mail and old server and init state (old, new?).'
- false
-fi
-if [ ! "$4" = "copy" ] && [ ! "$4" = "new" ]; then
- echo "Need init state to be either 'copy' or 'new'"
+ echo 'Need domain name and mail and old server.'
false
fi
domain="$1"
mail="$2"
old_server="$3"
-init_state="$4"
# Install configs, set up firewall.
echo "postfix postfix/main_mailer_type string 'Internet Site'" | debconf-set-selections
geheim_dir=geheim
su -lc "ln -s /home/plom/${dump_dir} /var/www-dump/${dump_dir}" plom
su -lc "ln -s /home/plom/${geheim_dir} /var/www-dump/${geheim_dir}" plom
-if [ "${init_state}" = "new" ]; then
- su -lc "mkdir ${dump_dir} ${geheim_dir}" plom
- password_geheim=$(pwgen -1)
- echo "foo:{PLAIN}${password_geheim}" > /var/www-dump/password_geheim
- echo "geheim password is: ${password_geheim}"
-else
- cp "${config_tree_prefix}/setup_scripts/mirror_dir.sh" /home/plom/
- su -lc "./mirror_dir.sh ${old_server} /home/plom/${dump_dir}" plom
- su -lc "./mirror_dir.sh ${old_server} /home/plom/${geheim_dir}" plom
- su -lc "scp plom@${old_server}:/var/www-dump/password_geheim ~" plom
- mv /home/plom/password_geheim /var/www-dump/password_geheim
- rm /home/plom/mirror_dir.sh
-fi
+cp "${config_tree_prefix}/setup_scripts/mirror_dir.sh" /home/plom/
+su -lc "./mirror_dir.sh ${old_server} /home/plom/${dump_dir}" plom
+su -lc "./mirror_dir.sh ${old_server} /home/plom/${geheim_dir}" plom
+su -lc "scp plom@${old_server}:/var/www-dump/password_geheim ~" plom
+mv /home/plom/password_geheim /var/www-dump/password_geheim
+rm /home/plom/mirror_dir.sh
# Set up redo.
wget http://news.dieweltistgarnichtso.net/bin/archives/redo-sh.tar.gz
cp "${config_tree_prefix}/other_files/url-catcher_customizations.json" /home/plom/url-catcher/customizations.json
systemctl enable url_catcher.service
service url_catcher start
-if [ ! "${init_state}" = "new" ]; then
- cp "${config_tree_prefix}/setup_scripts/mirror_dir.sh" /home/plom/
- su -lc "./mirror_dir.sh ${old_server} /home/plom/url-catcher/ips" plom
- su -lc "./mirror_dir.sh ${old_server} /home/plom/url-catcher/lists" plom
- rm /home/plom/mirror_dir.sh
-fi
+cp "${config_tree_prefix}/setup_scripts/mirror_dir.sh" /home/plom/
+su -lc "./mirror_dir.sh ${old_server} /home/plom/url-catcher/ips" plom
+su -lc "./mirror_dir.sh ${old_server} /home/plom/url-catcher/lists" plom
+rm /home/plom/mirror_dir.sh
# Set up index.html
cp "${config_tree_prefix}/other_files/dumpsite_index.html" /var/www-dump/index.html
#!/bin/sh
set -e
-if [ "$#" -ne 5 ]; then
- echo 'Need domain name and mail and old server IP and key ID and init state (old, new?) as argument.'
+if [ "$#" -ne 4 ] && [ "$#" -ne 5 ]; then
+ echo 'Need domain name and mail and key ID and init state and possibly old server IP as argument.'
false
fi
-if [ ! "$5" = "copy" ] && [ ! "$5" = "new" ] && [ ! "$5" = "upgrade" ]; then
+if [ ! "$4" = "copy" ] && [ ! "$4" = "new" ] && [ ! "$4" = "upgrade" ]; then
echo "Need init state to be either 'copy' or 'new' or 'upgrade'"
false
fi
+if [ ! "$4" = "new" ] and [ "$#" -ne 5 ]; then
+ echo "With init state != 'new' need fifth argument old server IP."
+ false
+fi
domain="$1"
mail="$2"
-old_server="$3"
-gpg_key="$4"
-init_state="$5"
+gpg_key="$3"
+init_state="$4"
+old_server="$5"
# Install configs, set up firewall.
config_tree_prefix="${HOME}/config/buster"
rm /etc/nginx/sites-enabled/default
# Set up connection to old server.
-cp "${config_tree_prefix}/setup_scripts/prepare_to_meet_server.sh" /home/plom/
-chown plom:plom /home/plom/prepare_to_meet_server.sh
-su -lc "./prepare_to_meet_server.sh ${old_server}" plom
-read -p'Hit Enter when you are done.' ignore
-rm /home/plom/prepare_to_meet_server.sh
+if [ ! "${init_state}" = "new" ]; then
+ cp "${config_tree_prefix}/setup_scripts/prepare_to_meet_server.sh" /home/plom/
+ chown plom:plom /home/plom/prepare_to_meet_server.sh
+ su -lc "./prepare_to_meet_server.sh ${old_server}" plom
+ read -p'Hit Enter when you are done.' ignore
+ rm /home/plom/prepare_to_meet_server.sh
+fi
# Set up repos dir.
# To use this dir, "git clone --mirror" repo source paths into it as user plom.