@aws-solutions-constructs/aws-lambda-opensearch 2.95.1 → 2.96.0

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 (36) hide show
  1. package/.jsii +3 -3
  2. package/README.adoc +2 -2
  3. package/lib/index.js +1 -1
  4. package/package.json +3 -3
  5. package/test/integ.lamopn-cluster-config.js.snapshot/lamopn-cluster-config.assets.json +3 -3
  6. package/test/integ.lamopn-cluster-config.js.snapshot/lamopn-cluster-config.template.json +4 -1
  7. package/test/integ.lamopn-cluster-config.js.snapshot/manifest.json +1 -1
  8. package/test/integ.lamopn-cluster-config.js.snapshot/tree.json +1 -1
  9. package/test/integ.lamopn-disabled-zone-awareness.js.snapshot/lamopn-disabled-zone-awareness.assets.json +3 -3
  10. package/test/integ.lamopn-disabled-zone-awareness.js.snapshot/lamopn-disabled-zone-awareness.template.json +4 -1
  11. package/test/integ.lamopn-disabled-zone-awareness.js.snapshot/manifest.json +1 -1
  12. package/test/integ.lamopn-disabled-zone-awareness.js.snapshot/tree.json +1 -1
  13. package/test/integ.lamopn-domain-arguments.js.snapshot/asset.36fdcee3b182bca7e3283fbd947213d1e59968159f93aec9fd62d15935c721b0/index.js +73 -0
  14. package/test/integ.lamopn-domain-arguments.js.snapshot/cdk.out +1 -1
  15. package/test/integ.lamopn-domain-arguments.js.snapshot/integ.json +3 -2
  16. package/test/integ.lamopn-domain-arguments.js.snapshot/lamopn-domain-arguments.assets.json +7 -5
  17. package/test/integ.lamopn-domain-arguments.js.snapshot/lamopn-domain-arguments.template.json +4 -1
  18. package/test/integ.lamopn-domain-arguments.js.snapshot/lamopndomainargumentsIntegDefaultTestDeployAssert47534E1E.assets.json +3 -2
  19. package/test/integ.lamopn-domain-arguments.js.snapshot/manifest.json +514 -21
  20. package/test/integ.lamopn-domain-arguments.js.snapshot/tree.json +1 -1
  21. package/test/integ.lamopn-existing-vpc.js.snapshot/lamopn-existing-vpc.assets.json +3 -3
  22. package/test/integ.lamopn-existing-vpc.js.snapshot/lamopn-existing-vpc.template.json +4 -1
  23. package/test/integ.lamopn-existing-vpc.js.snapshot/manifest.json +1 -1
  24. package/test/integ.lamopn-existing-vpc.js.snapshot/tree.json +1 -1
  25. package/test/integ.lamopn-no-arguments.js.snapshot/asset.36fdcee3b182bca7e3283fbd947213d1e59968159f93aec9fd62d15935c721b0/index.js +73 -0
  26. package/test/integ.lamopn-no-arguments.js.snapshot/cdk.out +1 -1
  27. package/test/integ.lamopn-no-arguments.js.snapshot/integ.json +3 -2
  28. package/test/integ.lamopn-no-arguments.js.snapshot/lamopn-no-arguments.assets.json +7 -5
  29. package/test/integ.lamopn-no-arguments.js.snapshot/lamopn-no-arguments.template.json +4 -1
  30. package/test/integ.lamopn-no-arguments.js.snapshot/lamopnnoargumentsIntegDefaultTestDeployAssert4290A592.assets.json +3 -2
  31. package/test/integ.lamopn-no-arguments.js.snapshot/manifest.json +514 -21
  32. package/test/integ.lamopn-no-arguments.js.snapshot/tree.json +1 -1
  33. package/test/integ.lamopn-vpc-props.js.snapshot/lamopn-vpc-props.assets.json +3 -3
  34. package/test/integ.lamopn-vpc-props.js.snapshot/lamopn-vpc-props.template.json +4 -1
  35. package/test/integ.lamopn-vpc-props.js.snapshot/manifest.json +1 -1
  36. package/test/integ.lamopn-vpc-props.js.snapshot/tree.json +1 -1
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
5
+ * with the License. A copy of the License is located at
6
+ *
7
+ * http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
10
+ * OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
11
+ * and limitations under the License.
12
+ */
13
+
14
+ var AWS = require('aws-sdk');
15
+ var path = require('path');
16
+
17
+ console.log('Loading function');
18
+
19
+ var openSearchDomain = {
20
+ endpoint: process.env.DOMAIN_ENDPOINT,
21
+ region: process.env.AWS_REGION,
22
+ index: 'records',
23
+ doctype: 'movie'
24
+ };
25
+
26
+ var creds = new AWS.EnvironmentCredentials('AWS');
27
+ var endpoint = new AWS.Endpoint(openSearchDomain.endpoint);
28
+
29
+ function postDocumentToOpenSearch(doc, context) {
30
+ var req = new AWS.HttpRequest(endpoint);
31
+
32
+ req.method = 'POST';
33
+ req.path = path.join('/', openSearchDomain.index, openSearchDomain.doctype);
34
+ req.region = openSearchDomain.region;
35
+ req.body = doc;
36
+ req.headers['presigned-expires'] = false;
37
+ req.headers['Host'] = openSearchDomain.endpoint;
38
+ req.headers['Content-Type'] = 'application/json';
39
+
40
+ // Sign the request (Sigv4)
41
+ var signer = new AWS.Signers.V4(req, 'es');
42
+ signer.addAuthorization(creds, new Date());
43
+
44
+ // Post document to the OpenSearch Service
45
+ var send = new AWS.NodeHttpClient();
46
+
47
+ send.handleRequest(req, null, (httpResp) => {
48
+ var body = '';
49
+ httpResp.on('data', (chunk) => {
50
+ body += chunk;
51
+ });
52
+ httpResp.on('end', (chunk) => {
53
+ console.log('All movie records added to the OpenSearch Service.');
54
+ context.succeed();
55
+ });
56
+ }, (err) => {
57
+ console.log('Error: ' + err);
58
+ context.fail();
59
+ });
60
+ }
61
+
62
+ exports.handler = (event, context) => {
63
+ console.log('Received event:', JSON.stringify(event, null, 2));
64
+ postDocumentToOpenSearch("{ \"title\": \"Moby Dick\" }", context);
65
+ postDocumentToOpenSearch("{ \"title\": \"A Tale of Two Cities\" }", context);
66
+ postDocumentToOpenSearch("{ \"title\": \"The Phantom of the Opera\" }", context);
67
+
68
+ return {
69
+ statusCode: 200,
70
+ headers: { 'Content-Type': 'text/plain' },
71
+ body: `Hello from AWS Solutions Constructs!\n`
72
+ };
73
+ };
@@ -1 +1 @@
1
- {"version":"40.0.0"}
1
+ {"version":"48.0.0"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "40.0.0",
2
+ "version": "48.0.0",
3
3
  "testCases": {
4
4
  "lamopn-no-arguments/Integ/DefaultTest": {
5
5
  "stacks": [
@@ -8,5 +8,6 @@
8
8
  "assertionStack": "lamopn-no-arguments/Integ/DefaultTest/DeployAssert",
9
9
  "assertionStackName": "lamopnnoargumentsIntegDefaultTestDeployAssert4290A592"
10
10
  }
11
- }
11
+ },
12
+ "minimumCliVersion": "2.1029.2"
12
13
  }
@@ -1,28 +1,30 @@
1
1
  {
2
- "version": "40.0.0",
2
+ "version": "48.0.0",
3
3
  "files": {
4
4
  "36fdcee3b182bca7e3283fbd947213d1e59968159f93aec9fd62d15935c721b0": {
5
+ "displayName": "test-lambda-opensearch/LambdaFunction/Code",
5
6
  "source": {
6
7
  "path": "asset.36fdcee3b182bca7e3283fbd947213d1e59968159f93aec9fd62d15935c721b0",
7
8
  "packaging": "zip"
8
9
  },
9
10
  "destinations": {
10
- "current_account-current_region": {
11
+ "current_account-current_region-72198890": {
11
12
  "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
12
13
  "objectKey": "36fdcee3b182bca7e3283fbd947213d1e59968159f93aec9fd62d15935c721b0.zip",
13
14
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
14
15
  }
15
16
  }
16
17
  },
17
- "7dcc3480c47af313175a3fe11771f2b0ef78613622e969d1df03a40cd5364f0d": {
18
+ "caf7c8ba5620a2a6a6549d162202ed50b401e52cba09ced465a553a22a2015ce": {
19
+ "displayName": "lamopn-no-arguments Template",
18
20
  "source": {
19
21
  "path": "lamopn-no-arguments.template.json",
20
22
  "packaging": "file"
21
23
  },
22
24
  "destinations": {
23
- "current_account-current_region": {
25
+ "current_account-current_region-138dc88f": {
24
26
  "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
25
- "objectKey": "7dcc3480c47af313175a3fe11771f2b0ef78613622e969d1df03a40cd5364f0d.json",
27
+ "objectKey": "caf7c8ba5620a2a6a6549d162202ed50b401e52cba09ced465a553a22a2015ce.json",
26
28
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
27
29
  }
28
30
  }
@@ -89,7 +89,7 @@
89
89
  "Arn"
90
90
  ]
91
91
  },
92
- "Runtime": "nodejs20.x",
92
+ "Runtime": "nodejs22.x",
93
93
  "TracingConfig": {
94
94
  "Mode": "Active"
95
95
  }
@@ -679,6 +679,9 @@
679
679
  "AutomatedSnapshotStartHour": 1
680
680
  }
681
681
  },
682
+ "DependsOn": [
683
+ "testlambdaopensearchCognitoDashboardConfigureRole1F2B7B7A"
684
+ ],
682
685
  "Metadata": {
683
686
  "cfn_nag": {
684
687
  "rules_to_suppress": [
@@ -1,13 +1,14 @@
1
1
  {
2
- "version": "40.0.0",
2
+ "version": "48.0.0",
3
3
  "files": {
4
4
  "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": {
5
+ "displayName": "lamopnnoargumentsIntegDefaultTestDeployAssert4290A592 Template",
5
6
  "source": {
6
7
  "path": "lamopnnoargumentsIntegDefaultTestDeployAssert4290A592.template.json",
7
8
  "packaging": "file"
8
9
  },
9
10
  "destinations": {
10
- "current_account-current_region": {
11
+ "current_account-current_region-d8d86b35": {
11
12
  "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
12
13
  "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json",
13
14
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"