ecs

package
Version: v1.99.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 10, 2020 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package ecs provides the client and types for making API requests to Amazon EC2 Container Service.

Amazon Elastic 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. You can host your cluster on a serverless infrastructure that is managed by Amazon ECS by launching your services or tasks using the Fargate launch type. For more control, you can host your tasks on a cluster of Amazon Elastic Compute Cloud (Amazon EC2) instances that you manage by using the EC2 launch type. For more information about launch types, see Amazon ECS Launch Types (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html).

Amazon ECS lets you launch and stop container-based 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.

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 ECS eliminates the need for you to operate your own cluster management and configuration management systems or worry about scaling your management infrastructure.

See https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13 for more information on this service.

See ecs package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/ecs/

Using the Client

To contact Amazon EC2 Container Service with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the Amazon EC2 Container Service client ECS for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/ecs/#New

Index

Examples

Constants

View Source
const (
	// AgentUpdateStatusPending is a AgentUpdateStatus enum value
	AgentUpdateStatusPending = "PENDING"

	// AgentUpdateStatusStaging is a AgentUpdateStatus enum value
	AgentUpdateStatusStaging = "STAGING"

	// AgentUpdateStatusStaged is a AgentUpdateStatus enum value
	AgentUpdateStatusStaged = "STAGED"

	// AgentUpdateStatusUpdating is a AgentUpdateStatus enum value
	AgentUpdateStatusUpdating = "UPDATING"

	// AgentUpdateStatusUpdated is a AgentUpdateStatus enum value
	AgentUpdateStatusUpdated = "UPDATED"

	// AgentUpdateStatusFailed is a AgentUpdateStatus enum value
	AgentUpdateStatusFailed = "FAILED"
)
View Source
const (
	// AssignPublicIpEnabled is a AssignPublicIp enum value
	AssignPublicIpEnabled = "ENABLED"

	// AssignPublicIpDisabled is a AssignPublicIp enum value
	AssignPublicIpDisabled = "DISABLED"
)
View Source
const (
	// ClusterFieldStatistics is a ClusterField enum value
	ClusterFieldStatistics = "STATISTICS"

	// ClusterFieldTags is a ClusterField enum value
	ClusterFieldTags = "TAGS"
)
View Source
const (
	// CompatibilityEc2 is a Compatibility enum value
	CompatibilityEc2 = "EC2"

	// CompatibilityFargate is a Compatibility enum value
	CompatibilityFargate = "FARGATE"
)
View Source
const (
	// ConnectivityConnected is a Connectivity enum value
	ConnectivityConnected = "CONNECTED"

	// ConnectivityDisconnected is a Connectivity enum value
	ConnectivityDisconnected = "DISCONNECTED"
)
View Source
const (
	// ContainerConditionStart is a ContainerCondition enum value
	ContainerConditionStart = "START"

	// ContainerConditionComplete is a ContainerCondition enum value
	ContainerConditionComplete = "COMPLETE"

	// ContainerConditionSuccess is a ContainerCondition enum value
	ContainerConditionSuccess = "SUCCESS"

	// ContainerConditionHealthy is a ContainerCondition enum value
	ContainerConditionHealthy = "HEALTHY"
)
View Source
const (
	// ContainerInstanceStatusActive is a ContainerInstanceStatus enum value
	ContainerInstanceStatusActive = "ACTIVE"

	// ContainerInstanceStatusDraining is a ContainerInstanceStatus enum value
	ContainerInstanceStatusDraining = "DRAINING"

	// ContainerInstanceStatusRegistering is a ContainerInstanceStatus enum value
	ContainerInstanceStatusRegistering = "REGISTERING"

	// ContainerInstanceStatusDeregistering is a ContainerInstanceStatus enum value
	ContainerInstanceStatusDeregistering = "DEREGISTERING"

	// ContainerInstanceStatusRegistrationFailed is a ContainerInstanceStatus enum value
	ContainerInstanceStatusRegistrationFailed = "REGISTRATION_FAILED"
)
View Source
const (
	// DeploymentControllerTypeEcs is a DeploymentControllerType enum value
	DeploymentControllerTypeEcs = "ECS"

	// DeploymentControllerTypeCodeDeploy is a DeploymentControllerType enum value
	DeploymentControllerTypeCodeDeploy = "CODE_DEPLOY"

	// DeploymentControllerTypeExternal is a DeploymentControllerType enum value
	DeploymentControllerTypeExternal = "EXTERNAL"
)
View Source
const (
	// DesiredStatusRunning is a DesiredStatus enum value
	DesiredStatusRunning = "RUNNING"

	// DesiredStatusPending is a DesiredStatus enum value
	DesiredStatusPending = "PENDING"

	// DesiredStatusStopped is a DesiredStatus enum value
	DesiredStatusStopped = "STOPPED"
)
View Source
const (
	// DeviceCgroupPermissionRead is a DeviceCgroupPermission enum value
	DeviceCgroupPermissionRead = "read"

	// DeviceCgroupPermissionWrite is a DeviceCgroupPermission enum value
	DeviceCgroupPermissionWrite = "write"

	// DeviceCgroupPermissionMknod is a DeviceCgroupPermission enum value
	DeviceCgroupPermissionMknod = "mknod"
)
View Source
const (
	// HealthStatusHealthy is a HealthStatus enum value
	HealthStatusHealthy = "HEALTHY"

	// HealthStatusUnhealthy is a HealthStatus enum value
	HealthStatusUnhealthy = "UNHEALTHY"

	// HealthStatusUnknown is a HealthStatus enum value
	HealthStatusUnknown = "UNKNOWN"
)
View Source
const (
	// IpcModeHost is a IpcMode enum value
	IpcModeHost = "host"

	// IpcModeTask is a IpcMode enum value
	IpcModeTask = "task"

	// IpcModeNone is a IpcMode enum value
	IpcModeNone = "none"
)
View Source
const (
	// LaunchTypeEc2 is a LaunchType enum value
	LaunchTypeEc2 = "EC2"

	// LaunchTypeFargate is a LaunchType enum value
	LaunchTypeFargate = "FARGATE"
)
View Source
const (
	// LogDriverJsonFile is a LogDriver enum value
	LogDriverJsonFile = "json-file"

	// LogDriverSyslog is a LogDriver enum value
	LogDriverSyslog = "syslog"

	// LogDriverJournald is a LogDriver enum value
	LogDriverJournald = "journald"

	// LogDriverGelf is a LogDriver enum value
	LogDriverGelf = "gelf"

	// LogDriverFluentd is a LogDriver enum value
	LogDriverFluentd = "fluentd"

	// LogDriverAwslogs is a LogDriver enum value
	LogDriverAwslogs = "awslogs"

	// LogDriverSplunk is a LogDriver enum value
	LogDriverSplunk = "splunk"
)
View Source
const (
	// NetworkModeBridge is a NetworkMode enum value
	NetworkModeBridge = "bridge"

	// NetworkModeHost is a NetworkMode enum value
	NetworkModeHost = "host"

	// NetworkModeAwsvpc is a NetworkMode enum value
	NetworkModeAwsvpc = "awsvpc"

	// NetworkModeNone is a NetworkMode enum value
	NetworkModeNone = "none"
)
View Source
const (
	// PidModeHost is a PidMode enum value
	PidModeHost = "host"

	// PidModeTask is a PidMode enum value
	PidModeTask = "task"
)
View Source
const (
	// PlacementConstraintTypeDistinctInstance is a PlacementConstraintType enum value
	PlacementConstraintTypeDistinctInstance = "distinctInstance"

	// PlacementConstraintTypeMemberOf is a PlacementConstraintType enum value
	PlacementConstraintTypeMemberOf = "memberOf"
)
View Source
const (
	// PlacementStrategyTypeRandom is a PlacementStrategyType enum value
	PlacementStrategyTypeRandom = "random"

	// PlacementStrategyTypeSpread is a PlacementStrategyType enum value
	PlacementStrategyTypeSpread = "spread"

	// PlacementStrategyTypeBinpack is a PlacementStrategyType enum value
	PlacementStrategyTypeBinpack = "binpack"
)
View Source
const (
	// PropagateTagsTaskDefinition is a PropagateTags enum value
	PropagateTagsTaskDefinition = "TASK_DEFINITION"

	// PropagateTagsService is a PropagateTags enum value
	PropagateTagsService = "SERVICE"
)
View Source
const (
	// SchedulingStrategyReplica is a SchedulingStrategy enum value
	SchedulingStrategyReplica = "REPLICA"

	// SchedulingStrategyDaemon is a SchedulingStrategy enum value
	SchedulingStrategyDaemon = "DAEMON"
)
View Source
const (
	// ScopeTask is a Scope enum value
	ScopeTask = "task"

	// ScopeShared is a Scope enum value
	ScopeShared = "shared"
)
View Source
const (
	// SettingNameServiceLongArnFormat is a SettingName enum value
	SettingNameServiceLongArnFormat = "serviceLongArnFormat"

	// SettingNameTaskLongArnFormat is a SettingName enum value
	SettingNameTaskLongArnFormat = "taskLongArnFormat"

	// SettingNameContainerInstanceLongArnFormat is a SettingName enum value
	SettingNameContainerInstanceLongArnFormat = "containerInstanceLongArnFormat"

	// SettingNameAwsvpcTrunking is a SettingName enum value
	SettingNameAwsvpcTrunking = "awsvpcTrunking"

	// SettingNameContainerInsights is a SettingName enum value
	SettingNameContainerInsights = "containerInsights"
)
View Source
const (
	// SortOrderAsc is a SortOrder enum value
	SortOrderAsc = "ASC"

	// SortOrderDesc is a SortOrder enum value
	SortOrderDesc = "DESC"
)
View Source
const (
	// StabilityStatusSteadyState is a StabilityStatus enum value
	StabilityStatusSteadyState = "STEADY_STATE"

	// StabilityStatusStabilizing is a StabilityStatus enum value
	StabilityStatusStabilizing = "STABILIZING"
)
View Source
const (
	// TaskDefinitionFamilyStatusActive is a TaskDefinitionFamilyStatus enum value
	TaskDefinitionFamilyStatusActive = "ACTIVE"

	// TaskDefinitionFamilyStatusInactive is a TaskDefinitionFamilyStatus enum value
	TaskDefinitionFamilyStatusInactive = "INACTIVE"

	// TaskDefinitionFamilyStatusAll is a TaskDefinitionFamilyStatus enum value
	TaskDefinitionFamilyStatusAll = "ALL"
)
View Source
const (
	// TaskDefinitionStatusActive is a TaskDefinitionStatus enum value
	TaskDefinitionStatusActive = "ACTIVE"

	// TaskDefinitionStatusInactive is a TaskDefinitionStatus enum value
	TaskDefinitionStatusInactive = "INACTIVE"
)
View Source
const (
	// TaskStopCodeTaskFailedToStart is a TaskStopCode enum value
	TaskStopCodeTaskFailedToStart = "TaskFailedToStart"

	// TaskStopCodeEssentialContainerExited is a TaskStopCode enum value
	TaskStopCodeEssentialContainerExited = "EssentialContainerExited"

	// TaskStopCodeUserInitiated is a TaskStopCode enum value
	TaskStopCodeUserInitiated = "UserInitiated"
)
View Source
const (
	// TransportProtocolTcp is a TransportProtocol enum value
	TransportProtocolTcp = "tcp"

	// TransportProtocolUdp is a TransportProtocol enum value
	TransportProtocolUdp = "udp"
)
View Source
const (
	// UlimitNameCore is a UlimitName enum value
	UlimitNameCore = "core"

	// UlimitNameCpu is a UlimitName enum value
	UlimitNameCpu = "cpu"

	// UlimitNameData is a UlimitName enum value
	UlimitNameData = "data"

	// UlimitNameFsize is a UlimitName enum value
	UlimitNameFsize = "fsize"

	// UlimitNameLocks is a UlimitName enum value
	UlimitNameLocks = "locks"

	// UlimitNameMemlock is a UlimitName enum value
	UlimitNameMemlock = "memlock"

	// UlimitNameMsgqueue is a UlimitName enum value
	UlimitNameMsgqueue = "msgqueue"

	// UlimitNameNice is a UlimitName enum value
	UlimitNameNice = "nice"

	// UlimitNameNofile is a UlimitName enum value
	UlimitNameNofile = "nofile"

	// UlimitNameNproc is a UlimitName enum value
	UlimitNameNproc = "nproc"

	// UlimitNameRss is a UlimitName enum value
	UlimitNameRss = "rss"

	// UlimitNameRtprio is a UlimitName enum value
	UlimitNameRtprio = "rtprio"

	// UlimitNameRttime is a UlimitName enum value
	UlimitNameRttime = "rttime"

	// UlimitNameSigpending is a UlimitName enum value
	UlimitNameSigpending = "sigpending"

	// UlimitNameStack is a UlimitName enum value
	UlimitNameStack = "stack"
)
View Source
const (

	// ErrCodeAccessDeniedException for service response error code
	// "AccessDeniedException".
	//
	// You do not have authorization to perform the requested action.
	ErrCodeAccessDeniedException = "AccessDeniedException"

	// ErrCodeAttributeLimitExceededException for service response error code
	// "AttributeLimitExceededException".
	//
	// You can apply up to 10 custom attributes per resource. You can view the attributes
	// of a resource with ListAttributes. You can remove existing attributes on
	// a resource with DeleteAttributes.
	ErrCodeAttributeLimitExceededException = "AttributeLimitExceededException"

	// ErrCodeBlockedException for service response error code
	// "BlockedException".
	//
	// Your AWS account has been blocked. For more information, contact AWS Support
	// (http://aws.amazon.com/contact-us/).
	ErrCodeBlockedException = "BlockedException"

	// ErrCodeClientException for service response error code
	// "ClientException".
	//
	// These errors are usually caused by a client action, such as using an action
	// or resource on behalf of a user that doesn't have permissions to use the
	// action or resource, or specifying an identifier that is not valid.
	ErrCodeClientException = "ClientException"

	// ErrCodeClusterContainsContainerInstancesException for service response error code
	// "ClusterContainsContainerInstancesException".
	//
	// You cannot delete a cluster that has registered container instances. First,
	// deregister the container instances before you can delete the cluster. For
	// more information, see DeregisterContainerInstance.
	ErrCodeClusterContainsContainerInstancesException = "ClusterContainsContainerInstancesException"

	// ErrCodeClusterContainsServicesException for service response error code
	// "ClusterContainsServicesException".
	//
	// You cannot delete a cluster that contains services. First, update the service
	// to reduce its desired task count to 0 and then delete the service. For more
	// information, see UpdateService and DeleteService.
	ErrCodeClusterContainsServicesException = "ClusterContainsServicesException"

	// ErrCodeClusterContainsTasksException for service response error code
	// "ClusterContainsTasksException".
	//
	// You cannot delete a cluster that has active tasks.
	ErrCodeClusterContainsTasksException = "ClusterContainsTasksException"

	// ErrCodeClusterNotFoundException for service response error code
	// "ClusterNotFoundException".
	//
	// The specified cluster could not be found. You can view your available clusters
	// with ListClusters. Amazon ECS clusters are Region-specific.
	ErrCodeClusterNotFoundException = "ClusterNotFoundException"

	// ErrCodeInvalidParameterException for service response error code
	// "InvalidParameterException".
	//
	// The specified parameter is invalid. Review the available parameters for the
	// API request.
	ErrCodeInvalidParameterException = "InvalidParameterException"

	// ErrCodeMissingVersionException for service response error code
	// "MissingVersionException".
	//
	// 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.
	ErrCodeMissingVersionException = "MissingVersionException"

	// ErrCodeNoUpdateAvailableException for service response error code
	// "NoUpdateAvailableException".
	//
	// 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.
	ErrCodeNoUpdateAvailableException = "NoUpdateAvailableException"

	// ErrCodePlatformTaskDefinitionIncompatibilityException for service response error code
	// "PlatformTaskDefinitionIncompatibilityException".
	//
	// The specified platform version does not satisfy the task definition's required
	// capabilities.
	ErrCodePlatformTaskDefinitionIncompatibilityException = "PlatformTaskDefinitionIncompatibilityException"

	// ErrCodePlatformUnknownException for service response error code
	// "PlatformUnknownException".
	//
	// The specified platform version does not exist.
	ErrCodePlatformUnknownException = "PlatformUnknownException"

	// ErrCodeResourceNotFoundException for service response error code
	// "ResourceNotFoundException".
	//
	// The specified resource could not be found.
	ErrCodeResourceNotFoundException = "ResourceNotFoundException"

	// ErrCodeServerException for service response error code
	// "ServerException".
	//
	// These errors are usually caused by a server issue.
	ErrCodeServerException = "ServerException"

	// ErrCodeServiceNotActiveException for service response error code
	// "ServiceNotActiveException".
	//
	// The specified service is not active. You can't update a service that is inactive.
	// If you have previously deleted a service, you can re-create it with CreateService.
	ErrCodeServiceNotActiveException = "ServiceNotActiveException"

	// ErrCodeServiceNotFoundException for service response error code
	// "ServiceNotFoundException".
	//
	// The specified service could not be found. You can view your available services
	// with ListServices. Amazon ECS services are cluster-specific and Region-specific.
	ErrCodeServiceNotFoundException = "ServiceNotFoundException"

	// ErrCodeTargetNotFoundException for service response error code
	// "TargetNotFoundException".
	//
	// The specified target could not be found. You can view your available container
	// instances with ListContainerInstances. Amazon ECS container instances are
	// cluster-specific and Region-specific.
	ErrCodeTargetNotFoundException = "TargetNotFoundException"

	// ErrCodeTaskSetNotFoundException for service response error code
	// "TaskSetNotFoundException".
	//
	// The specified task set could not be found. You can view your available container
	// instances with DescribeTaskSets. Task sets are specific to each cluster,
	// service and Region.
	ErrCodeTaskSetNotFoundException = "TaskSetNotFoundException"

	// ErrCodeUnsupportedFeatureException for service response error code
	// "UnsupportedFeatureException".
	//
	// The specified task is not supported in this Region.
	ErrCodeUnsupportedFeatureException = "UnsupportedFeatureException"

	// ErrCodeUpdateInProgressException for service response error code
	// "UpdateInProgressException".
	//
	// 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 resumes where it stopped previously.
	ErrCodeUpdateInProgressException = "UpdateInProgressException"
)
View Source
const (
	ServiceName = "ecs"       // Name of service.
	EndpointsID = ServiceName // ID to lookup a service endpoint with.
	ServiceID   = "ECS"       // ServiceID is a unique identifer of a specific service.
)

Service information constants

View Source
const (
	// ClusterSettingNameContainerInsights is a ClusterSettingName enum value
	ClusterSettingNameContainerInsights = "containerInsights"
)
View Source
const (
	// ContainerInstanceFieldTags is a ContainerInstanceField enum value
	ContainerInstanceFieldTags = "TAGS"
)
View Source
const (
	// PlatformDeviceTypeGpu is a PlatformDeviceType enum value
	PlatformDeviceTypeGpu = "GPU"
)
View Source
const (
	// ProxyConfigurationTypeAppmesh is a ProxyConfigurationType enum value
	ProxyConfigurationTypeAppmesh = "APPMESH"
)
View Source
const (
	// ResourceTypeGpu is a ResourceType enum value
	ResourceTypeGpu = "GPU"
)
View Source
const (
	// ScaleUnitPercent is a ScaleUnit enum value
	ScaleUnitPercent = "PERCENT"
)
View Source
const (
	// ServiceFieldTags is a ServiceField enum value
	ServiceFieldTags = "TAGS"
)
View Source
const (
	// TargetTypeContainerInstance is a TargetType enum value
	TargetTypeContainerInstance = "container-instance"
)
View Source
const (
	// TaskDefinitionFieldTags is a TaskDefinitionField enum value
	TaskDefinitionFieldTags = "TAGS"
)
View Source
const (
	// TaskDefinitionPlacementConstraintTypeMemberOf is a TaskDefinitionPlacementConstraintType enum value
	TaskDefinitionPlacementConstraintTypeMemberOf = "memberOf"
)
View Source
const (
	// TaskFieldTags is a TaskField enum value
	TaskFieldTags = "TAGS"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Attachment added in v1.12.27

type Attachment struct {

	// Details of the attachment. For elastic network interfaces, this includes
	// the network interface ID, the MAC address, the subnet ID, and the private
	// IPv4 address.
	Details []*KeyValuePair `locationName:"details" type:"list"`

	// The unique identifier for the attachment.
	Id *string `locationName:"id" type:"string"`

	// The status of the attachment. Valid values are PRECREATED, CREATED, ATTACHING,
	// ATTACHED, DETACHING, DETACHED, and DELETED.
	Status *string `locationName:"status" type:"string"`

	// The type of the attachment, such as ElasticNetworkInterface.
	Type *string `locationName:"type" type:"string"`
	// contains filtered or unexported fields
}

An object representing a container instance or task attachment.

func (Attachment) GoString added in v1.12.27

func (s Attachment) GoString() string

GoString returns the string representation

func (*Attachment) SetDetails added in v1.12.27

func (s *Attachment) SetDetails(v []*KeyValuePair) *Attachment

SetDetails sets the Details field's value.

func (*Attachment) SetId added in v1.12.27

func (s *Attachment) SetId(v string) *Attachment

SetId sets the Id field's value.

func (*Attachment) SetStatus added in v1.12.27

func (s *Attachment) SetStatus(v string) *Attachment

SetStatus sets the Status field's value.

func (*Attachment) SetType added in v1.12.27

func (s *Attachment) SetType(v string) *Attachment

SetType sets the Type field's value.

func (Attachment) String added in v1.12.27

func (s Attachment) String() string

String returns the string representation

type AttachmentStateChange added in v1.12.27

type AttachmentStateChange struct {

	// The Amazon Resource Name (ARN) of the attachment.
	//
	// AttachmentArn is a required field
	AttachmentArn *string `locationName:"attachmentArn" type:"string" required:"true"`

	// The status of the attachment.
	//
	// Status is a required field
	Status *string `locationName:"status" type:"string" required:"true"`
	// contains filtered or unexported fields
}

An object representing a change in state for a task attachment.

func (AttachmentStateChange) GoString added in v1.12.27

func (s AttachmentStateChange) GoString() string

GoString returns the string representation

func (*AttachmentStateChange) SetAttachmentArn added in v1.12.27

func (s *AttachmentStateChange) SetAttachmentArn(v string) *AttachmentStateChange

SetAttachmentArn sets the AttachmentArn field's value.

func (*AttachmentStateChange) SetStatus added in v1.12.27

SetStatus sets the Status field's value.

func (AttachmentStateChange) String added in v1.12.27

func (s AttachmentStateChange) String() string

String returns the string representation

func (*AttachmentStateChange) Validate added in v1.12.27

func (s *AttachmentStateChange) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Attribute added in v0.9.14

type Attribute struct {

	// The name of the attribute. Up to 128 letters (uppercase and lowercase), numbers,
	// hyphens, underscores, and periods are allowed.
	//
	// Name is a required field
	Name *string `locationName:"name" type:"string" required:"true"`

	// The ID of the target. You can specify the short form ID for a resource or
	// the full Amazon Resource Name (ARN).
	TargetId *string `locationName:"targetId" type:"string"`

	// The type of the target with which to attach the attribute. This parameter
	// is required if you use the short form ID for a resource instead of the full
	// ARN.
	TargetType *string `locationName:"targetType" type:"string" enum:"TargetType"`

	// The value of the attribute. Up to 128 letters (uppercase and lowercase),
	// numbers, hyphens, underscores, periods, at signs (@), forward slashes, colons,
	// and spaces are allowed.
	Value *string `locationName:"value" type:"string"`
	// contains filtered or unexported fields
}

An attribute is a name-value pair associated with an Amazon ECS object. Attributes enable you to extend the Amazon ECS data model by adding custom metadata to your resources. For more information, see Attributes (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html#attributes) in the Amazon Elastic Container Service Developer Guide.

func (Attribute) GoString added in v0.9.14

func (s Attribute) GoString() string

GoString returns the string representation

func (*Attribute) SetName added in v1.5.0

func (s *Attribute) SetName(v string) *Attribute

SetName sets the Name field's value.

func (*Attribute) SetTargetId added in v1.6.9

func (s *Attribute) SetTargetId(v string) *Attribute

SetTargetId sets the TargetId field's value.

func (*Attribute) SetTargetType added in v1.6.9

func (s *Attribute) SetTargetType(v string) *Attribute

SetTargetType sets the TargetType field's value.

func (*Attribute) SetValue added in v1.5.0

func (s *Attribute) SetValue(v string) *Attribute

SetValue sets the Value field's value.

func (Attribute) String added in v0.9.14

func (s Attribute) String() string

String returns the string representation

func (*Attribute) Validate added in v1.1.21

func (s *Attribute) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type AwsVpcConfiguration added in v1.12.27

type AwsVpcConfiguration struct {

	// Whether the task's elastic network interface receives a public IP address.
	// The default value is DISABLED.
	AssignPublicIp *string `locationName:"assignPublicIp" type:"string" enum:"AssignPublicIp"`

	// The security groups associated with the task or service. If you do not specify
	// a security group, the default security group for the VPC is used. There is
	// a limit of 5 security groups that can be specified per AwsVpcConfiguration.
	//
	// All specified security groups must be from the same VPC.
	SecurityGroups []*string `locationName:"securityGroups" type:"list"`

	// The subnets associated with the task or service. There is a limit of 16 subnets
	// that can be specified per AwsVpcConfiguration.
	//
	// All specified subnets must be from the same VPC.
	//
	// Subnets is a required field
	Subnets []*string `locationName:"subnets" type:"list" required:"true"`
	// contains filtered or unexported fields
}

An object representing the networking details for a task or service.

func (AwsVpcConfiguration) GoString added in v1.12.27

func (s AwsVpcConfiguration) GoString() string

GoString returns the string representation

func (*AwsVpcConfiguration) SetAssignPublicIp added in v1.12.36

func (s *AwsVpcConfiguration) SetAssignPublicIp(v string) *AwsVpcConfiguration

SetAssignPublicIp sets the AssignPublicIp field's value.

func (*AwsVpcConfiguration) SetSecurityGroups added in v1.12.27

func (s *AwsVpcConfiguration) SetSecurityGroups(v []*string) *AwsVpcConfiguration

SetSecurityGroups sets the SecurityGroups field's value.

func (*AwsVpcConfiguration) SetSubnets added in v1.12.27

func (s *AwsVpcConfiguration) SetSubnets(v []*string) *AwsVpcConfiguration

SetSubnets sets the Subnets field's value.

func (AwsVpcConfiguration) String added in v1.12.27

func (s AwsVpcConfiguration) String() string

String returns the string representation

func (*AwsVpcConfiguration) Validate added in v1.12.27

func (s *AwsVpcConfiguration) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Cluster

type Cluster struct {

	// The number of services that are running on the cluster in an ACTIVE state.
	// You can view these services with ListServices.
	ActiveServicesCount *int64 `locationName:"activeServicesCount" type:"integer"`

	// 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.
	ClusterArn *string `locationName:"clusterArn" type:"string"`

	// A user-generated string that you use to identify your cluster.
	ClusterName *string `locationName:"clusterName" type:"string"`

	// The number of tasks in the cluster that are in the PENDING state.
	PendingTasksCount *int64 `locationName:"pendingTasksCount" type:"integer"`

	// The number of container instances registered into the cluster. This includes
	// container instances in both ACTIVE and DRAINING status.
	RegisteredContainerInstancesCount *int64 `locationName:"registeredContainerInstancesCount" type:"integer"`

	// The number of tasks in the cluster that are in the RUNNING state.
	RunningTasksCount *int64 `locationName:"runningTasksCount" type:"integer"`

	// The settings for the cluster. This parameter indicates whether CloudWatch
	// Container Insights is enabled or disabled for a cluster.
	Settings []*ClusterSetting `locationName:"settings" type:"list"`

	// Additional information about your clusters that are separated by launch type,
	// including:
	//
	//    * runningEC2TasksCount
	//
	//    * RunningFargateTasksCount
	//
	//    * pendingEC2TasksCount
	//
	//    * pendingFargateTasksCount
	//
	//    * activeEC2ServiceCount
	//
	//    * activeFargateServiceCount
	//
	//    * drainingEC2ServiceCount
	//
	//    * drainingFargateServiceCount
	Statistics []*KeyValuePair `locationName:"statistics" type:"list"`

	// 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.
	Status *string `locationName:"status" type:"string"`

	// The metadata that you apply to the cluster to help you categorize and organize
	// them. Each tag consists of a key and an optional value, both of which you
	// define. Tag keys can have a maximum character length of 128 characters, and
	// tag values can have a maximum length of 256 characters.
	Tags []*Tag `locationName:"tags" type:"list"`
	// contains filtered or unexported fields
}

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.

func (Cluster) GoString added in v0.6.5

func (s Cluster) GoString() string

GoString returns the string representation

func (*Cluster) SetActiveServicesCount added in v1.5.0

func (s *Cluster) SetActiveServicesCount(v int64) *Cluster

SetActiveServicesCount sets the ActiveServicesCount field's value.

func (*Cluster) SetClusterArn added in v1.5.0

func (s *Cluster) SetClusterArn(v string) *Cluster

SetClusterArn sets the ClusterArn field's value.

func (*Cluster) SetClusterName added in v1.5.0

func (s *Cluster) SetClusterName(v string) *Cluster

SetClusterName sets the ClusterName field's value.

func (*Cluster) SetPendingTasksCount added in v1.5.0

func (s *Cluster) SetPendingTasksCount(v int64) *Cluster

SetPendingTasksCount sets the PendingTasksCount field's value.

func (*Cluster) SetRegisteredContainerInstancesCount added in v1.5.0

func (s *Cluster) SetRegisteredContainerInstancesCount(v int64) *Cluster

SetRegisteredContainerInstancesCount sets the RegisteredContainerInstancesCount field's value.

func (*Cluster) SetRunningTasksCount added in v1.5.0

func (s *Cluster) SetRunningTasksCount(v int64) *Cluster

SetRunningTasksCount sets the RunningTasksCount field's value.

func (*Cluster) SetSettings added in v1.99.0

func (s *Cluster) SetSettings(v []*ClusterSetting) *Cluster

SetSettings sets the Settings field's value.

func (*Cluster) SetStatistics added in v1.12.36

func (s *Cluster) SetStatistics(v []*KeyValuePair) *Cluster

SetStatistics sets the Statistics field's value.

func (*Cluster) SetStatus added in v1.5.0

func (s *Cluster) SetStatus(v string) *Cluster

SetStatus sets the Status field's value.

func (*Cluster) SetTags added in v1.99.0

func (s *Cluster) SetTags(v []*Tag) *Cluster

SetTags sets the Tags field's value.

func (Cluster) String added in v0.6.5

func (s Cluster) String() string

String returns the string representation

type ClusterSetting added in v1.99.0

type ClusterSetting struct {

	// The name of the cluster setting. The only supported value is containerInsights.
	Name *string `locationName:"name" type:"string" enum:"ClusterSettingName"`

	// The value to set for the cluster setting. The supported values are enabled
	// and disabled. If enabled is specified, CloudWatch Container Insights will
	// be enabled for the cluster, otherwise it will be disabled unless the containerInsights
	// account setting is enabled. If a cluster value is specified, it will override
	// the containerInsights value set with PutAccountSetting or PutAccountSettingDefault.
	Value *string `locationName:"value" type:"string"`
	// contains filtered or unexported fields
}

The settings to use when creating a cluster. This parameter is used to enable CloudWatch Container Insights for a cluster.

func (ClusterSetting) GoString added in v1.99.0

func (s ClusterSetting) GoString() string

GoString returns the string representation

func (*ClusterSetting) SetName added in v1.99.0

func (s *ClusterSetting) SetName(v string) *ClusterSetting

SetName sets the Name field's value.

func (*ClusterSetting) SetValue added in v1.99.0

func (s *ClusterSetting) SetValue(v string) *ClusterSetting

SetValue sets the Value field's value.

func (ClusterSetting) String added in v1.99.0

func (s ClusterSetting) String() string

String returns the string representation

type Container

type Container struct {

	// The Amazon Resource Name (ARN) of the container.
	ContainerArn *string `locationName:"containerArn" type:"string"`

	// The number of CPU units set for the container. The value will be 0 if no
	// value was specified in the container definition when the task definition
	// was registered.
	Cpu *string `locationName:"cpu" type:"string"`

	// The exit code returned from the container.
	ExitCode *int64 `locationName:"exitCode" type:"integer"`

	// The IDs of each GPU assigned to the container.
	GpuIds []*string `locationName:"gpuIds" type:"list"`

	// The health status of the container. If health checks are not configured for
	// this container in its task definition, then it reports the health status
	// as UNKNOWN.
	HealthStatus *string `locationName:"healthStatus" type:"string" enum:"HealthStatus"`

	// The last known status of the container.
	LastStatus *string `locationName:"lastStatus" type:"string"`

	// The hard limit (in MiB) of memory set for the container.
	Memory *string `locationName:"memory" type:"string"`

	// The soft limit (in MiB) of memory set for the container.
	MemoryReservation *string `locationName:"memoryReservation" type:"string"`

	// The name of the container.
	Name *string `locationName:"name" type:"string"`

	// The network bindings associated with the container.
	NetworkBindings []*NetworkBinding `locationName:"networkBindings" type:"list"`

	// The network interfaces associated with the container.
	NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaces" type:"list"`

	// A short (255 max characters) human-readable string to provide additional
	// details about a running or stopped container.
	Reason *string `locationName:"reason" type:"string"`

	// The ARN of the task.
	TaskArn *string `locationName:"taskArn" type:"string"`
	// contains filtered or unexported fields
}

A Docker container that is part of a task.

func (Container) GoString added in v0.6.5

func (s Container) GoString() string

GoString returns the string representation

func (*Container) SetContainerArn added in v1.5.0

func (s *Container) SetContainerArn(v string) *Container

SetContainerArn sets the ContainerArn field's value.

func (*Container) SetCpu added in v1.99.0

func (s *Container) SetCpu(v string) *Container

SetCpu sets the Cpu field's value.

func (*Container) SetExitCode added in v1.5.0

func (s *Container) SetExitCode(v int64) *Container

SetExitCode sets the ExitCode field's value.

func (*Container) SetGpuIds added in v1.99.0

func (s *Container) SetGpuIds(v []*string) *Container

SetGpuIds sets the GpuIds field's value.

func (*Container) SetHealthStatus added in v1.13.11

func (s *Container) SetHealthStatus(v string) *Container

SetHealthStatus sets the HealthStatus field's value.

func (*Container) SetLastStatus added in v1.5.0

func (s *Container) SetLastStatus(v string) *Container

SetLastStatus sets the LastStatus field's value.

func (*Container) SetMemory added in v1.99.0

func (s *Container) SetMemory(v string) *Container

SetMemory sets the Memory field's value.

func (*Container) SetMemoryReservation added in v1.99.0

func (s *Container) SetMemoryReservation(v string) *Container

SetMemoryReservation sets the MemoryReservation field's value.

func (*Container) SetName added in v1.5.0

func (s *Container) SetName(v string) *Container

SetName sets the Name field's value.

func (*Container) SetNetworkBindings added in v1.5.0

func (s *Container) SetNetworkBindings(v []*NetworkBinding) *Container

SetNetworkBindings sets the NetworkBindings field's value.

func (*Container) SetNetworkInterfaces added in v1.12.27

func (s *Container) SetNetworkInterfaces(v []*NetworkInterface) *Container

SetNetworkInterfaces sets the NetworkInterfaces field's value.

func (*Container) SetReason added in v1.5.0

func (s *Container) SetReason(v string) *Container

SetReason sets the Reason field's value.

func (*Container) SetTaskArn added in v1.5.0

func (s *Container) SetTaskArn(v string) *Container

SetTaskArn sets the TaskArn field's value.

func (Container) String added in v0.6.5

func (s Container) String() string

String returns the string representation

type ContainerDefinition

type ContainerDefinition struct {

	// The command that is passed to the container. This parameter maps to Cmd in
	// the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the COMMAND parameter to docker run (https://docs.docker.com/engine/reference/run/).
	// For more information, see https://docs.docker.com/engine/reference/builder/#cmd
	// (https://docs.docker.com/engine/reference/builder/#cmd). If there are multiple
	// arguments, each argument should be a separated string in the array.
	Command []*string `locationName:"command" type:"list"`

	// The number of cpu units reserved for the container. This parameter maps to
	// CpuShares in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --cpu-shares option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// This field is optional for tasks using the Fargate launch type, and the only
	// requirement is that the total amount of CPU reserved for all containers within
	// a task be lower than the task-level cpu value.
	//
	// You can determine the number of CPU units that are available per EC2 instance
	// type by multiplying the vCPUs listed for that instance type on the Amazon
	// EC2 Instances (http://aws.amazon.com/ec2/instance-types/) detail page by
	// 1,024.
	//
	// 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.
	//
	// Linux containers share unallocated CPU units with other containers on the
	// container 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.
	//
	// On Linux container instances, 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 (https://docs.docker.com/engine/reference/run/#cpu-share-constraint)
	// in the Docker documentation. The minimum valid CPU share value that the Linux
	// kernel allows 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 two 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.
	//
	// On Windows container instances, the CPU limit is enforced as an absolute
	// limit, or a quota. Windows containers only have access to the specified amount
	// of CPU that is described in the task definition.
	Cpu *int64 `locationName:"cpu" type:"integer"`

	// The dependencies defined for container startup and shutdown. A container
	// can contain multiple dependencies. When a dependency is defined for container
	// startup, for container shutdown it is reversed.
	//
	// For tasks using the EC2 launch type, the container instances require at least
	// version 1.26.0 of the container agent to enable container dependencies. However,
	// we recommend using the latest container agent version. For information about
	// checking your agent version and updating to the latest version, see Updating
	// the Amazon ECS Container Agent (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html)
	// in the Amazon Elastic Container Service Developer Guide. If you are using
	// an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1
	// of the ecs-init package. If your container instances are launched from version
	// 20190301 or later, then they contain the required versions of the container
	// agent and ecs-init. For more information, see Amazon ECS-optimized Linux
	// AMI (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html)
	// in the Amazon Elastic Container Service Developer Guide.
	//
	// This parameter is available for tasks using the Fargate launch type in the
	// Ohio (us-east-2) region only and the task or service requires platform version
	// 1.3.0 or later.
	DependsOn []*ContainerDependency `locationName:"dependsOn" type:"list"`

	// When this parameter is true, networking is disabled within the container.
	// This parameter maps to NetworkDisabled in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/).
	//
	// This parameter is not supported for Windows containers.
	DisableNetworking *bool `locationName:"disableNetworking" type:"boolean"`

	// A list of DNS search domains that are presented to the container. This parameter
	// maps to DnsSearch in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --dns-search option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// This parameter is not supported for Windows containers.
	DnsSearchDomains []*string `locationName:"dnsSearchDomains" type:"list"`

	// A list of DNS servers that are presented to the container. This parameter
	// maps to Dns in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --dns option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// This parameter is not supported for Windows containers.
	DnsServers []*string `locationName:"dnsServers" type:"list"`

	// A key/value map of labels to add to the container. This parameter maps to
	// Labels in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --label option to docker run (https://docs.docker.com/engine/reference/run/).
	// This parameter requires version 1.18 of the Docker Remote API or greater
	// on your container instance. To check the Docker Remote API version on your
	// container instance, log in to your container instance and run the following
	// command: sudo docker version --format '{{.Server.APIVersion}}'
	DockerLabels map[string]*string `locationName:"dockerLabels" type:"map"`

	// A list of strings to provide custom labels for SELinux and AppArmor multi-level
	// security systems. This field is not valid for containers in tasks using the
	// Fargate launch type.
	//
	// This parameter maps to SecurityOpt in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --security-opt option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// The Amazon ECS container agent running on a container instance must register
	// with the ECS_SELINUX_CAPABLE=true or ECS_APPARMOR_CAPABLE=true environment
	// variables before containers placed on that instance can use these security
	// options. For more information, see Amazon ECS Container Agent Configuration
	// (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html)
	// in the Amazon Elastic Container Service Developer Guide.
	//
	// This parameter is not supported for Windows containers.
	DockerSecurityOptions []*string `locationName:"dockerSecurityOptions" type:"list"`

	//
	// 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 entry point that is passed to the container. This parameter maps to Entrypoint
	// in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --entrypoint option to docker run (https://docs.docker.com/engine/reference/run/).
	// For more information, see https://docs.docker.com/engine/reference/builder/#entrypoint
	// (https://docs.docker.com/engine/reference/builder/#entrypoint).
	EntryPoint []*string `locationName:"entryPoint" type:"list"`

	// The environment variables to pass to a container. This parameter maps to
	// Env in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --env option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// We do not recommend using plaintext environment variables for sensitive information,
	// such as credential data.
	Environment []*KeyValuePair `locationName:"environment" type:"list"`

	// If the essential parameter of a container is marked as true, and that container
	// fails or stops for any reason, all other containers that are part of the
	// task are stopped. If the essential parameter of a container is marked as
	// false, then its failure does 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. If you have an application
	// that is composed of multiple containers, you should group containers that
	// are used for a common purpose into components, and separate the different
	// components into multiple task definitions. For more information, see Application
	// Architecture (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/application_architecture.html)
	// in the Amazon Elastic Container Service Developer Guide.
	Essential *bool `locationName:"essential" type:"boolean"`

	// A list of hostnames and IP address mappings to append to the /etc/hosts file
	// on the container. This parameter maps to ExtraHosts in the Create a container
	// (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section
	// of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/) and
	// the --add-host option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// This parameter is not supported for Windows containers or tasks that use
	// the awsvpc network mode.
	ExtraHosts []*HostEntry `locationName:"extraHosts" type:"list"`

	// The health check command and associated configuration parameters for the
	// container. This parameter maps to HealthCheck in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the HEALTHCHECK parameter of docker run (https://docs.docker.com/engine/reference/run/).
	HealthCheck *HealthCheck `locationName:"healthCheck" type:"structure"`

	// The hostname to use for your container. This parameter maps to Hostname in
	// the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --hostname option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// The hostname parameter is not supported if you are using the awsvpc network
	// mode.
	Hostname *string `locationName:"hostname" type:"string"`

	// 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 either repository-url/image:tag or
	// repository-url/image@digest . Up to 255 letters (uppercase and lowercase),
	// numbers, hyphens, underscores, colons, periods, forward slashes, and number
	// signs are allowed. This parameter maps to Image in the Create a container
	// (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section
	// of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/) and
	// the IMAGE parameter of docker run (https://docs.docker.com/engine/reference/run/).
	//
	//    * When a new task starts, the Amazon ECS container agent pulls the latest
	//    version of the specified image and tag for the container to use. However,
	//    subsequent updates to a repository image are not propagated to already
	//    running tasks.
	//
	//    * Images in Amazon ECR repositories can be specified by either using the
	//    full registry/repository:tag or registry/repository@digest. For example,
	//    012345678910.dkr.ecr.<region-name>.amazonaws.com/<repository-name>:latest
	//    or 012345678910.dkr.ecr.<region-name>.amazonaws.com/<repository-name>@sha256:94afd1f2e64d908bc90dbca0035a5b567EXAMPLE.
	//
	//    * Images in official repositories on Docker Hub use a single name (for
	//    example, ubuntu or mongo).
	//
	//    * Images in other repositories on Docker Hub are qualified with an organization
	//    name (for example, amazon/amazon-ecs-agent).
	//
	//    * Images in other online repositories are qualified further by a domain
	//    name (for example, quay.io/assemblyline/ubuntu).
	Image *string `locationName:"image" type:"string"`

	// When this parameter is true, this allows you to deploy containerized applications
	// that require stdin or a tty to be allocated. This parameter maps to OpenStdin
	// in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --interactive option to docker run (https://docs.docker.com/engine/reference/run/).
	Interactive *bool `locationName:"interactive" type:"boolean"`

	// The links parameter allows containers to communicate with each other without
	// the need for port mappings. This parameter is only supported if the network
	// mode of a task definition is bridge. The name:internalName construct is analogous
	// to name:alias in Docker links. Up to 255 letters (uppercase and lowercase),
	// numbers, and hyphens are allowed. For more information about linking Docker
	// containers, go to Legacy container links (https://docs.docker.com/network/links/)
	// in the Docker documentation. This parameter maps to Links in the Create a
	// container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --link option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// This parameter is not supported for Windows containers.
	//
	// 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.
	Links []*string `locationName:"links" type:"list"`

	// Linux-specific modifications that are applied to the container, such as Linux
	// kernel capabilities. For more information see KernelCapabilities.
	//
	// This parameter is not supported for Windows containers.
	LinuxParameters *LinuxParameters `locationName:"linuxParameters" type:"structure"`

	// The log configuration specification for the container.
	//
	// For tasks using the Fargate launch type, the supported log drivers are awslogs
	// and splunk.
	//
	// For tasks using the EC2 launch type, the supported log drivers are awslogs,
	// syslog, gelf, fluentd, splunk, journald, and json-file.
	//
	// This parameter maps to LogConfig in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --log-driver option to docker run (https://docs.docker.com/engine/reference/run/).
	// By default, containers use the same logging driver that the Docker daemon
	// uses. However the container may use a different logging driver than the Docker
	// daemon by specifying a log driver with this parameter in the container definition.
	// To use a different logging driver for a container, the log system must be
	// configured properly on the container instance (or on a different log server
	// for remote logging options). For more information on the options for different
	// supported log drivers, see Configure logging drivers (https://docs.docker.com/engine/admin/logging/overview/)
	// in the Docker documentation.
	//
	// Amazon ECS currently supports a subset of the logging drivers available to
	// the Docker daemon (shown in the LogConfiguration data type). Additional log
	// drivers may be available in future releases of the Amazon ECS container agent.
	//
	// This parameter requires version 1.18 of the Docker Remote API or greater
	// on your container instance. To check the Docker Remote API version on your
	// container instance, log in to your container instance and run the following
	// command: sudo docker version --format '{{.Server.APIVersion}}'
	//
	// The Amazon ECS container agent running on a container instance must register
	// the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS
	// environment variable before containers placed on that instance can use these
	// log configuration options. For more information, see Amazon ECS Container
	// Agent Configuration (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html)
	// in the Amazon Elastic Container Service Developer Guide.
	LogConfiguration *LogConfiguration `locationName:"logConfiguration" type:"structure"`

	// The amount (in MiB) of memory to present to the container. If your container
	// attempts to exceed the memory specified here, the container is killed. The
	// total amount of memory reserved for all containers within a task must be
	// lower than the task memory value, if one is specified. This parameter maps
	// to Memory in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --memory option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// If your containers are part of a task using the Fargate launch type, this
	// field is optional.
	//
	// For containers that are part of a task using the EC2 launch type, you must
	// specify a non-zero integer for one or both of memory or memoryReservation
	// in container definitions. If you specify both, memory must be greater than
	// memoryReservation. If you specify memoryReservation, then that value is subtracted
	// from the available memory resources for the container instance on which the
	// container is placed. Otherwise, the value of memory is used.
	//
	// The Docker daemon reserves a minimum of 4 MiB of memory for a container,
	// so you should not specify fewer than 4 MiB of memory for your containers.
	Memory *int64 `locationName:"memory" type:"integer"`

	// The soft limit (in MiB) of memory to reserve for the container. When system
	// memory is under heavy contention, Docker attempts to keep the container memory
	// to this soft limit. However, your container can consume more memory when
	// it needs to, up to either the hard limit specified with the memory parameter
	// (if applicable), or all of the available memory on the container instance,
	// whichever comes first. This parameter maps to MemoryReservation in the Create
	// a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --memory-reservation option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// You must specify a non-zero integer for one or both of memory or memoryReservation
	// in container definitions. If you specify both, memory must be greater than
	// memoryReservation. If you specify memoryReservation, then that value is subtracted
	// from the available memory resources for the container instance on which the
	// container is placed. Otherwise, the value of memory is used.
	//
	// For example, if your container normally uses 128 MiB of memory, but occasionally
	// bursts to 256 MiB of memory for short periods of time, you can set a memoryReservation
	// of 128 MiB, and a memory hard limit of 300 MiB. This configuration would
	// allow the container to only reserve 128 MiB of memory from the remaining
	// resources on the container instance, but also allow the container to consume
	// more memory resources when needed.
	//
	// The Docker daemon reserves a minimum of 4 MiB of memory for a container,
	// so you should not specify fewer than 4 MiB of memory for your containers.
	MemoryReservation *int64 `locationName:"memoryReservation" type:"integer"`

	// The mount points for data volumes in your container.
	//
	// This parameter maps to Volumes in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --volume option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// Windows containers can mount whole directories on the same drive as $env:ProgramData.
	// Windows containers cannot mount directories on a different drive, and mount
	// point cannot be across drives.
	MountPoints []*MountPoint `locationName:"mountPoints" type:"list"`

	// 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. Up to 255 letters (uppercase
	// and lowercase), numbers, and hyphens are allowed. This parameter maps to
	// name in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --name option to docker run (https://docs.docker.com/engine/reference/run/).
	Name *string `locationName:"name" type:"string"`

	// The list of port mappings for the container. Port mappings allow containers
	// to access ports on the host container instance to send or receive traffic.
	//
	// For task definitions that use the awsvpc network mode, you should only specify
	// the containerPort. The hostPort can be left blank or it must be the same
	// value as the containerPort.
	//
	// Port mappings on Windows use the NetNAT gateway address rather than localhost.
	// There is no loopback for port mappings on Windows, so you cannot access a
	// container's mapped port from the host itself.
	//
	// This parameter maps to PortBindings in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --publish option to docker run (https://docs.docker.com/engine/reference/run/).
	// If the network mode of a task definition is set to none, then you can't specify
	// port mappings. If the network mode of a task definition is set to host, then
	// host ports must either be undefined or they must match the container port
	// in the port mapping.
	//
	// After a task reaches the RUNNING status, manual and automatic host and container
	// port assignments are visible in the Network Bindings section of a container
	// description for a selected task in the Amazon ECS console. The assignments
	// are also visible in the networkBindings section DescribeTasks responses.
	PortMappings []*PortMapping `locationName:"portMappings" type:"list"`

	// When this parameter is true, the container is given elevated privileges on
	// the host container instance (similar to the root user). This parameter maps
	// to Privileged in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --privileged option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// This parameter is not supported for Windows containers or tasks using the
	// Fargate launch type.
	Privileged *bool `locationName:"privileged" type:"boolean"`

	// When this parameter is true, a TTY is allocated. This parameter maps to Tty
	// in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --tty option to docker run (https://docs.docker.com/engine/reference/run/).
	PseudoTerminal *bool `locationName:"pseudoTerminal" type:"boolean"`

	// When this parameter is true, the container is given read-only access to its
	// root file system. This parameter maps to ReadonlyRootfs in the Create a container
	// (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section
	// of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/) and
	// the --read-only option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// This parameter is not supported for Windows containers.
	ReadonlyRootFilesystem *bool `locationName:"readonlyRootFilesystem" type:"boolean"`

	// The private repository authentication credentials to use.
	RepositoryCredentials *RepositoryCredentials `locationName:"repositoryCredentials" type:"structure"`

	// The type and amount of a resource to assign to a container. The only supported
	// resource is a GPU.
	ResourceRequirements []*ResourceRequirement `locationName:"resourceRequirements" type:"list"`

	// The secrets to pass to the container. For more information, see Specifying
	// Sensitive Data (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html)
	// in the Amazon Elastic Container Service Developer Guide.
	Secrets []*Secret `locationName:"secrets" type:"list"`

	// Time duration to wait before giving up on resolving dependencies for a container.
	// For example, you specify two containers in a task definition with containerA
	// having a dependency on containerB reaching a COMPLETE, SUCCESS, or HEALTHY
	// status. If a startTimeout value is specified for containerB and it does not
	// reach the desired status within that time then containerA will give up and
	// not start. This results in the task transitioning to a STOPPED state.
	//
	// For tasks using the EC2 launch type, the container instances require at least
	// version 1.26.0 of the container agent to enable a container start timeout
	// value. However, we recommend using the latest container agent version. For
	// information about checking your agent version and updating to the latest
	// version, see Updating the Amazon ECS Container Agent (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html)
	// in the Amazon Elastic Container Service Developer Guide. If you are using
	// an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1
	// of the ecs-init package. If your container instances are launched from version
	// 20190301 or later, then they contain the required versions of the container
	// agent and ecs-init. For more information, see Amazon ECS-optimized Linux
	// AMI (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html)
	// in the Amazon Elastic Container Service Developer Guide.
	//
	// This parameter is available for tasks using the Fargate launch type in the
	// Ohio (us-east-2) region only and the task or service requires platform version
	// 1.3.0 or later.
	StartTimeout *int64 `locationName:"startTimeout" type:"integer"`

	// Time duration to wait before the container is forcefully killed if it doesn't
	// exit normally on its own. For tasks using the Fargate launch type, the max
	// stopTimeout value is 2 minutes. This parameter is available for tasks using
	// the Fargate launch type in the Ohio (us-east-2) region only and the task
	// or service requires platform version 1.3.0 or later.
	//
	// For tasks using the EC2 launch type, the stop timeout value for the container
	// takes precedence over the ECS_CONTAINER_STOP_TIMEOUT container agent configuration
	// parameter, if used. Container instances require at least version 1.26.0 of
	// the container agent to enable a container stop timeout value. However, we
	// recommend using the latest container agent version. For information about
	// checking your agent version and updating to the latest version, see Updating
	// the Amazon ECS Container Agent (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html)
	// in the Amazon Elastic Container Service Developer Guide. If you are using
	// an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1
	// of the ecs-init package. If your container instances are launched from version
	// 20190301 or later, then they contain the required versions of the container
	// agent and ecs-init. For more information, see Amazon ECS-optimized Linux
	// AMI (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html)
	// in the Amazon Elastic Container Service Developer Guide.
	StopTimeout *int64 `locationName:"stopTimeout" type:"integer"`

	// A list of namespaced kernel parameters to set in the container. This parameter
	// maps to Sysctls in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --sysctl option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// It is not recommended that you specify network-related systemControls parameters
	// for multiple containers in a single task that also uses either the awsvpc
	// or host network modes. For tasks that use the awsvpc network mode, the container
	// that is started last determines which systemControls parameters take effect.
	// For tasks that use the host network mode, it changes the container instance's
	// namespaced kernel parameters as well as the containers.
	SystemControls []*SystemControl `locationName:"systemControls" type:"list"`

	// A list of ulimits to set in the container. This parameter maps to Ulimits
	// in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --ulimit option to docker run (https://docs.docker.com/engine/reference/run/).
	// Valid naming values are displayed in the Ulimit data type. This parameter
	// requires version 1.18 of the Docker Remote API or greater on your container
	// instance. To check the Docker Remote API version on your container instance,
	// log in to your container instance and run the following command: sudo docker
	// version --format '{{.Server.APIVersion}}'
	//
	// This parameter is not supported for Windows containers.
	Ulimits []*Ulimit `locationName:"ulimits" type:"list"`

	// The user name to use inside the container. This parameter maps to User in
	// the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --user option to docker run (https://docs.docker.com/engine/reference/run/).
	//
	// You can use the following formats. If specifying a UID or GID, you must specify
	// it as a positive integer.
	//
	//    * user
	//
	//    * user:group
	//
	//    * uid
	//
	//    * uid:gid
	//
	//    * user:gid
	//
	//    * uid:group
	//
	// This parameter is not supported for Windows containers.
	User *string `locationName:"user" type:"string"`

	// Data volumes to mount from another container. This parameter maps to VolumesFrom
	// in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --volumes-from option to docker run (https://docs.docker.com/engine/reference/run/).
	VolumesFrom []*VolumeFrom `locationName:"volumesFrom" type:"list"`

	// The working directory in which to run commands inside the container. This
	// parameter maps to WorkingDir in the Create a container (https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate)
	// section of the Docker Remote API (https://docs.docker.com/engine/api/v1.35/)
	// and the --workdir option to docker run (https://docs.docker.com/engine/reference/run/).
	WorkingDirectory *string `locationName:"workingDirectory" type:"string"`
	// contains filtered or unexported fields
}

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

func (ContainerDefinition) GoString added in v0.6.5

func (s ContainerDefinition) GoString() string

GoString returns the string representation

func (*ContainerDefinition) SetCommand added in v1.5.0

func (s *ContainerDefinition) SetCommand(v []*string) *ContainerDefinition

SetCommand sets the Command field's value.

func (*ContainerDefinition) SetCpu added in v1.5.0

SetCpu sets the Cpu field's value.

func (*ContainerDefinition) SetDependsOn added in v1.99.0

SetDependsOn sets the DependsOn field's value.

func (*ContainerDefinition) SetDisableNetworking added in v1.5.0

func (s *ContainerDefinition) SetDisableNetworking(v bool) *ContainerDefinition

SetDisableNetworking sets the DisableNetworking field's value.

func (*ContainerDefinition) SetDnsSearchDomains added in v1.5.0

func (s *ContainerDefinition) SetDnsSearchDomains(v []*string) *ContainerDefinition

SetDnsSearchDomains sets the DnsSearchDomains field's value.

func (*ContainerDefinition) SetDnsServers added in v1.5.0

func (s *ContainerDefinition) SetDnsServers(v []*string) *ContainerDefinition

SetDnsServers sets the DnsServers field's value.

func (*ContainerDefinition) SetDockerLabels added in v1.5.0

func (s *ContainerDefinition) SetDockerLabels(v map[string]*string) *ContainerDefinition

SetDockerLabels sets the DockerLabels field's value.

func (*ContainerDefinition) SetDockerSecurityOptions added in v1.5.0

func (s *ContainerDefinition) SetDockerSecurityOptions(v []*string) *ContainerDefinition

SetDockerSecurityOptions sets the DockerSecurityOptions field's value.

func (*ContainerDefinition) SetEntryPoint added in v1.5.0

func (s *ContainerDefinition) SetEntryPoint(v []*string) *ContainerDefinition

SetEntryPoint sets the EntryPoint field's value.

func (*ContainerDefinition) SetEnvironment added in v1.5.0

func (s *ContainerDefinition) SetEnvironment(v []*KeyValuePair) *ContainerDefinition

SetEnvironment sets the Environment field's value.

func (*ContainerDefinition) SetEssential added in v1.5.0

func (s *ContainerDefinition) SetEssential(v bool) *ContainerDefinition

SetEssential sets the Essential field's value.

func (*ContainerDefinition) SetExtraHosts added in v1.5.0

func (s *ContainerDefinition) SetExtraHosts(v []*HostEntry) *ContainerDefinition

SetExtraHosts sets the ExtraHosts field's value.

func (*ContainerDefinition) SetHealthCheck added in v1.13.11

func (s *ContainerDefinition) SetHealthCheck(v *HealthCheck) *ContainerDefinition

SetHealthCheck sets the HealthCheck field's value.

func (*ContainerDefinition) SetHostname added in v1.5.0

func (s *ContainerDefinition) SetHostname(v string) *ContainerDefinition

SetHostname sets the Hostname field's value.

func (*ContainerDefinition) SetImage added in v1.5.0

SetImage sets the Image field's value.

func (*ContainerDefinition) SetInteractive added in v1.99.0

func (s *ContainerDefinition) SetInteractive(v bool) *ContainerDefinition

SetInteractive sets the Interactive field's value.

func (s *ContainerDefinition) SetLinks(v []*string) *ContainerDefinition

SetLinks sets the Links field's value.

func (*ContainerDefinition) SetLinuxParameters added in v1.10.51

func (s *ContainerDefinition) SetLinuxParameters(v *LinuxParameters) *ContainerDefinition

SetLinuxParameters sets the LinuxParameters field's value.

func (*ContainerDefinition) SetLogConfiguration added in v1.5.0

func (s *ContainerDefinition) SetLogConfiguration(v *LogConfiguration) *ContainerDefinition

SetLogConfiguration sets the LogConfiguration field's value.

func (*ContainerDefinition) SetMemory added in v1.5.0

SetMemory sets the Memory field's value.

func (*ContainerDefinition) SetMemoryReservation added in v1.5.0

func (s *ContainerDefinition) SetMemoryReservation(v int64) *ContainerDefinition

SetMemoryReservation sets the MemoryReservation field's value.

func (*ContainerDefinition) SetMountPoints added in v1.5.0

func (s *ContainerDefinition) SetMountPoints(v []*MountPoint) *ContainerDefinition

SetMountPoints sets the MountPoints field's value.

func (*ContainerDefinition) SetName added in v1.5.0

SetName sets the Name field's value.

func (*ContainerDefinition) SetPortMappings added in v1.5.0

func (s *ContainerDefinition) SetPortMappings(v []*PortMapping) *ContainerDefinition

SetPortMappings sets the PortMappings field's value.

func (*ContainerDefinition) SetPrivileged added in v1.5.0

func (s *ContainerDefinition) SetPrivileged(v bool) *ContainerDefinition

SetPrivileged sets the Privileged field's value.

func (*ContainerDefinition) SetPseudoTerminal added in v1.99.0

func (s *ContainerDefinition) SetPseudoTerminal(v bool) *ContainerDefinition

SetPseudoTerminal sets the PseudoTerminal field's value.

func (*ContainerDefinition) SetReadonlyRootFilesystem added in v1.5.0

func (s *ContainerDefinition) SetReadonlyRootFilesystem(v bool) *ContainerDefinition

SetReadonlyRootFilesystem sets the ReadonlyRootFilesystem field's value.

func (*ContainerDefinition) SetRepositoryCredentials added in v1.99.0

func (s *ContainerDefinition) SetRepositoryCredentials(v *RepositoryCredentials) *ContainerDefinition

SetRepositoryCredentials sets the RepositoryCredentials field's value.

func (*ContainerDefinition) SetResourceRequirements added in v1.99.0

func (s *ContainerDefinition) SetResourceRequirements(v []*ResourceRequirement) *ContainerDefinition

SetResourceRequirements sets the ResourceRequirements field's value.

func (*ContainerDefinition) SetSecrets added in v1.99.0

func (s *ContainerDefinition) SetSecrets(v []*Secret) *ContainerDefinition

SetSecrets sets the Secrets field's value.

func (*ContainerDefinition) SetStartTimeout added in v1.99.0

func (s *ContainerDefinition) SetStartTimeout(v int64) *ContainerDefinition

SetStartTimeout sets the StartTimeout field's value.

func (*ContainerDefinition) SetStopTimeout added in v1.99.0

func (s *ContainerDefinition) SetStopTimeout(v int64) *ContainerDefinition

SetStopTimeout sets the StopTimeout field's value.

func (*ContainerDefinition) SetSystemControls added in v1.99.0

func (s *ContainerDefinition) SetSystemControls(v []*SystemControl) *ContainerDefinition

SetSystemControls sets the SystemControls field's value.

func (*ContainerDefinition) SetUlimits added in v1.5.0

func (s *ContainerDefinition) SetUlimits(v []*Ulimit) *ContainerDefinition

SetUlimits sets the Ulimits field's value.

func (*ContainerDefinition) SetUser added in v1.5.0

SetUser sets the User field's value.

func (*ContainerDefinition) SetVolumesFrom added in v1.5.0

func (s *ContainerDefinition) SetVolumesFrom(v []*VolumeFrom) *ContainerDefinition

SetVolumesFrom sets the VolumesFrom field's value.

func (*ContainerDefinition) SetWorkingDirectory added in v1.5.0

func (s *ContainerDefinition) SetWorkingDirectory(v string) *ContainerDefinition

SetWorkingDirectory sets the WorkingDirectory field's value.

func (ContainerDefinition) String added in v0.6.5

func (s ContainerDefinition) String() string

String returns the string representation

func (*ContainerDefinition) Validate added in v1.1.21

func (s *ContainerDefinition) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ContainerDependency added in v1.99.0

type ContainerDependency struct {

	// The dependency condition of the container. The following are the available
	// conditions and their behavior:
	//
	//    * START - This condition emulates the behavior of links and volumes today.
	//    It validates that a dependent container is started before permitting other
	//    containers to start.
	//
	//    * COMPLETE - This condition validates that a dependent container runs
	//    to completion (exits) before permitting other containers to start. This
	//    can be useful for nonessential containers that run a script and then exit.
	//
	//    * SUCCESS - This condition is the same as COMPLETE, but it also requires
	//    that the container exits with a zero status.
	//
	//    * HEALTHY - This condition validates that the dependent container passes
	//    its Docker health check before permitting other containers to start. This
	//    requires that the dependent container has health checks configured. This
	//    condition is confirmed only at task startup.
	//
	// Condition is a required field
	Condition *string `locationName:"condition" type:"string" required:"true" enum:"ContainerCondition"`

	// The name of a container.
	//
	// ContainerName is a required field
	ContainerName *string `locationName:"containerName" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed.

Your Amazon ECS container instances require at least version 1.26.0 of the container agent to enable container dependencies. However, we recommend using the latest container agent version. For information about checking your agent version and updating to the latest version, see Updating the Amazon ECS Container Agent (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html) in the Amazon Elastic Container Service Developer Guide. If you are using an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the ecs-init package. If your container instances are launched from version 20190301 or later, then they contain the required versions of the container agent and ecs-init. For more information, see Amazon ECS-optimized Linux AMI (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) in the Amazon Elastic Container Service Developer Guide.

If you are using tasks that use the Fargate launch type, container dependency parameters are not supported.

func (ContainerDependency) GoString added in v1.99.0

func (s ContainerDependency) GoString() string

GoString returns the string representation

func (*ContainerDependency) SetCondition added in v1.99.0

func (s *ContainerDependency) SetCondition(v string) *ContainerDependency

SetCondition sets the Condition field's value.

func (*ContainerDependency) SetContainerName added in v1.99.0

func (s *ContainerDependency) SetContainerName(v string) *ContainerDependency

SetContainerName sets the ContainerName field's value.

func (ContainerDependency) String added in v1.99.0

func (s ContainerDependency) String() string

String returns the string representation

func (*ContainerDependency) Validate added in v1.99.0

func (s *ContainerDependency) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ContainerInstance

type ContainerInstance struct {

	// This parameter returns true if the agent is connected to Amazon ECS. Registered
	// instances with an agent that may be unhealthy or stopped return false. Only
	// instances connected to an agent can accept placement requests.
	AgentConnected *bool `locationName:"agentConnected" type:"boolean"`

	// The status of the most recent agent update. If an update has never been requested,
	// this value is NULL.
	AgentUpdateStatus *string `locationName:"agentUpdateStatus" type:"string" enum:"AgentUpdateStatus"`

	// The resources attached to a container instance, such as elastic network interfaces.
	Attachments []*Attachment `locationName:"attachments" type:"list"`

	// The attributes set for the container instance, either by the Amazon ECS container
	// agent at instance registration or manually with the PutAttributes operation.
	Attributes []*Attribute `locationName:"attributes" type:"list"`

	// 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 ID. For example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_ID.
	ContainerInstanceArn *string `locationName:"containerInstanceArn" type:"string"`

	// The EC2 instance ID of the container instance.
	Ec2InstanceId *string `locationName:"ec2InstanceId" type:"string"`

	// The number of tasks on the container instance that are in the PENDING status.
	PendingTasksCount *int64 `locationName:"pendingTasksCount" type:"integer"`

	// The Unix timestamp for when the container instance was registered.
	RegisteredAt *time.Time `locationName:"registeredAt" type:"timestamp"`

	// For CPU and memory resource types, this parameter describes the amount of
	// each resource that was available on the container instance when the container
	// agent registered it with Amazon ECS. This value represents the total amount
	// of CPU and memory that can be allocated on this container instance to tasks.
	// For port resource types, this parameter describes the ports that were reserved
	// by the Amazon ECS container agent when it registered the container instance
	// with Amazon ECS.
	RegisteredResources []*Resource `locationName:"registeredResources" type:"list"`

	// For CPU and memory resource types, this parameter describes the remaining
	// CPU and memory that has not already been allocated to tasks and is therefore
	// available for new tasks. For port resource types, this parameter describes
	// the ports that were reserved by the Amazon ECS container agent (at instance
	// registration time) and any task containers that have reserved port mappings
	// on the host (with the host or bridge network mode). Any port that is not
	// specified here is available for new tasks.
	RemainingResources []*Resource `locationName:"remainingResources" type:"list"`

	// The number of tasks on the container instance that are in the RUNNING status.
	RunningTasksCount *int64 `locationName:"runningTasksCount" type:"integer"`

	// The status of the container instance. The valid values are REGISTERING, REGISTRATION_FAILED,
	// ACTIVE, INACTIVE, DEREGISTERING, or DRAINING.
	//
	// If your account has opted in to the awsvpcTrunking account setting, then
	// any newly registered container instance will transition to a REGISTERING
	// status while the trunk elastic network interface is provisioned for the instance.
	// If the registration fails, the instance will transition to a REGISTRATION_FAILED
	// status. You can describe the container instance and see the reason for failure
	// in the statusReason parameter. Once the container instance is terminated,
	// the instance transitions to a DEREGISTERING status while the trunk elastic
	// network interface is deprovisioned. The instance then transitions to an INACTIVE
	// status.
	//
	// The ACTIVE status indicates that the container instance can accept tasks.
	// The DRAINING indicates that new tasks are not placed on the container instance
	// and any service tasks running on the container instance are removed if possible.
	// For more information, see Container Instance Draining (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-instance-draining.html)
	// in the Amazon Elastic Container Service Developer Guide.
	Status *string `locationName:"status" type:"string"`

	// The reason that the container instance reached its current status.
	StatusReason *string `locationName:"statusReason" type:"string"`

	// The metadata that you apply to the container instance to help you categorize
	// and organize them. Each tag consists of a key and an optional value, both
	// of which you define. Tag keys can have a maximum character length of 128
	// characters, and tag values can have a maximum length of 256 characters.
	Tags []*Tag `locationName:"tags" type:"list"`

	// The version counter for the container instance. Every time a container instance
	// experiences a change that triggers a CloudWatch event, the version counter
	// is incremented. If you are replicating your Amazon ECS container instance
	// state with CloudWatch Events, you can compare the version of a container
	// instance reported by the Amazon ECS APIs with the version reported in CloudWatch
	// Events for the container instance (inside the detail object) to verify that
	// the version in your event stream is current.
	Version *int64 `locationName:"version" type:"long"`

	// The version information for the Amazon ECS container agent and Docker daemon
	// running on the container instance.
	VersionInfo *VersionInfo `locationName:"versionInfo" type:"structure"`
	// contains filtered or unexported fields
}

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

func (ContainerInstance) GoString added in v0.6.5

func (s ContainerInstance) GoString() string

GoString returns the string representation

func (*ContainerInstance) SetAgentConnected added in v1.5.0

func (s *ContainerInstance) SetAgentConnected(v bool) *ContainerInstance

SetAgentConnected sets the AgentConnected field's value.

func (*ContainerInstance) SetAgentUpdateStatus added in v1.5.0

func (s *ContainerInstance) SetAgentUpdateStatus(v string) *ContainerInstance

SetAgentUpdateStatus sets the AgentUpdateStatus field's value.

func (*ContainerInstance) SetAttachments added in v1.12.27

func (s *ContainerInstance) SetAttachments(v []*Attachment) *ContainerInstance

SetAttachments sets the Attachments field's value.

func (*ContainerInstance) SetAttributes added in v1.5.0

func (s *ContainerInstance) SetAttributes(v []*Attribute) *ContainerInstance

SetAttributes sets the Attributes field's value.

func (*ContainerInstance) SetContainerInstanceArn added in v1.5.0

func (s *ContainerInstance) SetContainerInstanceArn(v string) *ContainerInstance

SetContainerInstanceArn sets the ContainerInstanceArn field's value.

func (*ContainerInstance) SetEc2InstanceId added in v1.5.0

func (s *ContainerInstance) SetEc2InstanceId(v string) *ContainerInstance

SetEc2InstanceId sets the Ec2InstanceId field's value.

func (*ContainerInstance) SetPendingTasksCount added in v1.5.0

func (s *ContainerInstance) SetPendingTasksCount(v int64) *ContainerInstance

SetPendingTasksCount sets the PendingTasksCount field's value.

func (*ContainerInstance) SetRegisteredAt added in v1.8.20

func (s *ContainerInstance) SetRegisteredAt(v time.Time) *ContainerInstance

SetRegisteredAt sets the RegisteredAt field's value.

func (*ContainerInstance) SetRegisteredResources added in v1.5.0

func (s *ContainerInstance) SetRegisteredResources(v []*Resource) *ContainerInstance

SetRegisteredResources sets the RegisteredResources field's value.

func (*ContainerInstance) SetRemainingResources added in v1.5.0

func (s *ContainerInstance) SetRemainingResources(v []*Resource) *ContainerInstance

SetRemainingResources sets the RemainingResources field's value.

func (*ContainerInstance) SetRunningTasksCount added in v1.5.0

func (s *ContainerInstance) SetRunningTasksCount(v int64) *ContainerInstance

SetRunningTasksCount sets the RunningTasksCount field's value.

func (*ContainerInstance) SetStatus added in v1.5.0

func (s *ContainerInstance) SetStatus(v string) *ContainerInstance

SetStatus sets the Status field's value.

func (*ContainerInstance) SetStatusReason added in v1.99.0

func (s *ContainerInstance) SetStatusReason(v string) *ContainerInstance

SetStatusReason sets the StatusReason field's value.

func (*ContainerInstance) SetTags added in v1.99.0

func (s *ContainerInstance) SetTags(v []*Tag) *ContainerInstance

SetTags sets the Tags field's value.

func (*ContainerInstance) SetVersion added in v1.5.9

func (s *ContainerInstance) SetVersion(v int64) *ContainerInstance

SetVersion sets the Version field's value.

func (*ContainerInstance) SetVersionInfo added in v1.5.0

func (s *ContainerInstance) SetVersionInfo(v *VersionInfo) *ContainerInstance

SetVersionInfo sets the VersionInfo field's value.

func (ContainerInstance) String added in v0.6.5

func (s ContainerInstance) String() string

String returns the string representation

type ContainerOverride

type ContainerOverride struct {

	// The command to send to the container that overrides the default command from
	// the Docker image or the task definition. You must also specify a container
	// name.
	Command []*string `locationName:"command" type:"list"`

	// The number of cpu units reserved for the container, instead of the default
	// value from the task definition. You must also specify a container name.
	Cpu *int64 `locationName:"cpu" type:"integer"`

	// 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.
	// You must also specify a container name.
	Environment []*KeyValuePair `locationName:"environment" type:"list"`

	// The hard limit (in MiB) of memory to present to the container, instead of
	// the default value from the task definition. If your container attempts to
	// exceed the memory specified here, the container is killed. You must also
	// specify a container name.
	Memory *int64 `locationName:"memory" type:"integer"`

	// The soft limit (in MiB) of memory to reserve for the container, instead of
	// the default value from the task definition. You must also specify a container
	// name.
	MemoryReservation *int64 `locationName:"memoryReservation" type:"integer"`

	// The name of the container that receives the override. This parameter is required
	// if any override is specified.
	Name *string `locationName:"name" type:"string"`

	// The type and amount of a resource to assign to a container, instead of the
	// default value from the task definition. The only supported resource is a
	// GPU.
	ResourceRequirements []*ResourceRequirement `locationName:"resourceRequirements" type:"list"`
	// contains filtered or unexported fields
}

The overrides that should be sent to a container. An empty container override can be passed in. An example of an empty container override would be {"containerOverrides": [ ] }. If a non-empty container override is specified, the name parameter must be included.

func (ContainerOverride) GoString added in v0.6.5

func (s ContainerOverride) GoString() string

GoString returns the string representation

func (*ContainerOverride) SetCommand added in v1.5.0

func (s *ContainerOverride) SetCommand(v []*string) *ContainerOverride

SetCommand sets the Command field's value.

func (*ContainerOverride) SetCpu added in v1.8.43

SetCpu sets the Cpu field's value.

func (*ContainerOverride) SetEnvironment added in v1.5.0

func (s *ContainerOverride) SetEnvironment(v []*KeyValuePair) *ContainerOverride

SetEnvironment sets the Environment field's value.

func (*ContainerOverride) SetMemory added in v1.8.43

func (s *ContainerOverride) SetMemory(v int64) *ContainerOverride

SetMemory sets the Memory field's value.

func (*ContainerOverride) SetMemoryReservation added in v1.8.43

func (s *ContainerOverride) SetMemoryReservation(v int64) *ContainerOverride

SetMemoryReservation sets the MemoryReservation field's value.

func (*ContainerOverride) SetName added in v1.5.0

SetName sets the Name field's value.

func (*ContainerOverride) SetResourceRequirements added in v1.99.0

func (s *ContainerOverride) SetResourceRequirements(v []*ResourceRequirement) *ContainerOverride

SetResourceRequirements sets the ResourceRequirements field's value.

func (ContainerOverride) String added in v0.6.5

func (s ContainerOverride) String() string

String returns the string representation

func (*ContainerOverride) Validate added in v1.99.0

func (s *ContainerOverride) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ContainerStateChange added in v1.12.27

type ContainerStateChange struct {

	// The name of the container.
	ContainerName *string `locationName:"containerName" type:"string"`

	// The exit code for the container, if the state change is a result of the container
	// exiting.
	ExitCode *int64 `locationName:"exitCode" type:"integer"`

	// Any network bindings associated with the container.
	NetworkBindings []*NetworkBinding `locationName:"networkBindings" type:"list"`

	// The reason for the state change.
	Reason *string `locationName:"reason" type:"string"`

	// The status of the container.
	Status *string `locationName:"status" type:"string"`
	// contains filtered or unexported fields
}

An object representing a change in state for a container.

func (ContainerStateChange) GoString added in v1.12.27

func (s ContainerStateChange) GoString() string

GoString returns the string representation

func (*ContainerStateChange) SetContainerName added in v1.12.27

func (s *ContainerStateChange) SetContainerName(v string) *ContainerStateChange

SetContainerName sets the ContainerName field's value.

func (*ContainerStateChange) SetExitCode added in v1.12.27

func (s *ContainerStateChange) SetExitCode(v int64) *ContainerStateChange

SetExitCode sets the ExitCode field's value.

func (*ContainerStateChange) SetNetworkBindings added in v1.12.27

func (s *ContainerStateChange) SetNetworkBindings(v []*NetworkBinding) *ContainerStateChange

SetNetworkBindings sets the NetworkBindings field's value.

func (*ContainerStateChange) SetReason added in v1.12.27

SetReason sets the Reason field's value.

func (*ContainerStateChange) SetStatus added in v1.12.27

SetStatus sets the Status field's value.

func (ContainerStateChange) String added in v1.12.27

func (s ContainerStateChange) String() string

String returns the string representation

type CreateClusterInput

type CreateClusterInput struct {

	// The name of your cluster. If you do not specify a name for your cluster,
	// you create a cluster named default. Up to 255 letters (uppercase and lowercase),
	// numbers, and hyphens are allowed.
	ClusterName *string `locationName:"clusterName" type:"string"`

	// The setting to use when creating a cluster. This parameter is used to enable
	// CloudWatch Container Insights for a cluster. If this value is specified,
	// it will override the containerInsights value set with PutAccountSetting or
	// PutAccountSettingDefault.
	Settings []*ClusterSetting `locationName:"settings" type:"list"`

	// The metadata that you apply to the cluster to help you categorize and organize
	// them. Each tag consists of a key and an optional value, both of which you
	// define. Tag keys can have a maximum character length of 128 characters, and
	// tag values can have a maximum length of 256 characters.
	Tags []*Tag `locationName:"tags" type:"list"`
	// contains filtered or unexported fields
}

func (CreateClusterInput) GoString added in v0.6.5

func (s CreateClusterInput) GoString() string

GoString returns the string representation

func (*CreateClusterInput) SetClusterName added in v1.5.0

func (s *CreateClusterInput) SetClusterName(v string) *CreateClusterInput

SetClusterName sets the ClusterName field's value.

func (*CreateClusterInput) SetSettings added in v1.99.0

SetSettings sets the Settings field's value.

func (*CreateClusterInput) SetTags added in v1.99.0

func (s *CreateClusterInput) SetTags(v []*Tag) *CreateClusterInput

SetTags sets the Tags field's value.

func (CreateClusterInput) String added in v0.6.5

func (s CreateClusterInput) String() string

String returns the string representation

func (*CreateClusterInput) Validate added in v1.99.0

func (s *CreateClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateClusterOutput

type CreateClusterOutput struct {

	// The full description of your new cluster.
	Cluster *Cluster `locationName:"cluster" type:"structure"`
	// contains filtered or unexported fields
}

func (CreateClusterOutput) GoString added in v0.6.5

func (s CreateClusterOutput) GoString() string

GoString returns the string representation

func (*CreateClusterOutput) SetCluster added in v1.5.0

func (s *CreateClusterOutput) SetCluster(v *Cluster) *CreateClusterOutput

SetCluster sets the Cluster field's value.

func (CreateClusterOutput) String added in v0.6.5

func (s CreateClusterOutput) String() string

String returns the string representation

type CreateServiceInput

type CreateServiceInput struct {

	// Unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request. Up to 32 ASCII characters are allowed.
	ClientToken *string `locationName:"clientToken" type:"string"`

	// The short name or full Amazon Resource Name (ARN) of the cluster on which
	// to run your service. If you do not specify a cluster, the default cluster
	// is assumed.
	Cluster *string `locationName:"cluster" type:"string"`

	// Optional deployment parameters that control how many tasks run during the
	// deployment and the ordering of stopping and starting tasks.
	DeploymentConfiguration *DeploymentConfiguration `locationName:"deploymentConfiguration" type:"structure"`

	// The deployment controller to use for the service.
	DeploymentController *DeploymentController `locationName:"deploymentController" type:"structure"`

	// The number of instantiations of the specified task definition to place and
	// keep running on your cluster.
	DesiredCount *int64 `locationName:"desiredCount" type:"integer"`

	// Specifies whether to enable Amazon ECS managed tags for the tasks within
	// the service. For more information, see Tagging Your Amazon ECS Resources
	// (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html)
	// in the Amazon Elastic Container Service Developer Guide.
	EnableECSManagedTags *bool `locationName:"enableECSManagedTags" type:"boolean"`

	// The period of time, in seconds, that the Amazon ECS service scheduler should
	// ignore unhealthy Elastic Load Balancing target health checks after a task
	// has first started. This is only valid if your service is configured to use
	// a load balancer. If your service's tasks take a while to start and respond
	// to Elastic Load Balancing health checks, you can specify a health check grace
	// period of up to 2,147,483,647 seconds. During that time, the ECS service
	// scheduler ignores health check status. This grace period can prevent the
	// ECS service scheduler from marking tasks as unhealthy and stopping them before
	// they have time to come up.
	HealthCheckGracePeriodSeconds *int64 `locationName:"healthCheckGracePeriodSeconds" type:"integer"`

	// The launch type on which to run your service. For more information, see Amazon
	// ECS Launch Types (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html)
	// in the Amazon Elastic Container Service Developer Guide.
	LaunchType *string `locationName:"launchType" type:"string" enum:"LaunchType"`

	// A load balancer object representing the load balancer to use with your service.
	//
	// If the service is using the ECS deployment controller, you are limited to
	// one load balancer or target group.
	//
	// If the service is using the CODE_DEPLOY deployment controller, the service
	// is required to use either an Application Load Balancer or Network Load Balancer.
	// When creating an AWS CodeDeploy deployment group, you specify two target
	// groups (referred to as a targetGroupPair). During a deployment, AWS CodeDeploy
	// determines which task set in your service has the status PRIMARY and associates
	// one target group with it, and then associates the other target group with
	// the replacement task set. The load balancer can also have up to two listeners:
	// a required listener for production traffic and an optional listener that
	// allows you perform validation tests with Lambda functions before routing
	// production traffic to it.
	//
	// After you create a service using the ECS deployment controller, the load
	// balancer name or target group ARN, container name, and container port specified
	// in the service definition are immutable. If you are using the CODE_DEPLOY
	// deployment controller, these values can be changed when updating the service.
	//
	// For Classic Load Balancers, this object must contain the load balancer name,
	// the container name (as it appears in a container definition), and the container
	// port to access from the load balancer. When a task from this service is placed
	// on a container instance, the container instance is registered with the load
	// balancer specified here.
	//
	// For Application Load Balancers and Network Load Balancers, this object must
	// contain the load balancer target group ARN, the container name (as it appears
	// in a container definition), and the container port to access from the load
	// balancer. When a task from this service is placed on a container instance,
	// the container instance and port combination is registered as a target in
	// the target group specified here.
	//
	// Services with tasks that use the awsvpc network mode (for example, those
	// with the Fargate launch type) only support Application Load Balancers and
	// Network Load Balancers. Classic Load Balancers are not supported. Also, when
	// you create any target groups for these services, you must choose ip as the
	// target type, not instance, because tasks that use the awsvpc network mode
	// are associated with an elastic network interface, not an Amazon EC2 instance.
	LoadBalancers []*LoadBalancer `locationName:"loadBalancers" type:"list"`

	// The network configuration for the service. This parameter is required for
	// task definitions that use the awsvpc network mode to receive their own elastic
	// network interface, and it is not supported for other network modes. For more
	// information, see Task Networking (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html)
	// in the Amazon Elastic Container Service Developer Guide.
	NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"`

	// An array of placement constraint objects to use for tasks in your service.
	// You can specify a maximum of 10 constraints per task (this limit includes
	// constraints in the task definition and those specified at runtime).
	PlacementConstraints []*PlacementConstraint `locationName:"placementConstraints" type:"list"`

	// The placement strategy objects to use for tasks in your service. You can
	// specify a maximum of five strategy rules per service.
	PlacementStrategy []*PlacementStrategy `locationName:"placementStrategy" type:"list"`

	// The platform version that your tasks in the service are running on. A platform
	// version is specified only for tasks using the Fargate launch type. If one
	// isn't specified, the LATEST platform version is used by default. For more
	// information, see AWS Fargate Platform Versions (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html)
	// in the Amazon Elastic Container Service Developer Guide.
	PlatformVersion *string `locationName:"platformVersion" type:"string"`

	// Specifies whether to propagate the tags from the task definition or the service
	// to the tasks in the service. If no value is specified, the tags are not propagated.
	// Tags can only be propagated to the tasks within the service during service
	// creation. To add tags to a task after service creation, use the TagResource
	// API action.
	PropagateTags *string `locationName:"propagateTags" type:"string" enum:"PropagateTags"`

	// The name or full Amazon Resource Name (ARN) of the IAM role that allows Amazon
	// ECS to make calls to your load balancer on your behalf. This parameter is
	// only permitted if you are using a load balancer with your service and your
	// task definition does not use the awsvpc network mode. If you specify the
	// role parameter, you must also specify a load balancer object with the loadBalancers
	// parameter.
	//
	// If your account has already created the Amazon ECS service-linked role, that
	// role is used by default for your service unless you specify a role here.
	// The service-linked role is required if your task definition uses the awsvpc
	// network mode, in which case you should not specify a role here. For more
	// information, see Using Service-Linked Roles for Amazon ECS (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using-service-linked-roles.html)
	// in the Amazon Elastic Container Service Developer Guide.
	//
	// If your specified role has a path other than /, then you must either specify
	// the full role ARN (this is recommended) or prefix the role name with the
	// path. For example, if a role with the name bar has a path of /foo/ then you
	// would specify /foo/bar as the role name. For more information, see Friendly
	// Names and Paths (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names)
	// in the IAM User Guide.
	Role *string `locationName:"role" type:"string"`

	// The scheduling strategy to use for the service. For more information, see
	// Services (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html).
	//
	// There are two service scheduler strategies available:
	//
	//    * REPLICA-The replica scheduling strategy places and maintains the desired
	//    number of tasks across your cluster. By default, the service scheduler
	//    spreads tasks across Availability Zones. You can use task placement strategies
	//    and constraints to customize task placement decisions. This scheduler
	//    strategy is required if the service is using the CODE_DEPLOY or EXTERNAL
	//    deployment controller types.
	//
	//    * DAEMON-The daemon scheduling strategy deploys exactly one task on each
	//    active container instance that meets all of the task placement constraints
	//    that you specify in your cluster. When you're using this strategy, you
	//    don't need to specify a desired number of tasks, a task placement strategy,
	//    or use Service Auto Scaling policies. Tasks using the Fargate launch type
	//    or the CODE_DEPLOY or EXTERNAL deployment controller types don't support
	//    the DAEMON scheduling strategy.
	SchedulingStrategy *string `locationName:"schedulingStrategy" type:"string" enum:"SchedulingStrategy"`

	// The name of your service. Up to 255 letters (uppercase and lowercase), numbers,
	// and hyphens are allowed. Service names must be unique within a cluster, but
	// you can have similarly named services in multiple clusters within a Region
	// or across multiple Regions.
	//
	// ServiceName is a required field
	ServiceName *string `locationName:"serviceName" type:"string" required:"true"`

	// The details of the service discovery registries to assign to this service.
	// For more information, see Service Discovery (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html).
	//
	// Service discovery is supported for Fargate tasks if you are using platform
	// version v1.1.0 or later. For more information, see AWS Fargate Platform Versions
	// (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html).
	ServiceRegistries []*ServiceRegistry `locationName:"serviceRegistries" type:"list"`

	// The metadata that you apply to the service to help you categorize and organize
	// them. Each tag consists of a key and an optional value, both of which you
	// define. When a service is deleted, the tags are deleted as well. Tag keys
	// can have a maximum character length of 128 characters, and tag values can
	// have a maximum length of 256 characters.
	Tags []*Tag `locationName:"tags" type:"list"`

	// The family and revision (family:revision) or full ARN of the task definition
	// to run in your service. If a revision is not specified, the latest ACTIVE
	// revision is used.
	//
	// A task definition must be specified if the service is using the ECS deployment
	// controller.
	TaskDefinition *string `locationName:"taskDefinition" type:"string"`
	// contains filtered or unexported fields
}

func (CreateServiceInput) GoString added in v0.6.5

func (s CreateServiceInput) GoString() string

GoString returns the string representation

func (*CreateServiceInput) SetClientToken added in v1.5.0

func (s *CreateServiceInput) SetClientToken(v string) *CreateServiceInput

SetClientToken sets the ClientToken field's value.

func (*CreateServiceInput) SetCluster added in v1.5.0

func (s *CreateServiceInput) SetCluster(v string) *CreateServiceInput

SetCluster sets the Cluster field's value.

func (*CreateServiceInput) SetDeploymentConfiguration added in v1.5.0

func (s *CreateServiceInput) SetDeploymentConfiguration(v *DeploymentConfiguration) *CreateServiceInput

SetDeploymentConfiguration sets the DeploymentConfiguration field's value.

func (*CreateServiceInput) SetDeploymentController added in v1.99.0

func (s *CreateServiceInput) SetDeploymentController(v *DeploymentController) *CreateServiceInput

SetDeploymentController sets the DeploymentController field's value.

func (*CreateServiceInput) SetDesiredCount added in v1.5.0

func (s *CreateServiceInput) SetDesiredCount(v int64) *CreateServiceInput

SetDesiredCount sets the DesiredCount field's value.

func (*CreateServiceInput) SetEnableECSManagedTags added in v1.99.0

func (s *CreateServiceInput) SetEnableECSManagedTags(v bool) *CreateServiceInput

SetEnableECSManagedTags sets the EnableECSManagedTags field's value.

func (*CreateServiceInput) SetHealthCheckGracePeriodSeconds added in v1.12.53

func (s *CreateServiceInput) SetHealthCheckGracePeriodSeconds(v int64) *CreateServiceInput

SetHealthCheckGracePeriodSeconds sets the HealthCheckGracePeriodSeconds field's value.

func (*CreateServiceInput) SetLaunchType added in v1.12.36

func (s *CreateServiceInput) SetLaunchType(v string) *CreateServiceInput

SetLaunchType sets the LaunchType field's value.

func (*CreateServiceInput) SetLoadBalancers added in v1.5.0

func (s *CreateServiceInput) SetLoadBalancers(v []*LoadBalancer) *CreateServiceInput

SetLoadBalancers sets the LoadBalancers field's value.

func (*CreateServiceInput) SetNetworkConfiguration added in v1.12.27

func (s *CreateServiceInput) SetNetworkConfiguration(v *NetworkConfiguration) *CreateServiceInput

SetNetworkConfiguration sets the NetworkConfiguration field's value.

func (*CreateServiceInput) SetPlacementConstraints added in v1.6.9

func (s *CreateServiceInput) SetPlacementConstraints(v []*PlacementConstraint) *CreateServiceInput

SetPlacementConstraints sets the PlacementConstraints field's value.

func (*CreateServiceInput) SetPlacementStrategy added in v1.6.9

func (s *CreateServiceInput) SetPlacementStrategy(v []*PlacementStrategy) *CreateServiceInput

SetPlacementStrategy sets the PlacementStrategy field's value.

func (*CreateServiceInput) SetPlatformVersion added in v1.12.36

func (s *CreateServiceInput) SetPlatformVersion(v string) *CreateServiceInput

SetPlatformVersion sets the PlatformVersion field's value.

func (*CreateServiceInput) SetPropagateTags added in v1.99.0

func (s *CreateServiceInput) SetPropagateTags(v string) *CreateServiceInput

SetPropagateTags sets the PropagateTags field's value.

func (*CreateServiceInput) SetRole added in v1.5.0

SetRole sets the Role field's value.

func (*CreateServiceInput) SetSchedulingStrategy added in v1.14.5

func (s *CreateServiceInput) SetSchedulingStrategy(v string) *CreateServiceInput

SetSchedulingStrategy sets the SchedulingStrategy field's value.

func (*CreateServiceInput) SetServiceName added in v1.5.0

func (s *CreateServiceInput) SetServiceName(v string) *CreateServiceInput

SetServiceName sets the ServiceName field's value.

func (*CreateServiceInput) SetServiceRegistries added in v1.13.19

func (s *CreateServiceInput) SetServiceRegistries(v []*ServiceRegistry) *CreateServiceInput

SetServiceRegistries sets the ServiceRegistries field's value.

func (*CreateServiceInput) SetTags added in v1.99.0

func (s *CreateServiceInput) SetTags(v []*Tag) *CreateServiceInput

SetTags sets the Tags field's value.

func (*CreateServiceInput) SetTaskDefinition added in v1.5.0

func (s *CreateServiceInput) SetTaskDefinition(v string) *CreateServiceInput

SetTaskDefinition sets the TaskDefinition field's value.

func (CreateServiceInput) String added in v0.6.5

func (s CreateServiceInput) String() string

String returns the string representation

func (*CreateServiceInput) Validate added in v1.1.21

func (s *CreateServiceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateServiceOutput

type CreateServiceOutput struct {

	// The full description of your service following the create call.
	//
	// If a service is using the ECS deployment controller, the deploymentController
	// and taskSets parameters will not be returned.
	//
	// If the service is using the CODE_DEPLOY deployment controller, the deploymentController,
	// taskSets and deployments parameters will be returned, however the deployments
	// parameter will be an empty list.
	Service *Service `locationName:"service" type:"structure"`
	// contains filtered or unexported fields
}

func (CreateServiceOutput) GoString added in v0.6.5

func (s CreateServiceOutput) GoString() string

GoString returns the string representation

func (*CreateServiceOutput) SetService added in v1.5.0

func (s *CreateServiceOutput) SetService(v *Service) *CreateServiceOutput

SetService sets the Service field's value.

func (CreateServiceOutput) String added in v0.6.5

func (s CreateServiceOutput) String() string

String returns the string representation

type CreateTaskSetInput added in v1.99.0

type CreateTaskSetInput struct {

	// Unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request. Up to 32 ASCII characters are allowed.
	ClientToken *string `locationName:"clientToken" type:"string"`

	// The short name or full Amazon Resource Name (ARN) of the cluster that hosts
	// the service to create the task set in.
	//
	// Cluster is a required field
	Cluster *string `locationName:"cluster" type:"string" required:"true"`

	// An optional non-unique tag that identifies this task set in external systems.
	// If the task set is associated with a service discovery registry, the tasks
	// in this task set will have the ECS_TASK_SET_EXTERNAL_ID AWS Cloud Map attribute
	// set to the provided value.
	ExternalId *string `locationName:"externalId" type:"string"`

	// The launch type that new tasks in the task set will use. For more information,
	// see Amazon ECS Launch Types (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html)
	// in the Amazon Elastic Container Service Developer Guide.
	LaunchType *string `locationName:"launchType" type:"string" enum:"LaunchType"`

	// A load balancer object representing the load balancer to use with the task
	// set. The supported load balancer types are either an Application Load Balancer
	// or a Network Load Balancer.
	LoadBalancers []*LoadBalancer `locationName:"loadBalancers" type:"list"`

	// An object representing the network configuration for a task or service.
	NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"`

	// The platform version that the tasks in the task set should use. A platform
	// version is specified only for tasks using the Fargate launch type. If one
	// isn't specified, the LATEST platform version is used by default.
	PlatformVersion *string `locationName:"platformVersion" type:"string"`

	// A floating-point percentage of the desired number of tasks to place and keep
	// running in the task set.
	Scale *Scale `locationName:"scale" type:"structure"`

	// The short name or full Amazon Resource Name (ARN) of the service to create
	// the task set in.
	//
	// Service is a required field
	Service *string `locationName:"service" type:"string" required:"true"`

	// The details of the service discovery registries to assign to this task set.
	// For more information, see Service Discovery (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html).
	ServiceRegistries []*ServiceRegistry `locationName:"serviceRegistries" type:"list"`

	// The task definition for the tasks in the task set to use.
	//
	// TaskDefinition is a required field
	TaskDefinition *string `locationName:"taskDefinition" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateTaskSetInput) GoString added in v1.99.0

func (s CreateTaskSetInput) GoString() string

GoString returns the string representation

func (*CreateTaskSetInput) SetClientToken added in v1.99.0

func (s *CreateTaskSetInput) SetClientToken(v string) *CreateTaskSetInput

SetClientToken sets the ClientToken field's value.

func (*CreateTaskSetInput) SetCluster added in v1.99.0

func (s *CreateTaskSetInput) SetCluster(v string) *CreateTaskSetInput

SetCluster sets the Cluster field's value.

func (*CreateTaskSetInput) SetExternalId added in v1.99.0

func (s *CreateTaskSetInput) SetExternalId(v string) *CreateTaskSetInput

SetExternalId sets the ExternalId field's value.

func (*CreateTaskSetInput) SetLaunchType added in v1.99.0

func (s *CreateTaskSetInput) SetLaunchType(v string) *CreateTaskSetInput

SetLaunchType sets the LaunchType field's value.

func (*CreateTaskSetInput) SetLoadBalancers added in v1.99.0

func (s *CreateTaskSetInput) SetLoadBalancers(v []*LoadBalancer) *CreateTaskSetInput

SetLoadBalancers sets the LoadBalancers field's value.

func (*CreateTaskSetInput) SetNetworkConfiguration added in v1.99.0

func (s *CreateTaskSetInput) SetNetworkConfiguration(v *NetworkConfiguration) *CreateTaskSetInput

SetNetworkConfiguration sets the NetworkConfiguration field's value.

func (*CreateTaskSetInput) SetPlatformVersion added in v1.99.0

func (s *CreateTaskSetInput) SetPlatformVersion(v string) *CreateTaskSetInput

SetPlatformVersion sets the PlatformVersion field's value.

func (*CreateTaskSetInput) SetScale added in v1.99.0

func (s *CreateTaskSetInput) SetScale(v *Scale) *CreateTaskSetInput

SetScale sets the Scale field's value.

func (*CreateTaskSetInput) SetService added in v1.99.0

func (s *CreateTaskSetInput) SetService(v string) *CreateTaskSetInput

SetService sets the Service field's value.

func (*CreateTaskSetInput) SetServiceRegistries added in v1.99.0

func (s *CreateTaskSetInput) SetServiceRegistries(v []*ServiceRegistry) *CreateTaskSetInput

SetServiceRegistries sets the ServiceRegistries field's value.

func (*CreateTaskSetInput) SetTaskDefinition added in v1.99.0

func (s *CreateTaskSetInput) SetTaskDefinition(v string) *CreateTaskSetInput

SetTaskDefinition sets the TaskDefinition field's value.

func (CreateTaskSetInput) String added in v1.99.0

func (s CreateTaskSetInput) String() string

String returns the string representation

func (*CreateTaskSetInput) Validate added in v1.99.0

func (s *CreateTaskSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateTaskSetOutput added in v1.99.0

type CreateTaskSetOutput struct {

	// Information about a set of Amazon ECS tasks in either an AWS CodeDeploy or
	// an EXTERNAL deployment. An Amazon ECS task set includes details such as the
	// desired number of tasks, how many tasks are running, and whether the task
	// set serves production traffic.
	TaskSet *TaskSet `locationName:"taskSet" type:"structure"`
	// contains filtered or unexported fields
}

func (CreateTaskSetOutput) GoString added in v1.99.0

func (s CreateTaskSetOutput) GoString() string

GoString returns the string representation

func (*CreateTaskSetOutput) SetTaskSet added in v1.99.0

func (s *CreateTaskSetOutput) SetTaskSet(v *TaskSet) *CreateTaskSetOutput

SetTaskSet sets the TaskSet field's value.

func (CreateTaskSetOutput) String added in v1.99.0

func (s CreateTaskSetOutput) String() string

String returns the string representation

type DeleteAccountSettingInput added in v1.99.0

type DeleteAccountSettingInput struct {

	// The resource name for which to disable the account setting. If serviceLongArnFormat
	// is specified, the ARN for your Amazon ECS services is affected. If taskLongArnFormat
	// is specified, the ARN and resource ID for your Amazon ECS tasks is affected.
	// If containerInstanceLongArnFormat is specified, the ARN and resource ID for
	// your Amazon ECS container instances is affected. If awsvpcTrunking is specified,
	// the ENI limit for your Amazon ECS container instances is affected.
	//
	// Name is a required field
	Name *string `locationName:"name" type:"string" required:"true" enum:"SettingName"`

	// The ARN of the principal, which can be an IAM user, IAM role, or the root
	// user. If you specify the root user, it disables the account setting for all
	// IAM users, IAM roles, and the root user of the account unless an IAM user
	// or role explicitly overrides these settings. If this field is omitted, the
	// setting is changed only for the authenticated user.
	PrincipalArn *string `locationName:"principalArn" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteAccountSettingInput) GoString added in v1.99.0

func (s DeleteAccountSettingInput) GoString() string

GoString returns the string representation

func (*DeleteAccountSettingInput) SetName added in v1.99.0

SetName sets the Name field's value.

func (*DeleteAccountSettingInput) SetPrincipalArn added in v1.99.0

SetPrincipalArn sets the PrincipalArn field's value.

func (DeleteAccountSettingInput) String added in v1.99.0

func (s DeleteAccountSettingInput) String() string

String returns the string representation

func (*DeleteAccountSettingInput) Validate added in v1.99.0

func (s *DeleteAccountSettingInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteAccountSettingOutput added in v1.99.0

type DeleteAccountSettingOutput struct {

	// The account setting for the specified principal ARN.
	Setting *Setting `locationName:"setting" type:"structure"`
	// contains filtered or unexported fields
}

func (DeleteAccountSettingOutput) GoString added in v1.99.0

func (s DeleteAccountSettingOutput) GoString() string

GoString returns the string representation

func (*DeleteAccountSettingOutput) SetSetting added in v1.99.0

SetSetting sets the Setting field's value.

func (DeleteAccountSettingOutput) String added in v1.99.0

String returns the string representation

type DeleteAttributesInput added in v1.6.9

type DeleteAttributesInput struct {

	// The attributes to delete from your resource. You can specify up to 10 attributes
	// per request. For custom attributes, specify the attribute name and target
	// ID, but do not specify the value. If you specify the target ID using the
	// short form, you must also specify the target type.
	//
	// Attributes is a required field
	Attributes []*Attribute `locationName:"attributes" type:"list" required:"true"`

	// The short name or full Amazon Resource Name (ARN) of the cluster that contains
	// the resource to delete attributes. If you do not specify a cluster, the default
	// cluster is assumed.
	Cluster *string `locationName:"cluster" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteAttributesInput) GoString added in v1.6.9

func (s DeleteAttributesInput) GoString() string

GoString returns the string representation

func (*DeleteAttributesInput) SetAttributes added in v1.6.9

func (s *DeleteAttributesInput) SetAttributes(v []*Attribute) *DeleteAttributesInput

SetAttributes sets the Attributes field's value.

func (*DeleteAttributesInput) SetCluster added in v1.6.9

SetCluster sets the Cluster field's value.

func (DeleteAttributesInput) String added in v1.6.9

func (s DeleteAttributesInput) String() string

String returns the string representation

func (*DeleteAttributesInput) Validate added in v1.6.9

func (s *DeleteAttributesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteAttributesOutput added in v1.6.9

type DeleteAttributesOutput struct {

	// A list of attribute objects that were successfully deleted from your resource.
	Attributes []*Attribute `locationName:"attributes" type:"list"`
	// contains filtered or unexported fields
}

func (DeleteAttributesOutput) GoString added in v1.6.9

func (s DeleteAttributesOutput) GoString() string

GoString returns the string representation

func (*DeleteAttributesOutput) SetAttributes added in v1.6.9

SetAttributes sets the Attributes field's value.

func (DeleteAttributesOutput) String added in v1.6.9

func (s DeleteAttributesOutput) String() string

String returns the string representation

type DeleteClusterInput

type DeleteClusterInput struct {

	// The short name or full Amazon Resource Name (ARN) of the cluster to delete.
	//
	// Cluster is a required field
	Cluster *string `locationName:"cluster" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteClusterInput) GoString added in v0.6.5

func (s DeleteClusterInput) GoString() string

GoString returns the string representation

func (*DeleteClusterInput) SetCluster added in v1.5.0

func (s *DeleteClusterInput) SetCluster(v string) *DeleteClusterInput

SetCluster sets the Cluster field's value.

func (DeleteClusterInput) String added in v0.6.5

func (s DeleteClusterInput) String() string

String returns the string representation

func (*DeleteClusterInput) Validate added in v1.1.21

func (s *DeleteClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteClusterOutput

type DeleteClusterOutput struct {

	// The full description of the deleted cluster.
	Cluster *Cluster `locationName:"cluster" type:"structure"`
	// contains filtered or unexported fields
}

func (DeleteClusterOutput) GoString added in v0.6.5

func (s DeleteClusterOutput) GoString() string

GoString returns the string representation

func (*DeleteClusterOutput) SetCluster added in v1.5.0

func (s *DeleteClusterOutput) SetCluster(v *Cluster) *DeleteClusterOutput

SetCluster sets the Cluster field's value.

func (DeleteClusterOutput) String added in v0.6.5

func (s DeleteClusterOutput) String() string

String returns the string representation

type DeleteServiceInput

type DeleteServiceInput struct {

	// The short name or full Amazon Resource Name (ARN) of the cluster that hosts
	// the service to delete. If you do not specify a cluster, the default cluster
	// is assumed.
	Cluster *string `locationName:"cluster" type:"string"`

	// If true, allows you to delete a service even if it has not been scaled down
	// to zero tasks. It is only necessary to use this if the service is using the
	// REPLICA scheduling strategy.
	Force *bool `locationName:"force" type:"boolean"`

	// The name of the service to delete.
	//
	// Service is a required field
	Service *string `locationName:"service" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteServiceInput) GoString added in v0.6.5

func (s DeleteServiceInput) GoString() string

GoString returns the string representation

func (*DeleteServiceInput) SetCluster added in v1.5.0

func (s *DeleteServiceInput) SetCluster(v string) *DeleteServiceInput

SetCluster sets the Cluster field's value.

func (*DeleteServiceInput) SetForce added in v1.14.5

func (s *DeleteServiceInput) SetForce(v bool) *DeleteServiceInput

SetForce sets the Force field's value.

func (*DeleteServiceInput) SetService added in v1.5.0

func (s *DeleteServiceInput) SetService(v string) *DeleteServiceInput

SetService sets the Service field's value.

func (DeleteServiceInput) String added in v0.6.5

func (s DeleteServiceInput) String() string

String returns the string representation

func (*DeleteServiceInput) Validate added in v1.1.21

func (s *DeleteServiceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteServiceOutput

type DeleteServiceOutput struct {

	// The full description of the deleted service.
	Service *Service `locationName:"service" type:"structure"`
	// contains filtered or unexported fields
}

func (DeleteServiceOutput) GoString added in v0.6.5

func (s DeleteServiceOutput) GoString() string

GoString returns the string representation

func (*DeleteServiceOutput) SetService added in v1.5.0

func (s *DeleteServiceOutput) SetService(v *Service) *DeleteServiceOutput

SetService sets the Service field's value.

func (DeleteServiceOutput) String added in v0.6.5

func (s DeleteServiceOutput) String() string

String returns the string representation

type DeleteTaskSetInput added in v1.99.0

type DeleteTaskSetInput struct {

	// The short name or full Amazon Resource Name (ARN) of the cluster that hosts
	// the service that the task set exists in to delete.
	//
	// Cluster is a required field
	Cluster *string `locationName:"cluster" type:"string" required:"true"`

	// If true, this allows you to delete a task set even if it hasn't been scaled
	// down to zero.
	Force *bool `locationName:"force" type:"boolean"`

	// The short name or full Amazon Resource Name (ARN) of the service that hosts
	// the task set to delete.
	//
	// Service is a required field
	Service *string `locationName:"service" type:"string" required:"true"`

	// The task set ID or full Amazon Resource Name (ARN) of the task set to delete.
	//
	// TaskSet is a required field
	TaskSet *string `locationName:"taskSet" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteTaskSetInput) GoString added in v1.99.0

func (s DeleteTaskSetInput) GoString() string

GoString returns the string representation

func (*DeleteTaskSetInput) SetCluster added in v1.99.0

func (s *DeleteTaskSetInput) SetCluster(v string) *DeleteTaskSetInput

SetCluster sets the Cluster field's value.

func (*DeleteTaskSetInput) SetForce added in v1.99.0

func (s *DeleteTaskSetInput) SetForce(v bool) *DeleteTaskSetInput

SetForce sets the Force field's value.

func (*DeleteTaskSetInput) SetService added in v1.99.0

func (s *DeleteTaskSetInput) SetService(v string) *