From 893c8938fc81166f386ff203f2129497ceddbc32 Mon Sep 17 00:00:00 2001 From: Pilou Date: Mon, 28 Mar 2022 14:54:59 +0200 Subject: New cron task: delete old system notices (#19219) Add a new cron task which deletes the old system notices. --- models/admin/notice.go | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'models/admin') diff --git a/models/admin/notice.go b/models/admin/notice.go index daf095f680..77277e4b2d 100644 --- a/models/admin/notice.go +++ b/models/admin/notice.go @@ -7,6 +7,7 @@ package admin import ( "context" "fmt" + "time" "code.gitea.io/gitea/models/db" "code.gitea.io/gitea/modules/log" @@ -133,3 +134,13 @@ func DeleteNoticesByIDs(ids []int64) error { Delete(new(Notice)) return err } + +// DeleteOldSystemNotices deletes all old system notices from database. +func DeleteOldSystemNotices(olderThan time.Duration) (err error) { + if olderThan <= 0 { + return nil + } + + _, err = db.GetEngine(db.DefaultContext).Where("created_unix < ?", time.Now().Add(-olderThan).Unix()).Delete(&Notice{}) + return +} -- cgit v1.2.3