garage_ynh/scripts/backup

82 lines
2.6 KiB
Plaintext
Raw Normal View History

2014-11-04 09:47:50 +01:00
#!/bin/bash
2017-06-02 18:28:20 +02:00
#=================================================
2017-06-17 23:19:48 +02:00
# GENERIC START
2017-06-02 18:28:20 +02:00
#=================================================
2017-06-17 23:19:48 +02:00
# MANAGE SCRIPT FAILURE
2017-06-02 18:28:20 +02:00
#=================================================
2017-06-17 23:19:48 +02:00
# Exit on command errors and treat access to unset variables as an error
set -eu
2017-06-02 18:28:20 +02:00
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
2014-11-04 09:47:50 +01:00
2017-06-05 13:10:28 +02:00
if [ ! -e _common.sh ]; then
# Get the _common.sh file if it's not in the current directory
cp ../settings/scripts/_common.sh ./_common.sh
chmod a+rx _common.sh
2017-06-05 13:10:28 +02:00
fi
source _common.sh
source /usr/share/yunohost/helpers
2014-11-04 09:47:50 +01:00
2017-06-02 18:28:20 +02:00
#=================================================
# LOAD SETTINGS
#=================================================
app=$YNH_APP_INSTANCE_NAME
final_path=$(ynh_app_setting_get $app final_path)
domain=$(ynh_app_setting_get $app domain)
db_name=$(ynh_app_setting_get $app db_name)
db_pwd=$(ynh_app_setting_get $app mysqlpwd)
#=================================================
# STANDARD BACKUP STEPS
#=================================================
2017-06-17 23:19:48 +02:00
# BACKUP THE APP MAIN DIR
2017-06-02 18:28:20 +02:00
#=================================================
ynh_backup "$final_path" "${backup_dir}$final_path"
2017-06-02 18:28:20 +02:00
#=================================================
2017-06-17 23:19:48 +02:00
# BACKUP THE NGINX CONFIGURATION
2017-06-02 18:28:20 +02:00
#=================================================
ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" "${backup_dir}/etc/nginx/conf.d/$domain.d/$app.conf"
2017-06-02 18:28:20 +02:00
#=================================================
2017-06-17 23:19:48 +02:00
# BACKUP THE PHP-FPM CONFIGURATION
2017-06-02 18:28:20 +02:00
#=================================================
ynh_backup "/etc/php5/fpm/pool.d/$app.conf" "${backup_dir}/etc/php5/fpm/pool.d/$app.conf"
ynh_backup "/etc/php5/fpm/conf.d/20-$app.ini" "${backup_dir}/etc/php5/fpm/conf.d/20-$app.ini"
2017-06-02 18:28:20 +02:00
#=================================================
2017-06-17 23:19:48 +02:00
# BACKUP THE MYSQL DATABASE
2017-06-02 18:28:20 +02:00
#=================================================
ynh_mysql_dump_db "$db_name" > db.sql
ynh_backup "db.sql" "${backup_dir}/db.sql"
2017-06-02 18:28:20 +02:00
#=================================================
# SPECIFIC BACKUP
#=================================================
# BACKUP LOGROTATE
#=================================================
ynh_backup "/etc/logrotate.d/$app" "${backup_dir}/etc/logrotate.d/$app"
2017-06-02 18:28:20 +02:00
#=================================================
# BACKUP SYSTEMD
#=================================================
ynh_backup "/etc/systemd/system/$app.service" "${backup_dir}/etc/systemd/system/$app.service"
2017-06-02 18:28:20 +02:00
#=================================================
2017-06-17 23:19:48 +02:00
# BACKUP THE CRON FILE
2017-06-02 18:28:20 +02:00
#=================================================
ynh_backup "/etc/cron.d/$app" "${backup_dir}/etc/cron.d/$app"