| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- #!/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 "\
- 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/adminpass seen true
- couchdb couchdb/adminpass_again password $password
- couchdb couchdb/adminpass_again seen true" | debconf-set-selections
- DEBIAN_FRONTEND=noninteractive # apt-get install -y --force-yes couchdb
- ynh_install_extra_app_dependencies \
- --repo="deb https://apache.jfrog.io/artifactory/couchdb-deb/ $(lsb_release -c -s) main" \
- --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"
- chmod 750 "$data_dir"
- chmod -R o-rwx "$data_dir"
- chown -R $app:www-data "$data_dir"
- #=================================================
- # 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="Open-source document-oriented NoSQL database" --log="/var/log/$app/$app.log" --needs_exposed_ports "$port"
- #=================================================
- # 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
|