mirror of
https://github.com/tiredofit/docker-db-backup.git
synced 2025-12-21 21:33:28 +01:00
Use alternate cron
This commit is contained in:
@@ -22,9 +22,10 @@ if [[ "${MODE,,}" =~ "standalone" ]] || [ "${MODE,,}" = "manual" ] || [ "${1,,}"
|
||||
backup_job_backup_begin=+0
|
||||
else
|
||||
silent sleep {{BACKUP_NUMBER}}
|
||||
set -x
|
||||
time_last_run=0
|
||||
time_current=$(date +'%s')
|
||||
|
||||
set +x
|
||||
if [[ "${backup_job_backup_begin}" =~ ^\+(.*)$ ]]; then
|
||||
print_debug "BACKUP_BEGIN is a jump of minute starting with +"
|
||||
timer plusvalue
|
||||
@@ -37,10 +38,18 @@ else
|
||||
#elif echo "${backup_job_backup_begin//\*/#}" | grep -qP "^(.*((\d+,)+\d+|(\d+(\/|-)\d+)|\d+|#) ?){5}$" ; then # Allow slashes, yet not supporting advanced cron yet
|
||||
elif echo "${backup_job_backup_begin//\*/#}" | grep -qP "^(((\d+,)+\d+|(\d+(\/|-)\d+)|\d+|#) ?){5}$" ; then
|
||||
print_debug "BACKUP_BEGIN is a cron expression"
|
||||
time_last_run=$(date +"%s")
|
||||
backup_job_backup_begin=${backup_job_backup_begin//\"/}
|
||||
backup_job_backup_begin=${backup_job_backup_begin//\'/}
|
||||
timer cron "${backup_job_backup_begin}" "${time_current}" "${time_last_run}"
|
||||
if var_false "${CRON_ALTERNATE}"; then
|
||||
time_last_run=$(date +"%s")
|
||||
|
||||
backup_job_backup_begin=${backup_job_backup_begin//\"/}
|
||||
backup_job_backup_begin=${backup_job_backup_begin//\'/}
|
||||
timer cron "${backup_job_backup_begin}" "${time_current}" "${time_last_run}"
|
||||
else
|
||||
echo "${backup_job_backup_begin} /var/run/s6/legacy-services/dbbackup-{{BACKUP_NUMBER}} now" > /tmp/.container/cron/{{BACKUP_NUMBER}}-backup
|
||||
crontab -l | { cat; echo "${backup_job_backup_begin} /var/run/s6/legacy-services/dbbackup-{{BACKUP_NUMBER}} now"; } | crontab -
|
||||
s6-svc -d /var/run/s6/legacy-services/dbbackup-{{BACKUP_NUMBER}}
|
||||
exit 0
|
||||
fi
|
||||
else
|
||||
print_error "_BACKUP_BEGIN is invalid - Unable to perform scheduling"
|
||||
cat <<EOF
|
||||
|
||||
Reference in New Issue
Block a user