@novha/anlia-core-lib 0.1.0 → 0.2.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 (70) hide show
  1. package/cdk/bin/app.ts +21 -0
  2. package/cdk/bin/infrastructure.ts +16 -6
  3. package/cdk/lib/app.ts +34 -0
  4. package/cdk/lib/infrastructures/event-stack.ts +74 -0
  5. package/cdk/lib/infrastructures/storage-stack.ts +57 -0
  6. package/cdk.json +1 -1
  7. package/cdk.out/.cache/dc7aa0aafa98afcdd2faf6146c00c1c90f0e795c782e819001cf6258fc79c93e.zip +0 -0
  8. package/cdk.out/anlia-core-lib-app-dev.assets.json +36 -0
  9. package/cdk.out/anlia-core-lib-app-dev.metadata.json +109 -0
  10. package/cdk.out/anlia-core-lib-app-dev.template.json +157 -0
  11. package/cdk.out/anlia-core-lib-dev.assets.json +21 -0
  12. package/cdk.out/anlia-core-lib-dev.metadata.json +223 -0
  13. package/cdk.out/anlia-core-lib-dev.template.json +232 -0
  14. package/cdk.out/asset.dc7aa0aafa98afcdd2faf6146c00c1c90f0e795c782e819001cf6258fc79c93e/index.js +38 -0
  15. package/cdk.out/cdk.out +1 -0
  16. package/cdk.out/manifest.json +548 -0
  17. package/cdk.out/tree.json +1 -0
  18. package/dist/cdk/bin/app.d.ts +1 -0
  19. package/dist/cdk/bin/app.js +21 -0
  20. package/dist/cdk/bin/infrastructure.js +13 -6
  21. package/dist/cdk/lib/app.d.ts +6 -0
  22. package/dist/cdk/lib/app.js +48 -0
  23. package/dist/cdk/lib/infrastructure.js +29 -0
  24. package/dist/cdk/lib/infrastructures/event-stack.d.ts +6 -0
  25. package/dist/cdk/lib/infrastructures/event-stack.js +61 -0
  26. package/dist/cdk/lib/infrastructures/storage-stack.d.ts +8 -0
  27. package/dist/cdk/lib/infrastructures/storage-stack.js +46 -0
  28. package/dist/src/dynamoDb/DynamoDbModule.d.ts +2 -0
  29. package/dist/src/dynamoDb/DynamoDbModule.js +29 -0
  30. package/dist/src/dynamoDb/index.d.ts +4 -0
  31. package/dist/src/dynamoDb/index.js +18 -0
  32. package/dist/src/dynamoDb/ioc/index.d.ts +3 -0
  33. package/dist/src/dynamoDb/ioc/index.js +6 -0
  34. package/dist/src/dynamoDb/service/DynamoDbService.d.ts +34 -0
  35. package/dist/src/dynamoDb/service/DynamoDbService.js +2 -0
  36. package/dist/src/dynamoDb/service/DynamoDbServiceImpl.d.ts +16 -0
  37. package/dist/src/dynamoDb/service/DynamoDbServiceImpl.js +108 -0
  38. package/dist/src/eventBridge/EventBridgeModule.js +5 -1
  39. package/dist/src/handlers/EventLoggerHandler.d.ts +2 -0
  40. package/dist/src/handlers/EventLoggerHandler.js +13 -0
  41. package/dist/src/index.d.ts +2 -0
  42. package/dist/src/index.js +2 -0
  43. package/dist/src/orders/index.d.ts +1 -0
  44. package/dist/src/s3/S3Module.d.ts +2 -0
  45. package/dist/src/s3/S3Module.js +31 -0
  46. package/dist/src/s3/index.d.ts +4 -0
  47. package/dist/src/s3/index.js +18 -0
  48. package/dist/src/s3/ioc/index.d.ts +3 -0
  49. package/dist/src/s3/ioc/index.js +6 -0
  50. package/dist/src/s3/service/S3Service.d.ts +27 -0
  51. package/dist/src/s3/service/S3Service.js +2 -0
  52. package/dist/src/s3/service/S3ServiceImpl.d.ts +17 -0
  53. package/dist/src/s3/service/S3ServiceImpl.js +104 -0
  54. package/package.json +8 -3
  55. package/src/dynamoDb/DynamoDbModule.ts +18 -0
  56. package/src/dynamoDb/index.ts +4 -0
  57. package/src/dynamoDb/ioc/index.ts +3 -0
  58. package/src/dynamoDb/service/DynamoDbService.ts +37 -0
  59. package/src/dynamoDb/service/DynamoDbServiceImpl.ts +132 -0
  60. package/src/eventBridge/EventBridgeModule.ts +6 -1
  61. package/src/handlers/EventLoggerHandler.ts +11 -0
  62. package/src/index.ts +3 -1
  63. package/src/orders/index.ts +2 -1
  64. package/src/s3/S3Module.ts +20 -0
  65. package/src/s3/index.ts +4 -0
  66. package/src/s3/ioc/index.ts +3 -0
  67. package/src/s3/service/S3Service.ts +30 -0
  68. package/src/s3/service/S3ServiceImpl.ts +116 -0
  69. package/tsconfig.json +1 -2
  70. package/cdk/lib/infrastructure.ts +0 -37
package/cdk/bin/app.ts ADDED
@@ -0,0 +1,21 @@
1
+ import { App } from 'aws-cdk-lib';
2
+ import process from 'node:process';
3
+
4
+ import { AppStack } from '../lib/app';
5
+ import { projectName } from './project-names';
6
+
7
+ const app = new App();
8
+ const stage = (app.node.tryGetContext('stage') as string) || "dev";
9
+
10
+ const env = {
11
+ account: process.env.CDK_DEFAULT_ACCOUNT,
12
+ region: process.env.CDK_DEFAULT_REGION ?? "us-east-1",
13
+ };
14
+
15
+ new AppStack(app, `${projectName}-app-${stage}`, {
16
+ projectName,
17
+ stage,
18
+ env,
19
+ });
20
+
21
+ app.synth();
@@ -1,18 +1,28 @@
1
1
  import { App } from 'aws-cdk-lib';
2
2
  import process from 'node:process';
3
3
 
4
- import { InfrastructureStack } from '../lib/infrastructure';
4
+ import { EventStack } from '../lib/infrastructures/event-stack';
5
+ import { StorageStack } from '../lib/infrastructures/storage-stack';
5
6
  import { projectName } from './project-names';
6
7
 
7
8
  const app = new App();
8
9
  const stage = (app.node.tryGetContext('stage') as string) || "dev";
9
10
 
10
- new InfrastructureStack(app, `${projectName}-${stage}`, {
11
+ const env = {
12
+ account: process.env.CDK_DEFAULT_ACCOUNT,
13
+ region: process.env.CDK_DEFAULT_REGION ?? "us-east-1",
14
+ };
15
+
16
+ new EventStack(app, `${projectName}-${stage}`, {
17
+ projectName,
18
+ stage,
19
+ env,
20
+ });
21
+
22
+ new StorageStack(app, `${projectName}-${stage}`, {
11
23
  projectName,
12
24
  stage,
13
- env: {
14
- account: process.env.CDK_DEFAULT_ACCOUNT || "",
15
- region: process.env.CDK_DEFAULT_REGION || "us-east-1"
16
- } });
25
+ env,
26
+ });
17
27
 
18
28
  app.synth();
package/cdk/lib/app.ts ADDED
@@ -0,0 +1,34 @@
1
+ import * as path from "path";
2
+ import { Duration, Fn, Stack, StackProps } from "aws-cdk-lib";
3
+ import { Construct } from "constructs";
4
+ import { Runtime } from "aws-cdk-lib/aws-lambda";
5
+ import { NodejsFunction } from "aws-cdk-lib/aws-lambda-nodejs";
6
+ import { Queue } from "aws-cdk-lib/aws-sqs";
7
+ import { SqsEventSource } from "aws-cdk-lib/aws-lambda-event-sources";
8
+ import { CommonProps } from "../bin/project-names";
9
+
10
+ export class AppStack extends Stack {
11
+ constructor(scope: Construct, id: string, props: CommonProps) {
12
+ super(scope, id, props as unknown as StackProps);
13
+
14
+ const infraPrefix = `${props.projectName}-${props.stage}`;
15
+
16
+ const eventQueue = Queue.fromQueueArn(
17
+ this,
18
+ "EventQueue",
19
+ Fn.importValue(`${infraPrefix}-event-queue-arn`),
20
+ );
21
+
22
+ const eventLogger = new NodejsFunction(this, "EventLogger", {
23
+ entry: path.join(__dirname, "../../src/handlers/EventLoggerHandler.ts"),
24
+ handler: "handler",
25
+ runtime: Runtime.NODEJS_22_X,
26
+ functionName: `${infraPrefix}-event-logger`,
27
+ timeout: Duration.seconds(300),
28
+ });
29
+
30
+ eventLogger.addEventSource(
31
+ new SqsEventSource(eventQueue, { batchSize: 10 }),
32
+ );
33
+ }
34
+ }
@@ -0,0 +1,74 @@
1
+ import { CfnOutput, Duration, Stack } from "aws-cdk-lib";
2
+ import { Construct } from "constructs";
3
+ import { EventBus, Match, Rule } from "aws-cdk-lib/aws-events";
4
+ import { SqsQueue } from "aws-cdk-lib/aws-events-targets";
5
+ import { Bucket } from "aws-cdk-lib/aws-s3";
6
+ import { Queue } from "aws-cdk-lib/aws-sqs";
7
+ import { CommonProps } from "../../bin/project-names";
8
+
9
+ export class EventStack extends Stack {
10
+ constructor(scope: Construct, id: string, props: CommonProps) {
11
+ super(scope, id, props);
12
+
13
+ const eventBus = new EventBus(this, "EventBus", {
14
+ eventBusName: `${props.projectName}-${props.stage}-event-bus`,
15
+ });
16
+
17
+ // ── SQS ─────────────────────────────────────────────────────────────
18
+
19
+ const dlq = new Queue(this, "EventDLQ", {
20
+ queueName: `${props.projectName}-${props.stage}-event-dlq`,
21
+ retentionPeriod: Duration.days(14),
22
+ });
23
+
24
+ const eventQueue = new Queue(this, "EventQueue", {
25
+ queueName: `${props.projectName}-${props.stage}-event-queue`,
26
+ visibilityTimeout: Duration.seconds(300),
27
+ deadLetterQueue: { queue: dlq, maxReceiveCount: 3 },
28
+ });
29
+
30
+ // Route every event published to the bus into the queue.
31
+ new Rule(this, "AllEventsRule", {
32
+ eventBus,
33
+ description: "Forward all events on the bus to the event queue",
34
+ eventPattern: { source: Match.prefix("") },
35
+ targets: [new SqsQueue(eventQueue)],
36
+ });
37
+
38
+ // ── S3 ──────────────────────────────────────────────────────────────
39
+
40
+ const bucket = new Bucket(this, "Bucket");
41
+
42
+ // ── Outputs ─────────────────────────────────────────────────────────
43
+
44
+ new CfnOutput(this, "EventBusArn", {
45
+ value: eventBus.eventBusArn,
46
+ exportName: `${props.projectName}-${props.stage}-event-bus-arn`,
47
+ });
48
+
49
+ new CfnOutput(this, "EventBusName", {
50
+ value: eventBus.eventBusName,
51
+ exportName: `${props.projectName}-${props.stage}-event-bus-name`,
52
+ });
53
+
54
+ new CfnOutput(this, "EventQueueArn", {
55
+ value: eventQueue.queueArn,
56
+ exportName: `${props.projectName}-${props.stage}-event-queue-arn`,
57
+ });
58
+
59
+ new CfnOutput(this, "EventQueueUrl", {
60
+ value: eventQueue.queueUrl,
61
+ exportName: `${props.projectName}-${props.stage}-event-queue-url`,
62
+ });
63
+
64
+ new CfnOutput(this, "BucketArn", {
65
+ value: bucket.bucketArn,
66
+ exportName: `${props.projectName}-${props.stage}-bucket-arn`,
67
+ });
68
+
69
+ new CfnOutput(this, "BucketName", {
70
+ value: bucket.bucketName,
71
+ exportName: `${props.projectName}-${props.stage}-bucket-name`,
72
+ });
73
+ }
74
+ }
@@ -0,0 +1,57 @@
1
+ import { CfnOutput, RemovalPolicy, Stack } from "aws-cdk-lib";
2
+ import { Construct } from "constructs";
3
+ import { Bucket } from "aws-cdk-lib/aws-s3";
4
+ import { CommonProps } from "../../bin/project-names";
5
+ import { AttributeType, BillingMode, ProjectionType, Table } from "aws-cdk-lib/aws-dynamodb";
6
+
7
+ export class StorageStack extends Stack {
8
+ private readonly bucket: Bucket;
9
+ private readonly orderTable: Table;
10
+
11
+ constructor(scope: Construct, id: string, props: CommonProps) {
12
+ super(scope, id, props);
13
+
14
+ // ── S3 ──────────────────────────────────────────────────────────────
15
+
16
+ this.bucket = new Bucket(this, "Bucket");
17
+
18
+ // Define the DynamoDB Order table
19
+ this.orderTable = new Table(this, 'OrderTable', {
20
+ tableName: `${props.projectName}-orders-${props.stage}`,
21
+ partitionKey: { name: 'id', type: AttributeType.STRING },
22
+ sortKey: { name: 'providerIdentifier', type: AttributeType.STRING },
23
+ billingMode: BillingMode.PAY_PER_REQUEST,
24
+ removalPolicy: RemovalPolicy.DESTROY, // NOT recommended for production
25
+ });
26
+
27
+ // Add a Global Secondary Index (GSI)
28
+ this.orderTable.addGlobalSecondaryIndex({
29
+ indexName: 'StatusUpdatedIndex',
30
+ partitionKey: { name: 'status', type: AttributeType.STRING },
31
+ sortKey: { name: 'updatedUtc', type: AttributeType.STRING },
32
+ projectionType: ProjectionType.ALL,
33
+ });
34
+
35
+ // ── Outputs ─────────────────────────────────────────────────────────
36
+
37
+ new CfnOutput(this, "BucketArn", {
38
+ value: this.bucket.bucketArn,
39
+ exportName: `${props.projectName}-${props.stage}-bucket-arn`,
40
+ });
41
+
42
+ new CfnOutput(this, "BucketName", {
43
+ value: this.bucket.bucketName,
44
+ exportName: `${props.projectName}-${props.stage}-bucket-name`,
45
+ });
46
+
47
+ new CfnOutput(this, "OrderTableArn", {
48
+ value: this.orderTable.tableArn,
49
+ exportName: `${props.projectName}-${props.stage}-order-table-arn`,
50
+ });
51
+
52
+ new CfnOutput(this, "OrderTableName", {
53
+ value: this.orderTable.tableName,
54
+ exportName: `${props.projectName}-${props.stage}-order-table-name`,
55
+ });
56
+ }
57
+ }
package/cdk.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "app": "npx ts-node --prefer-ts-exts cdk/bin/predikt-external-api.ts",
2
+ "app": "npx ts-node --prefer-ts-exts cdk/bin/app.ts",
3
3
  "watch": {
4
4
  "include": [
5
5
  "**"
@@ -0,0 +1,36 @@
1
+ {
2
+ "version": "54.0.0",
3
+ "files": {
4
+ "dc7aa0aafa98afcdd2faf6146c00c1c90f0e795c782e819001cf6258fc79c93e": {
5
+ "displayName": "EventLogger/Code",
6
+ "source": {
7
+ "path": "asset.dc7aa0aafa98afcdd2faf6146c00c1c90f0e795c782e819001cf6258fc79c93e",
8
+ "packaging": "zip"
9
+ },
10
+ "destinations": {
11
+ "216661146730-us-east-1-20effd97": {
12
+ "bucketName": "cdk-hnb659fds-assets-216661146730-us-east-1",
13
+ "objectKey": "dc7aa0aafa98afcdd2faf6146c00c1c90f0e795c782e819001cf6258fc79c93e.zip",
14
+ "region": "us-east-1",
15
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::216661146730:role/cdk-hnb659fds-file-publishing-role-216661146730-us-east-1"
16
+ }
17
+ }
18
+ },
19
+ "67a87b5d50302cf1ac7b3ad007648fb7331a9da84042ee30dca87c23436d925c": {
20
+ "displayName": "anlia-core-lib-app-dev Template",
21
+ "source": {
22
+ "path": "anlia-core-lib-app-dev.template.json",
23
+ "packaging": "file"
24
+ },
25
+ "destinations": {
26
+ "216661146730-us-east-1-25fd505f": {
27
+ "bucketName": "cdk-hnb659fds-assets-216661146730-us-east-1",
28
+ "objectKey": "67a87b5d50302cf1ac7b3ad007648fb7331a9da84042ee30dca87c23436d925c.json",
29
+ "region": "us-east-1",
30
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::216661146730:role/cdk-hnb659fds-file-publishing-role-216661146730-us-east-1"
31
+ }
32
+ }
33
+ }
34
+ },
35
+ "dockerImages": {}
36
+ }
@@ -0,0 +1,109 @@
1
+ {
2
+ "/anlia-core-lib-app-dev": [
3
+ {
4
+ "type": "aws:cdk:creationStack",
5
+ "data": [
6
+ "<anonymous> (/Users/rachelnama/app/anlia/anlia-core-lib/cdk/bin/app.ts:15:1)",
7
+ "...node internals, ts-node, ts-node, ts-node..."
8
+ ]
9
+ }
10
+ ],
11
+ "/anlia-core-lib-app-dev/BootstrapVersion": [
12
+ {
13
+ "type": "aws:cdk:logicalId",
14
+ "data": "BootstrapVersion"
15
+ },
16
+ {
17
+ "type": "aws:cdk:creationStack",
18
+ "data": [
19
+ "...aws-cdk-lib...",
20
+ "(no user code in 10 frames, use --stack-trace-limit to capture more)"
21
+ ]
22
+ }
23
+ ],
24
+ "/anlia-core-lib-app-dev/CheckBootstrapVersion": [
25
+ {
26
+ "type": "aws:cdk:logicalId",
27
+ "data": "CheckBootstrapVersion"
28
+ },
29
+ {
30
+ "type": "aws:cdk:creationStack",
31
+ "data": [
32
+ "...aws-cdk-lib...",
33
+ "(no user code in 10 frames, use --stack-trace-limit to capture more)"
34
+ ]
35
+ }
36
+ ],
37
+ "/anlia-core-lib-app-dev/EventLogger/Resource": [
38
+ {
39
+ "type": "aws:cdk:logicalId",
40
+ "data": "EventLogger455115CB"
41
+ },
42
+ {
43
+ "type": "aws:cdk:creationStack",
44
+ "data": [
45
+ "...new NodejsFunction in aws-cdk-lib...",
46
+ "new AppStack (/Users/rachelnama/app/anlia/anlia-core-lib/cdk/lib/app.ts:22:29)",
47
+ "<anonymous> (/Users/rachelnama/app/anlia/anlia-core-lib/cdk/bin/app.ts:15:1)",
48
+ "...node internals, ts-node, ts-node..."
49
+ ]
50
+ }
51
+ ],
52
+ "/anlia-core-lib-app-dev/CDKMetadata/Default": [
53
+ {
54
+ "type": "aws:cdk:logicalId",
55
+ "data": "CDKMetadata"
56
+ },
57
+ {
58
+ "type": "aws:cdk:creationStack",
59
+ "data": [
60
+ "...App.synth in aws-cdk-lib...",
61
+ "<anonymous> (/Users/rachelnama/app/anlia/anlia-core-lib/cdk/bin/app.ts:21:5)",
62
+ "...node internals..."
63
+ ]
64
+ }
65
+ ],
66
+ "/anlia-core-lib-app-dev/EventLogger/ServiceRole/Resource": [
67
+ {
68
+ "type": "aws:cdk:logicalId",
69
+ "data": "EventLoggerServiceRole7A148BEB"
70
+ },
71
+ {
72
+ "type": "aws:cdk:creationStack",
73
+ "data": [
74
+ "...new NodejsFunction in aws-cdk-lib...",
75
+ "new AppStack (/Users/rachelnama/app/anlia/anlia-core-lib/cdk/lib/app.ts:22:29)",
76
+ "<anonymous> (/Users/rachelnama/app/anlia/anlia-core-lib/cdk/bin/app.ts:15:1)",
77
+ "...node internals, ts-node..."
78
+ ]
79
+ }
80
+ ],
81
+ "/anlia-core-lib-app-dev/EventLogger/SqsEventSource:anliacorelibappdevEventQueue27C8B5BE/Resource": [
82
+ {
83
+ "type": "aws:cdk:logicalId",
84
+ "data": "EventLoggerSqsEventSourceanliacorelibappdevEventQueue27C8B5BEB34C3C2F"
85
+ },
86
+ {
87
+ "type": "aws:cdk:creationStack",
88
+ "data": [
89
+ "...NodejsFunction.addEventSource in aws-cdk-lib...",
90
+ "new AppStack (/Users/rachelnama/app/anlia/anlia-core-lib/cdk/lib/app.ts:30:21)",
91
+ "<anonymous> (/Users/rachelnama/app/anlia/anlia-core-lib/cdk/bin/app.ts:15:1)",
92
+ "...node internals, ts-node..."
93
+ ]
94
+ }
95
+ ],
96
+ "/anlia-core-lib-app-dev/EventLogger/ServiceRole/DefaultPolicy/Resource": [
97
+ {
98
+ "type": "aws:cdk:logicalId",
99
+ "data": "EventLoggerServiceRoleDefaultPolicyF9E4E85B"
100
+ },
101
+ {
102
+ "type": "aws:cdk:creationStack",
103
+ "data": [
104
+ "...aws-cdk-lib...",
105
+ "(no user code in 10 frames, use --stack-trace-limit to capture more)"
106
+ ]
107
+ }
108
+ ]
109
+ }
@@ -0,0 +1,157 @@
1
+ {
2
+ "Resources": {
3
+ "EventLoggerServiceRole7A148BEB": {
4
+ "Type": "AWS::IAM::Role",
5
+ "Properties": {
6
+ "AssumeRolePolicyDocument": {
7
+ "Statement": [
8
+ {
9
+ "Action": "sts:AssumeRole",
10
+ "Effect": "Allow",
11
+ "Principal": {
12
+ "Service": "lambda.amazonaws.com"
13
+ }
14
+ }
15
+ ],
16
+ "Version": "2012-10-17"
17
+ },
18
+ "ManagedPolicyArns": [
19
+ {
20
+ "Fn::Join": [
21
+ "",
22
+ [
23
+ "arn:",
24
+ {
25
+ "Ref": "AWS::Partition"
26
+ },
27
+ ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
28
+ ]
29
+ ]
30
+ }
31
+ ]
32
+ },
33
+ "Metadata": {
34
+ "aws:cdk:path": "anlia-core-lib-app-dev/EventLogger/ServiceRole/Resource"
35
+ }
36
+ },
37
+ "EventLoggerServiceRoleDefaultPolicyF9E4E85B": {
38
+ "Type": "AWS::IAM::Policy",
39
+ "Properties": {
40
+ "PolicyDocument": {
41
+ "Statement": [
42
+ {
43
+ "Action": [
44
+ "sqs:ChangeMessageVisibility",
45
+ "sqs:DeleteMessage",
46
+ "sqs:GetQueueAttributes",
47
+ "sqs:GetQueueUrl",
48
+ "sqs:ReceiveMessage"
49
+ ],
50
+ "Effect": "Allow",
51
+ "Resource": {
52
+ "Fn::ImportValue": "anlia-core-lib-dev-event-queue-arn"
53
+ }
54
+ }
55
+ ],
56
+ "Version": "2012-10-17"
57
+ },
58
+ "PolicyName": "EventLoggerServiceRoleDefaultPolicyF9E4E85B",
59
+ "Roles": [
60
+ {
61
+ "Ref": "EventLoggerServiceRole7A148BEB"
62
+ }
63
+ ]
64
+ },
65
+ "Metadata": {
66
+ "aws:cdk:path": "anlia-core-lib-app-dev/EventLogger/ServiceRole/DefaultPolicy/Resource"
67
+ }
68
+ },
69
+ "EventLogger455115CB": {
70
+ "Type": "AWS::Lambda::Function",
71
+ "Properties": {
72
+ "Code": {
73
+ "S3Bucket": "cdk-hnb659fds-assets-216661146730-us-east-1",
74
+ "S3Key": "dc7aa0aafa98afcdd2faf6146c00c1c90f0e795c782e819001cf6258fc79c93e.zip"
75
+ },
76
+ "FunctionName": "anlia-core-lib-dev-event-logger",
77
+ "Handler": "index.handler",
78
+ "Role": {
79
+ "Fn::GetAtt": [
80
+ "EventLoggerServiceRole7A148BEB",
81
+ "Arn"
82
+ ]
83
+ },
84
+ "Runtime": "nodejs22.x",
85
+ "Timeout": 300
86
+ },
87
+ "DependsOn": [
88
+ "EventLoggerServiceRoleDefaultPolicyF9E4E85B",
89
+ "EventLoggerServiceRole7A148BEB"
90
+ ],
91
+ "Metadata": {
92
+ "aws:cdk:path": "anlia-core-lib-app-dev/EventLogger/Resource",
93
+ "aws:asset:path": "asset.dc7aa0aafa98afcdd2faf6146c00c1c90f0e795c782e819001cf6258fc79c93e",
94
+ "aws:asset:is-bundled": true,
95
+ "aws:asset:property": "Code"
96
+ }
97
+ },
98
+ "EventLoggerSqsEventSourceanliacorelibappdevEventQueue27C8B5BEB34C3C2F": {
99
+ "Type": "AWS::Lambda::EventSourceMapping",
100
+ "Properties": {
101
+ "BatchSize": 10,
102
+ "EventSourceArn": {
103
+ "Fn::ImportValue": "anlia-core-lib-dev-event-queue-arn"
104
+ },
105
+ "FunctionName": {
106
+ "Ref": "EventLogger455115CB"
107
+ }
108
+ },
109
+ "Metadata": {
110
+ "aws:cdk:path": "anlia-core-lib-app-dev/EventLogger/SqsEventSource:anliacorelibappdevEventQueue27C8B5BE/Resource"
111
+ }
112
+ },
113
+ "CDKMetadata": {
114
+ "Type": "AWS::CDK::Metadata",
115
+ "Properties": {
116
+ "Analytics": "v2:deflate64:H4sIAAAAAAAA/2WOQQrCMBBFz9J9OmoL7rXoTlF7gDKm05I2TbSTKBJ6d0kFEYSB9/9fPCaDbL2CZYJPTmXdp1pdIZQOZS/wyVXgO8PZk6ctMgmNw7XGytiaOobjjL030ilrhMIBwsVqEkVjZp6sVvIV6ydNgvMKmckxbCIE57D1sif3o4dQNOZr3T3IuNL6UdIBbzdl2uj7X6dJzMrSYRuriE9Cx4tHtoR4ScdKpaM3Tg0Elw/fV+jeHP8AAAA="
117
+ },
118
+ "Metadata": {
119
+ "aws:cdk:path": "anlia-core-lib-app-dev/CDKMetadata/Default"
120
+ }
121
+ }
122
+ },
123
+ "Parameters": {
124
+ "BootstrapVersion": {
125
+ "Type": "AWS::SSM::Parameter::Value<String>",
126
+ "Default": "/cdk-bootstrap/hnb659fds/version",
127
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
128
+ }
129
+ },
130
+ "Rules": {
131
+ "CheckBootstrapVersion": {
132
+ "Assertions": [
133
+ {
134
+ "Assert": {
135
+ "Fn::Not": [
136
+ {
137
+ "Fn::Contains": [
138
+ [
139
+ "1",
140
+ "2",
141
+ "3",
142
+ "4",
143
+ "5"
144
+ ],
145
+ {
146
+ "Ref": "BootstrapVersion"
147
+ }
148
+ ]
149
+ }
150
+ ]
151
+ },
152
+ "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
153
+ }
154
+ ]
155
+ }
156
+ }
157
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "version": "54.0.0",
3
+ "files": {
4
+ "82c2427d06f715c651981d67275c9fa72a60856f5b4cfed27f0549b8acce5e12": {
5
+ "displayName": "anlia-core-lib-dev Template",
6
+ "source": {
7
+ "path": "anlia-core-lib-dev.template.json",
8
+ "packaging": "file"
9
+ },
10
+ "destinations": {
11
+ "216661146730-us-east-1-90c3ff44": {
12
+ "bucketName": "cdk-hnb659fds-assets-216661146730-us-east-1",
13
+ "objectKey": "82c2427d06f715c651981d67275c9fa72a60856f5b4cfed27f0549b8acce5e12.json",
14
+ "region": "us-east-1",
15
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::216661146730:role/cdk-hnb659fds-file-publishing-role-216661146730-us-east-1"
16
+ }
17
+ }
18
+ }
19
+ },
20
+ "dockerImages": {}
21
+ }