Add setting for schedule backups max. age

This commit is contained in:
prpr 2024-02-12 11:31:20 +00:00
parent 3bf7a9ee6c
commit 788652b289
4 changed files with 18 additions and 4 deletions

View File

@ -3,6 +3,7 @@
package require cgi
source /mod/webif/lib/setup
require settings.class
require rsv.class
set dir "/mod/var/backup"
@ -14,8 +15,8 @@ set file [file tail [cgi_get file \
[clock format $now -format "auto-%Y-%b-%d-%H:%M"]]]
if {[string match {auto-*} $file]} {
# Delete any automatic backups over 15 days old.
set mt $(15 * 86400)
# Delete any old automatic backups.
set mt $([[settings] backupsage] * 86400)
foreach af [glob -nocomplain "$dir/auto-*"] {
set aft [file mtime $af]
set diff $($now - $aft)

View File

@ -46,6 +46,7 @@ set noautoremove [$settings noautoremove]
set logsize [$settings logsize]
set logkeep [$settings logkeep]
set logage [$settings logage]
set backupsage [$settings backupsage]
set cryptokey [system customencryptionkey]
@ -54,5 +55,5 @@ handle_int_update rtschedule $rtschedule "Real-time scheduling"
handle_int_update noautoremove $noautoremove "Package auto-remove"
handle_int_update logsize $logsize "Log rotation size"
handle_int_update logkeep $logkeep "Logs to keep"
handle_int_update logage $logage "Rotated log max age"
handle_int_update logage $logage "Rotated logs max age"
handle_int_update backupsage $backupsage "Schedule backups max age"

View File

@ -47,6 +47,9 @@ setting_number logkeep "How many rotated logs to keep" $logkeep \
setting_number logage "Delete old logs after X days" $logage \
0 365
setting_number backupsage "Delete schedule backups after X days" \
$backupsage 7 56
if {[system modversion 1] >= 214} {
setting_toggle "Disable telnet menu?" "xtelnet" \
[file exists /mod/boot/xtelnet] 0 1

View File

@ -37,6 +37,7 @@ class settings {
logsize 1048576
logkeep 2
logage 0
backupsage 15
rtschedule 0
noautoremove 0
}
@ -448,6 +449,14 @@ settings method logage {{num -1}} {
return $val
}
settings method backupsage {{num -1}} {
set val [$self _nval_setting backupsage $num]
if {$val == 0} {
return 15
}
return $val
}
settings method dedup_template {{pattern -1}} {
set val [$self _tval_setting dedup_template $pattern]
if {$val eq "0"} { set val "s%se%E - " }