@aws-sdk/client-ecs 3.933.0 → 3.935.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.
Files changed (76) hide show
  1. package/dist-cjs/index.js +480 -476
  2. package/dist-es/index.js +2 -1
  3. package/dist-es/models/enums.js +447 -0
  4. package/dist-es/models/errors.js +339 -0
  5. package/dist-es/models/models_0.js +1 -688
  6. package/dist-es/schemas/schemas_0.js +11 -7
  7. package/dist-types/commands/CreateCapacityProviderCommand.d.ts +6 -0
  8. package/dist-types/commands/DeleteCapacityProviderCommand.d.ts +3 -0
  9. package/dist-types/commands/DescribeCapacityProvidersCommand.d.ts +3 -0
  10. package/dist-types/commands/ListTasksCommand.d.ts +1 -1
  11. package/dist-types/commands/PutAccountSettingCommand.d.ts +1 -1
  12. package/dist-types/commands/PutAccountSettingDefaultCommand.d.ts +1 -1
  13. package/dist-types/commands/PutAttributesCommand.d.ts +1 -1
  14. package/dist-types/commands/PutClusterCapacityProvidersCommand.d.ts +1 -1
  15. package/dist-types/commands/RegisterContainerInstanceCommand.d.ts +1 -1
  16. package/dist-types/commands/RegisterTaskDefinitionCommand.d.ts +1 -1
  17. package/dist-types/commands/RunTaskCommand.d.ts +1 -1
  18. package/dist-types/commands/StartTaskCommand.d.ts +1 -1
  19. package/dist-types/commands/StopServiceDeploymentCommand.d.ts +1 -1
  20. package/dist-types/commands/StopTaskCommand.d.ts +1 -1
  21. package/dist-types/commands/SubmitAttachmentStateChangesCommand.d.ts +1 -1
  22. package/dist-types/commands/SubmitContainerStateChangeCommand.d.ts +1 -1
  23. package/dist-types/commands/SubmitTaskStateChangeCommand.d.ts +1 -1
  24. package/dist-types/commands/TagResourceCommand.d.ts +1 -1
  25. package/dist-types/commands/UntagResourceCommand.d.ts +1 -1
  26. package/dist-types/commands/UpdateCapacityProviderCommand.d.ts +7 -1
  27. package/dist-types/commands/UpdateClusterCommand.d.ts +1 -1
  28. package/dist-types/commands/UpdateClusterSettingsCommand.d.ts +1 -1
  29. package/dist-types/commands/UpdateContainerAgentCommand.d.ts +1 -1
  30. package/dist-types/commands/UpdateContainerInstancesStateCommand.d.ts +1 -1
  31. package/dist-types/commands/UpdateServiceCommand.d.ts +1 -1
  32. package/dist-types/commands/UpdateServicePrimaryTaskSetCommand.d.ts +1 -1
  33. package/dist-types/commands/UpdateTaskProtectionCommand.d.ts +1 -1
  34. package/dist-types/commands/UpdateTaskSetCommand.d.ts +1 -1
  35. package/dist-types/index.d.ts +3 -1
  36. package/dist-types/models/enums.d.ts +1119 -0
  37. package/dist-types/models/errors.d.ts +397 -0
  38. package/dist-types/models/models_0.d.ts +2816 -1381
  39. package/dist-types/schemas/schemas_0.d.ts +1 -0
  40. package/dist-types/ts3.4/commands/ListTasksCommand.d.ts +1 -1
  41. package/dist-types/ts3.4/commands/PutAccountSettingCommand.d.ts +1 -1
  42. package/dist-types/ts3.4/commands/PutAccountSettingDefaultCommand.d.ts +1 -1
  43. package/dist-types/ts3.4/commands/PutAttributesCommand.d.ts +1 -1
  44. package/dist-types/ts3.4/commands/PutClusterCapacityProvidersCommand.d.ts +1 -1
  45. package/dist-types/ts3.4/commands/RegisterContainerInstanceCommand.d.ts +1 -1
  46. package/dist-types/ts3.4/commands/RegisterTaskDefinitionCommand.d.ts +1 -1
  47. package/dist-types/ts3.4/commands/RunTaskCommand.d.ts +1 -1
  48. package/dist-types/ts3.4/commands/StartTaskCommand.d.ts +1 -1
  49. package/dist-types/ts3.4/commands/StopServiceDeploymentCommand.d.ts +1 -1
  50. package/dist-types/ts3.4/commands/StopTaskCommand.d.ts +1 -1
  51. package/dist-types/ts3.4/commands/SubmitAttachmentStateChangesCommand.d.ts +1 -1
  52. package/dist-types/ts3.4/commands/SubmitContainerStateChangeCommand.d.ts +1 -1
  53. package/dist-types/ts3.4/commands/SubmitTaskStateChangeCommand.d.ts +1 -1
  54. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +1 -1
  55. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +1 -1
  56. package/dist-types/ts3.4/commands/UpdateCapacityProviderCommand.d.ts +1 -1
  57. package/dist-types/ts3.4/commands/UpdateClusterCommand.d.ts +1 -1
  58. package/dist-types/ts3.4/commands/UpdateClusterSettingsCommand.d.ts +1 -1
  59. package/dist-types/ts3.4/commands/UpdateContainerAgentCommand.d.ts +1 -1
  60. package/dist-types/ts3.4/commands/UpdateContainerInstancesStateCommand.d.ts +1 -1
  61. package/dist-types/ts3.4/commands/UpdateServiceCommand.d.ts +1 -1
  62. package/dist-types/ts3.4/commands/UpdateServicePrimaryTaskSetCommand.d.ts +1 -1
  63. package/dist-types/ts3.4/commands/UpdateTaskProtectionCommand.d.ts +1 -1
  64. package/dist-types/ts3.4/commands/UpdateTaskSetCommand.d.ts +1 -1
  65. package/dist-types/ts3.4/index.d.ts +3 -1
  66. package/dist-types/ts3.4/models/enums.d.ts +589 -0
  67. package/dist-types/ts3.4/models/errors.d.ts +209 -0
  68. package/dist-types/ts3.4/models/models_0.d.ts +437 -729
  69. package/dist-types/ts3.4/schemas/schemas_0.d.ts +1 -0
  70. package/package.json +12 -12
  71. package/dist-es/models/index.js +0 -2
  72. package/dist-es/models/models_1.js +0 -99
  73. package/dist-types/models/index.d.ts +0 -2
  74. package/dist-types/models/models_1.d.ts +0 -2908
  75. package/dist-types/ts3.4/models/index.d.ts +0 -2
  76. package/dist-types/ts3.4/models/models_1.d.ts +0 -476
@@ -1,6 +1,5 @@
1
- import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
1
  import { DocumentType as __DocumentType } from "@smithy/types";
3
- import { ECSServiceException as __BaseException } from "./ECSServiceException";
2
+ import { AcceleratorManufacturer, AcceleratorName, AcceleratorType, AgentUpdateStatus, ApplicationProtocol, AssignPublicIp, AvailabilityZoneRebalancing, BareMetal, BurstablePerformance, CapacityProviderField, CapacityProviderStatus, CapacityProviderType, CapacityProviderUpdateStatus, ClusterField, ClusterSettingName, Compatibility, Connectivity, ContainerCondition, ContainerInstanceField, ContainerInstanceStatus, CPUArchitecture, CpuManufacturer, DeploymentControllerType, DeploymentLifecycleHookStage, DeploymentRolloutState, DeploymentStrategy, DesiredStatus, DeviceCgroupPermission, EBSResourceType, EFSAuthorizationConfigIAM, EFSTransitEncryption, EnvironmentFileType, ExecuteCommandLogging, FirelensConfigurationType, HealthStatus, InstanceGeneration, InstanceHealthCheckState, InstanceHealthCheckType, IpcMode, LaunchType, LocalStorage, LocalStorageType, LogDriver, ManagedAgentName, ManagedDraining, ManagedInstancesMonitoringOptions, ManagedScalingStatus, ManagedTerminationProtection, NetworkMode, OSFamily, PidMode, PlacementConstraintType, PlacementStrategyType, PlatformDeviceType, PropagateMITags, PropagateTags, ProxyConfigurationType, ResourceType, ScaleUnit, SchedulingStrategy, Scope, ServiceConnectAccessLoggingFormat, ServiceConnectIncludeQueryParameters, ServiceDeploymentLifecycleStage, ServiceDeploymentRollbackMonitorsStatus, ServiceDeploymentStatus, ServiceField, SettingName, SettingType, SortOrder, StabilityStatus, StopServiceDeploymentStopType, TargetType, TaskDefinitionFamilyStatus, TaskDefinitionField, TaskDefinitionPlacementConstraintType, TaskDefinitionStatus, TaskField, TaskFilesystemType, TaskSetField, TaskStopCode, TransportProtocol, UlimitName, VersionConsistency } from "./enums";
4
3
  /**
5
4
  * <p>The minimum and maximum number of accelerators (such as GPUs) for instance type
6
5
  * selection. This is used for workloads that require specific numbers of
@@ -21,43 +20,6 @@ export interface AcceleratorCountRequest {
21
20
  */
22
21
  max?: number | undefined;
23
22
  }
24
- /**
25
- * @public
26
- * @enum
27
- */
28
- export declare const AcceleratorManufacturer: {
29
- readonly AMAZON_WEB_SERVICES: "amazon-web-services";
30
- readonly AMD: "amd";
31
- readonly HABANA: "habana";
32
- readonly NVIDIA: "nvidia";
33
- readonly XILINX: "xilinx";
34
- };
35
- /**
36
- * @public
37
- */
38
- export type AcceleratorManufacturer = (typeof AcceleratorManufacturer)[keyof typeof AcceleratorManufacturer];
39
- /**
40
- * @public
41
- * @enum
42
- */
43
- export declare const AcceleratorName: {
44
- readonly A100: "a100";
45
- readonly A10G: "a10g";
46
- readonly H100: "h100";
47
- readonly INFERENTIA: "inferentia";
48
- readonly K520: "k520";
49
- readonly K80: "k80";
50
- readonly M60: "m60";
51
- readonly RADEON_PRO_V520: "radeon-pro-v520";
52
- readonly T4: "t4";
53
- readonly T4G: "t4g";
54
- readonly V100: "v100";
55
- readonly VU9P: "vu9p";
56
- };
57
- /**
58
- * @public
59
- */
60
- export type AcceleratorName = (typeof AcceleratorName)[keyof typeof AcceleratorName];
61
23
  /**
62
24
  * <p>The minimum and maximum total accelerator memory in mebibytes (MiB) for instance type
63
25
  * selection. This is important for GPU workloads that require specific amounts of video
@@ -78,31 +40,6 @@ export interface AcceleratorTotalMemoryMiBRequest {
78
40
  */
79
41
  max?: number | undefined;
80
42
  }
81
- /**
82
- * @public
83
- * @enum
84
- */
85
- export declare const AcceleratorType: {
86
- readonly FPGA: "fpga";
87
- readonly GPU: "gpu";
88
- readonly INFERENCE: "inference";
89
- };
90
- /**
91
- * @public
92
- */
93
- export type AcceleratorType = (typeof AcceleratorType)[keyof typeof AcceleratorType];
94
- /**
95
- * <p>You don't have authorization to perform the requested action.</p>
96
- * @public
97
- */
98
- export declare class AccessDeniedException extends __BaseException {
99
- readonly name: "AccessDeniedException";
100
- readonly $fault: "client";
101
- /**
102
- * @internal
103
- */
104
- constructor(opts: __ExceptionOptionType<AccessDeniedException, __BaseException>);
105
- }
106
43
  /**
107
44
  * <p>The advanced settings for a load balancer used in blue/green deployments. Specify the
108
45
  * alternate target group, listener rules, and IAM role required for traffic shifting during
@@ -134,72 +71,6 @@ export interface AdvancedConfiguration {
134
71
  */
135
72
  roleArn?: string | undefined;
136
73
  }
137
- /**
138
- * @public
139
- * @enum
140
- */
141
- export declare const AgentUpdateStatus: {
142
- readonly FAILED: "FAILED";
143
- readonly PENDING: "PENDING";
144
- readonly STAGED: "STAGED";
145
- readonly STAGING: "STAGING";
146
- readonly UPDATED: "UPDATED";
147
- readonly UPDATING: "UPDATING";
148
- };
149
- /**
150
- * @public
151
- */
152
- export type AgentUpdateStatus = (typeof AgentUpdateStatus)[keyof typeof AgentUpdateStatus];
153
- /**
154
- * <p>These errors are usually caused by a client action. This client action might be using
155
- * an action or resource on behalf of a user that doesn't have permissions to use the
156
- * action or resource. Or, it might be specifying an identifier that isn't valid.</p>
157
- * @public
158
- */
159
- export declare class ClientException extends __BaseException {
160
- readonly name: "ClientException";
161
- readonly $fault: "client";
162
- /**
163
- * @internal
164
- */
165
- constructor(opts: __ExceptionOptionType<ClientException, __BaseException>);
166
- }
167
- /**
168
- * <p>The specified cluster wasn't found. You can view your available clusters with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListClusters.html">ListClusters</a>. Amazon ECS clusters are Region specific.</p>
169
- * @public
170
- */
171
- export declare class ClusterNotFoundException extends __BaseException {
172
- readonly name: "ClusterNotFoundException";
173
- readonly $fault: "client";
174
- /**
175
- * @internal
176
- */
177
- constructor(opts: __ExceptionOptionType<ClusterNotFoundException, __BaseException>);
178
- }
179
- /**
180
- * @public
181
- * @enum
182
- */
183
- export declare const ManagedDraining: {
184
- readonly DISABLED: "DISABLED";
185
- readonly ENABLED: "ENABLED";
186
- };
187
- /**
188
- * @public
189
- */
190
- export type ManagedDraining = (typeof ManagedDraining)[keyof typeof ManagedDraining];
191
- /**
192
- * @public
193
- * @enum
194
- */
195
- export declare const ManagedScalingStatus: {
196
- readonly DISABLED: "DISABLED";
197
- readonly ENABLED: "ENABLED";
198
- };
199
- /**
200
- * @public
201
- */
202
- export type ManagedScalingStatus = (typeof ManagedScalingStatus)[keyof typeof ManagedScalingStatus];
203
74
  /**
204
75
  * <p>The managed scaling settings for the Auto Scaling group capacity provider.</p>
205
76
  * <p>When managed scaling is turned on, Amazon ECS manages the scale-in and scale-out
@@ -252,18 +123,6 @@ export interface ManagedScaling {
252
123
  */
253
124
  instanceWarmupPeriod?: number | undefined;
254
125
  }
255
- /**
256
- * @public
257
- * @enum
258
- */
259
- export declare const ManagedTerminationProtection: {
260
- readonly DISABLED: "DISABLED";
261
- readonly ENABLED: "ENABLED";
262
- };
263
- /**
264
- * @public
265
- */
266
- export type ManagedTerminationProtection = (typeof ManagedTerminationProtection)[keyof typeof ManagedTerminationProtection];
267
126
  /**
268
127
  * <p>The details of the Auto Scaling group for the capacity provider.</p>
269
128
  * @public
@@ -308,18 +167,32 @@ export interface AutoScalingGroupProvider {
308
167
  managedDraining?: ManagedDraining | undefined;
309
168
  }
310
169
  /**
170
+ * <p>The configuration that controls how Amazon ECS optimizes your infrastructure.</p>
311
171
  * @public
312
- * @enum
313
172
  */
314
- export declare const BareMetal: {
315
- readonly EXCLUDED: "excluded";
316
- readonly INCLUDED: "included";
317
- readonly REQUIRED: "required";
318
- };
319
- /**
320
- * @public
321
- */
322
- export type BareMetal = (typeof BareMetal)[keyof typeof BareMetal];
173
+ export interface InfrastructureOptimization {
174
+ /**
175
+ * <p>This parameter defines the number of seconds Amazon ECS Managed Instances waits before optimizing EC2 instances that have become idle or underutilized.
176
+ * A longer delay increases the likelihood of placing new tasks on idle or underutilized instances instances, reducing startup time.
177
+ * A shorter delay helps reduce infrastructure costs by optimizing idle or underutilized instances,instances more quickly.</p>
178
+ * <p>Valid values are:</p>
179
+ * <ul>
180
+ * <li>
181
+ * <p>
182
+ * <code>null</code> - Uses the default optimization behavior.</p>
183
+ * </li>
184
+ * <li>
185
+ * <p>
186
+ * <code>-1</code> - Disables automatic infrastructure optimization.</p>
187
+ * </li>
188
+ * <li>
189
+ * <p>A value between <code>0</code> and <code>3600</code> (inclusive) - Specifies the number of seconds to wait before optimizing instances.</p>
190
+ * </li>
191
+ * </ul>
192
+ * @public
193
+ */
194
+ scaleInAfter?: number | undefined;
195
+ }
323
196
  /**
324
197
  * <p>The minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps)
325
198
  * for instance type selection. This is important for workloads with high storage I/O
@@ -340,69 +213,6 @@ export interface BaselineEbsBandwidthMbpsRequest {
340
213
  */
341
214
  max?: number | undefined;
342
215
  }
343
- /**
344
- * @public
345
- * @enum
346
- */
347
- export declare const BurstablePerformance: {
348
- readonly EXCLUDED: "excluded";
349
- readonly INCLUDED: "included";
350
- readonly REQUIRED: "required";
351
- };
352
- /**
353
- * @public
354
- */
355
- export type BurstablePerformance = (typeof BurstablePerformance)[keyof typeof BurstablePerformance];
356
- /**
357
- * @public
358
- * @enum
359
- */
360
- export declare const CpuManufacturer: {
361
- readonly AMAZON_WEB_SERVICES: "amazon-web-services";
362
- readonly AMD: "amd";
363
- readonly INTEL: "intel";
364
- };
365
- /**
366
- * @public
367
- */
368
- export type CpuManufacturer = (typeof CpuManufacturer)[keyof typeof CpuManufacturer];
369
- /**
370
- * @public
371
- * @enum
372
- */
373
- export declare const InstanceGeneration: {
374
- readonly CURRENT: "current";
375
- readonly PREVIOUS: "previous";
376
- };
377
- /**
378
- * @public
379
- */
380
- export type InstanceGeneration = (typeof InstanceGeneration)[keyof typeof InstanceGeneration];
381
- /**
382
- * @public
383
- * @enum
384
- */
385
- export declare const LocalStorage: {
386
- readonly EXCLUDED: "excluded";
387
- readonly INCLUDED: "included";
388
- readonly REQUIRED: "required";
389
- };
390
- /**
391
- * @public
392
- */
393
- export type LocalStorage = (typeof LocalStorage)[keyof typeof LocalStorage];
394
- /**
395
- * @public
396
- * @enum
397
- */
398
- export declare const LocalStorageType: {
399
- readonly HDD: "hdd";
400
- readonly SSD: "ssd";
401
- };
402
- /**
403
- * @public
404
- */
405
- export type LocalStorageType = (typeof LocalStorageType)[keyof typeof LocalStorageType];
406
216
  /**
407
217
  * <p>The minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps
408
218
  * ensure that instance types have the appropriate memory-to-CPU ratio for your
@@ -690,18 +500,6 @@ export interface InstanceRequirementsRequest {
690
500
  */
691
501
  maxSpotPriceAsPercentageOfOptimalOnDemandPrice?: number | undefined;
692
502
  }
693
- /**
694
- * @public
695
- * @enum
696
- */
697
- export declare const ManagedInstancesMonitoringOptions: {
698
- readonly BASIC: "BASIC";
699
- readonly DETAILED: "DETAILED";
700
- };
701
- /**
702
- * @public
703
- */
704
- export type ManagedInstancesMonitoringOptions = (typeof ManagedInstancesMonitoringOptions)[keyof typeof ManagedInstancesMonitoringOptions];
705
503
  /**
706
504
  * <p>The network configuration for Amazon ECS Managed Instances. This specifies the VPC
707
505
  * subnets and security groups that instances use for network connectivity. Amazon ECS
@@ -797,18 +595,6 @@ export interface InstanceLaunchTemplate {
797
595
  */
798
596
  instanceRequirements?: InstanceRequirementsRequest | undefined;
799
597
  }
800
- /**
801
- * @public
802
- * @enum
803
- */
804
- export declare const PropagateMITags: {
805
- readonly CAPACITY_PROVIDER: "CAPACITY_PROVIDER";
806
- readonly NONE: "NONE";
807
- };
808
- /**
809
- * @public
810
- */
811
- export type PropagateMITags = (typeof PropagateMITags)[keyof typeof PropagateMITags];
812
598
  /**
813
599
  * <p>The configuration for creating a Amazon ECS Managed Instances provider. This specifies
814
600
  * how Amazon ECS should manage Amazon EC2 instances, including the infrastructure role,
@@ -845,6 +631,12 @@ export interface CreateManagedInstancesProviderConfiguration {
845
631
  * @public
846
632
  */
847
633
  propagateTags?: PropagateMITags | undefined;
634
+ /**
635
+ * <p>Defines how Amazon ECS Managed Instances optimizes the infrastastructure in your capacity provider.
636
+ * Provides control over the delay between when EC2 instances become idle or underutilized and when Amazon ECS optimizes them.</p>
637
+ * @public
638
+ */
639
+ infrastructureOptimization?: InfrastructureOptimization | undefined;
848
640
  }
849
641
  /**
850
642
  * <p>The metadata that you apply to a resource to help you categorize and organize them.
@@ -1008,54 +800,13 @@ export interface ManagedInstancesProvider {
1008
800
  * @public
1009
801
  */
1010
802
  propagateTags?: PropagateMITags | undefined;
803
+ /**
804
+ * <p>Defines how Amazon ECS Managed Instances optimizes the infrastastructure in your capacity provider.
805
+ * Configure it to turn on or off the infrastructure optimization in your capacity provider, and to control the idle or underutilized EC2 instances optimization delay.</p>
806
+ * @public
807
+ */
808
+ infrastructureOptimization?: InfrastructureOptimization | undefined;
1011
809
  }
1012
- /**
1013
- * @public
1014
- * @enum
1015
- */
1016
- export declare const CapacityProviderStatus: {
1017
- readonly ACTIVE: "ACTIVE";
1018
- readonly DEPROVISIONING: "DEPROVISIONING";
1019
- readonly INACTIVE: "INACTIVE";
1020
- readonly PROVISIONING: "PROVISIONING";
1021
- };
1022
- /**
1023
- * @public
1024
- */
1025
- export type CapacityProviderStatus = (typeof CapacityProviderStatus)[keyof typeof CapacityProviderStatus];
1026
- /**
1027
- * @public
1028
- * @enum
1029
- */
1030
- export declare const CapacityProviderType: {
1031
- readonly EC2_AUTOSCALING: "EC2_AUTOSCALING";
1032
- readonly FARGATE: "FARGATE";
1033
- readonly FARGATE_SPOT: "FARGATE_SPOT";
1034
- readonly MANAGED_INSTANCES: "MANAGED_INSTANCES";
1035
- };
1036
- /**
1037
- * @public
1038
- */
1039
- export type CapacityProviderType = (typeof CapacityProviderType)[keyof typeof CapacityProviderType];
1040
- /**
1041
- * @public
1042
- * @enum
1043
- */
1044
- export declare const CapacityProviderUpdateStatus: {
1045
- readonly CREATE_COMPLETE: "CREATE_COMPLETE";
1046
- readonly CREATE_FAILED: "CREATE_FAILED";
1047
- readonly CREATE_IN_PROGRESS: "CREATE_IN_PROGRESS";
1048
- readonly DELETE_COMPLETE: "DELETE_COMPLETE";
1049
- readonly DELETE_FAILED: "DELETE_FAILED";
1050
- readonly DELETE_IN_PROGRESS: "DELETE_IN_PROGRESS";
1051
- readonly UPDATE_COMPLETE: "UPDATE_COMPLETE";
1052
- readonly UPDATE_FAILED: "UPDATE_FAILED";
1053
- readonly UPDATE_IN_PROGRESS: "UPDATE_IN_PROGRESS";
1054
- };
1055
- /**
1056
- * @public
1057
- */
1058
- export type CapacityProviderUpdateStatus = (typeof CapacityProviderUpdateStatus)[keyof typeof CapacityProviderUpdateStatus];
1059
810
  /**
1060
811
  * <p>The details for a capacity provider.</p>
1061
812
  * @public
@@ -1183,73 +934,6 @@ export interface CreateCapacityProviderResponse {
1183
934
  */
1184
935
  capacityProvider?: CapacityProvider | undefined;
1185
936
  }
1186
- /**
1187
- * <p>The specified parameter isn't valid. Review the available parameters for the API
1188
- * request.</p>
1189
- * <p>For more information about service event errors, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-event-messages-list.html">Amazon ECS
1190
- * service event messages</a>. </p>
1191
- * @public
1192
- */
1193
- export declare class InvalidParameterException extends __BaseException {
1194
- readonly name: "InvalidParameterException";
1195
- readonly $fault: "client";
1196
- /**
1197
- * @internal
1198
- */
1199
- constructor(opts: __ExceptionOptionType<InvalidParameterException, __BaseException>);
1200
- }
1201
- /**
1202
- * <p>The limit for the resource was exceeded.</p>
1203
- * @public
1204
- */
1205
- export declare class LimitExceededException extends __BaseException {
1206
- readonly name: "LimitExceededException";
1207
- readonly $fault: "client";
1208
- /**
1209
- * @internal
1210
- */
1211
- constructor(opts: __ExceptionOptionType<LimitExceededException, __BaseException>);
1212
- }
1213
- /**
1214
- * <p>These errors are usually caused by a server issue.</p>
1215
- * @public
1216
- */
1217
- export declare class ServerException extends __BaseException {
1218
- readonly name: "ServerException";
1219
- readonly $fault: "server";
1220
- /**
1221
- * @internal
1222
- */
1223
- constructor(opts: __ExceptionOptionType<ServerException, __BaseException>);
1224
- }
1225
- /**
1226
- * <p>The specified task isn't supported in this Region.</p>
1227
- * @public
1228
- */
1229
- export declare class UnsupportedFeatureException extends __BaseException {
1230
- readonly name: "UnsupportedFeatureException";
1231
- readonly $fault: "client";
1232
- /**
1233
- * @internal
1234
- */
1235
- constructor(opts: __ExceptionOptionType<UnsupportedFeatureException, __BaseException>);
1236
- }
1237
- /**
1238
- * <p>There's already a current Amazon ECS container agent update in progress on the
1239
- * container instance that's specified. If the container agent becomes disconnected while
1240
- * it's in a transitional stage, such as <code>PENDING</code> or <code>STAGING</code>, the
1241
- * update process can get stuck in that state. However, when the agent reconnects, it
1242
- * resumes where it stopped previously.</p>
1243
- * @public
1244
- */
1245
- export declare class UpdateInProgressException extends __BaseException {
1246
- readonly name: "UpdateInProgressException";
1247
- readonly $fault: "client";
1248
- /**
1249
- * @internal
1250
- */
1251
- constructor(opts: __ExceptionOptionType<UpdateInProgressException, __BaseException>);
1252
- }
1253
937
  /**
1254
938
  * <p>The log configuration for the results of the execute command actions. The logs can be
1255
939
  * sent to CloudWatch Logs or an Amazon S3 bucket.</p>
@@ -1290,19 +974,6 @@ export interface ExecuteCommandLogConfiguration {
1290
974
  */
1291
975
  s3KeyPrefix?: string | undefined;
1292
976
  }
1293
- /**
1294
- * @public
1295
- * @enum
1296
- */
1297
- export declare const ExecuteCommandLogging: {
1298
- readonly DEFAULT: "DEFAULT";
1299
- readonly NONE: "NONE";
1300
- readonly OVERRIDE: "OVERRIDE";
1301
- };
1302
- /**
1303
- * @public
1304
- */
1305
- export type ExecuteCommandLogging = (typeof ExecuteCommandLogging)[keyof typeof ExecuteCommandLogging];
1306
977
  /**
1307
978
  * <p>The details of the execute command configuration.</p>
1308
979
  * @public
@@ -1539,17 +1210,6 @@ export interface ClusterServiceConnectDefaultsRequest {
1539
1210
  */
1540
1211
  namespace: string | undefined;
1541
1212
  }
1542
- /**
1543
- * @public
1544
- * @enum
1545
- */
1546
- export declare const ClusterSettingName: {
1547
- readonly CONTAINER_INSIGHTS: "containerInsights";
1548
- };
1549
- /**
1550
- * @public
1551
- */
1552
- export type ClusterSettingName = (typeof ClusterSettingName)[keyof typeof ClusterSettingName];
1553
1213
  /**
1554
1214
  * <p>The settings to use when creating a cluster. This parameter is used to turn on
1555
1215
  * CloudWatch Container Insights with enhanced observability or CloudWatch Container
@@ -2002,30 +1662,6 @@ export interface CreateClusterResponse {
2002
1662
  */
2003
1663
  cluster?: Cluster | undefined;
2004
1664
  }
2005
- /**
2006
- * <p>The specified namespace wasn't found.</p>
2007
- * @public
2008
- */
2009
- export declare class NamespaceNotFoundException extends __BaseException {
2010
- readonly name: "NamespaceNotFoundException";
2011
- readonly $fault: "client";
2012
- /**
2013
- * @internal
2014
- */
2015
- constructor(opts: __ExceptionOptionType<NamespaceNotFoundException, __BaseException>);
2016
- }
2017
- /**
2018
- * @public
2019
- * @enum
2020
- */
2021
- export declare const AvailabilityZoneRebalancing: {
2022
- readonly DISABLED: "DISABLED";
2023
- readonly ENABLED: "ENABLED";
2024
- };
2025
- /**
2026
- * @public
2027
- */
2028
- export type AvailabilityZoneRebalancing = (typeof AvailabilityZoneRebalancing)[keyof typeof AvailabilityZoneRebalancing];
2029
1665
  /**
2030
1666
  * <p>One of the methods which provide a way for you to quickly identify when a deployment
2031
1667
  * has failed, and then to optionally roll back the failure to the last working
@@ -2117,23 +1753,6 @@ export interface DeploymentCircuitBreaker {
2117
1753
  */
2118
1754
  rollback: boolean | undefined;
2119
1755
  }
2120
- /**
2121
- * @public
2122
- * @enum
2123
- */
2124
- export declare const DeploymentLifecycleHookStage: {
2125
- readonly POST_PRODUCTION_TRAFFIC_SHIFT: "POST_PRODUCTION_TRAFFIC_SHIFT";
2126
- readonly POST_SCALE_UP: "POST_SCALE_UP";
2127
- readonly POST_TEST_TRAFFIC_SHIFT: "POST_TEST_TRAFFIC_SHIFT";
2128
- readonly PRE_SCALE_UP: "PRE_SCALE_UP";
2129
- readonly PRODUCTION_TRAFFIC_SHIFT: "PRODUCTION_TRAFFIC_SHIFT";
2130
- readonly RECONCILE_SERVICE: "RECONCILE_SERVICE";
2131
- readonly TEST_TRAFFIC_SHIFT: "TEST_TRAFFIC_SHIFT";
2132
- };
2133
- /**
2134
- * @public
2135
- */
2136
- export type DeploymentLifecycleHookStage = (typeof DeploymentLifecycleHookStage)[keyof typeof DeploymentLifecycleHookStage];
2137
1756
  /**
2138
1757
  * <p>A deployment lifecycle hook runs custom logic at specific stages of the deployment process. Currently, you can use Lambda functions as hook targets.</p>
2139
1758
  * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-lifecycle-hooks.html">Lifecycle hooks for Amazon ECS service deployments</a> in the <i>
@@ -2227,20 +1846,6 @@ export interface LinearConfiguration {
2227
1846
  */
2228
1847
  stepBakeTimeInMinutes?: number | undefined;
2229
1848
  }
2230
- /**
2231
- * @public
2232
- * @enum
2233
- */
2234
- export declare const DeploymentStrategy: {
2235
- readonly BLUE_GREEN: "BLUE_GREEN";
2236
- readonly CANARY: "CANARY";
2237
- readonly LINEAR: "LINEAR";
2238
- readonly ROLLING: "ROLLING";
2239
- };
2240
- /**
2241
- * @public
2242
- */
2243
- export type DeploymentStrategy = (typeof DeploymentStrategy)[keyof typeof DeploymentStrategy];
2244
1849
  /**
2245
1850
  * <p>Optional deployment parameters that control how many tasks run during a deployment and
2246
1851
  * the ordering of stopping and starting tasks.</p>
@@ -2451,19 +2056,6 @@ export interface DeploymentConfiguration {
2451
2056
  */
2452
2057
  canaryConfiguration?: CanaryConfiguration | undefined;
2453
2058
  }
2454
- /**
2455
- * @public
2456
- * @enum
2457
- */
2458
- export declare const DeploymentControllerType: {
2459
- readonly CODE_DEPLOY: "CODE_DEPLOY";
2460
- readonly ECS: "ECS";
2461
- readonly EXTERNAL: "EXTERNAL";
2462
- };
2463
- /**
2464
- * @public
2465
- */
2466
- export type DeploymentControllerType = (typeof DeploymentControllerType)[keyof typeof DeploymentControllerType];
2467
2059
  /**
2468
2060
  * <p>The deployment controller to use for the service. </p>
2469
2061
  * @public
@@ -2583,20 +2175,6 @@ export interface DeploymentController {
2583
2175
  */
2584
2176
  type: DeploymentControllerType | undefined;
2585
2177
  }
2586
- /**
2587
- * @public
2588
- * @enum
2589
- */
2590
- export declare const LaunchType: {
2591
- readonly EC2: "EC2";
2592
- readonly EXTERNAL: "EXTERNAL";
2593
- readonly FARGATE: "FARGATE";
2594
- readonly MANAGED_INSTANCES: "MANAGED_INSTANCES";
2595
- };
2596
- /**
2597
- * @public
2598
- */
2599
- export type LaunchType = (typeof LaunchType)[keyof typeof LaunchType];
2600
2178
  /**
2601
2179
  * <p>The load balancer configuration to use with a service or task set.</p>
2602
2180
  * <p>When you add, update, or remove a load balancer configuration, Amazon ECS starts a new
@@ -2663,18 +2241,6 @@ export interface LoadBalancer {
2663
2241
  */
2664
2242
  advancedConfiguration?: AdvancedConfiguration | undefined;
2665
2243
  }
2666
- /**
2667
- * @public
2668
- * @enum
2669
- */
2670
- export declare const AssignPublicIp: {
2671
- readonly DISABLED: "DISABLED";
2672
- readonly ENABLED: "ENABLED";
2673
- };
2674
- /**
2675
- * @public
2676
- */
2677
- export type AssignPublicIp = (typeof AssignPublicIp)[keyof typeof AssignPublicIp];
2678
2244
  /**
2679
2245
  * <p>An object representing the networking details for a task or service. For example
2680
2246
  * <code>awsVpcConfiguration=\{subnets=["subnet-12344321"],securityGroups=["sg-12344321"]\}</code>.</p>
@@ -2731,18 +2297,6 @@ export interface NetworkConfiguration {
2731
2297
  */
2732
2298
  awsvpcConfiguration?: AwsVpcConfiguration | undefined;
2733
2299
  }
2734
- /**
2735
- * @public
2736
- * @enum
2737
- */
2738
- export declare const PlacementConstraintType: {
2739
- readonly DISTINCT_INSTANCE: "distinctInstance";
2740
- readonly MEMBER_OF: "memberOf";
2741
- };
2742
- /**
2743
- * @public
2744
- */
2745
- export type PlacementConstraintType = (typeof PlacementConstraintType)[keyof typeof PlacementConstraintType];
2746
2300
  /**
2747
2301
  * <p>An object representing a constraint on task placement. For more information, see
2748
2302
  * <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html">Task placement constraints</a> in the <i>Amazon
@@ -2771,19 +2325,6 @@ export interface PlacementConstraint {
2771
2325
  */
2772
2326
  expression?: string | undefined;
2773
2327
  }
2774
- /**
2775
- * @public
2776
- * @enum
2777
- */
2778
- export declare const PlacementStrategyType: {
2779
- readonly BINPACK: "binpack";
2780
- readonly RANDOM: "random";
2781
- readonly SPREAD: "spread";
2782
- };
2783
- /**
2784
- * @public
2785
- */
2786
- export type PlacementStrategyType = (typeof PlacementStrategyType)[keyof typeof PlacementStrategyType];
2787
2328
  /**
2788
2329
  * <p>The task placement strategy for a task or service. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-strategies.html">Task placement strategies</a> in the <i>Amazon
2789
2330
  * Elastic Container Service Developer Guide</i>.</p>
@@ -2814,61 +2355,12 @@ export interface PlacementStrategy {
2814
2355
  field?: string | undefined;
2815
2356
  }
2816
2357
  /**
2817
- * @public
2818
- * @enum
2819
- */
2820
- export declare const PropagateTags: {
2821
- readonly NONE: "NONE";
2822
- readonly SERVICE: "SERVICE";
2823
- readonly TASK_DEFINITION: "TASK_DEFINITION";
2824
- };
2825
- /**
2826
- * @public
2827
- */
2828
- export type PropagateTags = (typeof PropagateTags)[keyof typeof PropagateTags];
2829
- /**
2830
- * @public
2831
- * @enum
2832
- */
2833
- export declare const SchedulingStrategy: {
2834
- readonly DAEMON: "DAEMON";
2835
- readonly REPLICA: "REPLICA";
2836
- };
2837
- /**
2838
- * @public
2839
- */
2840
- export type SchedulingStrategy = (typeof SchedulingStrategy)[keyof typeof SchedulingStrategy];
2841
- /**
2842
- * @public
2843
- * @enum
2844
- */
2845
- export declare const ServiceConnectAccessLoggingFormat: {
2846
- readonly JSON: "JSON";
2847
- readonly TEXT: "TEXT";
2848
- };
2849
- /**
2850
- * @public
2851
- */
2852
- export type ServiceConnectAccessLoggingFormat = (typeof ServiceConnectAccessLoggingFormat)[keyof typeof ServiceConnectAccessLoggingFormat];
2853
- /**
2854
- * @public
2855
- * @enum
2856
- */
2857
- export declare const ServiceConnectIncludeQueryParameters: {
2858
- readonly DISABLED: "DISABLED";
2859
- readonly ENABLED: "ENABLED";
2860
- };
2861
- /**
2862
- * @public
2863
- */
2864
- export type ServiceConnectIncludeQueryParameters = (typeof ServiceConnectIncludeQueryParameters)[keyof typeof ServiceConnectIncludeQueryParameters];
2865
- /**
2866
- * <p>Configuration for Service Connect access logging. Access logs provide detailed
2867
- * information about requests made to your service, including request patterns, response
2868
- * codes, and timing data for debugging and monitoring purposes.</p>
2869
- * <note>
2870
- * <p>To enable access logs, you must also specify a <code>logConfiguration</code> in the <code>serviceConnectConfiguration</code>.</p>
2871
- * </note>
2358
+ * <p>Configuration for Service Connect access logging. Access logs provide detailed
2359
+ * information about requests made to your service, including request patterns, response
2360
+ * codes, and timing data for debugging and monitoring purposes.</p>
2361
+ * <note>
2362
+ * <p>To enable access logs, you must also specify a <code>logConfiguration</code> in the <code>serviceConnectConfiguration</code>.</p>
2363
+ * </note>
2872
2364
  * @public
2873
2365
  */
2874
2366
  export interface ServiceConnectAccessLogConfiguration {
@@ -2888,24 +2380,6 @@ export interface ServiceConnectAccessLogConfiguration {
2888
2380
  */
2889
2381
  includeQueryParameters?: ServiceConnectIncludeQueryParameters | undefined;
2890
2382
  }
2891
- /**
2892
- * @public
2893
- * @enum
2894
- */
2895
- export declare const LogDriver: {
2896
- readonly AWSFIRELENS: "awsfirelens";
2897
- readonly AWSLOGS: "awslogs";
2898
- readonly FLUENTD: "fluentd";
2899
- readonly GELF: "gelf";
2900
- readonly JOURNALD: "journald";
2901
- readonly JSON_FILE: "json-file";
2902
- readonly SPLUNK: "splunk";
2903
- readonly SYSLOG: "syslog";
2904
- };
2905
- /**
2906
- * @public
2907
- */
2908
- export type LogDriver = (typeof LogDriver)[keyof typeof LogDriver];
2909
2383
  /**
2910
2384
  * <p>An object representing the secret to expose to your container. Secrets can be exposed
2911
2385
  * to a container in the following ways:</p>
@@ -3586,31 +3060,6 @@ export interface ServiceRegistry {
3586
3060
  */
3587
3061
  containerPort?: number | undefined;
3588
3062
  }
3589
- /**
3590
- * @public
3591
- * @enum
3592
- */
3593
- export declare const TaskFilesystemType: {
3594
- readonly EXT3: "ext3";
3595
- readonly EXT4: "ext4";
3596
- readonly NTFS: "ntfs";
3597
- readonly XFS: "xfs";
3598
- };
3599
- /**
3600
- * @public
3601
- */
3602
- export type TaskFilesystemType = (typeof TaskFilesystemType)[keyof typeof TaskFilesystemType];
3603
- /**
3604
- * @public
3605
- * @enum
3606
- */
3607
- export declare const EBSResourceType: {
3608
- readonly VOLUME: "volume";
3609
- };
3610
- /**
3611
- * @public
3612
- */
3613
- export type EBSResourceType = (typeof EBSResourceType)[keyof typeof EBSResourceType];
3614
3063
  /**
3615
3064
  * <p>The tag specifications of an Amazon EBS volume.</p>
3616
3065
  * @public
@@ -4260,19 +3709,6 @@ export interface DeploymentEphemeralStorage {
4260
3709
  */
4261
3710
  kmsKeyId?: string | undefined;
4262
3711
  }
4263
- /**
4264
- * @public
4265
- * @enum
4266
- */
4267
- export declare const DeploymentRolloutState: {
4268
- readonly COMPLETED: "COMPLETED";
4269
- readonly FAILED: "FAILED";
4270
- readonly IN_PROGRESS: "IN_PROGRESS";
4271
- };
4272
- /**
4273
- * @public
4274
- */
4275
- export type DeploymentRolloutState = (typeof DeploymentRolloutState)[keyof typeof DeploymentRolloutState];
4276
3712
  /**
4277
3713
  * <p>The Service Connect resource. Each configuration maps a discovery name to a Cloud Map
4278
3714
  * service name. The data is stored in Cloud Map as part of the Service Connect
@@ -4497,17 +3933,6 @@ export interface ServiceEvent {
4497
3933
  */
4498
3934
  message?: string | undefined;
4499
3935
  }
4500
- /**
4501
- * @public
4502
- * @enum
4503
- */
4504
- export declare const ScaleUnit: {
4505
- readonly PERCENT: "PERCENT";
4506
- };
4507
- /**
4508
- * @public
4509
- */
4510
- export type ScaleUnit = (typeof ScaleUnit)[keyof typeof ScaleUnit];
4511
3936
  /**
4512
3937
  * <p>A floating-point percentage of the desired number of tasks to place and keep running
4513
3938
  * in the task set.</p>
@@ -4526,18 +3951,6 @@ export interface Scale {
4526
3951
  */
4527
3952
  unit?: ScaleUnit | undefined;
4528
3953
  }
4529
- /**
4530
- * @public
4531
- * @enum
4532
- */
4533
- export declare const StabilityStatus: {
4534
- readonly STABILIZING: "STABILIZING";
4535
- readonly STEADY_STATE: "STEADY_STATE";
4536
- };
4537
- /**
4538
- * @public
4539
- */
4540
- export type StabilityStatus = (typeof StabilityStatus)[keyof typeof StabilityStatus];
4541
3954
  /**
4542
3955
  * <p>Information about a set of Amazon ECS tasks in either an CodeDeploy or an
4543
3956
  * <code>EXTERNAL</code> deployment. An Amazon ECS task set includes details such as
@@ -5079,31 +4492,6 @@ export interface CreateServiceResponse {
5079
4492
  */
5080
4493
  service?: Service | undefined;
5081
4494
  }
5082
- /**
5083
- * <p>The specified platform version doesn't satisfy the required capabilities of the task
5084
- * definition.</p>
5085
- * @public
5086
- */
5087
- export declare class PlatformTaskDefinitionIncompatibilityException extends __BaseException {
5088
- readonly name: "PlatformTaskDefinitionIncompatibilityException";
5089
- readonly $fault: "client";
5090
- /**
5091
- * @internal
5092
- */
5093
- constructor(opts: __ExceptionOptionType<PlatformTaskDefinitionIncompatibilityException, __BaseException>);
5094
- }
5095
- /**
5096
- * <p>The specified platform version doesn't exist.</p>
5097
- * @public
5098
- */
5099
- export declare class PlatformUnknownException extends __BaseException {
5100
- readonly name: "PlatformUnknownException";
5101
- readonly $fault: "client";
5102
- /**
5103
- * @internal
5104
- */
5105
- constructor(opts: __ExceptionOptionType<PlatformUnknownException, __BaseException>);
5106
- }
5107
4495
  /**
5108
4496
  * @public
5109
4497
  */
@@ -5260,52 +4648,6 @@ export interface CreateTaskSetResponse {
5260
4648
  */
5261
4649
  taskSet?: TaskSet | undefined;
5262
4650
  }
5263
- /**
5264
- * <p>The specified service isn't active. You can't update a service that's inactive. If you
5265
- * have previously deleted a service, you can re-create it with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html">CreateService</a>.</p>
5266
- * @public
5267
- */
5268
- export declare class ServiceNotActiveException extends __BaseException {
5269
- readonly name: "ServiceNotActiveException";
5270
- readonly $fault: "client";
5271
- /**
5272
- * @internal
5273
- */
5274
- constructor(opts: __ExceptionOptionType<ServiceNotActiveException, __BaseException>);
5275
- }
5276
- /**
5277
- * <p>The specified service wasn't found. You can view your available services with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServices.html">ListServices</a>. Amazon ECS services are cluster specific and Region
5278
- * specific.</p>
5279
- * @public
5280
- */
5281
- export declare class ServiceNotFoundException extends __BaseException {
5282
- readonly name: "ServiceNotFoundException";
5283
- readonly $fault: "client";
5284
- /**
5285
- * @internal
5286
- */
5287
- constructor(opts: __ExceptionOptionType<ServiceNotFoundException, __BaseException>);
5288
- }
5289
- /**
5290
- * @public
5291
- * @enum
5292
- */
5293
- export declare const SettingName: {
5294
- readonly AWSVPC_TRUNKING: "awsvpcTrunking";
5295
- readonly CONTAINER_INSIGHTS: "containerInsights";
5296
- readonly CONTAINER_INSTANCE_LONG_ARN_FORMAT: "containerInstanceLongArnFormat";
5297
- readonly DEFAULT_LOG_DRIVER_MODE: "defaultLogDriverMode";
5298
- readonly FARGATE_FIPS_MODE: "fargateFIPSMode";
5299
- readonly FARGATE_TASK_RETIREMENT_WAIT_PERIOD: "fargateTaskRetirementWaitPeriod";
5300
- readonly GUARD_DUTY_ACTIVATE: "guardDutyActivate";
5301
- readonly SERVICE_LONG_ARN_FORMAT: "serviceLongArnFormat";
5302
- readonly TAG_RESOURCE_AUTHORIZATION: "tagResourceAuthorization";
5303
- readonly TASK_LONG_ARN_FORMAT: "taskLongArnFormat";
5304
- };
5305
- /**
5306
- * @public
5307
- */
5308
- export type SettingName = (typeof SettingName)[keyof typeof SettingName];
5309
4651
  /**
5310
4652
  * @public
5311
4653
  */
@@ -5332,18 +4674,6 @@ export interface DeleteAccountSettingRequest {
5332
4674
  */
5333
4675
  principalArn?: string | undefined;
5334
4676
  }
5335
- /**
5336
- * @public
5337
- * @enum
5338
- */
5339
- export declare const SettingType: {
5340
- readonly AWS_MANAGED: "aws_managed";
5341
- readonly USER: "user";
5342
- };
5343
- /**
5344
- * @public
5345
- */
5346
- export type SettingType = (typeof SettingType)[keyof typeof SettingType];
5347
4677
  /**
5348
4678
  * <p>The current account setting for a resource.</p>
5349
4679
  * @public
@@ -5387,17 +4717,6 @@ export interface DeleteAccountSettingResponse {
5387
4717
  */
5388
4718
  setting?: Setting | undefined;
5389
4719
  }
5390
- /**
5391
- * @public
5392
- * @enum
5393
- */
5394
- export declare const TargetType: {
5395
- readonly CONTAINER_INSTANCE: "container-instance";
5396
- };
5397
- /**
5398
- * @public
5399
- */
5400
- export type TargetType = (typeof TargetType)[keyof typeof TargetType];
5401
4720
  /**
5402
4721
  * <p>An attribute is a name-value pair that's associated with an Amazon ECS object. Use
5403
4722
  * attributes to extend the Amazon ECS data model by adding custom metadata to your
@@ -5464,20 +4783,6 @@ export interface DeleteAttributesResponse {
5464
4783
  */
5465
4784
  attributes?: Attribute[] | undefined;
5466
4785
  }
5467
- /**
5468
- * <p>The specified target wasn't found. You can view your available container instances
5469
- * with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListContainerInstances.html">ListContainerInstances</a>. Amazon ECS container instances are cluster-specific
5470
- * and Region-specific.</p>
5471
- * @public
5472
- */
5473
- export declare class TargetNotFoundException extends __BaseException {
5474
- readonly name: "TargetNotFoundException";
5475
- readonly $fault: "client";
5476
- /**
5477
- * @internal
5478
- */
5479
- constructor(opts: __ExceptionOptionType<TargetNotFoundException, __BaseException>);
5480
- }
5481
4786
  /**
5482
4787
  * @public
5483
4788
  */
@@ -5506,63 +4811,6 @@ export interface DeleteCapacityProviderResponse {
5506
4811
  */
5507
4812
  capacityProvider?: CapacityProvider | undefined;
5508
4813
  }
5509
- /**
5510
- * <p>The cluster contains one or more capacity providers that prevent the requested
5511
- * operation. This exception occurs when you try to delete a cluster that still has active
5512
- * capacity providers, including Amazon ECS Managed Instances capacity providers. You must
5513
- * first delete all capacity providers from the cluster before you can delete the cluster
5514
- * itself.</p>
5515
- * @public
5516
- */
5517
- export declare class ClusterContainsCapacityProviderException extends __BaseException {
5518
- readonly name: "ClusterContainsCapacityProviderException";
5519
- readonly $fault: "client";
5520
- /**
5521
- * @internal
5522
- */
5523
- constructor(opts: __ExceptionOptionType<ClusterContainsCapacityProviderException, __BaseException>);
5524
- }
5525
- /**
5526
- * <p>You can't delete a cluster that has registered container instances. First, deregister
5527
- * the container instances before you can delete the cluster. For more information, see
5528
- * <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeregisterContainerInstance.html">DeregisterContainerInstance</a>.</p>
5529
- * @public
5530
- */
5531
- export declare class ClusterContainsContainerInstancesException extends __BaseException {
5532
- readonly name: "ClusterContainsContainerInstancesException";
5533
- readonly $fault: "client";
5534
- /**
5535
- * @internal
5536
- */
5537
- constructor(opts: __ExceptionOptionType<ClusterContainsContainerInstancesException, __BaseException>);
5538
- }
5539
- /**
5540
- * <p>You can't delete a cluster that contains services. First, update the service to reduce
5541
- * its desired task count to 0, and then delete the service. For more information, see
5542
- * <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateService.html">UpdateService</a> and
5543
- * <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeleteService.html">DeleteService</a>.</p>
5544
- * @public
5545
- */
5546
- export declare class ClusterContainsServicesException extends __BaseException {
5547
- readonly name: "ClusterContainsServicesException";
5548
- readonly $fault: "client";
5549
- /**
5550
- * @internal
5551
- */
5552
- constructor(opts: __ExceptionOptionType<ClusterContainsServicesException, __BaseException>);
5553
- }
5554
- /**
5555
- * <p>You can't delete a cluster that has active tasks.</p>
5556
- * @public
5557
- */
5558
- export declare class ClusterContainsTasksException extends __BaseException {
5559
- readonly name: "ClusterContainsTasksException";
5560
- readonly $fault: "client";
5561
- /**
5562
- * @internal
5563
- */
5564
- constructor(opts: __ExceptionOptionType<ClusterContainsTasksException, __BaseException>);
5565
- }
5566
4814
  /**
5567
4815
  * @public
5568
4816
  */
@@ -5653,34 +4901,6 @@ export interface Failure {
5653
4901
  */
5654
4902
  detail?: string | undefined;
5655
4903
  }
5656
- /**
5657
- * @public
5658
- * @enum
5659
- */
5660
- export declare const Compatibility: {
5661
- readonly EC2: "EC2";
5662
- readonly EXTERNAL: "EXTERNAL";
5663
- readonly FARGATE: "FARGATE";
5664
- readonly MANAGED_INSTANCES: "MANAGED_INSTANCES";
5665
- };
5666
- /**
5667
- * @public
5668
- */
5669
- export type Compatibility = (typeof Compatibility)[keyof typeof Compatibility];
5670
- /**
5671
- * @public
5672
- * @enum
5673
- */
5674
- export declare const ContainerCondition: {
5675
- readonly COMPLETE: "COMPLETE";
5676
- readonly HEALTHY: "HEALTHY";
5677
- readonly START: "START";
5678
- readonly SUCCESS: "SUCCESS";
5679
- };
5680
- /**
5681
- * @public
5682
- */
5683
- export type ContainerCondition = (typeof ContainerCondition)[keyof typeof ContainerCondition];
5684
4904
  /**
5685
4905
  * <p>The dependencies defined for container startup and shutdown. A container can contain
5686
4906
  * multiple dependencies. When a dependency is defined for container startup, for container
@@ -5754,17 +4974,6 @@ export interface ContainerDependency {
5754
4974
  */
5755
4975
  condition: ContainerCondition | undefined;
5756
4976
  }
5757
- /**
5758
- * @public
5759
- * @enum
5760
- */
5761
- export declare const EnvironmentFileType: {
5762
- readonly S3: "s3";
5763
- };
5764
- /**
5765
- * @public
5766
- */
5767
- export type EnvironmentFileType = (typeof EnvironmentFileType)[keyof typeof EnvironmentFileType];
5768
4977
  /**
5769
4978
  * <p>A list of files containing the environment variables to pass to a container. You can
5770
4979
  * specify up to ten environment files. The file must have a <code>.env</code> file
@@ -5834,18 +5043,6 @@ export interface HostEntry {
5834
5043
  */
5835
5044
  ipAddress: string | undefined;
5836
5045
  }
5837
- /**
5838
- * @public
5839
- * @enum
5840
- */
5841
- export declare const FirelensConfigurationType: {
5842
- readonly FLUENTBIT: "fluentbit";
5843
- readonly FLUENTD: "fluentd";
5844
- };
5845
- /**
5846
- * @public
5847
- */
5848
- export type FirelensConfigurationType = (typeof FirelensConfigurationType)[keyof typeof FirelensConfigurationType];
5849
5046
  /**
5850
5047
  * <p>The FireLens configuration for the container. This is used to specify and configure a
5851
5048
  * log router for container logs. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html">Custom log routing</a>
@@ -6222,19 +5419,6 @@ export interface KernelCapabilities {
6222
5419
  */
6223
5420
  drop?: string[] | undefined;
6224
5421
  }
6225
- /**
6226
- * @public
6227
- * @enum
6228
- */
6229
- export declare const DeviceCgroupPermission: {
6230
- readonly MKNOD: "mknod";
6231
- readonly READ: "read";
6232
- readonly WRITE: "write";
6233
- };
6234
- /**
6235
- * @public
6236
- */
6237
- export type DeviceCgroupPermission = (typeof DeviceCgroupPermission)[keyof typeof DeviceCgroupPermission];
6238
5422
  /**
6239
5423
  * <p>An object representing a container instance host device.</p>
6240
5424
  * @public
@@ -6405,31 +5589,6 @@ export interface MountPoint {
6405
5589
  */
6406
5590
  readOnly?: boolean | undefined;
6407
5591
  }
6408
- /**
6409
- * @public
6410
- * @enum
6411
- */
6412
- export declare const ApplicationProtocol: {
6413
- readonly GRPC: "grpc";
6414
- readonly HTTP: "http";
6415
- readonly HTTP2: "http2";
6416
- };
6417
- /**
6418
- * @public
6419
- */
6420
- export type ApplicationProtocol = (typeof ApplicationProtocol)[keyof typeof ApplicationProtocol];
6421
- /**
6422
- * @public
6423
- * @enum
6424
- */
6425
- export declare const TransportProtocol: {
6426
- readonly TCP: "tcp";
6427
- readonly UDP: "udp";
6428
- };
6429
- /**
6430
- * @public
6431
- */
6432
- export type TransportProtocol = (typeof TransportProtocol)[keyof typeof TransportProtocol];
6433
5592
  /**
6434
5593
  * <p>Port mappings allow containers to access ports on the host container instance to send
6435
5594
  * or receive traffic. Port mappings are specified as part of the container
@@ -6637,18 +5796,6 @@ export interface RepositoryCredentials {
6637
5796
  */
6638
5797
  credentialsParameter: string | undefined;
6639
5798
  }
6640
- /**
6641
- * @public
6642
- * @enum
6643
- */
6644
- export declare const ResourceType: {
6645
- readonly GPU: "GPU";
6646
- readonly INFERENCE_ACCELERATOR: "InferenceAccelerator";
6647
- };
6648
- /**
6649
- * @public
6650
- */
6651
- export type ResourceType = (typeof ResourceType)[keyof typeof ResourceType];
6652
5799
  /**
6653
5800
  * <p>The type and amount of a resource to assign to a container. The supported resource
6654
5801
  * types are GPUs and Elastic Inference accelerators. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-gpu.html">Working with
@@ -6777,31 +5924,6 @@ export interface SystemControl {
6777
5924
  */
6778
5925
  value?: string | undefined;
6779
5926
  }
6780
- /**
6781
- * @public
6782
- * @enum
6783
- */
6784
- export declare const UlimitName: {
6785
- readonly CORE: "core";
6786
- readonly CPU: "cpu";
6787
- readonly DATA: "data";
6788
- readonly FSIZE: "fsize";
6789
- readonly LOCKS: "locks";
6790
- readonly MEMLOCK: "memlock";
6791
- readonly MSGQUEUE: "msgqueue";
6792
- readonly NICE: "nice";
6793
- readonly NOFILE: "nofile";
6794
- readonly NPROC: "nproc";
6795
- readonly RSS: "rss";
6796
- readonly RTPRIO: "rtprio";
6797
- readonly RTTIME: "rttime";
6798
- readonly SIGPENDING: "sigpending";
6799
- readonly STACK: "stack";
6800
- };
6801
- /**
6802
- * @public
6803
- */
6804
- export type UlimitName = (typeof UlimitName)[keyof typeof UlimitName];
6805
5927
  /**
6806
5928
  * <p>The <code>ulimit</code> settings to pass to the container.</p>
6807
5929
  * <p>Amazon ECS tasks hosted on Fargate use the default resource limit values
@@ -6835,18 +5957,6 @@ export interface Ulimit {
6835
5957
  */
6836
5958
  hardLimit: number | undefined;
6837
5959
  }
6838
- /**
6839
- * @public
6840
- * @enum
6841
- */
6842
- export declare const VersionConsistency: {
6843
- readonly DISABLED: "disabled";
6844
- readonly ENABLED: "enabled";
6845
- };
6846
- /**
6847
- * @public
6848
- */
6849
- export type VersionConsistency = (typeof VersionConsistency)[keyof typeof VersionConsistency];
6850
5960
  /**
6851
5961
  * <p>Details on a data volume from another container in the same task definition.</p>
6852
5962
  * @public
@@ -7648,56 +6758,6 @@ export interface InferenceAccelerator {
7648
6758
  */
7649
6759
  deviceType: string | undefined;
7650
6760
  }
7651
- /**
7652
- * @public
7653
- * @enum
7654
- */
7655
- export declare const IpcMode: {
7656
- readonly HOST: "host";
7657
- readonly NONE: "none";
7658
- readonly TASK: "task";
7659
- };
7660
- /**
7661
- * @public
7662
- */
7663
- export type IpcMode = (typeof IpcMode)[keyof typeof IpcMode];
7664
- /**
7665
- * @public
7666
- * @enum
7667
- */
7668
- export declare const NetworkMode: {
7669
- readonly AWSVPC: "awsvpc";
7670
- readonly BRIDGE: "bridge";
7671
- readonly HOST: "host";
7672
- readonly NONE: "none";
7673
- };
7674
- /**
7675
- * @public
7676
- */
7677
- export type NetworkMode = (typeof NetworkMode)[keyof typeof NetworkMode];
7678
- /**
7679
- * @public
7680
- * @enum
7681
- */
7682
- export declare const PidMode: {
7683
- readonly HOST: "host";
7684
- readonly TASK: "task";
7685
- };
7686
- /**
7687
- * @public
7688
- */
7689
- export type PidMode = (typeof PidMode)[keyof typeof PidMode];
7690
- /**
7691
- * @public
7692
- * @enum
7693
- */
7694
- export declare const TaskDefinitionPlacementConstraintType: {
7695
- readonly MEMBER_OF: "memberOf";
7696
- };
7697
- /**
7698
- * @public
7699
- */
7700
- export type TaskDefinitionPlacementConstraintType = (typeof TaskDefinitionPlacementConstraintType)[keyof typeof TaskDefinitionPlacementConstraintType];
7701
6761
  /**
7702
6762
  * <p>The constraint on task placement in the task definition. For more information, see
7703
6763
  * <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html">Task placement constraints</a> in the <i>Amazon
@@ -7722,17 +6782,6 @@ export interface TaskDefinitionPlacementConstraint {
7722
6782
  */
7723
6783
  expression?: string | undefined;
7724
6784
  }
7725
- /**
7726
- * @public
7727
- * @enum
7728
- */
7729
- export declare const ProxyConfigurationType: {
7730
- readonly APPMESH: "APPMESH";
7731
- };
7732
- /**
7733
- * @public
7734
- */
7735
- export type ProxyConfigurationType = (typeof ProxyConfigurationType)[keyof typeof ProxyConfigurationType];
7736
6785
  /**
7737
6786
  * <p>The configuration details for the App Mesh proxy.</p>
7738
6787
  * <p>For tasks that use the EC2 launch type, the container instances require at least
@@ -7807,38 +6856,6 @@ export interface ProxyConfiguration {
7807
6856
  */
7808
6857
  properties?: KeyValuePair[] | undefined;
7809
6858
  }
7810
- /**
7811
- * @public
7812
- * @enum
7813
- */
7814
- export declare const CPUArchitecture: {
7815
- readonly ARM64: "ARM64";
7816
- readonly X86_64: "X86_64";
7817
- };
7818
- /**
7819
- * @public
7820
- */
7821
- export type CPUArchitecture = (typeof CPUArchitecture)[keyof typeof CPUArchitecture];
7822
- /**
7823
- * @public
7824
- * @enum
7825
- */
7826
- export declare const OSFamily: {
7827
- readonly LINUX: "LINUX";
7828
- readonly WINDOWS_SERVER_2004_CORE: "WINDOWS_SERVER_2004_CORE";
7829
- readonly WINDOWS_SERVER_2016_FULL: "WINDOWS_SERVER_2016_FULL";
7830
- readonly WINDOWS_SERVER_2019_CORE: "WINDOWS_SERVER_2019_CORE";
7831
- readonly WINDOWS_SERVER_2019_FULL: "WINDOWS_SERVER_2019_FULL";
7832
- readonly WINDOWS_SERVER_2022_CORE: "WINDOWS_SERVER_2022_CORE";
7833
- readonly WINDOWS_SERVER_2022_FULL: "WINDOWS_SERVER_2022_FULL";
7834
- readonly WINDOWS_SERVER_2025_CORE: "WINDOWS_SERVER_2025_CORE";
7835
- readonly WINDOWS_SERVER_2025_FULL: "WINDOWS_SERVER_2025_FULL";
7836
- readonly WINDOWS_SERVER_20H2_CORE: "WINDOWS_SERVER_20H2_CORE";
7837
- };
7838
- /**
7839
- * @public
7840
- */
7841
- export type OSFamily = (typeof OSFamily)[keyof typeof OSFamily];
7842
6859
  /**
7843
6860
  * <p>Information about the platform for the Amazon ECS service or task.</p>
7844
6861
  * <p>For more information about <code>RuntimePlatform</code>, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#runtime-platform">RuntimePlatform</a> in the <i>Amazon Elastic Container Service Developer
@@ -7860,31 +6877,6 @@ export interface RuntimePlatform {
7860
6877
  */
7861
6878
  operatingSystemFamily?: OSFamily | undefined;
7862
6879
  }
7863
- /**
7864
- * @public
7865
- * @enum
7866
- */
7867
- export declare const TaskDefinitionStatus: {
7868
- readonly ACTIVE: "ACTIVE";
7869
- readonly DELETE_IN_PROGRESS: "DELETE_IN_PROGRESS";
7870
- readonly INACTIVE: "INACTIVE";
7871
- };
7872
- /**
7873
- * @public
7874
- */
7875
- export type TaskDefinitionStatus = (typeof TaskDefinitionStatus)[keyof typeof TaskDefinitionStatus];
7876
- /**
7877
- * @public
7878
- * @enum
7879
- */
7880
- export declare const Scope: {
7881
- readonly SHARED: "shared";
7882
- readonly TASK: "task";
7883
- };
7884
- /**
7885
- * @public
7886
- */
7887
- export type Scope = (typeof Scope)[keyof typeof Scope];
7888
6880
  /**
7889
6881
  * <p>This parameter is specified when you're using Docker volumes. Docker volumes are only
7890
6882
  * supported when you're using the EC2 launch type. Windows containers only support the use
@@ -7936,18 +6928,6 @@ export interface DockerVolumeConfiguration {
7936
6928
  */
7937
6929
  labels?: Record<string, string> | undefined;
7938
6930
  }
7939
- /**
7940
- * @public
7941
- * @enum
7942
- */
7943
- export declare const EFSAuthorizationConfigIAM: {
7944
- readonly DISABLED: "DISABLED";
7945
- readonly ENABLED: "ENABLED";
7946
- };
7947
- /**
7948
- * @public
7949
- */
7950
- export type EFSAuthorizationConfigIAM = (typeof EFSAuthorizationConfigIAM)[keyof typeof EFSAuthorizationConfigIAM];
7951
6931
  /**
7952
6932
  * <p>The authorization configuration details for the Amazon EFS file system.</p>
7953
6933
  * @public
@@ -7975,18 +6955,6 @@ export interface EFSAuthorizationConfig {
7975
6955
  */
7976
6956
  iam?: EFSAuthorizationConfigIAM | undefined;
7977
6957
  }
7978
- /**
7979
- * @public
7980
- * @enum
7981
- */
7982
- export declare const EFSTransitEncryption: {
7983
- readonly DISABLED: "DISABLED";
7984
- readonly ENABLED: "ENABLED";
7985
- };
7986
- /**
7987
- * @public
7988
- */
7989
- export type EFSTransitEncryption = (typeof EFSTransitEncryption)[keyof typeof EFSTransitEncryption];
7990
6958
  /**
7991
6959
  * <p>This parameter is specified when you're using an Amazon Elastic File System file
7992
6960
  * system for task storage. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/efs-volumes.html">Amazon EFS volumes</a> in
@@ -8555,22 +7523,9 @@ export interface DeleteTaskSetResponse {
8555
7523
  taskSet?: TaskSet | undefined;
8556
7524
  }
8557
7525
  /**
8558
- * <p>The specified task set wasn't found. You can view your available task sets with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTaskSets.html">DescribeTaskSets</a>. Task sets are specific to each cluster, service and
8559
- * Region.</p>
8560
7526
  * @public
8561
7527
  */
8562
- export declare class TaskSetNotFoundException extends __BaseException {
8563
- readonly name: "TaskSetNotFoundException";
8564
- readonly $fault: "client";
8565
- /**
8566
- * @internal
8567
- */
8568
- constructor(opts: __ExceptionOptionType<TaskSetNotFoundException, __BaseException>);
8569
- }
8570
- /**
8571
- * @public
8572
- */
8573
- export interface DeregisterContainerInstanceRequest {
7528
+ export interface DeregisterContainerInstanceRequest {
8574
7529
  /**
8575
7530
  * <p>The short name or full Amazon Resource Name (ARN) of the cluster that hosts the
8576
7531
  * container instance to deregister. If you do not specify a cluster, the default cluster
@@ -8601,31 +7556,6 @@ export interface DeregisterContainerInstanceRequest {
8601
7556
  */
8602
7557
  force?: boolean | undefined;
8603
7558
  }
8604
- /**
8605
- * @public
8606
- * @enum
8607
- */
8608
- export declare const InstanceHealthCheckState: {
8609
- readonly IMPAIRED: "IMPAIRED";
8610
- readonly INITIALIZING: "INITIALIZING";
8611
- readonly INSUFFICIENT_DATA: "INSUFFICIENT_DATA";
8612
- readonly OK: "OK";
8613
- };
8614
- /**
8615
- * @public
8616
- */
8617
- export type InstanceHealthCheckState = (typeof InstanceHealthCheckState)[keyof typeof InstanceHealthCheckState];
8618
- /**
8619
- * @public
8620
- * @enum
8621
- */
8622
- export declare const InstanceHealthCheckType: {
8623
- readonly CONTAINER_RUNTIME: "CONTAINER_RUNTIME";
8624
- };
8625
- /**
8626
- * @public
8627
- */
8628
- export type InstanceHealthCheckType = (typeof InstanceHealthCheckType)[keyof typeof InstanceHealthCheckType];
8629
7559
  /**
8630
7560
  * <p>An object representing the result of a container instance health status check.</p>
8631
7561
  * @public
@@ -8945,17 +7875,6 @@ export interface DeregisterTaskDefinitionResponse {
8945
7875
  */
8946
7876
  taskDefinition?: TaskDefinition | undefined;
8947
7877
  }
8948
- /**
8949
- * @public
8950
- * @enum
8951
- */
8952
- export declare const CapacityProviderField: {
8953
- readonly TAGS: "TAGS";
8954
- };
8955
- /**
8956
- * @public
8957
- */
8958
- export type CapacityProviderField = (typeof CapacityProviderField)[keyof typeof CapacityProviderField];
8959
7878
  /**
8960
7879
  * @public
8961
7880
  */
@@ -9030,21 +7949,6 @@ export interface DescribeCapacityProvidersResponse {
9030
7949
  */
9031
7950
  nextToken?: string | undefined;
9032
7951
  }
9033
- /**
9034
- * @public
9035
- * @enum
9036
- */
9037
- export declare const ClusterField: {
9038
- readonly ATTACHMENTS: "ATTACHMENTS";
9039
- readonly CONFIGURATIONS: "CONFIGURATIONS";
9040
- readonly SETTINGS: "SETTINGS";
9041
- readonly STATISTICS: "STATISTICS";
9042
- readonly TAGS: "TAGS";
9043
- };
9044
- /**
9045
- * @public
9046
- */
9047
- export type ClusterField = (typeof ClusterField)[keyof typeof ClusterField];
9048
7952
  /**
9049
7953
  * @public
9050
7954
  */
@@ -9087,18 +7991,6 @@ export interface DescribeClustersResponse {
9087
7991
  */
9088
7992
  failures?: Failure[] | undefined;
9089
7993
  }
9090
- /**
9091
- * @public
9092
- * @enum
9093
- */
9094
- export declare const ContainerInstanceField: {
9095
- readonly CONTAINER_INSTANCE_HEALTH: "CONTAINER_INSTANCE_HEALTH";
9096
- readonly TAGS: "TAGS";
9097
- };
9098
- /**
9099
- * @public
9100
- */
9101
- export type ContainerInstanceField = (typeof ContainerInstanceField)[keyof typeof ContainerInstanceField];
9102
7994
  /**
9103
7995
  * @public
9104
7996
  */
@@ -9153,20 +8045,6 @@ export interface DescribeServiceDeploymentsRequest {
9153
8045
  */
9154
8046
  serviceDeploymentArns: string[] | undefined;
9155
8047
  }
9156
- /**
9157
- * @public
9158
- * @enum
9159
- */
9160
- export declare const ServiceDeploymentRollbackMonitorsStatus: {
9161
- readonly DISABLED: "DISABLED";
9162
- readonly MONITORING: "MONITORING";
9163
- readonly MONITORING_COMPLETE: "MONITORING_COMPLETE";
9164
- readonly TRIGGERED: "TRIGGERED";
9165
- };
9166
- /**
9167
- * @public
9168
- */
9169
- export type ServiceDeploymentRollbackMonitorsStatus = (typeof ServiceDeploymentRollbackMonitorsStatus)[keyof typeof ServiceDeploymentRollbackMonitorsStatus];
9170
8048
  /**
9171
8049
  * <p>The CloudWatch alarms used to determine a service deployment failed. </p>
9172
8050
  * <p>Amazon ECS considers the service deployment as failed when any of the alarms move to
@@ -9231,26 +8109,6 @@ export interface ServiceDeploymentCircuitBreaker {
9231
8109
  */
9232
8110
  threshold?: number | undefined;
9233
8111
  }
9234
- /**
9235
- * @public
9236
- * @enum
9237
- */
9238
- export declare const ServiceDeploymentLifecycleStage: {
9239
- readonly BAKE_TIME: "BAKE_TIME";
9240
- readonly CLEAN_UP: "CLEAN_UP";
9241
- readonly POST_PRODUCTION_TRAFFIC_SHIFT: "POST_PRODUCTION_TRAFFIC_SHIFT";
9242
- readonly POST_SCALE_UP: "POST_SCALE_UP";
9243
- readonly POST_TEST_TRAFFIC_SHIFT: "POST_TEST_TRAFFIC_SHIFT";
9244
- readonly PRE_SCALE_UP: "PRE_SCALE_UP";
9245
- readonly PRODUCTION_TRAFFIC_SHIFT: "PRODUCTION_TRAFFIC_SHIFT";
9246
- readonly RECONCILE_SERVICE: "RECONCILE_SERVICE";
9247
- readonly SCALE_UP: "SCALE_UP";
9248
- readonly TEST_TRAFFIC_SHIFT: "TEST_TRAFFIC_SHIFT";
9249
- };
9250
- /**
9251
- * @public
9252
- */
9253
- export type ServiceDeploymentLifecycleStage = (typeof ServiceDeploymentLifecycleStage)[keyof typeof ServiceDeploymentLifecycleStage];
9254
8112
  /**
9255
8113
  * <p>Information about the service deployment rollback.</p>
9256
8114
  * @public
@@ -9314,25 +8172,6 @@ export interface ServiceRevisionSummary {
9314
8172
  */
9315
8173
  requestedProductionTrafficWeight?: number | undefined;
9316
8174
  }
9317
- /**
9318
- * @public
9319
- * @enum
9320
- */
9321
- export declare const ServiceDeploymentStatus: {
9322
- readonly IN_PROGRESS: "IN_PROGRESS";
9323
- readonly PENDING: "PENDING";
9324
- readonly ROLLBACK_FAILED: "ROLLBACK_FAILED";
9325
- readonly ROLLBACK_IN_PROGRESS: "ROLLBACK_IN_PROGRESS";
9326
- readonly ROLLBACK_REQUESTED: "ROLLBACK_REQUESTED";
9327
- readonly ROLLBACK_SUCCESSFUL: "ROLLBACK_SUCCESSFUL";
9328
- readonly STOPPED: "STOPPED";
9329
- readonly STOP_REQUESTED: "STOP_REQUESTED";
9330
- readonly SUCCESSFUL: "SUCCESSFUL";
9331
- };
9332
- /**
9333
- * @public
9334
- */
9335
- export type ServiceDeploymentStatus = (typeof ServiceDeploymentStatus)[keyof typeof ServiceDeploymentStatus];
9336
8175
  /**
9337
8176
  * <p>Information about the service deployment.</p>
9338
8177
  * <p>Service deployments provide a comprehensive view of your deployments. For information
@@ -9707,17 +8546,6 @@ export interface DescribeServiceRevisionsResponse {
9707
8546
  */
9708
8547
  failures?: Failure[] | undefined;
9709
8548
  }
9710
- /**
9711
- * @public
9712
- * @enum
9713
- */
9714
- export declare const ServiceField: {
9715
- readonly TAGS: "TAGS";
9716
- };
9717
- /**
9718
- * @public
9719
- */
9720
- export type ServiceField = (typeof ServiceField)[keyof typeof ServiceField];
9721
8549
  /**
9722
8550
  * @public
9723
8551
  */
@@ -9759,17 +8587,6 @@ export interface DescribeServicesResponse {
9759
8587
  */
9760
8588
  failures?: Failure[] | undefined;
9761
8589
  }
9762
- /**
9763
- * @public
9764
- * @enum
9765
- */
9766
- export declare const TaskDefinitionField: {
9767
- readonly TAGS: "TAGS";
9768
- };
9769
- /**
9770
- * @public
9771
- */
9772
- export type TaskDefinitionField = (typeof TaskDefinitionField)[keyof typeof TaskDefinitionField];
9773
8590
  /**
9774
8591
  * @public
9775
8592
  */
@@ -9839,17 +8656,6 @@ export interface DescribeTaskDefinitionResponse {
9839
8656
  */
9840
8657
  tags?: Tag[] | undefined;
9841
8658
  }
9842
- /**
9843
- * @public
9844
- * @enum
9845
- */
9846
- export declare const TaskField: {
9847
- readonly TAGS: "TAGS";
9848
- };
9849
- /**
9850
- * @public
9851
- */
9852
- export type TaskField = (typeof TaskField)[keyof typeof TaskField];
9853
8659
  /**
9854
8660
  * @public
9855
8661
  */
@@ -9874,42 +8680,6 @@ export interface DescribeTasksRequest {
9874
8680
  */
9875
8681
  include?: TaskField[] | undefined;
9876
8682
  }
9877
- /**
9878
- * @public
9879
- * @enum
9880
- */
9881
- export declare const Connectivity: {
9882
- readonly CONNECTED: "CONNECTED";
9883
- readonly DISCONNECTED: "DISCONNECTED";
9884
- };
9885
- /**
9886
- * @public
9887
- */
9888
- export type Connectivity = (typeof Connectivity)[keyof typeof Connectivity];
9889
- /**
9890
- * @public
9891
- * @enum
9892
- */
9893
- export declare const HealthStatus: {
9894
- readonly HEALTHY: "HEALTHY";
9895
- readonly UNHEALTHY: "UNHEALTHY";
9896
- readonly UNKNOWN: "UNKNOWN";
9897
- };
9898
- /**
9899
- * @public
9900
- */
9901
- export type HealthStatus = (typeof HealthStatus)[keyof typeof HealthStatus];
9902
- /**
9903
- * @public
9904
- * @enum
9905
- */
9906
- export declare const ManagedAgentName: {
9907
- readonly ExecuteCommandAgent: "ExecuteCommandAgent";
9908
- };
9909
- /**
9910
- * @public
9911
- */
9912
- export type ManagedAgentName = (typeof ManagedAgentName)[keyof typeof ManagedAgentName];
9913
8683
  /**
9914
8684
  * <p>Details about the managed agent status for the container.</p>
9915
8685
  * @public
@@ -10325,22 +9095,6 @@ export interface TaskOverride {
10325
9095
  */
10326
9096
  ephemeralStorage?: EphemeralStorage | undefined;
10327
9097
  }
10328
- /**
10329
- * @public
10330
- * @enum
10331
- */
10332
- export declare const TaskStopCode: {
10333
- readonly ESSENTIAL_CONTAINER_EXITED: "EssentialContainerExited";
10334
- readonly SERVICE_SCHEDULER_INITIATED: "ServiceSchedulerInitiated";
10335
- readonly SPOT_INTERRUPTION: "SpotInterruption";
10336
- readonly TASK_FAILED_TO_START: "TaskFailedToStart";
10337
- readonly TERMINATION_NOTICE: "TerminationNotice";
10338
- readonly USER_INITIATED: "UserInitiated";
10339
- };
10340
- /**
10341
- * @public
10342
- */
10343
- export type TaskStopCode = (typeof TaskStopCode)[keyof typeof TaskStopCode];
10344
9098
  /**
10345
9099
  * <p>Details on a task in a cluster.</p>
10346
9100
  * @public
@@ -10677,17 +9431,6 @@ export interface DescribeTasksResponse {
10677
9431
  */
10678
9432
  failures?: Failure[] | undefined;
10679
9433
  }
10680
- /**
10681
- * @public
10682
- * @enum
10683
- */
10684
- export declare const TaskSetField: {
10685
- readonly TAGS: "TAGS";
10686
- };
10687
- /**
10688
- * @public
10689
- */
10690
- export type TaskSetField = (typeof TaskSetField)[keyof typeof TaskSetField];
10691
9434
  /**
10692
9435
  * @public
10693
9436
  */
@@ -10866,34 +9609,6 @@ export interface ExecuteCommandResponse {
10866
9609
  */
10867
9610
  taskArn?: string | undefined;
10868
9611
  }
10869
- /**
10870
- * <p>The execute command cannot run. This error can be caused by any of the following
10871
- * configuration issues:</p>
10872
- * <ul>
10873
- * <li>
10874
- * <p>Incorrect IAM permissions</p>
10875
- * </li>
10876
- * <li>
10877
- * <p>The SSM agent is not installed or is not running</p>
10878
- * </li>
10879
- * <li>
10880
- * <p> There is an interface Amazon VPC endpoint for Amazon ECS, but there is not
10881
- * one for Systems Manager Session Manager</p>
10882
- * </li>
10883
- * </ul>
10884
- * <p>For information about how to troubleshoot the issues, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html">Troubleshooting issues with ECS
10885
- * Exec</a> in the <i>Amazon Elastic Container Service Developer
10886
- * Guide</i>.</p>
10887
- * @public
10888
- */
10889
- export declare class TargetNotConnectedException extends __BaseException {
10890
- readonly name: "TargetNotConnectedException";
10891
- readonly $fault: "client";
10892
- /**
10893
- * @internal
10894
- */
10895
- constructor(opts: __ExceptionOptionType<TargetNotConnectedException, __BaseException>);
10896
- }
10897
9612
  /**
10898
9613
  * @public
10899
9614
  */
@@ -10965,18 +9680,6 @@ export interface GetTaskProtectionResponse {
10965
9680
  */
10966
9681
  failures?: Failure[] | undefined;
10967
9682
  }
10968
- /**
10969
- * <p>The specified resource wasn't found.</p>
10970
- * @public
10971
- */
10972
- export declare class ResourceNotFoundException extends __BaseException {
10973
- readonly name: "ResourceNotFoundException";
10974
- readonly $fault: "client";
10975
- /**
10976
- * @internal
10977
- */
10978
- constructor(opts: __ExceptionOptionType<ResourceNotFoundException, __BaseException>);
10979
- }
10980
9683
  /**
10981
9684
  * @public
10982
9685
  */
@@ -11174,21 +9877,6 @@ export interface ListClustersResponse {
11174
9877
  */
11175
9878
  nextToken?: string | undefined;
11176
9879
  }
11177
- /**
11178
- * @public
11179
- * @enum
11180
- */
11181
- export declare const ContainerInstanceStatus: {
11182
- readonly ACTIVE: "ACTIVE";
11183
- readonly DEREGISTERING: "DEREGISTERING";
11184
- readonly DRAINING: "DRAINING";
11185
- readonly REGISTERING: "REGISTERING";
11186
- readonly REGISTRATION_FAILED: "REGISTRATION_FAILED";
11187
- };
11188
- /**
11189
- * @public
11190
- */
11191
- export type ContainerInstanceStatus = (typeof ContainerInstanceStatus)[keyof typeof ContainerInstanceStatus];
11192
9880
  /**
11193
9881
  * @public
11194
9882
  */
@@ -11586,19 +10274,6 @@ export interface ListTagsForResourceResponse {
11586
10274
  */
11587
10275
  tags?: Tag[] | undefined;
11588
10276
  }
11589
- /**
11590
- * @public
11591
- * @enum
11592
- */
11593
- export declare const TaskDefinitionFamilyStatus: {
11594
- readonly ACTIVE: "ACTIVE";
11595
- readonly ALL: "ALL";
11596
- readonly INACTIVE: "INACTIVE";
11597
- };
11598
- /**
11599
- * @public
11600
- */
11601
- export type TaskDefinitionFamilyStatus = (typeof TaskDefinitionFamilyStatus)[keyof typeof TaskDefinitionFamilyStatus];
11602
10277
  /**
11603
10278
  * @public
11604
10279
  */
@@ -11671,18 +10346,6 @@ export interface ListTaskDefinitionFamiliesResponse {
11671
10346
  */
11672
10347
  nextToken?: string | undefined;
11673
10348
  }
11674
- /**
11675
- * @public
11676
- * @enum
11677
- */
11678
- export declare const SortOrder: {
11679
- readonly ASC: "ASC";
11680
- readonly DESC: "DESC";
11681
- };
11682
- /**
11683
- * @public
11684
- */
11685
- export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder];
11686
10349
  /**
11687
10350
  * @public
11688
10351
  */
@@ -11759,3 +10422,2775 @@ export interface ListTaskDefinitionsResponse {
11759
10422
  */
11760
10423
  nextToken?: string | undefined;
11761
10424
  }
10425
+ /**
10426
+ * @public
10427
+ */
10428
+ export interface ListTasksRequest {
10429
+ /**
10430
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when filtering
10431
+ * the <code>ListTasks</code> results. If you do not specify a cluster, the default cluster
10432
+ * is assumed.</p>
10433
+ * @public
10434
+ */
10435
+ cluster?: string | undefined;
10436
+ /**
10437
+ * <p>The container instance ID or full ARN of the container instance to use when filtering
10438
+ * the <code>ListTasks</code> results. Specifying a <code>containerInstance</code> limits
10439
+ * the results to tasks that belong to that container instance.</p>
10440
+ * @public
10441
+ */
10442
+ containerInstance?: string | undefined;
10443
+ /**
10444
+ * <p>The name of the task definition family to use when filtering the
10445
+ * <code>ListTasks</code> results. Specifying a <code>family</code> limits the results
10446
+ * to tasks that belong to that family.</p>
10447
+ * @public
10448
+ */
10449
+ family?: string | undefined;
10450
+ /**
10451
+ * <p>The <code>nextToken</code> value returned from a <code>ListTasks</code> request
10452
+ * indicating that more results are available to fulfill the request and further calls will
10453
+ * be needed. If <code>maxResults</code> was provided, it's possible the number of results
10454
+ * to be fewer than <code>maxResults</code>.</p>
10455
+ * <note>
10456
+ * <p>This token should be treated as an opaque identifier that is only used to retrieve
10457
+ * the next items in a list and not for other programmatic purposes.</p>
10458
+ * </note>
10459
+ * @public
10460
+ */
10461
+ nextToken?: string | undefined;
10462
+ /**
10463
+ * <p>The maximum number of task results that <code>ListTasks</code> returned in paginated
10464
+ * output. When this parameter is used, <code>ListTasks</code> only returns
10465
+ * <code>maxResults</code> results in a single page along with a <code>nextToken</code>
10466
+ * response element. The remaining results of the initial request can be seen by sending
10467
+ * another <code>ListTasks</code> request with the returned <code>nextToken</code> value.
10468
+ * This value can be between 1 and 100. If this parameter isn't used, then
10469
+ * <code>ListTasks</code> returns up to 100 results and a <code>nextToken</code> value
10470
+ * if applicable.</p>
10471
+ * @public
10472
+ */
10473
+ maxResults?: number | undefined;
10474
+ /**
10475
+ * <p>The <code>startedBy</code> value to filter the task results with. Specifying a
10476
+ * <code>startedBy</code> value limits the results to tasks that were started with that
10477
+ * value.</p>
10478
+ * <p>When you specify <code>startedBy</code> as the filter, it must be the only filter that
10479
+ * you use.</p>
10480
+ * @public
10481
+ */
10482
+ startedBy?: string | undefined;
10483
+ /**
10484
+ * <p>The name of the service to use when filtering the <code>ListTasks</code> results.
10485
+ * Specifying a <code>serviceName</code> limits the results to tasks that belong to that
10486
+ * service.</p>
10487
+ * @public
10488
+ */
10489
+ serviceName?: string | undefined;
10490
+ /**
10491
+ * <p>The task desired status to use when filtering the <code>ListTasks</code> results.
10492
+ * Specifying a <code>desiredStatus</code> of <code>STOPPED</code> limits the results to
10493
+ * tasks that Amazon ECS has set the desired status to <code>STOPPED</code>. This can be
10494
+ * useful for debugging tasks that aren't starting properly or have died or finished. The
10495
+ * default status filter is <code>RUNNING</code>, which shows tasks that Amazon ECS has set
10496
+ * the desired status to <code>RUNNING</code>.</p>
10497
+ * <note>
10498
+ * <p>Although you can filter results based on a desired status of <code>PENDING</code>,
10499
+ * this doesn't return any results. Amazon ECS never sets the desired status of a task
10500
+ * to that value (only a task's <code>lastStatus</code> may have a value of
10501
+ * <code>PENDING</code>).</p>
10502
+ * </note>
10503
+ * @public
10504
+ */
10505
+ desiredStatus?: DesiredStatus | undefined;
10506
+ /**
10507
+ * <p>The launch type to use when filtering the <code>ListTasks</code> results.</p>
10508
+ * @public
10509
+ */
10510
+ launchType?: LaunchType | undefined;
10511
+ }
10512
+ /**
10513
+ * @public
10514
+ */
10515
+ export interface ListTasksResponse {
10516
+ /**
10517
+ * <p>The list of task ARN entries for the <code>ListTasks</code> request.</p>
10518
+ * @public
10519
+ */
10520
+ taskArns?: string[] | undefined;
10521
+ /**
10522
+ * <p>The <code>nextToken</code> value to include in a future <code>ListTasks</code>
10523
+ * request. When the results of a <code>ListTasks</code> request exceed
10524
+ * <code>maxResults</code>, this value can be used to retrieve the next page of
10525
+ * results. This value is <code>null</code> when there are no more results to
10526
+ * return.</p>
10527
+ * @public
10528
+ */
10529
+ nextToken?: string | undefined;
10530
+ }
10531
+ /**
10532
+ * @public
10533
+ */
10534
+ export interface PutAccountSettingRequest {
10535
+ /**
10536
+ * <p>The Amazon ECS account setting name to modify.</p>
10537
+ * <p>The following are the valid values for the account setting name.</p>
10538
+ * <ul>
10539
+ * <li>
10540
+ * <p>
10541
+ * <code>serviceLongArnFormat</code> - When modified, the Amazon Resource Name
10542
+ * (ARN) and resource ID format of the resource type for a specified user, role, or
10543
+ * the root user for an account is affected. The opt-in and opt-out account setting
10544
+ * must be set for each Amazon ECS resource separately. The ARN and resource ID
10545
+ * format of a resource is defined by the opt-in status of the user or role that
10546
+ * created the resource. You must turn on this setting to use Amazon ECS features
10547
+ * such as resource tagging.</p>
10548
+ * </li>
10549
+ * <li>
10550
+ * <p>
10551
+ * <code>taskLongArnFormat</code> - When modified, the Amazon Resource Name (ARN)
10552
+ * and resource ID format of the resource type for a specified user, role, or the
10553
+ * root user for an account is affected. The opt-in and opt-out account setting
10554
+ * must be set for each Amazon ECS resource separately. The ARN and resource ID
10555
+ * format of a resource is defined by the opt-in status of the user or role that
10556
+ * created the resource. You must turn on this setting to use Amazon ECS features
10557
+ * such as resource tagging.</p>
10558
+ * </li>
10559
+ * <li>
10560
+ * <p>
10561
+ * <code>containerInstanceLongArnFormat</code> - When modified, the Amazon
10562
+ * Resource Name (ARN) and resource ID format of the resource type for a specified
10563
+ * user, role, or the root user for an account is affected. The opt-in and opt-out
10564
+ * account setting must be set for each Amazon ECS resource separately. The ARN and
10565
+ * resource ID format of a resource is defined by the opt-in status of the user or
10566
+ * role that created the resource. You must turn on this setting to use Amazon ECS
10567
+ * features such as resource tagging.</p>
10568
+ * </li>
10569
+ * <li>
10570
+ * <p>
10571
+ * <code>awsvpcTrunking</code> - When modified, the elastic network interface
10572
+ * (ENI) limit for any new container instances that support the feature is changed.
10573
+ * If <code>awsvpcTrunking</code> is turned on, any new container instances that
10574
+ * support the feature are launched have the increased ENI limits available to
10575
+ * them. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-instance-eni.html">Elastic
10576
+ * Network Interface Trunking</a> in the <i>Amazon Elastic Container
10577
+ * Service Developer Guide</i>.</p>
10578
+ * </li>
10579
+ * <li>
10580
+ * <p>
10581
+ * <code>containerInsights</code> - Container Insights with enhanced
10582
+ * observability provides all the Container Insights metrics, plus additional task
10583
+ * and container metrics. This version supports enhanced observability for Amazon
10584
+ * ECS clusters using the Amazon EC2 and Fargate launch types. After you configure
10585
+ * Container Insights with enhanced observability on Amazon ECS, Container Insights
10586
+ * auto-collects detailed infrastructure telemetry from the cluster level down to
10587
+ * the container level in your environment and displays these critical performance
10588
+ * data in curated dashboards removing the heavy lifting in observability set-up. </p>
10589
+ * <p>To use Container Insights with enhanced observability, set the
10590
+ * <code>containerInsights</code> account setting to
10591
+ * <code>enhanced</code>.</p>
10592
+ * <p>To use Container Insights, set the <code>containerInsights</code> account
10593
+ * setting to <code>enabled</code>.</p>
10594
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch-container-insights.html">Monitor Amazon ECS containers using Container Insights with enhanced
10595
+ * observability</a> in the <i>Amazon Elastic Container Service
10596
+ * Developer Guide</i>.</p>
10597
+ * </li>
10598
+ * <li>
10599
+ * <p>
10600
+ * <code>dualStackIPv6</code> - When turned on, when using a VPC in dual stack
10601
+ * mode, your tasks using the <code>awsvpc</code> network mode can have an IPv6
10602
+ * address assigned. For more information on using IPv6 with tasks launched on
10603
+ * Amazon EC2 instances, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking-awsvpc.html#task-networking-vpc-dual-stack">Using a VPC in dual-stack mode</a>. For more information on using IPv6
10604
+ * with tasks launched on Fargate, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/fargate-task-networking.html#fargate-task-networking-vpc-dual-stack">Using a VPC in dual-stack mode</a>.</p>
10605
+ * </li>
10606
+ * <li>
10607
+ * <p>
10608
+ * <code>fargateTaskRetirementWaitPeriod</code> - When Amazon Web Services
10609
+ * determines that a security or infrastructure update is needed for an Amazon ECS
10610
+ * task hosted on Fargate, the tasks need to be stopped and new tasks launched to
10611
+ * replace them. Use <code>fargateTaskRetirementWaitPeriod</code> to configure the
10612
+ * wait time to retire a Fargate task. For information about the Fargate tasks
10613
+ * maintenance, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-maintenance.html">Amazon Web
10614
+ * Services Fargate task maintenance</a> in the
10615
+ * <i>Amazon ECS Developer Guide</i>.</p>
10616
+ * </li>
10617
+ * <li>
10618
+ * <p>
10619
+ * <code>tagResourceAuthorization</code> - Amazon ECS is introducing tagging
10620
+ * authorization for resource creation. Users must have permissions for actions
10621
+ * that create the resource, such as <code>ecsCreateCluster</code>. If tags are
10622
+ * specified when you create a resource, Amazon Web Services performs
10623
+ * additional authorization to verify if users or roles have permissions to create
10624
+ * tags. Therefore, you must grant explicit permissions to use the
10625
+ * <code>ecs:TagResource</code> action. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/supported-iam-actions-tagging.html">Grant permission to tag resources on creation</a> in the
10626
+ * <i>Amazon ECS Developer Guide</i>.</p>
10627
+ * </li>
10628
+ * <li>
10629
+ * <p>
10630
+ * <code>defaultLogDriverMode</code> - Amazon ECS supports setting a default
10631
+ * delivery mode of log messages from a container to the <code>logDriver</code>
10632
+ * that you specify in the container's <code>logConfiguration</code>. The delivery
10633
+ * mode affects application stability when the flow of logs from the container to
10634
+ * the log driver is interrupted. The <code>defaultLogDriverMode</code> setting
10635
+ * supports two values: <code>blocking</code> and <code>non-blocking</code>. If you
10636
+ * don't specify a delivery mode in your container definition's
10637
+ * <code>logConfiguration</code>, the mode you specify using this account
10638
+ * setting will be used as the default. For more information about log delivery
10639
+ * modes, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html">LogConfiguration</a>. </p>
10640
+ * <note>
10641
+ * <p>On June 25, 2025, Amazon ECS changed the default log driver mode from
10642
+ * <code>blocking</code> to <code>non-blocking</code> to prioritize task
10643
+ * availability over logging. To continue using the <code>blocking</code> mode
10644
+ * after this change, do one of the following:</p>
10645
+ * <ul>
10646
+ * <li>
10647
+ * <p>Set the <code>mode</code> option in your container definition's
10648
+ * <code>logConfiguration</code> as <code>blocking</code>.</p>
10649
+ * </li>
10650
+ * <li>
10651
+ * <p>Set the <code>defaultLogDriverMode</code> account setting to
10652
+ * <code>blocking</code>.</p>
10653
+ * </li>
10654
+ * </ul>
10655
+ * </note>
10656
+ * </li>
10657
+ * <li>
10658
+ * <p>
10659
+ * <code>guardDutyActivate</code> - The <code>guardDutyActivate</code> parameter
10660
+ * is read-only in Amazon ECS and indicates whether Amazon ECS Runtime Monitoring
10661
+ * is enabled or disabled by your security administrator in your Amazon ECS
10662
+ * account. Amazon GuardDuty controls this account setting on your behalf. For more
10663
+ * information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-guard-duty-integration.html">Protecting Amazon ECS workloads with Amazon ECS Runtime
10664
+ * Monitoring</a>.</p>
10665
+ * </li>
10666
+ * </ul>
10667
+ * @public
10668
+ */
10669
+ name: SettingName | undefined;
10670
+ /**
10671
+ * <p>The account setting value for the specified principal ARN. Accepted values are
10672
+ * <code>enabled</code>, <code>disabled</code>, <code>enhanced</code>, <code>on</code>,
10673
+ * and <code>off</code>.</p>
10674
+ * <p>When you specify <code>fargateTaskRetirementWaitPeriod</code> for the
10675
+ * <code>name</code>, the following are the valid values:</p>
10676
+ * <ul>
10677
+ * <li>
10678
+ * <p>
10679
+ * <code>0</code> - Amazon Web Services sends the notification, and
10680
+ * immediately retires the affected tasks.</p>
10681
+ * </li>
10682
+ * <li>
10683
+ * <p>
10684
+ * <code>7</code> - Amazon Web Services sends the notification, and waits 7
10685
+ * calendar days to retire the tasks.</p>
10686
+ * </li>
10687
+ * <li>
10688
+ * <p>
10689
+ * <code>14</code> - Amazon Web Services sends the notification, and waits 14
10690
+ * calendar days to retire the tasks.</p>
10691
+ * </li>
10692
+ * </ul>
10693
+ * @public
10694
+ */
10695
+ value: string | undefined;
10696
+ /**
10697
+ * <p>The ARN of the principal, which can be a user, role, or the root user. If you specify
10698
+ * the root user, it modifies the account setting for all users, roles, and the root user
10699
+ * of the account unless a user or role explicitly overrides these settings. If this field
10700
+ * is omitted, the setting is changed only for the authenticated user.</p>
10701
+ * <p>In order to use this parameter, you must be the root user, or the principal.</p>
10702
+ * <note>
10703
+ * <p>You must use the root user when you set the Fargate wait time
10704
+ * (<code>fargateTaskRetirementWaitPeriod</code>). </p>
10705
+ * <p>Federated users assume the account setting of the root user and can't have
10706
+ * explicit account settings set for them.</p>
10707
+ * </note>
10708
+ * @public
10709
+ */
10710
+ principalArn?: string | undefined;
10711
+ }
10712
+ /**
10713
+ * @public
10714
+ */
10715
+ export interface PutAccountSettingResponse {
10716
+ /**
10717
+ * <p>The current account setting for a resource.</p>
10718
+ * @public
10719
+ */
10720
+ setting?: Setting | undefined;
10721
+ }
10722
+ /**
10723
+ * @public
10724
+ */
10725
+ export interface PutAccountSettingDefaultRequest {
10726
+ /**
10727
+ * <p>The resource name for which to modify the account setting.</p>
10728
+ * <p>The following are the valid values for the account setting name.</p>
10729
+ * <ul>
10730
+ * <li>
10731
+ * <p>
10732
+ * <code>serviceLongArnFormat</code> - When modified, the Amazon Resource Name
10733
+ * (ARN) and resource ID format of the resource type for a specified user, role, or
10734
+ * the root user for an account is affected. The opt-in and opt-out account setting
10735
+ * must be set for each Amazon ECS resource separately. The ARN and resource ID
10736
+ * format of a resource is defined by the opt-in status of the user or role that
10737
+ * created the resource. You must turn on this setting to use Amazon ECS features
10738
+ * such as resource tagging.</p>
10739
+ * </li>
10740
+ * <li>
10741
+ * <p>
10742
+ * <code>taskLongArnFormat</code> - When modified, the Amazon Resource Name (ARN)
10743
+ * and resource ID format of the resource type for a specified user, role, or the
10744
+ * root user for an account is affected. The opt-in and opt-out account setting
10745
+ * must be set for each Amazon ECS resource separately. The ARN and resource ID
10746
+ * format of a resource is defined by the opt-in status of the user or role that
10747
+ * created the resource. You must turn on this setting to use Amazon ECS features
10748
+ * such as resource tagging.</p>
10749
+ * </li>
10750
+ * <li>
10751
+ * <p>
10752
+ * <code>containerInstanceLongArnFormat</code> - When modified, the Amazon
10753
+ * Resource Name (ARN) and resource ID format of the resource type for a specified
10754
+ * user, role, or the root user for an account is affected. The opt-in and opt-out
10755
+ * account setting must be set for each Amazon ECS resource separately. The ARN and
10756
+ * resource ID format of a resource is defined by the opt-in status of the user or
10757
+ * role that created the resource. You must turn on this setting to use Amazon ECS
10758
+ * features such as resource tagging.</p>
10759
+ * </li>
10760
+ * <li>
10761
+ * <p>
10762
+ * <code>awsvpcTrunking</code> - When modified, the elastic network interface
10763
+ * (ENI) limit for any new container instances that support the feature is changed.
10764
+ * If <code>awsvpcTrunking</code> is turned on, any new container instances that
10765
+ * support the feature are launched have the increased ENI limits available to
10766
+ * them. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-instance-eni.html">Elastic
10767
+ * Network Interface Trunking</a> in the <i>Amazon Elastic Container
10768
+ * Service Developer Guide</i>.</p>
10769
+ * </li>
10770
+ * <li>
10771
+ * <p>
10772
+ * <code>containerInsights</code> - Container Insights with enhanced
10773
+ * observability provides all the Container Insights metrics, plus additional task
10774
+ * and container metrics. This version supports enhanced observability for Amazon
10775
+ * ECS clusters using the Amazon EC2 and Fargate launch types. After you configure
10776
+ * Container Insights with enhanced observability on Amazon ECS, Container Insights
10777
+ * auto-collects detailed infrastructure telemetry from the cluster level down to
10778
+ * the container level in your environment and displays these critical performance
10779
+ * data in curated dashboards removing the heavy lifting in observability set-up. </p>
10780
+ * <p>To use Container Insights with enhanced observability, set the
10781
+ * <code>containerInsights</code> account setting to
10782
+ * <code>enhanced</code>.</p>
10783
+ * <p>To use Container Insights, set the <code>containerInsights</code> account
10784
+ * setting to <code>enabled</code>.</p>
10785
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch-container-insights.html">Monitor Amazon ECS containers using Container Insights with enhanced
10786
+ * observability</a> in the <i>Amazon Elastic Container Service
10787
+ * Developer Guide</i>.</p>
10788
+ * </li>
10789
+ * <li>
10790
+ * <p>
10791
+ * <code>dualStackIPv6</code> - When turned on, when using a VPC in dual stack
10792
+ * mode, your tasks using the <code>awsvpc</code> network mode can have an IPv6
10793
+ * address assigned. For more information on using IPv6 with tasks launched on
10794
+ * Amazon EC2 instances, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking-awsvpc.html#task-networking-vpc-dual-stack">Using a VPC in dual-stack mode</a>. For more information on using IPv6
10795
+ * with tasks launched on Fargate, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/fargate-task-networking.html#fargate-task-networking-vpc-dual-stack">Using a VPC in dual-stack mode</a>.</p>
10796
+ * </li>
10797
+ * <li>
10798
+ * <p>
10799
+ * <code>fargateFIPSMode</code> - If you specify <code>fargateFIPSMode</code>,
10800
+ * Fargate FIPS 140 compliance is affected.</p>
10801
+ * </li>
10802
+ * <li>
10803
+ * <p>
10804
+ * <code>fargateTaskRetirementWaitPeriod</code> - When Amazon Web Services
10805
+ * determines that a security or infrastructure update is needed for an Amazon ECS
10806
+ * task hosted on Fargate, the tasks need to be stopped and new tasks launched to
10807
+ * replace them. Use <code>fargateTaskRetirementWaitPeriod</code> to configure the
10808
+ * wait time to retire a Fargate task. For information about the Fargate tasks
10809
+ * maintenance, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-maintenance.html">Amazon Web
10810
+ * Services Fargate task maintenance</a> in the
10811
+ * <i>Amazon ECS Developer Guide</i>.</p>
10812
+ * </li>
10813
+ * <li>
10814
+ * <p>
10815
+ * <code>tagResourceAuthorization</code> - Amazon ECS is introducing tagging
10816
+ * authorization for resource creation. Users must have permissions for actions
10817
+ * that create the resource, such as <code>ecsCreateCluster</code>. If tags are
10818
+ * specified when you create a resource, Amazon Web Services performs
10819
+ * additional authorization to verify if users or roles have permissions to create
10820
+ * tags. Therefore, you must grant explicit permissions to use the
10821
+ * <code>ecs:TagResource</code> action. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/supported-iam-actions-tagging.html">Grant permission to tag resources on creation</a> in the
10822
+ * <i>Amazon ECS Developer Guide</i>.</p>
10823
+ * </li>
10824
+ * <li>
10825
+ * <p>
10826
+ * <code>defaultLogDriverMode</code> -Amazon ECS supports setting a default
10827
+ * delivery mode of log messages from a container to the <code>logDriver</code>
10828
+ * that you specify in the container's <code>logConfiguration</code>. The delivery
10829
+ * mode affects application stability when the flow of logs from the container to
10830
+ * the log driver is interrupted. The <code>defaultLogDriverMode</code> setting
10831
+ * supports two values: <code>blocking</code> and <code>non-blocking</code>. If you
10832
+ * don't specify a delivery mode in your container definition's
10833
+ * <code>logConfiguration</code>, the mode you specify using this account
10834
+ * setting will be used as the default. For more information about log delivery
10835
+ * modes, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html">LogConfiguration</a>.</p>
10836
+ * <note>
10837
+ * <p>On June 25, 2025, Amazon ECS changed the default log driver mode from
10838
+ * <code>blocking</code> to <code>non-blocking</code> to prioritize task
10839
+ * availability over logging. To continue using the <code>blocking</code> mode
10840
+ * after this change, do one of the following:</p>
10841
+ * <ul>
10842
+ * <li>
10843
+ * <p>Set the <code>mode</code> option in your container definition's
10844
+ * <code>logConfiguration</code> as <code>blocking</code>.</p>
10845
+ * </li>
10846
+ * <li>
10847
+ * <p>Set the <code>defaultLogDriverMode</code> account setting to
10848
+ * <code>blocking</code>.</p>
10849
+ * </li>
10850
+ * </ul>
10851
+ * </note>
10852
+ * </li>
10853
+ * <li>
10854
+ * <p>
10855
+ * <code>guardDutyActivate</code> - The <code>guardDutyActivate</code> parameter
10856
+ * is read-only in Amazon ECS and indicates whether Amazon ECS Runtime Monitoring
10857
+ * is enabled or disabled by your security administrator in your Amazon ECS
10858
+ * account. Amazon GuardDuty controls this account setting on your behalf. For more
10859
+ * information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-guard-duty-integration.html">Protecting Amazon ECS workloads with Amazon ECS Runtime
10860
+ * Monitoring</a>.</p>
10861
+ * </li>
10862
+ * </ul>
10863
+ * @public
10864
+ */
10865
+ name: SettingName | undefined;
10866
+ /**
10867
+ * <p>The account setting value for the specified principal ARN. Accepted values are
10868
+ * <code>enabled</code>, <code>disabled</code>, <code>on</code>, <code>enhanced</code>,
10869
+ * and <code>off</code>.</p>
10870
+ * <p>When you specify <code>fargateTaskRetirementWaitPeriod</code> for the
10871
+ * <code>name</code>, the following are the valid values:</p>
10872
+ * <ul>
10873
+ * <li>
10874
+ * <p>
10875
+ * <code>0</code> - Amazon Web Services sends the notification, and
10876
+ * immediately retires the affected tasks.</p>
10877
+ * </li>
10878
+ * <li>
10879
+ * <p>
10880
+ * <code>7</code> - Amazon Web Services sends the notification, and waits 7
10881
+ * calendar days to retire the tasks.</p>
10882
+ * </li>
10883
+ * <li>
10884
+ * <p>
10885
+ * <code>14</code> - Amazon Web Services sends the notification, and waits 14
10886
+ * calendar days to retire the tasks.</p>
10887
+ * </li>
10888
+ * </ul>
10889
+ * @public
10890
+ */
10891
+ value: string | undefined;
10892
+ }
10893
+ /**
10894
+ * @public
10895
+ */
10896
+ export interface PutAccountSettingDefaultResponse {
10897
+ /**
10898
+ * <p>The current setting for a resource.</p>
10899
+ * @public
10900
+ */
10901
+ setting?: Setting | undefined;
10902
+ }
10903
+ /**
10904
+ * @public
10905
+ */
10906
+ export interface PutAttributesRequest {
10907
+ /**
10908
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that contains the
10909
+ * resource to apply attributes. If you do not specify a cluster, the default cluster is
10910
+ * assumed.</p>
10911
+ * @public
10912
+ */
10913
+ cluster?: string | undefined;
10914
+ /**
10915
+ * <p>The attributes to apply to your resource. You can specify up to 10 custom attributes
10916
+ * for each resource. You can specify up to 10 attributes in a single call.</p>
10917
+ * @public
10918
+ */
10919
+ attributes: Attribute[] | undefined;
10920
+ }
10921
+ /**
10922
+ * @public
10923
+ */
10924
+ export interface PutAttributesResponse {
10925
+ /**
10926
+ * <p>The attributes applied to your resource.</p>
10927
+ * @public
10928
+ */
10929
+ attributes?: Attribute[] | undefined;
10930
+ }
10931
+ /**
10932
+ * @public
10933
+ */
10934
+ export interface PutClusterCapacityProvidersRequest {
10935
+ /**
10936
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster to modify the
10937
+ * capacity provider settings for. If you don't specify a cluster, the default cluster is
10938
+ * assumed.</p>
10939
+ * @public
10940
+ */
10941
+ cluster: string | undefined;
10942
+ /**
10943
+ * <p>The name of one or more capacity providers to associate with the cluster.</p>
10944
+ * <p>If specifying a capacity provider that uses an Auto Scaling group, the capacity
10945
+ * provider must already be created. New capacity providers can be created with the <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCapacityProvider.html">CreateCapacityProvider</a> API operation.</p>
10946
+ * <p>To use a Fargate capacity provider, specify either the <code>FARGATE</code> or
10947
+ * <code>FARGATE_SPOT</code> capacity providers. The Fargate capacity providers
10948
+ * are available to all accounts and only need to be associated with a cluster to be
10949
+ * used.</p>
10950
+ * @public
10951
+ */
10952
+ capacityProviders: string[] | undefined;
10953
+ /**
10954
+ * <p>The capacity provider strategy to use by default for the cluster.</p>
10955
+ * <p>When creating a service or running a task on a cluster, if no capacity provider or
10956
+ * launch type is specified then the default capacity provider strategy for the cluster is
10957
+ * used.</p>
10958
+ * <p>A capacity provider strategy consists of one or more capacity providers along with the
10959
+ * <code>base</code> and <code>weight</code> to assign to them. A capacity provider
10960
+ * must be associated with the cluster to be used in a capacity provider strategy. The
10961
+ * <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutClusterCapacityProviders.html">PutClusterCapacityProviders</a> API is used to associate a capacity provider
10962
+ * with a cluster. Only capacity providers with an <code>ACTIVE</code> or
10963
+ * <code>UPDATING</code> status can be used.</p>
10964
+ * <p>If specifying a capacity provider that uses an Auto Scaling group, the capacity
10965
+ * provider must already be created. New capacity providers can be created with the <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCapacityProvider.html">CreateCapacityProvider</a> API operation.</p>
10966
+ * <p>To use a Fargate capacity provider, specify either the <code>FARGATE</code> or
10967
+ * <code>FARGATE_SPOT</code> capacity providers. The Fargate capacity providers
10968
+ * are available to all accounts and only need to be associated with a cluster to be
10969
+ * used.</p>
10970
+ * @public
10971
+ */
10972
+ defaultCapacityProviderStrategy: CapacityProviderStrategyItem[] | undefined;
10973
+ }
10974
+ /**
10975
+ * @public
10976
+ */
10977
+ export interface PutClusterCapacityProvidersResponse {
10978
+ /**
10979
+ * <p>Details about the cluster.</p>
10980
+ * @public
10981
+ */
10982
+ cluster?: Cluster | undefined;
10983
+ }
10984
+ /**
10985
+ * <p>The devices that are available on the container instance. The only supported device
10986
+ * type is a GPU.</p>
10987
+ * @public
10988
+ */
10989
+ export interface PlatformDevice {
10990
+ /**
10991
+ * <p>The ID for the GPUs on the container instance. The available GPU IDs can also be
10992
+ * obtained on the container instance in the
10993
+ * <code>/var/lib/ecs/gpu/nvidia_gpu_info.json</code> file.</p>
10994
+ * @public
10995
+ */
10996
+ id: string | undefined;
10997
+ /**
10998
+ * <p>The type of device that's available on the container instance. The only supported
10999
+ * value is <code>GPU</code>.</p>
11000
+ * @public
11001
+ */
11002
+ type: PlatformDeviceType | undefined;
11003
+ }
11004
+ /**
11005
+ * @public
11006
+ */
11007
+ export interface RegisterContainerInstanceRequest {
11008
+ /**
11009
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster to register your
11010
+ * container instance with. If you do not specify a cluster, the default cluster is
11011
+ * assumed.</p>
11012
+ * @public
11013
+ */
11014
+ cluster?: string | undefined;
11015
+ /**
11016
+ * <p>The instance identity document for the EC2 instance to register. This document can be
11017
+ * found by running the following command from the instance: <code>curl
11018
+ * http://169.254.169.254/latest/dynamic/instance-identity/document/</code>
11019
+ * </p>
11020
+ * @public
11021
+ */
11022
+ instanceIdentityDocument?: string | undefined;
11023
+ /**
11024
+ * <p>The instance identity document signature for the EC2 instance to register. This
11025
+ * signature can be found by running the following command from the instance: <code>curl
11026
+ * http://169.254.169.254/latest/dynamic/instance-identity/signature/</code>
11027
+ * </p>
11028
+ * @public
11029
+ */
11030
+ instanceIdentityDocumentSignature?: string | undefined;
11031
+ /**
11032
+ * <p>The resources available on the instance.</p>
11033
+ * @public
11034
+ */
11035
+ totalResources?: Resource[] | undefined;
11036
+ /**
11037
+ * <p>The version information for the Amazon ECS container agent and Docker daemon that runs
11038
+ * on the container instance.</p>
11039
+ * @public
11040
+ */
11041
+ versionInfo?: VersionInfo | undefined;
11042
+ /**
11043
+ * <p>The ARN of the container instance (if it was previously registered).</p>
11044
+ * @public
11045
+ */
11046
+ containerInstanceArn?: string | undefined;
11047
+ /**
11048
+ * <p>The container instance attributes that this container instance supports.</p>
11049
+ * @public
11050
+ */
11051
+ attributes?: Attribute[] | undefined;
11052
+ /**
11053
+ * <p>The devices that are available on the container instance. The only supported device
11054
+ * type is a GPU.</p>
11055
+ * @public
11056
+ */
11057
+ platformDevices?: PlatformDevice[] | undefined;
11058
+ /**
11059
+ * <p>The metadata that you apply to the container instance to help you categorize and
11060
+ * organize them. Each tag consists of a key and an optional value. You define both.</p>
11061
+ * <p>The following basic restrictions apply to tags:</p>
11062
+ * <ul>
11063
+ * <li>
11064
+ * <p>Maximum number of tags per resource - 50</p>
11065
+ * </li>
11066
+ * <li>
11067
+ * <p>For each resource, each tag key must be unique, and each tag key can have only
11068
+ * one value.</p>
11069
+ * </li>
11070
+ * <li>
11071
+ * <p>Maximum key length - 128 Unicode characters in UTF-8</p>
11072
+ * </li>
11073
+ * <li>
11074
+ * <p>Maximum value length - 256 Unicode characters in UTF-8</p>
11075
+ * </li>
11076
+ * <li>
11077
+ * <p>If your tagging schema is used across multiple services and resources,
11078
+ * remember that other services may have restrictions on allowed characters.
11079
+ * Generally allowed characters are: letters, numbers, and spaces representable in
11080
+ * UTF-8, and the following characters: + - = . _ : / @.</p>
11081
+ * </li>
11082
+ * <li>
11083
+ * <p>Tag keys and values are case-sensitive.</p>
11084
+ * </li>
11085
+ * <li>
11086
+ * <p>Do not use <code>aws:</code>, <code>AWS:</code>, or any upper or lowercase
11087
+ * combination of such as a prefix for either keys or values as it is reserved for
11088
+ * Amazon Web
11089
+ * Services use. You cannot edit or delete tag keys or values with
11090
+ * this prefix. Tags with this prefix do not count against your tags per resource
11091
+ * limit.</p>
11092
+ * </li>
11093
+ * </ul>
11094
+ * @public
11095
+ */
11096
+ tags?: Tag[] | undefined;
11097
+ }
11098
+ /**
11099
+ * @public
11100
+ */
11101
+ export interface RegisterContainerInstanceResponse {
11102
+ /**
11103
+ * <p>The container instance that was registered.</p>
11104
+ * @public
11105
+ */
11106
+ containerInstance?: ContainerInstance | undefined;
11107
+ }
11108
+ /**
11109
+ * @public
11110
+ */
11111
+ export interface RegisterTaskDefinitionRequest {
11112
+ /**
11113
+ * <p>You must specify a <code>family</code> for a task definition. You can use it track
11114
+ * multiple versions of the same task definition. The <code>family</code> is used as a name
11115
+ * for your task definition. Up to 255 letters (uppercase and lowercase), numbers,
11116
+ * underscores, and hyphens are allowed.</p>
11117
+ * @public
11118
+ */
11119
+ family: string | undefined;
11120
+ /**
11121
+ * <p>The short name or full Amazon Resource Name (ARN) of the IAM role that containers in
11122
+ * this task can assume. All containers in this task are granted the permissions that are
11123
+ * specified in this role. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html">IAM Roles for
11124
+ * Tasks</a> in the <i>Amazon Elastic Container Service Developer
11125
+ * Guide</i>.</p>
11126
+ * @public
11127
+ */
11128
+ taskRoleArn?: string | undefined;
11129
+ /**
11130
+ * <p>The Amazon Resource Name (ARN) of the task execution role that grants the Amazon ECS
11131
+ * container agent permission to make Amazon Web Services API calls on your behalf. For
11132
+ * informationabout the required IAM roles for Amazon ECS, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-ecs-iam-role-overview.html">IAM roles
11133
+ * for Amazon ECS</a> in the <i>Amazon Elastic Container Service Developer
11134
+ * Guide</i>.</p>
11135
+ * @public
11136
+ */
11137
+ executionRoleArn?: string | undefined;
11138
+ /**
11139
+ * <p>The Docker networking mode to use for the containers in the task. The valid values are
11140
+ * <code>none</code>, <code>bridge</code>, <code>awsvpc</code>, and <code>host</code>.
11141
+ * If no network mode is specified, the default is <code>bridge</code>.</p>
11142
+ * <p>For Amazon ECS tasks on Fargate, the <code>awsvpc</code> network mode is required. For
11143
+ * Amazon ECS tasks on Amazon EC2 Linux instances, any network mode can be used. For Amazon
11144
+ * ECS tasks on Amazon EC2 Windows instances, <code><default></code> or
11145
+ * <code>awsvpc</code> can be used. If the network mode is set to <code>none</code>,
11146
+ * you cannot specify port mappings in your container definitions, and the tasks containers
11147
+ * do not have external connectivity. The <code>host</code> and <code>awsvpc</code> network
11148
+ * modes offer the highest networking performance for containers because they use the EC2
11149
+ * network stack instead of the virtualized network stack provided by the
11150
+ * <code>bridge</code> mode.</p>
11151
+ * <p>With the <code>host</code> and <code>awsvpc</code> network modes, exposed container
11152
+ * ports are mapped directly to the corresponding host port (for the <code>host</code>
11153
+ * network mode) or the attached elastic network interface port (for the
11154
+ * <code>awsvpc</code> network mode), so you cannot take advantage of dynamic host port
11155
+ * mappings. </p>
11156
+ * <important>
11157
+ * <p>When using the <code>host</code> network mode, you should not run containers using
11158
+ * the root user (UID 0). It is considered best practice to use a non-root user.</p>
11159
+ * </important>
11160
+ * <p>If the network mode is <code>awsvpc</code>, the task is allocated an elastic network
11161
+ * interface, and you must specify a <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html">NetworkConfiguration</a> value when you create a service or run a task with the
11162
+ * task definition. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html">Task Networking</a>
11163
+ * in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
11164
+ * <p>If the network mode is <code>host</code>, you cannot run multiple instantiations of
11165
+ * the same task on a single container instance when port mappings are used.</p>
11166
+ * @public
11167
+ */
11168
+ networkMode?: NetworkMode | undefined;
11169
+ /**
11170
+ * <p>A list of container definitions in JSON format that describe the different containers
11171
+ * that make up your task.</p>
11172
+ * @public
11173
+ */
11174
+ containerDefinitions: ContainerDefinition[] | undefined;
11175
+ /**
11176
+ * <p>A list of volume definitions in JSON format that containers in your task might
11177
+ * use.</p>
11178
+ * @public
11179
+ */
11180
+ volumes?: Volume[] | undefined;
11181
+ /**
11182
+ * <p>An array of placement constraint objects to use for the task. You can specify a
11183
+ * maximum of 10 constraints for each task. This limit includes constraints in the task
11184
+ * definition and those specified at runtime.</p>
11185
+ * @public
11186
+ */
11187
+ placementConstraints?: TaskDefinitionPlacementConstraint[] | undefined;
11188
+ /**
11189
+ * <p>The task launch type that Amazon ECS validates the task definition against. A client
11190
+ * exception is returned if the task definition doesn't validate against the
11191
+ * compatibilities specified. If no value is specified, the parameter is omitted from the
11192
+ * response.</p>
11193
+ * @public
11194
+ */
11195
+ requiresCompatibilities?: Compatibility[] | undefined;
11196
+ /**
11197
+ * <p>The number of CPU units used by the task. It can be expressed as an integer using CPU
11198
+ * units (for example, <code>1024</code>) or as a string using vCPUs (for example, <code>1
11199
+ * vCPU</code> or <code>1 vcpu</code>) in a task definition. String values are
11200
+ * converted to an integer indicating the CPU units when the task definition is
11201
+ * registered.</p>
11202
+ * <note>
11203
+ * <p>Task-level CPU and memory parameters are ignored for Windows containers. We
11204
+ * recommend specifying container-level resources for Windows containers.</p>
11205
+ * </note>
11206
+ * <p>If you're using the EC2 launch type or external launch type, this field is optional.
11207
+ * Supported values are between <code>128</code> CPU units (<code>0.125</code> vCPUs) and
11208
+ * <code>196608</code> CPU units (<code>192</code> vCPUs). If you do not specify a
11209
+ * value, the parameter is ignored.</p>
11210
+ * <p>This field is required for Fargate. For information about the valid values, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_size">Task
11211
+ * size</a> in the <i>Amazon Elastic Container Service Developer
11212
+ * Guide</i>.</p>
11213
+ * @public
11214
+ */
11215
+ cpu?: string | undefined;
11216
+ /**
11217
+ * <p>The amount of memory (in MiB) used by the task. It can be expressed as an integer
11218
+ * using MiB (for example ,<code>1024</code>) or as a string using GB (for example,
11219
+ * <code>1GB</code> or <code>1 GB</code>) in a task definition. String values are
11220
+ * converted to an integer indicating the MiB when the task definition is
11221
+ * registered.</p>
11222
+ * <note>
11223
+ * <p>Task-level CPU and memory parameters are ignored for Windows containers. We
11224
+ * recommend specifying container-level resources for Windows containers.</p>
11225
+ * </note>
11226
+ * <p>If using the EC2 launch type, this field is optional.</p>
11227
+ * <p>If using the Fargate launch type, this field is required and you must use one of the
11228
+ * following values. This determines your range of supported values for the
11229
+ * <code>cpu</code> parameter.</p>
11230
+ * <p>The CPU units cannot be less than 1 vCPU when you use Windows containers on
11231
+ * Fargate.</p>
11232
+ * <ul>
11233
+ * <li>
11234
+ * <p>512 (0.5 GB), 1024 (1 GB), 2048 (2 GB) - Available <code>cpu</code> values:
11235
+ * 256 (.25 vCPU)</p>
11236
+ * </li>
11237
+ * <li>
11238
+ * <p>1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB) - Available
11239
+ * <code>cpu</code> values: 512 (.5 vCPU)</p>
11240
+ * </li>
11241
+ * <li>
11242
+ * <p>2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB),
11243
+ * 8192 (8 GB) - Available <code>cpu</code> values: 1024 (1 vCPU)</p>
11244
+ * </li>
11245
+ * <li>
11246
+ * <p>Between 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB) - Available
11247
+ * <code>cpu</code> values: 2048 (2 vCPU)</p>
11248
+ * </li>
11249
+ * <li>
11250
+ * <p>Between 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB) - Available
11251
+ * <code>cpu</code> values: 4096 (4 vCPU)</p>
11252
+ * </li>
11253
+ * <li>
11254
+ * <p>Between 16 GB and 60 GB in 4 GB increments - Available <code>cpu</code>
11255
+ * values: 8192 (8 vCPU)</p>
11256
+ * <p>This option requires Linux platform <code>1.4.0</code> or later.</p>
11257
+ * </li>
11258
+ * <li>
11259
+ * <p>Between 32GB and 120 GB in 8 GB increments - Available <code>cpu</code>
11260
+ * values: 16384 (16 vCPU)</p>
11261
+ * <p>This option requires Linux platform <code>1.4.0</code> or later.</p>
11262
+ * </li>
11263
+ * </ul>
11264
+ * @public
11265
+ */
11266
+ memory?: string | undefined;
11267
+ /**
11268
+ * <p>The metadata that you apply to the task definition to help you categorize and organize
11269
+ * them. Each tag consists of a key and an optional value. You define both of them.</p>
11270
+ * <p>The following basic restrictions apply to tags:</p>
11271
+ * <ul>
11272
+ * <li>
11273
+ * <p>Maximum number of tags per resource - 50</p>
11274
+ * </li>
11275
+ * <li>
11276
+ * <p>For each resource, each tag key must be unique, and each tag key can have only
11277
+ * one value.</p>
11278
+ * </li>
11279
+ * <li>
11280
+ * <p>Maximum key length - 128 Unicode characters in UTF-8</p>
11281
+ * </li>
11282
+ * <li>
11283
+ * <p>Maximum value length - 256 Unicode characters in UTF-8</p>
11284
+ * </li>
11285
+ * <li>
11286
+ * <p>If your tagging schema is used across multiple services and resources,
11287
+ * remember that other services may have restrictions on allowed characters.
11288
+ * Generally allowed characters are: letters, numbers, and spaces representable in
11289
+ * UTF-8, and the following characters: + - = . _ : / @.</p>
11290
+ * </li>
11291
+ * <li>
11292
+ * <p>Tag keys and values are case-sensitive.</p>
11293
+ * </li>
11294
+ * <li>
11295
+ * <p>Do not use <code>aws:</code>, <code>AWS:</code>, or any upper or lowercase
11296
+ * combination of such as a prefix for either keys or values as it is reserved for
11297
+ * Amazon Web
11298
+ * Services use. You cannot edit or delete tag keys or values with
11299
+ * this prefix. Tags with this prefix do not count against your tags per resource
11300
+ * limit.</p>
11301
+ * </li>
11302
+ * </ul>
11303
+ * @public
11304
+ */
11305
+ tags?: Tag[] | undefined;
11306
+ /**
11307
+ * <p>The process namespace to use for the containers in the task. The valid values are
11308
+ * <code>host</code> or <code>task</code>. On Fargate for Linux containers, the only
11309
+ * valid value is <code>task</code>. For example, monitoring sidecars might need
11310
+ * <code>pidMode</code> to access information about other containers running in the
11311
+ * same task.</p>
11312
+ * <p>If <code>host</code> is specified, all containers within the tasks that specified the
11313
+ * <code>host</code> PID mode on the same container instance share the same process
11314
+ * namespace with the host Amazon EC2 instance.</p>
11315
+ * <p>If <code>task</code> is specified, all containers within the specified task share the
11316
+ * same process namespace.</p>
11317
+ * <p>If no value is specified, the The default is a private namespace for each
11318
+ * container.</p>
11319
+ * <p>If the <code>host</code> PID mode is used, there's a heightened risk of undesired
11320
+ * process namespace exposure.</p>
11321
+ * <note>
11322
+ * <p>This parameter is not supported for Windows containers.</p>
11323
+ * </note>
11324
+ * <note>
11325
+ * <p>This parameter is only supported for tasks that are hosted on Fargate if
11326
+ * the tasks are using platform version <code>1.4.0</code> or later (Linux). This isn't
11327
+ * supported for Windows containers on Fargate.</p>
11328
+ * </note>
11329
+ * @public
11330
+ */
11331
+ pidMode?: PidMode | undefined;
11332
+ /**
11333
+ * <p>The IPC resource namespace to use for the containers in the task. The valid values are
11334
+ * <code>host</code>, <code>task</code>, or <code>none</code>. If <code>host</code> is
11335
+ * specified, then all containers within the tasks that specified the <code>host</code> IPC
11336
+ * mode on the same container instance share the same IPC resources with the host Amazon
11337
+ * EC2 instance. If <code>task</code> is specified, all containers within the specified
11338
+ * task share the same IPC resources. If <code>none</code> is specified, then IPC resources
11339
+ * within the containers of a task are private and not shared with other containers in a
11340
+ * task or on the container instance. If no value is specified, then the IPC resource
11341
+ * namespace sharing depends on the Docker daemon setting on the container instance.</p>
11342
+ * <p>If the <code>host</code> IPC mode is used, be aware that there is a heightened risk of
11343
+ * undesired IPC namespace expose.</p>
11344
+ * <p>If you are setting namespaced kernel parameters using <code>systemControls</code> for
11345
+ * the containers in the task, the following will apply to your IPC resource namespace. For
11346
+ * more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html">System
11347
+ * Controls</a> in the <i>Amazon Elastic Container Service Developer
11348
+ * Guide</i>.</p>
11349
+ * <ul>
11350
+ * <li>
11351
+ * <p>For tasks that use the <code>host</code> IPC mode, IPC namespace related
11352
+ * <code>systemControls</code> are not supported.</p>
11353
+ * </li>
11354
+ * <li>
11355
+ * <p>For tasks that use the <code>task</code> IPC mode, IPC namespace related
11356
+ * <code>systemControls</code> will apply to all containers within a
11357
+ * task.</p>
11358
+ * </li>
11359
+ * </ul>
11360
+ * <note>
11361
+ * <p>This parameter is not supported for Windows containers or tasks run on Fargate.</p>
11362
+ * </note>
11363
+ * @public
11364
+ */
11365
+ ipcMode?: IpcMode | undefined;
11366
+ /**
11367
+ * <p>The configuration details for the App Mesh proxy.</p>
11368
+ * <p>For tasks hosted on Amazon EC2 instances, the container instances require at least
11369
+ * version <code>1.26.0</code> of the container agent and at least version
11370
+ * <code>1.26.0-1</code> of the <code>ecs-init</code> package to use a proxy
11371
+ * configuration. If your container instances are launched from the Amazon ECS-optimized
11372
+ * AMI version <code>20190301</code> or later, then they contain the required versions of
11373
+ * the container agent and <code>ecs-init</code>. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-ami-versions.html">Amazon ECS-optimized AMI versions</a> in the <i>Amazon Elastic Container
11374
+ * Service Developer Guide</i>.</p>
11375
+ * @public
11376
+ */
11377
+ proxyConfiguration?: ProxyConfiguration | undefined;
11378
+ /**
11379
+ * <p>The Elastic Inference accelerators to use for the containers in the task.</p>
11380
+ * @public
11381
+ */
11382
+ inferenceAccelerators?: InferenceAccelerator[] | undefined;
11383
+ /**
11384
+ * <p>The amount of ephemeral storage to allocate for the task. This parameter is used to
11385
+ * expand the total amount of ephemeral storage available, beyond the default amount, for
11386
+ * tasks hosted on Fargate. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_data_volumes.html">Using data volumes in
11387
+ * tasks</a> in the <i>Amazon ECS Developer Guide</i>.</p>
11388
+ * <note>
11389
+ * <p>For tasks using the Fargate launch type, the task requires the following
11390
+ * platforms:</p>
11391
+ * <ul>
11392
+ * <li>
11393
+ * <p>Linux platform version <code>1.4.0</code> or later.</p>
11394
+ * </li>
11395
+ * <li>
11396
+ * <p>Windows platform version <code>1.0.0</code> or later.</p>
11397
+ * </li>
11398
+ * </ul>
11399
+ * </note>
11400
+ * @public
11401
+ */
11402
+ ephemeralStorage?: EphemeralStorage | undefined;
11403
+ /**
11404
+ * <p>The operating system that your tasks definitions run on.</p>
11405
+ * @public
11406
+ */
11407
+ runtimePlatform?: RuntimePlatform | undefined;
11408
+ /**
11409
+ * <p>Enables fault injection when you register your task definition and allows for fault
11410
+ * injection requests to be accepted from the task's containers. The default value is
11411
+ * <code>false</code>.</p>
11412
+ * @public
11413
+ */
11414
+ enableFaultInjection?: boolean | undefined;
11415
+ }
11416
+ /**
11417
+ * @public
11418
+ */
11419
+ export interface RegisterTaskDefinitionResponse {
11420
+ /**
11421
+ * <p>The full description of the registered task definition.</p>
11422
+ * @public
11423
+ */
11424
+ taskDefinition?: TaskDefinition | undefined;
11425
+ /**
11426
+ * <p>The list of tags associated with the task definition.</p>
11427
+ * @public
11428
+ */
11429
+ tags?: Tag[] | undefined;
11430
+ }
11431
+ /**
11432
+ * <p>The termination policy for the Amazon EBS volume when the task exits. For more
11433
+ * information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volume-types">Amazon ECS volume termination policy</a>.</p>
11434
+ * @public
11435
+ */
11436
+ export interface TaskManagedEBSVolumeTerminationPolicy {
11437
+ /**
11438
+ * <p>Indicates whether the volume should be deleted on when the task stops. If a value of
11439
+ * <code>true</code> is specified,
11440
+ Amazon ECS deletes the Amazon EBS volume on
11441
+ * your behalf when the task goes into the <code>STOPPED</code> state. If no value is
11442
+ * specified, the
11443
+ default value is <code>true</code> is used. When set to
11444
+ * <code>false</code>, Amazon ECS leaves the volume in your
11445
+ account.</p>
11446
+ * @public
11447
+ */
11448
+ deleteOnTermination: boolean | undefined;
11449
+ }
11450
+ /**
11451
+ * <p>The configuration for the Amazon EBS volume that Amazon ECS creates and manages on
11452
+ * your behalf. These settings are used to create each Amazon EBS volume, with one volume
11453
+ * created for each task.</p>
11454
+ * @public
11455
+ */
11456
+ export interface TaskManagedEBSVolumeConfiguration {
11457
+ /**
11458
+ * <p>Indicates whether the volume should be encrypted. If you turn on Region-level Amazon
11459
+ * EBS encryption by default but set this value as <code>false</code>, the setting is
11460
+ * overridden and the volume is encrypted with the KMS key specified for Amazon EBS
11461
+ * encryption by default. This parameter maps 1:1 with the <code>Encrypted</code> parameter
11462
+ * of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in
11463
+ * the <i>Amazon EC2 API Reference</i>.</p>
11464
+ * @public
11465
+ */
11466
+ encrypted?: boolean | undefined;
11467
+ /**
11468
+ * <p>The Amazon Resource Name (ARN) identifier of the Amazon Web Services Key Management Service key
11469
+ * to use for Amazon EBS encryption. When a key is specified using this parameter, it
11470
+ * overrides Amazon EBS default encryption or any KMS key that you specified for
11471
+ * cluster-level managed storage encryption. This parameter maps 1:1 with the
11472
+ * <code>KmsKeyId</code> parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in
11473
+ * the <i>Amazon EC2 API Reference</i>. For more information about encrypting
11474
+ * Amazon EBS volumes attached to a task, 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
11475
+ * tasks</a>.</p>
11476
+ * <important>
11477
+ * <p>Amazon Web
11478
+ * Services authenticates the Amazon Web Services Key Management Service
11479
+ * key asynchronously. Therefore, if you specify an ID, alias, or ARN that is invalid,
11480
+ * the action can appear to complete, but eventually fails.</p>
11481
+ * </important>
11482
+ * @public
11483
+ */
11484
+ kmsKeyId?: string | undefined;
11485
+ /**
11486
+ * <p>The volume type. This parameter maps 1:1 with the <code>VolumeType</code> parameter of
11487
+ * 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
11488
+ * more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html">Amazon EBS volume types</a>
11489
+ * in the <i>Amazon EC2 User Guide</i>.</p>
11490
+ * <p>The following are the supported volume types.</p>
11491
+ * <ul>
11492
+ * <li>
11493
+ * <p>General Purpose SSD: <code>gp2</code>|<code>gp3</code>
11494
+ * </p>
11495
+ * </li>
11496
+ * <li>
11497
+ * <p>Provisioned IOPS SSD: <code>io1</code>|<code>io2</code>
11498
+ * </p>
11499
+ * </li>
11500
+ * <li>
11501
+ * <p>Throughput Optimized HDD: <code>st1</code>
11502
+ * </p>
11503
+ * </li>
11504
+ * <li>
11505
+ * <p>Cold HDD: <code>sc1</code>
11506
+ * </p>
11507
+ * </li>
11508
+ * <li>
11509
+ * <p>Magnetic: <code>standard</code>
11510
+ * </p>
11511
+ * <note>
11512
+ * <p>The magnetic volume type is not supported on Fargate.</p>
11513
+ * </note>
11514
+ * </li>
11515
+ * </ul>
11516
+ * @public
11517
+ */
11518
+ volumeType?: string | undefined;
11519
+ /**
11520
+ * <p>The size of the volume in GiB. You must specify either a volume size or a snapshot ID.
11521
+ * If you specify a snapshot ID, the snapshot size is used for the volume size by default.
11522
+ * You can optionally specify a volume size greater than or equal to the snapshot size.
11523
+ * 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
11524
+ * Reference</i>.</p>
11525
+ * <p>The following are the supported volume size values for each volume type.</p>
11526
+ * <ul>
11527
+ * <li>
11528
+ * <p>
11529
+ * <code>gp2</code> and <code>gp3</code>: 1-16,384</p>
11530
+ * </li>
11531
+ * <li>
11532
+ * <p>
11533
+ * <code>io1</code> and <code>io2</code>: 4-16,384</p>
11534
+ * </li>
11535
+ * <li>
11536
+ * <p>
11537
+ * <code>st1</code> and <code>sc1</code>: 125-16,384</p>
11538
+ * </li>
11539
+ * <li>
11540
+ * <p>
11541
+ * <code>standard</code>: 1-1,024</p>
11542
+ * </li>
11543
+ * </ul>
11544
+ * @public
11545
+ */
11546
+ sizeInGiB?: number | undefined;
11547
+ /**
11548
+ * <p>The snapshot that Amazon ECS uses to create the volume. You must specify either a
11549
+ * snapshot ID or a volume size. This parameter maps 1:1 with the <code>SnapshotId</code>
11550
+ * parameter of the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in
11551
+ * the <i>Amazon EC2 API Reference</i>.</p>
11552
+ * @public
11553
+ */
11554
+ snapshotId?: string | undefined;
11555
+ /**
11556
+ * <p>The rate, in MiB/s, at which data is fetched from a snapshot of an existing Amazon EBS
11557
+ * volume to create a new volume for attachment to the task. This property can be specified
11558
+ * 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
11559
+ * Amazon EBS volumes</a> in the <i>Amazon EBS User Guide</i>.</p>
11560
+ * @public
11561
+ */
11562
+ volumeInitializationRate?: number | undefined;
11563
+ /**
11564
+ * <p>The number of I/O operations per second (IOPS). For <code>gp3</code>,
11565
+ * <code>io1</code>, and <code>io2</code> volumes, this represents the number of IOPS that
11566
+ * are provisioned for the volume. For <code>gp2</code> volumes, this represents the
11567
+ * baseline performance of the volume and the rate at which the volume accumulates I/O
11568
+ * credits for bursting.</p>
11569
+ * <p>The following are the supported values for each volume type.</p>
11570
+ * <ul>
11571
+ * <li>
11572
+ * <p>
11573
+ * <code>gp3</code>: 3,000 - 16,000 IOPS</p>
11574
+ * </li>
11575
+ * <li>
11576
+ * <p>
11577
+ * <code>io1</code>: 100 - 64,000 IOPS</p>
11578
+ * </li>
11579
+ * <li>
11580
+ * <p>
11581
+ * <code>io2</code>: 100 - 256,000 IOPS</p>
11582
+ * </li>
11583
+ * </ul>
11584
+ * <p>This parameter is required for <code>io1</code> and <code>io2</code> volume types. The
11585
+ * default for <code>gp3</code> volumes is <code>3,000 IOPS</code>. This parameter is not
11586
+ * supported for <code>st1</code>, <code>sc1</code>, or <code>standard</code> volume
11587
+ * types.</p>
11588
+ * <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
11589
+ * Reference</i>.</p>
11590
+ * @public
11591
+ */
11592
+ iops?: number | undefined;
11593
+ /**
11594
+ * <p>The throughput to provision for a volume, in MiB/s, with a maximum of 1,000 MiB/s.
11595
+ * 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
11596
+ * Reference</i>.</p>
11597
+ * <important>
11598
+ * <p>This parameter is only supported for the <code>gp3</code> volume type.</p>
11599
+ * </important>
11600
+ * @public
11601
+ */
11602
+ throughput?: number | undefined;
11603
+ /**
11604
+ * <p>The tags to apply to the volume. Amazon ECS applies service-managed tags by default.
11605
+ * This parameter maps 1:1 with the <code>TagSpecifications.N</code> parameter of the
11606
+ * <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html">CreateVolume API</a> in the <i>Amazon EC2 API
11607
+ * Reference</i>.</p>
11608
+ * @public
11609
+ */
11610
+ tagSpecifications?: EBSTagSpecification[] | undefined;
11611
+ /**
11612
+ * <p>The ARN of the IAM role to associate with this volume. This is the Amazon ECS
11613
+ * infrastructure IAM role that is used to manage your Amazon Web Services infrastructure. We
11614
+ * recommend using the Amazon ECS-managed
11615
+ * <code>AmazonECSInfrastructureRolePolicyForVolumes</code> IAM policy with this role.
11616
+ * For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/infrastructure_IAM_role.html">Amazon ECS
11617
+ * infrastructure IAM role</a> in the <i>Amazon ECS Developer
11618
+ * Guide</i>.</p>
11619
+ * @public
11620
+ */
11621
+ roleArn: string | undefined;
11622
+ /**
11623
+ * <p>The termination policy for the volume when the task exits. This provides a way to
11624
+ * control whether Amazon ECS terminates the Amazon EBS volume when the task stops.</p>
11625
+ * @public
11626
+ */
11627
+ terminationPolicy?: TaskManagedEBSVolumeTerminationPolicy | undefined;
11628
+ /**
11629
+ * <p>The Linux filesystem type for the volume. For volumes created from a snapshot, you
11630
+ * must specify the same filesystem type that the volume was using when the snapshot was
11631
+ * created. If there is a filesystem type mismatch, the task will fail to start.</p>
11632
+ * <p>The available filesystem types are
11633
+ <code>ext3</code>, <code>ext4</code>, and
11634
+ * <code>xfs</code>. If no value is specified, the <code>xfs</code> filesystem type is
11635
+ * used by default.</p>
11636
+ * @public
11637
+ */
11638
+ filesystemType?: TaskFilesystemType | undefined;
11639
+ }
11640
+ /**
11641
+ * <p>Configuration settings for the task volume that was <code>configuredAtLaunch</code>
11642
+ * that weren't set during <code>RegisterTaskDef</code>.</p>
11643
+ * @public
11644
+ */
11645
+ export interface TaskVolumeConfiguration {
11646
+ /**
11647
+ * <p>The name of the volume. This value must match the volume name from the
11648
+ * <code>Volume</code> object in the task definition.</p>
11649
+ * @public
11650
+ */
11651
+ name: string | undefined;
11652
+ /**
11653
+ * <p>The configuration for the Amazon EBS volume that Amazon ECS creates and manages on
11654
+ * your behalf. These settings are used to create each Amazon EBS volume, with one volume
11655
+ * created for each task. The Amazon EBS volumes are visible in your account in the Amazon
11656
+ * EC2 console once they are created.</p>
11657
+ * @public
11658
+ */
11659
+ managedEBSVolume?: TaskManagedEBSVolumeConfiguration | undefined;
11660
+ }
11661
+ /**
11662
+ * @public
11663
+ */
11664
+ export interface RunTaskRequest {
11665
+ /**
11666
+ * <p>The capacity provider strategy to use for the task.</p>
11667
+ * <note>
11668
+ * <p>If you want to use Amazon ECS Managed Instances, you must use the
11669
+ * <code>capacityProviderStrategy</code> request parameter and omit the
11670
+ * <code>launchType</code> request parameter.</p>
11671
+ * </note>
11672
+ * <p>If a <code>capacityProviderStrategy</code> is specified, the <code>launchType</code>
11673
+ * parameter must be omitted. If no <code>capacityProviderStrategy</code> or
11674
+ * <code>launchType</code> is specified, the
11675
+ * <code>defaultCapacityProviderStrategy</code> for the cluster is used.</p>
11676
+ * <p>When you use cluster auto scaling, you must specify
11677
+ * <code>capacityProviderStrategy</code> and not <code>launchType</code>. </p>
11678
+ * <p>A capacity provider strategy can contain a maximum of 20 capacity providers.</p>
11679
+ * @public
11680
+ */
11681
+ capacityProviderStrategy?: CapacityProviderStrategyItem[] | undefined;
11682
+ /**
11683
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster to run your task on.
11684
+ * If you do not specify a cluster, the default cluster is assumed.</p>
11685
+ * <p>Each account receives a default cluster the first time you use the service, but you
11686
+ * may also create other clusters.</p>
11687
+ * @public
11688
+ */
11689
+ cluster?: string | undefined;
11690
+ /**
11691
+ * <p>The number of instantiations of the specified task to place on your cluster. You can
11692
+ * specify up to 10 tasks for each call.</p>
11693
+ * @public
11694
+ */
11695
+ count?: number | undefined;
11696
+ /**
11697
+ * <p>Specifies whether to use Amazon ECS managed tags for the task. For more information,
11698
+ * see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html">Tagging Your Amazon ECS
11699
+ * Resources</a> in the <i>Amazon Elastic Container Service Developer
11700
+ * Guide</i>.</p>
11701
+ * @public
11702
+ */
11703
+ enableECSManagedTags?: boolean | undefined;
11704
+ /**
11705
+ * <p>Determines whether to use the execute command functionality for the containers in this
11706
+ * task. If <code>true</code>, this enables execute command functionality on all containers
11707
+ * in the task.</p>
11708
+ * <p>If <code>true</code>, then the task definition must have a task role, or you must
11709
+ * provide one as an override.</p>
11710
+ * @public
11711
+ */
11712
+ enableExecuteCommand?: boolean | undefined;
11713
+ /**
11714
+ * <p>The name of the task group to associate with the task. The default value is the family
11715
+ * name of the task definition (for example, <code>family:my-family-name</code>).</p>
11716
+ * @public
11717
+ */
11718
+ group?: string | undefined;
11719
+ /**
11720
+ * <p>The infrastructure to run your standalone task on. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html">Amazon
11721
+ * ECS launch types</a> in the <i>Amazon Elastic Container Service Developer
11722
+ * Guide</i>.</p>
11723
+ * <note>
11724
+ * <p>If you want to use Amazon ECS Managed Instances, you must use the
11725
+ * <code>capacityProviderStrategy</code> request parameter and omit the
11726
+ * <code>launchType</code> request parameter.</p>
11727
+ * </note>
11728
+ * <p>The <code>FARGATE</code> launch type runs your tasks on Fargate On-Demand
11729
+ * infrastructure.</p>
11730
+ * <note>
11731
+ * <p>Fargate Spot infrastructure is available for use but a capacity provider strategy
11732
+ * 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
11733
+ * the <i>Amazon ECS Developer Guide</i>.</p>
11734
+ * </note>
11735
+ * <p>The <code>EC2</code> launch type runs your tasks on Amazon EC2 instances registered to
11736
+ * your cluster.</p>
11737
+ * <p>The <code>EXTERNAL</code> launch type runs your tasks on your on-premises server or
11738
+ * virtual machine (VM) capacity registered to your cluster.</p>
11739
+ * <p>A task can use either a launch type or a capacity provider strategy. If a
11740
+ * <code>launchType</code> is specified, the <code>capacityProviderStrategy</code>
11741
+ * parameter must be omitted.</p>
11742
+ * <p>When you use cluster auto scaling, you must specify
11743
+ * <code>capacityProviderStrategy</code> and not <code>launchType</code>. </p>
11744
+ * @public
11745
+ */
11746
+ launchType?: LaunchType | undefined;
11747
+ /**
11748
+ * <p>The network configuration for the task. This parameter is required for task
11749
+ * definitions that use the <code>awsvpc</code> network mode to receive their own elastic
11750
+ * network interface, and it isn't supported for other network modes. For more information,
11751
+ * see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html">Task networking</a>
11752
+ * in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
11753
+ * @public
11754
+ */
11755
+ networkConfiguration?: NetworkConfiguration | undefined;
11756
+ /**
11757
+ * <p>A list of container overrides in JSON format that specify the name of a container in
11758
+ * the specified task definition and the overrides it should receive. You can override the
11759
+ * default command for a container (that's specified in the task definition or Docker
11760
+ * image) with a <code>command</code> override. You can also override existing environment
11761
+ * variables (that are specified in the task definition or Docker image) on a container or
11762
+ * add new environment variables to it with an <code>environment</code> override.</p>
11763
+ * <p>A total of 8192 characters are allowed for overrides. This limit includes the JSON
11764
+ * formatting characters of the override structure.</p>
11765
+ * @public
11766
+ */
11767
+ overrides?: TaskOverride | undefined;
11768
+ /**
11769
+ * <p>An array of placement constraint objects to use for the task. You can specify up to 10
11770
+ * constraints for each task (including constraints in the task definition and those
11771
+ * specified at runtime).</p>
11772
+ * @public
11773
+ */
11774
+ placementConstraints?: PlacementConstraint[] | undefined;
11775
+ /**
11776
+ * <p>The placement strategy objects to use for the task. You can specify a maximum of 5
11777
+ * strategy rules for each task.</p>
11778
+ * @public
11779
+ */
11780
+ placementStrategy?: PlacementStrategy[] | undefined;
11781
+ /**
11782
+ * <p>The platform version the task uses. A platform version is only specified for tasks
11783
+ * hosted on Fargate. If one isn't specified, the <code>LATEST</code> platform version is
11784
+ * used. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html">Fargate
11785
+ * platform versions</a> in the <i>Amazon Elastic Container Service
11786
+ * Developer Guide</i>.</p>
11787
+ * @public
11788
+ */
11789
+ platformVersion?: string | undefined;
11790
+ /**
11791
+ * <p>Specifies whether to propagate the tags from the task definition to the task. If no
11792
+ * value is specified, the tags aren't propagated. Tags can only be propagated to the task
11793
+ * 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>
11794
+ * <note>
11795
+ * <p>An error will be received if you specify the <code>SERVICE</code> option when
11796
+ * running a task.</p>
11797
+ * </note>
11798
+ * @public
11799
+ */
11800
+ propagateTags?: PropagateTags | undefined;
11801
+ /**
11802
+ * <p>This parameter is only used by Amazon ECS. It is not intended for use by
11803
+ * customers.</p>
11804
+ * @public
11805
+ */
11806
+ referenceId?: string | undefined;
11807
+ /**
11808
+ * <p>An optional tag specified when a task is started. For example, if you automatically
11809
+ * trigger a task to run a batch process job, you could apply a unique identifier for that
11810
+ * job to your task with the <code>startedBy</code> parameter. You can then identify which
11811
+ * tasks belong to that job by filtering the results of a <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListTasks.html">ListTasks</a> call with
11812
+ * the <code>startedBy</code> value. Up to 128 letters (uppercase and lowercase), numbers,
11813
+ * hyphens (-), forward slash (/), and underscores (_) are allowed.</p>
11814
+ * <p>If a task is started by an Amazon ECS service, then the <code>startedBy</code>
11815
+ * parameter contains the deployment ID of the service that starts it.</p>
11816
+ * @public
11817
+ */
11818
+ startedBy?: string | undefined;
11819
+ /**
11820
+ * <p>The metadata that you apply to the task to help you categorize and organize them. Each
11821
+ * tag consists of a key and an optional value, both of which you define.</p>
11822
+ * <p>The following basic restrictions apply to tags:</p>
11823
+ * <ul>
11824
+ * <li>
11825
+ * <p>Maximum number of tags per resource - 50</p>
11826
+ * </li>
11827
+ * <li>
11828
+ * <p>For each resource, each tag key must be unique, and each tag key can have only
11829
+ * one value.</p>
11830
+ * </li>
11831
+ * <li>
11832
+ * <p>Maximum key length - 128 Unicode characters in UTF-8</p>
11833
+ * </li>
11834
+ * <li>
11835
+ * <p>Maximum value length - 256 Unicode characters in UTF-8</p>
11836
+ * </li>
11837
+ * <li>
11838
+ * <p>If your tagging schema is used across multiple services and resources,
11839
+ * remember that other services may have restrictions on allowed characters.
11840
+ * Generally allowed characters are: letters, numbers, and spaces representable in
11841
+ * UTF-8, and the following characters: + - = . _ : / @.</p>
11842
+ * </li>
11843
+ * <li>
11844
+ * <p>Tag keys and values are case-sensitive.</p>
11845
+ * </li>
11846
+ * <li>
11847
+ * <p>Do not use <code>aws:</code>, <code>AWS:</code>, or any upper or lowercase
11848
+ * combination of such as a prefix for either keys or values as it is reserved for
11849
+ * Amazon Web
11850
+ * Services use. You cannot edit or delete tag keys or values with
11851
+ * this prefix. Tags with this prefix do not count against your tags per resource
11852
+ * limit.</p>
11853
+ * </li>
11854
+ * </ul>
11855
+ * @public
11856
+ */
11857
+ tags?: Tag[] | undefined;
11858
+ /**
11859
+ * <p>The <code>family</code> and <code>revision</code> (<code>family:revision</code>) or
11860
+ * full ARN of the task definition to run. If a <code>revision</code> isn't specified, the
11861
+ * latest <code>ACTIVE</code> revision is used.</p>
11862
+ * <p>The full ARN value must match the value that you specified as the
11863
+ * <code>Resource</code> of the principal's permissions policy.</p>
11864
+ * <p>When you specify a task definition, you must either specify a specific revision, or
11865
+ * all revisions in the ARN.</p>
11866
+ * <p>To specify a specific revision, include the revision number in the ARN. For example,
11867
+ * to specify revision 2, use
11868
+ * <code>arn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:2</code>.</p>
11869
+ * <p>To specify all revisions, use the wildcard (*) in the ARN. For example, to specify all
11870
+ * revisions, use
11871
+ * <code>arn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:*</code>.</p>
11872
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies-resources">Policy Resources for Amazon ECS</a> in the Amazon Elastic Container Service
11873
+ * Developer Guide.</p>
11874
+ * @public
11875
+ */
11876
+ taskDefinition: string | undefined;
11877
+ /**
11878
+ * <p>An identifier that you provide to ensure the idempotency of the request. It must be
11879
+ * unique and is case sensitive. Up to 64 characters are allowed. The valid characters are
11880
+ * characters in the range of 33-126, inclusive. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/ECS_Idempotency.html">Ensuring idempotency</a>.</p>
11881
+ * @public
11882
+ */
11883
+ clientToken?: string | undefined;
11884
+ /**
11885
+ * <p>The details of the volume that was <code>configuredAtLaunch</code>. You can configure
11886
+ * the size, volumeType, IOPS, throughput, snapshot and encryption in <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TaskManagedEBSVolumeConfiguration.html">TaskManagedEBSVolumeConfiguration</a>. The <code>name</code> of the volume must
11887
+ * match the <code>name</code> from the task definition.</p>
11888
+ * @public
11889
+ */
11890
+ volumeConfigurations?: TaskVolumeConfiguration[] | undefined;
11891
+ }
11892
+ /**
11893
+ * @public
11894
+ */
11895
+ export interface RunTaskResponse {
11896
+ /**
11897
+ * <p>A full description of the tasks that were run. The tasks that were successfully placed
11898
+ * on your cluster are described here.</p>
11899
+ * @public
11900
+ */
11901
+ tasks?: Task[] | undefined;
11902
+ /**
11903
+ * <p>Any failures associated with the call.</p>
11904
+ * <p>For information about how to address failures, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-event-messages.html#service-event-messages-list">Service event messages</a> and <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/api_failures_messages.html">API failure
11905
+ * reasons</a> in the <i>Amazon Elastic Container Service Developer
11906
+ * Guide</i>.</p>
11907
+ * @public
11908
+ */
11909
+ failures?: Failure[] | undefined;
11910
+ }
11911
+ /**
11912
+ * @public
11913
+ */
11914
+ export interface StartTaskRequest {
11915
+ /**
11916
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster where to start your
11917
+ * task. If you do not specify a cluster, the default cluster is assumed.</p>
11918
+ * @public
11919
+ */
11920
+ cluster?: string | undefined;
11921
+ /**
11922
+ * <p>The container instance IDs or full ARN entries for the container instances where you
11923
+ * would like to place your task. You can specify up to 10 container instances.</p>
11924
+ * @public
11925
+ */
11926
+ containerInstances: string[] | undefined;
11927
+ /**
11928
+ * <p>Specifies whether to use Amazon ECS managed tags for the task. For more information,
11929
+ * see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html">Tagging Your Amazon ECS
11930
+ * Resources</a> in the <i>Amazon Elastic Container Service Developer
11931
+ * Guide</i>.</p>
11932
+ * @public
11933
+ */
11934
+ enableECSManagedTags?: boolean | undefined;
11935
+ /**
11936
+ * <p>Whether or not the execute command functionality is turned on for the task. If
11937
+ * <code>true</code>, this turns on the execute command functionality on all containers
11938
+ * in the task.</p>
11939
+ * @public
11940
+ */
11941
+ enableExecuteCommand?: boolean | undefined;
11942
+ /**
11943
+ * <p>The name of the task group to associate with the task. The default value is the family
11944
+ * name of the task definition (for example, family:my-family-name).</p>
11945
+ * @public
11946
+ */
11947
+ group?: string | undefined;
11948
+ /**
11949
+ * <p>The VPC subnet and security group configuration for tasks that receive their own
11950
+ * elastic network interface by using the <code>awsvpc</code> networking mode.</p>
11951
+ * @public
11952
+ */
11953
+ networkConfiguration?: NetworkConfiguration | undefined;
11954
+ /**
11955
+ * <p>A list of container overrides in JSON format that specify the name of a container in
11956
+ * the specified task definition and the overrides it receives. You can override the
11957
+ * default command for a container (that's specified in the task definition or Docker
11958
+ * image) with a <code>command</code> override. You can also override existing environment
11959
+ * variables (that are specified in the task definition or Docker image) on a container or
11960
+ * add new environment variables to it with an <code>environment</code> override.</p>
11961
+ * <note>
11962
+ * <p>A total of 8192 characters are allowed for overrides. This limit includes the JSON
11963
+ * formatting characters of the override structure.</p>
11964
+ * </note>
11965
+ * @public
11966
+ */
11967
+ overrides?: TaskOverride | undefined;
11968
+ /**
11969
+ * <p>Specifies whether to propagate the tags from the task definition or the service to the
11970
+ * task. If no value is specified, the tags aren't propagated.</p>
11971
+ * @public
11972
+ */
11973
+ propagateTags?: PropagateTags | undefined;
11974
+ /**
11975
+ * <p>This parameter is only used by Amazon ECS. It is not intended for use by
11976
+ * customers.</p>
11977
+ * @public
11978
+ */
11979
+ referenceId?: string | undefined;
11980
+ /**
11981
+ * <p>An optional tag specified when a task is started. For example, if you automatically
11982
+ * trigger a task to run a batch process job, you could apply a unique identifier for that
11983
+ * job to your task with the <code>startedBy</code> parameter. You can then identify which
11984
+ * tasks belong to that job by filtering the results of a <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListTasks.html">ListTasks</a> call with
11985
+ * the <code>startedBy</code> value. Up to 36 letters (uppercase and lowercase), numbers,
11986
+ * hyphens (-), forward slash (/), and underscores (_) are allowed.</p>
11987
+ * <p>If a task is started by an Amazon ECS service, the <code>startedBy</code> parameter
11988
+ * contains the deployment ID of the service that starts it.</p>
11989
+ * @public
11990
+ */
11991
+ startedBy?: string | undefined;
11992
+ /**
11993
+ * <p>The metadata that you apply to the task to help you categorize and organize them. Each
11994
+ * tag consists of a key and an optional value, both of which you define.</p>
11995
+ * <p>The following basic restrictions apply to tags:</p>
11996
+ * <ul>
11997
+ * <li>
11998
+ * <p>Maximum number of tags per resource - 50</p>
11999
+ * </li>
12000
+ * <li>
12001
+ * <p>For each resource, each tag key must be unique, and each tag key can have only
12002
+ * one value.</p>
12003
+ * </li>
12004
+ * <li>
12005
+ * <p>Maximum key length - 128 Unicode characters in UTF-8</p>
12006
+ * </li>
12007
+ * <li>
12008
+ * <p>Maximum value length - 256 Unicode characters in UTF-8</p>
12009
+ * </li>
12010
+ * <li>
12011
+ * <p>If your tagging schema is used across multiple services and resources,
12012
+ * remember that other services may have restrictions on allowed characters.
12013
+ * Generally allowed characters are: letters, numbers, and spaces representable in
12014
+ * UTF-8, and the following characters: + - = . _ : / @.</p>
12015
+ * </li>
12016
+ * <li>
12017
+ * <p>Tag keys and values are case-sensitive.</p>
12018
+ * </li>
12019
+ * <li>
12020
+ * <p>Do not use <code>aws:</code>, <code>AWS:</code>, or any upper or lowercase
12021
+ * combination of such as a prefix for either keys or values as it is reserved for
12022
+ * Amazon Web
12023
+ * Services use. You cannot edit or delete tag keys or values with
12024
+ * this prefix. Tags with this prefix do not count against your tags per resource
12025
+ * limit.</p>
12026
+ * </li>
12027
+ * </ul>
12028
+ * @public
12029
+ */
12030
+ tags?: Tag[] | undefined;
12031
+ /**
12032
+ * <p>The <code>family</code> and <code>revision</code> (<code>family:revision</code>) or
12033
+ * full ARN of the task definition to start. If a <code>revision</code> isn't specified,
12034
+ * the latest <code>ACTIVE</code> revision is used.</p>
12035
+ * @public
12036
+ */
12037
+ taskDefinition: string | undefined;
12038
+ /**
12039
+ * <p>The details of the volume that was <code>configuredAtLaunch</code>. You can configure
12040
+ * the size, volumeType, IOPS, throughput, snapshot and encryption in <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TaskManagedEBSVolumeConfiguration.html">TaskManagedEBSVolumeConfiguration</a>. The <code>name</code> of the volume must
12041
+ * match the <code>name</code> from the task definition.</p>
12042
+ * @public
12043
+ */
12044
+ volumeConfigurations?: TaskVolumeConfiguration[] | undefined;
12045
+ }
12046
+ /**
12047
+ * @public
12048
+ */
12049
+ export interface StartTaskResponse {
12050
+ /**
12051
+ * <p>A full description of the tasks that were started. Each task that was successfully
12052
+ * placed on your container instances is described.</p>
12053
+ * @public
12054
+ */
12055
+ tasks?: Task[] | undefined;
12056
+ /**
12057
+ * <p>Any failures associated with the call.</p>
12058
+ * @public
12059
+ */
12060
+ failures?: Failure[] | undefined;
12061
+ }
12062
+ /**
12063
+ * @public
12064
+ */
12065
+ export interface StopServiceDeploymentRequest {
12066
+ /**
12067
+ * <p>The ARN of the service deployment that you want to stop.</p>
12068
+ * @public
12069
+ */
12070
+ serviceDeploymentArn: string | undefined;
12071
+ /**
12072
+ * <p>How you want Amazon ECS to stop the service. </p>
12073
+ * <p>The valid values are <code>ROLLBACK</code>.</p>
12074
+ * @public
12075
+ */
12076
+ stopType?: StopServiceDeploymentStopType | undefined;
12077
+ }
12078
+ /**
12079
+ * @public
12080
+ */
12081
+ export interface StopServiceDeploymentResponse {
12082
+ /**
12083
+ * <p>The ARN of the stopped service deployment.</p>
12084
+ * @public
12085
+ */
12086
+ serviceDeploymentArn?: string | undefined;
12087
+ }
12088
+ /**
12089
+ * @public
12090
+ */
12091
+ export interface StopTaskRequest {
12092
+ /**
12093
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that hosts the task
12094
+ * to stop. If you do not specify a cluster, the default cluster is assumed.</p>
12095
+ * @public
12096
+ */
12097
+ cluster?: string | undefined;
12098
+ /**
12099
+ * <p>Thefull Amazon Resource Name (ARN) of the task.</p>
12100
+ * @public
12101
+ */
12102
+ task: string | undefined;
12103
+ /**
12104
+ * <p>An optional message specified when a task is stopped. For example, if you're using a
12105
+ * custom scheduler, you can use this parameter to specify the reason for stopping the task
12106
+ * here, and the message appears in subsequent <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html">DescribeTasks</a>>
12107
+ * API operations on this task.</p>
12108
+ * @public
12109
+ */
12110
+ reason?: string | undefined;
12111
+ }
12112
+ /**
12113
+ * @public
12114
+ */
12115
+ export interface StopTaskResponse {
12116
+ /**
12117
+ * <p>The task that was stopped.</p>
12118
+ * @public
12119
+ */
12120
+ task?: Task | undefined;
12121
+ }
12122
+ /**
12123
+ * <p>An object representing a change in state for a task attachment.</p>
12124
+ * @public
12125
+ */
12126
+ export interface AttachmentStateChange {
12127
+ /**
12128
+ * <p>The Amazon Resource Name (ARN) of the attachment.</p>
12129
+ * @public
12130
+ */
12131
+ attachmentArn: string | undefined;
12132
+ /**
12133
+ * <p>The status of the attachment.</p>
12134
+ * @public
12135
+ */
12136
+ status: string | undefined;
12137
+ }
12138
+ /**
12139
+ * @public
12140
+ */
12141
+ export interface SubmitAttachmentStateChangesRequest {
12142
+ /**
12143
+ * <p>The short name or full ARN of the cluster that hosts the container instance the
12144
+ * attachment belongs to.</p>
12145
+ * @public
12146
+ */
12147
+ cluster?: string | undefined;
12148
+ /**
12149
+ * <p>Any attachments associated with the state change request.</p>
12150
+ * @public
12151
+ */
12152
+ attachments: AttachmentStateChange[] | undefined;
12153
+ }
12154
+ /**
12155
+ * @public
12156
+ */
12157
+ export interface SubmitAttachmentStateChangesResponse {
12158
+ /**
12159
+ * <p>Acknowledgement of the state change.</p>
12160
+ * @public
12161
+ */
12162
+ acknowledgment?: string | undefined;
12163
+ }
12164
+ /**
12165
+ * @public
12166
+ */
12167
+ export interface SubmitContainerStateChangeRequest {
12168
+ /**
12169
+ * <p>The short name or full ARN of the cluster that hosts the container.</p>
12170
+ * @public
12171
+ */
12172
+ cluster?: string | undefined;
12173
+ /**
12174
+ * <p>The task ID or full Amazon Resource Name (ARN) of the task that hosts the
12175
+ * container.</p>
12176
+ * @public
12177
+ */
12178
+ task?: string | undefined;
12179
+ /**
12180
+ * <p>The name of the container.</p>
12181
+ * @public
12182
+ */
12183
+ containerName?: string | undefined;
12184
+ /**
12185
+ * <p>The ID of the Docker container.</p>
12186
+ * @public
12187
+ */
12188
+ runtimeId?: string | undefined;
12189
+ /**
12190
+ * <p>The status of the state change request.</p>
12191
+ * @public
12192
+ */
12193
+ status?: string | undefined;
12194
+ /**
12195
+ * <p>The exit code that's returned for the state change request.</p>
12196
+ * @public
12197
+ */
12198
+ exitCode?: number | undefined;
12199
+ /**
12200
+ * <p>The reason for the state change request.</p>
12201
+ * @public
12202
+ */
12203
+ reason?: string | undefined;
12204
+ /**
12205
+ * <p>The network bindings of the container.</p>
12206
+ * @public
12207
+ */
12208
+ networkBindings?: NetworkBinding[] | undefined;
12209
+ }
12210
+ /**
12211
+ * @public
12212
+ */
12213
+ export interface SubmitContainerStateChangeResponse {
12214
+ /**
12215
+ * <p>Acknowledgement of the state change.</p>
12216
+ * @public
12217
+ */
12218
+ acknowledgment?: string | undefined;
12219
+ }
12220
+ /**
12221
+ * <p>An object that represents a change in state for a container.</p>
12222
+ * @public
12223
+ */
12224
+ export interface ContainerStateChange {
12225
+ /**
12226
+ * <p>The name of the container.</p>
12227
+ * @public
12228
+ */
12229
+ containerName?: string | undefined;
12230
+ /**
12231
+ * <p>The container image SHA 256 digest.</p>
12232
+ * @public
12233
+ */
12234
+ imageDigest?: string | undefined;
12235
+ /**
12236
+ * <p>The ID of the Docker container.</p>
12237
+ * @public
12238
+ */
12239
+ runtimeId?: string | undefined;
12240
+ /**
12241
+ * <p>The exit code for the container, if the state change is a result of the container
12242
+ * exiting.</p>
12243
+ * @public
12244
+ */
12245
+ exitCode?: number | undefined;
12246
+ /**
12247
+ * <p>Any network bindings that are associated with the container.</p>
12248
+ * @public
12249
+ */
12250
+ networkBindings?: NetworkBinding[] | undefined;
12251
+ /**
12252
+ * <p>The reason for the state change.</p>
12253
+ * @public
12254
+ */
12255
+ reason?: string | undefined;
12256
+ /**
12257
+ * <p>The status of the container.</p>
12258
+ * @public
12259
+ */
12260
+ status?: string | undefined;
12261
+ }
12262
+ /**
12263
+ * <p>An object representing a change in state for a managed agent.</p>
12264
+ * @public
12265
+ */
12266
+ export interface ManagedAgentStateChange {
12267
+ /**
12268
+ * <p>The name of the container that's associated with the managed agent.</p>
12269
+ * @public
12270
+ */
12271
+ containerName: string | undefined;
12272
+ /**
12273
+ * <p>The name of the managed agent.</p>
12274
+ * @public
12275
+ */
12276
+ managedAgentName: ManagedAgentName | undefined;
12277
+ /**
12278
+ * <p>The status of the managed agent.</p>
12279
+ * @public
12280
+ */
12281
+ status: string | undefined;
12282
+ /**
12283
+ * <p>The reason for the status of the managed agent.</p>
12284
+ * @public
12285
+ */
12286
+ reason?: string | undefined;
12287
+ }
12288
+ /**
12289
+ * @public
12290
+ */
12291
+ export interface SubmitTaskStateChangeRequest {
12292
+ /**
12293
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that hosts the
12294
+ * task.</p>
12295
+ * @public
12296
+ */
12297
+ cluster?: string | undefined;
12298
+ /**
12299
+ * <p>The task ID or full ARN of the task in the state change request.</p>
12300
+ * @public
12301
+ */
12302
+ task?: string | undefined;
12303
+ /**
12304
+ * <p>The status of the state change request.</p>
12305
+ * @public
12306
+ */
12307
+ status?: string | undefined;
12308
+ /**
12309
+ * <p>The reason for the state change request.</p>
12310
+ * @public
12311
+ */
12312
+ reason?: string | undefined;
12313
+ /**
12314
+ * <p>Any containers that's associated with the state change request.</p>
12315
+ * @public
12316
+ */
12317
+ containers?: ContainerStateChange[] | undefined;
12318
+ /**
12319
+ * <p>Any attachments associated with the state change request.</p>
12320
+ * @public
12321
+ */
12322
+ attachments?: AttachmentStateChange[] | undefined;
12323
+ /**
12324
+ * <p>The details for the managed agent that's associated with the task.</p>
12325
+ * @public
12326
+ */
12327
+ managedAgents?: ManagedAgentStateChange[] | undefined;
12328
+ /**
12329
+ * <p>The Unix timestamp for the time when the container image pull started.</p>
12330
+ * @public
12331
+ */
12332
+ pullStartedAt?: Date | undefined;
12333
+ /**
12334
+ * <p>The Unix timestamp for the time when the container image pull completed.</p>
12335
+ * @public
12336
+ */
12337
+ pullStoppedAt?: Date | undefined;
12338
+ /**
12339
+ * <p>The Unix timestamp for the time when the task execution stopped.</p>
12340
+ * @public
12341
+ */
12342
+ executionStoppedAt?: Date | undefined;
12343
+ }
12344
+ /**
12345
+ * @public
12346
+ */
12347
+ export interface SubmitTaskStateChangeResponse {
12348
+ /**
12349
+ * <p>Acknowledgement of the state change.</p>
12350
+ * @public
12351
+ */
12352
+ acknowledgment?: string | undefined;
12353
+ }
12354
+ /**
12355
+ * @public
12356
+ */
12357
+ export interface TagResourceRequest {
12358
+ /**
12359
+ * <p>The Amazon Resource Name (ARN) of the resource to add tags to. Currently, the
12360
+ * supported resources are Amazon ECS capacity providers, tasks, services, task
12361
+ * definitions, clusters, and container instances.</p>
12362
+ * <p>In order to tag a service that has the following ARN format, you need to migrate the
12363
+ * service to the long ARN. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-arn-migration.html">Migrate an Amazon
12364
+ * ECS short service ARN to a long ARN</a> in the <i>Amazon Elastic
12365
+ * Container Service Developer Guide</i>.</p>
12366
+ * <p>
12367
+ * <code>arn:aws:ecs:region:aws_account_id:service/service-name</code>
12368
+ * </p>
12369
+ * <p>After the migration is complete, the service has the long ARN format, as shown below.
12370
+ * Use this ARN to tag the service.</p>
12371
+ * <p>
12372
+ * <code>arn:aws:ecs:region:aws_account_id:service/cluster-name/service-name</code>
12373
+ * </p>
12374
+ * <p>If you try to tag a service with a short ARN, you receive an
12375
+ * <code>InvalidParameterException</code> error.</p>
12376
+ * @public
12377
+ */
12378
+ resourceArn: string | undefined;
12379
+ /**
12380
+ * <p>The tags to add to the resource. A tag is an array of key-value pairs.</p>
12381
+ * <p>The following basic restrictions apply to tags:</p>
12382
+ * <ul>
12383
+ * <li>
12384
+ * <p>Maximum number of tags per resource - 50</p>
12385
+ * </li>
12386
+ * <li>
12387
+ * <p>For each resource, each tag key must be unique, and each tag key can have only
12388
+ * one value.</p>
12389
+ * </li>
12390
+ * <li>
12391
+ * <p>Maximum key length - 128 Unicode characters in UTF-8</p>
12392
+ * </li>
12393
+ * <li>
12394
+ * <p>Maximum value length - 256 Unicode characters in UTF-8</p>
12395
+ * </li>
12396
+ * <li>
12397
+ * <p>If your tagging schema is used across multiple services and resources,
12398
+ * remember that other services may have restrictions on allowed characters.
12399
+ * Generally allowed characters are: letters, numbers, and spaces representable in
12400
+ * UTF-8, and the following characters: + - = . _ : / @.</p>
12401
+ * </li>
12402
+ * <li>
12403
+ * <p>Tag keys and values are case-sensitive.</p>
12404
+ * </li>
12405
+ * <li>
12406
+ * <p>Do not use <code>aws:</code>, <code>AWS:</code>, or any upper or lowercase
12407
+ * combination of such as a prefix for either keys or values as it is reserved for
12408
+ * Amazon Web
12409
+ * Services use. You cannot edit or delete tag keys or values with
12410
+ * this prefix. Tags with this prefix do not count against your tags per resource
12411
+ * limit.</p>
12412
+ * </li>
12413
+ * </ul>
12414
+ * @public
12415
+ */
12416
+ tags: Tag[] | undefined;
12417
+ }
12418
+ /**
12419
+ * @public
12420
+ */
12421
+ export interface TagResourceResponse {
12422
+ }
12423
+ /**
12424
+ * @public
12425
+ */
12426
+ export interface UntagResourceRequest {
12427
+ /**
12428
+ * <p>The Amazon Resource Name (ARN) of the resource to delete tags from. Currently, the
12429
+ * supported resources are Amazon ECS capacity providers, tasks, services, task
12430
+ * definitions, clusters, and container instances.</p>
12431
+ * @public
12432
+ */
12433
+ resourceArn: string | undefined;
12434
+ /**
12435
+ * <p>The keys of the tags to be removed.</p>
12436
+ * @public
12437
+ */
12438
+ tagKeys: string[] | undefined;
12439
+ }
12440
+ /**
12441
+ * @public
12442
+ */
12443
+ export interface UntagResourceResponse {
12444
+ }
12445
+ /**
12446
+ * <p>The details of the Auto Scaling group capacity provider to update.</p>
12447
+ * @public
12448
+ */
12449
+ export interface AutoScalingGroupProviderUpdate {
12450
+ /**
12451
+ * <p>The managed scaling settings for the Auto Scaling group capacity provider.</p>
12452
+ * @public
12453
+ */
12454
+ managedScaling?: ManagedScaling | undefined;
12455
+ /**
12456
+ * <p>The managed termination protection setting to use for the Auto Scaling group capacity
12457
+ * provider. This determines whether the Auto Scaling group has managed termination
12458
+ * protection.</p>
12459
+ * <important>
12460
+ * <p>When using managed termination protection, managed scaling must also be used
12461
+ * otherwise managed termination protection doesn't work.</p>
12462
+ * </important>
12463
+ * <p>When managed termination protection is on, Amazon ECS prevents the Amazon EC2
12464
+ * instances in an Auto Scaling group that contain tasks from being terminated during a
12465
+ * scale-in action. The Auto Scaling group and each instance in the Auto Scaling group must
12466
+ * have instance protection from scale-in actions on. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection">Instance Protection</a> in the <i>Auto Scaling User
12467
+ * Guide</i>.</p>
12468
+ * <p>When managed termination protection is off, your Amazon EC2 instances aren't protected
12469
+ * from termination when the Auto Scaling group scales in.</p>
12470
+ * @public
12471
+ */
12472
+ managedTerminationProtection?: ManagedTerminationProtection | undefined;
12473
+ /**
12474
+ * <p>The managed draining option for the Auto Scaling group capacity provider. When you
12475
+ * enable this, Amazon ECS manages and gracefully drains the EC2 container instances that
12476
+ * are in the Auto Scaling group capacity provider.</p>
12477
+ * @public
12478
+ */
12479
+ managedDraining?: ManagedDraining | undefined;
12480
+ }
12481
+ /**
12482
+ * <p>The updated launch template configuration for Amazon ECS Managed Instances. You can
12483
+ * modify the instance profile, network configuration, storage settings, and instance
12484
+ * requirements. Changes apply to new instances launched after the update.</p>
12485
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html">Store instance launch
12486
+ * parameters in Amazon EC2 launch templates</a> in the <i>Amazon EC2 User
12487
+ * Guide</i>.</p>
12488
+ * @public
12489
+ */
12490
+ export interface InstanceLaunchTemplateUpdate {
12491
+ /**
12492
+ * <p>The updated Amazon Resource Name (ARN) of the instance profile. The new instance
12493
+ * profile must have the necessary permissions for your tasks.</p>
12494
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/managed-instances-instance-profile.html">Amazon
12495
+ * ECS instance profile for Managed Instances</a> in the <i>Amazon ECS
12496
+ * Developer Guide</i>. </p>
12497
+ * @public
12498
+ */
12499
+ ec2InstanceProfileArn?: string | undefined;
12500
+ /**
12501
+ * <p>The updated network configuration for Amazon ECS Managed Instances. Changes to subnets
12502
+ * and security groups affect new instances launched after the update.</p>
12503
+ * @public
12504
+ */
12505
+ networkConfiguration?: ManagedInstancesNetworkConfiguration | undefined;
12506
+ /**
12507
+ * <p>The updated storage configuration for Amazon ECS Managed Instances. Changes to storage
12508
+ * settings apply to new instances launched after the update.</p>
12509
+ * @public
12510
+ */
12511
+ storageConfiguration?: ManagedInstancesStorageConfiguration | undefined;
12512
+ /**
12513
+ * <p>CloudWatch provides two categories of monitoring: basic monitoring and detailed
12514
+ * monitoring. By default, your managed instance is configured for basic monitoring. You
12515
+ * can optionally enable detailed monitoring to help you more quickly identify and act on
12516
+ * operational issues. You can enable or turn off detailed monitoring at launch or when the
12517
+ * managed instance is running or stopped. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/detailed-monitoring-managed-instances.html">Detailed monitoring for Amazon ECS Managed Instances</a> in the Amazon ECS
12518
+ * Developer Guide.</p>
12519
+ * @public
12520
+ */
12521
+ monitoring?: ManagedInstancesMonitoringOptions | undefined;
12522
+ /**
12523
+ * <p>The updated instance requirements for attribute-based instance type selection. Changes
12524
+ * to instance requirements affect which instance types Amazon ECS selects for new
12525
+ * instances.</p>
12526
+ * @public
12527
+ */
12528
+ instanceRequirements?: InstanceRequirementsRequest | undefined;
12529
+ }
12530
+ /**
12531
+ * <p>The updated configuration for a Amazon ECS Managed Instances provider. You can modify
12532
+ * the infrastructure role, instance launch template, and tag propagation settings. Changes
12533
+ * apply to new instances launched after the update.</p>
12534
+ * @public
12535
+ */
12536
+ export interface UpdateManagedInstancesProviderConfiguration {
12537
+ /**
12538
+ * <p>The updated Amazon Resource Name (ARN) of the infrastructure role. The new role must
12539
+ * have the necessary permissions to manage instances and access required Amazon Web Services
12540
+ * services.</p>
12541
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/infrastructure_IAM_role.html">Amazon ECS
12542
+ * infrastructure IAM role</a> in the <i>Amazon ECS Developer
12543
+ * Guide</i>.</p>
12544
+ * @public
12545
+ */
12546
+ infrastructureRoleArn: string | undefined;
12547
+ /**
12548
+ * <p>The updated launch template configuration. Changes to the launch template affect new
12549
+ * instances launched after the update, while existing instances continue to use their
12550
+ * original configuration.</p>
12551
+ * @public
12552
+ */
12553
+ instanceLaunchTemplate: InstanceLaunchTemplateUpdate | undefined;
12554
+ /**
12555
+ * <p>The updated tag propagation setting. When changed, this affects only new instances
12556
+ * launched after the update.</p>
12557
+ * @public
12558
+ */
12559
+ propagateTags?: PropagateMITags | undefined;
12560
+ /**
12561
+ * <p>The updated infrastructure optimization configuration.
12562
+ * Changes to this setting affect how Amazon ECS optimizes instances going forward.</p>
12563
+ * @public
12564
+ */
12565
+ infrastructureOptimization?: InfrastructureOptimization | undefined;
12566
+ }
12567
+ /**
12568
+ * @public
12569
+ */
12570
+ export interface UpdateCapacityProviderRequest {
12571
+ /**
12572
+ * <p>The name of the capacity provider to update.</p>
12573
+ * @public
12574
+ */
12575
+ name: string | undefined;
12576
+ /**
12577
+ * <p>The name of the cluster that contains the capacity provider to update. Managed
12578
+ * instances capacity providers are cluster-scoped and can only be updated within their
12579
+ * associated cluster.</p>
12580
+ * @public
12581
+ */
12582
+ cluster?: string | undefined;
12583
+ /**
12584
+ * <p>An object that represent the parameters to update for the Auto Scaling group capacity
12585
+ * provider.</p>
12586
+ * @public
12587
+ */
12588
+ autoScalingGroupProvider?: AutoScalingGroupProviderUpdate | undefined;
12589
+ /**
12590
+ * <p>The updated configuration for the Amazon ECS Managed Instances provider. You can
12591
+ * modify the infrastructure role, instance launch template, and tag propagation settings.
12592
+ * Changes take effect for new instances launched after the update.</p>
12593
+ * @public
12594
+ */
12595
+ managedInstancesProvider?: UpdateManagedInstancesProviderConfiguration | undefined;
12596
+ }
12597
+ /**
12598
+ * @public
12599
+ */
12600
+ export interface UpdateCapacityProviderResponse {
12601
+ /**
12602
+ * <p>Details about the capacity provider.</p>
12603
+ * @public
12604
+ */
12605
+ capacityProvider?: CapacityProvider | undefined;
12606
+ }
12607
+ /**
12608
+ * @public
12609
+ */
12610
+ export interface UpdateClusterRequest {
12611
+ /**
12612
+ * <p>The name of the cluster to modify the settings for.</p>
12613
+ * @public
12614
+ */
12615
+ cluster: string | undefined;
12616
+ /**
12617
+ * <p>The cluster settings for your cluster.</p>
12618
+ * @public
12619
+ */
12620
+ settings?: ClusterSetting[] | undefined;
12621
+ /**
12622
+ * <p>The execute command configuration for the cluster.</p>
12623
+ * @public
12624
+ */
12625
+ configuration?: ClusterConfiguration | undefined;
12626
+ /**
12627
+ * <p>Use this parameter to set a default Service Connect namespace. After you set a default
12628
+ * Service Connect namespace, any new services with Service Connect turned on that are
12629
+ * created in the cluster are added as client services in the namespace. This setting only
12630
+ * applies to new services that set the <code>enabled</code> parameter to <code>true</code>
12631
+ * in the <code>ServiceConnectConfiguration</code>. You can set the namespace of each
12632
+ * service individually in the <code>ServiceConnectConfiguration</code> to override this
12633
+ * default parameter.</p>
12634
+ * <p>Tasks that run in a namespace can use short names to connect to services in the
12635
+ * namespace. Tasks can connect to services across all of the clusters in the namespace.
12636
+ * Tasks connect through a managed proxy container that collects logs and metrics for
12637
+ * increased visibility. Only the tasks that Amazon ECS services create are supported with
12638
+ * Service Connect. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html">Service Connect</a>
12639
+ * in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
12640
+ * @public
12641
+ */
12642
+ serviceConnectDefaults?: ClusterServiceConnectDefaultsRequest | undefined;
12643
+ }
12644
+ /**
12645
+ * @public
12646
+ */
12647
+ export interface UpdateClusterResponse {
12648
+ /**
12649
+ * <p>Details about the cluster.</p>
12650
+ * @public
12651
+ */
12652
+ cluster?: Cluster | undefined;
12653
+ }
12654
+ /**
12655
+ * @public
12656
+ */
12657
+ export interface UpdateClusterSettingsRequest {
12658
+ /**
12659
+ * <p>The name of the cluster to modify the settings for.</p>
12660
+ * @public
12661
+ */
12662
+ cluster: string | undefined;
12663
+ /**
12664
+ * <p>The setting to use by default for a cluster. This parameter is used to turn on
12665
+ * CloudWatch Container Insights for a cluster. If this value is specified, it overrides
12666
+ * the <code>containerInsights</code> value set with <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAccountSetting.html">PutAccountSetting</a> or <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAccountSettingDefault.html">PutAccountSettingDefault</a>.</p>
12667
+ * <important>
12668
+ * <p>Currently, if you delete an existing cluster that does not have Container Insights
12669
+ * turned on, and then create a new cluster with the same name with Container Insights
12670
+ * tuned on, Container Insights will not actually be turned on. If you want to preserve
12671
+ * the same name for your existing cluster and turn on Container Insights, you must
12672
+ * wait 7 days before you can re-create it.</p>
12673
+ * </important>
12674
+ * @public
12675
+ */
12676
+ settings: ClusterSetting[] | undefined;
12677
+ }
12678
+ /**
12679
+ * @public
12680
+ */
12681
+ export interface UpdateClusterSettingsResponse {
12682
+ /**
12683
+ * <p>Details about the cluster</p>
12684
+ * @public
12685
+ */
12686
+ cluster?: Cluster | undefined;
12687
+ }
12688
+ /**
12689
+ * @public
12690
+ */
12691
+ export interface UpdateContainerAgentRequest {
12692
+ /**
12693
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that your container
12694
+ * instance is running on. If you do not specify a cluster, the default cluster is
12695
+ * assumed.</p>
12696
+ * @public
12697
+ */
12698
+ cluster?: string | undefined;
12699
+ /**
12700
+ * <p>The container instance ID or full ARN entries for the container instance where you
12701
+ * would like to update the Amazon ECS container agent.</p>
12702
+ * @public
12703
+ */
12704
+ containerInstance: string | undefined;
12705
+ }
12706
+ /**
12707
+ * @public
12708
+ */
12709
+ export interface UpdateContainerAgentResponse {
12710
+ /**
12711
+ * <p>The container instance that the container agent was updated for.</p>
12712
+ * @public
12713
+ */
12714
+ containerInstance?: ContainerInstance | undefined;
12715
+ }
12716
+ /**
12717
+ * @public
12718
+ */
12719
+ export interface UpdateContainerInstancesStateRequest {
12720
+ /**
12721
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that hosts the
12722
+ * container instance to update. If you do not specify a cluster, the default cluster is
12723
+ * assumed.</p>
12724
+ * @public
12725
+ */
12726
+ cluster?: string | undefined;
12727
+ /**
12728
+ * <p>A list of up to 10 container instance IDs or full ARN entries.</p>
12729
+ * @public
12730
+ */
12731
+ containerInstances: string[] | undefined;
12732
+ /**
12733
+ * <p>The container instance state to update the container instance with. The only valid
12734
+ * values for this action are <code>ACTIVE</code> and <code>DRAINING</code>. A container
12735
+ * instance can only be updated to <code>DRAINING</code> status once it has reached an
12736
+ * <code>ACTIVE</code> state. If a container instance is in <code>REGISTERING</code>,
12737
+ * <code>DEREGISTERING</code>, or <code>REGISTRATION_FAILED</code> state you can
12738
+ * describe the container instance but can't update the container instance state.</p>
12739
+ * @public
12740
+ */
12741
+ status: ContainerInstanceStatus | undefined;
12742
+ }
12743
+ /**
12744
+ * @public
12745
+ */
12746
+ export interface UpdateContainerInstancesStateResponse {
12747
+ /**
12748
+ * <p>The list of container instances.</p>
12749
+ * @public
12750
+ */
12751
+ containerInstances?: ContainerInstance[] | undefined;
12752
+ /**
12753
+ * <p>Any failures associated with the call.</p>
12754
+ * @public
12755
+ */
12756
+ failures?: Failure[] | undefined;
12757
+ }
12758
+ /**
12759
+ * @public
12760
+ */
12761
+ export interface UpdateServiceRequest {
12762
+ /**
12763
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that your service
12764
+ * runs on. If you do not specify a cluster, the default cluster is assumed.</p>
12765
+ * <p>You can't change the cluster name.</p>
12766
+ * @public
12767
+ */
12768
+ cluster?: string | undefined;
12769
+ /**
12770
+ * <p>The name of the service to update.</p>
12771
+ * @public
12772
+ */
12773
+ service: string | undefined;
12774
+ /**
12775
+ * <p>The number of instantiations of the task to place and keep running in your
12776
+ * service.</p>
12777
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12778
+ * @public
12779
+ */
12780
+ desiredCount?: number | undefined;
12781
+ /**
12782
+ * <p>The <code>family</code> and <code>revision</code> (<code>family:revision</code>) or
12783
+ * full ARN of the task definition to run in your service. If a <code>revision</code> is
12784
+ * not specified, the latest <code>ACTIVE</code> revision is used. If you modify the task
12785
+ * definition with <code>UpdateService</code>, Amazon ECS spawns a task with the new
12786
+ * version of the task definition and then stops an old task after the new version is
12787
+ * running.</p>
12788
+ * <p>This parameter triggers a new service deployment.</p>
12789
+ * @public
12790
+ */
12791
+ taskDefinition?: string | undefined;
12792
+ /**
12793
+ * <p>The details of a capacity provider strategy. You can set a capacity provider when you
12794
+ * create a cluster, run a task, or update a service.</p>
12795
+ * <note>
12796
+ * <p>If you want to use Amazon ECS Managed Instances, you must use the
12797
+ * <code>capacityProviderStrategy</code> request parameter.</p>
12798
+ * </note>
12799
+ * <p>When you use Fargate, the capacity providers are <code>FARGATE</code> or
12800
+ * <code>FARGATE_SPOT</code>.</p>
12801
+ * <p>When you use Amazon EC2, the capacity providers are Auto Scaling groups.</p>
12802
+ * <p>You can change capacity providers for rolling deployments and blue/green
12803
+ * deployments.</p>
12804
+ * <p>The following list provides the valid transitions:</p>
12805
+ * <ul>
12806
+ * <li>
12807
+ * <p>Update the Fargate launch type to an Auto Scaling group capacity
12808
+ * provider.</p>
12809
+ * </li>
12810
+ * <li>
12811
+ * <p>Update the Amazon EC2 launch type to a Fargate capacity provider.</p>
12812
+ * </li>
12813
+ * <li>
12814
+ * <p>Update the Fargate capacity provider to an Auto Scaling group capacity
12815
+ * provider.</p>
12816
+ * </li>
12817
+ * <li>
12818
+ * <p>Update the Amazon EC2 capacity provider to a Fargate capacity provider.
12819
+ * </p>
12820
+ * </li>
12821
+ * <li>
12822
+ * <p>Update the Auto Scaling group or Fargate capacity provider back to the launch
12823
+ * type.</p>
12824
+ * <p>Pass an empty list in the <code>capacityProviderStrategy</code>
12825
+ * parameter.</p>
12826
+ * </li>
12827
+ * </ul>
12828
+ * <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
12829
+ * Services CDK considerations</a>.</p>
12830
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12831
+ * @public
12832
+ */
12833
+ capacityProviderStrategy?: CapacityProviderStrategyItem[] | undefined;
12834
+ /**
12835
+ * <p>Optional deployment parameters that control how many tasks run during the deployment
12836
+ * and the ordering of stopping and starting tasks.</p>
12837
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12838
+ * @public
12839
+ */
12840
+ deploymentConfiguration?: DeploymentConfiguration | undefined;
12841
+ /**
12842
+ * <p>Indicates whether to use Availability Zone rebalancing for the service.</p>
12843
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html">Balancing an Amazon
12844
+ * ECS service across Availability Zones</a> in the <i>
12845
+ * <i>Amazon
12846
+ * Elastic Container Service Developer Guide</i>
12847
+ * </i>.</p>
12848
+ * <p>The default behavior of <code>AvailabilityZoneRebalancing</code> differs between
12849
+ * create and update requests:</p>
12850
+ * <ul>
12851
+ * <li>
12852
+ * <p>For create service requests, when no value is specified for
12853
+ * <code>AvailabilityZoneRebalancing</code>, Amazon ECS defaults the value to
12854
+ * <code>ENABLED</code>.</p>
12855
+ * </li>
12856
+ * <li>
12857
+ * <p>For update service requests, when no value is specified for
12858
+ * <code>AvailabilityZoneRebalancing</code>, Amazon ECS defaults to the
12859
+ * existing service’s <code>AvailabilityZoneRebalancing</code> value. If the
12860
+ * service never had an <code>AvailabilityZoneRebalancing</code> value set, Amazon
12861
+ * ECS treats this as <code>DISABLED</code>.</p>
12862
+ * </li>
12863
+ * </ul>
12864
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12865
+ * @public
12866
+ */
12867
+ availabilityZoneRebalancing?: AvailabilityZoneRebalancing | undefined;
12868
+ /**
12869
+ * <p>An object representing the network configuration for the service.</p>
12870
+ * <p>This parameter triggers a new service deployment.</p>
12871
+ * @public
12872
+ */
12873
+ networkConfiguration?: NetworkConfiguration | undefined;
12874
+ /**
12875
+ * <p>An array of task placement constraint objects to update the service to use. If no
12876
+ * value is specified, the existing placement constraints for the service will remain
12877
+ * unchanged. If this value is specified, it will override any existing placement
12878
+ * constraints defined for the service. To remove all existing placement constraints,
12879
+ * specify an empty array.</p>
12880
+ * <p>You can specify a maximum of 10 constraints for each task. This limit includes
12881
+ * constraints in the task definition and those specified at runtime.</p>
12882
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12883
+ * @public
12884
+ */
12885
+ placementConstraints?: PlacementConstraint[] | undefined;
12886
+ /**
12887
+ * <p>The task placement strategy objects to update the service to use. If no value is
12888
+ * specified, the existing placement strategy for the service will remain unchanged. If
12889
+ * this value is specified, it will override the existing placement strategy defined for
12890
+ * the service. To remove an existing placement strategy, specify an empty object.</p>
12891
+ * <p>You can specify a maximum of five strategy rules for each service.</p>
12892
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12893
+ * @public
12894
+ */
12895
+ placementStrategy?: PlacementStrategy[] | undefined;
12896
+ /**
12897
+ * <p>The platform version that your tasks in the service run on. A platform version is only
12898
+ * specified for tasks using the Fargate launch type. If a platform version is not
12899
+ * specified, the <code>LATEST</code> platform version is used. For more information, see
12900
+ * <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html">Fargate
12901
+ * Platform Versions</a> in the <i>Amazon Elastic Container Service
12902
+ * Developer Guide</i>.</p>
12903
+ * <p>This parameter triggers a new service deployment.</p>
12904
+ * @public
12905
+ */
12906
+ platformVersion?: string | undefined;
12907
+ /**
12908
+ * <p>Determines whether to force a new deployment of the service. By default, deployments
12909
+ * aren't forced. You can use this option to start a new deployment with no service
12910
+ * definition changes. For example, you can update a service's tasks to use a newer Docker
12911
+ * image with the same image/tag combination (<code>my_image:latest</code>) or to roll
12912
+ * Fargate tasks onto a newer platform version.</p>
12913
+ * @public
12914
+ */
12915
+ forceNewDeployment?: boolean | undefined;
12916
+ /**
12917
+ * <p>The period of time, in seconds, that the Amazon ECS service scheduler ignores
12918
+ * unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task
12919
+ * has first started. If you don't specify a health check grace period value, the default
12920
+ * value of <code>0</code> is used. If you don't use any of the health checks, then
12921
+ * <code>healthCheckGracePeriodSeconds</code> is unused.</p>
12922
+ * <p>If your service's tasks take a while to start and respond to health checks, you can
12923
+ * specify a health check grace period of up to 2,147,483,647 seconds (about 69 years).
12924
+ * During that time, the Amazon ECS service scheduler ignores health check status. This
12925
+ * grace period can prevent the service scheduler from marking tasks as unhealthy and
12926
+ * stopping them before they have time to come up.</p>
12927
+ * <p>If your service has more running tasks than desired, unhealthy tasks in the grace
12928
+ * period might be stopped to reach the desired count.</p>
12929
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12930
+ * @public
12931
+ */
12932
+ healthCheckGracePeriodSeconds?: number | undefined;
12933
+ /**
12934
+ * <p>The deployment controller to use for the service. </p>
12935
+ * @public
12936
+ */
12937
+ deploymentController?: DeploymentController | undefined;
12938
+ /**
12939
+ * <p>If <code>true</code>, this enables execute command functionality on all task
12940
+ * containers.</p>
12941
+ * <p>If you do not want to override the value that was set when the service was created,
12942
+ * you can set this to <code>null</code> when performing this action.</p>
12943
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12944
+ * @public
12945
+ */
12946
+ enableExecuteCommand?: boolean | undefined;
12947
+ /**
12948
+ * <p>Determines whether to turn on Amazon ECS managed tags for the tasks in the service.
12949
+ * For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html">Tagging Your Amazon ECS
12950
+ * Resources</a> in the <i>Amazon Elastic Container Service Developer
12951
+ * Guide</i>.</p>
12952
+ * <p>Only tasks launched after the update will reflect the update. To update the tags on
12953
+ * all tasks, set <code>forceNewDeployment</code> to <code>true</code>, so that Amazon ECS
12954
+ * starts new tasks with the updated tags.</p>
12955
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12956
+ * @public
12957
+ */
12958
+ enableECSManagedTags?: boolean | undefined;
12959
+ /**
12960
+ * <note>
12961
+ * <p>You must have a service-linked role when you update this property</p>
12962
+ * </note>
12963
+ * <p>A list of Elastic Load Balancing load balancer objects. It contains the load balancer
12964
+ * name, the container name, and the container port to access from the load balancer. The
12965
+ * container name is as it appears in a container definition.</p>
12966
+ * <p>When you add, update, or remove a load balancer configuration, Amazon ECS starts new
12967
+ * tasks with the updated Elastic Load Balancing configuration, and then stops the old
12968
+ * tasks when the new tasks are running.</p>
12969
+ * <p>For services that use rolling updates, you can add, update, or remove Elastic Load
12970
+ * Balancing target groups. You can update from a single target group to multiple target
12971
+ * groups and from multiple target groups to a single target group.</p>
12972
+ * <p>For services that use blue/green deployments, you can update Elastic Load Balancing
12973
+ * target groups by using <code>
12974
+ * <a href="https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeployment.html">CreateDeployment</a>
12975
+ * </code> through CodeDeploy. Note that multiple target groups
12976
+ * 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
12977
+ * multiple target groups with a service</a> in the <i>Amazon Elastic
12978
+ * Container Service Developer Guide</i>. </p>
12979
+ * <p>For services that use the external deployment controller, you can add, update, or
12980
+ * remove load balancers by using <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateTaskSet.html">CreateTaskSet</a>.
12981
+ * Note that multiple target groups are not supported for external deployments. For more
12982
+ * information see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/register-multiple-targetgroups.html">Register
12983
+ * multiple target groups with a service</a> in the <i>Amazon Elastic
12984
+ * Container Service Developer Guide</i>. </p>
12985
+ * <p>You can remove existing <code>loadBalancers</code> by passing an empty list.</p>
12986
+ * <p>This parameter triggers a new service deployment.</p>
12987
+ * @public
12988
+ */
12989
+ loadBalancers?: LoadBalancer[] | undefined;
12990
+ /**
12991
+ * <p>Determines whether to propagate the tags from the task definition or the service to
12992
+ * the task. If no value is specified, the tags aren't propagated.</p>
12993
+ * <p>Only tasks launched after the update will reflect the update. To update the tags on
12994
+ * all tasks, set <code>forceNewDeployment</code> to <code>true</code>, so that Amazon ECS
12995
+ * starts new tasks with the updated tags.</p>
12996
+ * <p>This parameter doesn't trigger a new service deployment.</p>
12997
+ * @public
12998
+ */
12999
+ propagateTags?: PropagateTags | undefined;
13000
+ /**
13001
+ * <note>
13002
+ * <p>You must have a service-linked role when you update this property.</p>
13003
+ * <p>For more information about the role see the <code>CreateService</code> request
13004
+ * parameter <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html#ECS-CreateService-request-role">
13005
+ * <code>role</code>
13006
+ * </a>. </p>
13007
+ * </note>
13008
+ * <p>The details for the service discovery registries to assign to this service. For more
13009
+ * information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service
13010
+ * Discovery</a>.</p>
13011
+ * <p>When you add, update, or remove the service registries configuration, Amazon ECS
13012
+ * starts new tasks with the updated service registries configuration, and then stops the
13013
+ * old tasks when the new tasks are running.</p>
13014
+ * <p>You can remove existing <code>serviceRegistries</code> by passing an empty
13015
+ * list.</p>
13016
+ * <p>This parameter triggers a new service deployment.</p>
13017
+ * @public
13018
+ */
13019
+ serviceRegistries?: ServiceRegistry[] | undefined;
13020
+ /**
13021
+ * <p>The configuration for this service to discover and connect to services, and be
13022
+ * discovered by, and connected from, other services within a namespace.</p>
13023
+ * <p>Tasks that run in a namespace can use short names to connect to services in the
13024
+ * namespace. Tasks can connect to services across all of the clusters in the namespace.
13025
+ * Tasks connect through a managed proxy container that collects logs and metrics for
13026
+ * increased visibility. Only the tasks that Amazon ECS services create are supported with
13027
+ * Service Connect. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html">Service Connect</a>
13028
+ * in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
13029
+ * <p>This parameter triggers a new service deployment.</p>
13030
+ * @public
13031
+ */
13032
+ serviceConnectConfiguration?: ServiceConnectConfiguration | undefined;
13033
+ /**
13034
+ * <p>The details of the volume that was <code>configuredAtLaunch</code>. You can configure
13035
+ * 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
13036
+ * must match the <code>name</code> from the task definition. If set to null, no new
13037
+ * deployment is triggered. Otherwise, if this configuration differs from the existing one,
13038
+ * it triggers a new deployment.</p>
13039
+ * <p>This parameter triggers a new service deployment.</p>
13040
+ * @public
13041
+ */
13042
+ volumeConfigurations?: ServiceVolumeConfiguration[] | undefined;
13043
+ /**
13044
+ * <p>An object representing the VPC Lattice configuration for the service being
13045
+ * updated.</p>
13046
+ * <p>This parameter triggers a new service deployment.</p>
13047
+ * @public
13048
+ */
13049
+ vpcLatticeConfigurations?: VpcLatticeConfiguration[] | undefined;
13050
+ }
13051
+ /**
13052
+ * @public
13053
+ */
13054
+ export interface UpdateServiceResponse {
13055
+ /**
13056
+ * <p>The full description of your service following the update call.</p>
13057
+ * @public
13058
+ */
13059
+ service?: Service | undefined;
13060
+ }
13061
+ /**
13062
+ * @public
13063
+ */
13064
+ export interface UpdateServicePrimaryTaskSetRequest {
13065
+ /**
13066
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that hosts the
13067
+ * service that the task set exists in.</p>
13068
+ * @public
13069
+ */
13070
+ cluster: string | undefined;
13071
+ /**
13072
+ * <p>The short name or full Amazon Resource Name (ARN) of the service that the task set
13073
+ * exists in.</p>
13074
+ * @public
13075
+ */
13076
+ service: string | undefined;
13077
+ /**
13078
+ * <p>The short name or full Amazon Resource Name (ARN) of the task set to set as the
13079
+ * primary task set in the deployment.</p>
13080
+ * @public
13081
+ */
13082
+ primaryTaskSet: string | undefined;
13083
+ }
13084
+ /**
13085
+ * @public
13086
+ */
13087
+ export interface UpdateServicePrimaryTaskSetResponse {
13088
+ /**
13089
+ * <p>The details about the task set.</p>
13090
+ * @public
13091
+ */
13092
+ taskSet?: TaskSet | undefined;
13093
+ }
13094
+ /**
13095
+ * @public
13096
+ */
13097
+ export interface UpdateTaskProtectionRequest {
13098
+ /**
13099
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that hosts the
13100
+ * service that the task sets exist in.</p>
13101
+ * @public
13102
+ */
13103
+ cluster: string | undefined;
13104
+ /**
13105
+ * <p>A list of up to 10 task IDs or full ARN entries.</p>
13106
+ * @public
13107
+ */
13108
+ tasks: string[] | undefined;
13109
+ /**
13110
+ * <p>Specify <code>true</code> to mark a task for protection and <code>false</code> to
13111
+ * unset protection, making it eligible for termination.</p>
13112
+ * @public
13113
+ */
13114
+ protectionEnabled: boolean | undefined;
13115
+ /**
13116
+ * <p>If you set <code>protectionEnabled</code> to <code>true</code>, you can specify the
13117
+ * duration for task protection in minutes. You can specify a value from 1 minute to up to
13118
+ * 2,880 minutes (48 hours). During this time, your task will not be terminated by scale-in
13119
+ * events from Service Auto Scaling or deployments. After this time period lapses,
13120
+ * <code>protectionEnabled</code> will be reset to <code>false</code>.</p>
13121
+ * <p>If you don’t specify the time, then the task is automatically protected for 120
13122
+ * minutes (2 hours).</p>
13123
+ * @public
13124
+ */
13125
+ expiresInMinutes?: number | undefined;
13126
+ }
13127
+ /**
13128
+ * @public
13129
+ */
13130
+ export interface UpdateTaskProtectionResponse {
13131
+ /**
13132
+ * <p>A list of tasks with the following information.</p>
13133
+ * <ul>
13134
+ * <li>
13135
+ * <p>
13136
+ * <code>taskArn</code>: The task ARN.</p>
13137
+ * </li>
13138
+ * <li>
13139
+ * <p>
13140
+ * <code>protectionEnabled</code>: The protection status of the task. If scale-in
13141
+ * protection is turned on for a task, the value is <code>true</code>. Otherwise,
13142
+ * it is <code>false</code>.</p>
13143
+ * </li>
13144
+ * <li>
13145
+ * <p>
13146
+ * <code>expirationDate</code>: The epoch time when protection for the task will
13147
+ * expire.</p>
13148
+ * </li>
13149
+ * </ul>
13150
+ * @public
13151
+ */
13152
+ protectedTasks?: ProtectedTask[] | undefined;
13153
+ /**
13154
+ * <p>Any failures associated with the call.</p>
13155
+ * @public
13156
+ */
13157
+ failures?: Failure[] | undefined;
13158
+ }
13159
+ /**
13160
+ * @public
13161
+ */
13162
+ export interface UpdateTaskSetRequest {
13163
+ /**
13164
+ * <p>The short name or full Amazon Resource Name (ARN) of the cluster that hosts the
13165
+ * service that the task set is found in.</p>
13166
+ * @public
13167
+ */
13168
+ cluster: string | undefined;
13169
+ /**
13170
+ * <p>The short name or full Amazon Resource Name (ARN) of the service that the task set is
13171
+ * found in.</p>
13172
+ * @public
13173
+ */
13174
+ service: string | undefined;
13175
+ /**
13176
+ * <p>The short name or full Amazon Resource Name (ARN) of the task set to update.</p>
13177
+ * @public
13178
+ */
13179
+ taskSet: string | undefined;
13180
+ /**
13181
+ * <p>A floating-point percentage of the desired number of tasks to place and keep running
13182
+ * in the task set.</p>
13183
+ * @public
13184
+ */
13185
+ scale: Scale | undefined;
13186
+ }
13187
+ /**
13188
+ * @public
13189
+ */
13190
+ export interface UpdateTaskSetResponse {
13191
+ /**
13192
+ * <p>Details about the task set.</p>
13193
+ * @public
13194
+ */
13195
+ taskSet?: TaskSet | undefined;
13196
+ }