Skip to content

Commit fc32331

Browse files
authored
Merge pull request #390 from awslabs/bump/1.123.0
chore(release): 1.123.0
2 parents 18b2640 + 4dea6de commit fc32331

19 files changed

+1147
-93
lines changed

CHANGELOG.md

+8
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5+
## [1.123.0](https://github.com/awslabs/aws-solutions-constructs/compare/v1.122.0...v1.123.0) (2021-09-21)
6+
7+
* Upgraded all patterns to CDK v1.123.0
8+
9+
### Features
10+
11+
* **aws-iot-kinesisstreams:** implement new construct ([#383](https://github.com/awslabs/aws-solutions-constructs/issues/383)) ([9d2e5ec](https://github.com/awslabs/aws-solutions-constructs/commit/9d2e5ec2db2ce70d0498bbd133eaf4ed0c922157))
12+
513
## [1.122.0](https://github.com/awslabs/aws-solutions-constructs/compare/v1.121.0...v1.122.0) (2021-09-20)
614

715
* Upgraded all patterns to CDK v1.122.0

DESIGN_GUIDELINES.md

+79-92
Original file line numberDiff line numberDiff line change
@@ -80,26 +80,6 @@ This version of the document also lists what Constructs currently violate these
8080
Existing Inconsistencies would not be published, that’s for our internal use – only the Required Properties and Attributes on Props would be published as requirements (along with specific notes).
8181

8282

83-
84-
## S3
85-
**Required Attributes on Props**
86-
87-
| Name | Type | Notes |
88-
| --- | --- | --- |
89-
| existingBucketObj? | s3.Bucket | Either this or bucketProps must be provided |
90-
| bucketProps? | s3.BucketProps | |
91-
| s3EventTypes? | s3.EventType | Only required when construct responds to S3 events |
92-
| s3EventFilters? | s3.NotificationKeyFilter |Only required when construct responds to S3 events |
93-
94-
95-
**Required Construct Properties**
96-
97-
| Name | Type | Notes |
98-
| --- | --- | --- |
99-
| s3Bucket | s3.Bucket ||
100-
| s3LoggingBucket | s3.Bucket ||
101-
102-
10383
## API Gateway
10484
**Required Attributes on Props**
10585

@@ -118,155 +98,146 @@ Existing Inconsistencies would not be published, that’s for our internal use
11898
| apiGatewayLogGroup | logs.LogGroup ||
11999
| apiGatewayRole | iam.Role ||
120100

121-
122-
## WAF WebACL
101+
## CloudFront
123102
**Required Attributes on Props**
124103

125104
| Name | Type | Notes |
126105
| --- | --- | --- |
127-
| existingWebaclObj? | wafv2.CfnWebACL ||
128-
| webaclProps? | wafv2.CfnWebACLProps ||
129-
106+
| cloudFrontDistributionProps? | cloudfront.CloudFront.WebDistributionProps ||
107+
| insertHttpSecurityHeaders? | boolean ||
130108

131109
**Required Construct Properties**
132110

133111
| Name | Type | Notes |
134112
| --- | --- | --- |
135-
| webacl | wafv2.CfnWebACL ||
113+
| cloudFrontLoggingBucket? s3.Bucket ||
114+
| cloudFrontWebDistribution cloudfront.CloudrontWebDistribution ||
136115

137-
## IoT
116+
## DynamoDB
138117
**Required Attributes on Props**
139118

140119
| Name | Type | Notes |
141120
| --- | --- | --- |
142-
| iotEndpoint | string | When IoT is *downstream* (e.g. – aws-apigateway-iot) |
143-
| iotTopicRuleProps | iot.CfnTopicRuleProps | When iot is *upstream* (eg – aws-iot-lambda) |
121+
| dynamoTableProps? | dynamodb.TableProps ||
122+
| existingTableObj? | dynamodb.Table ||
123+
| tablePermissions? | string | Only where DynamoDB is a data store being accessed by the construct|
124+
| dynamoEventSourceProps? | aws-lambda-event-sources.DynamoEventSourceProps | Only where DynamoDB is invoking other services (dynamodb streams) |
144125

145126
**Required Construct Properties**
146127

147128
| Name | Type | Notes |
148129
| --- | --- | --- |
149-
| iotActionsRole | iam.Role | For upstream IoT|
130+
| dynamoTable | dynamodb.Table ||
150131

151-
## Kinesis Streams
132+
## ElasticSearch
152133
**Required Attributes on Props**
153134

154135
| Name | Type | Notes |
155136
| --- | --- | --- |
156-
| existingStreamObj? | kinesis.Stream | |
157-
| kinesisStreamProps? | kinesis.StreamProps ||
137+
| esDomainProps? | elasticsearch.CfnDomainProps ||
138+
| domainName | string ||
158139

159140

160141
**Required Construct Properties**
161142

162143
| Name | Type | Notes |
163144
| --- | --- | --- |
164-
| kinesisStream | kinesis.Stream ||
165-
| kinesisStreamRole | iam.Role | Only when Kinesis is upstream (because then the role is important to the construct) |
166-
145+
| elasticsearchDomain | elasticsearch.CfnDomain ||
146+
| elasticsearchDomainRole | iam.Role ||
167147

168-
## Lambda
148+
## Eventbridge
169149
**Required Attributes on Props**
170150

171151
| Name | Type | Notes |
172152
| --- | --- | --- |
173-
| existingLambdaObj? | lambda.Function ||
174-
| lambdaFunctionProps? | lambda.FunctionProps ||
175-
153+
| eventRuleProps | events.RuleProps ||
154+
| existingEVentBusInterface? | events.IEventBus ||
155+
| eventBusProps? | events.EventBusProps ||
176156

177157
**Required Construct Properties**
178158

179159
| Name | Type | Notes |
180160
| --- | --- | --- |
181-
| lambdaFunction | lambda.Function ||
161+
| eventsRule | events.Rule ||
162+
| eventBus? | events.IEventBus | Only populated for non-default Event Buses.|
182163

183-
## SQS
164+
165+
## Firehose
184166
**Required Attributes on Props**
185167

186168
| Name | Type | Notes |
187169
| --- | --- | --- |
188-
| queueProps? | sqs.QueueProps ||
189-
| existingQueueObj? | sqs.Qeue ||
190-
| deployDeadLetterQueue? | Boolean ||
191-
| deadLetterQueueProps? | sqs.QueueProps ||
192-
| maxReceiveCount | number ||
193-
| enableQueuePurging | boolean | This is only on 2 constructs, docs talk about a Lambda function role|
194-
| encryptionKey? | kms.Key | Sending messages from an AWS service to an encrypted queue [requires a Customer Master key](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-key-management.html#compatibility-with-aws-services). Those constructs require these properties. |
195-
170+
| kinesisFirehoseProps? | aws-kinesisfirehose.CfnDeliveryStreamProps ||
196171

197172
**Required Construct Properties**
198173

199174
| Name | Type | Notes |
200175
| --- | --- | --- |
201-
| sqsQueue | sqs.Queue ||
202-
| deadLetterQueue? | sqs.Queue ||
203-
| encryptionKey | kms.Key | Only for service to SQS constructs that require a non-default CMK. |
204-
176+
| kinesisFirehose | kinesisfirehose.CfnDeliveryStream ||
177+
| kinesisFirehoseRole | iam.Role ||
178+
| kinesisFirehoseLogGroup | logs.LogGroup ||
205179

206-
## CloudFront
180+
## IoT
207181
**Required Attributes on Props**
208182

209183
| Name | Type | Notes |
210184
| --- | --- | --- |
211-
| cloudFrontDistributionProps? | cloudfront.CloudFront.WebDistributionProps ||
212-
| insertHttpSecurityHeaders? | boolean ||
213-
185+
| iotEndpoint | string | When IoT is *downstream* (e.g. – aws-apigateway-iot) |
186+
| iotTopicRuleProps | iot.CfnTopicRuleProps | When iot is *upstream* (eg – aws-iot-lambda) |
214187

215188
**Required Construct Properties**
216189

217190
| Name | Type | Notes |
218191
| --- | --- | --- |
219-
| cloudFrontLoggingBucket? s3.Bucket ||
220-
| cloudFrontWebDistribution cloudfront.CloudrontWebDistribution ||
192+
| iotActionsRole | iam.Role | For upstream IoT|
193+
| iotTopicRule | iot.CfnTopicRule | When iot is upstream |
221194

222-
## DynamoDB
195+
## Kinesis Streams
223196
**Required Attributes on Props**
224197

225198
| Name | Type | Notes |
226199
| --- | --- | --- |
227-
| dynamoTableProps? | dynamodb.TableProps ||
228-
| existingTableObj? | dynamodb.Table ||
229-
| tablePermissions? | string | Only where DynamoDB is a data store being accessed by the construct|
230-
| dynamoEventSourceProps? | aws-lambda-event-sources.DynamoEventSourceProps | Only where DynamoDB is invoking other services (dynamodb streams) |
200+
| existingStreamObj? | kinesis.Stream | |
201+
| kinesisStreamProps? | kinesis.StreamProps ||
202+
|createCloudWatchAlarms|`boolean`| |
231203

232204
**Required Construct Properties**
233205

234206
| Name | Type | Notes |
235207
| --- | --- | --- |
236-
| dynamoTable | dynamodb.Table ||
208+
| kinesisStream | kinesis.Stream ||
209+
| kinesisStreamRole | iam.Role | Only when Kinesis is upstream (because then the role is important to the construct) |
237210

238-
## Events Rules
211+
## Lambda
239212
**Required Attributes on Props**
240213

241214
| Name | Type | Notes |
242215
| --- | --- | --- |
243-
| eventRuleProps | events.RuleProps ||
244-
| existingEVentBusInterface? | events.IEventBus ||
245-
| eventBusProps? | events.EventBusProps ||
216+
| existingLambdaObj? | lambda.Function ||
217+
| lambdaFunctionProps? | lambda.FunctionProps ||
246218

247219
**Required Construct Properties**
248220

249221
| Name | Type | Notes |
250222
| --- | --- | --- |
251-
| eventsRule | events.Rule ||
252-
| eventBus? | events.IEventBus | Only populated for non-default Event Buses.|
253-
223+
| lambdaFunction | lambda.Function ||
254224

255-
## Firehose
225+
## S3
256226
**Required Attributes on Props**
257227

258228
| Name | Type | Notes |
259229
| --- | --- | --- |
260-
| kinesisFirehoseProps? | aws-kinesisfirehose.CfnDeliveryStreamProps ||
230+
| existingBucketObj? | s3.Bucket | Either this or bucketProps must be provided |
231+
| bucketProps? | s3.BucketProps | |
232+
| s3EventTypes? | s3.EventType | Only required when construct responds to S3 events |
233+
| s3EventFilters? | s3.NotificationKeyFilter |Only required when construct responds to S3 events |
261234

262235
**Required Construct Properties**
263236

264237
| Name | Type | Notes |
265238
| --- | --- | --- |
266-
| kinesisFirehose | kinesisfirehose.CfnDeliveryStream ||
267-
| kinesisFirehoseRole | iam.Role ||
268-
| kinesisFirehoseLogGroup | logs.LogGroup ||
269-
239+
| s3Bucket | s3.Bucket ||
240+
| s3LoggingBucket | s3.Bucket ||
270241

271242
## SNS
272243
**Required Attributes on Props**
@@ -286,6 +257,26 @@ Existing Inconsistencies would not be published, that’s for our internal use
286257
| snsTopic | sns.Topic | |
287258
| encryptionKey | kms.Key | Only required when AWS service is writing to the SNS topic (similar to SQS) |
288259

260+
## SQS
261+
**Required Attributes on Props**
262+
263+
| Name | Type | Notes |
264+
| --- | --- | --- |
265+
| queueProps? | sqs.QueueProps ||
266+
| existingQueueObj? | sqs.Qeue ||
267+
| deployDeadLetterQueue? | Boolean ||
268+
| deadLetterQueueProps? | sqs.QueueProps ||
269+
| maxReceiveCount | number ||
270+
| enableQueuePurging | boolean | This is only on 2 constructs, docs talk about a Lambda function role|
271+
| encryptionKey? | kms.Key | Sending messages from an AWS service to an encrypted queue [requires a Customer Master key](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-key-management.html#compatibility-with-aws-services). Those constructs require these properties. |
272+
273+
**Required Construct Properties**
274+
275+
| Name | Type | Notes |
276+
| --- | --- | --- |
277+
| sqsQueue | sqs.Queue ||
278+
| deadLetterQueue? | sqs.Queue ||
279+
| encryptionKey | kms.Key | Only for service to SQS constructs that require a non-default CMK. |
289280

290281
## Step Functions
291282
**Required Attributes on Props**
@@ -295,7 +286,6 @@ Existing Inconsistencies would not be published, that’s for our internal use
295286
| stateMachineProps | sfn.StateMachineProps ||
296287
| createCloudWatchAlarms | boolean | |
297288

298-
299289
**Required Construct Properties**
300290

301291
| Name | Type | Notes |
@@ -304,34 +294,31 @@ Existing Inconsistencies would not be published, that’s for our internal use
304294
| stateMachineLoggingGroup | logs.LogGroup ||
305295
| cloudwatchAlarms? | cloudwatch.Alarm[] ||
306296

307-
308-
## ElasticSearch
297+
## VPC
309298
**Required Attributes on Props**
310299

311300
| Name | Type | Notes |
312301
| --- | --- | --- |
313-
| esDomainProps? | elasticsearch.CfnDomainProps ||
314-
| domainName | string ||
315-
302+
| existingVpc? | ec2.IVpc | |
303+
| deployVpc? | boolean| |
304+
| vpcProps? | ec2.VpcProps| |
316305

317306
**Required Construct Properties**
318307

319308
| Name | Type | Notes |
320309
| --- | --- | --- |
321-
| elasticsearchDomain | elasticsearch.CfnDomain ||
322-
| elasticsearchDomainRole | iam.Role ||
310+
| vpc? | ec2.IVpc | |
323311

324-
## VPC
312+
## WAF WebACL
325313
**Required Attributes on Props**
326314

327315
| Name | Type | Notes |
328316
| --- | --- | --- |
329-
| existingVpc? | ec2.IVpc | |
330-
| deployVpc? | boolean| |
331-
| vpcProps? | ec2.VpcProps| |
317+
| existingWebaclObj? | wafv2.CfnWebACL ||
318+
| webaclProps? | wafv2.CfnWebACLProps ||
332319

333320
**Required Construct Properties**
334321

335322
| Name | Type | Notes |
336323
| --- | --- | --- |
337-
| vpc? | ec2.IVpc | |
324+
| webacl | wafv2.CfnWebACL ||

source/lerna.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@
66
"./patterns/@aws-solutions-constructs/*"
77
],
88
"rejectCycles": "true",
9-
"version": "1.122.0"
9+
"version": "1.123.0"
1010
}

source/patterns/@aws-solutions-constructs/aws-eventbridge-kinesisstreams/README.md

+1
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ _Parameters_
7070
|eventsRule|[`events.Rule`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html)|Returns an instance of events.Rule created by the construct.|
7171
|kinesisStream|[`kinesis.Stream`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)|Returns an instance of the Kinesis stream created by the pattern.|
7272
|eventsRole?|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|Returns an instance of the iam.Role created by the construct for events rule.|
73+
|cloudwatchAlarms?|[`cloudwatch.Alarm[]`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)|Returns an instance of the cloudwatch.Alarm[] created by the construct.|
7374

7475
## Default settings
7576

source/patterns/@aws-solutions-constructs/aws-events-rule-kinesisstreams/README.md

+1
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ _Parameters_
7272
|eventsRule|[`events.Rule`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html)|Returns an instance of events.Rule created by the construct.|
7373
|kinesisStream|[`kinesis.Stream`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)|Returns an instance of the Kinesis stream created by the pattern.|
7474
|eventsRole?|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|Returns an instance of the iam.Role created by the construct for events rule.|
75+
|cloudwatchAlarms?|[`cloudwatch.Alarm[]`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)|Returns an instance of the cloudwatch.Alarm[] created by the construct.|
7576

7677
## Default settings
7778

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
lib/*.js
2+
test/*.js
3+
*.d.ts
4+
coverage
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
lib/*.js
2+
test/*.js
3+
*.js.map
4+
*.d.ts
5+
node_modules
6+
*.generated.ts
7+
dist
8+
.jsii
9+
10+
.LAST_BUILD
11+
.nyc_output
12+
coverage
13+
.nycrc
14+
.LAST_PACKAGE
15+
*.snk
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Exclude typescript source and config
2+
*.ts
3+
tsconfig.json
4+
coverage
5+
.nyc_output
6+
*.tgz
7+
*.snk
8+
*.tsbuildinfo
9+
10+
# Include javascript files and typescript declarations
11+
!*.js
12+
!*.d.ts
13+
14+
# Exclude jsii outdir
15+
dist
16+
17+
# Include .jsii
18+
!.jsii
19+
20+
# Include .jsii
21+
!.jsii

0 commit comments

Comments
 (0)