aws-solutions-constructs.aws-sns-lambda 2.85.2__tar.gz → 2.85.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (20) hide show
  1. aws_solutions_constructs_aws_sns_lambda-2.85.4/PKG-INFO +28 -0
  2. aws_solutions_constructs_aws_sns_lambda-2.85.4/README.md +1 -0
  3. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/setup.py +3 -3
  4. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/src/aws_solutions_constructs/aws_sns_lambda/__init__.py +1 -129
  5. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/src/aws_solutions_constructs/aws_sns_lambda/_jsii/__init__.py +2 -2
  6. aws_solutions_constructs_aws_sns_lambda-2.85.4/src/aws_solutions_constructs/aws_sns_lambda/_jsii/aws-sns-lambda@2.85.4.jsii.tgz +0 -0
  7. aws_solutions_constructs_aws_sns_lambda-2.85.4/src/aws_solutions_constructs.aws_sns_lambda.egg-info/PKG-INFO +28 -0
  8. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/src/aws_solutions_constructs.aws_sns_lambda.egg-info/SOURCES.txt +1 -1
  9. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/src/aws_solutions_constructs.aws_sns_lambda.egg-info/requires.txt +1 -1
  10. aws_solutions_constructs_aws_sns_lambda-2.85.2/PKG-INFO +0 -156
  11. aws_solutions_constructs_aws_sns_lambda-2.85.2/README.md +0 -129
  12. aws_solutions_constructs_aws_sns_lambda-2.85.2/src/aws_solutions_constructs/aws_sns_lambda/_jsii/aws-sns-lambda@2.85.2.jsii.tgz +0 -0
  13. aws_solutions_constructs_aws_sns_lambda-2.85.2/src/aws_solutions_constructs.aws_sns_lambda.egg-info/PKG-INFO +0 -156
  14. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/LICENSE +0 -0
  15. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/MANIFEST.in +0 -0
  16. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/pyproject.toml +0 -0
  17. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/setup.cfg +0 -0
  18. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/src/aws_solutions_constructs/aws_sns_lambda/py.typed +0 -0
  19. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/src/aws_solutions_constructs.aws_sns_lambda.egg-info/dependency_links.txt +0 -0
  20. {aws_solutions_constructs_aws_sns_lambda-2.85.2 → aws_solutions_constructs_aws_sns_lambda-2.85.4}/src/aws_solutions_constructs.aws_sns_lambda.egg-info/top_level.txt +0 -0
@@ -0,0 +1,28 @@
1
+ Metadata-Version: 2.1
2
+ Name: aws-solutions-constructs.aws-sns-lambda
3
+ Version: 2.85.4
4
+ Summary: CDK Constructs for AWS SNS to AWS Lambda integration
5
+ Home-page: https://github.com/awslabs/aws-solutions-constructs.git
6
+ Author: Amazon Web Services
7
+ License: Apache-2.0
8
+ Project-URL: Source, https://github.com/awslabs/aws-solutions-constructs.git
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Operating System :: OS Independent
11
+ Classifier: Programming Language :: JavaScript
12
+ Classifier: Programming Language :: Python :: 3 :: Only
13
+ Classifier: Programming Language :: Python :: 3.9
14
+ Classifier: Programming Language :: Python :: 3.10
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Typing :: Typed
17
+ Classifier: License :: OSI Approved
18
+ Requires-Python: ~=3.9
19
+ Description-Content-Type: text/markdown
20
+ License-File: LICENSE
21
+ Requires-Dist: aws-cdk-lib<3.0.0,>=2.193.0
22
+ Requires-Dist: aws-solutions-constructs.core==2.85.4
23
+ Requires-Dist: constructs<11.0.0,>=10.0.0
24
+ Requires-Dist: jsii<2.0.0,>=1.111.0
25
+ Requires-Dist: publication>=0.0.3
26
+ Requires-Dist: typeguard<4.3.0,>=2.13.3
27
+
28
+ Documentation for this pattern can be found [here](https://github.com/awslabs/aws-solutions-constructs/blob/main/source/patterns/%40aws-solutions-constructs/aws-sns-lambda/README.adoc)
@@ -0,0 +1 @@
1
+ Documentation for this pattern can be found [here](https://github.com/awslabs/aws-solutions-constructs/blob/main/source/patterns/%40aws-solutions-constructs/aws-sns-lambda/README.adoc)
@@ -5,7 +5,7 @@ kwargs = json.loads(
5
5
  """
6
6
  {
7
7
  "name": "aws-solutions-constructs.aws-sns-lambda",
8
- "version": "2.85.2",
8
+ "version": "2.85.4",
9
9
  "description": "CDK Constructs for AWS SNS to AWS Lambda integration",
10
10
  "license": "Apache-2.0",
11
11
  "url": "https://github.com/awslabs/aws-solutions-constructs.git",
@@ -26,7 +26,7 @@ kwargs = json.loads(
26
26
  ],
27
27
  "package_data": {
28
28
  "aws_solutions_constructs.aws_sns_lambda._jsii": [
29
- "aws-sns-lambda@2.85.2.jsii.tgz"
29
+ "aws-sns-lambda@2.85.4.jsii.tgz"
30
30
  ],
31
31
  "aws_solutions_constructs.aws_sns_lambda": [
32
32
  "py.typed"
@@ -35,7 +35,7 @@ kwargs = json.loads(
35
35
  "python_requires": "~=3.9",
36
36
  "install_requires": [
37
37
  "aws-cdk-lib>=2.193.0, <3.0.0",
38
- "aws-solutions-constructs.core==2.85.2",
38
+ "aws-solutions-constructs.core==2.85.4",
39
39
  "constructs>=10.0.0, <11.0.0",
40
40
  "jsii>=1.111.0, <2.0.0",
41
41
  "publication>=0.0.3",
@@ -1,133 +1,5 @@
1
1
  r'''
2
- # aws-sns-lambda module
3
-
4
- <!--BEGIN STABILITY BANNER-->---
5
-
6
-
7
- ![Stability: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)
8
-
9
- ---
10
- <!--END STABILITY BANNER-->
11
-
12
- | **Reference Documentation**:| <span style="font-weight: normal">https://docs.aws.amazon.com/solutions/latest/constructs/</span>|
13
- |:-------------|:-------------|
14
-
15
- <div style="height:8px"></div>
16
-
17
- | **Language** | **Package** |
18
- |:-------------|-----------------|
19
- |![Python Logo](https://docs.aws.amazon.com/cdk/api/latest/img/python32.png) Python|`aws_solutions_constructs.aws_sns_lambda`|
20
- |![Typescript Logo](https://docs.aws.amazon.com/cdk/api/latest/img/typescript32.png) Typescript|`@aws-solutions-constructs/aws-sns-lambda`|
21
- |![Java Logo](https://docs.aws.amazon.com/cdk/api/latest/img/java32.png) Java|`software.amazon.awsconstructs.services.snslambda`|
22
-
23
- ## Overview
24
-
25
- This AWS Solutions Construct implements an Amazon SNS connected to an AWS Lambda function.
26
-
27
- Here is a minimal deployable pattern definition:
28
-
29
- Typescript
30
-
31
- ```python
32
- import { Construct } from 'constructs';
33
- import { Stack, StackProps } from 'aws-cdk-lib';
34
- import { SnsToLambda, SnsToLambdaProps } from "@aws-solutions-constructs/aws-sns-lambda";
35
- import * as lambda from 'aws-cdk-lib/aws-lambda';
36
-
37
- new SnsToLambda(this, 'test-sns-lambda', {
38
- lambdaFunctionProps: {
39
- runtime: lambda.Runtime.NODEJS_20_X,
40
- handler: 'index.handler',
41
- code: lambda.Code.fromAsset(`lambda`)
42
- }
43
- });
44
- ```
45
-
46
- Python
47
-
48
- ```python
49
- from aws_solutions_constructs.aws_sns_lambda import SnsToLambda
50
- from aws_cdk import (
51
- aws_lambda as _lambda,
52
- Stack
53
- )
54
- from constructs import Construct
55
-
56
- SnsToLambda(self, 'test_sns_lambda',
57
- lambda_function_props=_lambda.FunctionProps(
58
- code=_lambda.Code.from_asset('lambda'),
59
- runtime=_lambda.Runtime.PYTHON_3_11,
60
- handler='index.handler'
61
- )
62
- )
63
- ```
64
-
65
- Java
66
-
67
- ```java
68
- import software.constructs.Construct;
69
-
70
- import software.amazon.awscdk.Stack;
71
- import software.amazon.awscdk.StackProps;
72
- import software.amazon.awscdk.services.lambda.*;
73
- import software.amazon.awscdk.services.lambda.Runtime;
74
- import software.amazon.awsconstructs.services.snslambda.*;
75
-
76
- new SnsToLambda(this, "test-lambda-sqs-stack", new SnsToLambdaProps.Builder()
77
- .lambdaFunctionProps(new FunctionProps.Builder()
78
- .runtime(Runtime.NODEJS_20_X)
79
- .code(Code.fromAsset("lambda"))
80
- .handler("index.handler")
81
- .build())
82
- .build());
83
- ```
84
-
85
- ## Pattern Construct Props
86
-
87
- | **Name** | **Type** | **Description** |
88
- |:-------------|:----------------|-----------------|
89
- |existingLambdaObj?|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of Lambda Function object, providing both this and `lambdaFunctionProps` will cause an error.|
90
- |lambdaFunctionProps?|[`lambda.FunctionProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.FunctionProps.html)|User provided props to override the default props for the Lambda function.|
91
- |existingTopicObj?|[`sns.Topic`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of SNS Topic object, providing both this and `topicProps` will cause an error.|
92
- |topicProps?|[`sns.TopicProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns.TopicProps.html)|Optional user provided properties to override the default properties for the SNS topic.|
93
- |enableEncryptionWithCustomerManagedKey?|`boolean`|If no key is provided, this flag determines whether the SNS Topic is encrypted with a new CMK or an AWS managed key. This flag is ignored if any of the following are defined: topicProps.masterKey, encryptionKey or encryptionKeyProps.|
94
- |encryptionKey?|[`kms.Key`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_kms.Key.html)|An optional, imported encryption key to encrypt the SNS Topic with.|
95
- |encryptionKeyProps?|[`kms.KeyProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_kms.Key.html#construct-props)|Optional user provided properties to override the default properties for the KMS encryption key used to encrypt the SNS Topic with.|
96
-
97
- ## Pattern Properties
98
-
99
- | **Name** | **Type** | **Description** |
100
- |:-------------|:----------------|-----------------|
101
- |lambdaFunction|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Returns an instance of the Lambda function created by the pattern.|
102
- |snsTopic|[`sns.Topic`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns.Topic.html)|Returns an instance of the SNS topic created by the pattern.|
103
-
104
- ## Default settings
105
-
106
- Out of the box implementation of the Construct without any override will set the following defaults:
107
-
108
- ### Amazon SNS Topic
109
-
110
- * Configure least privilege access permissions for SNS Topic
111
- * Enable server-side encryption for SNS Topic using AWS managed KMS Key
112
- * Enforce encryption of data in transit
113
-
114
- ### AWS Lambda Function
115
-
116
- * Configure limited privilege access IAM role for Lambda function
117
- * Enable reusing connections with Keep-Alive for NodeJs Lambda function
118
- * Enable X-Ray Tracing
119
- * Set Environment Variables
120
-
121
- * AWS_NODEJS_CONNECTION_REUSE_ENABLED (for Node 10.x and higher functions)
122
-
123
- ## Architecture
124
-
125
- ![Architecture Diagram](architecture.png)
126
-
127
- ---
128
-
129
-
130
- © Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ Documentation for this pattern can be found [here](https://github.com/awslabs/aws-solutions-constructs/blob/main/source/patterns/%40aws-solutions-constructs/aws-sns-lambda/README.adoc)
131
3
  '''
132
4
  from pkgutil import extend_path
133
5
  __path__ = extend_path(__path__, __name__)
@@ -34,9 +34,9 @@ import constructs._jsii
34
34
 
35
35
  __jsii_assembly__ = jsii.JSIIAssembly.load(
36
36
  "@aws-solutions-constructs/aws-sns-lambda",
37
- "2.85.2",
37
+ "2.85.4",
38
38
  __name__[0:-6],
39
- "aws-sns-lambda@2.85.2.jsii.tgz",
39
+ "aws-sns-lambda@2.85.4.jsii.tgz",
40
40
  )
41
41
 
42
42
  __all__ = [
@@ -0,0 +1,28 @@
1
+ Metadata-Version: 2.1
2
+ Name: aws-solutions-constructs.aws-sns-lambda
3
+ Version: 2.85.4
4
+ Summary: CDK Constructs for AWS SNS to AWS Lambda integration
5
+ Home-page: https://github.com/awslabs/aws-solutions-constructs.git
6
+ Author: Amazon Web Services
7
+ License: Apache-2.0
8
+ Project-URL: Source, https://github.com/awslabs/aws-solutions-constructs.git
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Operating System :: OS Independent
11
+ Classifier: Programming Language :: JavaScript
12
+ Classifier: Programming Language :: Python :: 3 :: Only
13
+ Classifier: Programming Language :: Python :: 3.9
14
+ Classifier: Programming Language :: Python :: 3.10
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Typing :: Typed
17
+ Classifier: License :: OSI Approved
18
+ Requires-Python: ~=3.9
19
+ Description-Content-Type: text/markdown
20
+ License-File: LICENSE
21
+ Requires-Dist: aws-cdk-lib<3.0.0,>=2.193.0
22
+ Requires-Dist: aws-solutions-constructs.core==2.85.4
23
+ Requires-Dist: constructs<11.0.0,>=10.0.0
24
+ Requires-Dist: jsii<2.0.0,>=1.111.0
25
+ Requires-Dist: publication>=0.0.3
26
+ Requires-Dist: typeguard<4.3.0,>=2.13.3
27
+
28
+ Documentation for this pattern can be found [here](https://github.com/awslabs/aws-solutions-constructs/blob/main/source/patterns/%40aws-solutions-constructs/aws-sns-lambda/README.adoc)
@@ -11,4 +11,4 @@ src/aws_solutions_constructs.aws_sns_lambda.egg-info/top_level.txt
11
11
  src/aws_solutions_constructs/aws_sns_lambda/__init__.py
12
12
  src/aws_solutions_constructs/aws_sns_lambda/py.typed
13
13
  src/aws_solutions_constructs/aws_sns_lambda/_jsii/__init__.py
14
- src/aws_solutions_constructs/aws_sns_lambda/_jsii/aws-sns-lambda@2.85.2.jsii.tgz
14
+ src/aws_solutions_constructs/aws_sns_lambda/_jsii/aws-sns-lambda@2.85.4.jsii.tgz
@@ -1,5 +1,5 @@
1
1
  aws-cdk-lib<3.0.0,>=2.193.0
2
- aws-solutions-constructs.core==2.85.2
2
+ aws-solutions-constructs.core==2.85.4
3
3
  constructs<11.0.0,>=10.0.0
4
4
  jsii<2.0.0,>=1.111.0
5
5
  publication>=0.0.3
@@ -1,156 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: aws-solutions-constructs.aws-sns-lambda
3
- Version: 2.85.2
4
- Summary: CDK Constructs for AWS SNS to AWS Lambda integration
5
- Home-page: https://github.com/awslabs/aws-solutions-constructs.git
6
- Author: Amazon Web Services
7
- License: Apache-2.0
8
- Project-URL: Source, https://github.com/awslabs/aws-solutions-constructs.git
9
- Classifier: Intended Audience :: Developers
10
- Classifier: Operating System :: OS Independent
11
- Classifier: Programming Language :: JavaScript
12
- Classifier: Programming Language :: Python :: 3 :: Only
13
- Classifier: Programming Language :: Python :: 3.9
14
- Classifier: Programming Language :: Python :: 3.10
15
- Classifier: Programming Language :: Python :: 3.11
16
- Classifier: Typing :: Typed
17
- Classifier: License :: OSI Approved
18
- Requires-Python: ~=3.9
19
- Description-Content-Type: text/markdown
20
- License-File: LICENSE
21
- Requires-Dist: aws-cdk-lib<3.0.0,>=2.193.0
22
- Requires-Dist: aws-solutions-constructs.core==2.85.2
23
- Requires-Dist: constructs<11.0.0,>=10.0.0
24
- Requires-Dist: jsii<2.0.0,>=1.111.0
25
- Requires-Dist: publication>=0.0.3
26
- Requires-Dist: typeguard<4.3.0,>=2.13.3
27
-
28
- # aws-sns-lambda module
29
-
30
- <!--BEGIN STABILITY BANNER-->---
31
-
32
-
33
- ![Stability: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)
34
-
35
- ---
36
- <!--END STABILITY BANNER-->
37
-
38
- | **Reference Documentation**:| <span style="font-weight: normal">https://docs.aws.amazon.com/solutions/latest/constructs/</span>|
39
- |:-------------|:-------------|
40
-
41
- <div style="height:8px"></div>
42
-
43
- | **Language** | **Package** |
44
- |:-------------|-----------------|
45
- |![Python Logo](https://docs.aws.amazon.com/cdk/api/latest/img/python32.png) Python|`aws_solutions_constructs.aws_sns_lambda`|
46
- |![Typescript Logo](https://docs.aws.amazon.com/cdk/api/latest/img/typescript32.png) Typescript|`@aws-solutions-constructs/aws-sns-lambda`|
47
- |![Java Logo](https://docs.aws.amazon.com/cdk/api/latest/img/java32.png) Java|`software.amazon.awsconstructs.services.snslambda`|
48
-
49
- ## Overview
50
-
51
- This AWS Solutions Construct implements an Amazon SNS connected to an AWS Lambda function.
52
-
53
- Here is a minimal deployable pattern definition:
54
-
55
- Typescript
56
-
57
- ```python
58
- import { Construct } from 'constructs';
59
- import { Stack, StackProps } from 'aws-cdk-lib';
60
- import { SnsToLambda, SnsToLambdaProps } from "@aws-solutions-constructs/aws-sns-lambda";
61
- import * as lambda from 'aws-cdk-lib/aws-lambda';
62
-
63
- new SnsToLambda(this, 'test-sns-lambda', {
64
- lambdaFunctionProps: {
65
- runtime: lambda.Runtime.NODEJS_20_X,
66
- handler: 'index.handler',
67
- code: lambda.Code.fromAsset(`lambda`)
68
- }
69
- });
70
- ```
71
-
72
- Python
73
-
74
- ```python
75
- from aws_solutions_constructs.aws_sns_lambda import SnsToLambda
76
- from aws_cdk import (
77
- aws_lambda as _lambda,
78
- Stack
79
- )
80
- from constructs import Construct
81
-
82
- SnsToLambda(self, 'test_sns_lambda',
83
- lambda_function_props=_lambda.FunctionProps(
84
- code=_lambda.Code.from_asset('lambda'),
85
- runtime=_lambda.Runtime.PYTHON_3_11,
86
- handler='index.handler'
87
- )
88
- )
89
- ```
90
-
91
- Java
92
-
93
- ```java
94
- import software.constructs.Construct;
95
-
96
- import software.amazon.awscdk.Stack;
97
- import software.amazon.awscdk.StackProps;
98
- import software.amazon.awscdk.services.lambda.*;
99
- import software.amazon.awscdk.services.lambda.Runtime;
100
- import software.amazon.awsconstructs.services.snslambda.*;
101
-
102
- new SnsToLambda(this, "test-lambda-sqs-stack", new SnsToLambdaProps.Builder()
103
- .lambdaFunctionProps(new FunctionProps.Builder()
104
- .runtime(Runtime.NODEJS_20_X)
105
- .code(Code.fromAsset("lambda"))
106
- .handler("index.handler")
107
- .build())
108
- .build());
109
- ```
110
-
111
- ## Pattern Construct Props
112
-
113
- | **Name** | **Type** | **Description** |
114
- |:-------------|:----------------|-----------------|
115
- |existingLambdaObj?|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of Lambda Function object, providing both this and `lambdaFunctionProps` will cause an error.|
116
- |lambdaFunctionProps?|[`lambda.FunctionProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.FunctionProps.html)|User provided props to override the default props for the Lambda function.|
117
- |existingTopicObj?|[`sns.Topic`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of SNS Topic object, providing both this and `topicProps` will cause an error.|
118
- |topicProps?|[`sns.TopicProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns.TopicProps.html)|Optional user provided properties to override the default properties for the SNS topic.|
119
- |enableEncryptionWithCustomerManagedKey?|`boolean`|If no key is provided, this flag determines whether the SNS Topic is encrypted with a new CMK or an AWS managed key. This flag is ignored if any of the following are defined: topicProps.masterKey, encryptionKey or encryptionKeyProps.|
120
- |encryptionKey?|[`kms.Key`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_kms.Key.html)|An optional, imported encryption key to encrypt the SNS Topic with.|
121
- |encryptionKeyProps?|[`kms.KeyProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_kms.Key.html#construct-props)|Optional user provided properties to override the default properties for the KMS encryption key used to encrypt the SNS Topic with.|
122
-
123
- ## Pattern Properties
124
-
125
- | **Name** | **Type** | **Description** |
126
- |:-------------|:----------------|-----------------|
127
- |lambdaFunction|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Returns an instance of the Lambda function created by the pattern.|
128
- |snsTopic|[`sns.Topic`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns.Topic.html)|Returns an instance of the SNS topic created by the pattern.|
129
-
130
- ## Default settings
131
-
132
- Out of the box implementation of the Construct without any override will set the following defaults:
133
-
134
- ### Amazon SNS Topic
135
-
136
- * Configure least privilege access permissions for SNS Topic
137
- * Enable server-side encryption for SNS Topic using AWS managed KMS Key
138
- * Enforce encryption of data in transit
139
-
140
- ### AWS Lambda Function
141
-
142
- * Configure limited privilege access IAM role for Lambda function
143
- * Enable reusing connections with Keep-Alive for NodeJs Lambda function
144
- * Enable X-Ray Tracing
145
- * Set Environment Variables
146
-
147
- * AWS_NODEJS_CONNECTION_REUSE_ENABLED (for Node 10.x and higher functions)
148
-
149
- ## Architecture
150
-
151
- ![Architecture Diagram](architecture.png)
152
-
153
- ---
154
-
155
-
156
- © Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
@@ -1,129 +0,0 @@
1
- # aws-sns-lambda module
2
-
3
- <!--BEGIN STABILITY BANNER-->---
4
-
5
-
6
- ![Stability: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)
7
-
8
- ---
9
- <!--END STABILITY BANNER-->
10
-
11
- | **Reference Documentation**:| <span style="font-weight: normal">https://docs.aws.amazon.com/solutions/latest/constructs/</span>|
12
- |:-------------|:-------------|
13
-
14
- <div style="height:8px"></div>
15
-
16
- | **Language** | **Package** |
17
- |:-------------|-----------------|
18
- |![Python Logo](https://docs.aws.amazon.com/cdk/api/latest/img/python32.png) Python|`aws_solutions_constructs.aws_sns_lambda`|
19
- |![Typescript Logo](https://docs.aws.amazon.com/cdk/api/latest/img/typescript32.png) Typescript|`@aws-solutions-constructs/aws-sns-lambda`|
20
- |![Java Logo](https://docs.aws.amazon.com/cdk/api/latest/img/java32.png) Java|`software.amazon.awsconstructs.services.snslambda`|
21
-
22
- ## Overview
23
-
24
- This AWS Solutions Construct implements an Amazon SNS connected to an AWS Lambda function.
25
-
26
- Here is a minimal deployable pattern definition:
27
-
28
- Typescript
29
-
30
- ```python
31
- import { Construct } from 'constructs';
32
- import { Stack, StackProps } from 'aws-cdk-lib';
33
- import { SnsToLambda, SnsToLambdaProps } from "@aws-solutions-constructs/aws-sns-lambda";
34
- import * as lambda from 'aws-cdk-lib/aws-lambda';
35
-
36
- new SnsToLambda(this, 'test-sns-lambda', {
37
- lambdaFunctionProps: {
38
- runtime: lambda.Runtime.NODEJS_20_X,
39
- handler: 'index.handler',
40
- code: lambda.Code.fromAsset(`lambda`)
41
- }
42
- });
43
- ```
44
-
45
- Python
46
-
47
- ```python
48
- from aws_solutions_constructs.aws_sns_lambda import SnsToLambda
49
- from aws_cdk import (
50
- aws_lambda as _lambda,
51
- Stack
52
- )
53
- from constructs import Construct
54
-
55
- SnsToLambda(self, 'test_sns_lambda',
56
- lambda_function_props=_lambda.FunctionProps(
57
- code=_lambda.Code.from_asset('lambda'),
58
- runtime=_lambda.Runtime.PYTHON_3_11,
59
- handler='index.handler'
60
- )
61
- )
62
- ```
63
-
64
- Java
65
-
66
- ```java
67
- import software.constructs.Construct;
68
-
69
- import software.amazon.awscdk.Stack;
70
- import software.amazon.awscdk.StackProps;
71
- import software.amazon.awscdk.services.lambda.*;
72
- import software.amazon.awscdk.services.lambda.Runtime;
73
- import software.amazon.awsconstructs.services.snslambda.*;
74
-
75
- new SnsToLambda(this, "test-lambda-sqs-stack", new SnsToLambdaProps.Builder()
76
- .lambdaFunctionProps(new FunctionProps.Builder()
77
- .runtime(Runtime.NODEJS_20_X)
78
- .code(Code.fromAsset("lambda"))
79
- .handler("index.handler")
80
- .build())
81
- .build());
82
- ```
83
-
84
- ## Pattern Construct Props
85
-
86
- | **Name** | **Type** | **Description** |
87
- |:-------------|:----------------|-----------------|
88
- |existingLambdaObj?|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of Lambda Function object, providing both this and `lambdaFunctionProps` will cause an error.|
89
- |lambdaFunctionProps?|[`lambda.FunctionProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.FunctionProps.html)|User provided props to override the default props for the Lambda function.|
90
- |existingTopicObj?|[`sns.Topic`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of SNS Topic object, providing both this and `topicProps` will cause an error.|
91
- |topicProps?|[`sns.TopicProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns.TopicProps.html)|Optional user provided properties to override the default properties for the SNS topic.|
92
- |enableEncryptionWithCustomerManagedKey?|`boolean`|If no key is provided, this flag determines whether the SNS Topic is encrypted with a new CMK or an AWS managed key. This flag is ignored if any of the following are defined: topicProps.masterKey, encryptionKey or encryptionKeyProps.|
93
- |encryptionKey?|[`kms.Key`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_kms.Key.html)|An optional, imported encryption key to encrypt the SNS Topic with.|
94
- |encryptionKeyProps?|[`kms.KeyProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_kms.Key.html#construct-props)|Optional user provided properties to override the default properties for the KMS encryption key used to encrypt the SNS Topic with.|
95
-
96
- ## Pattern Properties
97
-
98
- | **Name** | **Type** | **Description** |
99
- |:-------------|:----------------|-----------------|
100
- |lambdaFunction|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Returns an instance of the Lambda function created by the pattern.|
101
- |snsTopic|[`sns.Topic`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns.Topic.html)|Returns an instance of the SNS topic created by the pattern.|
102
-
103
- ## Default settings
104
-
105
- Out of the box implementation of the Construct without any override will set the following defaults:
106
-
107
- ### Amazon SNS Topic
108
-
109
- * Configure least privilege access permissions for SNS Topic
110
- * Enable server-side encryption for SNS Topic using AWS managed KMS Key
111
- * Enforce encryption of data in transit
112
-
113
- ### AWS Lambda Function
114
-
115
- * Configure limited privilege access IAM role for Lambda function
116
- * Enable reusing connections with Keep-Alive for NodeJs Lambda function
117
- * Enable X-Ray Tracing
118
- * Set Environment Variables
119
-
120
- * AWS_NODEJS_CONNECTION_REUSE_ENABLED (for Node 10.x and higher functions)
121
-
122
- ## Architecture
123
-
124
- ![Architecture Diagram](architecture.png)
125
-
126
- ---
127
-
128
-
129
- © Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
@@ -1,156 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: aws-solutions-constructs.aws-sns-lambda
3
- Version: 2.85.2
4
- Summary: CDK Constructs for AWS SNS to AWS Lambda integration
5
- Home-page: https://github.com/awslabs/aws-solutions-constructs.git
6
- Author: Amazon Web Services
7
- License: Apache-2.0
8
- Project-URL: Source, https://github.com/awslabs/aws-solutions-constructs.git
9
- Classifier: Intended Audience :: Developers
10
- Classifier: Operating System :: OS Independent
11
- Classifier: Programming Language :: JavaScript
12
- Classifier: Programming Language :: Python :: 3 :: Only
13
- Classifier: Programming Language :: Python :: 3.9
14
- Classifier: Programming Language :: Python :: 3.10
15
- Classifier: Programming Language :: Python :: 3.11
16
- Classifier: Typing :: Typed
17
- Classifier: License :: OSI Approved
18
- Requires-Python: ~=3.9
19
- Description-Content-Type: text/markdown
20
- License-File: LICENSE
21
- Requires-Dist: aws-cdk-lib<3.0.0,>=2.193.0
22
- Requires-Dist: aws-solutions-constructs.core==2.85.2
23
- Requires-Dist: constructs<11.0.0,>=10.0.0
24
- Requires-Dist: jsii<2.0.0,>=1.111.0
25
- Requires-Dist: publication>=0.0.3
26
- Requires-Dist: typeguard<4.3.0,>=2.13.3
27
-
28
- # aws-sns-lambda module
29
-
30
- <!--BEGIN STABILITY BANNER-->---
31
-
32
-
33
- ![Stability: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)
34
-
35
- ---
36
- <!--END STABILITY BANNER-->
37
-
38
- | **Reference Documentation**:| <span style="font-weight: normal">https://docs.aws.amazon.com/solutions/latest/constructs/</span>|
39
- |:-------------|:-------------|
40
-
41
- <div style="height:8px"></div>
42
-
43
- | **Language** | **Package** |
44
- |:-------------|-----------------|
45
- |![Python Logo](https://docs.aws.amazon.com/cdk/api/latest/img/python32.png) Python|`aws_solutions_constructs.aws_sns_lambda`|
46
- |![Typescript Logo](https://docs.aws.amazon.com/cdk/api/latest/img/typescript32.png) Typescript|`@aws-solutions-constructs/aws-sns-lambda`|
47
- |![Java Logo](https://docs.aws.amazon.com/cdk/api/latest/img/java32.png) Java|`software.amazon.awsconstructs.services.snslambda`|
48
-
49
- ## Overview
50
-
51
- This AWS Solutions Construct implements an Amazon SNS connected to an AWS Lambda function.
52
-
53
- Here is a minimal deployable pattern definition:
54
-
55
- Typescript
56
-
57
- ```python
58
- import { Construct } from 'constructs';
59
- import { Stack, StackProps } from 'aws-cdk-lib';
60
- import { SnsToLambda, SnsToLambdaProps } from "@aws-solutions-constructs/aws-sns-lambda";
61
- import * as lambda from 'aws-cdk-lib/aws-lambda';
62
-
63
- new SnsToLambda(this, 'test-sns-lambda', {
64
- lambdaFunctionProps: {
65
- runtime: lambda.Runtime.NODEJS_20_X,
66
- handler: 'index.handler',
67
- code: lambda.Code.fromAsset(`lambda`)
68
- }
69
- });
70
- ```
71
-
72
- Python
73
-
74
- ```python
75
- from aws_solutions_constructs.aws_sns_lambda import SnsToLambda
76
- from aws_cdk import (
77
- aws_lambda as _lambda,
78
- Stack
79
- )
80
- from constructs import Construct
81
-
82
- SnsToLambda(self, 'test_sns_lambda',
83
- lambda_function_props=_lambda.FunctionProps(
84
- code=_lambda.Code.from_asset('lambda'),
85
- runtime=_lambda.Runtime.PYTHON_3_11,
86
- handler='index.handler'
87
- )
88
- )
89
- ```
90
-
91
- Java
92
-
93
- ```java
94
- import software.constructs.Construct;
95
-
96
- import software.amazon.awscdk.Stack;
97
- import software.amazon.awscdk.StackProps;
98
- import software.amazon.awscdk.services.lambda.*;
99
- import software.amazon.awscdk.services.lambda.Runtime;
100
- import software.amazon.awsconstructs.services.snslambda.*;
101
-
102
- new SnsToLambda(this, "test-lambda-sqs-stack", new SnsToLambdaProps.Builder()
103
- .lambdaFunctionProps(new FunctionProps.Builder()
104
- .runtime(Runtime.NODEJS_20_X)
105
- .code(Code.fromAsset("lambda"))
106
- .handler("index.handler")
107
- .build())
108
- .build());
109
- ```
110
-
111
- ## Pattern Construct Props
112
-
113
- | **Name** | **Type** | **Description** |
114
- |:-------------|:----------------|-----------------|
115
- |existingLambdaObj?|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of Lambda Function object, providing both this and `lambdaFunctionProps` will cause an error.|
116
- |lambdaFunctionProps?|[`lambda.FunctionProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.FunctionProps.html)|User provided props to override the default props for the Lambda function.|
117
- |existingTopicObj?|[`sns.Topic`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of SNS Topic object, providing both this and `topicProps` will cause an error.|
118
- |topicProps?|[`sns.TopicProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns.TopicProps.html)|Optional user provided properties to override the default properties for the SNS topic.|
119
- |enableEncryptionWithCustomerManagedKey?|`boolean`|If no key is provided, this flag determines whether the SNS Topic is encrypted with a new CMK or an AWS managed key. This flag is ignored if any of the following are defined: topicProps.masterKey, encryptionKey or encryptionKeyProps.|
120
- |encryptionKey?|[`kms.Key`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_kms.Key.html)|An optional, imported encryption key to encrypt the SNS Topic with.|
121
- |encryptionKeyProps?|[`kms.KeyProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_kms.Key.html#construct-props)|Optional user provided properties to override the default properties for the KMS encryption key used to encrypt the SNS Topic with.|
122
-
123
- ## Pattern Properties
124
-
125
- | **Name** | **Type** | **Description** |
126
- |:-------------|:----------------|-----------------|
127
- |lambdaFunction|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Returns an instance of the Lambda function created by the pattern.|
128
- |snsTopic|[`sns.Topic`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns.Topic.html)|Returns an instance of the SNS topic created by the pattern.|
129
-
130
- ## Default settings
131
-
132
- Out of the box implementation of the Construct without any override will set the following defaults:
133
-
134
- ### Amazon SNS Topic
135
-
136
- * Configure least privilege access permissions for SNS Topic
137
- * Enable server-side encryption for SNS Topic using AWS managed KMS Key
138
- * Enforce encryption of data in transit
139
-
140
- ### AWS Lambda Function
141
-
142
- * Configure limited privilege access IAM role for Lambda function
143
- * Enable reusing connections with Keep-Alive for NodeJs Lambda function
144
- * Enable X-Ray Tracing
145
- * Set Environment Variables
146
-
147
- * AWS_NODEJS_CONNECTION_REUSE_ENABLED (for Node 10.x and higher functions)
148
-
149
- ## Architecture
150
-
151
- ![Architecture Diagram](architecture.png)
152
-
153
- ---
154
-
155
-
156
- © Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.