volcano.sh/volcano@v1.9.0/pkg/scheduler/plugins/extender/argument.go (about) 1 package extender 2 3 import "volcano.sh/volcano/pkg/scheduler/api" 4 5 type OnSessionOpenRequest struct { 6 Jobs map[api.JobID]*api.JobInfo 7 Nodes map[string]*api.NodeInfo 8 Queues map[api.QueueID]*api.QueueInfo 9 NamespaceInfo map[api.NamespaceName]*api.NamespaceInfo 10 RevocableNodes map[string]*api.NodeInfo 11 NodeList []string 12 } 13 14 type OnSessionOpenResponse struct{} 15 16 type OnSessionCloseRequest struct{} 17 type OnSessionCloseResponse struct{} 18 19 type PredicateRequest struct { 20 Task *api.TaskInfo `json:"task"` 21 Node *api.NodeInfo `json:"node"` 22 } 23 24 type PredicateResponse struct { 25 Status []*api.Status `json:"status"` 26 } 27 28 type PrioritizeRequest struct { 29 Task *api.TaskInfo `json:"task"` 30 Nodes []*api.NodeInfo `json:"nodes"` 31 } 32 33 type PrioritizeResponse struct { 34 NodeScore map[string]float64 `json:"nodeScore"` 35 ErrorMessage string `json:"errorMessage"` 36 } 37 38 type PreemptableRequest struct { 39 Evictor *api.TaskInfo `json:"evictor"` 40 Evictees []*api.TaskInfo `json:"evictees"` 41 } 42 43 type PreemptableResponse struct { 44 Status int `json:"status"` 45 Victims []*api.TaskInfo `json:"victims"` 46 } 47 48 type ReclaimableRequest PreemptableRequest 49 type ReclaimableResponse PreemptableResponse 50 51 type JobEnqueueableRequest struct { 52 Job *api.JobInfo `json:"job"` 53 } 54 55 type JobEnqueueableResponse struct { 56 Status int `json:"status"` 57 } 58 59 type QueueOverusedRequest struct { 60 Queue *api.QueueInfo `json:"queue"` 61 } 62 type QueueOverusedResponse struct { 63 Overused bool `json:"overused"` 64 } 65 66 type JobReadyRequest struct { 67 Job *api.JobInfo `json:"job"` 68 } 69 70 type JobReadyResponse struct { 71 Status bool `json:"status"` 72 }