From f89431e9fdade414ec2208bde677e149a2a72976 Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Fri, 2 Jun 2017 18:28:20 +0200 Subject: [PATCH 1/4] [enh] Upgrade backup --- scripts/backup | 92 ++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 67 insertions(+), 25 deletions(-) diff --git a/scripts/backup b/scripts/backup index af8ccd9..1aa253f 100755 --- a/scripts/backup +++ b/scripts/backup @@ -1,33 +1,75 @@ #!/bin/bash +#================================================= +# GENERIC STARTING +#================================================= +# MANAGE FAILURE OF THE SCRIPT +#================================================= + # Exit on command errors and treat unset variables as an error set -eu -# See comments in install script -app=$YNH_APP_INSTANCE_NAME +#================================================= +# IMPORT GENERIC HELPERS +#================================================= -# Source YunoHost helpers source /usr/share/yunohost/helpers -# Backup sources & data -# Note: the last argument is where to save this path, see the restore script. -ynh_backup "/var/www/${app}" "sources" - -### MySQL (remove if not used) ### -# If a MySQL database is used: -# # Dump the database -# dbname=$app -# dbuser=$app -# dbpass=$(ynh_app_setting_get "$app" mysqlpwd) -# mysqldump -u "$dbuser" -p"$dbpass" --no-create-db "$dbname" > ./dump.sql -### MySQL end ### - -# Copy NGINX configuration -domain=$(ynh_app_setting_get "$app" domain) -ynh_backup "/etc/nginx/conf.d/${domain}.d/${app}.conf" "nginx.conf" - -### PHP (remove if not used) ### -# If a dedicated php-fpm process is used: -# # Copy PHP-FPM pool configuration -# ynh_backup "/etc/php5/fpm/pool.d/${app}.conf" "php-fpm.conf" -### PHP end ### +#================================================= +# 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 +#================================================= +# BACKUP OF THE MAIN DIR OF THE APP +#================================================= + +new_ynh_backup "$final_path" + +#================================================= +# BACKUP OF THE NGINX CONFIGURATION +#================================================= + +new_ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" + +#================================================= +# BACKUP OF THE PHP-FPM CONFIGURATION +#================================================= + +new_ynh_backup "/etc/php5/fpm/pool.d/$app.conf" +new_ynh_backup "/etc/php5/fpm/conf.d/20-$app.ini" + +#================================================= +# BACKUP OF THE SQL BDD +#================================================= + +ynh_mysql_dump_db "$db_name" > db.sql +new_ynh_backup "db.sql" + +#================================================= +# SPECIFIC BACKUP +#================================================= +# BACKUP LOGROTATE +#================================================= + +new_ynh_backup "/etc/logrotate.d/$app" + +#================================================= +# BACKUP SYSTEMD +#================================================= + +new_ynh_backup "/etc/systemd/system/$app.service" + +#================================================= +# BACKUP OF THE CRON FILE +#================================================= + +new_ynh_backup "/etc/cron.d/$app" From c03c9fc04576c74b1ce40d8645fbfdbe4f56d632 Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Mon, 5 Jun 2017 13:10:28 +0200 Subject: [PATCH 2/4] _common.sh --- scripts/backup | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/scripts/backup b/scripts/backup index 1aa253f..386992c 100755 --- a/scripts/backup +++ b/scripts/backup @@ -13,6 +13,12 @@ set -eu # IMPORT GENERIC HELPERS #================================================= +if [ ! -e _common.sh ]; then + # Get the _common.sh file if it's not in the current directory + sudo cp ../settings/scripts/_common.sh ./_common.sh + sudo chmod a+rx _common.sh +fi +source _common.sh source /usr/share/yunohost/helpers #================================================= From 947bde8284a2b4115a348237fb8d120339974901 Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Mon, 5 Jun 2017 13:27:24 +0200 Subject: [PATCH 3/4] Old way backup But, with a compatibility with the new system --- scripts/backup | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/scripts/backup b/scripts/backup index 386992c..dcd005d 100755 --- a/scripts/backup +++ b/scripts/backup @@ -38,27 +38,27 @@ db_pwd=$(ynh_app_setting_get $app mysqlpwd) # BACKUP OF THE MAIN DIR OF THE APP #================================================= -new_ynh_backup "$final_path" +ynh_backup "$final_path" "${backup_dir}$final_path" #================================================= # BACKUP OF THE NGINX CONFIGURATION #================================================= -new_ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" +ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" "${backup_dir}/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= # BACKUP OF THE PHP-FPM CONFIGURATION #================================================= -new_ynh_backup "/etc/php5/fpm/pool.d/$app.conf" -new_ynh_backup "/etc/php5/fpm/conf.d/20-$app.ini" +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" #================================================= # BACKUP OF THE SQL BDD #================================================= ynh_mysql_dump_db "$db_name" > db.sql -new_ynh_backup "db.sql" +ynh_backup "db.sql" "${backup_dir}/db.sql" #================================================= # SPECIFIC BACKUP @@ -66,16 +66,16 @@ new_ynh_backup "db.sql" # BACKUP LOGROTATE #================================================= -new_ynh_backup "/etc/logrotate.d/$app" +ynh_backup "/etc/logrotate.d/$app" "${backup_dir}/etc/logrotate.d/$app" #================================================= # BACKUP SYSTEMD #================================================= -new_ynh_backup "/etc/systemd/system/$app.service" +ynh_backup "/etc/systemd/system/$app.service" "${backup_dir}/etc/systemd/system/$app.service" #================================================= # BACKUP OF THE CRON FILE #================================================= -new_ynh_backup "/etc/cron.d/$app" +ynh_backup "/etc/cron.d/$app" "${backup_dir}/etc/cron.d/$app" From b21cd9b254032f50a0443de2cff0e9422a60392c Mon Sep 17 00:00:00 2001 From: Jimmy Monin Date: Sat, 17 Jun 2017 23:19:48 +0200 Subject: [PATCH 4/4] Fix wording and typos --- scripts/backup | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/scripts/backup b/scripts/backup index dcd005d..34afd23 100755 --- a/scripts/backup +++ b/scripts/backup @@ -1,12 +1,12 @@ #!/bin/bash #================================================= -# GENERIC STARTING +# GENERIC START #================================================= -# MANAGE FAILURE OF THE SCRIPT +# MANAGE SCRIPT FAILURE #================================================= -# Exit on command errors and treat unset variables as an error +# Exit on command errors and treat access to unset variables as an error set -eu #================================================= @@ -35,26 +35,26 @@ db_pwd=$(ynh_app_setting_get $app mysqlpwd) #================================================= # STANDARD BACKUP STEPS #================================================= -# BACKUP OF THE MAIN DIR OF THE APP +# BACKUP THE APP MAIN DIR #================================================= ynh_backup "$final_path" "${backup_dir}$final_path" #================================================= -# BACKUP OF THE NGINX CONFIGURATION +# BACKUP THE NGINX CONFIGURATION #================================================= ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" "${backup_dir}/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= -# BACKUP OF THE PHP-FPM CONFIGURATION +# BACKUP THE PHP-FPM CONFIGURATION #================================================= 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" #================================================= -# BACKUP OF THE SQL BDD +# BACKUP THE MYSQL DATABASE #================================================= ynh_mysql_dump_db "$db_name" > db.sql @@ -75,7 +75,7 @@ ynh_backup "/etc/logrotate.d/$app" "${backup_dir}/etc/logrotate.d/$app" ynh_backup "/etc/systemd/system/$app.service" "${backup_dir}/etc/systemd/system/$app.service" #================================================= -# BACKUP OF THE CRON FILE +# BACKUP THE CRON FILE #================================================= ynh_backup "/etc/cron.d/$app" "${backup_dir}/etc/cron.d/$app"