amazonka-ecs-1.0.0: Amazon EC2 Container Service SDK.

Copyright(c) 2013-2015 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.ECS

Contents

Description

Amazon EC2 Container Service (Amazon ECS) is a highly scalable, fast, container management service that makes it easy to run, stop, and manage Docker containers on a cluster of Amazon EC2 instances. Amazon ECS lets you launch and stop container-enabled applications with simple API calls, allows you to get the state of your cluster from a centralized service, and gives you access to many familiar Amazon EC2 features like security groups, Amazon EBS volumes, and IAM roles.

You can use Amazon ECS to schedule the placement of containers across your cluster based on your resource needs, isolation policies, and availability requirements. Amazon EC2 Container Service eliminates the need for you to operate your own cluster management and configuration management systems or worry about scaling your management infrastructure.

See: AWS API Reference

Synopsis

Service

data ECS Source

Version 2014-11-13 of the Amazon EC2 Container Service SDK.

Instances

AWSService ECS 
type Sg ECS = V4 

Errors

Error matchers are designed for use with the functions provided by Control.Exception.Lens. This allows catching (and rethrowing) service specific errors returned by ECS.

InvalidParameterException

_InvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError Source

The specified parameter is invalid. Review the available parameters for the API request.

ServerException

_ServerException :: AsError a => Getting (First ServiceError) a ServiceError Source

These errors are usually caused by a server-side issue.

ClusterContainsServicesException

_ClusterContainsServicesException :: AsError a => Getting (First ServiceError) a ServiceError Source

You cannot delete a cluster that contains services. You must first update the service to reduce its desired task count to 0 and then delete the service. For more information, see UpdateService and DeleteService.

ClusterContainsContainerInstancesException

_ClusterContainsContainerInstancesException :: AsError a => Getting (First ServiceError) a ServiceError Source

You cannot delete a cluster that has registered container instances. You must first deregister the container instances before you can delete the cluster. For more information, see DeregisterContainerInstance.

ServiceNotActiveException

_ServiceNotActiveException :: AsError a => Getting (First ServiceError) a ServiceError Source

The specified service is not active. You cannot update a service that is not active. If you have previously deleted a service, you can recreate it with CreateService.

NoUpdateAvailableException

_NoUpdateAvailableException :: AsError a => Getting (First ServiceError) a ServiceError Source

There is no update available for this Amazon ECS container agent. This could be because the agent is already running the latest version, or it is so old that there is no update path to the current version.

ClusterNotFoundException

_ClusterNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source

The specified cluster could not be found. You can view your available clusters with ListClusters. Amazon ECS clusters are region-specific.

ServiceNotFoundException

_ServiceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source

The specified service could not be found. You can view your available services with ListServices. Amazon ECS services are cluster-specific and region-specific.

MissingVersionException

_MissingVersionException :: AsError a => Getting (First ServiceError) a ServiceError Source

Amazon ECS is unable to determine the current version of the Amazon ECS container agent on the container instance and does not have enough information to proceed with an update. This could be because the agent running on the container instance is an older or custom version that does not use our version information.

UpdateInProgressException

_UpdateInProgressException :: AsError a => Getting (First ServiceError) a ServiceError Source

There is already a current Amazon ECS container agent update in progress on the specified container instance. If the container agent becomes disconnected while it is in a transitional stage, such as PENDING or STAGING, the update process can get stuck in that state. However, when the agent reconnects, it will resume where it stopped previously.

ClientException

_ClientException :: AsError a => Getting (First ServiceError) a ServiceError Source

These errors are usually caused by something the client did, such as use an action or resource on behalf of a user that doesn't have permission to use the action or resource, or specify an identifier that is not valid.

Waiters

Waiters poll by repeatedly sending a request until some remote success condition configured by the Wait specification is fulfilled. The Wait specification determines how many attempts should be made, in addition to delay and retry strategies.

ServicesInactive

servicesInactive :: Wait DescribeServices Source

Polls DescribeServices every 15 seconds until a successful state is reached. An error is returned after 40 failed checks.

TasksRunning

tasksRunning :: Wait DescribeTasks Source

Polls DescribeTasks every 6 seconds until a successful state is reached. An error is returned after 100 failed checks.

TasksStopped

tasksStopped :: Wait DescribeTasks Source

Polls DescribeTasks every 6 seconds until a successful state is reached. An error is returned after 100 failed checks.

Operations

Some AWS operations return results that are incomplete and require subsequent requests in order to obtain the entire result set. The process of sending subsequent requests to continue where a previous request left off is called pagination. For example, the ListObjects operation of Amazon S3 returns up to 1000 objects at a time, and you must send subsequent requests with the appropriate Marker in order to retrieve the next page of results.

Operations that have an AWSPager instance can transparently perform subsequent requests, correctly setting Markers and other request facets to iterate through the entire result set of a truncated API operation. Operations which support this have an additional note in the documentation.

Many operations have the ability to filter results on the server side. See the individual operation parameters for details.

ListServices (Paginated)

DescribeClusters

DeleteService

UpdateService

DiscoverPollEndpoint

SubmitContainerStateChange

StopTask

DescribeTaskDefinition

SubmitTaskStateChange

DescribeContainerInstances

DeleteCluster

CreateCluster

ListTaskDefinitions (Paginated)

ListTasks (Paginated)

RunTask

ListContainerInstances (Paginated)

RegisterContainerInstance

UpdateContainerAgent

ListTaskDefinitionFamilies (Paginated)

StartTask

DeregisterTaskDefinition

DescribeTasks

ListClusters (Paginated)

DescribeServices

DeregisterContainerInstance

RegisterTaskDefinition

CreateService

Types

AgentUpdateStatus

DesiredStatus

SortOrder

TaskDefinitionStatus

TransportProtocol

Cluster

data Cluster Source

A regional grouping of one or more container instances on which you can run task requests. Each account receives a default cluster the first time you use the Amazon ECS service, but you may also create other clusters. Clusters may contain more than one instance type simultaneously.

See: cluster smart constructor.

cluster :: Cluster Source

Creates a value of Cluster with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

cStatus :: Lens' Cluster (Maybe Text) Source

The status of the cluster. The valid values are ACTIVE or INACTIVE. ACTIVE indicates that you can register container instances with the cluster and the associated instances can accept tasks.

cClusterARN :: Lens' Cluster (Maybe Text) Source

The Amazon Resource Name (ARN) that identifies the cluster. The ARN contains the 'arn:aws:ecs' namespace, followed by the region of the cluster, the AWS account ID of the cluster owner, the cluster namespace, and then the cluster name. For example, arn:aws:ecs:region:012345678910:cluster/test.

cRunningTasksCount :: Lens' Cluster (Maybe Int) Source

The number of tasks in the cluster that are in the RUNNING state.

cRegisteredContainerInstancesCount :: Lens' Cluster (Maybe Int) Source

The number of container instances registered into the cluster.

cPendingTasksCount :: Lens' Cluster (Maybe Int) Source

The number of tasks in the cluster that are in the PENDING state.

cClusterName :: Lens' Cluster (Maybe Text) Source

A user-generated string that you can use to identify your cluster.

cActiveServicesCount :: Lens' Cluster (Maybe Int) Source

The number of services that are running on the cluster in an ACTIVE state. You can view these services with ListServices.

Container

data Container Source

A docker container that is part of a task.

See: container smart constructor.

container :: Container Source

Creates a value of Container with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

cNetworkBindings :: Lens' Container [NetworkBinding] Source

The network bindings associated with the container.

cContainerARN :: Lens' Container (Maybe Text) Source

The Amazon Resource Name (ARN) of the container.

cTaskARN :: Lens' Container (Maybe Text) Source

The Amazon Resource Name (ARN) of the task.

cLastStatus :: Lens' Container (Maybe Text) Source

The last known status of the container.

cReason :: Lens' Container (Maybe Text) Source

A short (255 max characters) human-readable string to provide additional detail about a running or stopped container.

cName :: Lens' Container (Maybe Text) Source

The name of the container.

cExitCode :: Lens' Container (Maybe Int) Source

The exit code returned from the container.

ContainerDefinition

data ContainerDefinition Source

Container definitions are used in task definitions to describe the different containers that are launched as part of a task.

See: containerDefinition smart constructor.

containerDefinition :: ContainerDefinition Source

Creates a value of ContainerDefinition with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

cdImage :: Lens' ContainerDefinition (Maybe Text) Source

The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with 'repository-url\/image:tag'.

cdCommand :: Lens' ContainerDefinition [Text] Source

The CMD that is passed to the container. For more information on the Docker CMD parameter, see https://docs.docker.com/reference/builder/#cmd.

cdVolumesFrom :: Lens' ContainerDefinition [VolumeFrom] Source

Data volumes to mount from another container.

cdEnvironment :: Lens' ContainerDefinition [KeyValuePair] Source

The environment variables to pass to a container.

cdEntryPoint :: Lens' ContainerDefinition [Text] Source

Early versions of the Amazon ECS container agent do not properly handle entryPoint parameters. If you have problems using entryPoint, update your container agent or enter your commands and arguments as command array items instead.

The ENTRYPOINT that is passed to the container. For more information on the Docker ENTRYPOINT parameter, see https://docs.docker.com/reference/builder/#entrypoint.

cdPortMappings :: Lens' ContainerDefinition [PortMapping] Source

The list of port mappings for the container.

cdMemory :: Lens' ContainerDefinition (Maybe Int) Source

The number of MiB of memory reserved for the container. If your container attempts to exceed the memory allocated here, the container is killed.

cdName :: Lens' ContainerDefinition (Maybe Text) Source

The name of a container. If you are linking multiple containers together in a task definition, the name of one container can be entered in the links of another container to connect the containers.

cdMountPoints :: Lens' ContainerDefinition [MountPoint] Source

The mount points for data volumes in your container.

cdLinks :: Lens' ContainerDefinition [Text] Source

The link parameter allows containers to communicate with each other without the need for port mappings, using the name parameter. The 'name:internalName' construct is analogous to 'name:alias' in Docker links. For more information on linking Docker containers, see https://docs.docker.com/userguide/dockerlinks/.

Containers that are collocated on a single container instance may be able to communicate with each other without requiring links or host port mappings. Network isolation is achieved on the container instance using security groups and VPC settings.

cdEssential :: Lens' ContainerDefinition (Maybe Bool) Source

If the essential parameter of a container is marked as true, the failure of that container will stop the task. If the essential parameter of a container is marked as false, then its failure will not affect the rest of the containers in a task. If this parameter is omitted, a container is assumed to be essential.

All tasks must have at least one essential container.

cdCpu :: Lens' ContainerDefinition (Maybe Int) Source

The number of cpu units reserved for the container. A container instance has 1,024 cpu units for every CPU core. This parameter specifies the minimum amount of CPU to reserve for a container, and containers share unallocated CPU units with other containers on the instance with the same ratio as their allocated amount.

For example, if you run a single-container task on a single-core instance type with 512 CPU units specified for that container, and that is the only task running on the container instance, that container could use the full 1,024 CPU unit share at any given time. However, if you launched another copy of the same task on that container instance, each task would be guaranteed a minimum of 512 CPU units when needed, and each container could float to higher CPU usage if the other container was not using it, but if both tasks were 100% active all of the time, they would be limited to 512 CPU units.

The Docker daemon on the container instance uses the CPU value to calculate the relative CPU share ratios for running containers. For more information, see CPU share constraint in the Docker documentation. The minimum valid CPU share value that the Linux kernel will allow is 2; however, the CPU parameter is not required, and you can use CPU values below 2 in your container definitions. For CPU values below 2 (including null), the behavior varies based on your Amazon ECS container agent version:

  • Agent versions less than or equal to 1.1.0: Null and zero CPU values are passed to Docker as 0, which Docker then converts to 1,024 CPU shares. CPU values of 1 are passed to Docker as 1, which the Linux kernel converts to 2 CPU shares.
  • Agent versions greater than or equal to 1.2.0: Null, zero, and CPU values of 1 are passed to Docker as 2.

ContainerInstance

data ContainerInstance Source

An Amazon EC2 instance that is running the Amazon ECS agent and has been registered with a cluster.

See: containerInstance smart constructor.

ciStatus :: Lens' ContainerInstance (Maybe Text) Source

The status of the container instance. The valid values are ACTIVE or INACTIVE. ACTIVE indicates that the container instance can accept tasks.

ciRunningTasksCount :: Lens' ContainerInstance (Maybe Int) Source

The number of tasks on the container instance that are in the RUNNING status.

ciRemainingResources :: Lens' ContainerInstance [Resource] Source

The remaining resources of the container instance that are available for new tasks.

ciEc2InstanceId :: Lens' ContainerInstance (Maybe Text) Source

The Amazon EC2 instance ID of the container instance.

ciContainerInstanceARN :: Lens' ContainerInstance (Maybe Text) Source

The Amazon Resource Name (ARN) of the container instance. The ARN contains the 'arn:aws:ecs' namespace, followed by the region of the container instance, the AWS account ID of the container instance owner, the 'container-instance' namespace, and then the container instance UUID. For example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_UUID.

ciAgentConnected :: Lens' ContainerInstance (Maybe Bool) Source

This parameter returns true if the agent is actually connected to Amazon ECS. Registered instances with an agent that may be unhealthy or stopped will return false, and instances without a connected agent cannot accept placement request.

ciVersionInfo :: Lens' ContainerInstance (Maybe VersionInfo) Source

The version information for the Amazon ECS container agent and Docker daemon running on the container instance.

ciAgentUpdateStatus :: Lens' ContainerInstance (Maybe AgentUpdateStatus) Source

The status of the most recent agent update. If an update has never been requested, this value is NULL.

ciPendingTasksCount :: Lens' ContainerInstance (Maybe Int) Source

The number of tasks on the container instance that are in the PENDING status.

ciRegisteredResources :: Lens' ContainerInstance [Resource] Source

The registered resources on the container instance that are in use by current tasks.

ContainerOverride

containerOverride :: ContainerOverride Source

Creates a value of ContainerOverride with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

coCommand :: Lens' ContainerOverride [Text] Source

The command to send to the container that overrides the default command from the Docker image or the task definition.

coEnvironment :: Lens' ContainerOverride [KeyValuePair] Source

The environment variables to send to the container. You can add new environment variables, which are added to the container at launch, or you can override the existing environment variables from the Docker image or the task definition.

coName :: Lens' ContainerOverride (Maybe Text) Source

The name of the container that receives the override.

ContainerService

containerService :: ContainerService Source

Creates a value of ContainerService with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

csStatus :: Lens' ContainerService (Maybe Text) Source

The status of the service. The valid values are ACTIVE, DRAINING, or INACTIVE.

csRunningCount :: Lens' ContainerService (Maybe Int) Source

The number of tasks in the cluster that are in the RUNNING state.

csClusterARN :: Lens' ContainerService (Maybe Text) Source

The Amazon Resource Name (ARN) of the of the cluster that hosts the service.

csDesiredCount :: Lens' ContainerService (Maybe Int) Source

The desired number of instantiations of the task definition to keep running on the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.

csLoadBalancers :: Lens' ContainerService [LoadBalancer] Source

A list of load balancer objects, containing the load balancer name, the container name (as it appears in a container definition), and the container port to access from the load balancer.

csPendingCount :: Lens' ContainerService (Maybe Int) Source

The number of tasks in the cluster that are in the PENDING state.

csEvents :: Lens' ContainerService [ServiceEvent] Source

The event stream for your service. A maximum of 100 of the latest events are displayed.

csServiceName :: Lens' ContainerService (Maybe Text) Source

A user-generated string that you can use to identify your service.

csDeployments :: Lens' ContainerService [Deployment] Source

The current state of deployments for the service.

csTaskDefinition :: Lens' ContainerService (Maybe Text) Source

The task definition to use for tasks in the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.

csServiceARN :: Lens' ContainerService (Maybe Text) Source

The Amazon Resource Name (ARN) that identifies the service. The ARN contains the 'arn:aws:ecs' namespace, followed by the region of the service, the AWS account ID of the service owner, the service namespace, and then the service name. For example, arn:aws:ecs:region:012345678910:service/my-service.

csRoleARN :: Lens' ContainerService (Maybe Text) Source

The Amazon Resource Name (ARN) of the IAM role associated with the service that allows the Amazon ECS container agent to register container instances with a load balancer.

Deployment

data Deployment Source

The details of an Amazon ECS service deployment.

See: deployment smart constructor.

deployment :: Deployment Source

Creates a value of Deployment with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

dStatus :: Lens' Deployment (Maybe Text) Source

The status of the deployment. Valid values are PRIMARY (for the most recent deployment), ACTIVE (for previous deployments that still have tasks running, but are being replaced with the PRIMARY deployment), and INACTIVE (for deployments that have been completely replaced).

dRunningCount :: Lens' Deployment (Maybe Int) Source

The number of tasks in the deployment that are in the RUNNING status.

dCreatedAt :: Lens' Deployment (Maybe UTCTime) Source

The Unix time in seconds and milliseconds when the service was created.

dDesiredCount :: Lens' Deployment (Maybe Int) Source

The most recent desired count of tasks that was specified for the service to deploy and/or maintain.

dPendingCount :: Lens' Deployment (Maybe Int) Source

The number of tasks in the deployment that are in the PENDING status.

dId :: Lens' Deployment (Maybe Text) Source

The ID of the deployment.

dTaskDefinition :: Lens' Deployment (Maybe Text) Source

The most recent task definition that was specified for the service to use.

dUpdatedAt :: Lens' Deployment (Maybe UTCTime) Source

The Unix time in seconds and milliseconds when the service was last updated.

Failure

data Failure Source

A failed resource.

See: failure smart constructor.

failure :: Failure Source

Creates a value of Failure with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

fArn :: Lens' Failure (Maybe Text) Source

The Amazon Resource Name (ARN) of the failed resource.

fReason :: Lens' Failure (Maybe Text) Source

The reason for the failure.

HostVolumeProperties

hostVolumeProperties :: HostVolumeProperties Source

Creates a value of HostVolumeProperties with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

hvpSourcePath :: Lens' HostVolumeProperties (Maybe Text) Source

The path on the host container instance that is presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you.

KeyValuePair

keyValuePair :: KeyValuePair Source

Creates a value of KeyValuePair with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

kvpValue :: Lens' KeyValuePair (Maybe Text) Source

The value of the key value pair. For environment variables, this is the value of the environment variable.

kvpName :: Lens' KeyValuePair (Maybe Text) Source

The name of the key value pair. For environment variables, this is the name of the environment variable.

LoadBalancer

data LoadBalancer Source

Details on a load balancer that is used with a service.

See: loadBalancer smart constructor.

loadBalancer :: LoadBalancer Source

Creates a value of LoadBalancer with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

lbLoadBalancerName :: Lens' LoadBalancer (Maybe Text) Source

The name of the load balancer.

lbContainerName :: Lens' LoadBalancer (Maybe Text) Source

The name of the container to associate with the load balancer.

lbContainerPort :: Lens' LoadBalancer (Maybe Int) Source

The port on the container to associate with the load balancer. This port must correspond to a containerPort in the service's task definition. Your container instances must allow ingress traffic on the hostPort of the port mapping.

MountPoint

data MountPoint Source

Details on a volume mount point that is used in a container definition.

See: mountPoint smart constructor.

mountPoint :: MountPoint Source

Creates a value of MountPoint with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

mpContainerPath :: Lens' MountPoint (Maybe Text) Source

The path on the container to mount the host volume at.

mpSourceVolume :: Lens' MountPoint (Maybe Text) Source

The name of the volume to mount.

mpReadOnly :: Lens' MountPoint (Maybe Bool) Source

If this value is true, the container has read-only access to the volume. If this value is false, then the container can write to the volume. The default value is false.

NetworkBinding

data NetworkBinding Source

Details on the network bindings between a container and its host container instance.

See: networkBinding smart constructor.

networkBinding :: NetworkBinding Source

Creates a value of NetworkBinding with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

nbBindIP :: Lens' NetworkBinding (Maybe Text) Source

The IP address that the container is bound to on the container instance.

nbProtocol :: Lens' NetworkBinding (Maybe TransportProtocol) Source

The protocol used for the network binding.

nbHostPort :: Lens' NetworkBinding (Maybe Int) Source

The port number on the host that is used with the network binding.

nbContainerPort :: Lens' NetworkBinding (Maybe Int) Source

The port number on the container that is be used with the network binding.

PortMapping

data PortMapping Source

Port mappings allow containers to access ports on the host container instance to send or receive traffic. Port mappings are specified as part of the container definition.

See: portMapping smart constructor.

portMapping :: PortMapping Source

Creates a value of PortMapping with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

pmProtocol :: Lens' PortMapping (Maybe TransportProtocol) Source

The protocol used for the port mapping. Valid values are tcp and udp. The default is tcp.

pmHostPort :: Lens' PortMapping (Maybe Int) Source

The port number on the container instance to reserve for your container. You can specify a non-reserved host port for your container port mapping, or you can omit the hostPort (or set it to '0') while specifying a containerPort and your container will automatically receive a port in the ephemeral port range for your container instance operating system and Docker version.

The default ephemeral port range is 49153 to 65535, and this range is used for Docker versions prior to 1.6.0. For Docker version 1.6.0 and later, the Docker daemon tries to read the ephemeral port range from '\/proc\/sys\/net\/ipv4\/ip_local_port_range'; if this kernel parameter is unavailable, the default ephemeral port range is used. You should not attempt to specify a host port in the ephemeral port range, since these are reserved for automatic assignment. In general, ports below 32768 are outside of the ephemeral port range.

The default reserved ports are 22 for SSH, the Docker ports 2375 and 2376, and the Amazon ECS Container Agent port 51678. Any host port that was previously specified in a running task is also reserved while the task is running (once a task stops, the host port is released).The current reserved ports are displayed in the remainingResources of DescribeContainerInstances output, and a container instance may have up to 50 reserved ports at a time, including the default reserved ports (automatically assigned ports do not count toward this limit).

pmContainerPort :: Lens' PortMapping (Maybe Int) Source

The port number on the container that is bound to the user-specified or automatically assigned host port. If you specify a container port and not a host port, your container will automatically receive a host port in the ephemeral port range (for more information, see hostPort).

Resource

data Resource Source

Describes the resources available for a container instance.

See: resource smart constructor.

resource :: Resource Source

Creates a value of Resource with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

rStringSetValue :: Lens' Resource [Text] Source

When the stringSetValue type is set, the value of the resource must be a string type.

rIntegerValue :: Lens' Resource (Maybe Int) Source

When the integerValue type is set, the value of the resource must be an integer.

rDoubleValue :: Lens' Resource (Maybe Double) Source

When the doubleValue type is set, the value of the resource must be a double precision floating-point type.

rLongValue :: Lens' Resource (Maybe Integer) Source

When the longValue type is set, the value of the resource must be an extended precision floating-point type.

rName :: Lens' Resource (Maybe Text) Source

The name of the resource, such as CPU, MEMORY, PORTS, or a user-defined resource.

rType :: Lens' Resource (Maybe Text) Source

The type of the resource, such as INTEGER, DOUBLE, LONG, or STRINGSET.

ServiceEvent

data ServiceEvent Source

Details on an event associated with a service.

See: serviceEvent smart constructor.

serviceEvent :: ServiceEvent Source

Creates a value of ServiceEvent with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

seCreatedAt :: Lens' ServiceEvent (Maybe UTCTime) Source

The Unix time in seconds and milliseconds when the event was triggered.

seId :: Lens' ServiceEvent (Maybe Text) Source

The ID string of the event.

seMessage :: Lens' ServiceEvent (Maybe Text) Source

The event message.

Task

data Task Source

Details on a task in a cluster.

See: task smart constructor.

task :: Task Source

Creates a value of Task with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

tDesiredStatus :: Lens' Task (Maybe Text) Source

The desired status of the task.

tClusterARN :: Lens' Task (Maybe Text) Source

The Amazon Resource Name (ARN) of the of the cluster that hosts the task.

tOverrides :: Lens' Task (Maybe TaskOverride) Source

One or more container overrides.

tTaskARN :: Lens' Task (Maybe Text) Source

The Amazon Resource Name (ARN) of the task.

tContainerInstanceARN :: Lens' Task (Maybe Text) Source

The Amazon Resource Name (ARN) of the container instances that host the task.

tLastStatus :: Lens' Task (Maybe Text) Source

The last known status of the task.

tContainers :: Lens' Task [Container] Source

The containers associated with the task.

tStartedBy :: Lens' Task (Maybe Text) Source

The tag specified when a task is started. If the task is started by an Amazon ECS service, then the startedBy parameter contains the deployment ID of the service that starts it.

tTaskDefinitionARN :: Lens' Task (Maybe Text) Source

The Amazon Resource Name (ARN) of the of the task definition that creates the task.

TaskDefinition

taskDefinition :: TaskDefinition Source

Creates a value of TaskDefinition with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

tdStatus :: Lens' TaskDefinition (Maybe TaskDefinitionStatus) Source

The status of the task definition.

tdFamily :: Lens' TaskDefinition (Maybe Text) Source

The family of your task definition. You can think of the family as the name of your task definition.

tdContainerDefinitions :: Lens' TaskDefinition [ContainerDefinition] Source

A list of container definitions in JSON format that describe the different containers that make up your task. For more information on container definition parameters and defaults, see Amazon ECS Task Definitions in the Amazon EC2 Container Service Developer Guide.

tdTaskDefinitionARN :: Lens' TaskDefinition (Maybe Text) Source

The full Amazon Resource Name (ARN) of the of the task definition.

tdRevision :: Lens' TaskDefinition (Maybe Int) Source

The revision of the task in a particular family. You can think of the revision as a version number of a task definition in a family. When you register a task definition for the first time, the revision is '1', and each time you register a new revision of a task definition in the same family, the revision value always increases by one (even if you have deregistered previous revisions in this family).

tdVolumes :: Lens' TaskDefinition [Volume] Source

The list of volumes in a task. For more information on volume definition parameters and defaults, see Amazon ECS Task Definitions in the Amazon EC2 Container Service Developer Guide.

TaskOverride

taskOverride :: TaskOverride Source

Creates a value of TaskOverride with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

toContainerOverrides :: Lens' TaskOverride [ContainerOverride] Source

One or more container overrides sent to a task.

VersionInfo

data VersionInfo Source

The Docker and Amazon ECS container agent version information on a container instance.

See: versionInfo smart constructor.

versionInfo :: VersionInfo Source

Creates a value of VersionInfo with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

viAgentVersion :: Lens' VersionInfo (Maybe Text) Source

The version number of the Amazon ECS container agent.

viAgentHash :: Lens' VersionInfo (Maybe Text) Source

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent GitHub repository.

viDockerVersion :: Lens' VersionInfo (Maybe Text) Source

The Docker version running on the container instance.

Volume

data Volume Source

A data volume used in a task definition.

See: volume smart constructor.

volume :: Volume Source

Creates a value of Volume with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

vName :: Lens' Volume (Maybe Text) Source

The name of the volume. This name is referenced in the sourceVolume parameter of container definition mountPoints.

vHost :: Lens' Volume (Maybe HostVolumeProperties) Source

The path on the host container instance that is presented to the containers which access the volume. If this parameter is empty, then the Docker daemon assigns a host path for you.

VolumeFrom

data VolumeFrom Source

Details on a data volume from another container.

See: volumeFrom smart constructor.

volumeFrom :: VolumeFrom Source

Creates a value of VolumeFrom with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

vfSourceContainer :: Lens' VolumeFrom (Maybe Text) Source

The name of the container to mount volumes from.

vfReadOnly :: Lens' VolumeFrom (Maybe Bool) Source

If this value is true, the container has read-only access to the volume. If this value is false, then the container can write to the volume. The default value is false.