Run restic prune before backup
This commit is contained in:
@ -33,7 +33,7 @@ main() {
|
||||
gitea dump \
|
||||
--config "$GITEA_CONFIG" \
|
||||
--work-path "$GITEA_WORK_PATH" \
|
||||
--custom-path "$GITEA_CUSTOM_PATH" > /dev/null
|
||||
--custom-path "$GITEA_CUSTOM_PATH" >/dev/null 2>&1
|
||||
printf "gitea dump complete\n"
|
||||
popd > /dev/null || printf "could not chdir to %s\n" "$OLDPWD"
|
||||
elif [ "$1" == "post" ]; then
|
||||
|
@ -19,8 +19,14 @@ NICE="ionice -c2 nice -n19"
|
||||
JOB=$1
|
||||
LOCK="/run/restic/${JOB}.lock"
|
||||
|
||||
KEEP_HOURLY=${KEEP_HOURLY:-24}
|
||||
KEEP_DAILY=${KEEP_DAILY:-7}
|
||||
KEEP_WEEKLY=${KEEP_WEEKLY:-5}
|
||||
KEEP_MONTHLY=${KEEP_MONTHLY:-12}
|
||||
KEEP_YEARLY=${KEEP_YEARLY:-10}
|
||||
|
||||
function finish {
|
||||
if [ -z $KEEP_LOCK ]; then
|
||||
if [ -z "$KEEP_LOCK" ]; then
|
||||
rm -f "$LOCK"
|
||||
fi
|
||||
}
|
||||
@ -90,6 +96,25 @@ echo $$ > "$LOCK"
|
||||
|
||||
LOCKED=$(($(date +%s) - START))
|
||||
|
||||
printf "prune: started, keep hourly:%d daily:%d weekly:%d monthly:%d year:%d\n" \
|
||||
"$KEEP_HOURLY" \
|
||||
"$KEEP_DAILY" \
|
||||
"$KEEP_WEEKLY" \
|
||||
"$KEEP_MONTHLY" \
|
||||
"$KEEP_YEARLY"
|
||||
|
||||
$RESTIC_PATH forget \
|
||||
--quiet \
|
||||
--host "$(hostname -f)" \
|
||||
--keep-hourly "$KEEP_HOURLY" \
|
||||
--keep-daily "$KEEP_DAILY" \
|
||||
--keep-weekly "$KEEP_WEEKLY" \
|
||||
--keep-monthly "$KEEP_MONTHLY" \
|
||||
--keep-yearly "$KEEP_YEARLY" \
|
||||
--prune
|
||||
|
||||
printf "prune: complete\n"
|
||||
|
||||
printf "job '%s' started\n" "$JOB"
|
||||
|
||||
if [ -d "${HOOKS_PATH}" ]; then
|
||||
@ -127,7 +152,7 @@ until [ $counter -eq "$MAX_ATTEMPTS" ] || [ $rc -eq 0 ]; do
|
||||
done
|
||||
printf "restic complete\n"
|
||||
|
||||
if [ $rc -ne 0 ] && [ $counter -eq "$MAX_ATTEMPTS" ]; then
|
||||
if [ $rc -ne 0 ] && [ "$counter" -eq "$MAX_ATTEMPTS" ]; then
|
||||
printf "restic job timed out, exiting\n"
|
||||
else
|
||||
printf "job '%s' complete\n" "$JOB"
|
||||
|
@ -13,7 +13,7 @@ LOCK="${LOCK_PATH}/tidy.lock"
|
||||
KEEP_LOCK=
|
||||
|
||||
function finish {
|
||||
if [ -z $KEEP_LOCK ]; then
|
||||
if [ -z "$KEEP_LOCK" ]; then
|
||||
rm -f "$LOCK"
|
||||
fi
|
||||
}
|
||||
@ -109,7 +109,7 @@ until [ $counter -eq "$MAX_ATTEMPTS" ] || [ $rc -eq 0 ]; do
|
||||
(( counter++ ))
|
||||
done
|
||||
|
||||
if [ $rc -ne 0 ] && [ $counter -eq "$MAX_ATTEMPTS" ]; then
|
||||
if [ $rc -ne 0 ] && [ "$counter" -eq "$MAX_ATTEMPTS" ]; then
|
||||
printf "tidy timed out, exiting\n"
|
||||
else
|
||||
printf "complete\n"
|
||||
|
Reference in New Issue
Block a user