2017-04-10 04:55:10 +02:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# Exit on command errors and treat unset variables as an error
|
|
|
|
set -eu
|
|
|
|
|
2018-04-06 19:58:23 +02:00
|
|
|
if [ ! -e _common.sh ]; then
|
2017-04-19 02:37:40 +02:00
|
|
|
# Get file fonction if not been to the current directory
|
2018-04-06 19:58:23 +02:00
|
|
|
sudo cp ../settings/scripts/_common.sh ./_common.sh
|
|
|
|
sudo chmod a+rx _common.sh
|
2017-04-19 02:37:40 +02:00
|
|
|
fi
|
|
|
|
# Loads the generic functions usually used in the script
|
2018-04-06 19:58:23 +02:00
|
|
|
source _common.sh
|
2017-04-10 04:55:10 +02:00
|
|
|
# Source app helpers
|
|
|
|
source /usr/share/yunohost/helpers
|
|
|
|
|
2017-04-19 02:37:40 +02:00
|
|
|
# Get multi-instances specific variables
|
|
|
|
app=$YNH_APP_INSTANCE_NAME
|
|
|
|
|
2017-04-10 04:55:10 +02:00
|
|
|
# Retrieve app settings
|
|
|
|
domain=$(ynh_app_setting_get "$app" domain)
|
|
|
|
|
|
|
|
# Copy the app files
|
|
|
|
final_path="/opt/${app}"
|
|
|
|
ynh_backup "$final_path" "sources" 1
|
|
|
|
|
2017-07-13 00:12:42 +02:00
|
|
|
# final_path on nginx
|
|
|
|
sudo sed -i "s@$final_path@__FINALPATH__@g" /etc/nginx/conf.d/${domain}.d/${app}.conf
|
|
|
|
|
2017-04-10 04:55:10 +02:00
|
|
|
# Copy the nginx conf files
|
|
|
|
ynh_backup "/etc/nginx/conf.d/${domain}.d/${app}.conf" "nginx.conf"
|
2017-04-17 19:53:12 +02:00
|
|
|
ynh_backup "/etc/cron.d/${app}" "cron.conf"
|
2017-04-10 04:55:10 +02:00
|
|
|
ynh_backup "/etc/systemd/system/mastodon-web.service" "systemd_web.service"
|
|
|
|
ynh_backup "/etc/systemd/system/mastodon-sidekiq.service" "systemd_sidekiq.service"
|
|
|
|
ynh_backup "/etc/systemd/system/mastodon-streaming.service" "systemd_streaming.service"
|
2017-05-07 00:30:50 +02:00
|
|
|
ynh_backup "/etc/apt/sources.list.d/backports.list" "apt_backports.list"
|
|
|
|
ynh_backup "/etc/apt/sources.list.d/yarn.list" "apt_yarn.list"
|
2017-04-10 04:55:10 +02:00
|
|
|
|
2017-07-13 00:12:42 +02:00
|
|
|
# final_path on nginx
|
|
|
|
sudo sed -i "s@__FINALPATH__@$final_path@g" /etc/nginx/conf.d/${domain}.d/${app}.conf
|
|
|
|
|
2017-04-10 04:55:10 +02:00
|
|
|
# Backup db
|
|
|
|
sudo su - postgres <<COMMANDS
|
2017-04-19 02:37:40 +02:00
|
|
|
pg_dump --role=mastodon -U postgres --no-password mastodon_production > mastodon_db.sql
|
2017-04-10 04:55:10 +02:00
|
|
|
COMMANDS
|
2017-04-19 02:37:40 +02:00
|
|
|
ynh_backup "/var/lib/postgresql/${app}_db.sql" "${app}_db.sql"
|
2017-07-08 21:28:38 +02:00
|
|
|
# Fix backup fail on yunohost 2.6
|
|
|
|
#ynh_secure_remove /var/lib/postgresql/mastodon_db.sql
|