{-# LANGUAGE OverloadedStrings #-}
module Network.AWS.ECS.Types
(
ecs
, _AccessDeniedException
, _InvalidParameterException
, _ServerException
, _ClusterContainsTasksException
, _PlatformUnknownException
, _ClusterContainsServicesException
, _ClusterContainsContainerInstancesException
, _ServiceNotActiveException
, _ClusterNotFoundException
, _NoUpdateAvailableException
, _UnsupportedFeatureException
, _ServiceNotFoundException
, _PlatformTaskDefinitionIncompatibilityException
, _MissingVersionException
, _UpdateInProgressException
, _BlockedException
, _TargetNotFoundException
, _AttributeLimitExceededException
, _ClientException
, AgentUpdateStatus (..)
, AssignPublicIP (..)
, ClusterField (..)
, Compatibility (..)
, Connectivity (..)
, ContainerInstanceStatus (..)
, DesiredStatus (..)
, DeviceCgroupPermission (..)
, HealthStatus (..)
, LaunchType (..)
, LogDriver (..)
, NetworkMode (..)
, PlacementConstraintType (..)
, PlacementStrategyType (..)
, SortOrder (..)
, TargetType (..)
, TaskDefinitionFamilyStatus (..)
, TaskDefinitionPlacementConstraintType (..)
, TaskDefinitionStatus (..)
, TransportProtocol (..)
, UlimitName (..)
, AWSVPCConfiguration
, awsVPCConfiguration
, avcSecurityGroups
, avcAssignPublicIP
, avcSubnets
, Attachment
, attachment
, aStatus
, aDetails
, aId
, aType
, AttachmentStateChange
, attachmentStateChange
, ascAttachmentARN
, ascStatus
, Attribute
, attribute
, aTargetId
, aValue
, aTargetType
, aName
, Cluster
, cluster
, cStatus
, cClusterARN
, cRunningTasksCount
, cRegisteredContainerInstancesCount
, cPendingTasksCount
, cClusterName
, cStatistics
, cActiveServicesCount
, Container
, container
, cNetworkBindings
, cContainerARN
, cNetworkInterfaces
, cTaskARN
, cLastStatus
, cReason
, cName
, cExitCode
, cHealthStatus
, ContainerDefinition
, containerDefinition
, cdImage
, cdCommand
, cdHostname
, cdDockerSecurityOptions
, cdHealthCheck
, cdDisableNetworking
, cdVolumesFrom
, cdEnvironment
, cdEntryPoint
, cdWorkingDirectory
, cdUlimits
, cdPrivileged
, cdPortMappings
, cdDockerLabels
, cdExtraHosts
, cdMemory
, cdUser
, cdDnsSearchDomains
, cdLogConfiguration
, cdLinuxParameters
, cdName
, cdDnsServers
, cdMountPoints
, cdLinks
, cdReadonlyRootFilesystem
, cdEssential
, cdCpu
, cdMemoryReservation
, ContainerInstance
, containerInstance
, ciStatus
, ciAttachments
, ciRunningTasksCount
, ciRemainingResources
, ciEc2InstanceId
, ciContainerInstanceARN
, ciAgentConnected
, ciVersionInfo
, ciAgentUpdateStatus
, ciAttributes
, ciVersion
, ciPendingTasksCount
, ciRegisteredAt
, ciRegisteredResources
, ContainerOverride
, containerOverride
, coCommand
, coEnvironment
, coMemory
, coName
, coCpu
, coMemoryReservation
, ContainerService
, containerService
, csRunningCount
, csStatus
, csClusterARN
, csCreatedAt
, csPlatformVersion
, csDesiredCount
, csLoadBalancers
, csPendingCount
, csPlacementConstraints
, csEvents
, csPlacementStrategy
, csDeployments
, csServiceName
, csLaunchType
, csServiceARN
, csTaskDefinition
, csHealthCheckGracePeriodSeconds
, csNetworkConfiguration
, csServiceRegistries
, csRoleARN
, csDeploymentConfiguration
, ContainerStateChange
, containerStateChange
, cscNetworkBindings
, cscStatus
, cscContainerName
, cscReason
, cscExitCode
, Deployment
, deployment
, dRunningCount
, dStatus
, dCreatedAt
, dPlatformVersion
, dDesiredCount
, dPendingCount
, dId
, dLaunchType
, dUpdatedAt
, dTaskDefinition
, dNetworkConfiguration
, DeploymentConfiguration
, deploymentConfiguration
, dcMinimumHealthyPercent
, dcMaximumPercent
, Device
, device
, dContainerPath
, dPermissions
, dHostPath
, Failure
, failure
, fArn
, fReason
, HealthCheck
, healthCheck
, hcStartPeriod
, hcRetries
, hcInterval
, hcTimeout
, hcCommand
, HostEntry
, hostEntry
, heHostname
, heIpAddress
, HostVolumeProperties
, hostVolumeProperties
, hvpSourcePath
, KernelCapabilities
, kernelCapabilities
, kcDrop
, kcAdd
, KeyValuePair
, keyValuePair
, kvpValue
, kvpName
, LinuxParameters
, linuxParameters
, lpSharedMemorySize
, lpInitProcessEnabled
, lpTmpfs
, lpDevices
, lpCapabilities
, LoadBalancer
, loadBalancer
, lbLoadBalancerName
, lbContainerName
, lbTargetGroupARN
, lbContainerPort
, LogConfiguration
, logConfiguration
, lcOptions
, lcLogDriver
, MountPoint
, mountPoint
, mpContainerPath
, mpSourceVolume
, mpReadOnly
, NetworkBinding
, networkBinding
, nbBindIP
, nbProtocol
, nbHostPort
, nbContainerPort
, NetworkConfiguration
, networkConfiguration
, ncAwsvpcConfiguration
, NetworkInterface
, networkInterface
, niIpv6Address
, niPrivateIPv4Address
, niAttachmentId
, PlacementConstraint
, placementConstraint
, pcExpression
, pcType
, PlacementStrategy
, placementStrategy
, psField
, psType
, PortMapping
, portMapping
, pmProtocol
, pmHostPort
, pmContainerPort
, Resource
, resource
, rStringSetValue
, rIntegerValue
, rDoubleValue
, rLongValue
, rName
, rType
, ServiceEvent
, serviceEvent
, seCreatedAt
, seId
, seMessage
, ServiceRegistry
, serviceRegistry
, srRegistryARN
, srPort
, Task
, task
, tStoppedAt
, tDesiredStatus
, tOverrides
, tClusterARN
, tGroup
, tAttachments
, tCreatedAt
, tPlatformVersion
, tTaskARN
, tContainerInstanceARN
, tExecutionStoppedAt
, tLastStatus
, tMemory
, tPullStoppedAt
, tContainers
, tStartedAt
, tVersion
, tStartedBy
, tStoppedReason
, tConnectivity
, tStoppingAt
, tLaunchType
, tTaskDefinitionARN
, tHealthStatus
, tConnectivityAt
, tCpu
, tPullStartedAt
, TaskDefinition
, taskDefinition
, tdStatus
, tdExecutionRoleARN
, tdRequiresCompatibilities
, tdFamily
, tdContainerDefinitions
, tdMemory
, tdTaskRoleARN
, tdPlacementConstraints
, tdNetworkMode
, tdTaskDefinitionARN
, tdCompatibilities
, tdRevision
, tdVolumes
, tdCpu
, tdRequiresAttributes
, TaskDefinitionPlacementConstraint
, taskDefinitionPlacementConstraint
, tdpcExpression
, tdpcType
, TaskOverride
, taskOverride
, toContainerOverrides
, toExecutionRoleARN
, toTaskRoleARN
, Tmpfs
, tmpfs
, tMountOptions
, tContainerPath
, tSize
, Ulimit
, ulimit
, uName
, uSoftLimit
, uHardLimit
, VersionInfo
, versionInfo
, viAgentHash
, viAgentVersion
, viDockerVersion
, Volume
, volume
, vName
, vHost
, VolumeFrom
, volumeFrom
, vfSourceContainer
, vfReadOnly
) where
import Network.AWS.ECS.Types.Product
import Network.AWS.ECS.Types.Sum
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Sign.V4
ecs :: Service
ecs =
Service
{ _svcAbbrev = "ECS"
, _svcSigner = v4
, _svcPrefix = "ecs"
, _svcVersion = "2014-11-13"
, _svcEndpoint = defaultEndpoint ecs
, _svcTimeout = Just 70
, _svcCheck = statusSuccess
, _svcError = parseJSONError "ECS"
, _svcRetry = retry
}
where
retry =
Exponential
{ _retryBase = 5.0e-2
, _retryGrowth = 2
, _retryAttempts = 5
, _retryCheck = check
}
check e
| has (hasCode "ThrottledException" . hasStatus 400) e =
Just "throttled_exception"
| has (hasStatus 429) e = Just "too_many_requests"
| has (hasCode "ThrottlingException" . hasStatus 400) e =
Just "throttling_exception"
| has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"
| has (hasStatus 504) e = Just "gateway_timeout"
| has (hasCode "RequestThrottledException" . hasStatus 400) e =
Just "request_throttled_exception"
| has (hasStatus 502) e = Just "bad_gateway"
| has (hasStatus 503) e = Just "service_unavailable"
| has (hasStatus 500) e = Just "general_server_error"
| has (hasStatus 509) e = Just "limit_exceeded"
| otherwise = Nothing
_AccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError
_AccessDeniedException = _MatchServiceError ecs "AccessDeniedException"
_InvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidParameterException = _MatchServiceError ecs "InvalidParameterException"
_ServerException :: AsError a => Getting (First ServiceError) a ServiceError
_ServerException = _MatchServiceError ecs "ServerException"
_ClusterContainsTasksException :: AsError a => Getting (First ServiceError) a ServiceError
_ClusterContainsTasksException =
_MatchServiceError ecs "ClusterContainsTasksException"
_PlatformUnknownException :: AsError a => Getting (First ServiceError) a ServiceError
_PlatformUnknownException = _MatchServiceError ecs "PlatformUnknownException"
_ClusterContainsServicesException :: AsError a => Getting (First ServiceError) a ServiceError
_ClusterContainsServicesException =
_MatchServiceError ecs "ClusterContainsServicesException"
_ClusterContainsContainerInstancesException :: AsError a => Getting (First ServiceError) a ServiceError
_ClusterContainsContainerInstancesException =
_MatchServiceError ecs "ClusterContainsContainerInstancesException"
_ServiceNotActiveException :: AsError a => Getting (First ServiceError) a ServiceError
_ServiceNotActiveException = _MatchServiceError ecs "ServiceNotActiveException"
_ClusterNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
_ClusterNotFoundException = _MatchServiceError ecs "ClusterNotFoundException"
_NoUpdateAvailableException :: AsError a => Getting (First ServiceError) a ServiceError
_NoUpdateAvailableException =
_MatchServiceError ecs "NoUpdateAvailableException"
_UnsupportedFeatureException :: AsError a => Getting (First ServiceError) a ServiceError
_UnsupportedFeatureException =
_MatchServiceError ecs "UnsupportedFeatureException"
_ServiceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
_ServiceNotFoundException = _MatchServiceError ecs "ServiceNotFoundException"
_PlatformTaskDefinitionIncompatibilityException :: AsError a => Getting (First ServiceError) a ServiceError
_PlatformTaskDefinitionIncompatibilityException =
_MatchServiceError ecs "PlatformTaskDefinitionIncompatibilityException"
_MissingVersionException :: AsError a => Getting (First ServiceError) a ServiceError
_MissingVersionException = _MatchServiceError ecs "MissingVersionException"
_UpdateInProgressException :: AsError a => Getting (First ServiceError) a ServiceError
_UpdateInProgressException = _MatchServiceError ecs "UpdateInProgressException"
_BlockedException :: AsError a => Getting (First ServiceError) a ServiceError
_BlockedException = _MatchServiceError ecs "BlockedException"
_TargetNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
_TargetNotFoundException = _MatchServiceError ecs "TargetNotFoundException"
_AttributeLimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
_AttributeLimitExceededException =
_MatchServiceError ecs "AttributeLimitExceededException"
_ClientException :: AsError a => Getting (First ServiceError) a ServiceError
_ClientException = _MatchServiceError ecs "ClientException"