Просмотр исходного кода

before test

before I removed the explicit backup and restore of /etc/yunohost/apps/flohmarkt.
Chris Vogel 1 год назад
Родитель
Сommit
ebae47a4c9
2 измененных файлов с 40 добавлено и 26 удалено
  1. 2 2
      scripts/install
  2. 38 24
      scripts/restore

+ 2 - 2
scripts/install

@@ -27,7 +27,7 @@ ynh_script_progression --message="Installing CouchDB..." --weight=60
 # This value must match for all nodes in the cluster. If they do not match,
 # attempts to connect the node to the cluster will be rejected.
 couchdb_magic_cookie=$(ynh_string_random --length=23 --filter='A-Za-z0-9_')
-ynh_app_setting_set --app=$app --key=erlang_cookie --value="$couchdb_magic_cookie"
+ynh_app_setting_set --app=$app --key=couchdb_magic_cookie --value="$couchdb_magic_cookie"
 
 echo "\
 couchdb couchdb/mode select standalone
@@ -83,7 +83,7 @@ python3 -m venv --without-pip "$install_dir/venv"
 jwtsecret=$(ynh_string_random --length=344 --filter='a-zA-Z0-9/+')
 
 password_couchdb_flohmarkt=$(ynh_string_random --length=31 --filter='A-Za-z0-9_.:,')
-ynh_app_setting_set --app=$app --key=erlang_cookie --value="$password_couchdb_flohmarkt"
+ynh_app_setting_set --app=$app --key=password_couchdb_flohmarkt --value="$password_couchdb_flohmarkt"
 
 # generate flohmarkt.conf
 ynh_add_config --template="../conf/flohmarkt.conf" --destination="$install_dir/$app/flohmarkt.conf"

+ 38 - 24
scripts/restore

@@ -3,31 +3,30 @@
 source ../settings/scripts/_common.sh
 source /usr/share/yunohost/helpers
 
-# RESTORE THE APP MAIN DIR
-ynh_script_progression --message="Restoring the app main directory..." --weight=10
-ynh_restore_file --origin_path="$install_dir"
+##
+## 1. - 4. order matters!
+##
+
+# 1. restore couchdb directory
+# uncritical, good to have
+ynh_script_progression --message="Restoring couchdb directory..." --weight=1
+ynh_restore_file --origin_path="/var/lib/couchdb"
 
-# restore the apps settings
+# 2. restore the apps settings
+# they contain variables needed to install couchdb (see below)
 ynh_script_progression --message="Restoring flohmarkts settings..." --weight=1
 ynh_restore_file --origin_path="/etc/yunohost/apps/$app"
 
+# 3. get variables from settings.yaml for couchdb
+ynh_script_progression --message="Restoring settings for couchdb install..." --weight=1
+# export app=$YNH_APP_INSTANCE_NAME
+# export couchdb_magic_cookie=$(ynh_app_setting_get $app couchdb_magic_cookie)
+# export password_couchdb_admin=$(ynh_app_setting_get $app password_couchdb_admin)
+# export password_couchdb_admin=$(ynh_app_setting_get $app password_couchdb_admin)
+# @@ debug
+env
 
-# 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
-
-# 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
+# 4. reinstall couchdb
 ynh_script_progression --message="Reinstalling couchdb..." --weight=40
 
 echo "\
@@ -56,14 +55,29 @@ 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 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
+
+# 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"
+
 # RESTORE THE LOGROTATE CONFIGURATION
 ynh_script_progression --message="Restoring the logrotate configuration..." --weight=1
 ynh_restore_file --origin_path="/etc/logrotate.d/$app"