finish-wip

This commit is contained in:
6543 2024-03-29 10:31:29 +01:00
parent 44e026e843
commit ad96a2dbe5
2 changed files with 16 additions and 3 deletions

View file

@ -62,7 +62,12 @@ func (s *RPC) Next(c context.Context, agentFilter rpc.Filter) (*rpc.Workflow, er
} }
// enforce server set agent filters // enforce server set agent filters
for k, v := range agent.Filters { agentFilters, err := agent.GetFilters()
if err != nil {
return nil, err
}
for k, v := range agentFilters {
agentFilter.Labels[k] = v agentFilter.Labels[k] = v
} }

View file

@ -14,6 +14,8 @@
package model package model
import "errors"
type Agent struct { type Agent struct {
ID int64 `json:"id" xorm:"pk autoincr 'id'"` ID int64 `json:"id" xorm:"pk autoincr 'id'"`
Created int64 `json:"created" xorm:"created"` Created int64 `json:"created" xorm:"created"`
@ -40,7 +42,9 @@ func (a *Agent) IsSystemAgent() bool {
return a.OwnerID == -1 return a.OwnerID == -1
} }
func (a *Agent) GetFilters() map[string]string { var ErrFiltersBroken = errors.New("while creating filters map error ocured")
func (a *Agent) GetFilters() (map[string]string, error) {
filters := a.Filters filters := a.Filters
if filters == nil { if filters == nil {
filters = make(map[string]string) filters = make(map[string]string)
@ -52,7 +56,11 @@ func (a *Agent) GetFilters() map[string]string {
filters["owner"] = "*" // allow all owners by default filters["owner"] = "*" // allow all owners by default
} else { } else {
filters["owner"] = "*" // we dont have org agents implemented jet filters["owner"] = "*" // we dont have org agents implemented jet
// we expect this filter to be set else we fail
if _, ok := filters["repo"]; !ok {
return nil, ErrFiltersBroken
}
} }
return filters return filters, nil
} }