Sfoglia il codice sorgente

backup/restore done?

Chris Vogel 1 anno fa
parent
commit
d043e17111
3 ha cambiato i file con 20 aggiunte e 58 eliminazioni
  1. 2 2
      scripts/backup
  2. 0 6
      scripts/install
  3. 18 50
      scripts/restore

+ 2 - 2
scripts/backup

@@ -6,8 +6,8 @@ source /usr/share/yunohost/helpers
 ynh_print_info --message="Declaring files to be backed up..."
 ynh_backup --src_path="$install_dir"
 ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf"
-# ynh_backup --src_path="/etc/fail2ban/jail.d/$app.conf"
-# ynh_backup --src_path="/etc/fail2ban/filter.d/$app.conf"
+ynh_backup --src_path="/etc/fail2ban/jail.d/$app.conf"
+ynh_backup --src_path="/etc/fail2ban/filter.d/$app.conf"
 ynh_backup --src_path="/etc/logrotate.d/$app"
 ynh_backup --src_path="/opt/couchdb/etc/local.d/05-flohmarkt.ini"
 

+ 0 - 6
scripts/install

@@ -53,11 +53,6 @@ ynh_add_config --template="../conf/05-flohmarkt.ini" --destination="/opt/couchdb
 chown root:couchdb /opt/couchdb/etc/local.d/05-flohmarkt.ini
 chmod 640 /opt/couchdb/etc/local.d/05-flohmarkt.ini
 
-# @@ todo need to create a couchdb user and set the files to be readable/executable by it
-chmod 750 "$install_dir"
-chmod -R o-rwx "$install_dir"
-chown -R "$app:$app" "$install_dir"
-
 # restart couchdb to pick up changes
 systemctl restart couchdb
 systemctl status couchdb
@@ -136,4 +131,3 @@ ynh_systemd_action --service_name=$app --action="start"
 # @@ logrotation
 
 ynh_script_progression --message="Installation of $app completed" --last
-# qed

+ 18 - 50
scripts/restore

@@ -1,54 +1,28 @@
 #!/bin/bash
 
-#=================================================
-# GENERIC START
-#=================================================
-# IMPORT GENERIC HELPERS
-#=================================================
-
-# Keep this path for calling _common.sh inside the execution's context of backup and restore scripts
 source ../settings/scripts/_common.sh
 source /usr/share/yunohost/helpers
 
-#=================================================
-# STANDARD RESTORATION STEPS
-#=================================================
 # RESTORE THE APP MAIN DIR
-#=================================================
 ynh_script_progression --message="Restoring the app main directory..." --weight=10
-
 ynh_restore_file --origin_path="$install_dir"
 
-#=================================================
 # RESTORE THE DATA DIRECTORY
-#=================================================
 ynh_script_progression --message="Restoring the data directory..." --weight=1
-
 ynh_restore_file --origin_path="$data_dir" --not_mandatory
-
 mkdir -p $data_dir
 
-#=================================================
 # RESTORE FAIL2BAN CONFIGURATION
-#=================================================
 ynh_script_progression --message="Restoring the Fail2Ban configuration..." --weight=2
-
 ynh_restore_file --origin_path="/etc/fail2ban/jail.d/$app.conf"
 ynh_restore_file --origin_path="/etc/fail2ban/filter.d/$app.conf"
 ynh_systemd_action --action=restart --service_name=fail2ban
 
-#=================================================
-# SPECIFIC RESTORATION
-#=================================================
 # RESTORE THE NGINX CONFIGURATION
-#=================================================
 ynh_script_progression --message="Restoring the NGINX web server configuration..." --weight=1
-
 ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf"
 
-#=================================================
 # REINSTALL COUCHDB
-#=================================================
 ynh_script_progression --message="Reinstalling couchdb..." --weight=40
 
 echo "\
@@ -56,10 +30,10 @@ couchdb couchdb/mode select standalone
 couchdb couchdb/mode seen true
 couchdb couchdb/bindaddress string 127.0.0.1
 couchdb couchdb/bindaddress seen true
-couchdb couchdb/cookie string $password
-couchdb couchdb/adminpass password $password
+couchdb couchdb/cookie string $couchdb_magic_cookie
+couchdb couchdb/adminpass password $password_couchdb_admin
 couchdb couchdb/adminpass seen true
-couchdb couchdb/adminpass_again password $password
+couchdb couchdb/adminpass_again password $password_couchdb_admin
 couchdb couchdb/adminpass_again seen true" | debconf-set-selections
 DEBIAN_FRONTEND=noninteractive # apt-get install -y --force-yes couchdb
 
@@ -68,39 +42,33 @@ ynh_install_extra_app_dependencies \
     --key="https://couchdb.apache.org/repo/keys.asc" \
     --package="couchdb"
 
-chmod 750 "$install_dir"
-chmod -R o-rwx "$install_dir"
-chown -R $app:$app "$install_dir"
+# stop couchdb
+systemctl stop couchdb
 
-chmod 750 "$data_dir"
-chmod -R o-rwx "$data_dir"
-chown -R $app:www-data "$data_dir"
+# add couchdb configuration
+ynh_script_progression --message="Adding a configuration file..." --weight=2
+ynh_restore_file --origin_path="/opt/couchdb/etc/local.d/05-flohmarkt.ini"
+chown root:couchdb /opt/couchdb/etc/local.d/05-flohmarkt.ini
+chmod 640 /opt/couchdb/etc/local.d/05-flohmarkt.ini
+
+# restore couchdb directory
+ynh_script_progression --message="Restoring couchdb directory..." --weight=1
+ynh_restore_file --origin_path="/var/lib/couchdb"
+
+# start couchdb
+systemctl start couchdb
+systemctl status couchdb
 
-#=================================================
 # RESTORE THE LOGROTATE CONFIGURATION
-#=================================================
 ynh_script_progression --message="Restoring the logrotate configuration..." --weight=1
-
 ynh_restore_file --origin_path="/etc/logrotate.d/$app"
 
-#=================================================
 # INTEGRATE SERVICE IN YUNOHOST
-#=================================================
 ynh_script_progression --message="Integrating service in YunoHost..." --weight=1
-
 yunohost service add $app --description="A decentral federated small advertisement platform" --log="/var/log/$app/$app.log"
 
-#=================================================
-# GENERIC FINALIZATION
-#=================================================
 # RELOAD NGINX
-#=================================================
 ynh_script_progression --message="Reloading NGINX web server..." --weight=1
-
 ynh_systemd_action --service_name=nginx --action=reload
 
-#=================================================
-# END OF SCRIPT
-#=================================================
-
 ynh_script_progression --message="Restoration completed for $app" --last