Files
autogits/common/reviewers.go
Adam Majer 19d9fc5f1e pr: request staging only when staging.config is there
If the project git does not have a staging.config, then there is
no reason to request reviews by the staging bot.
2025-12-11 17:01:15 +01:00

37 lines
627 B
Go

package common
type Reviewers struct {
Prj []string
Pkg []string
PrjOptional []string
PkgOptional []string
}
func ParseReviewers(input []string) *Reviewers {
r := &Reviewers{}
for _, reviewer := range input {
pkg := &r.Pkg
prj := &r.Prj
if reviewer[0] == '~' {
pkg = &r.PkgOptional
prj = &r.PrjOptional
reviewer = reviewer[1:]
}
switch reviewer[0] {
case '*':
*prj = append(*prj, reviewer[1:])
*pkg = append(*pkg, reviewer[1:])
case '-':
*prj = append(*prj, reviewer[1:])
case '+':
*pkg = append(*pkg, reviewer[1:])
default:
*pkg = append(*pkg, reviewer)
}
}
return r
}