@awboost/cfn-resource-types 0.1.389 → 0.1.391
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.
|
@@ -0,0 +1,552 @@
|
|
|
1
|
+
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
|
+
import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
|
|
3
|
+
/**
|
|
4
|
+
* Resource type definition for `AWS::ARCRegionSwitch::Plan`.
|
|
5
|
+
* Represents a plan that specifies Regions, IAM roles, and workflows of logic required to perform the desired change to your multi-Region application
|
|
6
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arcregionswitch-plan.html}
|
|
7
|
+
*/
|
|
8
|
+
export type ARCRegionSwitchPlanProperties = {
|
|
9
|
+
AssociatedAlarms?: AssociatedAlarmMap;
|
|
10
|
+
Description?: string;
|
|
11
|
+
/**
|
|
12
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
13
|
+
*/
|
|
14
|
+
ExecutionRole: string;
|
|
15
|
+
/**
|
|
16
|
+
* @minLength `1`
|
|
17
|
+
* @maxLength `32`
|
|
18
|
+
* @pattern `^[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,30}[a-zA-Z0-9])?$`
|
|
19
|
+
*/
|
|
20
|
+
Name: string;
|
|
21
|
+
/**
|
|
22
|
+
* @pattern `^[a-z]{2}-[a-z-]+-\d+$`
|
|
23
|
+
*/
|
|
24
|
+
PrimaryRegion?: string;
|
|
25
|
+
RecoveryApproach: RecoveryApproach;
|
|
26
|
+
/**
|
|
27
|
+
* @min `1`
|
|
28
|
+
* @max `10080`
|
|
29
|
+
*/
|
|
30
|
+
RecoveryTimeObjectiveMinutes?: number;
|
|
31
|
+
/**
|
|
32
|
+
* @minLength `2`
|
|
33
|
+
* @maxLength `2`
|
|
34
|
+
*/
|
|
35
|
+
Regions: string[];
|
|
36
|
+
Tags?: Tags;
|
|
37
|
+
Triggers?: Trigger[];
|
|
38
|
+
Workflows: Workflow[];
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Attribute type definition for `AWS::ARCRegionSwitch::Plan`.
|
|
42
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arcregionswitch-plan.html#aws-resource-arcregionswitch-plan-return-values}
|
|
43
|
+
*/
|
|
44
|
+
export type ARCRegionSwitchPlanAttributes = {
|
|
45
|
+
/**
|
|
46
|
+
* @pattern `^arn:aws[a-zA-Z-]*:arc-region-switch::[0-9]{12}:plan/([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,30}[a-zA-Z0-9])?):([a-z0-9]{6})$`
|
|
47
|
+
*/
|
|
48
|
+
Arn: string;
|
|
49
|
+
HealthChecksForPlan: Record<string, {
|
|
50
|
+
HealthCheckId: string;
|
|
51
|
+
Region: string;
|
|
52
|
+
}[]>;
|
|
53
|
+
/**
|
|
54
|
+
* @pattern `^\d{12}$`
|
|
55
|
+
*/
|
|
56
|
+
Owner: string;
|
|
57
|
+
Version: string;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.AlarmCondition`.
|
|
61
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-alarmcondition.html}
|
|
62
|
+
*/
|
|
63
|
+
export type AlarmCondition = "red" | "green";
|
|
64
|
+
/**
|
|
65
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.AlarmType`.
|
|
66
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-alarmtype.html}
|
|
67
|
+
*/
|
|
68
|
+
export type AlarmType = "applicationHealth" | "trigger";
|
|
69
|
+
/**
|
|
70
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.ArcRoutingControlConfiguration`.
|
|
71
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-arcroutingcontrolconfiguration.html}
|
|
72
|
+
*/
|
|
73
|
+
export type ArcRoutingControlConfiguration = {
|
|
74
|
+
/**
|
|
75
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
76
|
+
*/
|
|
77
|
+
CrossAccountRole?: string;
|
|
78
|
+
ExternalId?: string;
|
|
79
|
+
RegionAndRoutingControls: RegionAndRoutingControls;
|
|
80
|
+
/**
|
|
81
|
+
* @min `1`
|
|
82
|
+
*/
|
|
83
|
+
TimeoutMinutes?: number;
|
|
84
|
+
};
|
|
85
|
+
/**
|
|
86
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.ArcRoutingControlState`.
|
|
87
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-arcroutingcontrolstate.html}
|
|
88
|
+
*/
|
|
89
|
+
export type ArcRoutingControlState = {
|
|
90
|
+
RoutingControlArn: string;
|
|
91
|
+
State: RoutingControlStateChange;
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Asg`.
|
|
95
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-asg.html}
|
|
96
|
+
*/
|
|
97
|
+
export type Asg = {
|
|
98
|
+
/**
|
|
99
|
+
* @pattern `^arn:aws:autoscaling:[a-z0-9-]+:\d{12}:autoScalingGroup:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}:autoScalingGroupName/[\S\s]{1,255}$`
|
|
100
|
+
*/
|
|
101
|
+
Arn?: string;
|
|
102
|
+
/**
|
|
103
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
104
|
+
*/
|
|
105
|
+
CrossAccountRole?: string;
|
|
106
|
+
ExternalId?: string;
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.AssociatedAlarm`.
|
|
110
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-associatedalarm.html}
|
|
111
|
+
*/
|
|
112
|
+
export type AssociatedAlarm = {
|
|
113
|
+
AlarmType: AlarmType;
|
|
114
|
+
/**
|
|
115
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
116
|
+
*/
|
|
117
|
+
CrossAccountRole?: string;
|
|
118
|
+
ExternalId?: string;
|
|
119
|
+
ResourceIdentifier: string;
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.AssociatedAlarmMap`.
|
|
123
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-associatedalarmmap.html}
|
|
124
|
+
*/
|
|
125
|
+
export type AssociatedAlarmMap = Record<string, AssociatedAlarm>;
|
|
126
|
+
/**
|
|
127
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.CustomActionLambdaConfiguration`.
|
|
128
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-customactionlambdaconfiguration.html}
|
|
129
|
+
*/
|
|
130
|
+
export type CustomActionLambdaConfiguration = {
|
|
131
|
+
/**
|
|
132
|
+
* @minLength `1`
|
|
133
|
+
* @maxLength `2`
|
|
134
|
+
*/
|
|
135
|
+
Lambdas: Lambdas[];
|
|
136
|
+
RegionToRun: RegionToRunIn;
|
|
137
|
+
RetryIntervalMinutes: number;
|
|
138
|
+
/**
|
|
139
|
+
* @min `1`
|
|
140
|
+
*/
|
|
141
|
+
TimeoutMinutes?: number;
|
|
142
|
+
Ungraceful?: LambdaUngraceful;
|
|
143
|
+
};
|
|
144
|
+
/**
|
|
145
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Ec2AsgCapacityIncreaseConfiguration`.
|
|
146
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-ec2asgcapacityincreaseconfiguration.html}
|
|
147
|
+
*/
|
|
148
|
+
export type Ec2AsgCapacityIncreaseConfiguration = {
|
|
149
|
+
/**
|
|
150
|
+
* @minLength `2`
|
|
151
|
+
* @maxLength `2`
|
|
152
|
+
*/
|
|
153
|
+
Asgs: Asg[];
|
|
154
|
+
CapacityMonitoringApproach?: any;
|
|
155
|
+
TargetPercent?: number;
|
|
156
|
+
/**
|
|
157
|
+
* @min `1`
|
|
158
|
+
*/
|
|
159
|
+
TimeoutMinutes?: number;
|
|
160
|
+
Ungraceful?: Ec2Ungraceful;
|
|
161
|
+
};
|
|
162
|
+
/**
|
|
163
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Ec2Ungraceful`.
|
|
164
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-ec2ungraceful.html}
|
|
165
|
+
*/
|
|
166
|
+
export type Ec2Ungraceful = {
|
|
167
|
+
/**
|
|
168
|
+
* @min `0`
|
|
169
|
+
* @max `99`
|
|
170
|
+
*/
|
|
171
|
+
MinimumSuccessPercentage: number;
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.EcsCapacityIncreaseConfiguration`.
|
|
175
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-ecscapacityincreaseconfiguration.html}
|
|
176
|
+
*/
|
|
177
|
+
export type EcsCapacityIncreaseConfiguration = {
|
|
178
|
+
CapacityMonitoringApproach?: any;
|
|
179
|
+
/**
|
|
180
|
+
* @minLength `2`
|
|
181
|
+
* @maxLength `2`
|
|
182
|
+
*/
|
|
183
|
+
Services: Service[];
|
|
184
|
+
TargetPercent?: number;
|
|
185
|
+
/**
|
|
186
|
+
* @min `1`
|
|
187
|
+
*/
|
|
188
|
+
TimeoutMinutes?: number;
|
|
189
|
+
Ungraceful?: EcsUngraceful;
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.EcsUngraceful`.
|
|
193
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-ecsungraceful.html}
|
|
194
|
+
*/
|
|
195
|
+
export type EcsUngraceful = {
|
|
196
|
+
/**
|
|
197
|
+
* @min `0`
|
|
198
|
+
* @max `99`
|
|
199
|
+
*/
|
|
200
|
+
MinimumSuccessPercentage: number;
|
|
201
|
+
};
|
|
202
|
+
/**
|
|
203
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.EksCluster`.
|
|
204
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-ekscluster.html}
|
|
205
|
+
*/
|
|
206
|
+
export type EksCluster = {
|
|
207
|
+
/**
|
|
208
|
+
* @pattern `^arn:aws[a-zA-Z-]*:eks:[a-z0-9-]+:\d{12}:cluster/[a-zA-Z0-9][a-zA-Z0-9-_]{0,99}$`
|
|
209
|
+
*/
|
|
210
|
+
ClusterArn: string;
|
|
211
|
+
/**
|
|
212
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
213
|
+
*/
|
|
214
|
+
CrossAccountRole?: string;
|
|
215
|
+
ExternalId?: string;
|
|
216
|
+
};
|
|
217
|
+
/**
|
|
218
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.EksResourceScalingConfiguration`.
|
|
219
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-eksresourcescalingconfiguration.html}
|
|
220
|
+
*/
|
|
221
|
+
export type EksResourceScalingConfiguration = {
|
|
222
|
+
CapacityMonitoringApproach?: any;
|
|
223
|
+
/**
|
|
224
|
+
* @minLength `2`
|
|
225
|
+
*/
|
|
226
|
+
EksClusters?: EksCluster[];
|
|
227
|
+
KubernetesResourceType: KubernetesResourceType;
|
|
228
|
+
/**
|
|
229
|
+
* @minLength `1`
|
|
230
|
+
*/
|
|
231
|
+
ScalingResources?: KubernetesScalingApplication[];
|
|
232
|
+
/**
|
|
233
|
+
* @min `1`
|
|
234
|
+
*/
|
|
235
|
+
TargetPercent?: number;
|
|
236
|
+
/**
|
|
237
|
+
* @min `1`
|
|
238
|
+
*/
|
|
239
|
+
TimeoutMinutes?: number;
|
|
240
|
+
Ungraceful?: EksResourceScalingUngraceful;
|
|
241
|
+
};
|
|
242
|
+
/**
|
|
243
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.EksResourceScalingUngraceful`.
|
|
244
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-eksresourcescalingungraceful.html}
|
|
245
|
+
*/
|
|
246
|
+
export type EksResourceScalingUngraceful = {
|
|
247
|
+
/**
|
|
248
|
+
* @min `0`
|
|
249
|
+
* @max `99`
|
|
250
|
+
*/
|
|
251
|
+
MinimumSuccessPercentage: number;
|
|
252
|
+
};
|
|
253
|
+
/**
|
|
254
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.ExecutionApprovalConfiguration`.
|
|
255
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionapprovalconfiguration.html}
|
|
256
|
+
*/
|
|
257
|
+
export type ExecutionApprovalConfiguration = {
|
|
258
|
+
ApprovalRole: string;
|
|
259
|
+
/**
|
|
260
|
+
* @min `1`
|
|
261
|
+
*/
|
|
262
|
+
TimeoutMinutes?: number;
|
|
263
|
+
};
|
|
264
|
+
/**
|
|
265
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.ExecutionBlockConfiguration`.
|
|
266
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html}
|
|
267
|
+
*/
|
|
268
|
+
export type ExecutionBlockConfiguration = {
|
|
269
|
+
CustomActionLambdaConfig: CustomActionLambdaConfiguration;
|
|
270
|
+
} | {
|
|
271
|
+
Ec2AsgCapacityIncreaseConfig: Ec2AsgCapacityIncreaseConfiguration;
|
|
272
|
+
} | {
|
|
273
|
+
ExecutionApprovalConfig: ExecutionApprovalConfiguration;
|
|
274
|
+
} | {
|
|
275
|
+
ArcRoutingControlConfig: ArcRoutingControlConfiguration;
|
|
276
|
+
} | {
|
|
277
|
+
GlobalAuroraConfig: GlobalAuroraConfiguration;
|
|
278
|
+
} | {
|
|
279
|
+
ParallelConfig: ParallelExecutionBlockConfiguration;
|
|
280
|
+
} | {
|
|
281
|
+
RegionSwitchPlanConfig: RegionSwitchPlanConfiguration;
|
|
282
|
+
} | {
|
|
283
|
+
EcsCapacityIncreaseConfig: EcsCapacityIncreaseConfiguration;
|
|
284
|
+
} | {
|
|
285
|
+
EksResourceScalingConfig: EksResourceScalingConfiguration;
|
|
286
|
+
} | {
|
|
287
|
+
Route53HealthCheckConfig: Route53HealthCheckConfiguration;
|
|
288
|
+
};
|
|
289
|
+
/**
|
|
290
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.ExecutionBlockType`.
|
|
291
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblocktype.html}
|
|
292
|
+
*/
|
|
293
|
+
export type ExecutionBlockType = "CustomActionLambda" | "ManualApproval" | "AuroraGlobalDatabase" | "EC2AutoScaling" | "ARCRoutingControl" | "ARCRegionSwitchPlan" | "Parallel" | "ECSServiceScaling" | "EKSResourceScaling" | "Route53HealthCheck";
|
|
294
|
+
/**
|
|
295
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.GlobalAuroraConfiguration`.
|
|
296
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-globalauroraconfiguration.html}
|
|
297
|
+
*/
|
|
298
|
+
export type GlobalAuroraConfiguration = {
|
|
299
|
+
Behavior: any;
|
|
300
|
+
/**
|
|
301
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
302
|
+
*/
|
|
303
|
+
CrossAccountRole?: string;
|
|
304
|
+
DatabaseClusterArns: string[];
|
|
305
|
+
ExternalId?: string;
|
|
306
|
+
GlobalClusterIdentifier: string;
|
|
307
|
+
/**
|
|
308
|
+
* @min `1`
|
|
309
|
+
*/
|
|
310
|
+
TimeoutMinutes?: number;
|
|
311
|
+
Ungraceful?: GlobalAuroraUngraceful;
|
|
312
|
+
};
|
|
313
|
+
/**
|
|
314
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.GlobalAuroraUngraceful`.
|
|
315
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-globalauroraungraceful.html}
|
|
316
|
+
*/
|
|
317
|
+
export type GlobalAuroraUngraceful = {
|
|
318
|
+
Ungraceful?: GlobalAuroraUngracefulBehavior;
|
|
319
|
+
};
|
|
320
|
+
/**
|
|
321
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.GlobalAuroraUngracefulBehavior`.
|
|
322
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-globalauroraungracefulbehavior.html}
|
|
323
|
+
*/
|
|
324
|
+
export type GlobalAuroraUngracefulBehavior = "failover";
|
|
325
|
+
/**
|
|
326
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.HealthCheckState`.
|
|
327
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-healthcheckstate.html}
|
|
328
|
+
*/
|
|
329
|
+
export type HealthCheckState = {
|
|
330
|
+
HealthCheckId?: string;
|
|
331
|
+
Region?: string;
|
|
332
|
+
};
|
|
333
|
+
/**
|
|
334
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.KubernetesResourceType`.
|
|
335
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-kubernetesresourcetype.html}
|
|
336
|
+
*/
|
|
337
|
+
export type KubernetesResourceType = {
|
|
338
|
+
ApiVersion: string;
|
|
339
|
+
Kind: string;
|
|
340
|
+
};
|
|
341
|
+
/**
|
|
342
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.KubernetesScalingApplication`.
|
|
343
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-kubernetesscalingapplication.html}
|
|
344
|
+
*/
|
|
345
|
+
export type KubernetesScalingApplication = Record<string, RegionalScalingResource>;
|
|
346
|
+
/**
|
|
347
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.KubernetesScalingResource`.
|
|
348
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-kubernetesscalingresource.html}
|
|
349
|
+
*/
|
|
350
|
+
export type KubernetesScalingResource = {
|
|
351
|
+
HpaName?: string;
|
|
352
|
+
Name: string;
|
|
353
|
+
/**
|
|
354
|
+
* @pattern `^[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$`
|
|
355
|
+
*/
|
|
356
|
+
Namespace: string;
|
|
357
|
+
};
|
|
358
|
+
/**
|
|
359
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Lambdas`.
|
|
360
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-lambdas.html}
|
|
361
|
+
*/
|
|
362
|
+
export type Lambdas = {
|
|
363
|
+
Arn?: string;
|
|
364
|
+
/**
|
|
365
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
366
|
+
*/
|
|
367
|
+
CrossAccountRole?: string;
|
|
368
|
+
ExternalId?: string;
|
|
369
|
+
};
|
|
370
|
+
/**
|
|
371
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.LambdaUngraceful`.
|
|
372
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-lambdaungraceful.html}
|
|
373
|
+
*/
|
|
374
|
+
export type LambdaUngraceful = {
|
|
375
|
+
Behavior?: any;
|
|
376
|
+
};
|
|
377
|
+
/**
|
|
378
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.ParallelExecutionBlockConfiguration`.
|
|
379
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-parallelexecutionblockconfiguration.html}
|
|
380
|
+
*/
|
|
381
|
+
export type ParallelExecutionBlockConfiguration = {
|
|
382
|
+
Steps: Step[];
|
|
383
|
+
};
|
|
384
|
+
/**
|
|
385
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.RecoveryApproach`.
|
|
386
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-recoveryapproach.html}
|
|
387
|
+
*/
|
|
388
|
+
export type RecoveryApproach = "activeActive" | "activePassive";
|
|
389
|
+
/**
|
|
390
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.RegionalScalingResource`.
|
|
391
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-regionalscalingresource.html}
|
|
392
|
+
*/
|
|
393
|
+
export type RegionalScalingResource = Record<string, KubernetesScalingResource>;
|
|
394
|
+
/**
|
|
395
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.RegionAndRoutingControls`.
|
|
396
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-regionandroutingcontrols.html}
|
|
397
|
+
*/
|
|
398
|
+
export type RegionAndRoutingControls = Record<string, ArcRoutingControlState[]>;
|
|
399
|
+
/**
|
|
400
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.RegionSwitchPlanConfiguration`.
|
|
401
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-regionswitchplanconfiguration.html}
|
|
402
|
+
*/
|
|
403
|
+
export type RegionSwitchPlanConfiguration = {
|
|
404
|
+
/**
|
|
405
|
+
* @pattern `^arn:aws[a-zA-Z-]*:arc-region-switch::[0-9]{12}:plan/([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,30}[a-zA-Z0-9])?):([a-z0-9]{6})$`
|
|
406
|
+
*/
|
|
407
|
+
Arn: string;
|
|
408
|
+
/**
|
|
409
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
410
|
+
*/
|
|
411
|
+
CrossAccountRole?: string;
|
|
412
|
+
ExternalId?: string;
|
|
413
|
+
};
|
|
414
|
+
/**
|
|
415
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.RegionToRunIn`.
|
|
416
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-regiontorunin.html}
|
|
417
|
+
*/
|
|
418
|
+
export type RegionToRunIn = "activatingRegion" | "deactivatingRegion";
|
|
419
|
+
/**
|
|
420
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Route53HealthCheckConfiguration`.
|
|
421
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-route53healthcheckconfiguration.html}
|
|
422
|
+
*/
|
|
423
|
+
export type Route53HealthCheckConfiguration = {
|
|
424
|
+
/**
|
|
425
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
426
|
+
*/
|
|
427
|
+
CrossAccountRole?: string;
|
|
428
|
+
ExternalId?: string;
|
|
429
|
+
/**
|
|
430
|
+
* @minLength `1`
|
|
431
|
+
* @maxLength `32`
|
|
432
|
+
*/
|
|
433
|
+
HostedZoneId: string;
|
|
434
|
+
/**
|
|
435
|
+
* @minLength `1`
|
|
436
|
+
* @maxLength `1024`
|
|
437
|
+
*/
|
|
438
|
+
RecordName: string;
|
|
439
|
+
RecordSets?: Route53ResourceRecordSet[];
|
|
440
|
+
/**
|
|
441
|
+
* @min `1`
|
|
442
|
+
*/
|
|
443
|
+
TimeoutMinutes?: number;
|
|
444
|
+
};
|
|
445
|
+
/**
|
|
446
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Route53ResourceRecordSet`.
|
|
447
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-route53resourcerecordset.html}
|
|
448
|
+
*/
|
|
449
|
+
export type Route53ResourceRecordSet = {
|
|
450
|
+
/**
|
|
451
|
+
* @minLength `1`
|
|
452
|
+
* @maxLength `1024`
|
|
453
|
+
*/
|
|
454
|
+
RecordSetIdentifier?: string;
|
|
455
|
+
/**
|
|
456
|
+
* @pattern `^[a-z]{2}-[a-z-]+-\d+$`
|
|
457
|
+
*/
|
|
458
|
+
Region?: string;
|
|
459
|
+
};
|
|
460
|
+
/**
|
|
461
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.RoutingControlStateChange`.
|
|
462
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-routingcontrolstatechange.html}
|
|
463
|
+
*/
|
|
464
|
+
export type RoutingControlStateChange = "On" | "Off";
|
|
465
|
+
/**
|
|
466
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Service`.
|
|
467
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-service.html}
|
|
468
|
+
*/
|
|
469
|
+
export type Service = {
|
|
470
|
+
/**
|
|
471
|
+
* @pattern `^arn:aws:ecs:[a-z0-9-]+:\d{12}:cluster/[a-zA-Z0-9_-]{1,255}$`
|
|
472
|
+
*/
|
|
473
|
+
ClusterArn?: string;
|
|
474
|
+
/**
|
|
475
|
+
* @pattern `^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$`
|
|
476
|
+
*/
|
|
477
|
+
CrossAccountRole?: string;
|
|
478
|
+
ExternalId?: string;
|
|
479
|
+
/**
|
|
480
|
+
* @pattern `^arn:aws:ecs:[a-z0-9-]+:\d{12}:service/[a-zA-Z0-9_-]+/[a-zA-Z0-9_-]{1,255}$`
|
|
481
|
+
*/
|
|
482
|
+
ServiceArn?: string;
|
|
483
|
+
};
|
|
484
|
+
/**
|
|
485
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Step`.
|
|
486
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-step.html}
|
|
487
|
+
*/
|
|
488
|
+
export type Step = {
|
|
489
|
+
Description?: string;
|
|
490
|
+
ExecutionBlockConfiguration: ExecutionBlockConfiguration;
|
|
491
|
+
ExecutionBlockType: ExecutionBlockType;
|
|
492
|
+
Name: string;
|
|
493
|
+
};
|
|
494
|
+
/**
|
|
495
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Tags`.
|
|
496
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-tags.html}
|
|
497
|
+
*/
|
|
498
|
+
export type Tags = Record<string, string>;
|
|
499
|
+
/**
|
|
500
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Trigger`.
|
|
501
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-trigger.html}
|
|
502
|
+
*/
|
|
503
|
+
export type Trigger = {
|
|
504
|
+
Action: WorkflowTargetAction;
|
|
505
|
+
/**
|
|
506
|
+
* @minLength `1`
|
|
507
|
+
* @maxLength `10`
|
|
508
|
+
*/
|
|
509
|
+
Conditions: TriggerCondition[];
|
|
510
|
+
Description?: string;
|
|
511
|
+
MinDelayMinutesBetweenExecutions: number;
|
|
512
|
+
/**
|
|
513
|
+
* @pattern `^[a-z]{2}-[a-z-]+-\d+$`
|
|
514
|
+
*/
|
|
515
|
+
TargetRegion: string;
|
|
516
|
+
};
|
|
517
|
+
/**
|
|
518
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.TriggerCondition`.
|
|
519
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-triggercondition.html}
|
|
520
|
+
*/
|
|
521
|
+
export type TriggerCondition = {
|
|
522
|
+
AssociatedAlarmName: string;
|
|
523
|
+
Condition: AlarmCondition;
|
|
524
|
+
};
|
|
525
|
+
/**
|
|
526
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.Workflow`.
|
|
527
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-workflow.html}
|
|
528
|
+
*/
|
|
529
|
+
export type Workflow = {
|
|
530
|
+
Steps?: Step[];
|
|
531
|
+
WorkflowDescription?: string;
|
|
532
|
+
WorkflowTargetAction: WorkflowTargetAction;
|
|
533
|
+
/**
|
|
534
|
+
* @pattern `^[a-z]{2}-[a-z-]+-\d+$`
|
|
535
|
+
*/
|
|
536
|
+
WorkflowTargetRegion?: string;
|
|
537
|
+
};
|
|
538
|
+
/**
|
|
539
|
+
* Type definition for `AWS::ARCRegionSwitch::Plan.WorkflowTargetAction`.
|
|
540
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-workflowtargetaction.html}
|
|
541
|
+
*/
|
|
542
|
+
export type WorkflowTargetAction = "activate" | "deactivate";
|
|
543
|
+
/**
|
|
544
|
+
* Resource type definition for `AWS::ARCRegionSwitch::Plan`.
|
|
545
|
+
* Represents a plan that specifies Regions, IAM roles, and workflows of logic required to perform the desired change to your multi-Region application
|
|
546
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arcregionswitch-plan.html}
|
|
547
|
+
*/
|
|
548
|
+
export declare class ARCRegionSwitchPlan extends $Resource<"AWS::ARCRegionSwitch::Plan", ARCRegionSwitchPlanProperties, ARCRegionSwitchPlanAttributes> {
|
|
549
|
+
static readonly Type = "AWS::ARCRegionSwitch::Plan";
|
|
550
|
+
constructor(logicalId: string, properties: ARCRegionSwitchPlanProperties, options?: $ResourceOptions);
|
|
551
|
+
}
|
|
552
|
+
//# sourceMappingURL=AWS-ARCRegionSwitch-Plan.d.ts.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
|
+
/**
|
|
3
|
+
* Resource type definition for `AWS::ARCRegionSwitch::Plan`.
|
|
4
|
+
* Represents a plan that specifies Regions, IAM roles, and workflows of logic required to perform the desired change to your multi-Region application
|
|
5
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arcregionswitch-plan.html}
|
|
6
|
+
*/
|
|
7
|
+
export class ARCRegionSwitchPlan extends $Resource {
|
|
8
|
+
static Type = "AWS::ARCRegionSwitch::Plan";
|
|
9
|
+
constructor(logicalId, properties, options) {
|
|
10
|
+
super(logicalId, ARCRegionSwitchPlan.Type, properties, options);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AWS-ARCRegionSwitch-Plan.js.map
|
|
@@ -5,12 +5,13 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
5
5
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html}
|
|
6
6
|
*/
|
|
7
7
|
export type BatchJobQueueProperties = {
|
|
8
|
-
ComputeEnvironmentOrder
|
|
8
|
+
ComputeEnvironmentOrder?: ComputeEnvironmentOrder[];
|
|
9
9
|
/**
|
|
10
10
|
* @minLength `1`
|
|
11
11
|
* @maxLength `128`
|
|
12
12
|
*/
|
|
13
13
|
JobQueueName?: string;
|
|
14
|
+
JobQueueType?: string;
|
|
14
15
|
JobStateTimeLimitActions?: JobStateTimeLimitAction[];
|
|
15
16
|
/**
|
|
16
17
|
* @min `0`
|
|
@@ -21,6 +22,7 @@ export type BatchJobQueueProperties = {
|
|
|
21
22
|
* @pattern `arn:[a-z0-9-\.]{1,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[^/].{0,1023}`
|
|
22
23
|
*/
|
|
23
24
|
SchedulingPolicyArn?: string;
|
|
25
|
+
ServiceEnvironmentOrder?: ServiceEnvironmentOrder[];
|
|
24
26
|
State?: "DISABLED" | "ENABLED";
|
|
25
27
|
/**
|
|
26
28
|
* A key-value pair to associate with a resource.
|
|
@@ -50,7 +52,7 @@ export type ComputeEnvironmentOrder = {
|
|
|
50
52
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-jobstatetimelimitaction.html}
|
|
51
53
|
*/
|
|
52
54
|
export type JobStateTimeLimitAction = {
|
|
53
|
-
Action: "CANCEL";
|
|
55
|
+
Action: "CANCEL" | "TERMINATE";
|
|
54
56
|
/**
|
|
55
57
|
* @min `600`
|
|
56
58
|
* @max `86400`
|
|
@@ -59,6 +61,14 @@ export type JobStateTimeLimitAction = {
|
|
|
59
61
|
Reason: string;
|
|
60
62
|
State: "RUNNABLE";
|
|
61
63
|
};
|
|
64
|
+
/**
|
|
65
|
+
* Type definition for `AWS::Batch::JobQueue.ServiceEnvironmentOrder`.
|
|
66
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-serviceenvironmentorder.html}
|
|
67
|
+
*/
|
|
68
|
+
export type ServiceEnvironmentOrder = {
|
|
69
|
+
Order: number;
|
|
70
|
+
ServiceEnvironment: string;
|
|
71
|
+
};
|
|
62
72
|
/**
|
|
63
73
|
* Resource Type definition for AWS::Batch::JobQueue
|
|
64
74
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html}
|
|
@@ -465,6 +465,7 @@ export type RDSDBClusterProperties = {
|
|
|
465
465
|
Valid for: Aurora DB clusters and Multi-AZ DB clusters
|
|
466
466
|
*/
|
|
467
467
|
SourceDBClusterIdentifier?: string;
|
|
468
|
+
SourceDbClusterResourceId?: string;
|
|
468
469
|
/**
|
|
469
470
|
* The AWS Region which contains the source DB cluster when replicating a DB cluster. For example, ``us-east-1``.
|
|
470
471
|
Valid for: Aurora DB clusters only
|
package/lib/AWS-S3-Bucket.d.ts
CHANGED
|
@@ -40,7 +40,7 @@ export type S3BucketProperties = {
|
|
|
40
40
|
*/
|
|
41
41
|
IntelligentTieringConfigurations?: IntelligentTieringConfiguration[];
|
|
42
42
|
/**
|
|
43
|
-
* Specifies the
|
|
43
|
+
* Specifies the S3 Inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.
|
|
44
44
|
*/
|
|
45
45
|
InventoryConfigurations?: InventoryConfiguration[];
|
|
46
46
|
/**
|
|
@@ -51,6 +51,9 @@ export type S3BucketProperties = {
|
|
|
51
51
|
* Settings that define where logs are stored.
|
|
52
52
|
*/
|
|
53
53
|
LoggingConfiguration?: LoggingConfiguration;
|
|
54
|
+
/**
|
|
55
|
+
* The S3 Metadata configuration for a general purpose bucket.
|
|
56
|
+
*/
|
|
54
57
|
MetadataConfiguration?: MetadataConfiguration;
|
|
55
58
|
/**
|
|
56
59
|
* The metadata table configuration of an S3 general purpose bucket.
|
|
@@ -114,30 +117,33 @@ export type S3BucketAttributes = {
|
|
|
114
117
|
Arn: string;
|
|
115
118
|
DomainName: string;
|
|
116
119
|
DualStackDomainName: string;
|
|
120
|
+
/**
|
|
121
|
+
* The S3 Metadata configuration for a general purpose bucket.
|
|
122
|
+
*/
|
|
117
123
|
MetadataConfiguration: {
|
|
118
124
|
/**
|
|
119
|
-
* The destination information for the
|
|
125
|
+
* The destination information for the S3 Metadata configuration.
|
|
120
126
|
*/
|
|
121
127
|
Destination: {
|
|
122
128
|
/**
|
|
123
|
-
* The ARN of the table bucket.
|
|
129
|
+
* The Amazon Resource Name (ARN) of the table bucket where the metadata configuration is stored.
|
|
124
130
|
*/
|
|
125
131
|
TableBucketArn: string;
|
|
126
132
|
/**
|
|
127
|
-
* The type of the table bucket.
|
|
133
|
+
* The type of the table bucket where the metadata configuration is stored. The ``aws`` value indicates an AWS managed table bucket, and the ``customer`` value indicates a customer-managed table bucket. V2 metadata configurations are stored in AWS managed table buckets, and V1 metadata configurations are stored in customer-managed table buckets.
|
|
128
134
|
*/
|
|
129
135
|
TableBucketType: "aws" | "customer";
|
|
130
136
|
/**
|
|
131
|
-
* The namespace
|
|
137
|
+
* The namespace in the table bucket where the metadata tables for a metadata configuration are stored.
|
|
132
138
|
*/
|
|
133
139
|
TableNamespace: string;
|
|
134
140
|
};
|
|
135
141
|
/**
|
|
136
|
-
* The configuration for
|
|
142
|
+
* The inventory table configuration for a metadata configuration.
|
|
137
143
|
*/
|
|
138
144
|
InventoryTableConfiguration: {
|
|
139
145
|
/**
|
|
140
|
-
* The ARN
|
|
146
|
+
* The Amazon Resource Name (ARN) for the inventory table.
|
|
141
147
|
*/
|
|
142
148
|
TableArn: string;
|
|
143
149
|
/**
|
|
@@ -146,11 +152,11 @@ export type S3BucketAttributes = {
|
|
|
146
152
|
TableName: string;
|
|
147
153
|
};
|
|
148
154
|
/**
|
|
149
|
-
* The configuration for
|
|
155
|
+
* The journal table configuration for a metadata configuration.
|
|
150
156
|
*/
|
|
151
157
|
JournalTableConfiguration: {
|
|
152
158
|
/**
|
|
153
|
-
* The ARN
|
|
159
|
+
* The Amazon Resource Name (ARN) for the journal table.
|
|
154
160
|
*/
|
|
155
161
|
TableArn: string;
|
|
156
162
|
/**
|
|
@@ -439,7 +445,7 @@ export type IntelligentTieringConfiguration = {
|
|
|
439
445
|
};
|
|
440
446
|
/**
|
|
441
447
|
* Type definition for `AWS::S3::Bucket.InventoryConfiguration`.
|
|
442
|
-
* Specifies the
|
|
448
|
+
* Specifies the S3 Inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.
|
|
443
449
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html}
|
|
444
450
|
*/
|
|
445
451
|
export type InventoryConfiguration = {
|
|
@@ -474,11 +480,12 @@ export type InventoryConfiguration = {
|
|
|
474
480
|
};
|
|
475
481
|
/**
|
|
476
482
|
* Type definition for `AWS::S3::Bucket.InventoryTableConfiguration`.
|
|
483
|
+
* The inventory table configuration for an S3 Metadata configuration.
|
|
477
484
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventorytableconfiguration.html}
|
|
478
485
|
*/
|
|
479
486
|
export type InventoryTableConfiguration = {
|
|
480
487
|
/**
|
|
481
|
-
*
|
|
488
|
+
* The configuration state of the inventory table, indicating whether the inventory table is enabled or disabled.
|
|
482
489
|
*/
|
|
483
490
|
ConfigurationState: "ENABLED" | "DISABLED";
|
|
484
491
|
/**
|
|
@@ -488,6 +495,7 @@ export type InventoryTableConfiguration = {
|
|
|
488
495
|
};
|
|
489
496
|
/**
|
|
490
497
|
* Type definition for `AWS::S3::Bucket.JournalTableConfiguration`.
|
|
498
|
+
* The journal table configuration for an S3 Metadata configuration.
|
|
491
499
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-journaltableconfiguration.html}
|
|
492
500
|
*/
|
|
493
501
|
export type JournalTableConfiguration = {
|
|
@@ -495,6 +503,9 @@ export type JournalTableConfiguration = {
|
|
|
495
503
|
* The encryption configuration for the journal table.
|
|
496
504
|
*/
|
|
497
505
|
EncryptionConfiguration?: MetadataTableEncryptionConfiguration;
|
|
506
|
+
/**
|
|
507
|
+
* The journal table record expiration settings for the journal table.
|
|
508
|
+
*/
|
|
498
509
|
RecordExpiration: RecordExpiration;
|
|
499
510
|
};
|
|
500
511
|
/**
|
|
@@ -558,39 +569,43 @@ export type LoggingConfiguration = {
|
|
|
558
569
|
};
|
|
559
570
|
/**
|
|
560
571
|
* Type definition for `AWS::S3::Bucket.MetadataConfiguration`.
|
|
572
|
+
* Creates a V2 S3 Metadata configuration of a general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) in the *Amazon S3 User Guide*.
|
|
561
573
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metadataconfiguration.html}
|
|
562
574
|
*/
|
|
563
575
|
export type MetadataConfiguration = {
|
|
564
576
|
/**
|
|
565
|
-
* The configuration for
|
|
577
|
+
* The inventory table configuration for a metadata configuration.
|
|
566
578
|
*/
|
|
567
579
|
InventoryTableConfiguration?: InventoryTableConfiguration;
|
|
568
580
|
/**
|
|
569
|
-
* The configuration for
|
|
581
|
+
* The journal table configuration for a metadata configuration.
|
|
570
582
|
*/
|
|
571
583
|
JournalTableConfiguration: JournalTableConfiguration;
|
|
572
584
|
};
|
|
573
585
|
/**
|
|
574
586
|
* Type definition for `AWS::S3::Bucket.MetadataDestination`.
|
|
587
|
+
* The destination information for the S3 Metadata configuration.
|
|
575
588
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metadatadestination.html}
|
|
576
589
|
*/
|
|
577
590
|
export type MetadataDestination = {
|
|
578
591
|
/**
|
|
579
|
-
* The ARN of the table bucket.
|
|
592
|
+
* The Amazon Resource Name (ARN) of the table bucket where the metadata configuration is stored.
|
|
580
593
|
*/
|
|
581
594
|
TableBucketArn?: string;
|
|
582
595
|
/**
|
|
583
|
-
* The type of the table bucket.
|
|
596
|
+
* The type of the table bucket where the metadata configuration is stored. The ``aws`` value indicates an AWS managed table bucket, and the ``customer`` value indicates a customer-managed table bucket. V2 metadata configurations are stored in AWS managed table buckets, and V1 metadata configurations are stored in customer-managed table buckets.
|
|
584
597
|
*/
|
|
585
598
|
TableBucketType: "aws" | "customer";
|
|
586
599
|
/**
|
|
587
|
-
* The namespace
|
|
600
|
+
* The namespace in the table bucket where the metadata tables for a metadata configuration are stored.
|
|
588
601
|
*/
|
|
589
602
|
TableNamespace?: string;
|
|
590
603
|
};
|
|
591
604
|
/**
|
|
592
605
|
* Type definition for `AWS::S3::Bucket.MetadataTableConfiguration`.
|
|
593
|
-
*
|
|
606
|
+
* We recommend that you create your S3 Metadata configurations by using the V2 [MetadataConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-s3-bucket-metadataconfiguration.html) resource type. We no longer recommend using the V1 ``MetadataTableConfiguration`` resource type.
|
|
607
|
+
If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete and re-create your configuration by using the [MetadataConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-s3-bucket-metadataconfiguration.html) resource type so that you can expire journal table records and create a live inventory table.
|
|
608
|
+
Creates a V1 S3 Metadata configuration for a general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) in the *Amazon S3 User Guide*.
|
|
594
609
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metadatatableconfiguration.html}
|
|
595
610
|
*/
|
|
596
611
|
export type MetadataTableConfiguration = {
|
|
@@ -601,15 +616,16 @@ export type MetadataTableConfiguration = {
|
|
|
601
616
|
};
|
|
602
617
|
/**
|
|
603
618
|
* Type definition for `AWS::S3::Bucket.MetadataTableEncryptionConfiguration`.
|
|
619
|
+
* The encryption settings for an S3 Metadata journal table or inventory table configuration.
|
|
604
620
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metadatatableencryptionconfiguration.html}
|
|
605
621
|
*/
|
|
606
622
|
export type MetadataTableEncryptionConfiguration = {
|
|
607
623
|
/**
|
|
608
|
-
*
|
|
624
|
+
* If server-side encryption with KMSlong (KMS) keys (SSE-KMS) is specified, you must also specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key that's located in the same Region as the general purpose bucket that corresponds to the metadata table configuration.
|
|
609
625
|
*/
|
|
610
626
|
KmsKeyArn?: string;
|
|
611
627
|
/**
|
|
612
|
-
*
|
|
628
|
+
* The encryption type specified for a metadata table. To specify server-side encryption with KMSlong (KMS) keys (SSE-KMS), use the ``aws:kms`` value. To specify server-side encryption with Amazon S3 managed keys (SSE-S3), use the ``AES256`` value.
|
|
613
629
|
*/
|
|
614
630
|
SseAlgorithm: "aws:kms" | "AES256";
|
|
615
631
|
};
|
|
@@ -840,15 +856,16 @@ export type QueueConfiguration = {
|
|
|
840
856
|
};
|
|
841
857
|
/**
|
|
842
858
|
* Type definition for `AWS::S3::Bucket.RecordExpiration`.
|
|
859
|
+
* The journal table record expiration settings for a journal table in an S3 Metadata configuration.
|
|
843
860
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-recordexpiration.html}
|
|
844
861
|
*/
|
|
845
862
|
export type RecordExpiration = {
|
|
846
863
|
/**
|
|
847
|
-
*
|
|
864
|
+
* If you enable journal table record expiration, you can set the number of days to retain your journal table records. Journal table records must be retained for a minimum of 7 days. To set this value, specify any whole number from ``7`` to ``2147483647``. For example, to retain your journal table records for one year, set this value to ``365``.
|
|
848
865
|
*/
|
|
849
866
|
Days?: number;
|
|
850
867
|
/**
|
|
851
|
-
* Specifies whether record expiration is enabled or disabled.
|
|
868
|
+
* Specifies whether journal table record expiration is enabled or disabled.
|
|
852
869
|
*/
|
|
853
870
|
Expiration: "ENABLED" | "DISABLED";
|
|
854
871
|
};
|
|
@@ -957,6 +974,7 @@ export type ReplicationDestination = {
|
|
|
957
974
|
/**
|
|
958
975
|
* The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. By default, Amazon S3 uses the storage class of the source object to create the object replica.
|
|
959
976
|
For valid values, see the ``StorageClass`` element of the [PUT Bucket replication](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) action in the *Amazon S3 API Reference*.
|
|
977
|
+
``FSX_OPENZFS`` is not an accepted value when replicating objects.
|
|
960
978
|
*/
|
|
961
979
|
StorageClass?: "DEEP_ARCHIVE" | "GLACIER" | "GLACIER_IR" | "INTELLIGENT_TIERING" | "ONEZONE_IA" | "REDUCED_REDUNDANCY" | "STANDARD" | "STANDARD_IA";
|
|
962
980
|
};
|
|
@@ -1199,7 +1217,7 @@ export type S3KeyFilter = {
|
|
|
1199
1217
|
};
|
|
1200
1218
|
/**
|
|
1201
1219
|
* Type definition for `AWS::S3::Bucket.S3TablesDestination`.
|
|
1202
|
-
* The destination information for
|
|
1220
|
+
* The destination information for a V1 S3 Metadata configuration. The destination table bucket must be in the same Region and AWS-account as the general purpose bucket. The specified metadata table name must be unique within the ``aws_s3_metadata`` namespace in the destination table bucket.
|
|
1203
1221
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-s3tablesdestination.html}
|
|
1204
1222
|
*/
|
|
1205
1223
|
export type S3TablesDestination = {
|
|
@@ -36,6 +36,7 @@ export type S3ExpressAccessPointProperties = {
|
|
|
36
36
|
* For directory buckets, you can filter access control to specific prefixes, API operations, or a combination of both.
|
|
37
37
|
*/
|
|
38
38
|
Scope?: Scope;
|
|
39
|
+
Tags?: Tag[];
|
|
39
40
|
/**
|
|
40
41
|
* If you include this field, Amazon S3 restricts access to this Access Point to requests from the specified Virtual Private Cloud (VPC).
|
|
41
42
|
*/
|
|
@@ -96,6 +97,24 @@ export type Scope = {
|
|
|
96
97
|
*/
|
|
97
98
|
Prefixes?: string[];
|
|
98
99
|
};
|
|
100
|
+
/**
|
|
101
|
+
* Type definition for `AWS::S3Express::AccessPoint.Tag`.
|
|
102
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-tag.html}
|
|
103
|
+
*/
|
|
104
|
+
export type Tag = {
|
|
105
|
+
/**
|
|
106
|
+
* @minLength `1`
|
|
107
|
+
* @maxLength `128`
|
|
108
|
+
* @pattern `^(?!aws:.*)([\p{L}\p{Z}\p{N}_.:=+\/\-@%]*)$`
|
|
109
|
+
*/
|
|
110
|
+
Key: string;
|
|
111
|
+
/**
|
|
112
|
+
* @minLength `0`
|
|
113
|
+
* @maxLength `256`
|
|
114
|
+
* @pattern `^([\p{L}\p{Z}\p{N}_.:=+\/\-@%]*)$`
|
|
115
|
+
*/
|
|
116
|
+
Value: string;
|
|
117
|
+
};
|
|
99
118
|
/**
|
|
100
119
|
* Type definition for `AWS::S3Express::AccessPoint.VpcConfiguration`.
|
|
101
120
|
* The Virtual Private Cloud (VPC) configuration for a bucket access point.
|