func (s *EventSuite) insertEvents(target string, c *check.C) ([]*event.Event, error) { t, err := event.GetTargetType(target) if err != nil { return nil, err } evts := make([]*event.Event, 10) for i := 0; i < 10; i++ { name := fmt.Sprintf("app-%d", i) opts := &event.Opts{ Target: event.Target{Type: t, Value: name}, Owner: s.token, Kind: permission.PermAppDeploy, Cancelable: i == 0, } if t == event.TargetTypeApp { opts.Allowed = event.Allowed(permission.PermAppReadEvents, permission.Context(permission.CtxTeam, s.team.Name)) opts.AllowedCancel = event.Allowed(permission.PermAppUpdateEvents, permission.Context(permission.CtxTeam, s.team.Name)) } else { opts.Allowed = event.Allowed(permission.PermApp) opts.AllowedCancel = event.Allowed(permission.PermApp) } evt, err := event.New(opts) c.Assert(err, check.IsNil) if i == 1 { err = evt.Done(nil) c.Assert(err, check.IsNil) } evts[i] = evt } return evts, nil }
func ListHealingHistory(filter string) ([]HealingEvent, error) { evtFilter := event.Filter{ KindName: "healer", KindType: event.KindTypeInternal, } if filter != "" { t, err := event.GetTargetType(filter) if err == nil { evtFilter.Target = event.Target{Type: t} } } evts, err := event.List(&evtFilter) if err != nil { return nil, err } healingEvts := make([]HealingEvent, len(evts)) for i := range evts { healingEvts[i], err = toHealingEvt(&evts[i]) if err != nil { return nil, err } } return healingEvts, nil }