diff --git a/restic-auto/docker-entrypoint.sh b/restic-auto/docker-entrypoint.sh index 06febe8..54aac7d 100755 --- a/restic-auto/docker-entrypoint.sh +++ b/restic-auto/docker-entrypoint.sh @@ -30,6 +30,30 @@ if [ -d /crontabs ] ; then for f in /crontabs/* ; do crontab -u $(basename $f) $f done +else + echo "# This crontab is generated by the entrypoint script, do not edit" > /tmp/crontab + if [[ "$BACKUP_CRONTAB" ]] ; then + echo -n "$BACKUP_CRONTAB" >> /tmp/crontab + else + echo -n "0 4 * * *" >> /tmp/crontab + fi + echo -n " restic-auto >> /var/log/cron.log" >> /tmp/crontab + if [[ "$POST_BACKUP_COMMAND" ]] ; then + echo -n " && $POST_BACKUP_COMMAND" >> /tmp/crontab + fi + echo " " >> /tmp/crontab + if [[ "$MAINTENANCE_CRONTAB" ]] ; then + echo -n "$MAINTENANCE_CRONTAB" >> /tmp/crontab + else + echo -n "0 1 * * 0" >> /tmp/crontab + fi + echo -n " restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --keep-yearly 2 --prune >> /var/log/cron.log && restic check >> /var/log/cron.log" >> /tmp/crontab + if [[ "$POST_MAINTENANCE_COMMAND" ]] ; then + echo -n " && $POST_MAINTENANCE_COMMAND" >> /tmp/crontab + fi + echo " " >> /tmp/crontab + + crontab -u root /tmp/crontab fi "$@"