Documentation ¶
Overview ¶
Package engine contains code for interacting with container-running backends and handling events from them. It supports Docker as the sole task engine type.
Package engine contains the core logic for managing tasks
Index ¶
- Constants
- Variables
- type CannotGetDockerClientError
- type CannotXContainerError
- type ContainerNotFound
- type ContainerVanishedError
- type DockerClient
- type DockerContainerChangeEvent
- type DockerContainerMetadata
- type DockerStateError
- type DockerTaskEngine
- func (engine *DockerTaskEngine) AddTask(task *api.Task) error
- func (engine *DockerTaskEngine) Capabilities() []string
- func (engine *DockerTaskEngine) CheckTaskState(task *api.Task)
- func (engine *DockerTaskEngine) Disable()
- func (engine *DockerTaskEngine) GetTaskByArn(arn string) (*api.Task, bool)
- func (engine *DockerTaskEngine) Init() error
- func (engine *DockerTaskEngine) ListTasks() ([]*api.Task, error)
- func (engine *DockerTaskEngine) MarshalJSON() ([]byte, error)
- func (engine *DockerTaskEngine) MustInit()
- func (engine *DockerTaskEngine) SetDockerClient(client DockerClient)
- func (engine *DockerTaskEngine) SetSaver(saver statemanager.Saver)
- func (engine *DockerTaskEngine) Shutdown()
- func (engine *DockerTaskEngine) State() *dockerstate.DockerTaskEngineState
- func (engine *DockerTaskEngine) TaskEvents() (<-chan api.TaskStateChange, <-chan api.ContainerStateChange)
- func (engine *DockerTaskEngine) UnmarshalJSON(data []byte) error
- func (engine *DockerTaskEngine) Version() (string, error)
- type DockerTimeoutError
- type ImageManager
- type ImageStatesForDeletion
- type ListContainersResponse
- type MockDockerClient
- func (_m *MockDockerClient) ContainerEvents(_param0 context.Context) (<-chan DockerContainerChangeEvent, error)
- func (_m *MockDockerClient) CreateContainer(_param0 *go_dockerclient.Config, _param1 *go_dockerclient.HostConfig, ...) DockerContainerMetadata
- func (_m *MockDockerClient) DescribeContainer(_param0 string) (api.ContainerStatus, DockerContainerMetadata)
- func (_m *MockDockerClient) EXPECT() *_MockDockerClientRecorder
- func (_m *MockDockerClient) InspectContainer(_param0 string, _param1 time.Duration) (*go_dockerclient.Container, error)
- func (_m *MockDockerClient) InspectImage(_param0 string) (*go_dockerclient.Image, error)
- func (_m *MockDockerClient) ListContainers(_param0 bool, _param1 time.Duration) ListContainersResponse
- func (_m *MockDockerClient) PullImage(_param0 string, _param1 *api.RegistryAuthenticationData) DockerContainerMetadata
- func (_m *MockDockerClient) RemoveContainer(_param0 string, _param1 time.Duration) error
- func (_m *MockDockerClient) RemoveImage(_param0 string, _param1 time.Duration) error
- func (_m *MockDockerClient) StartContainer(_param0 string, _param1 time.Duration) DockerContainerMetadata
- func (_m *MockDockerClient) Stats(_param0 string, _param1 context.Context) (<-chan *go_dockerclient.Stats, error)
- func (_m *MockDockerClient) StopContainer(_param0 string, _param1 time.Duration) DockerContainerMetadata
- func (_m *MockDockerClient) SupportedVersions() []dockerclient.DockerVersion
- func (_m *MockDockerClient) Version() (string, error)
- func (_m *MockDockerClient) WithVersion(_param0 dockerclient.DockerVersion) DockerClient
- type MockImageManager
- func (_m *MockImageManager) AddAllImageStates(_param0 []*image.ImageState)
- func (_m *MockImageManager) EXPECT() *_MockImageManagerRecorder
- func (_m *MockImageManager) GetImageStateFromImageName(_param0 string) *image.ImageState
- func (_m *MockImageManager) RecordContainerReference(_param0 *api.Container) error
- func (_m *MockImageManager) RemoveContainerReferenceFromImageState(_param0 *api.Container) error
- func (_m *MockImageManager) SetSaver(_param0 statemanager.Saver)
- func (_m *MockImageManager) StartImageCleanupProcess(_param0 context.Context)
- type MockTaskEngine
- func (_m *MockTaskEngine) AddTask(_param0 *api.Task) error
- func (_m *MockTaskEngine) Capabilities() []string
- func (_m *MockTaskEngine) Disable()
- func (_m *MockTaskEngine) EXPECT() *_MockTaskEngineRecorder
- func (_m *MockTaskEngine) GetTaskByArn(_param0 string) (*api.Task, bool)
- func (_m *MockTaskEngine) Init() error
- func (_m *MockTaskEngine) ListTasks() ([]*api.Task, error)
- func (_m *MockTaskEngine) MarshalJSON() ([]byte, error)
- func (_m *MockTaskEngine) MustInit()
- func (_m *MockTaskEngine) SetSaver(_param0 statemanager.Saver)
- func (_m *MockTaskEngine) TaskEvents() (<-chan api.TaskStateChange, <-chan api.ContainerStateChange)
- func (_m *MockTaskEngine) UnmarshalJSON(_param0 []byte) error
- func (_m *MockTaskEngine) Version() (string, error)
- type OutOfMemoryError
- type TaskEngine
- type TaskStoppedBeforePullBeginError
Constants ¶
const ( //DockerEndpointEnvVariable is the environment variable that can override the Docker endpoint DockerEndpointEnvVariable = "DOCKER_HOST" // DockerDefaultEndpoint is the default value for the Docker endpoint DockerDefaultEndpoint = "unix:///var/run/docker.sock" )
const ( // ListContainersTimeout is the timeout for the ListContainers API. ListContainersTimeout = 10 * time.Minute )
Timelimits for docker operations enforced above docker
Variables ¶
var ImagePullDeleteLock sync.Mutex
ImagePullDeleteLock ensures that pulls and deletes do not run at the same time. Pulls are serialized as a temporary workaround for a devicemapper issue. (see https://github.com/docker/docker/issues/9718) Deletes must not run at the same time as pulls to prevent deletion of images that are being used to launch new tasks.
Functions ¶
This section is empty.
Types ¶
type CannotGetDockerClientError ¶ added in v1.5.0
type CannotGetDockerClientError struct {
// contains filtered or unexported fields
}
CannotGetDockerClientError is a type for failing to get a specific Docker client
func (CannotGetDockerClientError) Error ¶ added in v1.5.0
func (c CannotGetDockerClientError) Error() string
func (CannotGetDockerClientError) ErrorName ¶ added in v1.5.0
func (CannotGetDockerClientError) ErrorName() string
ErrorName returns the name of the error
type CannotXContainerError ¶ added in v1.1.0
type CannotXContainerError struct {
// contains filtered or unexported fields
}
CannotXContainerError is a type for errors involving containers
func (CannotXContainerError) Error ¶ added in v1.1.0
func (err CannotXContainerError) Error() string
func (CannotXContainerError) ErrorName ¶ added in v1.1.0
func (err CannotXContainerError) ErrorName() string
ErrorName returns the name of the error
type ContainerNotFound ¶
ContainerNotFound is a type for a missing container
func (ContainerNotFound) Error ¶
func (cnferror ContainerNotFound) Error() string
type ContainerVanishedError ¶ added in v1.1.0
type ContainerVanishedError struct{}
ContainerVanishedError is a type for describing a container that does not exist
func (ContainerVanishedError) Error ¶ added in v1.1.0
func (err ContainerVanishedError) Error() string
func (ContainerVanishedError) ErrorName ¶ added in v1.1.0
func (err ContainerVanishedError) ErrorName() string
ErrorName returns the name of the error
type DockerClient ¶
type DockerClient interface { // SupportedVersions returns a slice of the supported docker versions (or at least supposedly supported). SupportedVersions() []dockerclient.DockerVersion // WithVersion returns a new DockerClient for which all operations will use the given remote api version. // A default version will be used for a client not produced via this method. WithVersion(dockerclient.DockerVersion) DockerClient ContainerEvents(ctx context.Context) (<-chan DockerContainerChangeEvent, error) PullImage(image string, authData *api.RegistryAuthenticationData) DockerContainerMetadata CreateContainer(*docker.Config, *docker.HostConfig, string, time.Duration) DockerContainerMetadata StartContainer(string, time.Duration) DockerContainerMetadata StopContainer(string, time.Duration) DockerContainerMetadata DescribeContainer(string) (api.ContainerStatus, DockerContainerMetadata) RemoveContainer(string, time.Duration) error InspectContainer(string, time.Duration) (*docker.Container, error) ListContainers(bool, time.Duration) ListContainersResponse Stats(string, context.Context) (<-chan *docker.Stats, error) Version() (string, error) InspectImage(string) (*docker.Image, error) RemoveImage(string, time.Duration) error }
DockerClient interface to make testing it easier
func NewDockerGoClient ¶
func NewDockerGoClient(clientFactory dockerclient.Factory, acceptInsecureCert bool, cfg *config.Config) (DockerClient, error)
NewDockerGoClient creates a new DockerGoClient
type DockerContainerChangeEvent ¶
type DockerContainerChangeEvent struct { Status api.ContainerStatus DockerContainerMetadata }
DockerContainerChangeEvent is a type for container change events
type DockerContainerMetadata ¶ added in v1.1.0
type DockerContainerMetadata struct { DockerID string ExitCode *int PortBindings []api.PortBinding Error engineError Volumes map[string]string }
DockerContainerMetadata is a type for metadata about Docker containers
type DockerStateError ¶ added in v1.1.0
type DockerStateError struct {
// contains filtered or unexported fields
}
DockerStateError is a wrapper around the error docker puts in the '.State.Error' field of its inspect output.
func NewDockerStateError ¶ added in v1.1.0
func NewDockerStateError(err string) DockerStateError
NewDockerStateError creates a DockerStateError
func (DockerStateError) Error ¶ added in v1.1.0
func (err DockerStateError) Error() string
func (DockerStateError) ErrorName ¶ added in v1.1.0
func (err DockerStateError) ErrorName() string
ErrorName returns the name of the error
type DockerTaskEngine ¶
type DockerTaskEngine struct {
// contains filtered or unexported fields
}
DockerTaskEngine is an abstraction over the DockerGoClient so that it does not have to know about tasks, only containers The DockerTaskEngine interacts with docker to implement a task engine
func NewDockerTaskEngine ¶
func NewDockerTaskEngine(cfg *config.Config, client DockerClient, credentialsManager credentials.Manager, containerChangeEventStream *eventstream.EventStream, imageManager ImageManager, state *dockerstate.DockerTaskEngineState) *DockerTaskEngine
NewDockerTaskEngine returns a created, but uninitialized, DockerTaskEngine. The distinction between created and initialized is that when created it may be serialized/deserialized, but it will not communicate with docker until it is also initialized.
func (*DockerTaskEngine) AddTask ¶
func (engine *DockerTaskEngine) AddTask(task *api.Task) error
AddTask starts tracking a task
func (*DockerTaskEngine) Capabilities ¶ added in v1.5.0
func (engine *DockerTaskEngine) Capabilities() []string
Capabilities returns the supported capabilities of this agent / docker-client pair. Currently, the following capabilities are possible:
com.amazonaws.ecs.capability.privileged-container com.amazonaws.ecs.capability.docker-remote-api.1.17 com.amazonaws.ecs.capability.docker-remote-api.1.18 com.amazonaws.ecs.capability.docker-remote-api.1.19 com.amazonaws.ecs.capability.docker-remote-api.1.20 com.amazonaws.ecs.capability.logging-driver.json-file com.amazonaws.ecs.capability.logging-driver.syslog com.amazonaws.ecs.capability.logging-driver.fluentd com.amazonaws.ecs.capability.logging-driver.journald com.amazonaws.ecs.capability.logging-driver.gelf com.amazonaws.ecs.capability.selinux com.amazonaws.ecs.capability.apparmor com.amazonaws.ecs.capability.ecr-auth com.amazonaws.ecs.capability.task-iam-role com.amazonaws.ecs.capability.task-iam-role-network-host
func (*DockerTaskEngine) CheckTaskState ¶ added in v1.1.0
func (engine *DockerTaskEngine) CheckTaskState(task *api.Task)
CheckTaskState inspects the state of all containers within a task and writes their state to the managed task's container channel.
func (*DockerTaskEngine) Disable ¶ added in v1.0.0
func (engine *DockerTaskEngine) Disable()
Disable prevents this engine from managing any additional tasks.
func (*DockerTaskEngine) GetTaskByArn ¶ added in v1.8.2
func (engine *DockerTaskEngine) GetTaskByArn(arn string) (*api.Task, bool)
GetTaskByArn returns the task identified by that ARN
func (*DockerTaskEngine) Init ¶
func (engine *DockerTaskEngine) Init() error
Init initializes a DockerTaskEngine such that it may communicate with docker and operate normally. This function must be called before any other function, except serializing and deserializing, can succeed without error.
func (*DockerTaskEngine) ListTasks ¶
func (engine *DockerTaskEngine) ListTasks() ([]*api.Task, error)
ListTasks returns the tasks currently managed by the DockerTaskEngine
func (*DockerTaskEngine) MarshalJSON ¶
func (engine *DockerTaskEngine) MarshalJSON() ([]byte, error)
MarshalJSON marshals into state directly
func (*DockerTaskEngine) MustInit ¶
func (engine *DockerTaskEngine) MustInit()
MustInit blocks and retries until an engine can be initialized.
func (*DockerTaskEngine) SetDockerClient ¶ added in v1.1.0
func (engine *DockerTaskEngine) SetDockerClient(client DockerClient)
SetDockerClient provides a way to override the client used for communication with docker as a testing hook.
func (*DockerTaskEngine) SetSaver ¶
func (engine *DockerTaskEngine) SetSaver(saver statemanager.Saver)
SetSaver sets the saver that is used by the DockerTaskEngine
func (*DockerTaskEngine) Shutdown ¶ added in v1.1.0
func (engine *DockerTaskEngine) Shutdown()
Shutdown makes a best-effort attempt to cleanup after the task engine. This should not be relied on for anything more complicated than testing.
func (*DockerTaskEngine) State ¶
func (engine *DockerTaskEngine) State() *dockerstate.DockerTaskEngineState
State is a function primarily meant for testing usage; it is explicitly not part of the TaskEngine interface and should not be relied upon. It returns an internal representation of the state of this DockerTaskEngine.
func (*DockerTaskEngine) TaskEvents ¶
func (engine *DockerTaskEngine) TaskEvents() (<-chan api.TaskStateChange, <-chan api.ContainerStateChange)
TaskEvents returns channels to read task and container state changes. These changes should be read as soon as possible as them not being read will block processing the task referenced by the event.
func (*DockerTaskEngine) UnmarshalJSON ¶
func (engine *DockerTaskEngine) UnmarshalJSON(data []byte) error
UnmarshalJSON restores a previously marshaled task-engine state from json
func (*DockerTaskEngine) Version ¶ added in v1.0.0
func (engine *DockerTaskEngine) Version() (string, error)
Version returns the underlying docker version.
type DockerTimeoutError ¶ added in v1.1.0
type DockerTimeoutError struct {
// contains filtered or unexported fields
}
DockerTimeoutError is an error type for describing timeouts
func (*DockerTimeoutError) Error ¶ added in v1.1.0
func (err *DockerTimeoutError) Error() string
func (*DockerTimeoutError) ErrorName ¶ added in v1.1.0
func (err *DockerTimeoutError) ErrorName() string
ErrorName returns the name of the error
type ImageManager ¶ added in v1.13.0
type ImageManager interface { RecordContainerReference(container *api.Container) error RemoveContainerReferenceFromImageState(container *api.Container) error AddAllImageStates(imageStates []*image.ImageState) GetImageStateFromImageName(containerImageName string) *image.ImageState StartImageCleanupProcess(ctx context.Context) SetSaver(stateManager statemanager.Saver) }
ImageManager is responsible for saving the Image states, adding and removing container references to ImageStates
func NewImageManager ¶ added in v1.13.0
func NewImageManager(cfg *config.Config, client DockerClient, state *dockerstate.DockerTaskEngineState) ImageManager
NewImageManager returns a new ImageManager
type ImageStatesForDeletion ¶ added in v1.13.0
type ImageStatesForDeletion []*image.ImageState
ImageStatesForDeletion is used for implementing the sort interface
func (ImageStatesForDeletion) Len ¶ added in v1.13.0
func (imageStates ImageStatesForDeletion) Len() int
Implementing sort interface based on last used times of the images
func (ImageStatesForDeletion) Less ¶ added in v1.13.0
func (imageStates ImageStatesForDeletion) Less(i, j int) bool
func (ImageStatesForDeletion) Swap ¶ added in v1.13.0
func (imageStates ImageStatesForDeletion) Swap(i, j int)
type ListContainersResponse ¶ added in v1.2.0
ListContainersResponse encapsulates the response from the docker client for the ListContainers call.
type MockDockerClient ¶ added in v1.7.0
type MockDockerClient struct {
// contains filtered or unexported fields
}
Mock of DockerClient interface
func NewMockDockerClient ¶ added in v1.7.0
func NewMockDockerClient(ctrl *gomock.Controller) *MockDockerClient
func (*MockDockerClient) ContainerEvents ¶ added in v1.7.0
func (_m *MockDockerClient) ContainerEvents(_param0 context.Context) (<-chan DockerContainerChangeEvent, error)
func (*MockDockerClient) CreateContainer ¶ added in v1.7.0
func (_m *MockDockerClient) CreateContainer(_param0 *go_dockerclient.Config, _param1 *go_dockerclient.HostConfig, _param2 string, _param3 time.Duration) DockerContainerMetadata
func (*MockDockerClient) DescribeContainer ¶ added in v1.7.0
func (_m *MockDockerClient) DescribeContainer(_param0 string) (api.ContainerStatus, DockerContainerMetadata)
func (*MockDockerClient) EXPECT ¶ added in v1.7.0
func (_m *MockDockerClient) EXPECT() *_MockDockerClientRecorder
func (*MockDockerClient) InspectContainer ¶ added in v1.7.0
func (_m *MockDockerClient) InspectContainer(_param0 string, _param1 time.Duration) (*go_dockerclient.Container, error)
func (*MockDockerClient) InspectImage ¶ added in v1.13.0
func (_m *MockDockerClient) InspectImage(_param0 string) (*go_dockerclient.Image, error)
func (*MockDockerClient) ListContainers ¶ added in v1.7.0
func (_m *MockDockerClient) ListContainers(_param0 bool, _param1 time.Duration) ListContainersResponse
func (*MockDockerClient) PullImage ¶ added in v1.7.0
func (_m *MockDockerClient) PullImage(_param0 string, _param1 *api.RegistryAuthenticationData) DockerContainerMetadata
func (*MockDockerClient) RemoveContainer ¶ added in v1.7.0
func (_m *MockDockerClient) RemoveContainer(_param0 string, _param1 time.Duration) error
func (*MockDockerClient) RemoveImage ¶ added in v1.13.0
func (_m *MockDockerClient) RemoveImage(_param0 string, _param1 time.Duration) error
func (*MockDockerClient) StartContainer ¶ added in v1.7.0
func (_m *MockDockerClient) StartContainer(_param0 string, _param1 time.Duration) DockerContainerMetadata
func (*MockDockerClient) Stats ¶ added in v1.10.0
func (_m *MockDockerClient) Stats(_param0 string, _param1 context.Context) (<-chan *go_dockerclient.Stats, error)
func (*MockDockerClient) StopContainer ¶ added in v1.7.0
func (_m *MockDockerClient) StopContainer(_param0 string, _param1 time.Duration) DockerContainerMetadata
func (*MockDockerClient) SupportedVersions ¶ added in v1.7.0
func (_m *MockDockerClient) SupportedVersions() []dockerclient.DockerVersion
func (*MockDockerClient) Version ¶ added in v1.7.0
func (_m *MockDockerClient) Version() (string, error)
func (*MockDockerClient) WithVersion ¶ added in v1.7.0
func (_m *MockDockerClient) WithVersion(_param0 dockerclient.DockerVersion) DockerClient
type MockImageManager ¶ added in v1.13.0
type MockImageManager struct {
// contains filtered or unexported fields
}
Mock of ImageManager interface
func NewMockImageManager ¶ added in v1.13.0
func NewMockImageManager(ctrl *gomock.Controller) *MockImageManager
func (*MockImageManager) AddAllImageStates ¶ added in v1.13.0
func (_m *MockImageManager) AddAllImageStates(_param0 []*image.ImageState)
func (*MockImageManager) EXPECT ¶ added in v1.13.0
func (_m *MockImageManager) EXPECT() *_MockImageManagerRecorder
func (*MockImageManager) GetImageStateFromImageName ¶ added in v1.13.0
func (_m *MockImageManager) GetImageStateFromImageName(_param0 string) *image.ImageState
func (*MockImageManager) RecordContainerReference ¶ added in v1.13.1
func (_m *MockImageManager) RecordContainerReference(_param0 *api.Container) error
func (*MockImageManager) RemoveContainerReferenceFromImageState ¶ added in v1.13.0
func (_m *MockImageManager) RemoveContainerReferenceFromImageState(_param0 *api.Container) error
func (*MockImageManager) SetSaver ¶ added in v1.13.0
func (_m *MockImageManager) SetSaver(_param0 statemanager.Saver)
func (*MockImageManager) StartImageCleanupProcess ¶ added in v1.13.0
func (_m *MockImageManager) StartImageCleanupProcess(_param0 context.Context)
type MockTaskEngine ¶ added in v1.7.0
type MockTaskEngine struct {
// contains filtered or unexported fields
}
Mock of TaskEngine interface
func NewMockTaskEngine ¶ added in v1.7.0
func NewMockTaskEngine(ctrl *gomock.Controller) *MockTaskEngine
func (*MockTaskEngine) AddTask ¶ added in v1.7.0
func (_m *MockTaskEngine) AddTask(_param0 *api.Task) error
func (*MockTaskEngine) Capabilities ¶ added in v1.7.0
func (_m *MockTaskEngine) Capabilities() []string
func (*MockTaskEngine) Disable ¶ added in v1.7.0
func (_m *MockTaskEngine) Disable()
func (*MockTaskEngine) EXPECT ¶ added in v1.7.0
func (_m *MockTaskEngine) EXPECT() *_MockTaskEngineRecorder
func (*MockTaskEngine) GetTaskByArn ¶ added in v1.8.2
func (_m *MockTaskEngine) GetTaskByArn(_param0 string) (*api.Task, bool)
func (*MockTaskEngine) Init ¶ added in v1.7.0
func (_m *MockTaskEngine) Init() error
func (*MockTaskEngine) ListTasks ¶ added in v1.7.0
func (_m *MockTaskEngine) ListTasks() ([]*api.Task, error)
func (*MockTaskEngine) MarshalJSON ¶ added in v1.7.0
func (_m *MockTaskEngine) MarshalJSON() ([]byte, error)
func (*MockTaskEngine) MustInit ¶ added in v1.7.0
func (_m *MockTaskEngine) MustInit()
func (*MockTaskEngine) SetSaver ¶ added in v1.7.0
func (_m *MockTaskEngine) SetSaver(_param0 statemanager.Saver)
func (*MockTaskEngine) TaskEvents ¶ added in v1.7.0
func (_m *MockTaskEngine) TaskEvents() (<-chan api.TaskStateChange, <-chan api.ContainerStateChange)
func (*MockTaskEngine) UnmarshalJSON ¶ added in v1.7.0
func (_m *MockTaskEngine) UnmarshalJSON(_param0 []byte) error
func (*MockTaskEngine) Version ¶ added in v1.7.0
func (_m *MockTaskEngine) Version() (string, error)
type OutOfMemoryError ¶ added in v1.1.0
type OutOfMemoryError struct{}
OutOfMemoryError is a type for errors caused by running out of memory
func (OutOfMemoryError) Error ¶ added in v1.1.0
func (err OutOfMemoryError) Error() string
func (OutOfMemoryError) ErrorName ¶ added in v1.1.0
func (err OutOfMemoryError) ErrorName() string
ErrorName returns the name of the error
type TaskEngine ¶
type TaskEngine interface { Init() error MustInit() // Disable *must* only be called when this engine will no longer be used // (e.g. right before exiting down the process). It will irreversably stop // this task engine from processing new tasks Disable() // TaskEvents will provide information about tasks that have been previously // executed. Specifically, it will provide information when they reach // running or stopped, as well as providing portbinding and other metadata TaskEvents() (<-chan api.TaskStateChange, <-chan api.ContainerStateChange) SetSaver(statemanager.Saver) // AddTask adds a new task to the task engine and manages its container's // lifecycle. If it returns an error, the task was not added. AddTask(*api.Task) error // ListTasks lists all the tasks being managed by the TaskEngine. ListTasks() ([]*api.Task, error) // GetTaskByArn gets a managed task, given a task arn. GetTaskByArn(string) (*api.Task, bool) Version() (string, error) // Capabilities returns an array of capabilities this task engine has, which // should model what it can execute. Capabilities() []string json.Marshaler json.Unmarshaler }
TaskEngine is an interface for the DockerTaskEngine
func NewTaskEngine ¶
func NewTaskEngine(cfg *config.Config, client DockerClient, credentialsManager credentials.Manager, containerChangeEventStream *eventstream.EventStream, imageManager ImageManager, state *dockerstate.DockerTaskEngineState) TaskEngine
NewTaskEngine returns a default TaskEngine
type TaskStoppedBeforePullBeginError ¶ added in v1.13.0
type TaskStoppedBeforePullBeginError struct {
// contains filtered or unexported fields
}
TaskStoppedBeforePullBeginError is a type for task errors involving pull
func (TaskStoppedBeforePullBeginError) Error ¶ added in v1.13.0
func (err TaskStoppedBeforePullBeginError) Error() string
func (TaskStoppedBeforePullBeginError) ErrorName ¶ added in v1.13.0
func (TaskStoppedBeforePullBeginError) ErrorName() string
ErrorName returns the name of the error
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package dockerauth handles storing auth configuration information for Docker registries.
|
Package dockerauth handles storing auth configuration information for Docker registries. |
Package dockeriface contains an interface for go-dockerclient matching the subset used by the agent
|
Package dockeriface contains an interface for go-dockerclient matching the subset used by the agent |
testutils
Package testutils contains files that are used in tests but not elsewhere and thus can be excluded from the final executable.
|
Package testutils contains files that are used in tests but not elsewhere and thus can be excluded from the final executable. |
Package emptyvolume contains some information related to the 'emptyvolumes'
|
Package emptyvolume contains some information related to the 'emptyvolumes' |
Package testutils contains files that are used in tests but not elsewhere and thus can be excluded from the final executable.
|
Package testutils contains files that are used in tests but not elsewhere and thus can be excluded from the final executable. |