@reventlessdev/reventless-aws 3.0.0-alpha.192 → 3.0.0-alpha.194
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/CHANGELOG.md +15 -0
- package/package.json +8 -8
- package/src/adapter/Counter/CounterHandler_DynamoDbStream.res +1 -0
- package/src/adapter/Counter/CounterHandler_DynamoDbStream.res.mjs +4 -1
- package/src/adapter/Postgres/PgChangeFeedRelay_Builder.res +1 -0
- package/src/adapter/Postgres/PgChangeFeedRelay_Builder.res.mjs +4 -1
- package/src/adapter/Postgres/PgMigration_Builder.res +1 -0
- package/src/adapter/Postgres/PgMigration_Builder.res.mjs +4 -1
- package/src/adapter/QueryDb/PgQueryResolver_Builder.res +1 -0
- package/src/adapter/QueryDb/PgQueryResolver_Builder.res.mjs +4 -1
- package/src/adapter/Runtime/AggregateRuntime_Builder_Micro.res +3 -0
- package/src/adapter/Runtime/AggregateRuntime_Builder_Micro.res.mjs +3 -3
- package/src/adapter/Runtime/AggregateRuntime_Builder_Micro_Async.res +3 -0
- package/src/adapter/Runtime/AggregateRuntime_Builder_Micro_Async.res.mjs +3 -3
- package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate.res +1 -0
- package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate.res.mjs +1 -1
- package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate_Async.res +1 -0
- package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate_Async.res.mjs +1 -1
- package/src/adapter/Runtime/AggregateRuntime_Builder_Single.res +1 -0
- package/src/adapter/Runtime/AggregateRuntime_Builder_Single.res.mjs +1 -1
- package/src/adapter/Runtime/AggregateRuntime_Builder_Single_Async.res +1 -0
- package/src/adapter/Runtime/AggregateRuntime_Builder_Single_Async.res.mjs +1 -1
- package/src/adapter/Runtime/AutomationSliceRuntime_Builder_Single.res +1 -0
- package/src/adapter/Runtime/AutomationSliceRuntime_Builder_Single.res.mjs +1 -1
- package/src/adapter/Runtime/EventCollectorRuntime_Builder_PerEventCollector.res +1 -0
- package/src/adapter/Runtime/EventCollectorRuntime_Builder_PerEventCollector.res.mjs +1 -1
- package/src/adapter/Runtime/EventCollectorRuntime_Builder_Single.res +1 -0
- package/src/adapter/Runtime/EventCollectorRuntime_Builder_Single.res.mjs +1 -1
- package/src/adapter/Runtime/ExtensionPointRuntime_Builder_PerExtensionPoint.res +1 -0
- package/src/adapter/Runtime/ExtensionPointRuntime_Builder_PerExtensionPoint.res.mjs +1 -1
- package/src/adapter/Runtime/RuntimeEnvironment_Lambda.res +13 -4
- package/src/adapter/Runtime/RuntimeEnvironment_Lambda.res.mjs +5 -2
- package/src/adapter/Runtime/SideEffectHandlerRuntime_Builder_Single.res +1 -0
- package/src/adapter/Runtime/SideEffectHandlerRuntime_Builder_Single.res.mjs +1 -1
- package/src/adapter/Runtime/StateChangeSliceRuntime_Builder_Single.res +1 -0
- package/src/adapter/Runtime/StateChangeSliceRuntime_Builder_Single.res.mjs +1 -1
- package/src/adapter/Runtime/StateViewSliceRuntime_Builder_Single.res +1 -0
- package/src/adapter/Runtime/StateViewSliceRuntime_Builder_Single.res.mjs +1 -1
- package/src/adapter/Runtime/TaskRuntime_Builder_PerBucket.res +1 -0
- package/src/adapter/Runtime/TaskRuntime_Builder_PerBucket.res.mjs +1 -1
- package/src/plugin/runtime/PluginExtensionPointRuntime_Builder.res +1 -0
- package/src/plugin/runtime/PluginExtensionPointRuntime_Builder.res.mjs +1 -1
- package/src/plugin/runtime/PluginRuntime_Builder.res +2 -0
- package/src/plugin/runtime/PluginRuntime_Builder.res.mjs +2 -2
- package/src/util/Util_DeadLetterQueue.res +11 -0
- package/src/util/Util_DeadLetterQueue.res.mjs +4 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,21 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# 3.0.0-alpha.194 (2026-07-11)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* **monitoring:** deploy-time Monitoring hook seam for provisioned execution units ([30f1c23](https://github.com/ReventlessDev/reventless-core/commit/30f1c23ba118805dae83af9115341f4aff6db92b))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
# 3.0.0-alpha.193 (2026-07-10)
|
|
14
|
+
|
|
15
|
+
**Note:** Version bump only for package @reventlessdev/reventless-aws
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
6
21
|
# 3.0.0-alpha.192 (2026-07-10)
|
|
7
22
|
|
|
8
23
|
**Note:** Version bump only for package @reventlessdev/reventless-aws
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reventlessdev/reventless-aws",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.194",
|
|
4
4
|
"description": "AWS adapters for Reventless",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"dependencies": {
|
|
@@ -9,16 +9,16 @@
|
|
|
9
9
|
"sury": "11.0.0-alpha.4",
|
|
10
10
|
"uuid": "^13.0.0",
|
|
11
11
|
"@reventlessdev/rescript-aws-sdk": "2.2.0-alpha.20",
|
|
12
|
-
"@reventlessdev/rescript-effect": "0.1.0-alpha.25",
|
|
13
12
|
"@reventlessdev/rescript-jest": "1.0.0-alpha.6",
|
|
14
|
-
"@reventlessdev/rescript-pulumi-aws": "2.4.0-alpha.
|
|
13
|
+
"@reventlessdev/rescript-pulumi-aws": "2.4.0-alpha.48",
|
|
14
|
+
"@reventlessdev/rescript-effect": "0.1.0-alpha.25",
|
|
15
15
|
"@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.14",
|
|
16
|
+
"@reventlessdev/reventless-core": "3.0.0-alpha.154",
|
|
17
|
+
"@reventlessdev/reventless-infra": "3.0.0-alpha.95",
|
|
16
18
|
"@reventlessdev/rescript-uuid": "1.1.0-alpha.14",
|
|
17
|
-
"@reventlessdev/reventless-
|
|
18
|
-
"@reventlessdev/reventless-
|
|
19
|
-
"@reventlessdev/reventless-interop": "3.0.0-alpha.24"
|
|
20
|
-
"@reventlessdev/reventless-spec": "3.0.0-alpha.71",
|
|
21
|
-
"@reventlessdev/reventless-postgres": "3.0.0-alpha.16"
|
|
19
|
+
"@reventlessdev/reventless-postgres": "3.0.0-alpha.18",
|
|
20
|
+
"@reventlessdev/reventless-spec": "3.0.0-alpha.73",
|
|
21
|
+
"@reventlessdev/reventless-interop": "3.0.0-alpha.24"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
24
|
"rescript": "^12.3.0",
|
|
@@ -37,7 +37,10 @@ function make(name, referencesName, referencesDb, countsName, countsDb, param, s
|
|
|
37
37
|
let componentOpts = {
|
|
38
38
|
parent: componentOpts_parent
|
|
39
39
|
};
|
|
40
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name,
|
|
40
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, {
|
|
41
|
+
TAG: "Other",
|
|
42
|
+
_0: "Counter"
|
|
43
|
+
}, match.code, match.sourceCodeHash, envVars, 1024, 30, undefined, undefined, undefined, undefined, undefined, componentOpts);
|
|
41
44
|
let lambda = runtime.parts.lambda;
|
|
42
45
|
let subscribe = (sourceName, source) => Util_EventSourceMapping$ReventlessAws.subscribe(undefined, lambda, name, sourceName, source, opts);
|
|
43
46
|
subscribe(referencesName, referencesStream);
|
|
@@ -68,7 +68,10 @@ function make(name, logs, securityGroupId, subnetIds, intervalMinutesOpt, opts)
|
|
|
68
68
|
subnetIds: subnetIds,
|
|
69
69
|
securityGroupIds: [sgId]
|
|
70
70
|
}));
|
|
71
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name,
|
|
71
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, {
|
|
72
|
+
TAG: "Other",
|
|
73
|
+
_0: "ChangeFeed"
|
|
74
|
+
}, match.code, match.sourceCodeHash, envVars, undefined, undefined, undefined, undefined, undefined, undefined, vpcConfig, opts);
|
|
72
75
|
let secretArns = logs.map(l => l.connectionConfig.apply(cc => cc.secretArn));
|
|
73
76
|
let queueArns = logs.map(l => l.targetQueueArn);
|
|
74
77
|
Pulumi.all([
|
|
@@ -21,7 +21,10 @@ function make(name, handlerConfig, secretArn, securityGroupId, subnetIds, opts)
|
|
|
21
21
|
subnetIds: subnetIds,
|
|
22
22
|
securityGroupIds: [sgId]
|
|
23
23
|
}));
|
|
24
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name,
|
|
24
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, {
|
|
25
|
+
TAG: "Other",
|
|
26
|
+
_0: "Migration"
|
|
27
|
+
}, match.code, sourceCodeHash, envVars, undefined, undefined, undefined, undefined, undefined, undefined, vpcConfig, opts);
|
|
25
28
|
let rolePolicy = new (Aws.iam.RolePolicy)(name + `MigrationAccess`, {
|
|
26
29
|
policy: secretArn.apply(arn => PolicyDocument$PulumiAws.toJsonString(PolicyDocument$PulumiAws.make(undefined, name + `MigrationAccessPolicy`, [{
|
|
27
30
|
Sid: "AllowGetSecret",
|
|
@@ -112,7 +112,10 @@ function provision(api, selection, opts, createNodeResolverOpt) {
|
|
|
112
112
|
subnetIds: selection.subnetIds,
|
|
113
113
|
securityGroupIds: [sgId]
|
|
114
114
|
}));
|
|
115
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name,
|
|
115
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, {
|
|
116
|
+
TAG: "Other",
|
|
117
|
+
_0: "QueryResolver"
|
|
118
|
+
}, match.code, match.sourceCodeHash, envVars, 512, 30, undefined, undefined, undefined, undefined, vpcConfig, opts);
|
|
116
119
|
selection.connectionConfig.apply(cc => new (Aws.iam.RolePolicy)(name + "-pgSecret", {
|
|
117
120
|
policy: PolicyDocument$PulumiAws.toJsonString(PolicyDocument$PulumiAws.make(undefined, name + "-pgSecretPolicy", [{
|
|
118
121
|
Sid: "AllowGetPgSecret",
|
|
@@ -221,6 +221,7 @@ let finish = () =>
|
|
|
221
221
|
let cmdTopicName = baseName ++ "CmdHandler"
|
|
222
222
|
let cmdTopicRuntime = RuntimeEnvironment_Lambda.makeFromCodeAsset(
|
|
223
223
|
~name=cmdTopicName,
|
|
224
|
+
~unitKind=ReventlessCore.Monitoring.CommandHandler,
|
|
224
225
|
~code=cmdTopicCode,
|
|
225
226
|
~sourceCodeHash=cmdTopicSourceCodeHash,
|
|
226
227
|
~envVars=cmdTopicEnvVars,
|
|
@@ -250,6 +251,7 @@ let finish = () =>
|
|
|
250
251
|
let cmdGenName = baseName ++ "CmdGen"
|
|
251
252
|
let cmdGenRuntime = RuntimeEnvironment_Lambda.makeFromCodeAsset(
|
|
252
253
|
~name=cmdGenName,
|
|
254
|
+
~unitKind=ReventlessCore.Monitoring.CommandHandler,
|
|
253
255
|
~code=cmdGenCode,
|
|
254
256
|
~sourceCodeHash=cmdGenSourceCodeHash,
|
|
255
257
|
~envVars=cmdGenEnvVars,
|
|
@@ -294,6 +296,7 @@ let finish = () =>
|
|
|
294
296
|
let evtMapperName = baseName ++ "EventMapper"
|
|
295
297
|
let evtMapperRuntime = RuntimeEnvironment_Lambda.makeFromCodeAsset(
|
|
296
298
|
~name=evtMapperName,
|
|
299
|
+
~unitKind=ReventlessCore.Monitoring.CommandHandler,
|
|
297
300
|
~code=evtMapperCode,
|
|
298
301
|
~sourceCodeHash=evtMapperSourceCodeHash,
|
|
299
302
|
~envVars=evtMapperEnvVars,
|
|
@@ -173,7 +173,7 @@ function finish() {
|
|
|
173
173
|
cmdTopicEnvVars["HANDLER_CONFIG"] = cmdTopicHandlerConfigOutput;
|
|
174
174
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/AggregateEntryPoint.mjs", packageDirs, undefined);
|
|
175
175
|
let cmdTopicName = baseName + "CmdHandler";
|
|
176
|
-
let cmdTopicRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(cmdTopicName, match.code, match.sourceCodeHash, cmdTopicEnvVars, Math.max(spec.commandTopicMemorySize, 1024), Math.max(spec.commandTopicTimeout, 30), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
176
|
+
let cmdTopicRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(cmdTopicName, "CommandHandler", match.code, match.sourceCodeHash, cmdTopicEnvVars, Math.max(spec.commandTopicMemorySize, 1024), Math.max(spec.commandTopicTimeout, 30), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
177
177
|
spec.commandTopicConnects.forEach(connect => connect(cmdTopicRuntime));
|
|
178
178
|
if (spec.commandGeneratorConnects.length !== 0) {
|
|
179
179
|
let cmdGenHandlerConfigOutput = Pulumi.all([
|
|
@@ -185,7 +185,7 @@ function finish() {
|
|
|
185
185
|
cmdGenEnvVars["HANDLER_CONFIG"] = cmdGenHandlerConfigOutput;
|
|
186
186
|
let match$1 = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/AggregateEntryPoint.mjs", packageDirs, undefined);
|
|
187
187
|
let cmdGenName = baseName + "CmdGen";
|
|
188
|
-
let cmdGenRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(cmdGenName, match$1.code, match$1.sourceCodeHash, cmdGenEnvVars, Math.max(spec.commandGeneratorMemorySize, 1024), Math.max(spec.commandGeneratorTimeout, 30), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
188
|
+
let cmdGenRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(cmdGenName, "CommandHandler", match$1.code, match$1.sourceCodeHash, cmdGenEnvVars, Math.max(spec.commandGeneratorMemorySize, 1024), Math.max(spec.commandGeneratorTimeout, 30), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
189
189
|
spec.commandGeneratorConnects.forEach(connect => connect(cmdGenRuntime));
|
|
190
190
|
}
|
|
191
191
|
let match$2 = spec.eventCollectorChannelSpec;
|
|
@@ -208,7 +208,7 @@ function finish() {
|
|
|
208
208
|
evtMapperPackageDirs[mappingsPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(mappingsPkg);
|
|
209
209
|
let match$4 = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/EventMapperEntryPoint.mjs", evtMapperPackageDirs, undefined);
|
|
210
210
|
let evtMapperName = baseName + "EventMapper";
|
|
211
|
-
let evtMapperRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(evtMapperName, match$4.code, match$4.sourceCodeHash, evtMapperEnvVars, Math.max(spec.eventCollectorMemorySize, 2048), Math.max(spec.eventCollectorTimeout, 180), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
211
|
+
let evtMapperRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(evtMapperName, "CommandHandler", match$4.code, match$4.sourceCodeHash, evtMapperEnvVars, Math.max(spec.eventCollectorMemorySize, 2048), Math.max(spec.eventCollectorTimeout, 180), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
212
212
|
EventCollectorChannel_DynamoDbStream$ReventlessAws.connect(evtMapperName, [match$2], evtMapperRuntime, aggregateOpts);
|
|
213
213
|
});
|
|
214
214
|
}
|
|
@@ -224,6 +224,7 @@ let finish = () =>
|
|
|
224
224
|
let cmdTopicName = baseName ++ "CmdHandler"
|
|
225
225
|
let cmdTopicRuntime = RuntimeEnvironment_Lambda.makeFromCodeAsset(
|
|
226
226
|
~name=cmdTopicName,
|
|
227
|
+
~unitKind=ReventlessCore.Monitoring.CommandHandler,
|
|
227
228
|
~code=cmdTopicCode,
|
|
228
229
|
~sourceCodeHash=cmdTopicSourceCodeHash,
|
|
229
230
|
~envVars=cmdTopicEnvVars,
|
|
@@ -254,6 +255,7 @@ let finish = () =>
|
|
|
254
255
|
let cmdGenName = baseName ++ "CmdGen"
|
|
255
256
|
let cmdGenRuntime = RuntimeEnvironment_Lambda.makeFromCodeAsset(
|
|
256
257
|
~name=cmdGenName,
|
|
258
|
+
~unitKind=ReventlessCore.Monitoring.CommandHandler,
|
|
257
259
|
~code=cmdGenCode,
|
|
258
260
|
~sourceCodeHash=cmdGenSourceCodeHash,
|
|
259
261
|
~envVars=cmdGenEnvVars,
|
|
@@ -298,6 +300,7 @@ let finish = () =>
|
|
|
298
300
|
let evtMapperName = baseName ++ "EventMapper"
|
|
299
301
|
let evtMapperRuntime = RuntimeEnvironment_Lambda.makeFromCodeAsset(
|
|
300
302
|
~name=evtMapperName,
|
|
303
|
+
~unitKind=ReventlessCore.Monitoring.CommandHandler,
|
|
301
304
|
~code=evtMapperCode,
|
|
302
305
|
~sourceCodeHash=evtMapperSourceCodeHash,
|
|
303
306
|
~envVars=evtMapperEnvVars,
|
|
@@ -173,7 +173,7 @@ function finish() {
|
|
|
173
173
|
cmdTopicEnvVars["HANDLER_CONFIG"] = cmdTopicHandlerConfigOutput;
|
|
174
174
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/AggregateEntryPoint.mjs", packageDirs, undefined);
|
|
175
175
|
let cmdTopicName = baseName + "CmdHandler";
|
|
176
|
-
let cmdTopicRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(cmdTopicName, match.code, match.sourceCodeHash, cmdTopicEnvVars, Math.max(spec.commandTopicMemorySize, 1024), Math.max(spec.commandTopicTimeout, 30), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
176
|
+
let cmdTopicRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(cmdTopicName, "CommandHandler", match.code, match.sourceCodeHash, cmdTopicEnvVars, Math.max(spec.commandTopicMemorySize, 1024), Math.max(spec.commandTopicTimeout, 30), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
177
177
|
spec.commandTopicConnects.forEach(connect => connect(cmdTopicRuntime));
|
|
178
178
|
if (spec.commandGeneratorConnects.length !== 0) {
|
|
179
179
|
let cmdGenHandlerConfigOutput = Pulumi.all([
|
|
@@ -186,7 +186,7 @@ function finish() {
|
|
|
186
186
|
cmdGenEnvVars["DISPATCH_MODE"] = "async";
|
|
187
187
|
let match$1 = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/AggregateEntryPoint.mjs", packageDirs, undefined);
|
|
188
188
|
let cmdGenName = baseName + "CmdGen";
|
|
189
|
-
let cmdGenRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(cmdGenName, match$1.code, match$1.sourceCodeHash, cmdGenEnvVars, Math.max(spec.commandGeneratorMemorySize, 1024), Math.max(spec.commandGeneratorTimeout, 30), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
189
|
+
let cmdGenRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(cmdGenName, "CommandHandler", match$1.code, match$1.sourceCodeHash, cmdGenEnvVars, Math.max(spec.commandGeneratorMemorySize, 1024), Math.max(spec.commandGeneratorTimeout, 30), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
190
190
|
spec.commandGeneratorConnects.forEach(connect => connect(cmdGenRuntime));
|
|
191
191
|
}
|
|
192
192
|
let match$2 = spec.eventCollectorChannelSpec;
|
|
@@ -209,7 +209,7 @@ function finish() {
|
|
|
209
209
|
evtMapperPackageDirs[mappingsPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(mappingsPkg);
|
|
210
210
|
let match$4 = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/EventMapperEntryPoint.mjs", evtMapperPackageDirs, undefined);
|
|
211
211
|
let evtMapperName = baseName + "EventMapper";
|
|
212
|
-
let evtMapperRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(evtMapperName, match$4.code, match$4.sourceCodeHash, evtMapperEnvVars, Math.max(spec.eventCollectorMemorySize, 2048), Math.max(spec.eventCollectorTimeout, 180), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
212
|
+
let evtMapperRuntime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(evtMapperName, "CommandHandler", match$4.code, match$4.sourceCodeHash, evtMapperEnvVars, Math.max(spec.eventCollectorMemorySize, 2048), Math.max(spec.eventCollectorTimeout, 180), undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
213
213
|
EventCollectorChannel_DynamoDbStream$ReventlessAws.connect(evtMapperName, [match$2], evtMapperRuntime, aggregateOpts);
|
|
214
214
|
});
|
|
215
215
|
}
|
|
@@ -152,7 +152,7 @@ function finish() {
|
|
|
152
152
|
packageDirs[specPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(specPkg);
|
|
153
153
|
packageDirs[behaviorPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(behaviorPkg);
|
|
154
154
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/AggregateEntryPoint.mjs", packageDirs, undefined);
|
|
155
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(lambdaName, match.code, match.sourceCodeHash, envVars, spec.memorySize, spec.timeout, undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
155
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(lambdaName, "CommandHandler", match.code, match.sourceCodeHash, envVars, spec.memorySize, spec.timeout, undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
156
156
|
spec.connects.forEach(connect => connect(runtime));
|
|
157
157
|
let channelSpecs = Stdlib_Option.mapOr(spec.eventCollectorChannelSpec, [], cs => [cs]);
|
|
158
158
|
EventCollectorChannel_DynamoDbStream$ReventlessAws.connect(name, channelSpecs, runtime, aggregateOpts);
|
|
@@ -152,7 +152,7 @@ function finish() {
|
|
|
152
152
|
packageDirs[specPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(specPkg);
|
|
153
153
|
packageDirs[behaviorPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(behaviorPkg);
|
|
154
154
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/AggregateEntryPoint.mjs", packageDirs, undefined);
|
|
155
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, match.code, match.sourceCodeHash, envVars, spec.memorySize, spec.timeout, undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
155
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, "CommandHandler", match.code, match.sourceCodeHash, envVars, spec.memorySize, spec.timeout, undefined, undefined, undefined, undefined, undefined, aggregateOpts);
|
|
156
156
|
spec.connects.forEach(connect => connect(runtime));
|
|
157
157
|
let channelSpecs = Stdlib_Option.mapOr(spec.eventCollectorChannelSpec, [], cs => [cs]);
|
|
158
158
|
EventCollectorChannel_DynamoDbStream$ReventlessAws.connect(name, channelSpecs, runtime, aggregateOpts);
|
|
@@ -196,7 +196,7 @@ function finish() {
|
|
|
196
196
|
subnetIds: pgSelection.subnetIds,
|
|
197
197
|
securityGroupIds: [sgId]
|
|
198
198
|
})) : undefined;
|
|
199
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllAggregatesCmdHandler", match.code, match.sourceCodeHash, envVars, cfg.memorySize, cfg.timeout, cfg.reservedConcurrency, cfg.ephemeralStorageMb, cfg.logRetentionDays, undefined, vpcConfig, opts);
|
|
199
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllAggregatesCmdHandler", "CommandHandler", match.code, match.sourceCodeHash, envVars, cfg.memorySize, cfg.timeout, cfg.reservedConcurrency, cfg.ephemeralStorageMb, cfg.logRetentionDays, undefined, vpcConfig, opts);
|
|
200
200
|
if (pgSelection !== undefined) {
|
|
201
201
|
pgSelection.connectionConfig.apply(cc => new (Aws.iam.RolePolicy)("AllAggregatesCmdHandler-pgSecret", {
|
|
202
202
|
policy: PolicyDocument$PulumiAws.toJsonString(PolicyDocument$PulumiAws.make(undefined, "AllAggregatesCmdHandler-pgSecretPolicy", [{
|
|
@@ -185,7 +185,7 @@ function finish() {
|
|
|
185
185
|
subnetIds: pgSelection.subnetIds,
|
|
186
186
|
securityGroupIds: [sgId]
|
|
187
187
|
})) : undefined;
|
|
188
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllAggregatesAsyncCmdHandler", match.code, match.sourceCodeHash, envVars, cfg.memorySize, cfg.timeout, cfg.reservedConcurrency, cfg.ephemeralStorageMb, cfg.logRetentionDays, undefined, vpcConfig, opts);
|
|
188
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllAggregatesAsyncCmdHandler", "CommandHandler", match.code, match.sourceCodeHash, envVars, cfg.memorySize, cfg.timeout, cfg.reservedConcurrency, cfg.ephemeralStorageMb, cfg.logRetentionDays, undefined, vpcConfig, opts);
|
|
189
189
|
if (pgSelection !== undefined) {
|
|
190
190
|
pgSelection.connectionConfig.apply(cc => new (Aws.iam.RolePolicy)("AllAggregatesAsyncCmdHandler-pgSecret", {
|
|
191
191
|
policy: PolicyDocument$PulumiAws.toJsonString(PolicyDocument$PulumiAws.make(undefined, "AllAggregatesAsyncCmdHandler-pgSecretPolicy", [{
|
|
@@ -116,7 +116,7 @@ function finish() {
|
|
|
116
116
|
let envVars = {};
|
|
117
117
|
envVars["HANDLER_CONFIG"] = handlerConfigOutput;
|
|
118
118
|
let match$1 = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/AutomationSliceEntryPoint.mjs", packageDirs, undefined);
|
|
119
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllAutomationSlices", match$1.code, match$1.sourceCodeHash, envVars, match[0], match[1], undefined, undefined, undefined, undefined, undefined, opts);
|
|
119
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllAutomationSlices", "Reactor", match$1.code, match$1.sourceCodeHash, envVars, match[0], match[1], undefined, undefined, undefined, undefined, undefined, opts);
|
|
120
120
|
let channelSpecs = storedSpecs.map(param => param.channelSpec);
|
|
121
121
|
EventCollectorChannel_DynamoDbStream$ReventlessAws.connect("AllAutomationSlices", channelSpecs, runtime, opts);
|
|
122
122
|
} else {
|
|
@@ -61,7 +61,7 @@ function forEventCollector(param, eventTopics, resources, memorySizeOpt, timeout
|
|
|
61
61
|
packageDirs[specPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(specPkg);
|
|
62
62
|
packageDirs[mappingsPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(mappingsPkg);
|
|
63
63
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/ReadModelEntryPoint.mjs", packageDirs, undefined);
|
|
64
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts);
|
|
64
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, "EventCollector", match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts);
|
|
65
65
|
EventCollectorChannel_DynamoDbStream$ReventlessAws.connect(name, [{
|
|
66
66
|
channel: channel,
|
|
67
67
|
eventTopics: eventTopics,
|
|
@@ -158,7 +158,7 @@ function finish() {
|
|
|
158
158
|
subnetIds: qdbSelection.subnetIds,
|
|
159
159
|
securityGroupIds: [sgId]
|
|
160
160
|
})) : undefined;
|
|
161
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllReadModels", match$1.code, match$1.sourceCodeHash, envVars, match[0], match[1], undefined, undefined, undefined, undefined, vpcConfig, opts);
|
|
161
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllReadModels", "EventCollector", match$1.code, match$1.sourceCodeHash, envVars, match[0], match[1], undefined, undefined, undefined, undefined, vpcConfig, opts);
|
|
162
162
|
if (qdbSelection !== undefined && anyPgBacked) {
|
|
163
163
|
qdbSelection.connectionConfig.apply(cc => new (Aws.iam.RolePolicy)("AllReadModels-pgSecret", {
|
|
164
164
|
policy: PolicyDocument$PulumiAws.toJsonString(PolicyDocument$PulumiAws.make(undefined, "AllReadModels-pgSecretPolicy", [{
|
|
@@ -39,7 +39,7 @@ function forCommandTopic(param, connect, memorySizeOpt, timeoutOpt, specModuleUr
|
|
|
39
39
|
packageDirs[specPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(specPkg);
|
|
40
40
|
packageDirs[mappingsPkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(mappingsPkg);
|
|
41
41
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/ExtensionPointEntryPoint.mjs", packageDirs, undefined);
|
|
42
|
-
return connect(RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts));
|
|
42
|
+
return connect(RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, "CommandHandler", match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts));
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
function finish() {
|
|
@@ -66,6 +66,10 @@ let make: ReventlessCore.Runtime.environmentMaker<'event, context, 'result, part
|
|
|
66
66
|
|
|
67
67
|
let makeFromCodeAsset: (
|
|
68
68
|
~name: string,
|
|
69
|
+
/** The monitoring role this execution unit plays. Every call site passes its
|
|
70
|
+
kind; `makeFromCodeAsset` announces the provisioned Lambda to the
|
|
71
|
+
`Monitoring` registry (no-op unless an extension registered a backend). */
|
|
72
|
+
~unitKind: ReventlessCore.Monitoring.unitKind,
|
|
69
73
|
~code: Pulumi.Archive.t,
|
|
70
74
|
~sourceCodeHash: string,
|
|
71
75
|
~envVars: dict<Pulumi.Input.t<string>>=?,
|
|
@@ -86,6 +90,7 @@ let makeFromCodeAsset: (
|
|
|
86
90
|
~opts: Pulumi.ComponentResource.options=?,
|
|
87
91
|
) => ReventlessCore.Runtime.environment<parts> = (
|
|
88
92
|
~name,
|
|
93
|
+
~unitKind,
|
|
89
94
|
~code,
|
|
90
95
|
~sourceCodeHash,
|
|
91
96
|
~envVars=Dict.make(),
|
|
@@ -253,12 +258,16 @@ let makeFromCodeAsset: (
|
|
|
253
258
|
}
|
|
254
259
|
})
|
|
255
260
|
|
|
261
|
+
let lambdaResource = lambda->Util.Lambda.functionToResource(~tags=tags->Pulumi.Output.fromInput)
|
|
262
|
+
|
|
263
|
+
// Announce the provisioned execution unit to the Monitoring registry. No-op
|
|
264
|
+
// unless a deploy program registered a backend via Monitoring.use — see
|
|
265
|
+
// docs/plans/monitoring-hook-seam.md.
|
|
266
|
+
ReventlessCore.Monitoring.notify(~kind=unitKind, ~name, ~component=lambdaResource)
|
|
267
|
+
|
|
256
268
|
{
|
|
257
269
|
parts: {lambda: lambda->Pulumi.Output.make, lambdaRole},
|
|
258
|
-
resources: [
|
|
259
|
-
lambda->Util.Lambda.functionToResource(~tags=tags->Pulumi.Output.fromInput),
|
|
260
|
-
Util_IAM_Role.toResource(lambdaRole),
|
|
261
|
-
],
|
|
270
|
+
resources: [lambdaResource, Util_IAM_Role.toResource(lambdaRole)],
|
|
262
271
|
}
|
|
263
272
|
}
|
|
264
273
|
|
|
@@ -13,6 +13,7 @@ import * as AWS_Tags$ReventlessAws from "../AWS_Tags.res.mjs";
|
|
|
13
13
|
import * as Adapter$ReventlessCore from "@reventlessdev/reventless-core/src/adapter/Adapter.res.mjs";
|
|
14
14
|
import * as Runtime$ReventlessCore from "@reventlessdev/reventless-core/src/adapter/Runtime/Runtime.res.mjs";
|
|
15
15
|
import * as PolicyDocument$PulumiAws from "@reventlessdev/rescript-pulumi-aws/src/IAM/PolicyDocument.res.mjs";
|
|
16
|
+
import * as Monitoring$ReventlessCore from "@reventlessdev/reventless-core/src/adapter/Monitoring/Monitoring.res.mjs";
|
|
16
17
|
import * as Util_Bundle$ReventlessAws from "../../util/Util_Bundle.res.mjs";
|
|
17
18
|
import * as Util_Lambda$ReventlessAws from "../../util/Util_Lambda.res.mjs";
|
|
18
19
|
import * as Util_Pulumi$ReventlessCore from "@reventlessdev/reventless-core/src/util/Util_Pulumi.res.mjs";
|
|
@@ -42,7 +43,7 @@ function make(name, handler, memorySizeOpt, timeoutOpt, opts) {
|
|
|
42
43
|
};
|
|
43
44
|
}
|
|
44
45
|
|
|
45
|
-
function makeFromCodeAsset(name, code, sourceCodeHash, envVarsOpt, memorySizeOpt, timeoutOpt, reservedConcurrency, ephemeralStorageMb, logRetentionDays, dcbMetricsOpt, vpcConfig, opts) {
|
|
46
|
+
function makeFromCodeAsset(name, unitKind, code, sourceCodeHash, envVarsOpt, memorySizeOpt, timeoutOpt, reservedConcurrency, ephemeralStorageMb, logRetentionDays, dcbMetricsOpt, vpcConfig, opts) {
|
|
46
47
|
let envVars = envVarsOpt !== undefined ? envVarsOpt : ({});
|
|
47
48
|
let memorySize = memorySizeOpt !== undefined ? memorySizeOpt : Runtime$ReventlessCore.CommandHandlerDefaults.memorySize;
|
|
48
49
|
let timeout = timeoutOpt !== undefined ? timeoutOpt : Runtime$ReventlessCore.CommandHandlerDefaults.timeout;
|
|
@@ -143,13 +144,15 @@ function makeFromCodeAsset(name, code, sourceCodeHash, envVarsOpt, memorySizeOpt
|
|
|
143
144
|
return;
|
|
144
145
|
}
|
|
145
146
|
});
|
|
147
|
+
let lambdaResource = Util_Lambda$ReventlessAws.functionToResource(tags, lambda);
|
|
148
|
+
Monitoring$ReventlessCore.notify(unitKind, name, lambdaResource);
|
|
146
149
|
return {
|
|
147
150
|
parts: {
|
|
148
151
|
lambda: Pulumi.output(lambda),
|
|
149
152
|
lambdaRole: lambdaRole
|
|
150
153
|
},
|
|
151
154
|
resources: [
|
|
152
|
-
|
|
155
|
+
lambdaResource,
|
|
153
156
|
Util_IAM_Role$ReventlessAws.toResource(lambdaRole)
|
|
154
157
|
]
|
|
155
158
|
};
|
|
@@ -100,7 +100,7 @@ function finish() {
|
|
|
100
100
|
let envVars = {};
|
|
101
101
|
envVars["HANDLER_CONFIG"] = handlerConfigOutput;
|
|
102
102
|
let match$1 = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/SideEffectEntryPoint.mjs", packageDirs, undefined);
|
|
103
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllSideEffectHandlers", match$1.code, match$1.sourceCodeHash, envVars, match[0], match[1], undefined, undefined, undefined, undefined, undefined, opts);
|
|
103
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllSideEffectHandlers", "Reactor", match$1.code, match$1.sourceCodeHash, envVars, match[0], match[1], undefined, undefined, undefined, undefined, undefined, opts);
|
|
104
104
|
let channelSpecs = storedSpecs.map(param => param.channelSpec);
|
|
105
105
|
EventCollectorChannel_DynamoDbStream$ReventlessAws.connect("AllSideEffectHandlers", channelSpecs, runtime, opts);
|
|
106
106
|
} else {
|
|
@@ -77,7 +77,7 @@ function forDcbCommandTopic(slicePaths, dcbTableName, pluginName, syncConfig, as
|
|
|
77
77
|
subnetIds: pgSelection.subnetIds,
|
|
78
78
|
securityGroupIds: [sgId]
|
|
79
79
|
})) : undefined;
|
|
80
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, match.code, match.sourceCodeHash, envVars, cfg.memorySize, cfg.timeout, cfg.reservedConcurrency, cfg.ephemeralStorageMb, cfg.logRetentionDays, true, vpcConfig, opts);
|
|
80
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, "CommandHandler", match.code, match.sourceCodeHash, envVars, cfg.memorySize, cfg.timeout, cfg.reservedConcurrency, cfg.ephemeralStorageMb, cfg.logRetentionDays, true, vpcConfig, opts);
|
|
81
81
|
if (pgSelection !== undefined) {
|
|
82
82
|
pgSelection.connectionConfig.apply(cc => new (Aws.iam.RolePolicy)(name + `-pgSecret`, {
|
|
83
83
|
policy: PolicyDocument$PulumiAws.toJsonString(PolicyDocument$PulumiAws.make(undefined, name + `-pgSecretPolicy`, [{
|
|
@@ -158,7 +158,7 @@ function buildLambda(parent, handlerOutputs, packageDirs, channelSpecs, feedQueu
|
|
|
158
158
|
subnetIds: qdbSelection.subnetIds,
|
|
159
159
|
securityGroupIds: [sgId]
|
|
160
160
|
})) : undefined;
|
|
161
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllStateViewSlices", match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, vpcConfig, opts);
|
|
161
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset("AllStateViewSlices", "Projection", match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, vpcConfig, opts);
|
|
162
162
|
if (qdbSelection !== undefined) {
|
|
163
163
|
qdbSelection.connectionConfig.apply(cc => new (Aws.iam.RolePolicy)("AllStateViewSlices-pgSecret", {
|
|
164
164
|
policy: PolicyDocument$PulumiAws.toJsonString(PolicyDocument$PulumiAws.make(undefined, "AllStateViewSlices-pgSecretPolicy", [{
|
|
@@ -29,7 +29,7 @@ function forBucketCallback(param, connect, memorySizeOpt, timeoutOpt, name, call
|
|
|
29
29
|
let pkg = Util_Bundle$ReventlessAws.extractPackageName(callbackModulePath);
|
|
30
30
|
packageDirs[pkg] = Util_Bundle$ReventlessAws.resolvePackageRoot(pkg);
|
|
31
31
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/TaskBucketEntryPoint.mjs", packageDirs, undefined);
|
|
32
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(fullName, match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, {
|
|
32
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(fullName, "Task", match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, {
|
|
33
33
|
parent: resource
|
|
34
34
|
});
|
|
35
35
|
if (schedulerConfig !== undefined) {
|
|
@@ -66,7 +66,7 @@ function forCommandTopic(param, connect, memorySizeOpt, timeoutOpt, param$1, par
|
|
|
66
66
|
});
|
|
67
67
|
envVars["HANDLER_CONFIG"] = handlerConfigJson;
|
|
68
68
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/PluginExtensionPointEntryPoint.mjs", {}, undefined);
|
|
69
|
-
return connect(RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts));
|
|
69
|
+
return connect(RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, "CommandHandler", match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts));
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
function finish() {
|
|
@@ -483,6 +483,7 @@ module Make = (
|
|
|
483
483
|
|
|
484
484
|
let runtime = RuntimeEnvironment_Lambda.makeFromCodeAsset(
|
|
485
485
|
~name,
|
|
486
|
+
~unitKind=ReventlessCore.Monitoring.EventCollector,
|
|
486
487
|
~code=codeOutput->Obj.magic,
|
|
487
488
|
~sourceCodeHash=sourceCodeHashOutput->Obj.magic,
|
|
488
489
|
~envVars,
|
|
@@ -760,6 +761,7 @@ module Make = (
|
|
|
760
761
|
|
|
761
762
|
let runtime = RuntimeEnvironment_Lambda.makeFromCodeAsset(
|
|
762
763
|
~name,
|
|
764
|
+
~unitKind=ReventlessCore.Monitoring.Scheduler,
|
|
763
765
|
~code,
|
|
764
766
|
~sourceCodeHash,
|
|
765
767
|
~envVars,
|
|
@@ -312,7 +312,7 @@ function Make(EventCollectorChannel) {
|
|
|
312
312
|
});
|
|
313
313
|
let codeOutput = bundleOutput.apply(b => b.code);
|
|
314
314
|
let sourceCodeHashOutput = bundleOutput.apply(b => b.sourceCodeHash);
|
|
315
|
-
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, codeOutput, sourceCodeHashOutput, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts);
|
|
315
|
+
let runtime = RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, "EventCollector", codeOutput, sourceCodeHashOutput, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts);
|
|
316
316
|
EventCollectorChannel.connect(name, [{
|
|
317
317
|
channel: eventCollector.channel,
|
|
318
318
|
eventTopics: eventTopics,
|
|
@@ -434,7 +434,7 @@ function Make(EventCollectorChannel) {
|
|
|
434
434
|
envVars["PLUGIN_ID"] = Pulumi.output(hbConfig.pluginId);
|
|
435
435
|
envVars["HEARTBEAT_TIMEOUT"] = Pulumi.output(hbConfig.heartbeatTimeout.toString());
|
|
436
436
|
let match = Util_Bundle$ReventlessAws.buildCodeArchive("@reventlessdev/reventless-aws/src/adapter/Runtime/HeartbeatEntryPoint.mjs", {}, undefined);
|
|
437
|
-
connect(RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts));
|
|
437
|
+
connect(RuntimeEnvironment_Lambda$ReventlessAws.makeFromCodeAsset(name, "Scheduler", match.code, match.sourceCodeHash, envVars, memorySize, timeout, undefined, undefined, undefined, undefined, undefined, opts));
|
|
438
438
|
};
|
|
439
439
|
let forDcbCommandTopic = (param, connect, $staropt$star, $staropt$star$1, dcbCommandTopic) => {
|
|
440
440
|
$staropt$star !== undefined;
|
|
@@ -70,6 +70,17 @@ let handler = Lambda.Function.make(
|
|
|
70
70
|
~opts,
|
|
71
71
|
)
|
|
72
72
|
|
|
73
|
+
// Second Monitoring provisioning site (§2): the dead-letter mechanism. Role-based
|
|
74
|
+
// kind, mechanism-agnostic resource — no-op unless a backend is registered.
|
|
75
|
+
ReventlessCore.Monitoring.notify(
|
|
76
|
+
~kind=DeadLetterSink,
|
|
77
|
+
~name,
|
|
78
|
+
~component=Util_Lambda.functionToResource(
|
|
79
|
+
handler,
|
|
80
|
+
~tags=AWS.Tags.make(~name, ReventlessCore.CommandTopic.componentType)->Pulumi.Output.fromInput,
|
|
81
|
+
),
|
|
82
|
+
)
|
|
83
|
+
|
|
73
84
|
let lambda = handler->Pulumi.Output.make
|
|
74
85
|
|
|
75
86
|
let _subscription = Util_EventSourceMapping.subscribeSqs(~lambda, ~name, ~queue, ~opts)
|
|
@@ -8,7 +8,9 @@ import * as Lambda$PulumiAws from "@reventlessdev/rescript-pulumi-aws/src/Lambda
|
|
|
8
8
|
import * as AWS$ReventlessAws from "../adapter/AWS.res.mjs";
|
|
9
9
|
import * as AWS_Tags$ReventlessAws from "../adapter/AWS_Tags.res.mjs";
|
|
10
10
|
import * as PolicyDocument$PulumiAws from "@reventlessdev/rescript-pulumi-aws/src/IAM/PolicyDocument.res.mjs";
|
|
11
|
+
import * as Monitoring$ReventlessCore from "@reventlessdev/reventless-core/src/adapter/Monitoring/Monitoring.res.mjs";
|
|
11
12
|
import * as Util_Bundle$ReventlessAws from "./Util_Bundle.res.mjs";
|
|
13
|
+
import * as Util_Lambda$ReventlessAws from "./Util_Lambda.res.mjs";
|
|
12
14
|
import * as CommandTopic$ReventlessCore from "@reventlessdev/reventless-core/src/components/CommandTopic/CommandTopic.res.mjs";
|
|
13
15
|
import * as Util_EventSourceMapping$ReventlessAws from "./Util_EventSourceMapping.res.mjs";
|
|
14
16
|
|
|
@@ -68,6 +70,8 @@ let handler = new (Aws.lambda.Function)(name, {
|
|
|
68
70
|
sourceCodeHash: sourceCodeHash
|
|
69
71
|
}, opts);
|
|
70
72
|
|
|
73
|
+
Monitoring$ReventlessCore.notify("DeadLetterSink", name, Util_Lambda$ReventlessAws.functionToResource(AWS_Tags$ReventlessAws.make(name, CommandTopic$ReventlessCore.componentType), handler));
|
|
74
|
+
|
|
71
75
|
let lambda = Pulumi.output(handler);
|
|
72
76
|
|
|
73
77
|
let _subscription = Util_EventSourceMapping$ReventlessAws.subscribeSqs(lambda, name, queue, undefined, opts);
|