home · contact · privacy
Fix.
[config] / buster / setup_scripts / migrate_app.sh
index c0e1637c699e7db769077e5877273d0f6aaf5b94..f06b156fb2016b67b2157843768971e46937900d 100755 (executable)
@@ -2,18 +2,29 @@
 set -e
 set -x
 
-if [ "$#" -lt 4 ]; then
-    echo 'Need at least four arguments: old server IP, service name, DB name, and backup directory names.'
+if [ "$#" -lt 2 ]; then
+    echo 'Need two arguments: old server IP, and service name.'
     false
 fi
-if [ ! "$1" = "pleroma" ] && [ ! "$1" = "peertube" ]; then
-    echo "Need legal service name (pleroma or peertube)."
+if [ ! "$2" = "pleroma_otp" ] && [ ! "$2" = "pleroma_source" ] && [ ! "$2" = "peertube" ]; then
+    echo "Need legal service name (pleroma_otp or pleroma_source or peertube)."
     false
 fi
 server_ip="$1"
 app="$2"
-db_name="$3"
-shift 3
+service="$2"
+if [ "${app}" = "pleroma_otp" ]; then
+    db_name="pleroma"
+    dirs="/var/lib/pleroma/uploads /etc/pleroma"
+    service=pleroma
+elif [ "${app}" = "pleroma_source" ]; then
+    db_name="pleroma"
+    dirs="/var/lib/pleroma/uploads /opt/pleroma/config"
+    service=pleroma
+elif [ "${app}" = "peertube" ]; then
+    db_name="peertube_prod"
+    dirs="/var/www/peertube/storage /var/www/peertube/config"
+fi
 
 config_tree_prefix="${HOME}/config/buster"
 setup_scripts_dir="${config_tree_prefix}/setup_scripts"
@@ -23,6 +34,6 @@ cd "${setup_scripts_dir}"
 read -p'Hit Enter when you are done.' ignore
 eval $(ssh-agent) && ssh-add
 echo 'Enter password for root on target server next.'
-ssh plom@"${server_ip}" 'su -lc "cd config/buster/setup_scripts && git pull && ./backup_${app}.sh ${app} ${db_name} $@"'
+ssh plom@"${server_ip}" "su -lc \"cd config/buster/setup_scripts && git pull && ./backup_app.sh ${service} ${db_name} ${dirs}\""
 scp plom@"${server_ip}":~/${app}_backup.tar /home/plom/${app}_backup.tar
-./restore_${app}.sh
+./restore_app.sh "${app}" "${db_name}"