mirror of
https://github.com/YunoHost-Apps/grafana_ynh.git
synced 2024-09-03 20:36:29 +02:00
49 lines
1.5 KiB
Bash
49 lines
1.5 KiB
Bash
#!/bin/bash
|
|
|
|
#=================================================
|
|
# IMPORT GENERIC HELPERS
|
|
#=================================================
|
|
|
|
if [ ! -e _common.sh ]; then
|
|
# Fetch helpers file if not in current directory
|
|
cp ../settings/scripts/_common.sh ./_common.sh
|
|
chmod a+rx _common.sh
|
|
fi
|
|
source _common.sh
|
|
source /usr/share/yunohost/helpers
|
|
|
|
#=================================================
|
|
# MANAGE SCRIPT FAILURE
|
|
#=================================================
|
|
|
|
# Exit if an error occurs during the execution of the script
|
|
ynh_abort_if_errors
|
|
|
|
#=================================================
|
|
# LOAD SETTINGS
|
|
#=================================================
|
|
app=$YNH_APP_INSTANCE_NAME
|
|
|
|
# Source YunoHost helpers
|
|
source /usr/share/yunohost/helpers
|
|
|
|
# Backup configuration files
|
|
ynh_backup "/etc/influxdb" "conf_influxdb"
|
|
ynh_backup "/etc/grafana" "conf_grafana"
|
|
ynh_backup "/var/lib/grafana/plugins" "conf_grafana_plugins"
|
|
|
|
# Backup InfluxDB data
|
|
# Source: http://stackoverflow.com/questions/39501416/how-to-restore-data-base-using-influxd
|
|
TMPDIR=$(mktemp -d)
|
|
influx -database opentsdb -execute "show series" && sudo influxd backup -database opentsdb $TMPDIR
|
|
ynh_backup "$TMPDIR" "influxdb_data"
|
|
|
|
# Dump the Grafana database
|
|
dbname=$app
|
|
dbuser=$app
|
|
dbpass=$(ynh_app_setting_get "$app" mysqlpwd)
|
|
mysqldump -u "$dbuser" -p"$dbpass" --no-create-db "$dbname" > ./dump.sql
|
|
|
|
# Copy NGINX configuration
|
|
domain=$(ynh_app_setting_get "$app" domain)
|
|
ynh_backup "/etc/nginx/conf.d/${domain}.d/${app}.conf" "nginx.conf"
|