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 + const ControllerUIDLabel + const QueueJobLabel + const QueueJobNameLabel + func GetPodTemplate(qjobRes *arbv1.XQueueJobResource) (*v1.PodTemplateSpec, error) + func GetQJFullName(qj *arbv1.QueueJob) string + func GetXQJFullName(qj *arbv1.XQueueJob) string + func HigherPriorityQJ(qj1, qj2 interface{}) bool + func RegisterAllQueueJobResourceTypes(regs *queuejobresources.RegisteredResources) + type Controller struct + func NewQueueJobController(config *rest.Config) *Controller + func (cc *Controller) Run(stopCh chan struct{}) + type Heap struct + func (h *Heap) Add(obj interface{}) error + func (h *Heap) AddIfNotPresent(obj interface{}) error + func (h *Heap) BulkAdd(list []interface{}) error + func (h *Heap) Delete(obj interface{}) error + func (h *Heap) Get(obj interface{}) (interface{}, bool, error) + func (h *Heap) GetByKey(key string) (interface{}, bool, error) + func (h *Heap) List() []interface{} + func (h *Heap) Pop() (interface{}, error) + func (h *Heap) Update(obj interface{}) error + type KeyFunc func(obj interface{}) (string, error) + type LessFunc func(interface{}, interface{}) bool + type PriorityQueue struct + func NewPriorityQueue() *PriorityQueue + func (p *PriorityQueue) Add(qj *qjobv1.XQueueJob) error + func (p *PriorityQueue) AddIfNotPresent(qj *qjobv1.XQueueJob) error + func (p *PriorityQueue) AddUnschedulableIfNotPresent(qj *qjobv1.XQueueJob) error + func (p *PriorityQueue) Delete(qj *qjobv1.XQueueJob) error + func (p *PriorityQueue) MoveAllToActiveQueue() + func (p *PriorityQueue) Pop() (*qjobv1.XQueueJob, error) + func (p *PriorityQueue) Update(oldQJ, newQJ *qjobv1.XQueueJob) error + type SchedulingQueue interface + Add func(qj *qjobv1.XQueueJob) error + AddIfNotPresent func(qj *qjobv1.XQueueJob) error + AddUnschedulableIfNotPresent func(qj *qjobv1.XQueueJob) error + Delete func(QJ *qjobv1.XQueueJob) error + MoveAllToActiveQueue func() + Pop func() (*qjobv1.XQueueJob, error) + Update func(oldQJ, newQJ *qjobv1.XQueueJob) error + func NewSchedulingQueue() SchedulingQueue + type UnschedulableQJMap struct + func (u *UnschedulableQJMap) Add(pod *qjobv1.XQueueJob) + func (u *UnschedulableQJMap) Clear() + func (u *UnschedulableQJMap) Delete(pod *qjobv1.XQueueJob) + func (u *UnschedulableQJMap) Get(pod *qjobv1.XQueueJob) *qjobv1.XQueueJob + func (u *UnschedulableQJMap) Update(pod *qjobv1.XQueueJob) + type UnschedulableQJs interface + Add func(p *qjobv1.XQueueJob) + Clear func() + Delete func(p *qjobv1.XQueueJob) + Get func(p *qjobv1.XQueueJob) *qjobv1.XQueueJob + Update func(p *qjobv1.XQueueJob) + type UnschedulableQueueJobs interface + Add func(pod *qjobv1.XQueueJob) + Clear func() + Delete func(pod *qjobv1.XQueueJob) + Get func(pod *qjobv1.XQueueJob) *qjobv1.XQueueJob + Update func(pod *qjobv1.XQueueJob) + type XController struct + func NewXQueueJobController(config *rest.Config, schedulerName string) *XController + func (cc *XController) Cleanup(queuejob *arbv1.XQueueJob) error + func (cc *XController) Run(stopCh chan struct{}) + func (qjm *XController) GetAggregatedResources(cqj *arbv1.XQueueJob) *schedulerapi.Resource + func (qjm *XController) GetQueueJobsEligibleForPreemption() []*arbv1.XQueueJob + func (qjm *XController) PreemptQueueJobs() + func (qjm *XController) ScheduleNext() + func (qjm *XController) UpdateQueueJobs()