Versions in this module Expand all Collapse all v0 v0.4.2 Mar 29, 2019 v0.4.1 Mar 11, 2019 Changes in this version + func CleanupPluginBuilders() + func CloseSession(ssn *Session) + func RegisterAction(act Action) + func RegisterPluginBuilder(name string, pc func(*PluginArgs) Plugin) + type Action interface + Execute func(ssn *Session) + Initialize func() + Name func() string + UnInitialize func() + func GetAction(name string) (Action, bool) + type Event struct + Task *api.TaskInfo + type EventHandler struct + AllocateFunc func(event *Event) + EvictFunc func(event *Event) + type Plugin interface + OnSessionClose func(ssn *Session) + OnSessionOpen func(ssn *Session) + type PluginArgs struct + JobOrderFnEnabled bool + JobReadyFnEnabled bool + Name string + PreemptableFnEnabled bool + TaskOrderFnEnabled bool + type PluginBuilder func(*PluginArgs) Plugin + func GetPluginBuilder(name string) (PluginBuilder, bool) + type Session struct + Backlog []*api.JobInfo + JobIndex map[api.JobID]*api.JobInfo + Jobs []*api.JobInfo + NodeIndex map[string]*api.NodeInfo + Nodes []*api.NodeInfo + UID types.UID + func OpenSession(cache cache.Cache, args []*PluginArgs) *Session + func (ssn *Session) AddEventHandler(eh *EventHandler) + func (ssn *Session) AddJobOrderFn(cf api.CompareFn) + func (ssn *Session) AddJobReadyFn(vf api.ValidateFn) + func (ssn *Session) AddPreemptableFn(cf api.LessFn) + func (ssn *Session) AddTaskOrderFn(cf api.CompareFn) + func (ssn *Session) Allocate(task *api.TaskInfo, hostname string) error + func (ssn *Session) JobOrderFn(l, r interface{}) bool + func (ssn *Session) JobReady(obj interface{}) bool + func (ssn *Session) Pipeline(task *api.TaskInfo, hostname string) error + func (ssn *Session) Preempt(preemptor, preemptee *api.TaskInfo) error + func (ssn *Session) Preemptable(preemptor, preemptee *api.TaskInfo) bool + func (ssn *Session) TaskCompareFns(l, r interface{}) int + func (ssn *Session) TaskOrderFn(l, r interface{}) bool + func (ssn Session) String() string