mirror of
https://github.com/prodrigestivill/docker-postgres-backup-local.git
synced 2026-07-11 20:57:52 +00:00
Style update
This commit is contained in:
@@ -9,8 +9,8 @@ fi
|
|||||||
|
|
||||||
if [ "${POSTGRES_HOST}" = "**None**" ]; then
|
if [ "${POSTGRES_HOST}" = "**None**" ]; then
|
||||||
if [ -n "${POSTGRES_PORT_5432_TCP_ADDR}" ]; then
|
if [ -n "${POSTGRES_PORT_5432_TCP_ADDR}" ]; then
|
||||||
POSTGRES_HOST=$POSTGRES_PORT_5432_TCP_ADDR
|
POSTGRES_HOST=${POSTGRES_PORT_5432_TCP_ADDR}
|
||||||
POSTGRES_PORT=$POSTGRES_PORT_5432_TCP_PORT
|
POSTGRES_PORT=${POSTGRES_PORT_5432_TCP_PORT}
|
||||||
else
|
else
|
||||||
echo "You need to set the POSTGRES_HOST environment variable."
|
echo "You need to set the POSTGRES_HOST environment variable."
|
||||||
exit 1
|
exit 1
|
||||||
@@ -37,7 +37,7 @@ else
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
if [ "${POSTGRES_USER_FILE}" = "**None**" ]; then
|
if [ "${POSTGRES_USER_FILE}" = "**None**" ]; then
|
||||||
export PGUSER="$POSTGRES_USER"
|
export PGUSER="${POSTGRES_USER}"
|
||||||
elif [ -r "${POSTGRES_USER_FILE}" ]; then
|
elif [ -r "${POSTGRES_USER_FILE}" ]; then
|
||||||
export PGUSER=$(cat "${POSTGRES_USER_FILE}")
|
export PGUSER=$(cat "${POSTGRES_USER_FILE}")
|
||||||
else
|
else
|
||||||
@@ -45,38 +45,38 @@ else
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
if [ "${POSTGRES_PASSWORD_FILE}" = "**None**" ]; then
|
if [ "${POSTGRES_PASSWORD_FILE}" = "**None**" ]; then
|
||||||
export PGPASSWORD="$POSTGRES_PASSWORD"
|
export PGPASSWORD="${POSTGRES_PASSWORD}"
|
||||||
elif [ -r "${POSTGRES_PASSWORD_FILE}" ]; then
|
elif [ -r "${POSTGRES_PASSWORD_FILE}" ]; then
|
||||||
export PGPASSWORD=$(cat "${POSTGRES_PASSWORD_FILE}")
|
export PGPASSWORD=$(cat "${POSTGRES_PASSWORD_FILE}")
|
||||||
else
|
else
|
||||||
echo "Missing POSTGRES_PASSWORD_FILE file."
|
echo "Missing POSTGRES_PASSWORD_FILE file."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
POSTGRES_HOST_OPTS="-h $POSTGRES_HOST -p $POSTGRES_PORT $POSTGRES_EXTRA_OPTS"
|
POSTGRES_HOST_OPTS="-h ${POSTGRES_HOST} -p ${POSTGRES_PORT} ${POSTGRES_EXTRA_OPTS}"
|
||||||
KEEP_DAYS=$BACKUP_KEEP_DAYS
|
KEEP_DAYS=${BACKUP_KEEP_DAYS}
|
||||||
KEEP_WEEKS=`expr $((($BACKUP_KEEP_WEEKS * 7) + 1))`
|
KEEP_WEEKS=`expr $(((${BACKUP_KEEP_WEEKS} * 7) + 1))`
|
||||||
KEEP_MONTHS=`expr $((($BACKUP_KEEP_MONTHS * 31) + 1))`
|
KEEP_MONTHS=`expr $(((${BACKUP_KEEP_MONTHS} * 31) + 1))`
|
||||||
|
|
||||||
#Initialize dirs
|
#Initialize dirs
|
||||||
mkdir -p "$BACKUP_DIR/daily/" "$BACKUP_DIR/weekly/" "$BACKUP_DIR/monthly/"
|
mkdir -p "${BACKUP_DIR}/daily/" "${BACKUP_DIR}/weekly/" "${BACKUP_DIR}/monthly/"
|
||||||
|
|
||||||
#Loop all databases
|
#Loop all databases
|
||||||
for DB in $POSTGRES_DBS; do
|
for DB in ${POSTGRES_DBS}; do
|
||||||
#Initialize filename vers
|
#Initialize filename vers
|
||||||
DFILE="$BACKUP_DIR/daily/$DB-`date +%Y%m%d-%H%M%S`.sql.gz"
|
DFILE="${BACKUP_DIR}/daily/${DB}-`date +%Y%m%d-%H%M%S`.sql.gz"
|
||||||
WFILE="$BACKUP_DIR/weekly/$DB-`date +%G%V`.sql.gz"
|
WFILE="${BACKUP_DIR}/weekly/${DB}-`date +%G%V`.sql.gz"
|
||||||
MFILE="$BACKUP_DIR/monthly/$DB-`date +%Y%m`.sql.gz"
|
MFILE="${BACKUP_DIR}/monthly/${DB}-`date +%Y%m`.sql.gz"
|
||||||
#Create dump
|
#Create dump
|
||||||
echo "Creating dump of ${DB} database from ${POSTGRES_HOST}..."
|
echo "Creating dump of ${DB} database from ${POSTGRES_HOST}..."
|
||||||
pg_dump -f "$DFILE" $POSTGRES_HOST_OPTS $DB
|
pg_dump -f "${DFILE}" ${POSTGRES_HOST_OPTS} ${DB}
|
||||||
#Copy (hardlink) for each entry
|
#Copy (hardlink) for each entry
|
||||||
ln -vf "$DFILE" "$WFILE"
|
ln -vf "${DFILE}" "${WFILE}"
|
||||||
ln -vf "$DFILE" "$MFILE"
|
ln -vf "${DFILE}" "${MFILE}"
|
||||||
#Clean old files
|
#Clean old files
|
||||||
echo "Cleaning older than ${KEEP_DAYS} days for ${DB} database from ${POSTGRES_HOST}..."
|
echo "Cleaning older than ${KEEP_DAYS} days for ${DB} database from ${POSTGRES_HOST}..."
|
||||||
find "$BACKUP_DIR/daily" -maxdepth 1 -mtime +$KEEP_DAYS -name "$DB-*.sql*" -exec rm -rf '{}' ';'
|
find "${BACKUP_DIR}/daily" -maxdepth 1 -mtime +${KEEP_DAYS} -name "${DB}-*.sql*" -exec rm -rf '{}' ';'
|
||||||
find "$BACKUP_DIR/weekly" -maxdepth 1 -mtime +$KEEP_WEEKS -name "$DB-*.sql*" -exec rm -rf '{}' ';'
|
find "${BACKUP_DIR}/weekly" -maxdepth 1 -mtime +${KEEP_WEEKS} -name "${DB}-*.sql*" -exec rm -rf '{}' ';'
|
||||||
find "$BACKUP_DIR/monthly" -maxdepth 1 -mtime +$KEEP_MONTHS -name "$DB-*.sql*" -exec rm -rf '{}' ';'
|
find "${BACKUP_DIR}/monthly" -maxdepth 1 -mtime +${KEEP_MONTHS} -name "${DB}-*.sql*" -exec rm -rf '{}' ';'
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "SQL backup uploaded successfully"
|
echo "SQL backup uploaded successfully"
|
||||||
|
|||||||
Reference in New Issue
Block a user