mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2024-09-25 21:20:12 +00:00
finish-wip
This commit is contained in:
parent
44e026e843
commit
ad96a2dbe5
2 changed files with 16 additions and 3 deletions
|
@ -62,7 +62,12 @@ func (s *RPC) Next(c context.Context, agentFilter rpc.Filter) (*rpc.Workflow, er
|
|||
}
|
||||
|
||||
// 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
|
||||
}
|
||||
|
||||
|
|
|
@ -14,6 +14,8 @@
|
|||
|
||||
package model
|
||||
|
||||
import "errors"
|
||||
|
||||
type Agent struct {
|
||||
ID int64 `json:"id" xorm:"pk autoincr 'id'"`
|
||||
Created int64 `json:"created" xorm:"created"`
|
||||
|
@ -40,7 +42,9 @@ func (a *Agent) IsSystemAgent() bool {
|
|||
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
|
||||
if filters == nil {
|
||||
filters = make(map[string]string)
|
||||
|
@ -52,7 +56,11 @@ func (a *Agent) GetFilters() map[string]string {
|
|||
filters["owner"] = "*" // allow all owners by default
|
||||
} else {
|
||||
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
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue