@versori/run 0.5.0-alpha.1 → 0.5.0-alpha.3
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/esm/deps/jsr.io/@std/encoding/1.0.10/_common64.d.ts +35 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common64.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common64.js +113 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts +4 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.js +13 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts +9 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.js +2 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/base64.d.ts +40 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/base64.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/base64.js +82 -0
- package/esm/src/connection/CredentialsProvider.d.ts +23 -0
- package/esm/src/connection/CredentialsProvider.d.ts.map +1 -0
- package/esm/src/connection/CredentialsProvider.js +130 -0
- package/esm/src/connection/DirectConnectionFactory.d.ts +3 -3
- package/esm/src/connection/DirectConnectionFactory.d.ts.map +1 -1
- package/esm/src/credentials/CredentialsProvider.d.ts +49 -0
- package/esm/src/credentials/CredentialsProvider.d.ts.map +1 -0
- package/esm/src/credentials/CredentialsProvider.js +102 -0
- package/esm/src/dsl/http/versori/configloader.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/webhookmiddleware.js +8 -1
- package/esm/src/internal/supervisor.d.ts +2 -0
- package/esm/src/internal/supervisor.d.ts.map +1 -1
- package/esm/src/internal/supervisor.js +25 -2
- package/esm/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/durable/DurableInterpreter.js +6 -39
- package/esm/src/interpreter/durable/compilers/catch.d.ts.map +1 -1
- package/esm/src/interpreter/durable/compilers/catch.js +7 -5
- package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/memory/MemoryInterpreter.js +6 -39
- package/esm/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/catch.js +9 -5
- package/esm/src/interpreter/memory/compilers/fn.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/fn.js +2 -1
- package/esm/src/interpreter/memory/compilers/http.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/http.js +2 -1
- package/esm/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/schedule.js +2 -0
- package/esm/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/webhook.js +7 -3
- package/esm/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
- package/esm/src/kv/nats/NatsKeyValueProvider.js +2 -2
- package/esm/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
- package/esm/src/kv/sdk/SDKKeyValueProvider.js +3 -3
- package/package.json +1 -1
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common64.d.ts +35 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common64.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common64.js +119 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts +4 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.js +16 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts +9 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_types.js +3 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/base64.d.ts +40 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/base64.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/base64.js +86 -0
- package/script/src/connection/CredentialsProvider.d.ts +23 -0
- package/script/src/connection/CredentialsProvider.d.ts.map +1 -0
- package/script/src/connection/CredentialsProvider.js +134 -0
- package/script/src/connection/DirectConnectionFactory.d.ts +3 -3
- package/script/src/connection/DirectConnectionFactory.d.ts.map +1 -1
- package/script/src/credentials/CredentialsProvider.d.ts +49 -0
- package/script/src/credentials/CredentialsProvider.d.ts.map +1 -0
- package/script/src/credentials/CredentialsProvider.js +106 -0
- package/script/src/dsl/http/versori/configloader.d.ts.map +1 -1
- package/script/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
- package/script/src/dsl/http/versori/webhookmiddleware.js +8 -1
- package/script/src/internal/supervisor.d.ts +2 -0
- package/script/src/internal/supervisor.d.ts.map +1 -1
- package/script/src/internal/supervisor.js +26 -2
- package/script/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/durable/DurableInterpreter.js +5 -38
- package/script/src/interpreter/durable/compilers/catch.d.ts.map +1 -1
- package/script/src/interpreter/durable/compilers/catch.js +7 -5
- package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/memory/MemoryInterpreter.js +5 -38
- package/script/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/catch.js +9 -5
- package/script/src/interpreter/memory/compilers/fn.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/fn.js +1 -0
- package/script/src/interpreter/memory/compilers/http.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/http.js +1 -0
- package/script/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/schedule.js +2 -0
- package/script/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/webhook.js +7 -3
- package/script/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
- package/script/src/kv/nats/NatsKeyValueProvider.js +2 -2
- package/script/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
- package/script/src/kv/sdk/SDKKeyValueProvider.js +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configloader.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/configloader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"configloader.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/configloader.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,YAAY,EAA+B,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGlG;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,gBAAgB,CAUrD;AAED,qBAAa,mBAAoB,YAAW,YAAY;IACpD,OAAO,CAAC,UAAU,CAAmB;gBAEzB,GAAG,EAAE,gBAAgB;IAIjC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB;IAShD,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI/C,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAczC,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;CAa9C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhookmiddleware.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/webhookmiddleware.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"webhookmiddleware.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/webhookmiddleware.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAc,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,2BAA2B,GAAG;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,SAAS,EAAE,YAAY,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;CACf,CAAC;AAmCF,wBAAgB,6BAA6B,CACzC,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAqGpE;AAED,wBAAgB,mCAAmC,CAC/C,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAyEpE;AAED,wBAAgB,oCAAoC,CAChD,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CA2FpE"}
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
* As of the Change Date, in accordance with the Business Source License,
|
|
11
11
|
* use of this software will be governed by the Apache License, Version 2.0.
|
|
12
12
|
*/
|
|
13
|
+
import { ulid } from '../../../../deps/jsr.io/@std/ulid/1.0.0/mod.js';
|
|
13
14
|
import { enabled as supervisorEnabled } from '../../../internal/supervisor.js';
|
|
14
15
|
// TODO: this gets called for every request for all endpoints, can we cache this?
|
|
15
16
|
async function getStaticActivation(opts) {
|
|
@@ -44,8 +45,14 @@ export function createStaticWebhookMiddleware(opts) {
|
|
|
44
45
|
res.locals.activation = await getStaticActivation(opts);
|
|
45
46
|
}
|
|
46
47
|
catch (err) {
|
|
48
|
+
// when working in mocks users might not be connected so there might not be an activation
|
|
47
49
|
if (supervisorEnabled) {
|
|
48
|
-
res.locals.activation = {
|
|
50
|
+
res.locals.activation = {
|
|
51
|
+
id: ulid(), // random ulid used for testing
|
|
52
|
+
user: {
|
|
53
|
+
externalId: '__ai_mock_testing__',
|
|
54
|
+
}
|
|
55
|
+
};
|
|
49
56
|
next();
|
|
50
57
|
return;
|
|
51
58
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Span } from '@opentelemetry/api';
|
|
1
2
|
import { ExportResult } from '@opentelemetry/core';
|
|
2
3
|
import { ReadableSpan, SpanExporter } from '@opentelemetry/sdk-trace-node';
|
|
3
4
|
export declare const enabled: boolean;
|
|
@@ -13,6 +14,7 @@ type MockConnection = {
|
|
|
13
14
|
baseUrl?: string;
|
|
14
15
|
};
|
|
15
16
|
export declare function registerWebhooks(webhooks: Webhooks): Promise<void>;
|
|
17
|
+
export declare function sendTaskStartEvent(taskId: string, span: Span): Promise<void>;
|
|
16
18
|
export declare function registerCrons(crons: Crons): Promise<void>;
|
|
17
19
|
export declare function mockAPIRequest(info: RequestInfo | URL, cnx?: MockConnection, options?: RequestInit): Promise<Response>;
|
|
18
20
|
export declare class Fake implements SpanExporter {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../../src/src/internal/supervisor.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAA6D,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAO3E,eAAO,MAAM,OAAO,SAEjB,CAAA;AAyBH,KAAK,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAAC;AAC5E,KAAK,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjC,KAAK,cAAc,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAA;AAED,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBxE;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/D;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAoC5H;AAyBD,qBAAa,IAAK,YAAW,YAAY;;IAOrC,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAmBnF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAG9B"}
|
|
1
|
+
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../../src/src/internal/supervisor.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAA6D,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAO3E,eAAO,MAAM,OAAO,SAEjB,CAAA;AAyBH,KAAK,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAAC;AAC5E,KAAK,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjC,KAAK,cAAc,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAA;AAED,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBxE;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBlF;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/D;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAoC5H;AAyBD,qBAAa,IAAK,YAAW,YAAY;;IAOrC,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAmBnF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAG9B"}
|
|
@@ -32,7 +32,7 @@ const flows = function () {
|
|
|
32
32
|
}
|
|
33
33
|
return nodes;
|
|
34
34
|
}
|
|
35
|
-
catch
|
|
35
|
+
catch {
|
|
36
36
|
return {};
|
|
37
37
|
}
|
|
38
38
|
}();
|
|
@@ -54,6 +54,29 @@ export async function registerWebhooks(webhooks) {
|
|
|
54
54
|
logger.error('Failed to register webhooks with supervisor', { error: err });
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
+
export async function sendTaskStartEvent(taskId, span) {
|
|
58
|
+
if (!enabled) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const data = {
|
|
62
|
+
taskId,
|
|
63
|
+
spanId: span.spanContext().spanId,
|
|
64
|
+
traceId: span.spanContext().traceId,
|
|
65
|
+
startTime: new Date().toISOString(), // assuming current time as start time
|
|
66
|
+
};
|
|
67
|
+
try {
|
|
68
|
+
await fetch(`${supervisorURL}/tasks/start`, {
|
|
69
|
+
method: "POST",
|
|
70
|
+
body: JSON.stringify(data),
|
|
71
|
+
headers: {
|
|
72
|
+
"Content-Type": "application/json",
|
|
73
|
+
},
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
catch (err) {
|
|
77
|
+
logger.error('Failed to send task start event to supervisor', { error: err });
|
|
78
|
+
}
|
|
79
|
+
}
|
|
57
80
|
export async function registerCrons(crons) {
|
|
58
81
|
if (!enabled) {
|
|
59
82
|
return;
|
|
@@ -104,7 +127,7 @@ export async function mockAPIRequest(info, cnx, options) {
|
|
|
104
127
|
}
|
|
105
128
|
}
|
|
106
129
|
function printableSpan(s) {
|
|
107
|
-
|
|
130
|
+
const span = {
|
|
108
131
|
name: s.name,
|
|
109
132
|
startTime: hrTimeToTimeStamp(s.startTime),
|
|
110
133
|
endTime: hrTimeToTimeStamp(s.endTime),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DurableInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/DurableInterpreter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DurableInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/DurableInterpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,26 +10,24 @@
|
|
|
10
10
|
* As of the Change Date, in accordance with the Business Source License,
|
|
11
11
|
* use of this software will be governed by the Apache License, Version 2.0.
|
|
12
12
|
*/
|
|
13
|
-
import { create } from '@bufbuild/protobuf';
|
|
14
|
-
import { timestampMs } from '@bufbuild/protobuf/wkt';
|
|
15
13
|
import opentelemetry from '@opentelemetry/api';
|
|
16
14
|
import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto';
|
|
17
15
|
import { resourceFromAttributes } from '@opentelemetry/resources';
|
|
18
16
|
import { NodeSDK } from '@opentelemetry/sdk-node';
|
|
19
17
|
import express from 'express';
|
|
20
18
|
import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
|
|
19
|
+
import { CredentialsProviderImpl } from '../../connection/CredentialsProvider.js';
|
|
21
20
|
import { DirectConnectionFactory } from '../../connection/DirectConnectionFactory.js';
|
|
22
21
|
import { ContextProviderImpl } from '../../context/ContextProvider.js';
|
|
23
22
|
import { VersoriConfigReader } from '../../dsl/http/versori/configloader.js';
|
|
24
23
|
import { CronAPIClient } from '../../dsl/http/versori/cronapi.js';
|
|
25
24
|
import { WorkflowImpl } from '../../dsl/Workflow.js';
|
|
26
|
-
import { envCronPort, envPort, envReadyCheckURL, envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarSDKApiBaseURL, envVarVersion
|
|
25
|
+
import { envCronPort, envPort, envReadyCheckURL, envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarSDKApiBaseURL, envVarVersion } from '../../internal/constants.js';
|
|
27
26
|
import { Fake, registerCrons, registerWebhooks, enabled as supervisorEnabled } from '../../internal/supervisor.js';
|
|
28
27
|
import { IssueImpl } from '../../issues/Issues.js';
|
|
29
28
|
import { MemoryKeyValueProvider } from '../../kv/memory/MemoryKeyValueProvider.js';
|
|
30
29
|
import { SDKKeyValueProvider } from '../../kv/sdk/SDKKeyValueProvider.js';
|
|
31
30
|
import { ConsoleLogger } from '../../observability/logging/ConsoleLogger.js';
|
|
32
|
-
import { credentialv1alpha1 } from '../../services/credentials/mod.js';
|
|
33
31
|
import { PlatformApiImpl } from '../../services/platform/PlatformApi.js';
|
|
34
32
|
import { ObservableCompiler } from './ObservableCompiler.js';
|
|
35
33
|
import { QueueImpl } from './Queue.js';
|
|
@@ -39,36 +37,6 @@ function getKVProvider() {
|
|
|
39
37
|
}
|
|
40
38
|
return SDKKeyValueProvider.fromEnv();
|
|
41
39
|
}
|
|
42
|
-
function getCredentialsProvider(d) {
|
|
43
|
-
return {
|
|
44
|
-
async getRaw(name, _activationId) {
|
|
45
|
-
const response = await d['credentials'].get({ id: name, organisationId: '' });
|
|
46
|
-
if (!response.credential) {
|
|
47
|
-
throw new Error(`Failed to get credential: ${name}`);
|
|
48
|
-
}
|
|
49
|
-
const rawData = create(credentialv1alpha1.CredentialDataRawSchema, response.credential.data);
|
|
50
|
-
return rawData.raw;
|
|
51
|
-
},
|
|
52
|
-
async getAccessToken(name, forceRefresh, _activationId) {
|
|
53
|
-
const response = await d['tokens'].getToken({ credentialId: name, forceRefresh: forceRefresh || false });
|
|
54
|
-
if (!response.token) {
|
|
55
|
-
throw new Error(`Failed to get token for credential: ${name}`);
|
|
56
|
-
}
|
|
57
|
-
return {
|
|
58
|
-
accessToken: response.token.accessToken,
|
|
59
|
-
tokenType: response.token.tokenType,
|
|
60
|
-
expiry: response.token.expiry ? new Date(timestampMs(response.token.expiry)) : undefined,
|
|
61
|
-
};
|
|
62
|
-
},
|
|
63
|
-
async getOAuth1Metadata(name, _activationId) {
|
|
64
|
-
const response = await d['oauth1'].getAuthorizationMetadata({ credentialId: name });
|
|
65
|
-
if (!response) {
|
|
66
|
-
throw new Error(`Failed to get OAuth1 metadata for credential: ${name}`);
|
|
67
|
-
}
|
|
68
|
-
return response;
|
|
69
|
-
},
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
40
|
/**
|
|
73
41
|
* DurableInterpreter is an interpreter for executing Versori workflows with support for durable, queue-based workflow
|
|
74
42
|
* execution. It supports all trigger types including the {@link workflow} trigger which allows workflows to be started
|
|
@@ -266,21 +234,20 @@ export class DurableInterpreter {
|
|
|
266
234
|
otelSDK.start();
|
|
267
235
|
}
|
|
268
236
|
const tracer = opentelemetry.trace.getTracer(serviceName, version);
|
|
269
|
-
const cnxFactory = DirectConnectionFactory.fromEnv(log);
|
|
270
|
-
const credentialsProvider = getCredentialsProvider(cnxFactory);
|
|
271
237
|
const queueProvider = await QueueImpl.fromEnv(log);
|
|
238
|
+
const connectionFactory = DirectConnectionFactory.fromEnv(log);
|
|
272
239
|
const issuesProvider = new IssueImpl(log);
|
|
273
240
|
if (options.contextProvider) {
|
|
274
241
|
// no need to set up a key-value provider if options.contextProvider is already
|
|
275
242
|
// initialised.
|
|
276
|
-
return new DurableInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), new Map(), PlatformApiImpl.fromEnv(),
|
|
243
|
+
return new DurableInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), new Map(), PlatformApiImpl.fromEnv(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
|
|
277
244
|
}
|
|
278
245
|
const kvp = await getKVProvider();
|
|
279
246
|
const platformApi = PlatformApiImpl.fromEnv();
|
|
280
247
|
const organisationId = Deno.env.get(envVarOrgId) || 'development';
|
|
281
248
|
const environmentId = Deno.env.get(envVarEnvId) || 'development';
|
|
282
|
-
const ctxProvider = new ContextProviderImpl(log, kvp,
|
|
283
|
-
return new DurableInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), new Map(), PlatformApiImpl.fromEnv(),
|
|
249
|
+
const ctxProvider = new ContextProviderImpl(log, kvp, new CredentialsProviderImpl(connectionFactory.credentials, connectionFactory.tokens, connectionFactory.oauth1, configReader, platformApi), platformApi, organisationId, environmentId, issuesProvider);
|
|
250
|
+
return new DurableInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), new Map(), PlatformApiImpl.fromEnv(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
|
|
284
251
|
}
|
|
285
252
|
register(workflow, options) {
|
|
286
253
|
const localAbortController = new AbortController();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catch.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/durable/compilers/catch.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAG5D,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"catch.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/durable/compilers/catch.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAG5D,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AAsFnE,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAGrE,CAAC"}
|
|
@@ -36,9 +36,10 @@ function compileCatch(compilerCtx, task) {
|
|
|
36
36
|
annotations: {
|
|
37
37
|
'error': error.message,
|
|
38
38
|
'stack': error.stack || '',
|
|
39
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
40
|
-
'',
|
|
39
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
41
40
|
'executionId': ctx.executionId,
|
|
41
|
+
'activationId': ctx.activation.id,
|
|
42
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
42
43
|
},
|
|
43
44
|
reason: 'error',
|
|
44
45
|
severity: 'high',
|
|
@@ -50,11 +51,12 @@ function compileCatch(compilerCtx, task) {
|
|
|
50
51
|
});
|
|
51
52
|
compilerCtx.issueProvider.submitIssue({
|
|
52
53
|
annotations: {
|
|
53
|
-
'error': error.message
|
|
54
|
+
'error': error.message,
|
|
54
55
|
'stack': error.stack || '',
|
|
55
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
56
|
-
'',
|
|
56
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
57
57
|
'executionId': ctx.executionId,
|
|
58
|
+
'activationId': ctx.activation.id,
|
|
59
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
58
60
|
},
|
|
59
61
|
reason: 'error',
|
|
60
62
|
severity: 'low',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,26 +10,24 @@
|
|
|
10
10
|
* As of the Change Date, in accordance with the Business Source License,
|
|
11
11
|
* use of this software will be governed by the Apache License, Version 2.0.
|
|
12
12
|
*/
|
|
13
|
-
import { create } from '@bufbuild/protobuf';
|
|
14
|
-
import { timestampMs } from '@bufbuild/protobuf/wkt';
|
|
15
13
|
import opentelemetry from '@opentelemetry/api';
|
|
16
14
|
import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto';
|
|
17
15
|
import { resourceFromAttributes } from '@opentelemetry/resources';
|
|
18
16
|
import { NodeSDK } from '@opentelemetry/sdk-node';
|
|
19
17
|
import express from 'express';
|
|
20
18
|
import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
|
|
19
|
+
import { CredentialsProviderImpl } from '../../connection/CredentialsProvider.js';
|
|
21
20
|
import { DirectConnectionFactory } from '../../connection/DirectConnectionFactory.js';
|
|
22
21
|
import { ContextProviderImpl } from '../../context/ContextProvider.js';
|
|
23
22
|
import { VersoriConfigReader } from '../../dsl/http/versori/configloader.js';
|
|
24
23
|
import { CronAPIClient } from '../../dsl/http/versori/cronapi.js';
|
|
25
24
|
import { WorkflowImpl } from '../../dsl/Workflow.js';
|
|
26
|
-
import { envCronPort, envPort, envReadyCheckURL, envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarVersion
|
|
25
|
+
import { envCronPort, envPort, envReadyCheckURL, envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarVersion } from '../../internal/constants.js';
|
|
27
26
|
import { Fake, registerCrons, registerWebhooks, enabled as supervisorEnabled } from '../../internal/supervisor.js';
|
|
28
27
|
import { IssueImpl } from '../../issues/Issues.js';
|
|
29
28
|
import { MemoryKeyValueProvider } from '../../kv/memory/MemoryKeyValueProvider.js';
|
|
30
29
|
import { NatsKeyValueProvider } from '../../kv/nats/NatsKeyValueProvider.js';
|
|
31
30
|
import { ConsoleLogger } from '../../observability/logging/ConsoleLogger.js';
|
|
32
|
-
import { credentialv1alpha1 } from '../../services/credentials/mod.js';
|
|
33
31
|
import { PlatformApiImpl } from '../../services/platform/PlatformApi.js';
|
|
34
32
|
import { ObservableCompiler } from './ObservableCompiler.js';
|
|
35
33
|
function getKVProvider() {
|
|
@@ -38,36 +36,6 @@ function getKVProvider() {
|
|
|
38
36
|
}
|
|
39
37
|
return NatsKeyValueProvider.fromEnv();
|
|
40
38
|
}
|
|
41
|
-
function getCredentialsProvider(d) {
|
|
42
|
-
return {
|
|
43
|
-
async getRaw(name, _activationId) {
|
|
44
|
-
const response = await d['credentials'].get({ id: name, organisationId: '' });
|
|
45
|
-
if (!response.credential) {
|
|
46
|
-
throw new Error(`Failed to get credential: ${name}`);
|
|
47
|
-
}
|
|
48
|
-
const rawData = create(credentialv1alpha1.CredentialDataRawSchema, response.credential.data);
|
|
49
|
-
return rawData.raw;
|
|
50
|
-
},
|
|
51
|
-
async getAccessToken(name, forceRefresh, _activationId) {
|
|
52
|
-
const response = await d['tokens'].getToken({ credentialId: name, forceRefresh: forceRefresh || false });
|
|
53
|
-
if (!response.token) {
|
|
54
|
-
throw new Error(`Failed to get token for credential: ${name}`);
|
|
55
|
-
}
|
|
56
|
-
return {
|
|
57
|
-
accessToken: response.token.accessToken,
|
|
58
|
-
tokenType: response.token.tokenType,
|
|
59
|
-
expiry: response.token.expiry ? new Date(timestampMs(response.token.expiry)) : undefined,
|
|
60
|
-
};
|
|
61
|
-
},
|
|
62
|
-
async getOAuth1Metadata(name, _activationId) {
|
|
63
|
-
const response = await d['oauth1'].getAuthorizationMetadata({ credentialId: name });
|
|
64
|
-
if (!response) {
|
|
65
|
-
throw new Error(`Failed to get OAuth1 metadata for credential: ${name}`);
|
|
66
|
-
}
|
|
67
|
-
return response;
|
|
68
|
-
},
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
39
|
/**
|
|
72
40
|
* MemoryInterpreter is the default interpreter for executing Versori workflows. It handles registration and execution
|
|
73
41
|
* of workflows triggered by schedules and webhooks.
|
|
@@ -248,20 +216,19 @@ export class MemoryInterpreter {
|
|
|
248
216
|
otelSDK.start();
|
|
249
217
|
}
|
|
250
218
|
const tracer = opentelemetry.trace.getTracer(serviceName, version);
|
|
251
|
-
const
|
|
252
|
-
const credentialsProvider = getCredentialsProvider(cnxFactory);
|
|
219
|
+
const connectionFactory = DirectConnectionFactory.fromEnv(log);
|
|
253
220
|
const issuesProvider = new IssueImpl(log);
|
|
254
221
|
if (options.contextProvider) {
|
|
255
222
|
// no need to set up a key-value provider if options.contextProvider is already
|
|
256
223
|
// initialised.
|
|
257
|
-
return new MemoryInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), new Map(),
|
|
224
|
+
return new MemoryInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), new Map(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, otelSDK);
|
|
258
225
|
}
|
|
259
226
|
const kvp = await getKVProvider();
|
|
260
227
|
const platformApi = PlatformApiImpl.fromEnv();
|
|
261
228
|
const organisationId = Deno.env.get(envVarOrgId) || 'development';
|
|
262
229
|
const environmentId = Deno.env.get(envVarEnvId) || 'development';
|
|
263
|
-
const ctxProvider = new ContextProviderImpl(log, kvp,
|
|
264
|
-
return new MemoryInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), new Map(),
|
|
230
|
+
const ctxProvider = new ContextProviderImpl(log, kvp, new CredentialsProviderImpl(connectionFactory.credentials, connectionFactory.tokens, connectionFactory.oauth1, configReader, platformApi), platformApi, organisationId, environmentId, issuesProvider);
|
|
231
|
+
return new MemoryInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), new Map(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, otelSDK);
|
|
265
232
|
}
|
|
266
233
|
register(workflow, options) {
|
|
267
234
|
const localAbortController = new AbortController();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catch.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/catch.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAG5D,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"catch.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/catch.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAG5D,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AAwFnE,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAGrE,CAAC"}
|
|
@@ -19,6 +19,8 @@ function compileCatch(compilerCtx, task) {
|
|
|
19
19
|
return (src) => src.pipe(mergeMap((ctx) => {
|
|
20
20
|
return baseOperator(of(ctx)).pipe(catchError((error) => {
|
|
21
21
|
return compilerCtx.tracer.startActiveSpan(`catch`, (span) => {
|
|
22
|
+
// TODO: do we even want this here? Can't be async in here I believe
|
|
23
|
+
// await sendTaskStartEvent(task.id, span);
|
|
22
24
|
span.setAttribute('execution.id', ctx.executionId);
|
|
23
25
|
span.setAttribute('task.type', 'catch');
|
|
24
26
|
span.setAttribute('type', 'task');
|
|
@@ -35,9 +37,10 @@ function compileCatch(compilerCtx, task) {
|
|
|
35
37
|
annotations: {
|
|
36
38
|
'error': error.message,
|
|
37
39
|
'stack': error.stack || '',
|
|
38
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
39
|
-
'',
|
|
40
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
40
41
|
'executionId': ctx.executionId,
|
|
42
|
+
'activationId': ctx.activation.id,
|
|
43
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
41
44
|
},
|
|
42
45
|
reason: 'error',
|
|
43
46
|
severity: 'high',
|
|
@@ -46,11 +49,12 @@ function compileCatch(compilerCtx, task) {
|
|
|
46
49
|
}
|
|
47
50
|
compilerCtx.issueProvider.submitIssue({
|
|
48
51
|
annotations: {
|
|
49
|
-
'error': error.message
|
|
52
|
+
'error': error.message,
|
|
50
53
|
'stack': error.stack || '',
|
|
51
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
52
|
-
'',
|
|
54
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
53
55
|
'executionId': ctx.executionId,
|
|
56
|
+
'activationId': ctx.activation.id,
|
|
57
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
54
58
|
},
|
|
55
59
|
reason: 'error',
|
|
56
60
|
severity: 'low',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fn.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/fn.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGtD,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"fn.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/fn.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGtD,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AA6CnE,eAAO,MAAM,UAAU,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAG/D,CAAC"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { mergeMap, tap } from 'rxjs';
|
|
2
2
|
import { FnTask } from '../../../dsl/tasks/FnTask.js';
|
|
3
|
-
import { enabled as supervisorEnabled } from '../../../internal/supervisor.js';
|
|
3
|
+
import { sendTaskStartEvent, enabled as supervisorEnabled } from '../../../internal/supervisor.js';
|
|
4
4
|
function compileFn(compilerCtx, task) {
|
|
5
5
|
return (src) => src.pipe(tap({
|
|
6
6
|
complete: () => compilerCtx.log.debug('fn.complete'),
|
|
7
7
|
}), mergeMap(async (ctx) => {
|
|
8
8
|
return await compilerCtx.tracer.startActiveSpan(`fn-${task.id}`, async (span) => {
|
|
9
|
+
await sendTaskStartEvent(task.id, span);
|
|
9
10
|
span.setAttribute('task.id', task.id);
|
|
10
11
|
span.setAttribute('type', 'task');
|
|
11
12
|
span.setAttribute('task.type', 'fn');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/http.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAmB,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG/E,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/http.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAmB,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG/E,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AAyHnE,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAG5E,CAAC"}
|
|
@@ -16,7 +16,7 @@ import { DynamicFetchFactory } from '../../../connection/DynamicFetchFactory.js'
|
|
|
16
16
|
import { FetchBuilder } from '../../../connection/internal/FetchBuilder.js';
|
|
17
17
|
import { StaticFetchFactory } from '../../../connection/StaticFetchFactory.js';
|
|
18
18
|
import { HttpContextImpl, HttpTaskImpl } from '../../../dsl/tasks/HttpTask.js';
|
|
19
|
-
import { enabled as supervisorEnabled } from '../../../internal/supervisor.js';
|
|
19
|
+
import { sendTaskStartEvent, enabled as supervisorEnabled } from '../../../internal/supervisor.js';
|
|
20
20
|
function compileHttp(compilerCtx, task) {
|
|
21
21
|
const cnxMap = compilerCtx.configReader.getCnxMapping(task.opts.connection);
|
|
22
22
|
let fetchFactory;
|
|
@@ -73,6 +73,7 @@ function compileHttp(compilerCtx, task) {
|
|
|
73
73
|
complete: () => compilerCtx.log.debug('http.complete'),
|
|
74
74
|
}), mergeMap((ctx) => {
|
|
75
75
|
return compilerCtx.tracer.startActiveSpan(`http-${task.id}`, async (span) => {
|
|
76
|
+
await sendTaskStartEvent(task.id, span);
|
|
76
77
|
span.setAttribute('task.id', task.id);
|
|
77
78
|
span.setAttribute('task.type', 'http');
|
|
78
79
|
span.setAttribute('type', 'task');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/schedule.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAQzF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/schedule.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAQzF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA4I7C,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAAC,YAAY,EAAE,eAAe,CAG3E,CAAC"}
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
import { Observable } from 'rxjs';
|
|
14
14
|
import { ScheduleTrigger } from '../../../dsl/triggers/ScheduleTrigger.js';
|
|
15
15
|
import { envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarProjectId, } from '../../../internal/constants.js';
|
|
16
|
+
import { sendTaskStartEvent } from '../../../internal/supervisor.js';
|
|
16
17
|
function compileSchedule(ctx, trigger, signal) {
|
|
17
18
|
return new Observable((subscriber) => {
|
|
18
19
|
// Add HTTP endpoint for manual triggering
|
|
@@ -94,6 +95,7 @@ function compileSchedule(ctx, trigger, signal) {
|
|
|
94
95
|
}
|
|
95
96
|
ctx.cronRouter.post(`/cron/${trigger.id}`, async (req, res) => {
|
|
96
97
|
await ctx.tracer.startActiveSpan(`schedule-${trigger.id}`, async (span) => {
|
|
98
|
+
await sendTaskStartEvent(trigger.id, span);
|
|
97
99
|
span.setAttribute('task.id', trigger.id);
|
|
98
100
|
span.setAttribute('task.type', 'schedule');
|
|
99
101
|
span.setAttribute('type', 'task');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/webhook.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAGtF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/webhook.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAGtF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAwD7C,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,WAAW,EAAE,cAAc,CAkUxE,CAAC"}
|
|
@@ -18,6 +18,7 @@ import { Observable } from 'rxjs';
|
|
|
18
18
|
import { createActIdDynamicWebhookMiddleware, createStaticWebhookMiddleware, createUserIdDynamicWebhookMiddleware, } from '../../../dsl/http/versori/webhookmiddleware.js';
|
|
19
19
|
import { WebhookTrigger } from '../../../dsl/triggers/WebhookTrigger.js';
|
|
20
20
|
import { envVarEnvId } from '../../../internal/constants.js';
|
|
21
|
+
import { sendTaskStartEvent } from '../../../internal/supervisor.js';
|
|
21
22
|
const xml2jsDefaults = {
|
|
22
23
|
explicitArray: false,
|
|
23
24
|
normalize: false,
|
|
@@ -129,7 +130,8 @@ export const webhookCompiler = {
|
|
|
129
130
|
cfgReader: ctx.configReader,
|
|
130
131
|
log: ctx.log,
|
|
131
132
|
}), async (req, res) => {
|
|
132
|
-
await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
|
|
133
|
+
await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
|
|
134
|
+
await sendTaskStartEvent(trigger.id, span);
|
|
133
135
|
span.setAttribute('task.id', trigger.id);
|
|
134
136
|
span.setAttribute('task.type', 'webhook');
|
|
135
137
|
span.setAttribute('type', 'task');
|
|
@@ -169,7 +171,8 @@ export const webhookCompiler = {
|
|
|
169
171
|
cfgReader: ctx.configReader,
|
|
170
172
|
log: ctx.log,
|
|
171
173
|
}), async (req, res) => {
|
|
172
|
-
await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
|
|
174
|
+
await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
|
|
175
|
+
await sendTaskStartEvent(trigger.id, span);
|
|
173
176
|
span.setAttribute('task.id', trigger.id);
|
|
174
177
|
span.setAttribute('task.type', 'webhook');
|
|
175
178
|
span.setAttribute('type', 'task');
|
|
@@ -228,7 +231,8 @@ export const webhookCompiler = {
|
|
|
228
231
|
cfgReader: ctx.configReader,
|
|
229
232
|
log: ctx.log,
|
|
230
233
|
}), async (req, res) => {
|
|
231
|
-
await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
|
|
234
|
+
await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
|
|
235
|
+
await sendTaskStartEvent(trigger.id, span);
|
|
232
236
|
span.setAttribute('task.id', trigger.id);
|
|
233
237
|
span.setAttribute('task.type', 'webhook');
|
|
234
238
|
span.setAttribute('type', 'task');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NatsKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/nats/NatsKeyValueProvider.ts"],"names":[],"mappings":"AAeA,OAAO,EAA+B,UAAU,EAAE,MAAM,+DAA+D,CAAC;
|
|
1
|
+
{"version":3,"file":"NatsKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/nats/NatsKeyValueProvider.ts"],"names":[],"mappings":"AAeA,OAAO,EAA+B,UAAU,EAAE,MAAM,+DAA+D,CAAC;AAExH,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AA4CvF,MAAM,MAAM,2BAA2B,GAAG;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE;QACF,GAAG,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,GAAG,CAAC,EAAE,UAAU,CAAC;KACpB,CAAC;CACL,CAAC;AAuBF,qBAAa,oBAAqB,YAAW,gBAAgB,EAAE,eAAe;IAEtE,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALzB,OAAO;WAQM,WAAW,CACpB,IAAI,GAAE,OAAO,CAAC,2BAA2B,CAAM,GAChD,OAAO,CAAC,oBAAoB,CAAC;IA0BhC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAI/C,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;IAI1C,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAqB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CrD,OAAO,CAAC,aAAa;CAYxB"}
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
import { JetStreamApiCodes, JetStreamApiError } from '../../../deps/jsr.io/@nats-io/jetstream/3.2.0/src/mod.js';
|
|
14
14
|
import { Kvm } from '../../../deps/jsr.io/@nats-io/kv/3.2.0/src/mod.js';
|
|
15
15
|
import { connect, credsAuthenticator } from '../../../deps/jsr.io/@nats-io/transport-deno/3.2.0/src/mod.js';
|
|
16
|
-
import { NatsKeyValue } from './NatsKeyValue.js';
|
|
17
16
|
import { isKVOptionsExecution } from '../isKVOptionsExecution.js';
|
|
17
|
+
import { NatsKeyValue } from './NatsKeyValue.js';
|
|
18
18
|
function getOptionsFromEnv() {
|
|
19
19
|
const natsTlsCaFile = Deno.env.get('RUN_NATS_TLS_CA_FILE');
|
|
20
20
|
return {
|
|
@@ -172,7 +172,7 @@ export class NatsKeyValueProvider {
|
|
|
172
172
|
const activationSuffix = options.activationId ? `.${options.activationId}` : '';
|
|
173
173
|
switch (options.scope) {
|
|
174
174
|
case ':organization:':
|
|
175
|
-
return `${this.opts.organizationId}
|
|
175
|
+
return `${this.opts.organizationId}`;
|
|
176
176
|
case ':project:':
|
|
177
177
|
return `${this.opts.organizationId}.${this.opts.projectId}.${this.opts.environment}${activationSuffix}`;
|
|
178
178
|
case ':execution:':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SDKKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/sdk/SDKKeyValueProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SDKKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/sdk/SDKKeyValueProvider.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAkCvF,MAAM,MAAM,0BAA0B,GAAG;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AA6BF,qBAAa,mBAAoB,YAAW,gBAAgB,EAAE,eAAe;IAErE,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJzB,OAAO;WAOM,WAAW,CACpB,IAAI,GAAE,OAAO,CAAC,0BAA0B,CAAM,GAC/C,OAAO,CAAC,mBAAmB,CAAC;IAY/B,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAI9C,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;IAI1C,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAqB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CrD,OAAO,CAAC,aAAa;CAYxB"}
|
|
@@ -10,10 +10,10 @@
|
|
|
10
10
|
* As of the Change Date, in accordance with the Business Source License,
|
|
11
11
|
* use of this software will be governed by the Apache License, Version 2.0.
|
|
12
12
|
*/
|
|
13
|
-
import { StoresService } from '../../dsl/http/versori/kvapi/services/StoresService.js';
|
|
14
13
|
import { KvOperationsService } from '../../dsl/http/versori/kvapi/services/KvOperationsService.js';
|
|
15
|
-
import {
|
|
14
|
+
import { StoresService } from '../../dsl/http/versori/kvapi/services/StoresService.js';
|
|
16
15
|
import { isKVOptionsExecution } from '../isKVOptionsExecution.js';
|
|
16
|
+
import { SDKKeyValue } from './SDKKeyValue.js';
|
|
17
17
|
function getOptionsFromEnv() {
|
|
18
18
|
return {
|
|
19
19
|
organizationId: Deno.env.get('RUN_ORGANISATION_ID'),
|
|
@@ -145,7 +145,7 @@ export class SDKKeyValueProvider {
|
|
|
145
145
|
const activationSuffix = options.activationId ? `/${options.activationId}` : '';
|
|
146
146
|
switch (options.scope) {
|
|
147
147
|
case ':organization:':
|
|
148
|
-
return `${this.opts.organizationId}
|
|
148
|
+
return `${this.opts.organizationId}`;
|
|
149
149
|
case ':project:':
|
|
150
150
|
return `${this.opts.organizationId}/${this.opts.projectId}/${this.opts.environment}${activationSuffix}`;
|
|
151
151
|
case ':execution:':
|