mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-09-12 13:57:14 +00:00
feat: add configurable timeout for automatically removing resolved reports (#7940)
Supersedes [this PR](https://codeberg.org/lenikadali/forgejo/pulls/1) Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7940 Reviewed-by: Otto <otto@codeberg.org> Reviewed-by: Gusted <gusted@noreply.codeberg.org> Co-authored-by: Leni Kadali <lenikadali@noreply.codeberg.org> Co-committed-by: Leni Kadali <lenikadali@noreply.codeberg.org>
This commit is contained in:
parent
b2c8a1cfd3
commit
29eaab5ff4
10 changed files with 247 additions and 4 deletions
|
@ -15,6 +15,7 @@ import (
|
|||
issue_indexer "forgejo.org/modules/indexer/issues"
|
||||
"forgejo.org/modules/setting"
|
||||
"forgejo.org/modules/updatechecker"
|
||||
moderation_service "forgejo.org/services/moderation"
|
||||
repo_service "forgejo.org/services/repository"
|
||||
archiver_service "forgejo.org/services/repository/archiver"
|
||||
user_service "forgejo.org/services/user"
|
||||
|
@ -225,6 +226,24 @@ func registerRebuildIssueIndexer() {
|
|||
})
|
||||
}
|
||||
|
||||
func registerRemoveResolvedReports() {
|
||||
type ReportConfig struct {
|
||||
BaseConfig
|
||||
ConfigKeepResolvedReportsFor time.Duration
|
||||
}
|
||||
RegisterTaskFatal("remove_resolved_reports", &ReportConfig{
|
||||
BaseConfig: BaseConfig{
|
||||
Enabled: false,
|
||||
RunAtStart: false,
|
||||
Schedule: "@every 24h",
|
||||
},
|
||||
ConfigKeepResolvedReportsFor: setting.Moderation.KeepResolvedReportsFor,
|
||||
}, func(ctx context.Context, _ *user_model.User, config Config) error {
|
||||
reportConfig := config.(*ReportConfig)
|
||||
return moderation_service.RemoveResolvedReports(ctx, reportConfig.ConfigKeepResolvedReportsFor)
|
||||
})
|
||||
}
|
||||
|
||||
func initExtendedTasks() {
|
||||
registerDeleteInactiveUsers()
|
||||
registerDeleteRepositoryArchives()
|
||||
|
@ -240,4 +259,7 @@ func initExtendedTasks() {
|
|||
registerDeleteOldSystemNotices()
|
||||
registerGCLFS()
|
||||
registerRebuildIssueIndexer()
|
||||
if setting.Moderation.Enabled {
|
||||
registerRemoveResolvedReports()
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue