From ebae47a4c9b23d5786777a145431e84701b75a61 Mon Sep 17 00:00:00 2001 From: Chris Vogel Date: Sun, 21 Apr 2024 16:23:59 +0200 Subject: [PATCH] before test before I removed the explicit backup and restore of /etc/yunohost/apps/flohmarkt. --- scripts/install | 4 ++-- scripts/restore | 62 ++++++++++++++++++++++++++++++------------------- 2 files changed, 40 insertions(+), 26 deletions(-) diff --git a/scripts/install b/scripts/install index 75e00ba..4c133d3 100755 --- a/scripts/install +++ b/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" diff --git a/scripts/restore b/scripts/restore index 83fc11d..b409cb9 100755 --- a/scripts/restore +++ b/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! +## -# restore the apps settings +# 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" + +# 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"