2022-11-20 14:08:38 +00:00
|
|
|
// Copyright 2022 The Gitea Authors. All rights reserved.
|
2022-12-02 14:14:57 +00:00
|
|
|
// SPDX-License-Identifier: MIT
|
2022-11-20 14:08:38 +00:00
|
|
|
|
|
|
|
package forms
|
|
|
|
|
|
|
|
import (
|
|
|
|
"net/http"
|
|
|
|
|
|
|
|
"code.gitea.io/gitea/modules/web/middleware"
|
2024-02-27 07:12:22 +00:00
|
|
|
"code.gitea.io/gitea/services/context"
|
2022-11-20 14:08:38 +00:00
|
|
|
|
2024-11-05 20:40:44 +00:00
|
|
|
"code.forgejo.org/go-chi/binding"
|
2022-11-20 14:08:38 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
type PackageCleanupRuleForm struct {
|
|
|
|
ID int64
|
|
|
|
Enabled bool
|
2024-08-11 10:35:11 +00:00
|
|
|
Type string `binding:"Required;In(alpine,arch,cargo,chef,composer,conan,conda,container,cran,debian,generic,go,helm,maven,npm,nuget,pub,pypi,rpm,rubygems,swift,vagrant)"`
|
2022-11-20 14:08:38 +00:00
|
|
|
KeepCount int `binding:"In(0,1,5,10,25,50,100)"`
|
|
|
|
KeepPattern string `binding:"RegexPattern"`
|
|
|
|
RemoveDays int `binding:"In(0,7,14,30,60,90,180)"`
|
|
|
|
RemovePattern string `binding:"RegexPattern"`
|
|
|
|
MatchFullName bool
|
|
|
|
Action string `binding:"Required;In(save,remove)"`
|
|
|
|
}
|
|
|
|
|
|
|
|
func (f *PackageCleanupRuleForm) Validate(req *http.Request, errs binding.Errors) binding.Errors {
|
2023-05-21 01:50:53 +00:00
|
|
|
ctx := context.GetValidateContext(req)
|
2022-11-20 14:08:38 +00:00
|
|
|
return middleware.Validate(errs, ctx.Data, f, ctx.Locale)
|
|
|
|
}
|