diff --git a/pica-backup/mysql-run.sh b/pica-backup/mysql-run.sh index 1116ef3e15b7f930be1a6c2ecd57c24400678704..76a7d35bc50cb7de66acaa5a0045dbf4ecd8be1d 100755 --- a/pica-backup/mysql-run.sh +++ b/pica-backup/mysql-run.sh @@ -4,6 +4,8 @@ if [ "${MYSQL_ENV_MYSQL_PASS}" == "**Random**" ]; then unset MYSQL_ENV_MYSQL_PASS fi +BACKUP_FOLDER=${BACKUP_FOLDER:-"/backup/"} + MYSQL_HOST=${MYSQL_PORT_3306_TCP_ADDR:-${MYSQL_HOST}} MYSQL_HOST=${MYSQL_PORT_1_3306_TCP_ADDR:-${MYSQL_HOST}} MYSQL_PORT=${MYSQL_PORT_3306_TCP_PORT:-${MYSQL_PORT}} @@ -16,7 +18,7 @@ MYSQL_PASS=${MYSQL_PASS:-${MYSQL_ENV_MYSQL_PASS}} [ -z "${MYSQL_USER}" ] && { echo "=> MYSQL_USER cannot be empty" && exit 1; } [ -z "${MYSQL_PASS}" ] && { echo "=> MYSQL_PASS cannot be empty" && exit 1; } -BACKUP_CMD="mysqldump -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASS} ${EXTRA_OPTS} ${MYSQL_DB} > /backup/"'${BACKUP_NAME}' +BACKUP_CMD="mysqldump -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASS} ${EXTRA_OPTS} ${MYSQL_DB} > $BACKUP_FOLDER"'${BACKUP_NAME}' echo "=> Creating backup script" rm -f /backup.sh @@ -31,15 +33,15 @@ if ${BACKUP_CMD} ;then echo " Backup succeeded" else echo " Backup failed" - rm -rf /backup/\${BACKUP_NAME} + rm -rf $BACKUP_FOLDER\${BACKUP_NAME} fi if [ -n "\${MAX_BACKUPS}" ]; then - while [ \$(ls /backup -N1 | wc -l) -gt \${MAX_BACKUPS} ]; + while [ \$(ls $BACKUP_FOLDER -N1 | wc -l) -gt \${MAX_BACKUPS} ]; do - BACKUP_TO_BE_DELETED=\$(ls /backup -N1 | sort | head -n 1) + BACKUP_TO_BE_DELETED=\$(ls $BACKUP_FOLDER -N1 | sort | head -n 1) echo " Backup \${BACKUP_TO_BE_DELETED} is deleted" - rm -rf /backup/\${BACKUP_TO_BE_DELETED} + rm -rf $BACKUP_FOLDER\${BACKUP_TO_BE_DELETED} done fi echo "=> Backup done" @@ -73,7 +75,7 @@ elif [ -n "${INIT_RESTORE_LATEST}" ]; then echo "waiting database container..." sleep 1 done - ls -d -1 /backup/* | tail -1 | xargs /restore.sh + ls -d -1 $BACKUP_FOLDER* | tail -1 | xargs /restore.sh fi echo "${CRON_TIME} /backup.sh >> /mysql_backup.log 2>&1" > /crontab.conf diff --git a/pica-backup/postgres-run.sh b/pica-backup/postgres-run.sh index 2fe5784856f142c73139ad359cd5b433ea1673c6..96852e3e43cb9648b0708865ac92660c4cec4577 100755 --- a/pica-backup/postgres-run.sh +++ b/pica-backup/postgres-run.sh @@ -1,12 +1,14 @@ #!/bin/bash +BACKUP_FOLDER=${BACKUP_FOLDER:-"/backup/"} + [ -z "${POSTGRES_HOST}" ] && { echo "=> POSTGRES_HOST cannot be empty" && exit 1; } [ -z "${POSTGRES_PORT}" ] && { echo "=> POSTGRES_PORT cannot be empty" && exit 1; } [ -z "${POSTGRES_USER}" ] && { echo "=> POSTGRES_USER cannot be empty" && exit 1; } [ -z "${POSTGRES_PASS}" ] && { echo "=> POSTGRES_PASS cannot be empty" && exit 1; } [ -z "${POSTGRES_DB}" ] && { echo "=> POSTGRES_DB cannot be empty" && exit 1; } -BACKUP_CMD="pg_dump -w -c > /backup/"'${BACKUP_NAME}' +BACKUP_CMD="pg_dump -w -c > $BACKUP_FOLDER"'${BACKUP_NAME}' echo "=> Creating backup script" rm -f /backup.sh @@ -26,15 +28,15 @@ if ${BACKUP_CMD} ;then echo " Backup succeeded" else echo " Backup failed" - rm -rf /backup/\${BACKUP_NAME} + rm -rf $BACKUP_FOLDER\${BACKUP_NAME} fi if [ -n "\${MAX_BACKUPS}" ]; then - while [ \$(ls /backup -N1 | wc -l) -gt \${MAX_BACKUPS} ]; + while [ \$(ls $BACKUP_FOLDER -N1 | wc -l) -gt \${MAX_BACKUPS} ]; do - BACKUP_TO_BE_DELETED=\$(ls /backup -N1 | sort | head -n 1) + BACKUP_TO_BE_DELETED=\$(ls $BACKUP_FOLDER -N1 | sort | head -n 1) echo " Backup \${BACKUP_TO_BE_DELETED} is deleted" - rm -rf /backup/\${BACKUP_TO_BE_DELETED} + rm -rf $BACKUP_FOLDER\${BACKUP_TO_BE_DELETED} done fi echo "=> Backup done" @@ -74,7 +76,7 @@ elif [ -n "${INIT_RESTORE_LATEST}" ]; then echo "waiting database container..." sleep 1 done - ls -d -1 /backup/* | tail -1 | xargs /restore.sh + ls -d -1 $BACKUP_FOLDER* | tail -1 | xargs /restore.sh fi echo "${CRON_TIME} /backup.sh >> /postgres_backup.log 2>&1" > /crontab.conf