@aws-sdk/client-ecs 3.1152.0 → 3.1154.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +77 -0
- package/dist-cjs/index.js +737 -38
- package/dist-es/ECS.js +28 -0
- package/dist-es/commands/AssociateGatewayWithClusterCommand.js +4 -0
- package/dist-es/commands/CreateGatewayCommand.js +4 -0
- package/dist-es/commands/DeleteGatewayCommand.js +4 -0
- package/dist-es/commands/DescribeGatewayCommand.js +4 -0
- package/dist-es/commands/DescribeGatewayResourcesCommand.js +4 -0
- package/dist-es/commands/DescribeGatewayRouteCommand.js +4 -0
- package/dist-es/commands/DisassociateGatewayFromClusterCommand.js +4 -0
- package/dist-es/commands/ListGatewayClusterAssociationsCommand.js +4 -0
- package/dist-es/commands/ListGatewayRoutesCommand.js +4 -0
- package/dist-es/commands/ListGatewaysCommand.js +4 -0
- package/dist-es/commands/UpdateGatewayCommand.js +4 -0
- package/dist-es/commands/index.js +11 -0
- package/dist-es/models/enums.js +51 -0
- package/dist-es/models/errors.js +26 -13
- package/dist-es/pagination/ListGatewayClusterAssociationsPaginator.js +4 -0
- package/dist-es/pagination/ListGatewayRoutesPaginator.js +4 -0
- package/dist-es/pagination/ListGatewaysPaginator.js +4 -0
- package/dist-es/pagination/index.js +3 -0
- package/dist-es/schemas/schemas_0.js +518 -25
- package/dist-types/ECS.d.ts +101 -0
- package/dist-types/ECSClient.d.ts +13 -2
- package/dist-types/commands/AssociateGatewayWithClusterCommand.d.ts +113 -0
- package/dist-types/commands/CreateGatewayCommand.d.ts +172 -0
- package/dist-types/commands/CreateServiceCommand.d.ts +34 -1
- package/dist-types/commands/DeleteExpressGatewayServiceCommand.d.ts +1 -1
- package/dist-types/commands/DeleteGatewayCommand.d.ts +108 -0
- package/dist-types/commands/DeleteServiceCommand.d.ts +6 -1
- package/dist-types/commands/DescribeExpressGatewayServiceCommand.d.ts +1 -1
- package/dist-types/commands/DescribeGatewayCommand.d.ts +200 -0
- package/dist-types/commands/DescribeGatewayResourcesCommand.d.ts +135 -0
- package/dist-types/commands/DescribeGatewayRouteCommand.d.ts +160 -0
- package/dist-types/commands/DescribeServiceRevisionsCommand.d.ts +53 -2
- package/dist-types/commands/DescribeServicesCommand.d.ts +6 -1
- package/dist-types/commands/DisassociateGatewayFromClusterCommand.d.ts +116 -0
- package/dist-types/commands/ListGatewayClusterAssociationsCommand.d.ts +125 -0
- package/dist-types/commands/ListGatewayRoutesCommand.d.ts +132 -0
- package/dist-types/commands/ListGatewaysCommand.d.ts +131 -0
- package/dist-types/commands/ListServiceDeploymentsCommand.d.ts +1 -1
- package/dist-types/commands/ListServicesCommand.d.ts +1 -1
- package/dist-types/commands/StopServiceDeploymentCommand.d.ts +1 -1
- package/dist-types/commands/UpdateExpressGatewayServiceCommand.d.ts +1 -1
- package/dist-types/commands/UpdateGatewayCommand.d.ts +143 -0
- package/dist-types/commands/UpdateServiceCommand.d.ts +34 -1
- package/dist-types/commands/UpdateServicePrimaryTaskSetCommand.d.ts +1 -1
- package/dist-types/commands/index.d.ts +11 -0
- package/dist-types/models/enums.d.ts +221 -0
- package/dist-types/models/errors.d.ts +25 -12
- package/dist-types/models/models_0.d.ts +1245 -1800
- package/dist-types/models/models_1.d.ts +2007 -2
- package/dist-types/pagination/ListGatewayClusterAssociationsPaginator.d.ts +7 -0
- package/dist-types/pagination/ListGatewayRoutesPaginator.d.ts +7 -0
- package/dist-types/pagination/ListGatewaysPaginator.d.ts +7 -0
- package/dist-types/pagination/index.d.ts +3 -0
- package/dist-types/schemas/schemas_0.d.ts +69 -1
- package/dist-types/ts3.4/ECS.d.ts +211 -0
- package/dist-types/ts3.4/ECSClient.d.ts +66 -0
- package/dist-types/ts3.4/commands/AssociateGatewayWithClusterCommand.d.ts +42 -0
- package/dist-types/ts3.4/commands/CreateGatewayCommand.d.ts +38 -0
- package/dist-types/ts3.4/commands/CreateServiceCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/DeleteExpressGatewayServiceCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/DeleteGatewayCommand.d.ts +38 -0
- package/dist-types/ts3.4/commands/DeleteServiceCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/DescribeExpressGatewayServiceCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/DescribeGatewayCommand.d.ts +38 -0
- package/dist-types/ts3.4/commands/DescribeGatewayResourcesCommand.d.ts +42 -0
- package/dist-types/ts3.4/commands/DescribeGatewayRouteCommand.d.ts +39 -0
- package/dist-types/ts3.4/commands/DescribeServiceRevisionsCommand.d.ts +4 -2
- package/dist-types/ts3.4/commands/DescribeServicesCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/DisassociateGatewayFromClusterCommand.d.ts +42 -0
- package/dist-types/ts3.4/commands/ListGatewayClusterAssociationsCommand.d.ts +42 -0
- package/dist-types/ts3.4/commands/ListGatewayRoutesCommand.d.ts +39 -0
- package/dist-types/ts3.4/commands/ListGatewaysCommand.d.ts +38 -0
- package/dist-types/ts3.4/commands/ListServiceDeploymentsCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/ListServicesCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/StopServiceDeploymentCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/UpdateExpressGatewayServiceCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/UpdateGatewayCommand.d.ts +38 -0
- package/dist-types/ts3.4/commands/UpdateServiceCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/UpdateServicePrimaryTaskSetCommand.d.ts +1 -1
- package/dist-types/ts3.4/commands/index.d.ts +11 -0
- package/dist-types/ts3.4/models/enums.d.ts +66 -0
- package/dist-types/ts3.4/models/errors.d.ts +12 -6
- package/dist-types/ts3.4/models/models_0.d.ts +385 -430
- package/dist-types/ts3.4/models/models_1.d.ts +488 -13
- package/dist-types/ts3.4/pagination/ListGatewayClusterAssociationsPaginator.d.ts +11 -0
- package/dist-types/ts3.4/pagination/ListGatewayRoutesPaginator.d.ts +11 -0
- package/dist-types/ts3.4/pagination/ListGatewaysPaginator.d.ts +11 -0
- package/dist-types/ts3.4/pagination/index.d.ts +3 -0
- package/dist-types/ts3.4/schemas/schemas_0.d.ts +74 -1
- package/package.json +4 -4
|
@@ -1,5 +1,2000 @@
|
|
|
1
|
-
import type { Compatibility, Connectivity, HealthStatus, IpcMode, LaunchType, ManagedAgentName, ManagedResourceStatus, NetworkMode, PidMode, PropagateTags, SortOrder, TaskDefinitionStatus, TaskField, TaskFilesystemType, TaskSetField, TaskStopCode } from "./enums";
|
|
2
|
-
import type { Attachment, Attribute, CapacityProviderStrategyItem, ContainerDefinition,
|
|
1
|
+
import type { AccessType, AvailabilityZoneRebalancing, Compatibility, Connectivity, DeploymentRolloutState, EBSResourceType, ExpressCpuArchitecture, ExpressGatewayServiceInclude, GatewayRouteStatus, HealthStatus, IpcMode, LaunchType, ManagedAgentName, ManagedResourceStatus, NetworkMode, PidMode, PropagateTags, ResourceManagementType, ScaleUnit, SchedulingStrategy, ServiceDeploymentStatus, ServiceField, SortOrder, StabilityStatus, StopServiceDeploymentStopType, TaskDefinitionStatus, TaskField, TaskFilesystemType, TaskSetField, TaskStopCode } from "./enums";
|
|
2
|
+
import type { Attachment, Attribute, CapacityProviderStrategyItem, ContainerDefinition, CreatedAt, DeploymentConfiguration, DeploymentController, ECSExpressGatewayService, EnvironmentFile, EphemeralStorage, ExpressGatewayContainer, ExpressGatewayScalingTarget, ExpressGatewayServiceConfiguration, ExpressGatewayServiceNetworkConfiguration, ExpressGatewayServiceStatus, Failure, GatewayConnector, InferenceAccelerator, KeyValuePair, LoadBalancer, LogConfiguration, MonitoringConfiguration, NetworkBinding, NetworkConfiguration, PlacementConstraint, PlacementStrategy, ProxyConfiguration, ResourceRequirement, RuntimePlatform, ServiceConnectAccessLogConfiguration, ServiceConnectClientAlias, ServiceConnectContainerConfiguration, ServiceConnectTlsConfiguration, Tag, TaskDefinition, TaskDefinitionPlacementConstraint, TimeoutConfiguration, Volume } from "./models_0";
|
|
3
|
+
/**
|
|
4
|
+
* <p>The Service Connect service object configuration. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html">Service Connect</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export interface ServiceConnectService {
|
|
8
|
+
/**
|
|
9
|
+
* <p>The <code>portName</code> must match the name of one of the <code>portMappings</code> from all the containers in the task definition of this Amazon ECS service.</p>
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
portName: string | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* <p>The <code>discoveryName</code> is the name of the new Cloud Map service that Amazon ECS creates for this Amazon ECS service. This must be unique within the Cloud Map namespace. The name can contain up to 64 characters. The name can include lowercase letters, numbers, underscores (_), and hyphens (-). The name can't start with a hyphen.</p> <p>If the <code>discoveryName</code> isn't specified, the port mapping name from the task definition is used in <code>portName.namespace</code>.</p>
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
discoveryName?: string | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* <p>The list of client aliases for this Service Connect service. You use these to assign names that can be used by client applications. The maximum number of client aliases that you can have in this list is 1.</p> <p>Each alias ("endpoint") is a fully-qualified name and port number that other Amazon ECS tasks ("clients") can use to connect to this service.</p> <p>Each name and port mapping must be unique within the namespace.</p> <p>For each <code>ServiceConnectService</code>, you must provide at least one <code>clientAlias</code> with one <code>port</code>.</p>
|
|
20
|
+
* @public
|
|
21
|
+
*/
|
|
22
|
+
clientAliases?: ServiceConnectClientAlias[] | undefined;
|
|
23
|
+
/**
|
|
24
|
+
* <p>The port number for the Service Connect proxy to listen on.</p> <p>Use the value of this field to bypass the proxy for traffic on the port number specified in the named <code>portMapping</code> in the task definition of this application, and then use it in your VPC security groups to allow traffic into the proxy for this Amazon ECS service.</p> <p>In <code>awsvpc</code> mode and Fargate, the default value is the container port number. The container port number is in the <code>portMapping</code> in the task definition. In bridge mode, the default value is the ephemeral port of the Service Connect proxy.</p>
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
ingressPortOverride?: number | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* <p>A reference to an object that represents the configured timeouts for Service Connect.</p>
|
|
30
|
+
* @public
|
|
31
|
+
*/
|
|
32
|
+
timeout?: TimeoutConfiguration | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* <p>A reference to an object that represents a Transport Layer Security (TLS) configuration.</p>
|
|
35
|
+
* @public
|
|
36
|
+
*/
|
|
37
|
+
tls?: ServiceConnectTlsConfiguration | undefined;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* <p>The Service Connect configuration of your Amazon ECS service. The configuration for this service to discover and connect to services, and be discovered by, and connected from, other services within a namespace.</p> <p>Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html">Service Connect</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
41
|
+
* @public
|
|
42
|
+
*/
|
|
43
|
+
export interface ServiceConnectConfiguration {
|
|
44
|
+
/**
|
|
45
|
+
* <p>Specifies whether to use Service Connect with this service.</p>
|
|
46
|
+
* @public
|
|
47
|
+
*/
|
|
48
|
+
enabled: boolean | undefined;
|
|
49
|
+
/**
|
|
50
|
+
* <p>The namespace name or full Amazon Resource Name (ARN) of the Cloud Map namespace for use with Service Connect. The namespace must be in the same Amazon Web Services Region as the Amazon ECS service and cluster. The type of namespace doesn't affect Service Connect. For more information about Cloud Map, see <a href="https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-services.html">Working with Services</a> in the <i>Cloud Map Developer Guide</i>.</p>
|
|
51
|
+
* @public
|
|
52
|
+
*/
|
|
53
|
+
namespace?: string | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* <p>The list of Service Connect service objects. These are names and aliases (also known as endpoints) that are used by other Amazon ECS services to connect to this service. </p> <p>This field is not required for a "client" Amazon ECS service that's a member of a namespace only to connect to other services within the namespace. An example of this would be a frontend application that accepts incoming requests from either a load balancer that's attached to the service or by other means.</p> <p>An object selects a port from the task definition, assigns a name for the Cloud Map service, and a list of aliases (endpoints) and ports for client applications to refer to this service.</p>
|
|
56
|
+
* @public
|
|
57
|
+
*/
|
|
58
|
+
services?: ServiceConnectService[] | undefined;
|
|
59
|
+
/**
|
|
60
|
+
* <p>The log configuration for the container. This parameter maps to <code>LogConfig</code> in the docker container create command and the <code>--log-driver</code> option to docker run.</p> <p>By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver configuration in the container definition.</p> <p>Understand the following when specifying a log configuration for your containers.</p> <ul> <li> <p>Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon. Additional log drivers may be available in future releases of the Amazon ECS container agent.</p> <p>For tasks on Fargate, the supported log drivers are <code>awslogs</code>, <code>splunk</code>, and <code>awsfirelens</code>.</p> <p>For tasks hosted on Amazon EC2 instances, the supported log drivers are <code>awslogs</code>, <code>fluentd</code>, <code>gelf</code>, <code>json-file</code>, <code>journald</code>,<code>syslog</code>, <code>splunk</code>, and <code>awsfirelens</code>.</p> </li> <li> <p>This parameter requires version 1.18 of the Docker Remote API or greater on your container instance.</p> </li> <li> <p>For tasks that are hosted on Amazon EC2 instances, the Amazon ECS container agent must register the available logging drivers with the <code>ECS_AVAILABLE_LOGGING_DRIVERS</code> environment variable before containers placed on that instance can use these log configuration options. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html">Amazon ECS container agent configuration</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> </li> <li> <p>For tasks that are on Fargate, because you don't have access to the underlying infrastructure your tasks are hosted on, any additional software needed must be installed outside of the task. For example, the Fluentd output aggregators or a remote host running Logstash to send Gelf logs to.</p> </li> </ul>
|
|
61
|
+
* @public
|
|
62
|
+
*/
|
|
63
|
+
logConfiguration?: LogConfiguration | undefined;
|
|
64
|
+
/**
|
|
65
|
+
* <p>The configuration for Service Connect access logging. Access logs capture detailed information about requests made to your service, including request patterns, response codes, and timing data. They can be useful for debugging connectivity issues, monitoring service performance, and auditing service-to-service communication for security and compliance purposes.</p> <note> <p>To enable access logs, you must also specify a <code>logConfiguration</code> in the <code>serviceConnectConfiguration</code>.</p> </note>
|
|
66
|
+
* @public
|
|
67
|
+
*/
|
|
68
|
+
accessLogConfiguration?: ServiceConnectAccessLogConfiguration | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* <p>The settings for the Service Connect proxy container that Amazon ECS adds to each task in this service. Each object in the list sets exactly one setting, and each setting can appear only once in the list.</p> <p>Your changes to these settings apply only to tasks that Amazon ECS launches after you update the service. Your running tasks keep their existing settings until Amazon ECS replaces them. If you update the <code>serviceConnectConfiguration</code> of your service and don't include <code>containerConfigurations</code>, the proxy container settings return to their defaults.</p>
|
|
71
|
+
* @public
|
|
72
|
+
*/
|
|
73
|
+
containerConfigurations?: ServiceConnectContainerConfiguration[] | undefined;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* <p>The details for the service registry.</p> <p>Each service may be associated with one service registry. Multiple service registries for each service are not supported.</p> <p>When you add, update, or remove the service registries configuration, Amazon ECS starts a new deployment. New tasks are registered and deregistered to the updated service registry configuration.</p>
|
|
77
|
+
* @public
|
|
78
|
+
*/
|
|
79
|
+
export interface ServiceRegistry {
|
|
80
|
+
/**
|
|
81
|
+
* <p>The Amazon Resource Name (ARN) of the service registry. The currently supported service registry is Cloud Map. For more information, see <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html">CreateService</a>.</p>
|
|
82
|
+
* @public
|
|
83
|
+
*/
|
|
84
|
+
registryArn?: string | undefined;
|
|
85
|
+
/**
|
|
86
|
+
* <p>The port value used if your service discovery service specified an SRV record. This field might be used if both the <code>awsvpc</code> network mode and SRV records are used.</p>
|
|
87
|
+
* @public
|
|
88
|
+
*/
|
|
89
|
+
port?: number | undefined;
|
|
90
|
+
/**
|
|
91
|
+
* <p>The container name value to be used for your service discovery service. It's already specified in the task definition. If the task definition that your service task specifies uses the <code>bridge</code> or <code>host</code> network mode, you must specify a <code>containerName</code> and <code>containerPort</code> combination from the task definition. If the task definition that your service task specifies uses the <code>awsvpc</code> network mode and a type SRV DNS record is used, you must specify either a <code>containerName</code> and <code>containerPort</code> combination or a <code>port</code> value. However, you can't specify both.</p>
|
|
92
|
+
* @public
|
|
93
|
+
*/
|
|
94
|
+
containerName?: string | undefined;
|
|
95
|
+
/**
|
|
96
|
+
* <p>The port value to be used for your service discovery service. It's already specified in the task definition. If the task definition your service task specifies uses the <code>bridge</code> or <code>host</code> network mode, you must specify a <code>containerName</code> and <code>containerPort</code> combination from the task definition. If the task definition your service task specifies uses the <code>awsvpc</code> network mode and a type SRV DNS record is used, you must specify either a <code>containerName</code> and <code>containerPort</code> combination or a <code>port</code> value. However, you can't specify both.</p>
|
|
97
|
+
* @public
|
|
98
|
+
*/
|
|
99
|
+
containerPort?: number | undefined;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* <p>The tag specifications of an Amazon EBS volume.</p>
|
|
103
|
+
* @public
|
|
104
|
+
*/
|
|
105
|
+
export interface EBSTagSpecification {
|
|
106
|
+
/**
|
|
107
|
+
* <p>The type of volume resource.</p>
|
|
108
|
+
* @public
|
|
109
|
+
*/
|
|
110
|
+
resourceType: EBSResourceType | undefined;
|
|
111
|
+
/**
|
|
112
|
+
* <p>The tags applied to this Amazon EBS volume. <code>AmazonECSCreated</code> and <code>AmazonECSManaged</code> are reserved tags that can't be used.</p>
|
|
113
|
+
* @public
|
|
114
|
+
*/
|
|
115
|
+
tags?: Tag[] | undefined;
|
|
116
|
+
/**
|
|
117
|
+
* <p>Determines whether to propagate the tags from the task definition to the Amazon EBS volume. Tags can only propagate to a <code>SERVICE</code> specified in <code>ServiceVolumeConfiguration</code>. If no value is specified, the tags aren't propagated.</p>
|
|
118
|
+
* @public
|
|
119
|
+
*/
|
|
120
|
+
propagateTags?: PropagateTags | undefined;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* <p>The configuration for the Amazon EBS volume that Amazon ECS creates and manages on your behalf. These settings are used to create each Amazon EBS volume, with one volume created for each task in the service. For information about the supported launch types and operating systems, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volumes-configuration">Supported operating systems and launch types</a> in the<i> Amazon Elastic Container Service Developer Guide</i>.</p> <p>Many of these parameters map 1:1 with the Amazon EBS <code>CreateVolume</code> API request parameters.</p>
|
|
124
|
+
* @public
|
|
125
|
+
*/
|
|
126
|
+
export interface ServiceManagedEBSVolumeConfiguration {
|
|
127
|
+
/**
|
|
128
|
+
* <p>Indicates whether the volume should be encrypted. If you turn on Region-level Amazon EBS encryption by default but set this value as <code>false</code>, the setting is overridden and the volume is encrypted with the KMS key specified for Amazon EBS encryption by default. This parameter maps 1:1 with the <code>Encrypted</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API Reference</i>.</p>
|
|
129
|
+
* @public
|
|
130
|
+
*/
|
|
131
|
+
encrypted?: boolean | undefined;
|
|
132
|
+
/**
|
|
133
|
+
* <p>The Amazon Resource Name (ARN) identifier of the Amazon Web Services Key Management Service key to use for Amazon EBS encryption. When a key is specified using this parameter, it overrides Amazon EBS default encryption or any KMS key that you specified for cluster-level managed storage encryption. This parameter maps 1:1 with the <code>KmsKeyId</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API Reference</i>. For more information about encrypting Amazon EBS volumes attached to tasks, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-kms-encryption.html">Encrypt data stored in Amazon EBS volumes attached to Amazon ECS tasks</a>.</p> <important> <p>Amazon Web Services authenticates the Amazon Web Services Key Management Service key asynchronously. Therefore, if you specify an ID, alias, or ARN that is invalid, the action can appear to complete, but eventually fails.</p> </important>
|
|
134
|
+
* @public
|
|
135
|
+
*/
|
|
136
|
+
kmsKeyId?: string | undefined;
|
|
137
|
+
/**
|
|
138
|
+
* <p>The volume type. This parameter maps 1:1 with the <code>VolumeType</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API Reference</i>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html">Amazon EBS volume types</a> in the <i>Amazon EC2 User Guide</i>.</p> <p>The following are the supported volume types.</p> <ul> <li> <p>General Purpose SSD: <code>gp2</code>|<code>gp3</code> </p> </li> <li> <p>Provisioned IOPS SSD: <code>io1</code>|<code>io2</code> </p> </li> <li> <p>Throughput Optimized HDD: <code>st1</code> </p> </li> <li> <p>Cold HDD: <code>sc1</code> </p> </li> <li> <p>Magnetic: <code>standard</code> </p> <note> <p>The magnetic volume type is not supported on Fargate.</p> </note> </li> </ul>
|
|
139
|
+
* @public
|
|
140
|
+
*/
|
|
141
|
+
volumeType?: string | undefined;
|
|
142
|
+
/**
|
|
143
|
+
* <p>The size of the volume in GiB. You must specify either a volume size or a snapshot ID. If you specify a snapshot ID, the snapshot size is used for the volume size by default. You can optionally specify a volume size greater than or equal to the snapshot size. This parameter maps 1:1 with the <code>Size</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API Reference</i>.</p> <p>The following are the supported volume size values for each volume type.</p> <ul> <li> <p> <code>gp2</code> and <code>gp3</code>: 1-16,384</p> </li> <li> <p> <code>io1</code> and <code>io2</code>: 4-16,384</p> </li> <li> <p> <code>st1</code> and <code>sc1</code>: 125-16,384</p> </li> <li> <p> <code>standard</code>: 1-1,024</p> </li> </ul>
|
|
144
|
+
* @public
|
|
145
|
+
*/
|
|
146
|
+
sizeInGiB?: number | undefined;
|
|
147
|
+
/**
|
|
148
|
+
* <p>The snapshot that Amazon ECS uses to create volumes for attachment to tasks maintained by the service. You must specify either <code>snapshotId</code> or <code>sizeInGiB</code> in your volume configuration. This parameter maps 1:1 with the <code>SnapshotId</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API Reference</i>.</p>
|
|
149
|
+
* @public
|
|
150
|
+
*/
|
|
151
|
+
snapshotId?: string | undefined;
|
|
152
|
+
/**
|
|
153
|
+
* <p>The rate, in MiB/s, at which data is fetched from a snapshot of an existing EBS volume to create new volumes for attachment to the tasks maintained by the service. This property can be specified only if you specify a <code>snapshotId</code>. For more information, see <a href="https://docs.aws.amazon.com/ebs/latest/userguide/initalize-volume.html">Initialize Amazon EBS volumes</a> in the <i>Amazon EBS User Guide</i>.</p>
|
|
154
|
+
* @public
|
|
155
|
+
*/
|
|
156
|
+
volumeInitializationRate?: number | undefined;
|
|
157
|
+
/**
|
|
158
|
+
* <p>The number of I/O operations per second (IOPS). For <code>gp3</code>, <code>io1</code>, and <code>io2</code> volumes, this represents the number of IOPS that are provisioned for the volume. For <code>gp2</code> volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.</p> <p>The following are the supported values for each volume type.</p> <ul> <li> <p> <code>gp3</code>: 3,000 - 16,000 IOPS</p> </li> <li> <p> <code>io1</code>: 100 - 64,000 IOPS</p> </li> <li> <p> <code>io2</code>: 100 - 256,000 IOPS</p> </li> </ul> <p>This parameter is required for <code>io1</code> and <code>io2</code> volume types. The default for <code>gp3</code> volumes is <code>3,000 IOPS</code>. This parameter is not supported for <code>st1</code>, <code>sc1</code>, or <code>standard</code> volume types.</p> <p>This parameter maps 1:1 with the <code>Iops</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API Reference</i>.</p>
|
|
159
|
+
* @public
|
|
160
|
+
*/
|
|
161
|
+
iops?: number | undefined;
|
|
162
|
+
/**
|
|
163
|
+
* <p>The throughput to provision for a volume, in MiB/s, with a maximum of 1,000 MiB/s. This parameter maps 1:1 with the <code>Throughput</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API Reference</i>.</p> <important> <p>This parameter is only supported for the <code>gp3</code> volume type.</p> </important>
|
|
164
|
+
* @public
|
|
165
|
+
*/
|
|
166
|
+
throughput?: number | undefined;
|
|
167
|
+
/**
|
|
168
|
+
* <p>The tags to apply to the volume. Amazon ECS applies service-managed tags by default. This parameter maps 1:1 with the <code>TagSpecifications.N</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API Reference</i>.</p>
|
|
169
|
+
* @public
|
|
170
|
+
*/
|
|
171
|
+
tagSpecifications?: EBSTagSpecification[] | undefined;
|
|
172
|
+
/**
|
|
173
|
+
* <p>The ARN of the IAM role to associate with this volume. This is the Amazon ECS infrastructure IAM role that is used to manage your Amazon Web Services infrastructure. We recommend using the Amazon ECS-managed <code>AmazonECSInfrastructureRolePolicyForVolumes</code> IAM policy with this role. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/infrastructure_IAM_role.html">Amazon ECS infrastructure IAM role</a> in the <i>Amazon ECS Developer Guide</i>.</p>
|
|
174
|
+
* @public
|
|
175
|
+
*/
|
|
176
|
+
roleArn: string | undefined;
|
|
177
|
+
/**
|
|
178
|
+
* <p>The filesystem type for the volume. For volumes created from a snapshot, you must specify the same filesystem type that the volume was using when the snapshot was created. If there is a filesystem type mismatch, the tasks will fail to start.</p> <p>The available Linux filesystem types are <code>ext3</code>, <code>ext4</code>, and <code>xfs</code>. If no value is specified, the <code>xfs</code> filesystem type is used by default.</p> <p>The available Windows filesystem types are <code>NTFS</code>.</p>
|
|
179
|
+
* @public
|
|
180
|
+
*/
|
|
181
|
+
filesystemType?: TaskFilesystemType | undefined;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* <p>The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume.</p>
|
|
185
|
+
* @public
|
|
186
|
+
*/
|
|
187
|
+
export interface ServiceVolumeConfiguration {
|
|
188
|
+
/**
|
|
189
|
+
* <p>The name of the volume. This value must match the volume name from the <code>Volume</code> object in the task definition.</p>
|
|
190
|
+
* @public
|
|
191
|
+
*/
|
|
192
|
+
name: string | undefined;
|
|
193
|
+
/**
|
|
194
|
+
* <p>The configuration for the Amazon EBS volume that Amazon ECS creates and manages on your behalf. These settings are used to create each Amazon EBS volume, with one volume created for each task in the service. The Amazon EBS volumes are visible in your account in the Amazon EC2 console once they are created.</p>
|
|
195
|
+
* @public
|
|
196
|
+
*/
|
|
197
|
+
managedEBSVolume?: ServiceManagedEBSVolumeConfiguration | undefined;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* <p>The advanced settings for VPC Lattice used in blue/green deployments. Specify the alternate target group and listener rules required for traffic shifting during blue/green deployments. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/blue-green-deployment-implementation.html">Required resources for Amazon ECS blue/green deployments</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
201
|
+
* @public
|
|
202
|
+
*/
|
|
203
|
+
export interface VpcLatticeAdvancedConfiguration {
|
|
204
|
+
/**
|
|
205
|
+
* <p>The Amazon Resource Name (ARN) of the alternate target group associated with the VPC Lattice Configuration for Amazon ECS blue/green deployments.</p>
|
|
206
|
+
* @public
|
|
207
|
+
*/
|
|
208
|
+
alternateTargetGroupArn?: string | undefined;
|
|
209
|
+
/**
|
|
210
|
+
* <p>The Amazon Resource Name (ARN) that identifies the production listener rule or listener for routing production traffic.</p>
|
|
211
|
+
* @public
|
|
212
|
+
*/
|
|
213
|
+
productionListenerRule?: string | undefined;
|
|
214
|
+
/**
|
|
215
|
+
* <p>The Amazon Resource Name (ARN) that identifies the test listener rule or listener for routing test traffic.</p>
|
|
216
|
+
* @public
|
|
217
|
+
*/
|
|
218
|
+
testListenerRule?: string | undefined;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* <p>The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to.</p>
|
|
222
|
+
* @public
|
|
223
|
+
*/
|
|
224
|
+
export interface VpcLatticeConfiguration {
|
|
225
|
+
/**
|
|
226
|
+
* <p>The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure.</p>
|
|
227
|
+
* @public
|
|
228
|
+
*/
|
|
229
|
+
roleArn: string | undefined;
|
|
230
|
+
/**
|
|
231
|
+
* <p>The full Amazon Resource Name (ARN) of the target group or groups associated with the VPC Lattice configuration that the Amazon ECS tasks will be registered to.</p>
|
|
232
|
+
* @public
|
|
233
|
+
*/
|
|
234
|
+
targetGroupArn: string | undefined;
|
|
235
|
+
/**
|
|
236
|
+
* <p>The name of the port mapping to register in the VPC Lattice target group. This is the name of the <code>portMapping</code> you defined in your task definition.</p>
|
|
237
|
+
* @public
|
|
238
|
+
*/
|
|
239
|
+
portName: string | undefined;
|
|
240
|
+
/**
|
|
241
|
+
* <p>The advanced settings for VPC Lattice used in blue/green deployments. Specify the alternate target group and listener rules required for traffic shifting during blue/green deployments. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/blue-green-deployment-implementation.html">Required resources for Amazon ECS blue/green deployments</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
242
|
+
* @public
|
|
243
|
+
*/
|
|
244
|
+
advancedConfiguration?: VpcLatticeAdvancedConfiguration | undefined;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
*
|
|
248
|
+
* @public
|
|
249
|
+
*/
|
|
250
|
+
export interface CreateServiceRequest {
|
|
251
|
+
/**
|
|
252
|
+
* <p>The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed.</p>
|
|
253
|
+
* @public
|
|
254
|
+
*/
|
|
255
|
+
cluster?: string | undefined;
|
|
256
|
+
/**
|
|
257
|
+
* <p>The name of your service. Up to 255 letters (uppercase and lowercase), numbers, underscores, 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.</p>
|
|
258
|
+
* @public
|
|
259
|
+
*/
|
|
260
|
+
serviceName: string | undefined;
|
|
261
|
+
/**
|
|
262
|
+
* <p>The <code>family</code> and <code>revision</code> (<code>family:revision</code>) or full ARN of the task definition to run in your service. If a <code>revision</code> isn't specified, the latest <code>ACTIVE</code> revision is used.</p> <p>A task definition must be specified if the service uses either the <code>ECS</code> or <code>CODE_DEPLOY</code> deployment controllers.</p> <p>For more information about deployment types, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html">Amazon ECS deployment types</a>.</p>
|
|
263
|
+
* @public
|
|
264
|
+
*/
|
|
265
|
+
taskDefinition?: string | undefined;
|
|
266
|
+
/**
|
|
267
|
+
* <p>Indicates whether to use Availability Zone rebalancing for the service.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html">Balancing an Amazon ECS service across Availability Zones</a> in the <i> <i>Amazon Elastic Container Service Developer Guide</i> </i>.</p> <p>The default behavior of <code>AvailabilityZoneRebalancing</code> differs between create and update requests:</p> <ul> <li> <p>For create service requests, when no value is specified for <code>AvailabilityZoneRebalancing</code>, Amazon ECS defaults the value to <code>ENABLED</code>.</p> </li> <li> <p>For update service requests, when no value is specified for <code>AvailabilityZoneRebalancing</code>, Amazon ECS defaults to the existing service’s <code>AvailabilityZoneRebalancing</code> value. If the service never had an <code>AvailabilityZoneRebalancing</code> value set, Amazon ECS treats this as <code>DISABLED</code>.</p> </li> </ul>
|
|
268
|
+
* @public
|
|
269
|
+
*/
|
|
270
|
+
availabilityZoneRebalancing?: AvailabilityZoneRebalancing | undefined;
|
|
271
|
+
/**
|
|
272
|
+
* <p>A load balancer object representing the load balancers to use with your service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html">Service load balancing</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> <p>If the service uses the <code>ECS</code> deployment controller and using either an Application Load Balancer or Network Load Balancer, you must specify one or more target group ARNs to attach to the service. The service-linked role is required for services that use multiple target groups. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using-service-linked-roles.html">Using service-linked roles for Amazon ECS</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> <p>If the service uses the <code>CODE_DEPLOY</code> deployment controller, the service is required to use either an Application Load Balancer or Network Load Balancer. When creating an CodeDeploy deployment group, you specify two target groups (referred to as a <code>targetGroupPair</code>). During a deployment, CodeDeploy determines which task set in your service has the status <code>PRIMARY</code>, and it associates one target group with it. Then, it also 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 you can use to perform validation tests with Lambda functions before routing production traffic to it.</p> <p>If you use the <code>CODE_DEPLOY</code> deployment controller, these values can be changed when updating the service.</p> <p>For Application Load Balancers and Network Load Balancers, this object must contain the load balancer target group ARN, the container name, and the container port to access from the load balancer. The container name must be as it appears in a container definition. The load balancer name parameter must be omitted. 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 that's specified here.</p> <p>For Classic Load Balancers, this object must contain the load balancer name, the container name , and the container port to access from the load balancer. The container name must be as it appears in a container definition. The target group ARN parameter must be omitted. When a task from this service is placed on a container instance, the container instance is registered with the load balancer that's specified here.</p> <p>Services with tasks that use the <code>awsvpc</code> network mode (for example, those with the Fargate launch type) only support Application Load Balancers and Network Load Balancers. Classic Load Balancers aren't supported. Also, when you create any target groups for these services, you must choose <code>ip</code> as the target type, not <code>instance</code>. This is because tasks that use the <code>awsvpc</code> network mode are associated with an elastic network interface, not an Amazon EC2 instance.</p>
|
|
273
|
+
* @public
|
|
274
|
+
*/
|
|
275
|
+
loadBalancers?: LoadBalancer[] | undefined;
|
|
276
|
+
/**
|
|
277
|
+
* <p>The details of the service discovery registry to associate with this service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service discovery</a>.</p> <note> <p>Each service may be associated with one service registry. Multiple service registries for each service isn't supported.</p> </note>
|
|
278
|
+
* @public
|
|
279
|
+
*/
|
|
280
|
+
serviceRegistries?: ServiceRegistry[] | undefined;
|
|
281
|
+
/**
|
|
282
|
+
* <p>The number of instantiations of the specified task definition to place and keep running in your service.</p> <p>This is required if <code>schedulingStrategy</code> is <code>REPLICA</code> or isn't specified. If <code>schedulingStrategy</code> is <code>DAEMON</code> then this isn't required.</p>
|
|
283
|
+
* @public
|
|
284
|
+
*/
|
|
285
|
+
desiredCount?: number | undefined;
|
|
286
|
+
/**
|
|
287
|
+
* <p>An identifier that you provide to ensure the idempotency of the request. It must be unique and is case sensitive. Up to 36 ASCII characters in the range of 33-126 (inclusive) are allowed.</p>
|
|
288
|
+
* @public
|
|
289
|
+
*/
|
|
290
|
+
clientToken?: string | undefined;
|
|
291
|
+
/**
|
|
292
|
+
* <p>The infrastructure that you run your service on. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html">Amazon ECS launch types</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> <note> <p>If you want to use Amazon ECS Managed Instances, you must use the <code>capacityProviderStrategy</code> request parameter and omit the <code>launchType</code> request parameter.</p> </note> <p>The <code>FARGATE</code> launch type runs your tasks on Fargate On-Demand infrastructure.</p> <note> <p>Fargate Spot infrastructure is available for use but a capacity provider strategy must be used. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/fargate-capacity-providers.html">Fargate capacity providers</a> in the <i>Amazon ECS Developer Guide</i>.</p> </note> <p>The <code>EC2</code> launch type runs your tasks on Amazon EC2 instances registered to your cluster.</p> <p>The <code>EXTERNAL</code> launch type runs your tasks on your on-premises server or virtual machine (VM) capacity registered to your cluster.</p> <p>A service can use either a launch type or a capacity provider strategy. If a <code>launchType</code> is specified, the <code>capacityProviderStrategy</code> parameter must be omitted.</p>
|
|
293
|
+
* @public
|
|
294
|
+
*/
|
|
295
|
+
launchType?: LaunchType | undefined;
|
|
296
|
+
/**
|
|
297
|
+
* <p>The capacity provider strategy to use for the service.</p> <note> <p>If you want to use Amazon ECS Managed Instances, you must use the <code>capacityProviderStrategy</code> request parameter and omit the <code>launchType</code> request parameter.</p> </note> <p>If a <code>capacityProviderStrategy</code> is specified, the <code>launchType</code> parameter must be omitted. If no <code>capacityProviderStrategy</code> or <code>launchType</code> is specified, the <code>defaultCapacityProviderStrategy</code> for the cluster is used.</p> <p>A capacity provider strategy can contain a maximum of 20 capacity providers.</p>
|
|
298
|
+
* @public
|
|
299
|
+
*/
|
|
300
|
+
capacityProviderStrategy?: CapacityProviderStrategyItem[] | undefined;
|
|
301
|
+
/**
|
|
302
|
+
* <p>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 <code>LATEST</code> platform version is used. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html">Fargate platform versions</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
303
|
+
* @public
|
|
304
|
+
*/
|
|
305
|
+
platformVersion?: string | undefined;
|
|
306
|
+
/**
|
|
307
|
+
* <p>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 doesn't use the <code>awsvpc</code> network mode. If you specify the <code>role</code> parameter, you must also specify a load balancer object with the <code>loadBalancers</code> parameter.</p> <important> <p>If your account has already created the Amazon ECS service-linked role, that role is used for your service unless you specify a role here. The service-linked role is required if your task definition uses the <code>awsvpc</code> network mode or if the service is configured to use service discovery, an external deployment controller, multiple target groups, or Elastic Inference accelerators in which case you don't specify a role here. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using-service-linked-roles.html">Using service-linked roles for Amazon ECS</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> </important> <p>If your specified role has a path other than <code>/</code>, 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 <code>bar</code> has a path of <code>/foo/</code> then you would specify <code>/foo/bar</code> as the role name. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names">Friendly names and paths</a> in the <i>IAM User Guide</i>.</p>
|
|
308
|
+
* @public
|
|
309
|
+
*/
|
|
310
|
+
role?: string | undefined;
|
|
311
|
+
/**
|
|
312
|
+
* <p>Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.</p>
|
|
313
|
+
* @public
|
|
314
|
+
*/
|
|
315
|
+
deploymentConfiguration?: DeploymentConfiguration | undefined;
|
|
316
|
+
/**
|
|
317
|
+
* <p>An array of placement constraint objects to use for tasks in your service. You can specify a maximum of 10 constraints for each task. This limit includes constraints in the task definition and those specified at runtime.</p>
|
|
318
|
+
* @public
|
|
319
|
+
*/
|
|
320
|
+
placementConstraints?: PlacementConstraint[] | undefined;
|
|
321
|
+
/**
|
|
322
|
+
* <p>The placement strategy objects to use for tasks in your service. You can specify a maximum of 5 strategy rules for each service.</p>
|
|
323
|
+
* @public
|
|
324
|
+
*/
|
|
325
|
+
placementStrategy?: PlacementStrategy[] | undefined;
|
|
326
|
+
/**
|
|
327
|
+
* <p>The network configuration for the service. This parameter is required for task definitions that use the <code>awsvpc</code> network mode to receive their own elastic network interface, and it isn't supported for other network modes. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html">Task networking</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
328
|
+
* @public
|
|
329
|
+
*/
|
|
330
|
+
networkConfiguration?: NetworkConfiguration | undefined;
|
|
331
|
+
/**
|
|
332
|
+
* <p>The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you do not specify a health check grace period value, the default value of 0 is used. If you do not use any of the health checks, then <code>healthCheckGracePeriodSeconds</code> is unused.</p> <p>If your service has more running tasks than desired, unhealthy tasks in the grace period might be stopped to reach the desired count.</p>
|
|
333
|
+
* @public
|
|
334
|
+
*/
|
|
335
|
+
healthCheckGracePeriodSeconds?: number | undefined;
|
|
336
|
+
/**
|
|
337
|
+
* <p>The scheduling strategy to use for the service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html">Services</a>.</p> <p>There are two service scheduler strategies available:</p> <ul> <li> <p> <code>REPLICA</code>-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 uses the <code>CODE_DEPLOY</code> or <code>EXTERNAL</code> deployment controller types.</p> </li> <li> <p> <code>DAEMON</code>-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. The service scheduler also evaluates the task placement constraints for running tasks and will stop tasks that don't meet the placement constraints. 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.</p> <note> <p>Tasks using the Fargate launch type or the <code>CODE_DEPLOY</code> or <code>EXTERNAL</code> deployment controller types don't support the <code>DAEMON</code> scheduling strategy.</p> </note> </li> </ul>
|
|
338
|
+
* @public
|
|
339
|
+
*/
|
|
340
|
+
schedulingStrategy?: SchedulingStrategy | undefined;
|
|
341
|
+
/**
|
|
342
|
+
* <p>The deployment controller to use for the service. If no deployment controller is specified, the default value of <code>ECS</code> is used.</p>
|
|
343
|
+
* @public
|
|
344
|
+
*/
|
|
345
|
+
deploymentController?: DeploymentController | undefined;
|
|
346
|
+
/**
|
|
347
|
+
* <p>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.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case-sensitive.</p> </li> <li> <p>Do not use <code>aws:</code>, <code>AWS:</code>, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.</p> </li> </ul>
|
|
348
|
+
* @public
|
|
349
|
+
*/
|
|
350
|
+
tags?: Tag[] | undefined;
|
|
351
|
+
/**
|
|
352
|
+
* <p>Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html">Tagging your Amazon ECS resources</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> <p>When you use Amazon ECS managed tags, you must set the <code>propagateTags</code> request parameter.</p>
|
|
353
|
+
* @public
|
|
354
|
+
*/
|
|
355
|
+
enableECSManagedTags?: boolean | undefined;
|
|
356
|
+
/**
|
|
357
|
+
* <p>Specifies whether to propagate the tags from the task definition to the task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the task during task creation. To add tags to a task after task creation, use the <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TagResource.html">TagResource</a> API action.</p> <p>You must set this to a value other than <code>NONE</code> when you use Cost Explorer. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/usage-reports.html">Amazon ECS usage reports</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> <p>The default is <code>NONE</code>.</p>
|
|
358
|
+
* @public
|
|
359
|
+
*/
|
|
360
|
+
propagateTags?: PropagateTags | undefined;
|
|
361
|
+
/**
|
|
362
|
+
* <p>Determines whether the execute command functionality is turned on for the service. If <code>true</code>, this enables execute command functionality on all containers in the service tasks.</p>
|
|
363
|
+
* @public
|
|
364
|
+
*/
|
|
365
|
+
enableExecuteCommand?: boolean | undefined;
|
|
366
|
+
/**
|
|
367
|
+
* <p>The configuration for this service to discover and connect to services, and be discovered by, and connected from, other services within a namespace.</p> <p>Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html">Service Connect</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
368
|
+
* @public
|
|
369
|
+
*/
|
|
370
|
+
serviceConnectConfiguration?: ServiceConnectConfiguration | undefined;
|
|
371
|
+
/**
|
|
372
|
+
* <p>The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume.</p>
|
|
373
|
+
* @public
|
|
374
|
+
*/
|
|
375
|
+
volumeConfigurations?: ServiceVolumeConfiguration[] | undefined;
|
|
376
|
+
/**
|
|
377
|
+
* <p>The VPC Lattice configuration for the service being created.</p>
|
|
378
|
+
* @public
|
|
379
|
+
*/
|
|
380
|
+
vpcLatticeConfigurations?: VpcLatticeConfiguration[] | undefined;
|
|
381
|
+
/**
|
|
382
|
+
* <p>The gateway connectors that attach the service to a gateway ingress path. You can specify at most one gateway connector.</p>
|
|
383
|
+
* @public
|
|
384
|
+
*/
|
|
385
|
+
gatewayConnectors?: GatewayConnector[] | undefined;
|
|
386
|
+
/**
|
|
387
|
+
* <p>The optional monitoring configuration for the service, which defines the resolution for the service-level <code>CPUUtilization</code> and <code>MemoryUtilization</code> Amazon CloudWatch metrics. When not specified, Amazon ECS uses the default resolution of <code>60</code> seconds.</p>
|
|
388
|
+
* @public
|
|
389
|
+
*/
|
|
390
|
+
monitoring?: MonitoringConfiguration | undefined;
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* <p>The summary of the current service revision configuration</p>
|
|
394
|
+
* @public
|
|
395
|
+
*/
|
|
396
|
+
export interface ServiceCurrentRevisionSummary {
|
|
397
|
+
/**
|
|
398
|
+
* <p>The ARN of the current service revision.</p>
|
|
399
|
+
* @public
|
|
400
|
+
*/
|
|
401
|
+
arn?: string | undefined;
|
|
402
|
+
/**
|
|
403
|
+
* <p>The number of requested tasks in the current service revision</p>
|
|
404
|
+
* @public
|
|
405
|
+
*/
|
|
406
|
+
requestedTaskCount?: number | undefined;
|
|
407
|
+
/**
|
|
408
|
+
* <p>The number of running tasks of the current service revision</p>
|
|
409
|
+
* @public
|
|
410
|
+
*/
|
|
411
|
+
runningTaskCount?: number | undefined;
|
|
412
|
+
/**
|
|
413
|
+
* <p>The number of pending tasks in the current service revision</p>
|
|
414
|
+
* @public
|
|
415
|
+
*/
|
|
416
|
+
pendingTaskCount?: number | undefined;
|
|
417
|
+
}
|
|
418
|
+
/**
|
|
419
|
+
* <p>The amount of ephemeral storage to allocate for the deployment.</p>
|
|
420
|
+
* @public
|
|
421
|
+
*/
|
|
422
|
+
export interface DeploymentEphemeralStorage {
|
|
423
|
+
/**
|
|
424
|
+
* <p>Specify an Key Management Service key ID to encrypt the ephemeral storage for deployment.</p>
|
|
425
|
+
* @public
|
|
426
|
+
*/
|
|
427
|
+
kmsKeyId?: string | undefined;
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* <p>The Service Connect resource. Each configuration maps a discovery name to a Cloud Map service name. The data is stored in Cloud Map as part of the Service Connect configuration for each discovery name of this Amazon ECS service.</p> <p>A task can resolve the <code>dnsName</code> for each of the <code>clientAliases</code> of a service. However a task can't resolve the discovery names. If you want to connect to a service, refer to the <code>ServiceConnectConfiguration</code> of that service for the list of <code>clientAliases</code> that you can use.</p>
|
|
431
|
+
* @public
|
|
432
|
+
*/
|
|
433
|
+
export interface ServiceConnectServiceResource {
|
|
434
|
+
/**
|
|
435
|
+
* <p>The discovery name of this Service Connect resource.</p> <p>The <code>discoveryName</code> is the name of the new Cloud Map service that Amazon ECS creates for this Amazon ECS service. This must be unique within the Cloud Map namespace. The name can contain up to 64 characters. The name can include lowercase letters, numbers, underscores (_), and hyphens (-). The name can't start with a hyphen.</p> <p>If the <code>discoveryName</code> isn't specified, the port mapping name from the task definition is used in <code>portName.namespace</code>.</p>
|
|
436
|
+
* @public
|
|
437
|
+
*/
|
|
438
|
+
discoveryName?: string | undefined;
|
|
439
|
+
/**
|
|
440
|
+
* <p>The Amazon Resource Name (ARN) for the service in Cloud Map that matches the discovery name for this Service Connect resource. You can use this ARN in other integrations with Cloud Map. However, Service Connect can't ensure connectivity outside of Amazon ECS.</p>
|
|
441
|
+
* @public
|
|
442
|
+
*/
|
|
443
|
+
discoveryArn?: string | undefined;
|
|
444
|
+
}
|
|
445
|
+
/**
|
|
446
|
+
* <p>The details of an Amazon ECS service deployment. This is used only when a service uses the <code>ECS</code> deployment controller type.</p>
|
|
447
|
+
* @public
|
|
448
|
+
*/
|
|
449
|
+
export interface Deployment {
|
|
450
|
+
/**
|
|
451
|
+
* <p>The ID of the deployment.</p>
|
|
452
|
+
* @public
|
|
453
|
+
*/
|
|
454
|
+
id?: string | undefined;
|
|
455
|
+
/**
|
|
456
|
+
* <p>The status of the deployment. The following describes each state.</p> <dl> <dt>PRIMARY</dt> <dd> <p>The most recent deployment of a service.</p> </dd> <dt>ACTIVE</dt> <dd> <p>A service deployment that still has running tasks, but are in the process of being replaced with a new <code>PRIMARY</code> deployment.</p> </dd> <dt>INACTIVE</dt> <dd> <p>A deployment that has been completely replaced.</p> </dd> </dl>
|
|
457
|
+
* @public
|
|
458
|
+
*/
|
|
459
|
+
status?: string | undefined;
|
|
460
|
+
/**
|
|
461
|
+
* <p>The most recent task definition that was specified for the tasks in the service to use.</p>
|
|
462
|
+
* @public
|
|
463
|
+
*/
|
|
464
|
+
taskDefinition?: string | undefined;
|
|
465
|
+
/**
|
|
466
|
+
* <p>The most recent desired count of tasks that was specified for the service to deploy or maintain.</p>
|
|
467
|
+
* @public
|
|
468
|
+
*/
|
|
469
|
+
desiredCount?: number | undefined;
|
|
470
|
+
/**
|
|
471
|
+
* <p>The number of tasks in the deployment that are in the <code>PENDING</code> status.</p>
|
|
472
|
+
* @public
|
|
473
|
+
*/
|
|
474
|
+
pendingCount?: number | undefined;
|
|
475
|
+
/**
|
|
476
|
+
* <p>The number of tasks in the deployment that are in the <code>RUNNING</code> status.</p>
|
|
477
|
+
* @public
|
|
478
|
+
*/
|
|
479
|
+
runningCount?: number | undefined;
|
|
480
|
+
/**
|
|
481
|
+
* <p>The number of consecutively failed tasks in the deployment. A task is considered a failure if the service scheduler can't launch the task, the task doesn't transition to a <code>RUNNING</code> state, or if it fails any of its defined health checks and is stopped.</p> <note> <p>Once a service deployment has one or more successfully running tasks, the failed task count resets to zero and stops being evaluated.</p> </note>
|
|
482
|
+
* @public
|
|
483
|
+
*/
|
|
484
|
+
failedTasks?: number | undefined;
|
|
485
|
+
/**
|
|
486
|
+
* <p>The Unix timestamp for the time when the service deployment was created.</p>
|
|
487
|
+
* @public
|
|
488
|
+
*/
|
|
489
|
+
createdAt?: Date | undefined;
|
|
490
|
+
/**
|
|
491
|
+
* <p>The Unix timestamp for the time when the service deployment was last updated.</p>
|
|
492
|
+
* @public
|
|
493
|
+
*/
|
|
494
|
+
updatedAt?: Date | undefined;
|
|
495
|
+
/**
|
|
496
|
+
* <p>The capacity provider strategy that the deployment is using.</p>
|
|
497
|
+
* @public
|
|
498
|
+
*/
|
|
499
|
+
capacityProviderStrategy?: CapacityProviderStrategyItem[] | undefined;
|
|
500
|
+
/**
|
|
501
|
+
* <p>The launch type the tasks in the service are using. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html">Amazon ECS Launch Types</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
502
|
+
* @public
|
|
503
|
+
*/
|
|
504
|
+
launchType?: LaunchType | undefined;
|
|
505
|
+
/**
|
|
506
|
+
* <p>The platform version that your tasks in the service run on. A platform version is only specified for tasks using the Fargate launch type. If one isn't specified, the <code>LATEST</code> platform version is used. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html">Fargate Platform Versions</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
507
|
+
* @public
|
|
508
|
+
*/
|
|
509
|
+
platformVersion?: string | undefined;
|
|
510
|
+
/**
|
|
511
|
+
* <p>The operating system that your tasks in the service, or tasks are running on. A platform family is specified only for tasks using the Fargate launch type. </p> <p> All tasks that run as part of this service must use the same <code>platformFamily</code> value as the service, for example, <code> LINUX.</code>.</p>
|
|
512
|
+
* @public
|
|
513
|
+
*/
|
|
514
|
+
platformFamily?: string | undefined;
|
|
515
|
+
/**
|
|
516
|
+
* <p>The VPC subnet and security group configuration for tasks that receive their own elastic network interface by using the <code>awsvpc</code> networking mode.</p>
|
|
517
|
+
* @public
|
|
518
|
+
*/
|
|
519
|
+
networkConfiguration?: NetworkConfiguration | undefined;
|
|
520
|
+
/**
|
|
521
|
+
* <note> <p>The <code>rolloutState</code> of a service is only returned for services that use the rolling update (<code>ECS</code>) deployment type that aren't behind a Classic Load Balancer.</p> </note> <p>The rollout state of the deployment. When a service deployment is started, it begins in an <code>IN_PROGRESS</code> state. When the service reaches a steady state, the deployment transitions to a <code>COMPLETED</code> state. If the service fails to reach a steady state and circuit breaker is turned on, the deployment transitions to a <code>FAILED</code> state. A deployment in <code>FAILED</code> state doesn't launch any new tasks. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeploymentCircuitBreaker.html">DeploymentCircuitBreaker</a>.</p>
|
|
522
|
+
* @public
|
|
523
|
+
*/
|
|
524
|
+
rolloutState?: DeploymentRolloutState | undefined;
|
|
525
|
+
/**
|
|
526
|
+
* <p>A description of the rollout state of a deployment.</p>
|
|
527
|
+
* @public
|
|
528
|
+
*/
|
|
529
|
+
rolloutStateReason?: string | undefined;
|
|
530
|
+
/**
|
|
531
|
+
* <p>The details of the Service Connect configuration that's used by this deployment. Compare the configuration between multiple deployments when troubleshooting issues with new deployments.</p> <p>The configuration for this service to discover and connect to services, and be discovered by, and connected from, other services within a namespace.</p> <p>Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html">Service Connect</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
532
|
+
* @public
|
|
533
|
+
*/
|
|
534
|
+
serviceConnectConfiguration?: ServiceConnectConfiguration | undefined;
|
|
535
|
+
/**
|
|
536
|
+
* <p>The list of Service Connect resources that are associated with this deployment. Each list entry maps a discovery name to a Cloud Map service name.</p>
|
|
537
|
+
* @public
|
|
538
|
+
*/
|
|
539
|
+
serviceConnectResources?: ServiceConnectServiceResource[] | undefined;
|
|
540
|
+
/**
|
|
541
|
+
* <p>The details of the volume that was <code>configuredAtLaunch</code>. You can configure different settings like the size, throughput, volumeType, and ecryption in <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ServiceManagedEBSVolumeConfiguration.html">ServiceManagedEBSVolumeConfiguration</a>. The <code>name</code> of the volume must match the <code>name</code> from the task definition.</p>
|
|
542
|
+
* @public
|
|
543
|
+
*/
|
|
544
|
+
volumeConfigurations?: ServiceVolumeConfiguration[] | undefined;
|
|
545
|
+
/**
|
|
546
|
+
* <p>The Fargate ephemeral storage settings for the deployment.</p>
|
|
547
|
+
* @public
|
|
548
|
+
*/
|
|
549
|
+
fargateEphemeralStorage?: DeploymentEphemeralStorage | undefined;
|
|
550
|
+
/**
|
|
551
|
+
* <p>The VPC Lattice configuration for the service deployment.</p>
|
|
552
|
+
* @public
|
|
553
|
+
*/
|
|
554
|
+
vpcLatticeConfigurations?: VpcLatticeConfiguration[] | undefined;
|
|
555
|
+
}
|
|
556
|
+
/**
|
|
557
|
+
* <p>The details for an event that's associated with a service.</p>
|
|
558
|
+
* @public
|
|
559
|
+
*/
|
|
560
|
+
export interface ServiceEvent {
|
|
561
|
+
/**
|
|
562
|
+
* <p>The ID string for the event.</p>
|
|
563
|
+
* @public
|
|
564
|
+
*/
|
|
565
|
+
id?: string | undefined;
|
|
566
|
+
/**
|
|
567
|
+
* <p>The Unix timestamp for the time when the event was triggered.</p>
|
|
568
|
+
* @public
|
|
569
|
+
*/
|
|
570
|
+
createdAt?: Date | undefined;
|
|
571
|
+
/**
|
|
572
|
+
* <p>The event message.</p>
|
|
573
|
+
* @public
|
|
574
|
+
*/
|
|
575
|
+
message?: string | undefined;
|
|
576
|
+
}
|
|
577
|
+
/**
|
|
578
|
+
* <p>A floating-point percentage of the desired number of tasks to place and keep running in the task set.</p>
|
|
579
|
+
* @public
|
|
580
|
+
*/
|
|
581
|
+
export interface Scale {
|
|
582
|
+
/**
|
|
583
|
+
* <p>The value, specified as a percent total of a service's <code>desiredCount</code>, to scale the task set. Accepted values are numbers between 0 and 100.</p>
|
|
584
|
+
* @public
|
|
585
|
+
*/
|
|
586
|
+
value?: number | undefined;
|
|
587
|
+
/**
|
|
588
|
+
* <p>The unit of measure for the scale value.</p>
|
|
589
|
+
* @public
|
|
590
|
+
*/
|
|
591
|
+
unit?: ScaleUnit | undefined;
|
|
592
|
+
}
|
|
593
|
+
/**
|
|
594
|
+
* <p>Information about a set of Amazon ECS tasks in either an CodeDeploy or an <code>EXTERNAL</code> 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.</p>
|
|
595
|
+
* @public
|
|
596
|
+
*/
|
|
597
|
+
export interface TaskSet {
|
|
598
|
+
/**
|
|
599
|
+
* <p>The ID of the task set.</p>
|
|
600
|
+
* @public
|
|
601
|
+
*/
|
|
602
|
+
id?: string | undefined;
|
|
603
|
+
/**
|
|
604
|
+
* <p>The Amazon Resource Name (ARN) of the task set.</p>
|
|
605
|
+
* @public
|
|
606
|
+
*/
|
|
607
|
+
taskSetArn?: string | undefined;
|
|
608
|
+
/**
|
|
609
|
+
* <p>The Amazon Resource Name (ARN) of the service the task set exists in.</p>
|
|
610
|
+
* @public
|
|
611
|
+
*/
|
|
612
|
+
serviceArn?: string | undefined;
|
|
613
|
+
/**
|
|
614
|
+
* <p>The Amazon Resource Name (ARN) of the cluster that the service that hosts the task set exists in.</p>
|
|
615
|
+
* @public
|
|
616
|
+
*/
|
|
617
|
+
clusterArn?: string | undefined;
|
|
618
|
+
/**
|
|
619
|
+
* <p>The tag specified when a task set is started. If an CodeDeploy deployment created the task set, the <code>startedBy</code> parameter is <code>CODE_DEPLOY</code>. If an external deployment created the task set, the <code>startedBy</code> field isn't used.</p>
|
|
620
|
+
* @public
|
|
621
|
+
*/
|
|
622
|
+
startedBy?: string | undefined;
|
|
623
|
+
/**
|
|
624
|
+
* <p>The external ID associated with the task set.</p> <p>If an CodeDeploy deployment created a task set, the <code>externalId</code> parameter contains the CodeDeploy deployment ID.</p> <p>If a task set is created for an external deployment and is associated with a service discovery registry, the <code>externalId</code> parameter contains the <code>ECS_TASK_SET_EXTERNAL_ID</code> Cloud Map attribute.</p>
|
|
625
|
+
* @public
|
|
626
|
+
*/
|
|
627
|
+
externalId?: string | undefined;
|
|
628
|
+
/**
|
|
629
|
+
* <p>The status of the task set. The following describes each state.</p> <dl> <dt>PRIMARY</dt> <dd> <p>The task set is serving production traffic.</p> </dd> <dt>ACTIVE</dt> <dd> <p>The task set isn't serving production traffic.</p> </dd> <dt>DRAINING</dt> <dd> <p>The tasks in the task set are being stopped, and their corresponding targets are being deregistered from their target group.</p> </dd> </dl>
|
|
630
|
+
* @public
|
|
631
|
+
*/
|
|
632
|
+
status?: string | undefined;
|
|
633
|
+
/**
|
|
634
|
+
* <p>The task definition that the task set is using.</p>
|
|
635
|
+
* @public
|
|
636
|
+
*/
|
|
637
|
+
taskDefinition?: string | undefined;
|
|
638
|
+
/**
|
|
639
|
+
* <p>The computed desired count for the task set. This is calculated by multiplying the service's <code>desiredCount</code> by the task set's <code>scale</code> percentage. The result is always rounded up. For example, if the computed desired count is 1.2, it rounds up to 2 tasks.</p>
|
|
640
|
+
* @public
|
|
641
|
+
*/
|
|
642
|
+
computedDesiredCount?: number | undefined;
|
|
643
|
+
/**
|
|
644
|
+
* <p>The number of tasks in the task set that are in the <code>PENDING</code> status during a deployment. A task in the <code>PENDING</code> state is preparing to enter the <code>RUNNING</code> state. A task set enters the <code>PENDING</code> status when it launches for the first time or when it's restarted after being in the <code>STOPPED</code> state.</p>
|
|
645
|
+
* @public
|
|
646
|
+
*/
|
|
647
|
+
pendingCount?: number | undefined;
|
|
648
|
+
/**
|
|
649
|
+
* <p>The number of tasks in the task set that are in the <code>RUNNING</code> status during a deployment. A task in the <code>RUNNING</code> state is running and ready for use.</p>
|
|
650
|
+
* @public
|
|
651
|
+
*/
|
|
652
|
+
runningCount?: number | undefined;
|
|
653
|
+
/**
|
|
654
|
+
* <p>The Unix timestamp for the time when the task set was created.</p>
|
|
655
|
+
* @public
|
|
656
|
+
*/
|
|
657
|
+
createdAt?: Date | undefined;
|
|
658
|
+
/**
|
|
659
|
+
* <p>The Unix timestamp for the time when the task set was last updated.</p>
|
|
660
|
+
* @public
|
|
661
|
+
*/
|
|
662
|
+
updatedAt?: Date | undefined;
|
|
663
|
+
/**
|
|
664
|
+
* <p>The launch type the tasks in the task set are using. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html">Amazon ECS launch types</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
665
|
+
* @public
|
|
666
|
+
*/
|
|
667
|
+
launchType?: LaunchType | undefined;
|
|
668
|
+
/**
|
|
669
|
+
* <p>The capacity provider strategy that are associated with the task set.</p>
|
|
670
|
+
* @public
|
|
671
|
+
*/
|
|
672
|
+
capacityProviderStrategy?: CapacityProviderStrategyItem[] | undefined;
|
|
673
|
+
/**
|
|
674
|
+
* <p>The Fargate platform version where the tasks in the task set are running. A platform version is only specified for tasks run on Fargate. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html">Fargate platform versions</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
675
|
+
* @public
|
|
676
|
+
*/
|
|
677
|
+
platformVersion?: string | undefined;
|
|
678
|
+
/**
|
|
679
|
+
* <p>The operating system that your tasks in the set are running on. A platform family is specified only for tasks that use the Fargate launch type. </p> <p> All tasks in the set must have the same value.</p>
|
|
680
|
+
* @public
|
|
681
|
+
*/
|
|
682
|
+
platformFamily?: string | undefined;
|
|
683
|
+
/**
|
|
684
|
+
* <p>The network configuration for the task set.</p>
|
|
685
|
+
* @public
|
|
686
|
+
*/
|
|
687
|
+
networkConfiguration?: NetworkConfiguration | undefined;
|
|
688
|
+
/**
|
|
689
|
+
* <p>Details on a load balancer that are used with a task set.</p>
|
|
690
|
+
* @public
|
|
691
|
+
*/
|
|
692
|
+
loadBalancers?: LoadBalancer[] | undefined;
|
|
693
|
+
/**
|
|
694
|
+
* <p>The details for the service discovery registries to assign to this task set. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service discovery</a>.</p>
|
|
695
|
+
* @public
|
|
696
|
+
*/
|
|
697
|
+
serviceRegistries?: ServiceRegistry[] | undefined;
|
|
698
|
+
/**
|
|
699
|
+
* <p>A floating-point percentage of your desired number of tasks to place and keep running in the task set.</p>
|
|
700
|
+
* @public
|
|
701
|
+
*/
|
|
702
|
+
scale?: Scale | undefined;
|
|
703
|
+
/**
|
|
704
|
+
* <p>The stability status. This indicates whether the task set has reached a steady state. If the following conditions are met, the task set are in <code>STEADY_STATE</code>:</p> <ul> <li> <p>The task <code>runningCount</code> is equal to the <code>computedDesiredCount</code>.</p> </li> <li> <p>The <code>pendingCount</code> is <code>0</code>.</p> </li> <li> <p>There are no tasks that are running on container instances in the <code>DRAINING</code> status.</p> </li> <li> <p>All tasks are reporting a healthy status from the load balancers, service discovery, and container health checks.</p> </li> </ul> <p>If any of those conditions aren't met, the stability status returns <code>STABILIZING</code>.</p>
|
|
705
|
+
* @public
|
|
706
|
+
*/
|
|
707
|
+
stabilityStatus?: StabilityStatus | undefined;
|
|
708
|
+
/**
|
|
709
|
+
* <p>The Unix timestamp for the time when the task set stability status was retrieved.</p>
|
|
710
|
+
* @public
|
|
711
|
+
*/
|
|
712
|
+
stabilityStatusAt?: Date | undefined;
|
|
713
|
+
/**
|
|
714
|
+
* <p>The metadata that you apply to the task set to help you categorize and organize them. Each tag consists of a key and an optional value. You define both.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case-sensitive.</p> </li> <li> <p>Do not use <code>aws:</code>, <code>AWS:</code>, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.</p> </li> </ul>
|
|
715
|
+
* @public
|
|
716
|
+
*/
|
|
717
|
+
tags?: Tag[] | undefined;
|
|
718
|
+
/**
|
|
719
|
+
* <p>The Fargate ephemeral storage settings for the task set.</p>
|
|
720
|
+
* @public
|
|
721
|
+
*/
|
|
722
|
+
fargateEphemeralStorage?: DeploymentEphemeralStorage | undefined;
|
|
723
|
+
}
|
|
724
|
+
/**
|
|
725
|
+
* <p>Details on a service within a cluster.</p>
|
|
726
|
+
* @public
|
|
727
|
+
*/
|
|
728
|
+
export interface Service {
|
|
729
|
+
/**
|
|
730
|
+
* <p>The ARN that identifies the service. For more information about the ARN format, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#ecs-resource-ids">Amazon Resource Name (ARN)</a> in the <i>Amazon ECS Developer Guide</i>.</p>
|
|
731
|
+
* @public
|
|
732
|
+
*/
|
|
733
|
+
serviceArn?: string | undefined;
|
|
734
|
+
/**
|
|
735
|
+
* <p>The name of your service. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. Service names must be unique within a cluster. However, you can have similarly named services in multiple clusters within a Region or across multiple Regions.</p>
|
|
736
|
+
* @public
|
|
737
|
+
*/
|
|
738
|
+
serviceName?: string | undefined;
|
|
739
|
+
/**
|
|
740
|
+
* <p>The Amazon Resource Name (ARN) of the cluster that hosts the service.</p>
|
|
741
|
+
* @public
|
|
742
|
+
*/
|
|
743
|
+
clusterArn?: string | undefined;
|
|
744
|
+
/**
|
|
745
|
+
* <p>A list of Elastic Load Balancing load balancer objects. It contains the load balancer name, the container name, and the container port to access from the load balancer. The container name is as it appears in a container definition.</p>
|
|
746
|
+
* @public
|
|
747
|
+
*/
|
|
748
|
+
loadBalancers?: LoadBalancer[] | undefined;
|
|
749
|
+
/**
|
|
750
|
+
* <p>The details for the service discovery registries to assign to this service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service Discovery</a>.</p>
|
|
751
|
+
* @public
|
|
752
|
+
*/
|
|
753
|
+
serviceRegistries?: ServiceRegistry[] | undefined;
|
|
754
|
+
/**
|
|
755
|
+
* <p>The status of the service. The valid values are <code>ACTIVE</code>, <code>DRAINING</code>, or <code>INACTIVE</code>.</p>
|
|
756
|
+
* @public
|
|
757
|
+
*/
|
|
758
|
+
status?: string | undefined;
|
|
759
|
+
/**
|
|
760
|
+
* <p>The desired number of instantiations of the task definition to keep running on the service. This value is specified when the service is created with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html">CreateService</a> , and it can be modified with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateService.html">UpdateService</a>.</p>
|
|
761
|
+
* @public
|
|
762
|
+
*/
|
|
763
|
+
desiredCount?: number | undefined;
|
|
764
|
+
/**
|
|
765
|
+
* <p>The number of tasks in the cluster that are in the <code>RUNNING</code> state.</p>
|
|
766
|
+
* @public
|
|
767
|
+
*/
|
|
768
|
+
runningCount?: number | undefined;
|
|
769
|
+
/**
|
|
770
|
+
* <p>The number of tasks in the cluster that are in the <code>PENDING</code> state.</p>
|
|
771
|
+
* @public
|
|
772
|
+
*/
|
|
773
|
+
pendingCount?: number | undefined;
|
|
774
|
+
/**
|
|
775
|
+
* <p>The launch type the service is using. When using the DescribeServices API, this field is omitted if the service was created using a capacity provider strategy.</p>
|
|
776
|
+
* @public
|
|
777
|
+
*/
|
|
778
|
+
launchType?: LaunchType | undefined;
|
|
779
|
+
/**
|
|
780
|
+
* <p>The capacity provider strategy the service uses. When using the DescribeServices API, this field is omitted if the service was created using a launch type.</p>
|
|
781
|
+
* @public
|
|
782
|
+
*/
|
|
783
|
+
capacityProviderStrategy?: CapacityProviderStrategyItem[] | undefined;
|
|
784
|
+
/**
|
|
785
|
+
* <p>The platform version to run your service on. A platform version is only specified for tasks that are hosted on Fargate. If one isn't specified, the <code>LATEST</code> platform version is used. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html">Fargate Platform Versions</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
786
|
+
* @public
|
|
787
|
+
*/
|
|
788
|
+
platformVersion?: string | undefined;
|
|
789
|
+
/**
|
|
790
|
+
* <p>The operating system that your tasks in the service run on. A platform family is specified only for tasks using the Fargate launch type. </p> <p> All tasks that run as part of this service must use the same <code>platformFamily</code> value as the service (for example, <code>LINUX</code>).</p>
|
|
791
|
+
* @public
|
|
792
|
+
*/
|
|
793
|
+
platformFamily?: string | undefined;
|
|
794
|
+
/**
|
|
795
|
+
* <p>The task definition to use for tasks in the service. This value is specified when the service is created with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html">CreateService</a>, and it can be modified with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateService.html">UpdateService</a>.</p>
|
|
796
|
+
* @public
|
|
797
|
+
*/
|
|
798
|
+
taskDefinition?: string | undefined;
|
|
799
|
+
/**
|
|
800
|
+
* <p>Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.</p>
|
|
801
|
+
* @public
|
|
802
|
+
*/
|
|
803
|
+
deploymentConfiguration?: DeploymentConfiguration | undefined;
|
|
804
|
+
/**
|
|
805
|
+
* <p>Information about a set of Amazon ECS tasks in either an CodeDeploy or an <code>EXTERNAL</code> 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.</p>
|
|
806
|
+
* @public
|
|
807
|
+
*/
|
|
808
|
+
taskSets?: TaskSet[] | undefined;
|
|
809
|
+
/**
|
|
810
|
+
* <p>The current state of deployments for the service.</p>
|
|
811
|
+
* @public
|
|
812
|
+
*/
|
|
813
|
+
deployments?: Deployment[] | undefined;
|
|
814
|
+
/**
|
|
815
|
+
* <p>The ARN of the IAM role that's associated with the service. It allows the Amazon ECS container agent to register container instances with an Elastic Load Balancing load balancer.</p>
|
|
816
|
+
* @public
|
|
817
|
+
*/
|
|
818
|
+
roleArn?: string | undefined;
|
|
819
|
+
/**
|
|
820
|
+
* <p>The event stream for your service. A maximum of 100 of the latest events are displayed.</p>
|
|
821
|
+
* @public
|
|
822
|
+
*/
|
|
823
|
+
events?: ServiceEvent[] | undefined;
|
|
824
|
+
/**
|
|
825
|
+
* <p>The Unix timestamp for the time when the service was created.</p>
|
|
826
|
+
* @public
|
|
827
|
+
*/
|
|
828
|
+
createdAt?: Date | undefined;
|
|
829
|
+
/**
|
|
830
|
+
* <p>The ARN of the current service deployment.</p>
|
|
831
|
+
* @public
|
|
832
|
+
*/
|
|
833
|
+
currentServiceDeployment?: string | undefined;
|
|
834
|
+
/**
|
|
835
|
+
* <p>The list of the service revisions.</p>
|
|
836
|
+
* @public
|
|
837
|
+
*/
|
|
838
|
+
currentServiceRevisions?: ServiceCurrentRevisionSummary[] | undefined;
|
|
839
|
+
/**
|
|
840
|
+
* <p>The placement constraints for the tasks in the service.</p>
|
|
841
|
+
* @public
|
|
842
|
+
*/
|
|
843
|
+
placementConstraints?: PlacementConstraint[] | undefined;
|
|
844
|
+
/**
|
|
845
|
+
* <p>The placement strategy that determines how tasks for the service are placed.</p>
|
|
846
|
+
* @public
|
|
847
|
+
*/
|
|
848
|
+
placementStrategy?: PlacementStrategy[] | undefined;
|
|
849
|
+
/**
|
|
850
|
+
* <p>The VPC subnet and security group configuration for tasks that receive their own elastic network interface by using the <code>awsvpc</code> networking mode.</p>
|
|
851
|
+
* @public
|
|
852
|
+
*/
|
|
853
|
+
networkConfiguration?: NetworkConfiguration | undefined;
|
|
854
|
+
/**
|
|
855
|
+
* <p>The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started.</p> <p>If your service has more running tasks than desired, unhealthy tasks in the grace period might be stopped to reach the desired count.</p>
|
|
856
|
+
* @public
|
|
857
|
+
*/
|
|
858
|
+
healthCheckGracePeriodSeconds?: number | undefined;
|
|
859
|
+
/**
|
|
860
|
+
* <p>The scheduling strategy to use for the service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html">Services</a>.</p> <p>There are two service scheduler strategies available.</p> <ul> <li> <p> <code>REPLICA</code>-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.</p> </li> <li> <p> <code>DAEMON</code>-The daemon scheduling strategy deploys exactly one task on each active container instance. This task meets all of the task placement constraints that you specify in your cluster. The service scheduler also evaluates the task placement constraints for running tasks. It stop tasks that don't meet the placement constraints.</p> <note> <p>Fargate tasks don't support the <code>DAEMON</code> scheduling strategy.</p> </note> </li> </ul>
|
|
861
|
+
* @public
|
|
862
|
+
*/
|
|
863
|
+
schedulingStrategy?: SchedulingStrategy | undefined;
|
|
864
|
+
/**
|
|
865
|
+
* <p>The deployment controller type the service is using. </p>
|
|
866
|
+
* @public
|
|
867
|
+
*/
|
|
868
|
+
deploymentController?: DeploymentController | undefined;
|
|
869
|
+
/**
|
|
870
|
+
* <p>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. You define bot the key and value.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case-sensitive.</p> </li> <li> <p>Do not use <code>aws:</code>, <code>AWS:</code>, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.</p> </li> </ul>
|
|
871
|
+
* @public
|
|
872
|
+
*/
|
|
873
|
+
tags?: Tag[] | undefined;
|
|
874
|
+
/**
|
|
875
|
+
* <p>The principal that created the service.</p>
|
|
876
|
+
* @public
|
|
877
|
+
*/
|
|
878
|
+
createdBy?: string | undefined;
|
|
879
|
+
/**
|
|
880
|
+
* <p>Determines whether to use Amazon ECS managed tags for the tasks in the service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html">Tagging Your Amazon ECS Resources</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
|
|
881
|
+
* @public
|
|
882
|
+
*/
|
|
883
|
+
enableECSManagedTags?: boolean | undefined;
|
|
884
|
+
/**
|
|
885
|
+
* <p>Determines whether to propagate the tags from the task definition or the service to the task. If no value is specified, the tags aren't propagated.</p>
|
|
886
|
+
* @public
|
|
887
|
+
*/
|
|
888
|
+
propagateTags?: PropagateTags | undefined;
|
|
889
|
+
/**
|
|
890
|
+
* <p>Determines whether the execute command functionality is turned on for the service. If <code>true</code>, the execute command functionality is turned on for all containers in tasks as part of the service.</p>
|
|
891
|
+
* @public
|
|
892
|
+
*/
|
|
893
|
+
enableExecuteCommand?: boolean | undefined;
|
|
894
|
+
/**
|
|
895
|
+
* <p>Indicates whether to use Availability Zone rebalancing for the service.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html">Balancing an Amazon ECS service across Availability Zones</a> in the <i> <i>Amazon Elastic Container Service Developer Guide</i> </i>.</p> <p>The default behavior of <code>AvailabilityZoneRebalancing</code> differs between create and update requests:</p> <ul> <li> <p>For create service requests, when no value is specified for <code>AvailabilityZoneRebalancing</code>, Amazon ECS defaults the value to <code>ENABLED</code>.</p> </li> <li> <p>For update service requests, when no value is specified for <code>AvailabilityZoneRebalancing</code>, Amazon ECS defaults to the existing service’s <code>AvailabilityZoneRebalancing</code> value. If the service never had an <code>AvailabilityZoneRebalancing</code> value set, Amazon ECS treats this as <code>DISABLED</code>.</p> </li> </ul>
|
|
896
|
+
* @public
|
|
897
|
+
*/
|
|
898
|
+
availabilityZoneRebalancing?: AvailabilityZoneRebalancing | undefined;
|
|
899
|
+
/**
|
|
900
|
+
* <p>Identifies whether an ECS Service is an Express Service managed by ECS, or managed by the customer. The valid values are <code>ECS</code> and <code>CUSTOMER</code> </p>
|
|
901
|
+
* @public
|
|
902
|
+
*/
|
|
903
|
+
resourceManagementType?: ResourceManagementType | undefined;
|
|
904
|
+
}
|
|
905
|
+
/**
|
|
906
|
+
*
|
|
907
|
+
* @public
|
|
908
|
+
*/
|
|
909
|
+
export interface CreateServiceResponse {
|
|
910
|
+
/**
|
|
911
|
+
* <p>The full description of your service following the create call.</p> <p>A service will return either a <code>capacityProviderStrategy</code> or <code>launchType</code> parameter, but not both, depending where one was specified when it was created.</p> <p>If a service is using the <code>ECS</code> deployment controller, the <code>deploymentController</code> and <code>taskSets</code> parameters will not be returned.</p> <p>if the service uses the <code>CODE_DEPLOY</code> deployment controller, the <code>deploymentController</code>, <code>taskSets</code> and <code>deployments</code> parameters will be returned, however the <code>deployments</code> parameter will be an empty list.</p> <p>The response includes a <code>lifecycleHookDetails</code> field, which is an empty array when the service is created or updated. The values are populated when a lifecycle hook executes and are available as part of the service deployment details (<a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeServiceDeployments.html">DescribeServiceDeployments</a>).</p>
|
|
912
|
+
* @public
|
|
913
|
+
*/
|
|
914
|
+
service?: Service | undefined;
|
|
915
|
+
}
|
|
916
|
+
/**
|
|
917
|
+
* @public
|
|
918
|
+
*/
|
|
919
|
+
export interface DeleteExpressGatewayServiceRequest {
|
|
920
|
+
/**
|
|
921
|
+
* <p>The Amazon Resource Name (ARN) of the Express service to delete. The ARN uniquely identifies the service within your Amazon Web Services account and region.</p>
|
|
922
|
+
* @public
|
|
923
|
+
*/
|
|
924
|
+
serviceArn: string | undefined;
|
|
925
|
+
}
|
|
926
|
+
/**
|
|
927
|
+
* @public
|
|
928
|
+
*/
|
|
929
|
+
export interface DeleteExpressGatewayServiceResponse {
|
|
930
|
+
/**
|
|
931
|
+
* <p>The full description of the deleted express service.</p>
|
|
932
|
+
* @public
|
|
933
|
+
*/
|
|
934
|
+
service?: ECSExpressGatewayService | undefined;
|
|
935
|
+
}
|
|
936
|
+
/**
|
|
937
|
+
*
|
|
938
|
+
* @public
|
|
939
|
+
*/
|
|
940
|
+
export interface DeleteServiceRequest {
|
|
941
|
+
/**
|
|
942
|
+
* <p>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.</p>
|
|
943
|
+
* @public
|
|
944
|
+
*/
|
|
945
|
+
cluster?: string | undefined;
|
|
946
|
+
/**
|
|
947
|
+
* <p>The name of the service to delete.</p>
|
|
948
|
+
* @public
|
|
949
|
+
*/
|
|
950
|
+
service: string | undefined;
|
|
951
|
+
/**
|
|
952
|
+
* <p>If <code>true</code>, allows you to delete a service even if it wasn't scaled down to zero tasks. It's only necessary to use this if the service uses the <code>REPLICA</code> scheduling strategy.</p>
|
|
953
|
+
* @public
|
|
954
|
+
*/
|
|
955
|
+
force?: boolean | undefined;
|
|
956
|
+
}
|
|
957
|
+
/**
|
|
958
|
+
*
|
|
959
|
+
* @public
|
|
960
|
+
*/
|
|
961
|
+
export interface DeleteServiceResponse {
|
|
962
|
+
/**
|
|
963
|
+
* <p>The full description of the deleted service.</p>
|
|
964
|
+
* @public
|
|
965
|
+
*/
|
|
966
|
+
service?: Service | undefined;
|
|
967
|
+
}
|
|
968
|
+
/**
|
|
969
|
+
* @public
|
|
970
|
+
*/
|
|
971
|
+
export interface DescribeExpressGatewayServiceRequest {
|
|
972
|
+
/**
|
|
973
|
+
* <p>The Amazon Resource Name (ARN) of the Express service to describe. The ARN uniquely identifies the service within your Amazon Web Services account and region.</p>
|
|
974
|
+
* @public
|
|
975
|
+
*/
|
|
976
|
+
serviceArn: string | undefined;
|
|
977
|
+
/**
|
|
978
|
+
* <p>Specifies additional information to include in the response. Valid values are <code>TAGS</code> to include resource tags associated with the Express service.</p>
|
|
979
|
+
* @public
|
|
980
|
+
*/
|
|
981
|
+
include?: ExpressGatewayServiceInclude[] | undefined;
|
|
982
|
+
}
|
|
983
|
+
/**
|
|
984
|
+
* @public
|
|
985
|
+
*/
|
|
986
|
+
export interface DescribeExpressGatewayServiceResponse {
|
|
987
|
+
/**
|
|
988
|
+
* <p>The full description of the described express service.</p>
|
|
989
|
+
* @public
|
|
990
|
+
*/
|
|
991
|
+
service?: ECSExpressGatewayService | undefined;
|
|
992
|
+
}
|
|
993
|
+
/**
|
|
994
|
+
*
|
|
995
|
+
* @public
|
|
996
|
+
*/
|
|
997
|
+
export interface DescribeServicesRequest {
|
|
998
|
+
/**
|
|
999
|
+
* <p>The short name or full Amazon Resource Name (ARN)the cluster that hosts the service to describe. If you do not specify a cluster, the default cluster is assumed. This parameter is required if the service or services you are describing were launched in any cluster other than the default cluster.</p>
|
|
1000
|
+
* @public
|
|
1001
|
+
*/
|
|
1002
|
+
cluster?: string | undefined;
|
|
1003
|
+
/**
|
|
1004
|
+
* <p>A list of services to describe. You may specify up to 10 services to describe in a single operation.</p>
|
|
1005
|
+
* @public
|
|
1006
|
+
*/
|
|
1007
|
+
services: string[] | undefined;
|
|
1008
|
+
/**
|
|
1009
|
+
* <p>Determines whether you want to see the resource tags for the service. If <code>TAGS</code> is specified, the tags are included in the response. If this field is omitted, tags aren't included in the response.</p>
|
|
1010
|
+
* @public
|
|
1011
|
+
*/
|
|
1012
|
+
include?: ServiceField[] | undefined;
|
|
1013
|
+
}
|
|
1014
|
+
/**
|
|
1015
|
+
*
|
|
1016
|
+
* @public
|
|
1017
|
+
*/
|
|
1018
|
+
export interface DescribeServicesResponse {
|
|
1019
|
+
/**
|
|
1020
|
+
* <p>The list of services described.</p>
|
|
1021
|
+
* @public
|
|
1022
|
+
*/
|
|
1023
|
+
services?: Service[] | undefined;
|
|
1024
|
+
/**
|
|
1025
|
+
* <p>Any failures associated with the call.</p>
|
|
1026
|
+
* @public
|
|
1027
|
+
*/
|
|
1028
|
+
failures?: Failure[] | undefined;
|
|
1029
|
+
}
|
|
1030
|
+
/**
|
|
1031
|
+
* @public
|
|
1032
|
+
*/
|
|
1033
|
+
export interface ListServiceDeploymentsRequest {
|
|
1034
|
+
/**
|
|
1035
|
+
* <p>The ARN or name of the service</p>
|
|
1036
|
+
* @public
|
|
1037
|
+
*/
|
|
1038
|
+
service: string | undefined;
|
|
1039
|
+
/**
|
|
1040
|
+
* <p>The cluster that hosts the service. This can either be the cluster name or ARN. Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. If you don't specify a cluster, <code>default</code> is used.</p>
|
|
1041
|
+
* @public
|
|
1042
|
+
*/
|
|
1043
|
+
cluster?: string | undefined;
|
|
1044
|
+
/**
|
|
1045
|
+
* <p>An optional filter you can use to narrow the results. If you do not specify a status, then all status values are included in the result.</p>
|
|
1046
|
+
* @public
|
|
1047
|
+
*/
|
|
1048
|
+
status?: ServiceDeploymentStatus[] | undefined;
|
|
1049
|
+
/**
|
|
1050
|
+
* <p>An optional filter you can use to narrow the results by the service creation date. If you do not specify a value, the result includes all services created before the current time. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.</p>
|
|
1051
|
+
* @public
|
|
1052
|
+
*/
|
|
1053
|
+
createdAt?: CreatedAt | undefined;
|
|
1054
|
+
/**
|
|
1055
|
+
* <p>The <code>nextToken</code> value returned from a <code>ListServiceDeployments</code> request indicating that more results are available to fulfill the request and further calls are needed. If you provided <code>maxResults</code>, it's possible the number of results is fewer than <code>maxResults</code>.</p>
|
|
1056
|
+
* @public
|
|
1057
|
+
*/
|
|
1058
|
+
nextToken?: string | undefined;
|
|
1059
|
+
/**
|
|
1060
|
+
* <p>The maximum number of service deployment results that <code>ListServiceDeployments</code> returned in paginated output. When this parameter is used, <code>ListServiceDeployments</code> only returns <code>maxResults</code> results in a single page along with a <code>nextToken</code> response element. The remaining results of the initial request can be seen by sending another <code>ListServiceDeployments</code> request with the returned <code>nextToken</code> value. This value can be between 1 and 100. If this parameter isn't used, then <code>ListServiceDeployments</code> returns up to 20 results and a <code>nextToken</code> value if applicable.</p>
|
|
1061
|
+
* @public
|
|
1062
|
+
*/
|
|
1063
|
+
maxResults?: number | undefined;
|
|
1064
|
+
}
|
|
1065
|
+
/**
|
|
1066
|
+
* <p>The service deployment properties that are retured when you call <code>ListServiceDeployments</code>.</p> <p>This provides a high-level overview of the service deployment. </p>
|
|
1067
|
+
* @public
|
|
1068
|
+
*/
|
|
1069
|
+
export interface ServiceDeploymentBrief {
|
|
1070
|
+
/**
|
|
1071
|
+
* <p>The ARN of the service deployment.</p>
|
|
1072
|
+
* @public
|
|
1073
|
+
*/
|
|
1074
|
+
serviceDeploymentArn?: string | undefined;
|
|
1075
|
+
/**
|
|
1076
|
+
* <p>The ARN of the service for this service deployment.</p>
|
|
1077
|
+
* @public
|
|
1078
|
+
*/
|
|
1079
|
+
serviceArn?: string | undefined;
|
|
1080
|
+
/**
|
|
1081
|
+
* <p>The ARN of the cluster that hosts the service.</p>
|
|
1082
|
+
* @public
|
|
1083
|
+
*/
|
|
1084
|
+
clusterArn?: string | undefined;
|
|
1085
|
+
/**
|
|
1086
|
+
* <p>The time that the service deployment statred. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.</p>
|
|
1087
|
+
* @public
|
|
1088
|
+
*/
|
|
1089
|
+
startedAt?: Date | undefined;
|
|
1090
|
+
/**
|
|
1091
|
+
* <p>The time that the service deployment was created. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.</p>
|
|
1092
|
+
* @public
|
|
1093
|
+
*/
|
|
1094
|
+
createdAt?: Date | undefined;
|
|
1095
|
+
/**
|
|
1096
|
+
* <p>The time that the service deployment completed. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.</p>
|
|
1097
|
+
* @public
|
|
1098
|
+
*/
|
|
1099
|
+
finishedAt?: Date | undefined;
|
|
1100
|
+
/**
|
|
1101
|
+
* <p>The ARN of the service revision being deplyed.</p>
|
|
1102
|
+
* @public
|
|
1103
|
+
*/
|
|
1104
|
+
targetServiceRevisionArn?: string | undefined;
|
|
1105
|
+
/**
|
|
1106
|
+
* <p>The status of the service deployment</p>
|
|
1107
|
+
* @public
|
|
1108
|
+
*/
|
|
1109
|
+
status?: ServiceDeploymentStatus | undefined;
|
|
1110
|
+
/**
|
|
1111
|
+
* <p>Information about why the service deployment is in the current status. For example, the circuit breaker detected a deployment failure.</p>
|
|
1112
|
+
* @public
|
|
1113
|
+
*/
|
|
1114
|
+
statusReason?: string | undefined;
|
|
1115
|
+
}
|
|
1116
|
+
/**
|
|
1117
|
+
* @public
|
|
1118
|
+
*/
|
|
1119
|
+
export interface ListServiceDeploymentsResponse {
|
|
1120
|
+
/**
|
|
1121
|
+
* <p>An overview of the service deployment, including the following properties:</p> <ul> <li> <p>The ARN of the service deployment.</p> </li> <li> <p>The ARN of the service being deployed.</p> </li> <li> <p>The ARN of the cluster that hosts the service in the service deployment.</p> </li> <li> <p>The time that the service deployment started.</p> </li> <li> <p>The time that the service deployment completed.</p> </li> <li> <p>The service deployment status.</p> </li> <li> <p>Information about why the service deployment is in the current state.</p> </li> <li> <p>The ARN of the service revision that is being deployed.</p> </li> </ul>
|
|
1122
|
+
* @public
|
|
1123
|
+
*/
|
|
1124
|
+
serviceDeployments?: ServiceDeploymentBrief[] | undefined;
|
|
1125
|
+
/**
|
|
1126
|
+
* <p>The <code>nextToken</code> value to include in a future <code>ListServiceDeployments</code> request. When the results of a <code>ListServiceDeployments</code> request exceed <code>maxResults</code>, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.</p>
|
|
1127
|
+
* @public
|
|
1128
|
+
*/
|
|
1129
|
+
nextToken?: string | undefined;
|
|
1130
|
+
}
|
|
1131
|
+
/**
|
|
1132
|
+
*
|
|
1133
|
+
* @public
|
|
1134
|
+
*/
|
|
1135
|
+
export interface ListServicesRequest {
|
|
1136
|
+
/**
|
|
1137
|
+
* <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when filtering the <code>ListServices</code> results. If you do not specify a cluster, the default cluster is assumed.</p>
|
|
1138
|
+
* @public
|
|
1139
|
+
*/
|
|
1140
|
+
cluster?: string | undefined;
|
|
1141
|
+
/**
|
|
1142
|
+
* <p>The <code>nextToken</code> value returned from a <code>ListServices</code> request indicating that more results are available to fulfill the request and further calls will be needed. If <code>maxResults</code> was provided, it is possible the number of results to be fewer than <code>maxResults</code>.</p> <note> <p>This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.</p> </note>
|
|
1143
|
+
* @public
|
|
1144
|
+
*/
|
|
1145
|
+
nextToken?: string | undefined;
|
|
1146
|
+
/**
|
|
1147
|
+
* <p>The maximum number of service results that <code>ListServices</code> returned in paginated output. When this parameter is used, <code>ListServices</code> only returns <code>maxResults</code> results in a single page along with a <code>nextToken</code> response element. The remaining results of the initial request can be seen by sending another <code>ListServices</code> request with the returned <code>nextToken</code> value. This value can be between 1 and 100. If this parameter isn't used, then <code>ListServices</code> returns up to 10 results and a <code>nextToken</code> value if applicable.</p>
|
|
1148
|
+
* @public
|
|
1149
|
+
*/
|
|
1150
|
+
maxResults?: number | undefined;
|
|
1151
|
+
/**
|
|
1152
|
+
* <p>The launch type to use when filtering the <code>ListServices</code> results.</p>
|
|
1153
|
+
* @public
|
|
1154
|
+
*/
|
|
1155
|
+
launchType?: LaunchType | undefined;
|
|
1156
|
+
/**
|
|
1157
|
+
* <p>The scheduling strategy to use when filtering the <code>ListServices</code> results.</p>
|
|
1158
|
+
* @public
|
|
1159
|
+
*/
|
|
1160
|
+
schedulingStrategy?: SchedulingStrategy | undefined;
|
|
1161
|
+
/**
|
|
1162
|
+
* <p>The resourceManagementType type to use when filtering the <code>ListServices</code> results.</p>
|
|
1163
|
+
* @public
|
|
1164
|
+
*/
|
|
1165
|
+
resourceManagementType?: ResourceManagementType | undefined;
|
|
1166
|
+
}
|
|
1167
|
+
/**
|
|
1168
|
+
*
|
|
1169
|
+
* @public
|
|
1170
|
+
*/
|
|
1171
|
+
export interface ListServicesResponse {
|
|
1172
|
+
/**
|
|
1173
|
+
* <p>The list of full ARN entries for each service that's associated with the specified cluster.</p>
|
|
1174
|
+
* @public
|
|
1175
|
+
*/
|
|
1176
|
+
serviceArns?: string[] | undefined;
|
|
1177
|
+
/**
|
|
1178
|
+
* <p>The <code>nextToken</code> value to include in a future <code>ListServices</code> request. When the results of a <code>ListServices</code> request exceed <code>maxResults</code>, this value can be used to retrieve the next page of results. This value is <code>null</code> when there are no more results to return.</p>
|
|
1179
|
+
* @public
|
|
1180
|
+
*/
|
|
1181
|
+
nextToken?: string | undefined;
|
|
1182
|
+
}
|
|
1183
|
+
/**
|
|
1184
|
+
* @public
|
|
1185
|
+
*/
|
|
1186
|
+
export interface StopServiceDeploymentRequest {
|
|
1187
|
+
/**
|
|
1188
|
+
* <p>The ARN of the service deployment that you want to stop.</p>
|
|
1189
|
+
* @public
|
|
1190
|
+
*/
|
|
1191
|
+
serviceDeploymentArn: string | undefined;
|
|
1192
|
+
/**
|
|
1193
|
+
* <p>How you want Amazon ECS to stop the service. </p> <p>The valid values are <code>ROLLBACK</code>.</p>
|
|
1194
|
+
* @public
|
|
1195
|
+
*/
|
|
1196
|
+
stopType?: StopServiceDeploymentStopType | undefined;
|
|
1197
|
+
}
|
|
1198
|
+
/**
|
|
1199
|
+
* @public
|
|
1200
|
+
*/
|
|
1201
|
+
export interface StopServiceDeploymentResponse {
|
|
1202
|
+
/**
|
|
1203
|
+
* <p>The ARN of the stopped service deployment.</p>
|
|
1204
|
+
* @public
|
|
1205
|
+
*/
|
|
1206
|
+
serviceDeploymentArn?: string | undefined;
|
|
1207
|
+
}
|
|
1208
|
+
/**
|
|
1209
|
+
* @public
|
|
1210
|
+
*/
|
|
1211
|
+
export interface UpdateExpressGatewayServiceRequest {
|
|
1212
|
+
/**
|
|
1213
|
+
* <p>The Amazon Resource Name (ARN) of the Express service to update.</p>
|
|
1214
|
+
* @public
|
|
1215
|
+
*/
|
|
1216
|
+
serviceArn: string | undefined;
|
|
1217
|
+
/**
|
|
1218
|
+
* <p>The Amazon Resource Name (ARN) of the task execution role for the Express service.</p>
|
|
1219
|
+
* @public
|
|
1220
|
+
*/
|
|
1221
|
+
executionRoleArn?: string | undefined;
|
|
1222
|
+
/**
|
|
1223
|
+
* <p>The path on the container for Application Load Balancer health checks.</p>
|
|
1224
|
+
* @public
|
|
1225
|
+
*/
|
|
1226
|
+
healthCheckPath?: string | undefined;
|
|
1227
|
+
/**
|
|
1228
|
+
* <p>The primary container configuration for the Express service.</p>
|
|
1229
|
+
* @public
|
|
1230
|
+
*/
|
|
1231
|
+
primaryContainer?: ExpressGatewayContainer | undefined;
|
|
1232
|
+
/**
|
|
1233
|
+
* <p>The Amazon Resource Name (ARN) of the IAM role for containers in this task.</p>
|
|
1234
|
+
* @public
|
|
1235
|
+
*/
|
|
1236
|
+
taskRoleArn?: string | undefined;
|
|
1237
|
+
/**
|
|
1238
|
+
* <p>The network configuration for the Express service tasks. By default, the network configuration for an Express service uses the default VPC.</p>
|
|
1239
|
+
* @public
|
|
1240
|
+
*/
|
|
1241
|
+
networkConfiguration?: ExpressGatewayServiceNetworkConfiguration | undefined;
|
|
1242
|
+
/**
|
|
1243
|
+
* <p>The number of CPU units used by the task.</p>
|
|
1244
|
+
* @public
|
|
1245
|
+
*/
|
|
1246
|
+
cpu?: string | undefined;
|
|
1247
|
+
/**
|
|
1248
|
+
* <p>The amount of memory (in MiB) used by the task.</p>
|
|
1249
|
+
* @public
|
|
1250
|
+
*/
|
|
1251
|
+
memory?: string | undefined;
|
|
1252
|
+
/**
|
|
1253
|
+
* <p>The CPU architecture that the task runs on. If you don't specify a value, the service keeps its current architecture.</p> <p>Valid values:</p> <ul> <li> <p> <code>X86_64</code> - The x86 64-bit architecture.</p> </li> <li> <p> <code>ARM64</code> - The 64-bit ARM architecture.</p> </li> </ul> <p>Changing the architecture starts a new deployment that replaces the running tasks. Ensure that the container image you specify supports the architecture you choose. The operating system family for an Express service is always <code>LINUX</code>.</p> <p>You can't specify <code>cpuArchitecture</code> together with <code>taskDefinitionArn</code>.</p>
|
|
1254
|
+
* @public
|
|
1255
|
+
*/
|
|
1256
|
+
cpuArchitecture?: ExpressCpuArchitecture | undefined;
|
|
1257
|
+
/**
|
|
1258
|
+
* <p>The auto-scaling configuration for the Express service.</p>
|
|
1259
|
+
* @public
|
|
1260
|
+
*/
|
|
1261
|
+
scalingTarget?: ExpressGatewayScalingTarget | undefined;
|
|
1262
|
+
/**
|
|
1263
|
+
* <p>The Amazon Resource Name (ARN) of a task definition to use to update the Express Gateway service. This allows you to manage your own task definition, giving you more control over the service configuration such as adding sidecar containers.</p> <p>The task definition must have a container named <code>Main</code> with a single TCP port mapping that includes a container port and port name. The task definition must also have <code>FARGATE</code> compatibility.</p> <p>If you provide a task definition ARN, you cannot also specify <code>primaryContainer</code>, <code>executionRoleArn</code>, <code>taskRoleArn</code>, <code>cpu</code>, <code>memory</code>, or <code>cpuArchitecture</code>.</p>
|
|
1264
|
+
* @public
|
|
1265
|
+
*/
|
|
1266
|
+
taskDefinitionArn?: string | undefined;
|
|
1267
|
+
}
|
|
1268
|
+
/**
|
|
1269
|
+
* <p>An object that describes an Express service to be updated.</p>
|
|
1270
|
+
* @public
|
|
1271
|
+
*/
|
|
1272
|
+
export interface UpdatedExpressGatewayService {
|
|
1273
|
+
/**
|
|
1274
|
+
* <p>The ARN of the Express service that is being updated.</p>
|
|
1275
|
+
* @public
|
|
1276
|
+
*/
|
|
1277
|
+
serviceArn?: string | undefined;
|
|
1278
|
+
/**
|
|
1279
|
+
* <p>The cluster associated with the Express service that is being updated.</p>
|
|
1280
|
+
* @public
|
|
1281
|
+
*/
|
|
1282
|
+
cluster?: string | undefined;
|
|
1283
|
+
/**
|
|
1284
|
+
* <p>The name of the Express service that is being updated.</p>
|
|
1285
|
+
* @public
|
|
1286
|
+
*/
|
|
1287
|
+
serviceName?: string | undefined;
|
|
1288
|
+
/**
|
|
1289
|
+
* <p>The status of the Express service that is being updated.</p>
|
|
1290
|
+
* @public
|
|
1291
|
+
*/
|
|
1292
|
+
status?: ExpressGatewayServiceStatus | undefined;
|
|
1293
|
+
/**
|
|
1294
|
+
* <p>The configuration to which the current Express service is being updated to.</p>
|
|
1295
|
+
* @public
|
|
1296
|
+
*/
|
|
1297
|
+
targetConfiguration?: ExpressGatewayServiceConfiguration | undefined;
|
|
1298
|
+
/**
|
|
1299
|
+
* <p>The Unix timestamp for when the Express service that is being updated was created.</p>
|
|
1300
|
+
* @public
|
|
1301
|
+
*/
|
|
1302
|
+
createdAt?: Date | undefined;
|
|
1303
|
+
/**
|
|
1304
|
+
* <p>The Unix timestamp for when the Express service that is being updated was most recently updated.</p>
|
|
1305
|
+
* @public
|
|
1306
|
+
*/
|
|
1307
|
+
updatedAt?: Date | undefined;
|
|
1308
|
+
}
|
|
1309
|
+
/**
|
|
1310
|
+
* @public
|
|
1311
|
+
*/
|
|
1312
|
+
export interface UpdateExpressGatewayServiceResponse {
|
|
1313
|
+
/**
|
|
1314
|
+
* <p>The full description of your express gateway service following the update call.</p>
|
|
1315
|
+
* @public
|
|
1316
|
+
*/
|
|
1317
|
+
service?: UpdatedExpressGatewayService | undefined;
|
|
1318
|
+
}
|
|
1319
|
+
/**
|
|
1320
|
+
*
|
|
1321
|
+
* @public
|
|
1322
|
+
*/
|
|
1323
|
+
export interface UpdateServiceRequest {
|
|
1324
|
+
/**
|
|
1325
|
+
* <p>The short name or full Amazon Resource Name (ARN) of the cluster that your service runs on. If you do not specify a cluster, the default cluster is assumed.</p> <p>You can't change the cluster name.</p>
|
|
1326
|
+
* @public
|
|
1327
|
+
*/
|
|
1328
|
+
cluster?: string | undefined;
|
|
1329
|
+
/**
|
|
1330
|
+
* <p>The name of the service to update.</p>
|
|
1331
|
+
* @public
|
|
1332
|
+
*/
|
|
1333
|
+
service: string | undefined;
|
|
1334
|
+
/**
|
|
1335
|
+
* <p>The number of instantiations of the task to place and keep running in your service.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1336
|
+
* @public
|
|
1337
|
+
*/
|
|
1338
|
+
desiredCount?: number | undefined;
|
|
1339
|
+
/**
|
|
1340
|
+
* <p>The <code>family</code> and <code>revision</code> (<code>family:revision</code>) or full ARN of the task definition to run in your service. If a <code>revision</code> is not specified, the latest <code>ACTIVE</code> revision is used. If you modify the task definition with <code>UpdateService</code>, Amazon ECS spawns a task with the new version of the task definition and then stops an old task after the new version is running.</p> <p>This parameter triggers a new service deployment.</p>
|
|
1341
|
+
* @public
|
|
1342
|
+
*/
|
|
1343
|
+
taskDefinition?: string | undefined;
|
|
1344
|
+
/**
|
|
1345
|
+
* <p>The details of a capacity provider strategy. You can set a capacity provider when you create a cluster, run a task, or update a service.</p> <note> <p>If you want to use Amazon ECS Managed Instances, you must use the <code>capacityProviderStrategy</code> request parameter.</p> </note> <p>When you use Fargate, the capacity providers are <code>FARGATE</code> or <code>FARGATE_SPOT</code>.</p> <p>When you use Amazon EC2, the capacity providers are Auto Scaling groups.</p> <p>You can change capacity providers for rolling deployments and blue/green deployments.</p> <p>The following list provides the valid transitions:</p> <ul> <li> <p>Update the Fargate launch type to an Auto Scaling group capacity provider.</p> </li> <li> <p>Update the Amazon EC2 launch type to a Fargate capacity provider.</p> </li> <li> <p>Update the Fargate capacity provider to an Auto Scaling group capacity provider.</p> </li> <li> <p>Update the Amazon EC2 capacity provider to a Fargate capacity provider. </p> </li> <li> <p>Update the Auto Scaling group or Fargate capacity provider back to the launch type.</p> <p>Pass an empty list in the <code>capacityProviderStrategy</code> parameter.</p> </li> </ul> <p>For information about Amazon Web Services CDK considerations, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/update-service-parameters.html">Amazon Web Services CDK considerations</a>.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1346
|
+
* @public
|
|
1347
|
+
*/
|
|
1348
|
+
capacityProviderStrategy?: CapacityProviderStrategyItem[] | undefined;
|
|
1349
|
+
/**
|
|
1350
|
+
* <p>Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1351
|
+
* @public
|
|
1352
|
+
*/
|
|
1353
|
+
deploymentConfiguration?: DeploymentConfiguration | undefined;
|
|
1354
|
+
/**
|
|
1355
|
+
* <p>Indicates whether to use Availability Zone rebalancing for the service.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html">Balancing an Amazon ECS service across Availability Zones</a> in the <i> <i>Amazon Elastic Container Service Developer Guide</i> </i>.</p> <p>The default behavior of <code>AvailabilityZoneRebalancing</code> differs between create and update requests:</p> <ul> <li> <p>For create service requests, when no value is specified for <code>AvailabilityZoneRebalancing</code>, Amazon ECS defaults the value to <code>ENABLED</code>.</p> </li> <li> <p>For update service requests, when no value is specified for <code>AvailabilityZoneRebalancing</code>, Amazon ECS defaults to the existing service’s <code>AvailabilityZoneRebalancing</code> value. If the service never had an <code>AvailabilityZoneRebalancing</code> value set, Amazon ECS treats this as <code>DISABLED</code>.</p> </li> </ul> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1356
|
+
* @public
|
|
1357
|
+
*/
|
|
1358
|
+
availabilityZoneRebalancing?: AvailabilityZoneRebalancing | undefined;
|
|
1359
|
+
/**
|
|
1360
|
+
* <p>An object representing the network configuration for the service.</p> <p>This parameter triggers a new service deployment.</p>
|
|
1361
|
+
* @public
|
|
1362
|
+
*/
|
|
1363
|
+
networkConfiguration?: NetworkConfiguration | undefined;
|
|
1364
|
+
/**
|
|
1365
|
+
* <p>An array of task placement constraint objects to update the service to use. If no value is specified, the existing placement constraints for the service will remain unchanged. If this value is specified, it will override any existing placement constraints defined for the service. To remove all existing placement constraints, specify an empty array.</p> <p>You can specify a maximum of 10 constraints for each task. This limit includes constraints in the task definition and those specified at runtime.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1366
|
+
* @public
|
|
1367
|
+
*/
|
|
1368
|
+
placementConstraints?: PlacementConstraint[] | undefined;
|
|
1369
|
+
/**
|
|
1370
|
+
* <p>The task placement strategy objects to update the service to use. If no value is specified, the existing placement strategy for the service will remain unchanged. If this value is specified, it will override the existing placement strategy defined for the service. To remove an existing placement strategy, specify an empty object.</p> <p>You can specify a maximum of five strategy rules for each service.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1371
|
+
* @public
|
|
1372
|
+
*/
|
|
1373
|
+
placementStrategy?: PlacementStrategy[] | undefined;
|
|
1374
|
+
/**
|
|
1375
|
+
* <p>The platform version that your tasks in the service run on. A platform version is only specified for tasks using the Fargate launch type. If a platform version is not specified, the <code>LATEST</code> platform version is used. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html">Fargate Platform Versions</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> <p>This parameter triggers a new service deployment.</p>
|
|
1376
|
+
* @public
|
|
1377
|
+
*/
|
|
1378
|
+
platformVersion?: string | undefined;
|
|
1379
|
+
/**
|
|
1380
|
+
* <p>Determines whether to force a new deployment of the service. By default, deployments aren't forced. You can use this option to start a new deployment with no service definition changes. For example, you can update a service's tasks to use a newer Docker image with the same image/tag combination (<code>my_image:latest</code>) or to roll Fargate tasks onto a newer platform version.</p>
|
|
1381
|
+
* @public
|
|
1382
|
+
*/
|
|
1383
|
+
forceNewDeployment?: boolean | undefined;
|
|
1384
|
+
/**
|
|
1385
|
+
* <p>The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of <code>0</code> is used. If you don't use any of the health checks, then <code>healthCheckGracePeriodSeconds</code> is unused.</p> <p>If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up.</p> <p>If your service has more running tasks than desired, unhealthy tasks in the grace period might be stopped to reach the desired count.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1386
|
+
* @public
|
|
1387
|
+
*/
|
|
1388
|
+
healthCheckGracePeriodSeconds?: number | undefined;
|
|
1389
|
+
/**
|
|
1390
|
+
* <p>The deployment controller to use for the service. </p>
|
|
1391
|
+
* @public
|
|
1392
|
+
*/
|
|
1393
|
+
deploymentController?: DeploymentController | undefined;
|
|
1394
|
+
/**
|
|
1395
|
+
* <p>If <code>true</code>, this enables execute command functionality on all task containers.</p> <p>If you do not want to override the value that was set when the service was created, you can set this to <code>null</code> when performing this action.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1396
|
+
* @public
|
|
1397
|
+
*/
|
|
1398
|
+
enableExecuteCommand?: boolean | undefined;
|
|
1399
|
+
/**
|
|
1400
|
+
* <p>Determines whether to turn on Amazon ECS managed tags for the tasks in the service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html">Tagging Your Amazon ECS Resources</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> <p>Only tasks launched after the update will reflect the update. To update the tags on all tasks, set <code>forceNewDeployment</code> to <code>true</code>, so that Amazon ECS starts new tasks with the updated tags.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1401
|
+
* @public
|
|
1402
|
+
*/
|
|
1403
|
+
enableECSManagedTags?: boolean | undefined;
|
|
1404
|
+
/**
|
|
1405
|
+
* <note> <p>You must have a service-linked role when you update this property</p> </note> <p>A list of Elastic Load Balancing load balancer objects. It contains the load balancer name, the container name, and the container port to access from the load balancer. The container name is as it appears in a container definition.</p> <p>When you add, update, or remove a load balancer configuration, Amazon ECS starts new tasks with the updated Elastic Load Balancing configuration, and then stops the old tasks when the new tasks are running.</p> <p>For services that use rolling updates, you can add, update, or remove Elastic Load Balancing target groups. You can update from a single target group to multiple target groups and from multiple target groups to a single target group.</p> <p>For services that use blue/green deployments, you can update Elastic Load Balancing target groups by using <code> <a href="https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeployment.html">CreateDeployment</a> </code> through CodeDeploy. Note that multiple target groups are not supported for blue/green deployments. For more information see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/register-multiple-targetgroups.html">Register multiple target groups with a service</a> in the <i>Amazon Elastic Container Service Developer Guide</i>. </p> <p>For services that use the external deployment controller, you can add, update, or remove load balancers by using <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateTaskSet.html">CreateTaskSet</a>. Note that multiple target groups are not supported for external deployments. For more information see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/register-multiple-targetgroups.html">Register multiple target groups with a service</a> in the <i>Amazon Elastic Container Service Developer Guide</i>. </p> <p>You can remove existing <code>loadBalancers</code> by passing an empty list.</p> <p>This parameter triggers a new service deployment.</p>
|
|
1406
|
+
* @public
|
|
1407
|
+
*/
|
|
1408
|
+
loadBalancers?: LoadBalancer[] | undefined;
|
|
1409
|
+
/**
|
|
1410
|
+
* <p>Determines whether to propagate the tags from the task definition or the service to the task. If no value is specified, the tags aren't propagated.</p> <p>Only tasks launched after the update will reflect the update. To update the tags on all tasks, set <code>forceNewDeployment</code> to <code>true</code>, so that Amazon ECS starts new tasks with the updated tags.</p> <p>This parameter doesn't trigger a new service deployment.</p>
|
|
1411
|
+
* @public
|
|
1412
|
+
*/
|
|
1413
|
+
propagateTags?: PropagateTags | undefined;
|
|
1414
|
+
/**
|
|
1415
|
+
* <note> <p>You must have a service-linked role when you update this property.</p> <p>For more information about the role see the <code>CreateService</code> request parameter <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html#ECS-CreateService-request-role"> <code>role</code> </a>. </p> </note> <p>The details for the service discovery registries to assign to this service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service Discovery</a>.</p> <p>When you add, update, or remove the service registries configuration, Amazon ECS starts new tasks with the updated service registries configuration, and then stops the old tasks when the new tasks are running.</p> <p>You can remove existing <code>serviceRegistries</code> by passing an empty list.</p> <p>This parameter triggers a new service deployment.</p>
|
|
1416
|
+
* @public
|
|
1417
|
+
*/
|
|
1418
|
+
serviceRegistries?: ServiceRegistry[] | undefined;
|
|
1419
|
+
/**
|
|
1420
|
+
* <p>The configuration for this service to discover and connect to services, and be discovered by, and connected from, other services within a namespace.</p> <p>Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html">Service Connect</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p> <p>This parameter triggers a new service deployment.</p>
|
|
1421
|
+
* @public
|
|
1422
|
+
*/
|
|
1423
|
+
serviceConnectConfiguration?: ServiceConnectConfiguration | undefined;
|
|
1424
|
+
/**
|
|
1425
|
+
* <p>The details of the volume that was <code>configuredAtLaunch</code>. You can configure the size, volumeType, IOPS, throughput, snapshot and encryption in <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ServiceManagedEBSVolumeConfiguration.html">ServiceManagedEBSVolumeConfiguration</a>. The <code>name</code> of the volume must match the <code>name</code> from the task definition. If set to null, no new deployment is triggered. Otherwise, if this configuration differs from the existing one, it triggers a new deployment.</p> <p>This parameter triggers a new service deployment.</p>
|
|
1426
|
+
* @public
|
|
1427
|
+
*/
|
|
1428
|
+
volumeConfigurations?: ServiceVolumeConfiguration[] | undefined;
|
|
1429
|
+
/**
|
|
1430
|
+
* <p>An object representing the VPC Lattice configuration for the service being updated.</p> <p>This parameter triggers a new service deployment.</p>
|
|
1431
|
+
* @public
|
|
1432
|
+
*/
|
|
1433
|
+
vpcLatticeConfigurations?: VpcLatticeConfiguration[] | undefined;
|
|
1434
|
+
/**
|
|
1435
|
+
* <p>The updated set of gateway connectors that connect the service to a gateway ingress path. A service supports no more than one gateway connector.</p>
|
|
1436
|
+
* @public
|
|
1437
|
+
*/
|
|
1438
|
+
gatewayConnectors?: GatewayConnector[] | undefined;
|
|
1439
|
+
/**
|
|
1440
|
+
* <p>The optional monitoring configuration for the service, which defines the resolution for the service-level <code>CPUUtilization</code> and <code>MemoryUtilization</code> Amazon CloudWatch metrics. When not specified, Amazon ECS uses the default resolution of <code>60</code> seconds.</p>
|
|
1441
|
+
* @public
|
|
1442
|
+
*/
|
|
1443
|
+
monitoring?: MonitoringConfiguration | undefined;
|
|
1444
|
+
}
|
|
1445
|
+
/**
|
|
1446
|
+
*
|
|
1447
|
+
* @public
|
|
1448
|
+
*/
|
|
1449
|
+
export interface UpdateServiceResponse {
|
|
1450
|
+
/**
|
|
1451
|
+
* <p>The full description of your service following the update call.</p> <p>The response includes a <code>lifecycleHookDetails</code> field, which is an empty array when the service is created or updated. The values are populated when a lifecycle hook executes and are available as part of the service deployment details (<a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeServiceDeployments.html">DescribeServiceDeployments</a>).</p>
|
|
1452
|
+
* @public
|
|
1453
|
+
*/
|
|
1454
|
+
service?: Service | undefined;
|
|
1455
|
+
}
|
|
1456
|
+
/**
|
|
1457
|
+
* @public
|
|
1458
|
+
*/
|
|
1459
|
+
export interface UpdateServicePrimaryTaskSetRequest {
|
|
1460
|
+
/**
|
|
1461
|
+
* <p>The short name or full Amazon Resource Name (ARN) of the cluster that hosts the service that the task set exists in.</p>
|
|
1462
|
+
* @public
|
|
1463
|
+
*/
|
|
1464
|
+
cluster: string | undefined;
|
|
1465
|
+
/**
|
|
1466
|
+
* <p>The short name or full Amazon Resource Name (ARN) of the service that the task set exists in.</p>
|
|
1467
|
+
* @public
|
|
1468
|
+
*/
|
|
1469
|
+
service: string | undefined;
|
|
1470
|
+
/**
|
|
1471
|
+
* <p>The short name or full Amazon Resource Name (ARN) of the task set to set as the primary task set in the deployment.</p>
|
|
1472
|
+
* @public
|
|
1473
|
+
*/
|
|
1474
|
+
primaryTaskSet: string | undefined;
|
|
1475
|
+
}
|
|
1476
|
+
/**
|
|
1477
|
+
* @public
|
|
1478
|
+
*/
|
|
1479
|
+
export interface UpdateServicePrimaryTaskSetResponse {
|
|
1480
|
+
/**
|
|
1481
|
+
* <p>The details about the task set.</p>
|
|
1482
|
+
* @public
|
|
1483
|
+
*/
|
|
1484
|
+
taskSet?: TaskSet | undefined;
|
|
1485
|
+
}
|
|
1486
|
+
/**
|
|
1487
|
+
* @public
|
|
1488
|
+
*/
|
|
1489
|
+
export interface DescribeServiceRevisionsRequest {
|
|
1490
|
+
/**
|
|
1491
|
+
* <p>The ARN of the service revision. </p> <p>You can specify a maximum of 20 ARNs.</p> <p>You can call <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServiceDeployments.html">ListServiceDeployments</a> to get the ARNs.</p>
|
|
1492
|
+
* @public
|
|
1493
|
+
*/
|
|
1494
|
+
serviceRevisionArns: string[] | undefined;
|
|
1495
|
+
}
|
|
1496
|
+
/**
|
|
1497
|
+
* <p>The details about the container image a service revision uses. </p> <p>To ensure that all tasks in a service use the same container image, Amazon ECS resolves container image names and any image tags specified in the task definition to container image digests. </p> <p>After the container image digest has been established, Amazon ECS uses the digest to start any other desired tasks, and for any future service and service revision updates. This leads to all tasks in a service always running identical container images, resulting in version consistency for your software. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html#deployment-container-image-stability">Container image resolution</a> in the Amazon ECS Developer Guide.</p>
|
|
1498
|
+
* @public
|
|
1499
|
+
*/
|
|
1500
|
+
export interface ContainerImage {
|
|
1501
|
+
/**
|
|
1502
|
+
* <p>The name of the container.</p>
|
|
1503
|
+
* @public
|
|
1504
|
+
*/
|
|
1505
|
+
containerName?: string | undefined;
|
|
1506
|
+
/**
|
|
1507
|
+
* <p>The container image digest.</p>
|
|
1508
|
+
* @public
|
|
1509
|
+
*/
|
|
1510
|
+
imageDigest?: string | undefined;
|
|
1511
|
+
/**
|
|
1512
|
+
* <p>The container image. </p>
|
|
1513
|
+
* @public
|
|
1514
|
+
*/
|
|
1515
|
+
image?: string | undefined;
|
|
1516
|
+
}
|
|
1517
|
+
/**
|
|
1518
|
+
* <p>The Application Auto Scaling policy created by Amazon ECS when you create an Express service.</p>
|
|
1519
|
+
* @public
|
|
1520
|
+
*/
|
|
1521
|
+
export interface ManagedApplicationAutoScalingPolicy {
|
|
1522
|
+
/**
|
|
1523
|
+
* <p>The Amazon Resource Name (ARN) of the Application Auto Scaling policy associated with the Express service.</p>
|
|
1524
|
+
* @public
|
|
1525
|
+
*/
|
|
1526
|
+
arn?: string | undefined;
|
|
1527
|
+
/**
|
|
1528
|
+
* <p>The status of Application Auto Scaling policy creation.</p>
|
|
1529
|
+
* @public
|
|
1530
|
+
*/
|
|
1531
|
+
status: ManagedResourceStatus | undefined;
|
|
1532
|
+
/**
|
|
1533
|
+
* <p>Information about why the Application Auto Scaling policy is in the current status.</p>
|
|
1534
|
+
* @public
|
|
1535
|
+
*/
|
|
1536
|
+
statusReason?: string | undefined;
|
|
1537
|
+
/**
|
|
1538
|
+
* <p>The Unix timestamp for when the Application Auto Scaling policy was last updated.</p>
|
|
1539
|
+
* @public
|
|
1540
|
+
*/
|
|
1541
|
+
updatedAt: Date | undefined;
|
|
1542
|
+
/**
|
|
1543
|
+
* <p>The type of Application Auto Scaling policy associated with the Express service. Valid values are <code>TargetTrackingScaling</code>, <code>StepScaling</code>, and <code>PredictiveScaling</code>.</p>
|
|
1544
|
+
* @public
|
|
1545
|
+
*/
|
|
1546
|
+
policyType: string | undefined;
|
|
1547
|
+
/**
|
|
1548
|
+
* <p>The target value for the auto scaling metric.</p>
|
|
1549
|
+
* @public
|
|
1550
|
+
*/
|
|
1551
|
+
targetValue: number | undefined;
|
|
1552
|
+
/**
|
|
1553
|
+
* <p>The metric used for auto scaling decisions. The available metrics are <code>ECSServiceAverageCPUUtilization</code>, <code>ECSServiceAverageMemoryUtilization</code>, and <code>ALBRequestCOuntPerTarget</code>.</p>
|
|
1554
|
+
* @public
|
|
1555
|
+
*/
|
|
1556
|
+
metric: string | undefined;
|
|
1557
|
+
}
|
|
1558
|
+
/**
|
|
1559
|
+
* <p>Represents a scalable target.</p>
|
|
1560
|
+
* @public
|
|
1561
|
+
*/
|
|
1562
|
+
export interface ManagedScalableTarget {
|
|
1563
|
+
/**
|
|
1564
|
+
* <p>The ARN of the scalable target.</p>
|
|
1565
|
+
* @public
|
|
1566
|
+
*/
|
|
1567
|
+
arn?: string | undefined;
|
|
1568
|
+
/**
|
|
1569
|
+
* <p>The status of the scalable target.</p>
|
|
1570
|
+
* @public
|
|
1571
|
+
*/
|
|
1572
|
+
status: ManagedResourceStatus | undefined;
|
|
1573
|
+
/**
|
|
1574
|
+
* <p>Information about why the scalable target is in the current status.</p>
|
|
1575
|
+
* @public
|
|
1576
|
+
*/
|
|
1577
|
+
statusReason?: string | undefined;
|
|
1578
|
+
/**
|
|
1579
|
+
* <p>The Unix timestamp for when the target was most recently updated.</p>
|
|
1580
|
+
* @public
|
|
1581
|
+
*/
|
|
1582
|
+
updatedAt: Date | undefined;
|
|
1583
|
+
/**
|
|
1584
|
+
* <p>The minimum value to scale to in response to a scale-in activity.</p>
|
|
1585
|
+
* @public
|
|
1586
|
+
*/
|
|
1587
|
+
minCapacity: number | undefined;
|
|
1588
|
+
/**
|
|
1589
|
+
* <p>The maximum value to scale to in response to a scale-out activity.</p>
|
|
1590
|
+
* @public
|
|
1591
|
+
*/
|
|
1592
|
+
maxCapacity: number | undefined;
|
|
1593
|
+
}
|
|
1594
|
+
/**
|
|
1595
|
+
* <p>The auto scaling configuration created by Amazon ECS for an Express service.</p>
|
|
1596
|
+
* @public
|
|
1597
|
+
*/
|
|
1598
|
+
export interface ManagedAutoScaling {
|
|
1599
|
+
/**
|
|
1600
|
+
* <p>Represents a scalable target.</p>
|
|
1601
|
+
* @public
|
|
1602
|
+
*/
|
|
1603
|
+
scalableTarget?: ManagedScalableTarget | undefined;
|
|
1604
|
+
/**
|
|
1605
|
+
* <p>The policy used for auto scaling.</p>
|
|
1606
|
+
* @public
|
|
1607
|
+
*/
|
|
1608
|
+
applicationAutoScalingPolicies?: ManagedApplicationAutoScalingPolicy[] | undefined;
|
|
1609
|
+
}
|
|
1610
|
+
/**
|
|
1611
|
+
* <p>The Application Load Balancer resources that a gateway created and manages for a connection.</p>
|
|
1612
|
+
* @public
|
|
1613
|
+
*/
|
|
1614
|
+
export interface GatewayConnectionAlbResources {
|
|
1615
|
+
/**
|
|
1616
|
+
* <p>The Amazon Resource Name (ARN) of the Amazon Web Services Certificate Manager certificate that is attached to the load balancer listener.</p>
|
|
1617
|
+
* @public
|
|
1618
|
+
*/
|
|
1619
|
+
acmCertificateArn?: string | undefined;
|
|
1620
|
+
/**
|
|
1621
|
+
* <p>The Amazon Resource Name (ARN) of the load balancer.</p>
|
|
1622
|
+
* @public
|
|
1623
|
+
*/
|
|
1624
|
+
loadBalancerArn?: string | undefined;
|
|
1625
|
+
/**
|
|
1626
|
+
* <p>The Amazon Resource Names (ARNs) of the security groups that the gateway attaches to the load balancer.</p>
|
|
1627
|
+
* @public
|
|
1628
|
+
*/
|
|
1629
|
+
loadBalancerSecurityGroupArns?: string[] | undefined;
|
|
1630
|
+
/**
|
|
1631
|
+
* <p>The Amazon Resource Name (ARN) of the listener on the load balancer.</p>
|
|
1632
|
+
* @public
|
|
1633
|
+
*/
|
|
1634
|
+
listenerArn?: string | undefined;
|
|
1635
|
+
/**
|
|
1636
|
+
* <p>The Amazon Resource Name (ARN) of the listener rule that routes production traffic to the service.</p>
|
|
1637
|
+
* @public
|
|
1638
|
+
*/
|
|
1639
|
+
listenerRuleArn?: string | undefined;
|
|
1640
|
+
/**
|
|
1641
|
+
* <p>The Amazon Resource Name (ARN) of the listener rule that routes test traffic to the service during progressive deployments.</p>
|
|
1642
|
+
* @public
|
|
1643
|
+
*/
|
|
1644
|
+
testListenerRuleArn?: string | undefined;
|
|
1645
|
+
/**
|
|
1646
|
+
* <p>The Amazon Resource Name (ARN) of the target group that receives production traffic.</p>
|
|
1647
|
+
* @public
|
|
1648
|
+
*/
|
|
1649
|
+
targetGroupArn?: string | undefined;
|
|
1650
|
+
/**
|
|
1651
|
+
* <p>The Amazon Resource Name (ARN) of the alternate target group that the gateway uses during progressive deployments.</p>
|
|
1652
|
+
* @public
|
|
1653
|
+
*/
|
|
1654
|
+
alternateTargetGroupArn?: string | undefined;
|
|
1655
|
+
}
|
|
1656
|
+
/**
|
|
1657
|
+
* <p>The gateway-managed infrastructure resources for a connection, as a union keyed by gateway type.</p>
|
|
1658
|
+
* @public
|
|
1659
|
+
*/
|
|
1660
|
+
export type GatewayConnectionResources = GatewayConnectionResources.HostSharedAlbMember | GatewayConnectionResources.$UnknownMember;
|
|
1661
|
+
/**
|
|
1662
|
+
* @public
|
|
1663
|
+
*/
|
|
1664
|
+
export declare namespace GatewayConnectionResources {
|
|
1665
|
+
/**
|
|
1666
|
+
* <p>The Application Load Balancer resources for a host-based, shared ALB gateway.</p>
|
|
1667
|
+
* @public
|
|
1668
|
+
*/
|
|
1669
|
+
interface HostSharedAlbMember {
|
|
1670
|
+
hostSharedAlb: GatewayConnectionAlbResources[];
|
|
1671
|
+
$unknown?: never;
|
|
1672
|
+
}
|
|
1673
|
+
/**
|
|
1674
|
+
* @public
|
|
1675
|
+
*/
|
|
1676
|
+
interface $UnknownMember {
|
|
1677
|
+
hostSharedAlb?: never;
|
|
1678
|
+
$unknown: [string, any];
|
|
1679
|
+
}
|
|
1680
|
+
/**
|
|
1681
|
+
* @deprecated unused in schema-serde mode.
|
|
1682
|
+
*
|
|
1683
|
+
*/
|
|
1684
|
+
interface Visitor<T> {
|
|
1685
|
+
hostSharedAlb: (value: GatewayConnectionAlbResources[]) => T;
|
|
1686
|
+
_: (name: string, value: any) => T;
|
|
1687
|
+
}
|
|
1688
|
+
}
|
|
1689
|
+
/**
|
|
1690
|
+
* <p>A gateway-managed connection for a service revision. A connection represents the association between the service's gateway connector and a specific gateway, along with the infrastructure that the gateway created for it.</p>
|
|
1691
|
+
* @public
|
|
1692
|
+
*/
|
|
1693
|
+
export interface GatewayConnection {
|
|
1694
|
+
/**
|
|
1695
|
+
* <p>The Amazon Resource Name (ARN) of the gateway.</p>
|
|
1696
|
+
* @public
|
|
1697
|
+
*/
|
|
1698
|
+
gatewayArn?: string | undefined;
|
|
1699
|
+
/**
|
|
1700
|
+
* <p>The Amazon Resource Name (ARN) of the gateway route for the connection.</p>
|
|
1701
|
+
* @public
|
|
1702
|
+
*/
|
|
1703
|
+
gatewayRouteArn?: string | undefined;
|
|
1704
|
+
/**
|
|
1705
|
+
* <p>The name of the service port that receives gateway-managed ingress traffic.</p>
|
|
1706
|
+
* @public
|
|
1707
|
+
*/
|
|
1708
|
+
portName?: string | undefined;
|
|
1709
|
+
/**
|
|
1710
|
+
* <p>The URL that the gateway uses to route ingress traffic to the service.</p>
|
|
1711
|
+
* @public
|
|
1712
|
+
*/
|
|
1713
|
+
serviceUrl?: string | undefined;
|
|
1714
|
+
/**
|
|
1715
|
+
* <p>The access type of the gateway ingress path.</p> <p>Valid values:</p> <ul> <li> <p> <code>PUBLIC</code> - The ingress path is publicly accessible.</p> </li> <li> <p> <code>PRIVATE</code> - The ingress path is only accessible privately.</p> </li> </ul>
|
|
1716
|
+
* @public
|
|
1717
|
+
*/
|
|
1718
|
+
accessType?: AccessType | undefined;
|
|
1719
|
+
/**
|
|
1720
|
+
* <p>The status of the gateway route for the connection.</p>
|
|
1721
|
+
* @public
|
|
1722
|
+
*/
|
|
1723
|
+
status?: GatewayRouteStatus | undefined;
|
|
1724
|
+
/**
|
|
1725
|
+
* <p>The gateway-managed infrastructure resources for the connection.</p>
|
|
1726
|
+
* @public
|
|
1727
|
+
*/
|
|
1728
|
+
resources?: GatewayConnectionResources | undefined;
|
|
1729
|
+
}
|
|
1730
|
+
/**
|
|
1731
|
+
* <p>The ACM certificate associated with the HTTPS domain created for the Express service.</p>
|
|
1732
|
+
* @public
|
|
1733
|
+
*/
|
|
1734
|
+
export interface ManagedCertificate {
|
|
1735
|
+
/**
|
|
1736
|
+
* <p>The Amazon Resource Name (ARN) of the ACM certificate.</p>
|
|
1737
|
+
* @public
|
|
1738
|
+
*/
|
|
1739
|
+
arn?: string | undefined;
|
|
1740
|
+
/**
|
|
1741
|
+
* <p>The status of the ACM; certificate.</p>
|
|
1742
|
+
* @public
|
|
1743
|
+
*/
|
|
1744
|
+
status: ManagedResourceStatus | undefined;
|
|
1745
|
+
/**
|
|
1746
|
+
* <p>Information about why the ACM certificate is in the current status.</p>
|
|
1747
|
+
* @public
|
|
1748
|
+
*/
|
|
1749
|
+
statusReason?: string | undefined;
|
|
1750
|
+
/**
|
|
1751
|
+
* <p>The Unix timestamp for when the ACM certificate was last updated</p>
|
|
1752
|
+
* @public
|
|
1753
|
+
*/
|
|
1754
|
+
updatedAt: Date | undefined;
|
|
1755
|
+
/**
|
|
1756
|
+
* <p>The fully qualified domain name (FQDN) that is secured with this ACM certificate.</p>
|
|
1757
|
+
* @public
|
|
1758
|
+
*/
|
|
1759
|
+
domainName: string | undefined;
|
|
1760
|
+
}
|
|
1761
|
+
/**
|
|
1762
|
+
* <p>The listeners associated with the Express service's Application Load Balancer.</p>
|
|
1763
|
+
* @public
|
|
1764
|
+
*/
|
|
1765
|
+
export interface ManagedListener {
|
|
1766
|
+
/**
|
|
1767
|
+
* <p>The Amazon Resource Name (ARN) of the load balancer listener.</p>
|
|
1768
|
+
* @public
|
|
1769
|
+
*/
|
|
1770
|
+
arn?: string | undefined;
|
|
1771
|
+
/**
|
|
1772
|
+
* <p>The status of the load balancer listener.</p>
|
|
1773
|
+
* @public
|
|
1774
|
+
*/
|
|
1775
|
+
status: ManagedResourceStatus | undefined;
|
|
1776
|
+
/**
|
|
1777
|
+
* <p>Informaion about why the load balancer listener is in the current status.</p>
|
|
1778
|
+
* @public
|
|
1779
|
+
*/
|
|
1780
|
+
statusReason?: string | undefined;
|
|
1781
|
+
/**
|
|
1782
|
+
* <p>The Unix timestamp for when this listener was most recently updated.</p>
|
|
1783
|
+
* @public
|
|
1784
|
+
*/
|
|
1785
|
+
updatedAt: Date | undefined;
|
|
1786
|
+
}
|
|
1787
|
+
/**
|
|
1788
|
+
* <p>The Application Load Balancer associated with the Express service.</p>
|
|
1789
|
+
* @public
|
|
1790
|
+
*/
|
|
1791
|
+
export interface ManagedLoadBalancer {
|
|
1792
|
+
/**
|
|
1793
|
+
* <p>The Amazon Resource Name (ARN) of the load balancer.</p>
|
|
1794
|
+
* @public
|
|
1795
|
+
*/
|
|
1796
|
+
arn?: string | undefined;
|
|
1797
|
+
/**
|
|
1798
|
+
* <p>The status of the load balancer.</p>
|
|
1799
|
+
* @public
|
|
1800
|
+
*/
|
|
1801
|
+
status: ManagedResourceStatus | undefined;
|
|
1802
|
+
/**
|
|
1803
|
+
* <p>Information about why the load balancer is in the current status.</p>
|
|
1804
|
+
* @public
|
|
1805
|
+
*/
|
|
1806
|
+
statusReason?: string | undefined;
|
|
1807
|
+
/**
|
|
1808
|
+
* <p>The Unix timestamp for when this load balancer was most recently updated.</p>
|
|
1809
|
+
* @public
|
|
1810
|
+
*/
|
|
1811
|
+
updatedAt: Date | undefined;
|
|
1812
|
+
/**
|
|
1813
|
+
* <p>The scheme of the load balancer. By default, the scheme of the load balancer is <code>internet-facing</code>.</p>
|
|
1814
|
+
* @public
|
|
1815
|
+
*/
|
|
1816
|
+
scheme: string | undefined;
|
|
1817
|
+
/**
|
|
1818
|
+
* <p>The IDs of the subnets associated with the load balancer.</p>
|
|
1819
|
+
* @public
|
|
1820
|
+
*/
|
|
1821
|
+
subnetIds?: string[] | undefined;
|
|
1822
|
+
/**
|
|
1823
|
+
* <p>The IDs of the security groups associated with the load balancer.</p>
|
|
1824
|
+
* @public
|
|
1825
|
+
*/
|
|
1826
|
+
securityGroupIds?: string[] | undefined;
|
|
1827
|
+
}
|
|
1828
|
+
/**
|
|
1829
|
+
* <p>A security group associated with the Express service.</p>
|
|
1830
|
+
* @public
|
|
1831
|
+
*/
|
|
1832
|
+
export interface ManagedSecurityGroup {
|
|
1833
|
+
/**
|
|
1834
|
+
* <p>The ARN of the security group.</p>
|
|
1835
|
+
* @public
|
|
1836
|
+
*/
|
|
1837
|
+
arn?: string | undefined;
|
|
1838
|
+
/**
|
|
1839
|
+
* <p>The status of the security group.</p>
|
|
1840
|
+
* @public
|
|
1841
|
+
*/
|
|
1842
|
+
status: ManagedResourceStatus | undefined;
|
|
1843
|
+
/**
|
|
1844
|
+
* <p>Information about why the security group is in the current status.</p>
|
|
1845
|
+
* @public
|
|
1846
|
+
*/
|
|
1847
|
+
statusReason?: string | undefined;
|
|
1848
|
+
/**
|
|
1849
|
+
* <p>The Unix timestamp for when the security group was last updated.</p>
|
|
1850
|
+
* @public
|
|
1851
|
+
*/
|
|
1852
|
+
updatedAt: Date | undefined;
|
|
1853
|
+
}
|
|
1854
|
+
/**
|
|
1855
|
+
* <p>The listener rule associated with the Express service's Application Load Balancer.</p>
|
|
1856
|
+
* @public
|
|
1857
|
+
*/
|
|
1858
|
+
export interface ManagedListenerRule {
|
|
1859
|
+
/**
|
|
1860
|
+
* <p>The Amazon Resource Name (ARN) of the load balancer listener rule.</p>
|
|
1861
|
+
* @public
|
|
1862
|
+
*/
|
|
1863
|
+
arn?: string | undefined;
|
|
1864
|
+
/**
|
|
1865
|
+
* <p>The status of the load balancer listener rule.</p>
|
|
1866
|
+
* @public
|
|
1867
|
+
*/
|
|
1868
|
+
status: ManagedResourceStatus | undefined;
|
|
1869
|
+
/**
|
|
1870
|
+
* <p>Information about why the load balancer listener rule is in the current status.</p>
|
|
1871
|
+
* @public
|
|
1872
|
+
*/
|
|
1873
|
+
statusReason?: string | undefined;
|
|
1874
|
+
/**
|
|
1875
|
+
* <p>The Unix timestamp for when this listener rule was most recently updated.</p>
|
|
1876
|
+
* @public
|
|
1877
|
+
*/
|
|
1878
|
+
updatedAt: Date | undefined;
|
|
1879
|
+
}
|
|
1880
|
+
/**
|
|
1881
|
+
* <p>The target group associated with the Express service's Application Load Balancer. For more information about load balancer target groups, see <a href="https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_CreateTargetGroup.html">CreateTargetGroup</a> in the <i>Elastic Load Balancing API Reference</i> </p>
|
|
1882
|
+
* @public
|
|
1883
|
+
*/
|
|
1884
|
+
export interface ManagedTargetGroup {
|
|
1885
|
+
/**
|
|
1886
|
+
* <p>The Amazon Resource Name (ARN) of the target group.</p>
|
|
1887
|
+
* @public
|
|
1888
|
+
*/
|
|
1889
|
+
arn?: string | undefined;
|
|
1890
|
+
/**
|
|
1891
|
+
* <p>The status of the target group.</p>
|
|
1892
|
+
* @public
|
|
1893
|
+
*/
|
|
1894
|
+
status: ManagedResourceStatus | undefined;
|
|
1895
|
+
/**
|
|
1896
|
+
* <p>Information about why the target group is in the current status.</p>
|
|
1897
|
+
* @public
|
|
1898
|
+
*/
|
|
1899
|
+
statusReason?: string | undefined;
|
|
1900
|
+
/**
|
|
1901
|
+
* <p>The Unix timestamp for when the target group was last updated.</p>
|
|
1902
|
+
* @public
|
|
1903
|
+
*/
|
|
1904
|
+
updatedAt: Date | undefined;
|
|
1905
|
+
/**
|
|
1906
|
+
* <p>The destination for health checks on the targets.</p>
|
|
1907
|
+
* @public
|
|
1908
|
+
*/
|
|
1909
|
+
healthCheckPath: string | undefined;
|
|
1910
|
+
/**
|
|
1911
|
+
* <p>The port the load balancer uses when performing health checks on targets.</p>
|
|
1912
|
+
* @public
|
|
1913
|
+
*/
|
|
1914
|
+
healthCheckPort: number | undefined;
|
|
1915
|
+
/**
|
|
1916
|
+
* <p>The port on which the targets receive traffic.</p>
|
|
1917
|
+
* @public
|
|
1918
|
+
*/
|
|
1919
|
+
port: number | undefined;
|
|
1920
|
+
}
|
|
1921
|
+
/**
|
|
1922
|
+
* <p>The entry point into the Express service.</p>
|
|
1923
|
+
* @public
|
|
1924
|
+
*/
|
|
1925
|
+
export interface ManagedIngressPath {
|
|
1926
|
+
/**
|
|
1927
|
+
* <p>The type of access to the endpoint for the Express service.</p>
|
|
1928
|
+
* @public
|
|
1929
|
+
*/
|
|
1930
|
+
accessType: AccessType | undefined;
|
|
1931
|
+
/**
|
|
1932
|
+
* <p>The endpoint for access to the Express service.</p>
|
|
1933
|
+
* @public
|
|
1934
|
+
*/
|
|
1935
|
+
endpoint: string | undefined;
|
|
1936
|
+
/**
|
|
1937
|
+
* <p>The Application Load Balancer associated with the Express service.</p>
|
|
1938
|
+
* @public
|
|
1939
|
+
*/
|
|
1940
|
+
loadBalancer?: ManagedLoadBalancer | undefined;
|
|
1941
|
+
/**
|
|
1942
|
+
* <p>The security groups associated with the Application Load Balancer.</p>
|
|
1943
|
+
* @public
|
|
1944
|
+
*/
|
|
1945
|
+
loadBalancerSecurityGroups?: ManagedSecurityGroup[] | undefined;
|
|
1946
|
+
/**
|
|
1947
|
+
* <p>The ACM certificate for the Express service's domain.</p>
|
|
1948
|
+
* @public
|
|
1949
|
+
*/
|
|
1950
|
+
certificate?: ManagedCertificate | undefined;
|
|
1951
|
+
/**
|
|
1952
|
+
* <p>The listeners associated with the Application Load Balancer.</p>
|
|
1953
|
+
* @public
|
|
1954
|
+
*/
|
|
1955
|
+
listener?: ManagedListener | undefined;
|
|
1956
|
+
/**
|
|
1957
|
+
* <p>The listener rules for the Application Load Balancer.</p>
|
|
1958
|
+
* @public
|
|
1959
|
+
*/
|
|
1960
|
+
rule?: ManagedListenerRule | undefined;
|
|
1961
|
+
/**
|
|
1962
|
+
* <p>The target groups associated with the Application Load Balancer.</p>
|
|
1963
|
+
* @public
|
|
1964
|
+
*/
|
|
1965
|
+
targetGroups?: ManagedTargetGroup[] | undefined;
|
|
1966
|
+
}
|
|
1967
|
+
/**
|
|
1968
|
+
* <p>The Cloudwatch Log Group created by Amazon ECS for an Express service.</p>
|
|
1969
|
+
* @public
|
|
1970
|
+
*/
|
|
1971
|
+
export interface ManagedLogGroup {
|
|
1972
|
+
/**
|
|
1973
|
+
* <p>The Amazon Resource Name (ARN) of the Cloudwatch Log Group associated with the Express service.</p>
|
|
1974
|
+
* @public
|
|
1975
|
+
*/
|
|
1976
|
+
arn?: string | undefined;
|
|
1977
|
+
/**
|
|
1978
|
+
* <p>The status of the Cloudwatch LogGroup.</p>
|
|
1979
|
+
* @public
|
|
1980
|
+
*/
|
|
1981
|
+
status: ManagedResourceStatus | undefined;
|
|
1982
|
+
/**
|
|
1983
|
+
* <p>Information about why the Cloudwatch LogGroup is in the current status.</p>
|
|
1984
|
+
* @public
|
|
1985
|
+
*/
|
|
1986
|
+
statusReason?: string | undefined;
|
|
1987
|
+
/**
|
|
1988
|
+
* <p>The Unix timestamp for when the Cloudwatch LogGroup was last updated</p>
|
|
1989
|
+
* @public
|
|
1990
|
+
*/
|
|
1991
|
+
updatedAt: Date | undefined;
|
|
1992
|
+
/**
|
|
1993
|
+
* <p>The name of the Cloudwatch Log Group associated with the Express service.</p>
|
|
1994
|
+
* @public
|
|
1995
|
+
*/
|
|
1996
|
+
logGroupName: string | undefined;
|
|
1997
|
+
}
|
|
3
1998
|
/**
|
|
4
1999
|
* <p>The CloudWatch metric alarm associated with the Express service's scaling policy.</p>
|
|
5
2000
|
* @public
|
|
@@ -56,6 +2051,11 @@ export interface ECSManagedResources {
|
|
|
56
2051
|
* @public
|
|
57
2052
|
*/
|
|
58
2053
|
logGroups?: ManagedLogGroup[] | undefined;
|
|
2054
|
+
/**
|
|
2055
|
+
* <p>The gateway-managed connections for the service revision, including the gateway routes and infrastructure that a gateway created for the service's connector.</p>
|
|
2056
|
+
* @public
|
|
2057
|
+
*/
|
|
2058
|
+
gatewayConnections?: GatewayConnection[] | undefined;
|
|
59
2059
|
}
|
|
60
2060
|
/**
|
|
61
2061
|
* <p>The runtime platform that Amazon ECS applies to a service revision. This value overrides the runtime platform specified in the task definition. You can't set this value.</p>
|
|
@@ -237,6 +2237,11 @@ export interface ServiceRevision {
|
|
|
237
2237
|
* @public
|
|
238
2238
|
*/
|
|
239
2239
|
overrides?: ServiceRevisionOverrides | undefined;
|
|
2240
|
+
/**
|
|
2241
|
+
* <p>The gateway connectors that are associated with the service revision.</p>
|
|
2242
|
+
* @public
|
|
2243
|
+
*/
|
|
2244
|
+
gatewayConnectors?: GatewayConnector[] | undefined;
|
|
240
2245
|
/**
|
|
241
2246
|
* <p>The optional monitoring configuration for the service, which defines the resolution for the service-level <code>CPUUtilization</code> and <code>MemoryUtilization</code> Amazon CloudWatch metrics. When not specified, Amazon ECS uses the default resolution of <code>60</code> seconds.</p>
|
|
242
2247
|
* @public
|