#!/use/bin/env sh set -e [ -z "${RCLONE_REMOTE}" ] && echo "\$RCLONE_REMOTE is not set" && exit 1 [ -z "${RCLONE_CONFIG}" ] && echo "\$RCLONE_CONFIG is not set" && exit 1 if [ -z "${ENC_PASSWORD}" ]; then RESTIC_PASSWORD="${ENC_PASSWORD}" elif [ -z "${ENC_PASSWORD_FILE}" ]; then RESTIC_PASSWORD=$(cat "$ENC_PASSWORD_FILE") else echo "\$ENC_PASSWORD or \$ENC_PASSWORD_FILE is not set" && exit 1 fi if [ -z "${MYSQL_PASSWORD}" ]; then MYSQL_PASSWORD_ACTUAL="${MYSQL_PASSWORD}" elif [ -z "${MYSQL_PASSWORD_FILE}" ]; then MYSQL_PASSWORD_ACTUAL=$(cat "$MYSQL_PASSWORD_FILE") fi mkdir -p /backup/sqlDump for db in $(echo "$MYSQL_DUMP_DB" | sed 's/,/\n/g') do echo "Dumping db: $db" mysqldump --compact -P 3306 --host "$MYSQL_HOST" -u "$MYSQL_USERNAME" "-p$MYSQL_PASSWORD_ACTUAL" "$db" > "/backup/sqlDump/$db.sql" done export RESTIC_PASSWORD restic -r "rclone:$RCLONE_REMOTE" --verbose backup "/backup"