Documentation
¶
Index ¶
- Constants
- Variables
- func ApplyMask(task *Task)
- func Encode(task *Task) ([]byte, error)
- func IsTerminal(state TaskState) bool
- func NotifyCallback(task *Task)
- type CallbackData
- type DefaultTaskDB
- func (db *DefaultTaskDB) Clean() error
- func (db *DefaultTaskDB) Close()
- func (db *DefaultTaskDB) ListNonTerminalTasks() ([]*Task, error)
- func (db *DefaultTaskDB) PutTask(task *Task) error
- func (db *DefaultTaskDB) ReadTask(id string) (Task, error)
- func (db *DefaultTaskDB) ReadUnmaskedTask(id string) (Task, error)
- type Port
- type Request
- type Scheduler
- type SlaveConstraint
- type Status
- type Task
- type TaskDB
- type TaskState
- type URI
- type Volume
Constants ¶
View Source
const Masking = "*******"
Variables ¶
View Source
var ErrQueueFull = errors.New("task queue is full")
ErrQueueFull is returned in the event of a full queue. This allows the caller to handle this as they see fit.
Functions ¶
func IsTerminal ¶
IsTerminal takes a string representation of a state and returns whether it is terminal or not.
func NotifyCallback ¶
func NotifyCallback(task *Task)
NotifyCallback handles posting a JSON back to the URI given with the task.
Types ¶
type CallbackData ¶
type DefaultTaskDB ¶
type DefaultTaskDB struct {
// contains filtered or unexported fields
}
func NewDefaultTaskDB ¶
func NewDefaultTaskDB() *DefaultTaskDB
func (*DefaultTaskDB) Clean ¶
func (db *DefaultTaskDB) Clean() error
func (*DefaultTaskDB) Close ¶
func (db *DefaultTaskDB) Close()
func (*DefaultTaskDB) ListNonTerminalTasks ¶
func (db *DefaultTaskDB) ListNonTerminalTasks() ([]*Task, error)
func (*DefaultTaskDB) PutTask ¶
func (db *DefaultTaskDB) PutTask(task *Task) error
func (*DefaultTaskDB) ReadUnmaskedTask ¶
func (db *DefaultTaskDB) ReadUnmaskedTask(id string) (Task, error)
type Request ¶
type Request struct {
TaskCPUs float64 `json:"task_cpus"`
TaskMem float64 `json:"task_mem"`
DockerImage string `json:"docker_image"`
Command string `json:"command"`
Volumes []Volume `json:"volumes"`
Ports []Port `json:"ports"`
Environment map[string]string `json:"env"`
MaskedEnvironment map[string]string `json:"masked_env"`
SlaveConstraints []SlaveConstraint `json:"slave_constraints"`
CallbackURI string `json:"callback_uri"`
URIs []string `json:"uris"`
Fetch []URI `json:"fetch"`
ForcePullImage bool `json:"force_pull_image"`
}
Request represents the structure of a job request
type SlaveConstraint ¶
type Task ¶
type Task struct {
TaskCPUs float64 `json:"task_cpus"`
TaskMem float64 `json:"task_mem"`
Command string `json:"command"`
User string `json:"user"`
Environment map[string]string `json:"env"`
MaskedEnvironment map[string]string `json:"masked_env"`
Image string `json:"image"`
Volumes []Volume `json:"volumes"`
Ports []Port `json:"ports"`
Status []Status `json:"status"`
ID string `json:"id"`
Name string `json:"name"`
FrameworkId string `json:"framework_id"`
SlaveId string `json:"slave_id"`
SlaveConstraints []SlaveConstraint `json:"slave_constraints"`
Hostname string `json:"hostname"`
Retry int `json:"retry"`
CallbackURI string `json:"callback_uri"`
SandboxPath string `json:"sandbox_path"`
AgentIP string `json:"agent_ip"`
AgentPort int32 `json:"agent_port"`
ForcePullImage bool `json:"force_pull_image"`
FetchURIs []URI `json:"fetch"`
}
func (*Task) IsTerminated ¶
func (*Task) LastUpdated ¶
func (*Task) UpdateStatus ¶
func (*Task) WasRunning ¶
type TaskDB ¶
type TaskDB interface {
Clean() error
Close()
PutTask(task *Task) error
ReadTask(id string) (Task, error)
ReadUnmaskedTask(id string) (Task, error)
ListNonTerminalTasks() ([]*Task, error)
}
TaskDB defines the functions needed by the database abstraction layer
type TaskState ¶
type TaskState string
const ( // Standard mesos states TaskState_TASK_STAGING TaskState = "TASK_STAGING" TaskState_TASK_STARTING TaskState = "TASK_STARTING" TaskState_TASK_RUNNING TaskState = "TASK_RUNNING" TaskState_TASK_FINISHED TaskState = "TASK_FINISHED" TaskState_TASK_FAILED TaskState = "TASK_FAILED" TaskState_TASK_KILLED TaskState = "TASK_KILLED" TaskState_TASK_LOST TaskState = "TASK_LOST" TaskState_TASK_ERROR TaskState = "TASK_ERROR" // Custom eremetic states TaskState_TASK_QUEUED TaskState = "TASK_QUEUED" )
Click to show internal directories.
Click to hide internal directories.
