@propulsionworks/cloudformation 0.1.11 → 0.1.13

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 (57) hide show
  1. package/out/exports/resources.generated/aws-accessanalyzer-analyzer.d.ts +38 -0
  2. package/out/exports/resources.generated/aws-amplify-app.d.ts +32 -2
  3. package/out/exports/resources.generated/aws-apigateway-method.d.ts +1 -1
  4. package/out/exports/resources.generated/aws-appsync-apicache.d.ts +4 -0
  5. package/out/exports/resources.generated/aws-athena-workgroup.d.ts +37 -0
  6. package/out/exports/resources.generated/aws-bedrock-flow.d.ts +48 -21
  7. package/out/exports/resources.generated/aws-cleanrooms-collaboration.d.ts +3 -3
  8. package/out/exports/resources.generated/aws-connect-emailaddress.d.ts +1 -1
  9. package/out/exports/resources.generated/aws-connect-evaluationform.d.ts +20 -2
  10. package/out/exports/resources.generated/aws-connect-queue.d.ts +1 -1
  11. package/out/exports/resources.generated/aws-customerprofiles-calculatedattributedefinition.d.ts +50 -1
  12. package/out/exports/resources.generated/aws-customerprofiles-objecttype.d.ts +13 -1
  13. package/out/exports/resources.generated/aws-customerprofiles-segmentdefinition.d.ts +34 -4
  14. package/out/exports/resources.generated/aws-datazone-projectprofile.d.ts +101 -0
  15. package/out/exports/resources.generated/aws-deadline-fleet.d.ts +3 -1
  16. package/out/exports/resources.generated/aws-dsql-cluster.d.ts +17 -9
  17. package/out/exports/resources.generated/aws-ec2-ec2fleet.d.ts +55 -0
  18. package/out/exports/resources.generated/aws-ec2-egressonlyinternetgateway.d.ts +6 -1
  19. package/out/exports/resources.generated/aws-ec2-trafficmirrorfilter.d.ts +7 -1
  20. package/out/exports/resources.generated/aws-ecr-repositorycreationtemplate.d.ts +1 -1
  21. package/out/exports/resources.generated/aws-ecs-service.d.ts +60 -2
  22. package/out/exports/resources.generated/aws-efs-mounttarget.d.ts +15 -3
  23. package/out/exports/resources.generated/aws-eks-addon.d.ts +3 -3
  24. package/out/exports/resources.generated/aws-eks-cluster.d.ts +14 -12
  25. package/out/exports/resources.generated/aws-eks-podidentityassociation.d.ts +24 -2
  26. package/out/exports/resources.generated/aws-entityresolution-matchingworkflow.d.ts +15 -5
  27. package/out/exports/resources.generated/aws-evs-environment.d.ts +62 -7
  28. package/out/exports/resources.generated/aws-fis-experimenttemplate.d.ts +1 -1
  29. package/out/exports/resources.generated/aws-inspectorv2-filter.d.ts +56 -0
  30. package/out/exports/resources.generated/aws-kendra-datasource.d.ts +113 -1
  31. package/out/exports/resources.generated/aws-kms-key.d.ts +10 -3
  32. package/out/exports/resources.generated/aws-lambda-eventinvokeconfig.d.ts +4 -2
  33. package/out/exports/resources.generated/aws-lambda-eventsourcemapping.d.ts +2 -9
  34. package/out/exports/resources.generated/aws-mediatailor-playbackconfiguration.d.ts +66 -0
  35. package/out/exports/resources.generated/aws-mpa-approvalteam.d.ts +2 -0
  36. package/out/exports/resources.generated/aws-mpa-identitysource.d.ts +2 -0
  37. package/out/exports/resources.generated/aws-msk-cluster.d.ts +15 -1
  38. package/out/exports/resources.generated/aws-mwaa-environment.d.ts +10 -0
  39. package/out/exports/resources.generated/aws-networkfirewall-loggingconfiguration.d.ts +4 -0
  40. package/out/exports/resources.generated/aws-networkfirewall-rulegroup.d.ts +1 -1
  41. package/out/exports/resources.generated/aws-networkfirewall-tlsinspectionconfiguration.d.ts +1 -1
  42. package/out/exports/resources.generated/aws-networkfirewall-vpcendpointassociation.d.ts +38 -6
  43. package/out/exports/resources.generated/aws-opsworkscm-server.d.ts +6 -5
  44. package/out/exports/resources.generated/aws-organizations-policy.d.ts +1 -1
  45. package/out/exports/resources.generated/aws-rum-appmonitor.d.ts +1 -1
  46. package/out/exports/resources.generated/aws-sagemaker-domain.d.ts +65 -0
  47. package/out/exports/resources.generated/aws-sagemaker-model.d.ts +2 -0
  48. package/out/exports/resources.generated/aws-sagemaker-modelpackage.d.ts +2 -0
  49. package/out/exports/resources.generated/aws-securityhub-aggregatorv2.d.ts +44 -0
  50. package/out/exports/resources.generated/aws-securityhub-automationrule.d.ts +1 -1
  51. package/out/exports/resources.generated/aws-securityhub-automationrulev2.d.ts +403 -0
  52. package/out/exports/resources.generated/aws-securityhub-hubv2.d.ts +30 -0
  53. package/out/exports/resources.generated/aws-securityhub-insight.d.ts +1 -1
  54. package/out/exports/resources.generated/aws-synthetics-canary.d.ts +5 -0
  55. package/out/exports/resources.generated/aws-wafv2-rulegroup.d.ts +31 -1
  56. package/out/exports/resources.generated/aws-wafv2-webacl.d.ts +175 -4
  57. package/package.json +1 -1
@@ -17,7 +17,7 @@ export type CustomerProfilesObjectTypeProps = {
17
17
  /**
18
18
  * The description of the profile object type mapping.
19
19
  * @minLength 1
20
- * @maxLength 1000
20
+ * @maxLength 10000
21
21
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html#cfn-customerprofiles-objecttype-description}
22
22
  */
23
23
  Description: string;
@@ -53,6 +53,12 @@ export type CustomerProfilesObjectTypeProps = {
53
53
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html#cfn-customerprofiles-objecttype-keys}
54
54
  */
55
55
  Keys?: KeyMap[] | undefined;
56
+ /**
57
+ * The amount of profile object max count assigned to the object type.
58
+ * @min 1
59
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html#cfn-customerprofiles-objecttype-maxprofileobjectcount}
60
+ */
61
+ MaxProfileObjectCount?: number | undefined;
56
62
  /**
57
63
  * The name of the profile object type.
58
64
  * @minLength 1
@@ -96,6 +102,12 @@ export type CustomerProfilesObjectTypeAttribs = {
96
102
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html#cfn-customerprofiles-objecttype-lastupdatedat}
97
103
  */
98
104
  LastUpdatedAt: string;
105
+ /**
106
+ * The amount of provisioned profile object max count available.
107
+ * @min 0
108
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html#cfn-customerprofiles-objecttype-maxavailableprofileobjectcount}
109
+ */
110
+ MaxAvailableProfileObjectCount: number;
99
111
  };
100
112
  /**
101
113
  * A map of the name and ObjectType field.
@@ -339,6 +339,11 @@ export type ProfileAttributes = {
339
339
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-profileattributes.html#cfn-customerprofiles-segmentdefinition-profileattributes-phonenumber}
340
340
  */
341
341
  PhoneNumber?: ProfileDimension | undefined;
342
+ /**
343
+ * Specifies profile type based criteria for a segment.
344
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-profileattributes.html#cfn-customerprofiles-segmentdefinition-profileattributes-profiletype}
345
+ */
346
+ ProfileType?: ProfileTypeDimension | undefined;
342
347
  /**
343
348
  * A field to describe values to segment on within shipping address.
344
349
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-profileattributes.html#cfn-customerprofiles-segmentdefinition-profileattributes-shippingaddress}
@@ -360,6 +365,31 @@ export type ProfileDimension = {
360
365
  */
361
366
  Values: string[];
362
367
  };
368
+ /**
369
+ * The type of profile.
370
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-profiletype.html}
371
+ */
372
+ export type ProfileType = "ACCOUNT_PROFILE" | "PROFILE";
373
+ /**
374
+ * Specifies profile type based criteria for a segment.
375
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-profiletypedimension.html}
376
+ */
377
+ export type ProfileTypeDimension = {
378
+ /**
379
+ * The type of segment dimension to use for a profile type dimension.
380
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-profiletypedimension.html#cfn-customerprofiles-segmentdefinition-profiletypedimension-dimensiontype}
381
+ */
382
+ DimensionType: ProfileTypeDimensionType;
383
+ /**
384
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-profiletypedimension.html#cfn-customerprofiles-segmentdefinition-profiletypedimension-values}
385
+ */
386
+ Values: ProfileType[];
387
+ };
388
+ /**
389
+ * The type of segment dimension to use for a profile type dimension.
390
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-profiletypedimensiontype.html}
391
+ */
392
+ export type ProfileTypeDimensionType = "INCLUSIVE" | "EXCLUSIVE";
363
393
  /**
364
394
  * Overrides the original range on a calculated attribute definition.
365
395
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-rangeoverride.html}
@@ -367,15 +397,15 @@ export type ProfileDimension = {
367
397
  export type RangeOverride = {
368
398
  /**
369
399
  * The end time of when to include objects.
370
- * @min 0
371
- * @max 366
400
+ * @min -2147483648
401
+ * @max 2147483647
372
402
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-rangeoverride.html#cfn-customerprofiles-segmentdefinition-rangeoverride-end}
373
403
  */
374
404
  End?: number | undefined;
375
405
  /**
376
406
  * The start time of when to include objects.
377
- * @min 1
378
- * @max 366
407
+ * @min -2147483648
408
+ * @max 2147483647
379
409
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-segmentdefinition-rangeoverride.html#cfn-customerprofiles-segmentdefinition-rangeoverride-start}
380
410
  */
381
411
  Start: number;
@@ -27,6 +27,10 @@ export type DataZoneProjectProfileProps = {
27
27
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectprofile.html#cfn-datazone-projectprofile-domainunitidentifier}
28
28
  */
29
29
  DomainUnitIdentifier?: string | undefined;
30
+ /**
31
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectprofile.html#cfn-datazone-projectprofile-environmentconfigurations}
32
+ */
33
+ EnvironmentConfigurations?: EnvironmentConfiguration[] | undefined;
30
34
  /**
31
35
  * The name of a project profile.
32
36
  * @minLength 1
@@ -88,6 +92,103 @@ export type DataZoneProjectProfileAttribs = {
88
92
  */
89
93
  LastUpdatedAt: string;
90
94
  };
95
+ /**
96
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-awsaccount.html}
97
+ */
98
+ export type AwsAccount = {
99
+ /**
100
+ * @pattern ^\d{12}$
101
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-awsaccount.html#cfn-datazone-projectprofile-awsaccount-awsaccountid}
102
+ */
103
+ AwsAccountId: string;
104
+ };
105
+ /**
106
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-deploymentmode.html}
107
+ */
108
+ export type DeploymentMode = "ON_CREATE" | "ON_DEMAND";
109
+ /**
110
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html}
111
+ */
112
+ export type EnvironmentConfiguration = {
113
+ /**
114
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html#cfn-datazone-projectprofile-environmentconfiguration-awsaccount}
115
+ */
116
+ AwsAccount?: AwsAccount | undefined;
117
+ /**
118
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html#cfn-datazone-projectprofile-environmentconfiguration-awsregion}
119
+ */
120
+ AwsRegion: Region;
121
+ /**
122
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html#cfn-datazone-projectprofile-environmentconfiguration-configurationparameters}
123
+ */
124
+ ConfigurationParameters?: EnvironmentConfigurationParametersDetails | undefined;
125
+ /**
126
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html#cfn-datazone-projectprofile-environmentconfiguration-deploymentmode}
127
+ */
128
+ DeploymentMode?: DeploymentMode | undefined;
129
+ /**
130
+ * @min 0
131
+ * @max 16
132
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html#cfn-datazone-projectprofile-environmentconfiguration-deploymentorder}
133
+ */
134
+ DeploymentOrder?: number | undefined;
135
+ /**
136
+ * @maxLength 2048
137
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html#cfn-datazone-projectprofile-environmentconfiguration-description}
138
+ */
139
+ Description?: string | undefined;
140
+ /**
141
+ * @pattern ^[a-zA-Z0-9_-]{1,36}$
142
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html#cfn-datazone-projectprofile-environmentconfiguration-environmentblueprintid}
143
+ */
144
+ EnvironmentBlueprintId: string;
145
+ /**
146
+ * @minLength 1
147
+ * @maxLength 64
148
+ * @pattern ^[\w -]+$
149
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfiguration.html#cfn-datazone-projectprofile-environmentconfiguration-name}
150
+ */
151
+ Name: string;
152
+ };
153
+ /**
154
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfigurationparameter.html}
155
+ */
156
+ export type EnvironmentConfigurationParameter = {
157
+ /**
158
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfigurationparameter.html#cfn-datazone-projectprofile-environmentconfigurationparameter-iseditable}
159
+ */
160
+ IsEditable?: boolean | undefined;
161
+ /**
162
+ * @pattern ^[a-zA-Z_][a-zA-Z0-9_]*$
163
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfigurationparameter.html#cfn-datazone-projectprofile-environmentconfigurationparameter-name}
164
+ */
165
+ Name?: string | undefined;
166
+ /**
167
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfigurationparameter.html#cfn-datazone-projectprofile-environmentconfigurationparameter-value}
168
+ */
169
+ Value?: string | undefined;
170
+ };
171
+ /**
172
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfigurationparametersdetails.html}
173
+ */
174
+ export type EnvironmentConfigurationParametersDetails = {
175
+ /**
176
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-environmentconfigurationparametersdetails.html#cfn-datazone-projectprofile-environmentconfigurationparametersdetails-parameteroverrides}
177
+ */
178
+ ParameterOverrides?: EnvironmentConfigurationParameter[] | undefined;
179
+ };
180
+ /**
181
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-region.html}
182
+ */
183
+ export type Region = {
184
+ /**
185
+ * @minLength 4
186
+ * @maxLength 16
187
+ * @pattern ^[a-z]{2}-?(iso|gov)?-{1}[a-z]*-{1}[0-9]$
188
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-region.html#cfn-datazone-projectprofile-region-regionname}
189
+ */
190
+ RegionName: string;
191
+ };
91
192
  /**
92
193
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-status.html}
93
194
  */
@@ -144,7 +144,7 @@ export type AcceleratorSelection = {
144
144
  /**
145
145
  * The name of the chip used by the GPU accelerator.
146
146
  *
147
- * If you specify `l4` as the name of the accelerator, you must specify `latest` or `grid:r550` as the runtime.
147
+ * If you specify `l4` as the name of the accelerator, you must specify `latest` or `grid:r570` as the runtime.
148
148
  *
149
149
  * The available GPU accelerators are:
150
150
  *
@@ -161,6 +161,7 @@ export type AcceleratorSelection = {
161
161
  * You can choose from the following runtimes:
162
162
  *
163
163
  * - `latest` - Use the latest runtime available for the chip. If you specify `latest` and a new version of the runtime is released, the new version of the runtime is used.
164
+ * - `grid:r570` - [NVIDIA vGPU software 18](https://docs.aws.amazon.com/https://docs.nvidia.com/vgpu/18.0/index.html)
164
165
  * - `grid:r550` - [NVIDIA vGPU software 17](https://docs.aws.amazon.com/https://docs.nvidia.com/vgpu/17.0/index.html)
165
166
  * - `grid:r535` - [NVIDIA vGPU software 16](https://docs.aws.amazon.com/https://docs.nvidia.com/vgpu/16.0/index.html)
166
167
  *
@@ -444,6 +445,7 @@ export type ServiceManagedEc2FleetConfiguration = {
444
445
  */
445
446
  InstanceMarketOptions: ServiceManagedEc2InstanceMarketOptions;
446
447
  /**
448
+ * The storage profile ID.
447
449
  * @pattern ^sp-[0-9a-f]{32}$
448
450
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-deadline-fleet-servicemanagedec2fleetconfiguration.html#cfn-deadline-fleet-servicemanagedec2fleetconfiguration-storageprofileid}
449
451
  */
@@ -1,8 +1,10 @@
1
1
  import type { ResourceDefinitionWithAttributes, Tag } from "../main.ts";
2
2
  /**
3
- * The CreateCluster API allows you to create both single-Region clusters and multi-Region clusters. With the addition of the *multiRegionProperties* parameter, you can create a cluster with witness Region support and establish peer relationships with clusters in other Regions during creation.
3
+ * The `AWS::DSQL::Cluster` resource specifies an cluster. You can use this resource to create, modify, and manage clusters.
4
4
  *
5
- * > Creating multi-Region clusters requires additional IAM permissions beyond those needed for single-Region clusters, as detailed in the *Required permissions* section below.
5
+ * This resource supports both single-Region clusters and multi-Region clusters through the `MultiRegionProperties` parameter.
6
+ *
7
+ * > Creating multi-Region clusters requires additional IAM permissions beyond those needed for single-Region clusters. > - The witness Region specified in `multiRegionProperties.witnessRegion` cannot be the same as the cluster's Region.
6
8
  *
7
9
  * *Required permissions*
8
10
  *
@@ -26,15 +28,15 @@ import type { ResourceDefinitionWithAttributes, Tag } from "../main.ts";
26
28
  * Resources: `arn:aws:dsql:region:account-id:cluster/*`
27
29
  *
28
30
  * Condition Keys: `dsql:WitnessRegion` (matching the specified witness region)
29
- *
30
- * > - The witness Region specified in `multiRegionProperties.witnessRegion` cannot be the same as the cluster's Region.
31
31
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html}
32
32
  */
33
33
  export type DSQLCluster = ResourceDefinitionWithAttributes<"AWS::DSQL::Cluster", DSQLClusterProps, DSQLClusterAttribs>;
34
34
  /**
35
- * The CreateCluster API allows you to create both single-Region clusters and multi-Region clusters. With the addition of the *multiRegionProperties* parameter, you can create a cluster with witness Region support and establish peer relationships with clusters in other Regions during creation.
35
+ * The `AWS::DSQL::Cluster` resource specifies an cluster. You can use this resource to create, modify, and manage clusters.
36
36
  *
37
- * > Creating multi-Region clusters requires additional IAM permissions beyond those needed for single-Region clusters, as detailed in the *Required permissions* section below.
37
+ * This resource supports both single-Region clusters and multi-Region clusters through the `MultiRegionProperties` parameter.
38
+ *
39
+ * > Creating multi-Region clusters requires additional IAM permissions beyond those needed for single-Region clusters. > - The witness Region specified in `multiRegionProperties.witnessRegion` cannot be the same as the cluster's Region.
38
40
  *
39
41
  * *Required permissions*
40
42
  *
@@ -58,8 +60,6 @@ export type DSQLCluster = ResourceDefinitionWithAttributes<"AWS::DSQL::Cluster",
58
60
  * Resources: `arn:aws:dsql:region:account-id:cluster/*`
59
61
  *
60
62
  * Condition Keys: `dsql:WitnessRegion` (matching the specified witness region)
61
- *
62
- * > - The witness Region specified in `multiRegionProperties.witnessRegion` cannot be the same as the cluster's Region.
63
63
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html}
64
64
  */
65
65
  export type DSQLClusterProps = {
@@ -69,7 +69,7 @@ export type DSQLClusterProps = {
69
69
  */
70
70
  DeletionProtectionEnabled?: boolean | undefined;
71
71
  /**
72
- * The multi-Region cluster configuration details that were set during cluster creation
72
+ * Defines the structure for multi-Region cluster configurations, containing the witness Region and peered cluster settings.
73
73
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html#cfn-dsql-cluster-multiregionproperties}
74
74
  */
75
75
  MultiRegionProperties?: {
@@ -106,6 +106,14 @@ export type DSQLClusterAttribs = {
106
106
  ResourceArn: string;
107
107
  /**
108
108
  * The current status of the cluster. Possible values include: CREATING, ACTIVE, DELETING, FAILED.
109
+ *
110
+ * The cluster can have two additional status values when working with multi-Region clusters:
111
+ *
112
+ * `PENDING_SETUP` —Indicates the cluster is being configured
113
+ *
114
+ * `PENDING_DELETE` —Indicates the cluster is being deleted
115
+ *
116
+ * *Note:* These status values only appear for multi-Region cluster operations.
109
117
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html#cfn-dsql-cluster-status}
110
118
  */
111
119
  Status: string;
@@ -154,22 +154,31 @@ export type BaselinePerformanceFactorsRequest = {
154
154
  Cpu?: CpuPerformanceFactorRequest | undefined;
155
155
  };
156
156
  /**
157
+ * Describes a block device mapping, which defines the EBS volumes and instance store volumes to attach to an instance at launch.
157
158
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-blockdevicemapping.html}
158
159
  */
159
160
  export type BlockDeviceMapping = {
160
161
  /**
162
+ * The device name (for example, `/dev/sdh` or `xvdh` ).
161
163
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-blockdevicemapping.html#cfn-ec2-ec2fleet-blockdevicemapping-devicename}
162
164
  */
163
165
  DeviceName?: string | undefined;
164
166
  /**
167
+ * Parameters used to automatically set up EBS volumes when the instance is launched.
165
168
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-blockdevicemapping.html#cfn-ec2-ec2fleet-blockdevicemapping-ebs}
166
169
  */
167
170
  Ebs?: EbsBlockDevice | undefined;
168
171
  /**
172
+ * To omit the device from the block device mapping, specify an empty string. When this property is specified, the device is removed from the block device mapping regardless of the assigned value.
169
173
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-blockdevicemapping.html#cfn-ec2-ec2fleet-blockdevicemapping-nodevice}
170
174
  */
171
175
  NoDevice?: string | undefined;
172
176
  /**
177
+ * The virtual device name ( `ephemeral` N). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for `ephemeral0` and `ephemeral1` . The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.
178
+ *
179
+ * NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect.
180
+ *
181
+ * Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.
173
182
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-blockdevicemapping.html#cfn-ec2-ec2fleet-blockdevicemapping-virtualname}
174
183
  */
175
184
  VirtualName?: string | undefined;
@@ -233,34 +242,75 @@ export type CpuPerformanceFactorRequest = {
233
242
  References?: PerformanceFactorReferenceRequest[] | undefined;
234
243
  };
235
244
  /**
245
+ * Describes a block device for an EBS volume.
236
246
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ebsblockdevice.html}
237
247
  */
238
248
  export type EbsBlockDevice = {
239
249
  /**
250
+ * Indicates whether the EBS volume is deleted on instance termination. For more information, see [Preserving Amazon EBS volumes on instance termination](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination) in the *Amazon EC2 User Guide* .
240
251
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ebsblockdevice.html#cfn-ec2-ec2fleet-ebsblockdevice-deleteontermination}
241
252
  */
242
253
  DeleteOnTermination?: boolean | undefined;
243
254
  /**
255
+ * Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to `true` depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see [Amazon EBS encryption](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html#encryption-parameters) in the *Amazon EBS User Guide* .
256
+ *
257
+ * In no case can you remove encryption from an encrypted volume.
258
+ *
259
+ * Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see [Supported instance types](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption-requirements.html#ebs-encryption_supported_instances) .
260
+ *
261
+ * This parameter is not returned by `DescribeImageAttribute` .
262
+ *
263
+ * For `CreateImage` and `RegisterImage` , whether you can include this parameter, and the allowed values differ depending on the type of block device mapping you are creating.
264
+ *
265
+ * - If you are creating a block device mapping for a *new (empty) volume* , you can include this parameter, and specify either `true` for an encrypted volume, or `false` for an unencrypted volume. If you omit this parameter, it defaults to `false` (unencrypted).
266
+ * - If you are creating a block device mapping from an *existing encrypted or unencrypted snapshot* , you must omit this parameter. If you include this parameter, the request will fail, regardless of the value that you specify.
267
+ * - If you are creating a block device mapping from an *existing unencrypted volume* , you can include this parameter, but you must specify `false` . If you specify `true` , the request will fail. In this case, we recommend that you omit the parameter.
268
+ * - If you are creating a block device mapping from an *existing encrypted volume* , you can include this parameter, and specify either `true` or `false` . However, if you specify `false` , the parameter is ignored and the block device mapping is always encrypted. In this case, we recommend that you omit the parameter.
244
269
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ebsblockdevice.html#cfn-ec2-ec2fleet-ebsblockdevice-encrypted}
245
270
  */
246
271
  Encrypted?: boolean | undefined;
247
272
  /**
273
+ * The number of I/O operations per second (IOPS). For `gp3` , `io1` , and `io2` volumes, this represents the number of IOPS that are provisioned for the volume. For `gp2` volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.
274
+ *
275
+ * The following are the supported values for each volume type:
276
+ *
277
+ * - `gp3` : 3,000 - 16,000 IOPS
278
+ * - `io1` : 100 - 64,000 IOPS
279
+ * - `io2` : 100 - 256,000 IOPS
280
+ *
281
+ * For `io2` volumes, you can achieve up to 256,000 IOPS on [instances built on the Nitro System](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances) . On other instances, you can achieve performance up to 32,000 IOPS.
282
+ *
283
+ * This parameter is required for `io1` and `io2` volumes. The default for `gp3` volumes is 3,000 IOPS.
248
284
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ebsblockdevice.html#cfn-ec2-ec2fleet-ebsblockdevice-iops}
249
285
  */
250
286
  Iops?: number | undefined;
251
287
  /**
288
+ * Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key to use for EBS encryption.
289
+ *
290
+ * This parameter is only supported on `BlockDeviceMapping` objects called by [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) , [RequestSpotFleet](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotFleet.html) , and [RequestSpotInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html) .
252
291
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ebsblockdevice.html#cfn-ec2-ec2fleet-ebsblockdevice-kmskeyid}
253
292
  */
254
293
  KmsKeyId?: string | undefined;
255
294
  /**
295
+ * The ID of the snapshot.
256
296
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ebsblockdevice.html#cfn-ec2-ec2fleet-ebsblockdevice-snapshotid}
257
297
  */
258
298
  SnapshotId?: string | undefined;
259
299
  /**
300
+ * The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.
301
+ *
302
+ * The following are the supported sizes for each volume type:
303
+ *
304
+ * - `gp2` and `gp3` : 1 - 16,384 GiB
305
+ * - `io1` : 4 - 16,384 GiB
306
+ * - `io2` : 4 - 65,536 GiB
307
+ * - `st1` and `sc1` : 125 - 16,384 GiB
308
+ * - `standard` : 1 - 1024 GiB
260
309
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ebsblockdevice.html#cfn-ec2-ec2fleet-ebsblockdevice-volumesize}
261
310
  */
262
311
  VolumeSize?: number | undefined;
263
312
  /**
313
+ * The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html) in the *Amazon EBS User Guide* .
264
314
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ebsblockdevice.html#cfn-ec2-ec2fleet-ebsblockdevice-volumetype}
265
315
  */
266
316
  VolumeType?: "gp2" | "gp3" | "io1" | "io2" | "sc1" | "st1" | "standard" | undefined;
@@ -298,6 +348,11 @@ export type FleetLaunchTemplateOverridesRequest = {
298
348
  */
299
349
  AvailabilityZone?: string | undefined;
300
350
  /**
351
+ * The block device mappings, which define the EBS volumes and instance store volumes to attach to the instance at launch.
352
+ *
353
+ * Supported only for fleets of type `instant` .
354
+ *
355
+ * For more information, see [Block device mappings for volumes on Amazon EC2 instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html) in the *Amazon EC2 User Guide* .
301
356
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-blockdevicemappings}
302
357
  */
303
358
  BlockDeviceMappings?: BlockDeviceMapping[] | undefined;
@@ -1,4 +1,4 @@
1
- import type { ResourceDefinitionWithAttributes } from "../main.ts";
1
+ import type { ResourceDefinitionWithAttributes, Tag } from "../main.ts";
2
2
  /**
3
3
  * [IPv6 only] Specifies an egress-only internet gateway for your VPC. An egress-only internet gateway is used to enable outbound communication over IPv6 from instances in your VPC to the internet, and prevents hosts outside of your VPC from initiating an IPv6 connection with your instance.
4
4
  *
@@ -13,6 +13,11 @@ export type EC2EgressOnlyInternetGateway = ResourceDefinitionWithAttributes<"AWS
13
13
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html}
14
14
  */
15
15
  export type EC2EgressOnlyInternetGatewayProps = {
16
+ /**
17
+ * The tags assigned to the egress-only internet gateway.
18
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html#cfn-ec2-egressonlyinternetgateway-tags}
19
+ */
20
+ Tags?: Tag[] | undefined;
16
21
  /**
17
22
  * The ID of the VPC for which to create the egress-only internet gateway.
18
23
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html#cfn-ec2-egressonlyinternetgateway-vpcid}
@@ -28,7 +28,7 @@ export type EC2TrafficMirrorFilterProps = {
28
28
  * Valid values are `amazon-dns` .
29
29
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-networkservices}
30
30
  */
31
- NetworkServices?: string[] | undefined;
31
+ NetworkServices?: TrafficMirrorNetworkService[] | undefined;
32
32
  /**
33
33
  * The tags to assign to a Traffic Mirror filter.
34
34
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-tags}
@@ -40,8 +40,14 @@ export type EC2TrafficMirrorFilterProps = {
40
40
  */
41
41
  export type EC2TrafficMirrorFilterAttribs = {
42
42
  /**
43
+ * The ID of a traffic mirror filter.
43
44
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-id}
44
45
  */
45
46
  Id: string;
46
47
  };
48
+ /**
49
+ * The network service traffic that is associated with the traffic mirror filter.
50
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilter-trafficmirrornetworkservice.html}
51
+ */
52
+ export type TrafficMirrorNetworkService = "amazon-dns";
47
53
  //# sourceMappingURL=aws-ec2-trafficmirrorfilter.d.ts.map
@@ -34,7 +34,7 @@ export type ECRRepositoryCreationTemplateProps = {
34
34
  */
35
35
  EncryptionConfiguration?: EncryptionConfiguration | undefined;
36
36
  /**
37
- * The tag mutability setting for the repository. If this parameter is omitted, the default setting of MUTABLE will be used which will allow image tags to be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.
37
+ * The tag mutability setting for the repository. If this parameter is omitted, the default setting of `MUTABLE` will be used which will allow image tags to be overwritten. If `IMMUTABLE` is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.
38
38
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html#cfn-ecr-repositorycreationtemplate-imagetagmutability}
39
39
  */
40
40
  ImageTagMutability?: "MUTABLE" | "IMMUTABLE" | undefined;
@@ -2,14 +2,72 @@ import type { ResourceDefinitionWithAttributes, Tag } from "../main.ts";
2
2
  /**
3
3
  * The `AWS::ECS::Service` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.
4
4
  *
5
- * > The stack update fails if you change any properties that require replacement and at least one Amazon ECS Service Connect `ServiceConnectConfiguration` property is configured. This is because AWS CloudFormation creates the replacement service first, but each `ServiceConnectService` must have a name that is unique in the namespace. > Starting April 15, 2023, AWS ; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS , or Amazon EC2 . However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
5
+ * > The stack update fails if you change any properties that require replacement and at least one Amazon ECS Service Connect `ServiceConnectConfiguration` property is configured. This is because AWS CloudFormation creates the replacement service first, but each `ServiceConnectService` must have a name that is unique in the namespace. > Starting April 15, 2023, AWS ; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS , or Amazon EC2 . However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service. > On June 12, 2025, Amazon ECS launched support for updating capacity provider configuration for Amazon ECS services. With this launch, Amazon ECS also aligned the AWS CloudFormation update behavior for `CapacityProviderStrategy` parameter with the standard practice. For more information, see [Amazon ECS adds support for updating capacity provider configuration for ECS services](https://docs.aws.amazon.com/about-aws/whats-new/2025/05/amazon-ecs-capacity-provider-configuration-ecs/) . Previously Amazon ECS ignored the `CapacityProviderStrategy` property if it was set to an empty list for example, `[]` in AWS CloudFormation , because updating capacity provider configuration was not supported. Now, with support for capacity provider updates, customers can remove capacity providers from a service by passing an empty list. When you specify an empty list ( `[]` ) for the `CapacityProviderStrategy` property in your AWS CloudFormation template, Amazon ECS will remove any capacity providers associated with the service, as follows:
6
+ * >
7
+ * > - For services created with a capacity provider strategy after the launch:
8
+ * >
9
+ * > - If there's a cluster default strategy set, the service will revert to using that default strategy.
10
+ * > - If no cluster default strategy exists, you will receive the following error:
11
+ * >
12
+ * > No launch type to fall back to for empty capacity provider strategy. Your service was not created with a launch type.
13
+ * > - For services created with a capacity provider strategy prior to the launch:
14
+ * >
15
+ * > - If `CapacityProviderStrategy` had `FARGATE_SPOT` or `FARGATE` capacity providers, the launch type will be updated to `FARGATE` and the capacity provider will be removed.
16
+ * > - If the strategy included Auto Scaling group capacity providers, the service will revert to EC2 launch type, and the Auto Scaling group capacity providers will not be used.
17
+ * >
18
+ * > Recommended Actions
19
+ * >
20
+ * > If you are currently using `CapacityProviderStrategy: []` in your AWS CloudFormation templates, you should take one of the following actions:
21
+ * >
22
+ * > - If you do not intend to update the Capacity Provider Strategy:
23
+ * >
24
+ * > - Remove the `CapacityProviderStrategy` property entirely from your AWS CloudFormation template
25
+ * > - Alternatively, use `!Ref AWS ::NoValue` for the `CapacityProviderStrategy` property in your template
26
+ * > - If you intend to maintain or update the Capacity Provider Strategy, specify the actual Capacity Provider Strategy for the service in your AWS CloudFormation template.
27
+ * >
28
+ * > If your AWS CloudFormation template had an empty list ([]) for `CapacityProviderStrategy` prior to the aforementioned launch on June 12, and you are using the same template with `CapacityProviderStrategy: []` , you might encounter the following error:
29
+ * >
30
+ * > Invalid request provided: When switching from launch type to capacity provider strategy on an existing service, or making a change to a capacity provider strategy on a service that is already using one, you must force a new deployment. (Service: Ecs, Status Code: 400, Request ID: xxx) (SDK Attempt Count: 1)" (RequestToken: xxx HandlerErrorCode: InvalidRequest)
31
+ * >
32
+ * > Note that AWS CloudFormation automatically initiates a new deployment when it detects a parameter change, but customers cannot choose to force a deployment through AWS CloudFormation . This is an invalid input scenario that requires one of the remediation actions listed above.
33
+ * >
34
+ * > If you are experiencing active production issues related to this change, contact AWS Support or your Technical Account Manager.
6
35
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html}
7
36
  */
8
37
  export type ECSService = ResourceDefinitionWithAttributes<"AWS::ECS::Service", ECSServiceProps, ECSServiceAttribs>;
9
38
  /**
10
39
  * The `AWS::ECS::Service` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.
11
40
  *
12
- * > The stack update fails if you change any properties that require replacement and at least one Amazon ECS Service Connect `ServiceConnectConfiguration` property is configured. This is because AWS CloudFormation creates the replacement service first, but each `ServiceConnectService` must have a name that is unique in the namespace. > Starting April 15, 2023, AWS ; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS , or Amazon EC2 . However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
41
+ * > The stack update fails if you change any properties that require replacement and at least one Amazon ECS Service Connect `ServiceConnectConfiguration` property is configured. This is because AWS CloudFormation creates the replacement service first, but each `ServiceConnectService` must have a name that is unique in the namespace. > Starting April 15, 2023, AWS ; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS , or Amazon EC2 . However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service. > On June 12, 2025, Amazon ECS launched support for updating capacity provider configuration for Amazon ECS services. With this launch, Amazon ECS also aligned the AWS CloudFormation update behavior for `CapacityProviderStrategy` parameter with the standard practice. For more information, see [Amazon ECS adds support for updating capacity provider configuration for ECS services](https://docs.aws.amazon.com/about-aws/whats-new/2025/05/amazon-ecs-capacity-provider-configuration-ecs/) . Previously Amazon ECS ignored the `CapacityProviderStrategy` property if it was set to an empty list for example, `[]` in AWS CloudFormation , because updating capacity provider configuration was not supported. Now, with support for capacity provider updates, customers can remove capacity providers from a service by passing an empty list. When you specify an empty list ( `[]` ) for the `CapacityProviderStrategy` property in your AWS CloudFormation template, Amazon ECS will remove any capacity providers associated with the service, as follows:
42
+ * >
43
+ * > - For services created with a capacity provider strategy after the launch:
44
+ * >
45
+ * > - If there's a cluster default strategy set, the service will revert to using that default strategy.
46
+ * > - If no cluster default strategy exists, you will receive the following error:
47
+ * >
48
+ * > No launch type to fall back to for empty capacity provider strategy. Your service was not created with a launch type.
49
+ * > - For services created with a capacity provider strategy prior to the launch:
50
+ * >
51
+ * > - If `CapacityProviderStrategy` had `FARGATE_SPOT` or `FARGATE` capacity providers, the launch type will be updated to `FARGATE` and the capacity provider will be removed.
52
+ * > - If the strategy included Auto Scaling group capacity providers, the service will revert to EC2 launch type, and the Auto Scaling group capacity providers will not be used.
53
+ * >
54
+ * > Recommended Actions
55
+ * >
56
+ * > If you are currently using `CapacityProviderStrategy: []` in your AWS CloudFormation templates, you should take one of the following actions:
57
+ * >
58
+ * > - If you do not intend to update the Capacity Provider Strategy:
59
+ * >
60
+ * > - Remove the `CapacityProviderStrategy` property entirely from your AWS CloudFormation template
61
+ * > - Alternatively, use `!Ref AWS ::NoValue` for the `CapacityProviderStrategy` property in your template
62
+ * > - If you intend to maintain or update the Capacity Provider Strategy, specify the actual Capacity Provider Strategy for the service in your AWS CloudFormation template.
63
+ * >
64
+ * > If your AWS CloudFormation template had an empty list ([]) for `CapacityProviderStrategy` prior to the aforementioned launch on June 12, and you are using the same template with `CapacityProviderStrategy: []` , you might encounter the following error:
65
+ * >
66
+ * > Invalid request provided: When switching from launch type to capacity provider strategy on an existing service, or making a change to a capacity provider strategy on a service that is already using one, you must force a new deployment. (Service: Ecs, Status Code: 400, Request ID: xxx) (SDK Attempt Count: 1)" (RequestToken: xxx HandlerErrorCode: InvalidRequest)
67
+ * >
68
+ * > Note that AWS CloudFormation automatically initiates a new deployment when it detects a parameter change, but customers cannot choose to force a deployment through AWS CloudFormation . This is an invalid input scenario that requires one of the remediation actions listed above.
69
+ * >
70
+ * > If you are experiencing active production issues related to this change, contact AWS Support or your Technical Account Manager.
13
71
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html}
14
72
  */
15
73
  export type ECSServiceProps = {
@@ -15,17 +15,29 @@ export type EFSMountTargetProps = {
15
15
  */
16
16
  FileSystemId: string;
17
17
  /**
18
- * Valid IPv4 address within the address range of the specified subnet.
18
+ * If the `IpAddressType` for the mount target is IPv4 ( `IPV4_ONLY` or `DUAL_STACK` ), then specify the IPv4 address to use. If you do not specify an `IpAddress` , then Amazon EFS selects an unused IP address from the subnet specified for `SubnetId` .
19
19
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipaddress}
20
20
  */
21
21
  IpAddress?: string | undefined;
22
22
  /**
23
- * VPC security group IDs, of the form `sg-xxxxxxxx` . These must be for the same VPC as the subnet specified. The maximum number of security groups depends on account quota. For more information, see [Amazon VPC Quotas](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html) in the *Amazon VPC User Guide* (see the *Security Groups* table).
23
+ * The IP address type for the mount target. The possible values are `IPV4_ONLY` (only IPv4 addresses), `IPV6_ONLY` (only IPv6 addresses), and `DUAL_STACK` (dual-stack, both IPv4 and IPv6 addresses). If you don’t specify an `IpAddressType` , then `IPV4_ONLY` is used.
24
+ *
25
+ * > The `IPAddressType` must match the IP type of the subnet. Additionally, the `IPAddressType` parameter overrides the value set as the default IP address for the subnet in the VPC. For example, if the `IPAddressType` is `IPV4_ONLY` and `AssignIpv6AddressOnCreation` is `true` , then IPv4 is used for the mount target. For more information, see [Modify the IP addressing attributes of your subnet](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html) .
26
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipaddresstype}
27
+ */
28
+ IpAddressType?: "IPV4_ONLY" | "IPV6_ONLY" | "DUAL_STACK" | undefined;
29
+ /**
30
+ * If the `IPAddressType` for the mount target is IPv6 ( `IPV6_ONLY` or `DUAL_STACK` ), then specify the IPv6 address to use. If you do not specify an `Ipv6Address` , then Amazon EFS selects an unused IP address from the subnet specified for `SubnetId` .
31
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipv6address}
32
+ */
33
+ Ipv6Address?: string | undefined;
34
+ /**
35
+ * VPC security group IDs, of the form `sg-xxxxxxxx` . These must be for the same VPC as the subnet specified. The maximum number of security groups depends on account quota. For more information, see [Amazon VPC Quotas](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html) in the *Amazon VPC User Guide* (see the *Security Groups* table). If you don't specify a security group, then Amazon EFS uses the default security group for the subnet's VPC.
24
36
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-securitygroups}
25
37
  */
26
38
  SecurityGroups: string[];
27
39
  /**
28
- * The ID of the subnet to add the mount target in. For One Zone file systems, use the subnet that is associated with the file system's Availability Zone.
40
+ * The ID of the subnet to add the mount target in. For One Zone file systems, use the subnet that is associated with the file system's Availability Zone. The subnet type must be the same type as the `IpAddressType` .
29
41
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-subnetid}
30
42
  */
31
43
  SubnetId: string;