@awboost/cfn-resource-types 0.1.191 → 0.1.193
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/AWS-ApplicationSignals-ServiceLevelObjective.d.ts +21 -0
- package/lib/AWS-Batch-ComputeEnvironment.d.ts +11 -0
- package/lib/AWS-CloudFormation-GuardHook.d.ts +195 -0
- package/lib/AWS-CloudFormation-GuardHook.js +13 -0
- package/lib/AWS-CloudFormation-LambdaHook.d.ts +173 -0
- package/lib/AWS-CloudFormation-LambdaHook.js +13 -0
- package/lib/AWS-DynamoDB-GlobalTable.d.ts +16 -0
- package/lib/AWS-DynamoDB-Table.d.ts +18 -2
- package/lib/AWS-DynamoDB-Table.js +1 -1
- package/lib/AWS-ECR-RepositoryCreationTemplate.d.ts +2 -2
- package/lib/AWS-ECS-TaskDefinition.d.ts +25 -15
- package/lib/AWS-FIS-ExperimentTemplate.d.ts +37 -0
- package/lib/AWS-GameLift-ContainerFleet.d.ts +404 -0
- package/lib/AWS-GameLift-ContainerFleet.js +12 -0
- package/lib/AWS-GameLift-ContainerGroupDefinition.d.ts +292 -2
- package/lib/AWS-KinesisFirehose-DeliveryStream.d.ts +91 -4
- package/lib/AWS-VpcLattice-AccessLogSubscription.d.ts +1 -0
- package/package.json +1 -1
|
@@ -5,6 +5,12 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
5
5
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html}
|
|
6
6
|
*/
|
|
7
7
|
export type ApplicationSignalsServiceLevelObjectiveProperties = {
|
|
8
|
+
/**
|
|
9
|
+
* Each object in this array defines the length of the look-back window used to calculate one burn rate metric for this SLO. The burn rate measures how fast the service is consuming the error budget, relative to the attainment goal of the SLO.
|
|
10
|
+
* @minLength `0`
|
|
11
|
+
* @maxLength `10`
|
|
12
|
+
*/
|
|
13
|
+
BurnRateConfigurations?: BurnRateConfiguration[];
|
|
8
14
|
/**
|
|
9
15
|
* An optional description for this SLO. Default is 'No description'
|
|
10
16
|
* @minLength `1`
|
|
@@ -60,6 +66,21 @@ export type ApplicationSignalsServiceLevelObjectiveAttributes = {
|
|
|
60
66
|
*/
|
|
61
67
|
LastUpdatedTime: number;
|
|
62
68
|
};
|
|
69
|
+
/**
|
|
70
|
+
* Type definition for `AWS::ApplicationSignals::ServiceLevelObjective.BurnRateConfiguration`.
|
|
71
|
+
* This object defines the length of the look-back window used to calculate one burn rate metric for this SLO. The burn rate measures how fast the service is consuming the error budget, relative to the attainment goal of the SLO. A burn rate of exactly 1 indicates that the SLO goal will be met exactly.
|
|
72
|
+
For example, if you specify 60 as the number of minutes in the look-back window, the burn rate is calculated as the following:
|
|
73
|
+
burn rate = error rate over the look-back window / (1 - attainment goal percentage)
|
|
74
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-burnrateconfiguration.html}
|
|
75
|
+
*/
|
|
76
|
+
export type BurnRateConfiguration = {
|
|
77
|
+
/**
|
|
78
|
+
* The number of minutes to use as the look-back window.
|
|
79
|
+
* @min `1`
|
|
80
|
+
* @max `10080`
|
|
81
|
+
*/
|
|
82
|
+
LookBackWindowMinutes: number;
|
|
83
|
+
};
|
|
63
84
|
/**
|
|
64
85
|
* Type definition for `AWS::ApplicationSignals::ServiceLevelObjective.CalendarInterval`.
|
|
65
86
|
* If the interval for this service level objective is a calendar interval, this structure contains the interval specifications.
|
|
@@ -78,6 +78,17 @@ export type EksConfiguration = {
|
|
|
78
78
|
export type LaunchTemplateSpecification = {
|
|
79
79
|
LaunchTemplateId?: string;
|
|
80
80
|
LaunchTemplateName?: string;
|
|
81
|
+
Overrides?: LaunchTemplateSpecificationOverride[];
|
|
82
|
+
Version?: string;
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Type definition for `AWS::Batch::ComputeEnvironment.LaunchTemplateSpecificationOverride`.
|
|
86
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecificationoverride.html}
|
|
87
|
+
*/
|
|
88
|
+
export type LaunchTemplateSpecificationOverride = {
|
|
89
|
+
LaunchTemplateId?: string;
|
|
90
|
+
LaunchTemplateName?: string;
|
|
91
|
+
TargetInstanceTypes?: string[];
|
|
81
92
|
Version?: string;
|
|
82
93
|
};
|
|
83
94
|
/**
|
|
@@ -0,0 +1,195 @@
|
|
|
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::CloudFormation::GuardHook`.
|
|
5
|
+
* This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook.
|
|
6
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html}
|
|
7
|
+
*/
|
|
8
|
+
export type CloudFormationGuardHookProperties = {
|
|
9
|
+
/**
|
|
10
|
+
* The typename alias for the hook.
|
|
11
|
+
* @pattern `^[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}$`
|
|
12
|
+
*/
|
|
13
|
+
Alias: string;
|
|
14
|
+
/**
|
|
15
|
+
* The execution role ARN assumed by hooks to read Guard rules from S3 and write Guard outputs to S3.
|
|
16
|
+
* @maxLength `256`
|
|
17
|
+
* @pattern `arn:.+:iam::[0-9]{12}:role/.+`
|
|
18
|
+
*/
|
|
19
|
+
ExecutionRole: string;
|
|
20
|
+
/**
|
|
21
|
+
* Attribute to specify CloudFormation behavior on hook failure.
|
|
22
|
+
*/
|
|
23
|
+
FailureMode: "FAIL" | "WARN";
|
|
24
|
+
/**
|
|
25
|
+
* Attribute to specify which stacks this hook applies to or should get invoked for
|
|
26
|
+
*/
|
|
27
|
+
HookStatus: "ENABLED" | "DISABLED";
|
|
28
|
+
/**
|
|
29
|
+
* S3 Bucket where the guard validate report will be uploaded to
|
|
30
|
+
*/
|
|
31
|
+
LogBucket?: string;
|
|
32
|
+
Options?: {
|
|
33
|
+
/**
|
|
34
|
+
* S3 Source Location for the Guard files.
|
|
35
|
+
*/
|
|
36
|
+
InputParams?: S3Location;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* S3 Source Location for the Guard files.
|
|
40
|
+
*/
|
|
41
|
+
RuleLocation: S3Location;
|
|
42
|
+
/**
|
|
43
|
+
* Filters to allow hooks to target specific stack attributes
|
|
44
|
+
*/
|
|
45
|
+
StackFilters?: {
|
|
46
|
+
/**
|
|
47
|
+
* Attribute to specify the filtering behavior. ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match
|
|
48
|
+
*/
|
|
49
|
+
FilteringCriteria: "ALL" | "ANY";
|
|
50
|
+
/**
|
|
51
|
+
* List of stack names as filters
|
|
52
|
+
*/
|
|
53
|
+
StackNames?: {
|
|
54
|
+
/**
|
|
55
|
+
* List of stack names that the hook is going to be excluded from
|
|
56
|
+
* @minLength `1`
|
|
57
|
+
* @maxLength `50`
|
|
58
|
+
*/
|
|
59
|
+
Exclude?: string[];
|
|
60
|
+
/**
|
|
61
|
+
* List of stack names that the hook is going to target
|
|
62
|
+
* @minLength `1`
|
|
63
|
+
* @maxLength `50`
|
|
64
|
+
*/
|
|
65
|
+
Include?: string[];
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* List of stack roles that are performing the stack operations.
|
|
69
|
+
*/
|
|
70
|
+
StackRoles?: {
|
|
71
|
+
/**
|
|
72
|
+
* List of stack roles that the hook is going to be excluded from
|
|
73
|
+
* @minLength `1`
|
|
74
|
+
* @maxLength `50`
|
|
75
|
+
*/
|
|
76
|
+
Exclude?: string[];
|
|
77
|
+
/**
|
|
78
|
+
* List of stack roles that the hook is going to target
|
|
79
|
+
* @minLength `1`
|
|
80
|
+
* @maxLength `50`
|
|
81
|
+
*/
|
|
82
|
+
Include?: string[];
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
/**
|
|
86
|
+
* Attribute to specify which targets should invoke the hook
|
|
87
|
+
*/
|
|
88
|
+
TargetFilters?: {
|
|
89
|
+
/**
|
|
90
|
+
* List of actions that the hook is going to target
|
|
91
|
+
* @minLength `1`
|
|
92
|
+
* @maxLength `50`
|
|
93
|
+
*/
|
|
94
|
+
Actions?: Action[];
|
|
95
|
+
/**
|
|
96
|
+
* List of invocation points that the hook is going to target
|
|
97
|
+
* @minLength `1`
|
|
98
|
+
* @maxLength `50`
|
|
99
|
+
*/
|
|
100
|
+
InvocationPoints?: InvocationPoint[];
|
|
101
|
+
/**
|
|
102
|
+
* List of type names that the hook is going to target
|
|
103
|
+
* @minLength `1`
|
|
104
|
+
* @maxLength `50`
|
|
105
|
+
*/
|
|
106
|
+
TargetNames?: string[];
|
|
107
|
+
} | {
|
|
108
|
+
/**
|
|
109
|
+
* List of hook targets
|
|
110
|
+
* @minLength `1`
|
|
111
|
+
* @maxLength `50`
|
|
112
|
+
*/
|
|
113
|
+
Targets: HookTarget[];
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* Which operations should this Hook run against? Resource changes, stacks or change sets.
|
|
117
|
+
*/
|
|
118
|
+
TargetOperations: TargetOperation[];
|
|
119
|
+
};
|
|
120
|
+
/**
|
|
121
|
+
* Attribute type definition for `AWS::CloudFormation::GuardHook`.
|
|
122
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#aws-resource-cloudformation-guardhook-return-values}
|
|
123
|
+
*/
|
|
124
|
+
export type CloudFormationGuardHookAttributes = {
|
|
125
|
+
/**
|
|
126
|
+
* The Amazon Resource Name (ARN) of the activated hook
|
|
127
|
+
* @pattern `^arn:aws[A-Za-z0-9-]{0,64}:cloudformation:[A-Za-z0-9-]{1,64}:([0-9]{12})?:type/hook/.+$`
|
|
128
|
+
*/
|
|
129
|
+
HookArn: string;
|
|
130
|
+
};
|
|
131
|
+
/**
|
|
132
|
+
* Type definition for `AWS::CloudFormation::GuardHook.Action`.
|
|
133
|
+
* Target actions are the type of operation hooks will be executed at.
|
|
134
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-action.html}
|
|
135
|
+
*/
|
|
136
|
+
export type Action = "CREATE" | "UPDATE" | "DELETE";
|
|
137
|
+
/**
|
|
138
|
+
* Type definition for `AWS::CloudFormation::GuardHook.HookTarget`.
|
|
139
|
+
* Hook targets are the destination where hooks will be invoked against.
|
|
140
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-hooktarget.html}
|
|
141
|
+
*/
|
|
142
|
+
export type HookTarget = {
|
|
143
|
+
/**
|
|
144
|
+
* Target actions are the type of operation hooks will be executed at.
|
|
145
|
+
*/
|
|
146
|
+
Action: Action;
|
|
147
|
+
/**
|
|
148
|
+
* Invocation points are the point in provisioning workflow where hooks will be executed.
|
|
149
|
+
*/
|
|
150
|
+
InvocationPoint: InvocationPoint;
|
|
151
|
+
/**
|
|
152
|
+
* Type name of hook target. Hook targets are the destination where hooks will be invoked against.
|
|
153
|
+
* @minLength `1`
|
|
154
|
+
* @maxLength `256`
|
|
155
|
+
* @pattern `^(?!.*\*\?).*$`
|
|
156
|
+
*/
|
|
157
|
+
TargetName: string;
|
|
158
|
+
};
|
|
159
|
+
/**
|
|
160
|
+
* Type definition for `AWS::CloudFormation::GuardHook.InvocationPoint`.
|
|
161
|
+
* Invocation points are the point in provisioning workflow where hooks will be executed.
|
|
162
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-invocationpoint.html}
|
|
163
|
+
*/
|
|
164
|
+
export type InvocationPoint = "PRE_PROVISION";
|
|
165
|
+
/**
|
|
166
|
+
* Type definition for `AWS::CloudFormation::GuardHook.S3Location`.
|
|
167
|
+
* S3 Source Location for the Guard files.
|
|
168
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-s3location.html}
|
|
169
|
+
*/
|
|
170
|
+
export type S3Location = {
|
|
171
|
+
/**
|
|
172
|
+
* S3 uri of Guard files.
|
|
173
|
+
*/
|
|
174
|
+
Uri: string;
|
|
175
|
+
/**
|
|
176
|
+
* S3 object version
|
|
177
|
+
*/
|
|
178
|
+
VersionId?: string;
|
|
179
|
+
};
|
|
180
|
+
/**
|
|
181
|
+
* Type definition for `AWS::CloudFormation::GuardHook.TargetOperation`.
|
|
182
|
+
* Which operations should this Hook run against? Resource changes, stacks or change sets.
|
|
183
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-targetoperation.html}
|
|
184
|
+
*/
|
|
185
|
+
export type TargetOperation = "RESOURCE" | "STACK" | "CHANGE_SET";
|
|
186
|
+
/**
|
|
187
|
+
* Resource type definition for `AWS::CloudFormation::GuardHook`.
|
|
188
|
+
* This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook.
|
|
189
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html}
|
|
190
|
+
*/
|
|
191
|
+
export declare class CloudFormationGuardHook extends $Resource<"AWS::CloudFormation::GuardHook", CloudFormationGuardHookProperties, CloudFormationGuardHookAttributes> {
|
|
192
|
+
static readonly Type = "AWS::CloudFormation::GuardHook";
|
|
193
|
+
constructor(logicalId: string, properties: CloudFormationGuardHookProperties, options?: $ResourceOptions);
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=AWS-CloudFormation-GuardHook.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::CloudFormation::GuardHook`.
|
|
4
|
+
* This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook.
|
|
5
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html}
|
|
6
|
+
*/
|
|
7
|
+
export class CloudFormationGuardHook extends $Resource {
|
|
8
|
+
static Type = "AWS::CloudFormation::GuardHook";
|
|
9
|
+
constructor(logicalId, properties, options) {
|
|
10
|
+
super(logicalId, CloudFormationGuardHook.Type, properties, options);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AWS-CloudFormation-GuardHook.js.map
|
|
@@ -0,0 +1,173 @@
|
|
|
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::CloudFormation::LambdaHook`.
|
|
5
|
+
* This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook.
|
|
6
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html}
|
|
7
|
+
*/
|
|
8
|
+
export type CloudFormationLambdaHookProperties = {
|
|
9
|
+
/**
|
|
10
|
+
* The typename alias for the hook.
|
|
11
|
+
* @pattern `^[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}$`
|
|
12
|
+
*/
|
|
13
|
+
Alias: string;
|
|
14
|
+
/**
|
|
15
|
+
* The execution role ARN assumed by Hooks to invoke Lambda.
|
|
16
|
+
* @maxLength `256`
|
|
17
|
+
* @pattern `arn:.+:iam::[0-9]{12}:role/.+`
|
|
18
|
+
*/
|
|
19
|
+
ExecutionRole: string;
|
|
20
|
+
/**
|
|
21
|
+
* Attribute to specify CloudFormation behavior on hook failure.
|
|
22
|
+
*/
|
|
23
|
+
FailureMode: "FAIL" | "WARN";
|
|
24
|
+
/**
|
|
25
|
+
* Attribute to specify which stacks this hook applies to or should get invoked for
|
|
26
|
+
*/
|
|
27
|
+
HookStatus: "ENABLED" | "DISABLED";
|
|
28
|
+
/**
|
|
29
|
+
* Amazon Resource Name (ARN), Partial ARN, name, version, or alias of the Lambda function to invoke with this hook.
|
|
30
|
+
* @minLength `1`
|
|
31
|
+
* @maxLength `170`
|
|
32
|
+
* @pattern `(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?`
|
|
33
|
+
*/
|
|
34
|
+
LambdaFunction: string;
|
|
35
|
+
/**
|
|
36
|
+
* Filters to allow hooks to target specific stack attributes
|
|
37
|
+
*/
|
|
38
|
+
StackFilters?: {
|
|
39
|
+
/**
|
|
40
|
+
* Attribute to specify the filtering behavior. ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match
|
|
41
|
+
*/
|
|
42
|
+
FilteringCriteria: "ALL" | "ANY";
|
|
43
|
+
/**
|
|
44
|
+
* List of stack names as filters
|
|
45
|
+
*/
|
|
46
|
+
StackNames?: {
|
|
47
|
+
/**
|
|
48
|
+
* List of stack names that the hook is going to be excluded from
|
|
49
|
+
* @minLength `1`
|
|
50
|
+
* @maxLength `50`
|
|
51
|
+
*/
|
|
52
|
+
Exclude?: string[];
|
|
53
|
+
/**
|
|
54
|
+
* List of stack names that the hook is going to target
|
|
55
|
+
* @minLength `1`
|
|
56
|
+
* @maxLength `50`
|
|
57
|
+
*/
|
|
58
|
+
Include?: string[];
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* List of stack roles that are performing the stack operations.
|
|
62
|
+
*/
|
|
63
|
+
StackRoles?: {
|
|
64
|
+
/**
|
|
65
|
+
* List of stack roles that the hook is going to be excluded from
|
|
66
|
+
* @minLength `1`
|
|
67
|
+
* @maxLength `50`
|
|
68
|
+
*/
|
|
69
|
+
Exclude?: string[];
|
|
70
|
+
/**
|
|
71
|
+
* List of stack roles that the hook is going to target
|
|
72
|
+
* @minLength `1`
|
|
73
|
+
* @maxLength `50`
|
|
74
|
+
*/
|
|
75
|
+
Include?: string[];
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* Attribute to specify which targets should invoke the hook
|
|
80
|
+
*/
|
|
81
|
+
TargetFilters?: {
|
|
82
|
+
/**
|
|
83
|
+
* List of actions that the hook is going to target
|
|
84
|
+
* @minLength `1`
|
|
85
|
+
* @maxLength `50`
|
|
86
|
+
*/
|
|
87
|
+
Actions?: Action[];
|
|
88
|
+
/**
|
|
89
|
+
* List of invocation points that the hook is going to target
|
|
90
|
+
* @minLength `1`
|
|
91
|
+
* @maxLength `50`
|
|
92
|
+
*/
|
|
93
|
+
InvocationPoints?: InvocationPoint[];
|
|
94
|
+
/**
|
|
95
|
+
* List of type names that the hook is going to target
|
|
96
|
+
* @minLength `1`
|
|
97
|
+
* @maxLength `50`
|
|
98
|
+
*/
|
|
99
|
+
TargetNames?: string[];
|
|
100
|
+
} | {
|
|
101
|
+
/**
|
|
102
|
+
* List of hook targets
|
|
103
|
+
* @minLength `1`
|
|
104
|
+
* @maxLength `50`
|
|
105
|
+
*/
|
|
106
|
+
Targets: HookTarget[];
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* Which operations should this Hook run against? Resource changes, stacks or change sets.
|
|
110
|
+
*/
|
|
111
|
+
TargetOperations: TargetOperation[];
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* Attribute type definition for `AWS::CloudFormation::LambdaHook`.
|
|
115
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html#aws-resource-cloudformation-lambdahook-return-values}
|
|
116
|
+
*/
|
|
117
|
+
export type CloudFormationLambdaHookAttributes = {
|
|
118
|
+
/**
|
|
119
|
+
* The Amazon Resource Name (ARN) of the activated hook
|
|
120
|
+
* @pattern `^arn:aws[A-Za-z0-9-]{0,64}:cloudformation:[A-Za-z0-9-]{1,64}:([0-9]{12})?:type/hook/.+$`
|
|
121
|
+
*/
|
|
122
|
+
HookArn: string;
|
|
123
|
+
};
|
|
124
|
+
/**
|
|
125
|
+
* Type definition for `AWS::CloudFormation::LambdaHook.Action`.
|
|
126
|
+
* Target actions are the type of operation hooks will be executed at.
|
|
127
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-action.html}
|
|
128
|
+
*/
|
|
129
|
+
export type Action = "CREATE" | "UPDATE" | "DELETE";
|
|
130
|
+
/**
|
|
131
|
+
* Type definition for `AWS::CloudFormation::LambdaHook.HookTarget`.
|
|
132
|
+
* Hook targets are the destination where hooks will be invoked against.
|
|
133
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-hooktarget.html}
|
|
134
|
+
*/
|
|
135
|
+
export type HookTarget = {
|
|
136
|
+
/**
|
|
137
|
+
* Target actions are the type of operation hooks will be executed at.
|
|
138
|
+
*/
|
|
139
|
+
Action: Action;
|
|
140
|
+
/**
|
|
141
|
+
* Invocation points are the point in provisioning workflow where hooks will be executed.
|
|
142
|
+
*/
|
|
143
|
+
InvocationPoint: InvocationPoint;
|
|
144
|
+
/**
|
|
145
|
+
* Type name of hook target. Hook targets are the destination where hooks will be invoked against.
|
|
146
|
+
* @minLength `1`
|
|
147
|
+
* @maxLength `256`
|
|
148
|
+
* @pattern `^(?!.*\*\?).*$`
|
|
149
|
+
*/
|
|
150
|
+
TargetName: string;
|
|
151
|
+
};
|
|
152
|
+
/**
|
|
153
|
+
* Type definition for `AWS::CloudFormation::LambdaHook.InvocationPoint`.
|
|
154
|
+
* Invocation points are the point in provisioning workflow where hooks will be executed.
|
|
155
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-invocationpoint.html}
|
|
156
|
+
*/
|
|
157
|
+
export type InvocationPoint = "PRE_PROVISION";
|
|
158
|
+
/**
|
|
159
|
+
* Type definition for `AWS::CloudFormation::LambdaHook.TargetOperation`.
|
|
160
|
+
* Which operations should this Hook run against? Resource changes, stacks or change sets.
|
|
161
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-targetoperation.html}
|
|
162
|
+
*/
|
|
163
|
+
export type TargetOperation = "RESOURCE" | "STACK" | "CHANGE_SET";
|
|
164
|
+
/**
|
|
165
|
+
* Resource type definition for `AWS::CloudFormation::LambdaHook`.
|
|
166
|
+
* This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook.
|
|
167
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html}
|
|
168
|
+
*/
|
|
169
|
+
export declare class CloudFormationLambdaHook extends $Resource<"AWS::CloudFormation::LambdaHook", CloudFormationLambdaHookProperties, CloudFormationLambdaHookAttributes> {
|
|
170
|
+
static readonly Type = "AWS::CloudFormation::LambdaHook";
|
|
171
|
+
constructor(logicalId: string, properties: CloudFormationLambdaHookProperties, options?: $ResourceOptions);
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=AWS-CloudFormation-LambdaHook.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::CloudFormation::LambdaHook`.
|
|
4
|
+
* This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook.
|
|
5
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html}
|
|
6
|
+
*/
|
|
7
|
+
export class CloudFormationLambdaHook extends $Resource {
|
|
8
|
+
static Type = "AWS::CloudFormation::LambdaHook";
|
|
9
|
+
constructor(logicalId, properties, options) {
|
|
10
|
+
super(logicalId, CloudFormationLambdaHook.Type, properties, options);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AWS-CloudFormation-LambdaHook.js.map
|
|
@@ -25,6 +25,7 @@ export type DynamoDBGlobalTableProperties = {
|
|
|
25
25
|
StreamSpecification?: StreamSpecification;
|
|
26
26
|
TableName?: string;
|
|
27
27
|
TimeToLiveSpecification?: TimeToLiveSpecification;
|
|
28
|
+
WarmThroughput?: WarmThroughput;
|
|
28
29
|
WriteOnDemandThroughputSettings?: WriteOnDemandThroughputSettings;
|
|
29
30
|
WriteProvisionedThroughputSettings?: WriteProvisionedThroughputSettings;
|
|
30
31
|
};
|
|
@@ -91,6 +92,7 @@ export type GlobalSecondaryIndex = {
|
|
|
91
92
|
*/
|
|
92
93
|
KeySchema: KeySchema[];
|
|
93
94
|
Projection: Projection;
|
|
95
|
+
WarmThroughput?: WarmThroughput;
|
|
94
96
|
WriteOnDemandThroughputSettings?: WriteOnDemandThroughputSettings;
|
|
95
97
|
WriteProvisionedThroughputSettings?: WriteProvisionedThroughputSettings;
|
|
96
98
|
};
|
|
@@ -270,6 +272,20 @@ export type TimeToLiveSpecification = {
|
|
|
270
272
|
AttributeName?: string;
|
|
271
273
|
Enabled: boolean;
|
|
272
274
|
};
|
|
275
|
+
/**
|
|
276
|
+
* Type definition for `AWS::DynamoDB::GlobalTable.WarmThroughput`.
|
|
277
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-warmthroughput.html}
|
|
278
|
+
*/
|
|
279
|
+
export type WarmThroughput = {
|
|
280
|
+
/**
|
|
281
|
+
* @min `1`
|
|
282
|
+
*/
|
|
283
|
+
ReadUnitsPerSecond?: number;
|
|
284
|
+
/**
|
|
285
|
+
* @min `1`
|
|
286
|
+
*/
|
|
287
|
+
WriteUnitsPerSecond?: number;
|
|
288
|
+
};
|
|
273
289
|
/**
|
|
274
290
|
* Type definition for `AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings`.
|
|
275
291
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-writeondemandthroughputsettings.html}
|
|
@@ -5,7 +5,7 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
5
5
|
You should be aware of the following behaviors when working with DDB tables:
|
|
6
6
|
+ CFNlong typically creates DDB tables in parallel. However, if your template includes multiple DDB tables with indexes, you must declare dependencies so that the tables are created sequentially. DDBlong limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute).
|
|
7
7
|
|
|
8
|
-
Our guidance is to use the latest schema documented
|
|
8
|
+
Our guidance is to use the latest schema documented for your CFNlong templates. This schema supports the provisioning of all table settings below. When using this schema in your CFNlong templates, please ensure that your Identity and Access Management (IAM) policies are updated with appropriate permissions to allow for the authorization of these setting changes.
|
|
9
9
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html}
|
|
10
10
|
*/
|
|
11
11
|
export type DynamoDBTableProperties = {
|
|
@@ -103,6 +103,7 @@ export type DynamoDBTableProperties = {
|
|
|
103
103
|
For detailed information about the limits in DynamoDB, see [Limits in Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) in the Amazon DynamoDB Developer Guide.
|
|
104
104
|
*/
|
|
105
105
|
TimeToLiveSpecification?: TimeToLiveSpecification;
|
|
106
|
+
WarmThroughput?: WarmThroughput;
|
|
106
107
|
};
|
|
107
108
|
/**
|
|
108
109
|
* Attribute type definition for `AWS::DynamoDB::Table`.
|
|
@@ -192,6 +193,7 @@ export type GlobalSecondaryIndex = {
|
|
|
192
193
|
For current minimum and maximum provisioned throughput values, see [Service, Account, and Table Quotas](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) in the *Amazon DynamoDB Developer Guide*.
|
|
193
194
|
*/
|
|
194
195
|
ProvisionedThroughput?: ProvisionedThroughput;
|
|
196
|
+
WarmThroughput?: WarmThroughput;
|
|
195
197
|
};
|
|
196
198
|
/**
|
|
197
199
|
* Type definition for `AWS::DynamoDB::Table.ImportSourceSpecification`.
|
|
@@ -470,12 +472,26 @@ export type TimeToLiveSpecification = {
|
|
|
470
472
|
*/
|
|
471
473
|
Enabled: boolean;
|
|
472
474
|
};
|
|
475
|
+
/**
|
|
476
|
+
* Type definition for `AWS::DynamoDB::Table.WarmThroughput`.
|
|
477
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-warmthroughput.html}
|
|
478
|
+
*/
|
|
479
|
+
export type WarmThroughput = {
|
|
480
|
+
/**
|
|
481
|
+
* @min `1`
|
|
482
|
+
*/
|
|
483
|
+
ReadUnitsPerSecond?: number;
|
|
484
|
+
/**
|
|
485
|
+
* @min `1`
|
|
486
|
+
*/
|
|
487
|
+
WriteUnitsPerSecond?: number;
|
|
488
|
+
};
|
|
473
489
|
/**
|
|
474
490
|
* The ``AWS::DynamoDB::Table`` resource creates a DDB table. For more information, see [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html) in the *API Reference*.
|
|
475
491
|
You should be aware of the following behaviors when working with DDB tables:
|
|
476
492
|
+ CFNlong typically creates DDB tables in parallel. However, if your template includes multiple DDB tables with indexes, you must declare dependencies so that the tables are created sequentially. DDBlong limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute).
|
|
477
493
|
|
|
478
|
-
Our guidance is to use the latest schema documented
|
|
494
|
+
Our guidance is to use the latest schema documented for your CFNlong templates. This schema supports the provisioning of all table settings below. When using this schema in your CFNlong templates, please ensure that your Identity and Access Management (IAM) policies are updated with appropriate permissions to allow for the authorization of these setting changes.
|
|
479
495
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html}
|
|
480
496
|
*/
|
|
481
497
|
export declare class DynamoDBTable extends $Resource<"AWS::DynamoDB::Table", DynamoDBTableProperties, DynamoDBTableAttributes> {
|
|
@@ -4,7 +4,7 @@ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/re
|
|
|
4
4
|
You should be aware of the following behaviors when working with DDB tables:
|
|
5
5
|
+ CFNlong typically creates DDB tables in parallel. However, if your template includes multiple DDB tables with indexes, you must declare dependencies so that the tables are created sequentially. DDBlong limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute).
|
|
6
6
|
|
|
7
|
-
Our guidance is to use the latest schema documented
|
|
7
|
+
Our guidance is to use the latest schema documented for your CFNlong templates. This schema supports the provisioning of all table settings below. When using this schema in your CFNlong templates, please ensure that your Identity and Access Management (IAM) policies are updated with appropriate permissions to allow for the authorization of these setting changes.
|
|
8
8
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html}
|
|
9
9
|
*/
|
|
10
10
|
export class DynamoDBTable extends $Resource {
|
|
@@ -87,7 +87,7 @@ export type EncryptionConfiguration = {
|
|
|
87
87
|
*/
|
|
88
88
|
EncryptionType: EncryptionType;
|
|
89
89
|
/**
|
|
90
|
-
* If you use the KMS encryption type, specify the CMK to use for encryption. The alias, key ID, or full ARN of the CMK can be specified. The key must exist in the same Region as the repository. If no key is specified, the default AWS managed CMK for Amazon ECR will be used.
|
|
90
|
+
* If you use the KMS or KMS_DSSE encryption type, specify the CMK to use for encryption. The alias, key ID, or full ARN of the CMK can be specified. The key must exist in the same Region as the repository. If no key is specified, the default AWS managed CMK for Amazon ECR will be used.
|
|
91
91
|
* @minLength `1`
|
|
92
92
|
* @maxLength `2048`
|
|
93
93
|
*/
|
|
@@ -98,7 +98,7 @@ export type EncryptionConfiguration = {
|
|
|
98
98
|
* The encryption type to use.
|
|
99
99
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repositorycreationtemplate-encryptiontype.html}
|
|
100
100
|
*/
|
|
101
|
-
export type EncryptionType = "AES256" | "KMS";
|
|
101
|
+
export type EncryptionType = "AES256" | "KMS" | "KMS_DSSE";
|
|
102
102
|
/**
|
|
103
103
|
* Type definition for `AWS::ECR::RepositoryCreationTemplate.Tag`.
|
|
104
104
|
* An array of key-value pairs to apply to this resource.
|