@versori/run 0.4.5 → 0.4.7
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/src/connection/CredentialsProvider.d.ts +7 -1
- package/esm/src/connection/CredentialsProvider.d.ts.map +1 -1
- package/esm/src/connection/CredentialsProvider.js +71 -4
- package/esm/src/connection/DirectConnectionFactory.d.ts +0 -2
- package/esm/src/connection/DirectConnectionFactory.d.ts.map +1 -1
- package/esm/src/connection/DirectConnectionFactory.js +0 -5
- package/esm/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/durable/DurableInterpreter.js +2 -1
- 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 +2 -1
- package/esm/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/catch.js +7 -5
- package/package.json +1 -1
- package/script/src/connection/CredentialsProvider.d.ts +7 -1
- package/script/src/connection/CredentialsProvider.d.ts.map +1 -1
- package/script/src/connection/CredentialsProvider.js +71 -4
- package/script/src/connection/DirectConnectionFactory.d.ts +0 -2
- package/script/src/connection/DirectConnectionFactory.d.ts.map +1 -1
- package/script/src/connection/DirectConnectionFactory.js +0 -5
- package/script/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/durable/DurableInterpreter.js +2 -1
- 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 +2 -1
- package/script/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/catch.js +7 -5
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
import { Client } from '@connectrpc/connect';
|
|
2
2
|
import { CredentialsProvider } from '../credentials/CredentialsProvider.js';
|
|
3
|
+
import { VersoriConfigReader } from '../dsl/http/versori/configloader.js';
|
|
3
4
|
import { credentialv1alpha1, oauth1v1, tokensv1 } from '../services/credentials/mod.js';
|
|
5
|
+
import { PlatformApi } from '../services/platform/mod.js';
|
|
4
6
|
export declare class CredentialsProviderImpl implements CredentialsProvider {
|
|
5
7
|
private readonly credentials;
|
|
6
8
|
private readonly tokens;
|
|
7
9
|
private readonly oauth1;
|
|
8
|
-
|
|
10
|
+
private readonly configReader;
|
|
11
|
+
private platformApi;
|
|
12
|
+
private readonly organisationId;
|
|
13
|
+
constructor(credentials: Client<typeof credentialv1alpha1.CredentialService>, tokens: Client<typeof tokensv1.TokenService>, oauth1: Client<typeof oauth1v1.AuthorizationService>, configReader: VersoriConfigReader, platformApi: PlatformApi);
|
|
9
14
|
getRaw(name: string, _activationId?: string): Promise<Uint8Array>;
|
|
10
15
|
getAccessToken(name: string, forceRefresh?: boolean, _activationId?: string): Promise<{
|
|
11
16
|
accessToken: string;
|
|
@@ -13,5 +18,6 @@ export declare class CredentialsProviderImpl implements CredentialsProvider {
|
|
|
13
18
|
expiry: Date | undefined;
|
|
14
19
|
}>;
|
|
15
20
|
getOAuth1Metadata(name: string, _activationId?: string): Promise<oauth1v1.GetAuthorizationMetadataResponse>;
|
|
21
|
+
private getCredentialIDFromName;
|
|
16
22
|
}
|
|
17
23
|
//# sourceMappingURL=CredentialsProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CredentialsProvider.d.ts","sourceRoot":"","sources":["../../../src/src/connection/CredentialsProvider.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"CredentialsProvider.d.ts","sourceRoot":"","sources":["../../../src/src/connection/CredentialsProvider.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,qBAAa,uBAAwB,YAAW,mBAAmB;IAI3D,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,WAAW;IAPvB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;gBAGnB,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,EAChE,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,EAC5C,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EACpD,YAAY,EAAE,mBAAmB,EAC1C,WAAW,EAAE,WAAW;IAK9B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAWjE,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM;;;;;IAc3E,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;YAU9C,uBAAuB;CA4DxC"}
|
|
@@ -12,9 +12,10 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import { create } from '@bufbuild/protobuf';
|
|
14
14
|
import { timestampMs } from '@bufbuild/protobuf/wkt';
|
|
15
|
+
import { envVarOrgId } from '../internal/constants.js';
|
|
15
16
|
import { credentialv1alpha1 } from '../services/credentials/mod.js';
|
|
16
17
|
export class CredentialsProviderImpl {
|
|
17
|
-
constructor(credentials, tokens, oauth1) {
|
|
18
|
+
constructor(credentials, tokens, oauth1, configReader, platformApi) {
|
|
18
19
|
Object.defineProperty(this, "credentials", {
|
|
19
20
|
enumerable: true,
|
|
20
21
|
configurable: true,
|
|
@@ -33,9 +34,29 @@ export class CredentialsProviderImpl {
|
|
|
33
34
|
writable: true,
|
|
34
35
|
value: oauth1
|
|
35
36
|
});
|
|
37
|
+
Object.defineProperty(this, "configReader", {
|
|
38
|
+
enumerable: true,
|
|
39
|
+
configurable: true,
|
|
40
|
+
writable: true,
|
|
41
|
+
value: configReader
|
|
42
|
+
});
|
|
43
|
+
Object.defineProperty(this, "platformApi", {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
configurable: true,
|
|
46
|
+
writable: true,
|
|
47
|
+
value: platformApi
|
|
48
|
+
});
|
|
49
|
+
Object.defineProperty(this, "organisationId", {
|
|
50
|
+
enumerable: true,
|
|
51
|
+
configurable: true,
|
|
52
|
+
writable: true,
|
|
53
|
+
value: void 0
|
|
54
|
+
});
|
|
55
|
+
this.organisationId = Deno.env.get(envVarOrgId) || 'development';
|
|
36
56
|
}
|
|
37
57
|
async getRaw(name, _activationId) {
|
|
38
|
-
const
|
|
58
|
+
const credentialId = await this.getCredentialIDFromName(name, _activationId);
|
|
59
|
+
const response = await this.credentials.get({ id: credentialId, organisationId: '' });
|
|
39
60
|
if (!response.credential) {
|
|
40
61
|
throw new Error(`Failed to get credential: ${name}`);
|
|
41
62
|
}
|
|
@@ -43,7 +64,8 @@ export class CredentialsProviderImpl {
|
|
|
43
64
|
return rawData.raw;
|
|
44
65
|
}
|
|
45
66
|
async getAccessToken(name, forceRefresh, _activationId) {
|
|
46
|
-
const
|
|
67
|
+
const credentialId = await this.getCredentialIDFromName(name, _activationId);
|
|
68
|
+
const response = await this.tokens.getToken({ credentialId: credentialId, forceRefresh: forceRefresh || false });
|
|
47
69
|
if (!response.token) {
|
|
48
70
|
throw new Error(`Failed to get token for credential: ${name}`);
|
|
49
71
|
}
|
|
@@ -54,10 +76,55 @@ export class CredentialsProviderImpl {
|
|
|
54
76
|
};
|
|
55
77
|
}
|
|
56
78
|
async getOAuth1Metadata(name, _activationId) {
|
|
57
|
-
const
|
|
79
|
+
const credentialId = await this.getCredentialIDFromName(name, _activationId);
|
|
80
|
+
const response = await this.oauth1.getAuthorizationMetadata({ credentialId: credentialId });
|
|
58
81
|
if (!response) {
|
|
59
82
|
throw new Error(`Failed to get OAuth1 metadata for credential: ${name}`);
|
|
60
83
|
}
|
|
61
84
|
return response;
|
|
62
85
|
}
|
|
86
|
+
async getCredentialIDFromName(name, activationId) {
|
|
87
|
+
// fin connection config from versori file
|
|
88
|
+
const conn = this.configReader.getCnxMapping(name);
|
|
89
|
+
if (!conn) {
|
|
90
|
+
return '';
|
|
91
|
+
}
|
|
92
|
+
// if connection is dynamic try and load the activation
|
|
93
|
+
if (conn.dynamic) {
|
|
94
|
+
if (!activationId) {
|
|
95
|
+
throw new Error(`Connection ${name} is dynamic, but no activation ID was found on the context`);
|
|
96
|
+
}
|
|
97
|
+
if (!conn.templateId) {
|
|
98
|
+
throw new Error(`Connection ${name} is dynamic, but no template ID was found on the config`);
|
|
99
|
+
}
|
|
100
|
+
const { data: dynamicConn } = await this.platformApi.getActivationConnection({
|
|
101
|
+
path: {
|
|
102
|
+
activation_id: activationId,
|
|
103
|
+
env_system_id: conn.templateId,
|
|
104
|
+
organisation_id: this.organisationId,
|
|
105
|
+
},
|
|
106
|
+
});
|
|
107
|
+
if (!dynamicConn) {
|
|
108
|
+
throw new Error(`Connection ${name} not found`);
|
|
109
|
+
}
|
|
110
|
+
if (!dynamicConn.credentials[0]?.credential?.id) {
|
|
111
|
+
throw new Error(`Connection ${name} has no credentials defined on it`);
|
|
112
|
+
}
|
|
113
|
+
return dynamicConn.credentials[0].credential?.id;
|
|
114
|
+
}
|
|
115
|
+
// connection is not dynamic try and load static connection
|
|
116
|
+
if (!conn.connId) {
|
|
117
|
+
throw new Error(`Connection ${name} is static, but no connection ID was found on the config`);
|
|
118
|
+
}
|
|
119
|
+
const { data: staticConn } = await this.platformApi.getConnection({
|
|
120
|
+
path: {
|
|
121
|
+
organisation_id: this.organisationId,
|
|
122
|
+
connection_id: conn.connId,
|
|
123
|
+
},
|
|
124
|
+
});
|
|
125
|
+
if (!staticConn?.credentials[0]?.credential?.id) {
|
|
126
|
+
throw new Error(`Connection ${name}/${conn.connId} has no credentials defined on it`);
|
|
127
|
+
}
|
|
128
|
+
return staticConn.credentials[0].credential.id;
|
|
129
|
+
}
|
|
63
130
|
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Client } from '@connectrpc/connect';
|
|
2
2
|
import { RequestHandler } from 'express';
|
|
3
|
-
import { CredentialsProvider } from '../credentials/CredentialsProvider.js';
|
|
4
3
|
import { Logger } from '../observability/mod.js';
|
|
5
4
|
import { credentialv1alpha1, oauth1v1, tokensv1 } from '../services/credentials/mod.js';
|
|
6
5
|
import { Connection } from '../services/platform/mod.js';
|
|
@@ -25,7 +24,6 @@ export declare class DirectConnectionFactory implements ConnectionFactory {
|
|
|
25
24
|
constructor(httpClientFactory: HttpClientFactory, credentials: Client<typeof credentialv1alpha1.CredentialService>, tokens: Client<typeof tokensv1.TokenService>, oauth1: Client<typeof oauth1v1.AuthorizationService>, logger: Logger);
|
|
26
25
|
fetcher(cnx: Connection): Promise<FetchLike>;
|
|
27
26
|
handler(cnx: Connection): Promise<RequestHandler>;
|
|
28
|
-
getCredentialsProvider(): CredentialsProvider;
|
|
29
27
|
static fromEnv(logger: Logger): DirectConnectionFactory;
|
|
30
28
|
}
|
|
31
29
|
//# sourceMappingURL=DirectConnectionFactory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DirectConnectionFactory.d.ts","sourceRoot":"","sources":["../../../src/src/connection/DirectConnectionFactory.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"DirectConnectionFactory.d.ts","sourceRoot":"","sources":["../../../src/src/connection/DirectConnectionFactory.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE1D;;;;;;;GAOG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAKzD,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC;IACzE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,MAAM;IAR3B,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAA4B;IACtE,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAA2B;gBAGtD,iBAAiB,EAAE,iBAAiB,EAC5C,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,EAChE,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,EAC5C,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EAC5C,MAAM,EAAE,MAAM;IAkBnC,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAI5C,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC;IAIjD,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,uBAAuB;CAuB1D"}
|
|
@@ -14,7 +14,6 @@ import { createGrpcTransport } from '@connectrpc/connect-node';
|
|
|
14
14
|
import { envVarCredsBaseURL } from '../internal/constants.js';
|
|
15
15
|
import { createConnectRpcClient } from '../services/createConnectRpcClient.js';
|
|
16
16
|
import { credentialv1alpha1, oauth1v1, tokensv1 } from '../services/credentials/mod.js';
|
|
17
|
-
import { CredentialsProviderImpl } from './CredentialsProvider.js';
|
|
18
17
|
import { HttpClientFactory } from './internal/HttpClientFactory.js';
|
|
19
18
|
import { ExpressInboundConnectionFactory as InboundConnectionFactory } from './internal/InboundConnectionFactory.js';
|
|
20
19
|
import { OutboundConnectionFactory } from './internal/OutboundConnectionFactory.js';
|
|
@@ -74,7 +73,6 @@ export class DirectConnectionFactory {
|
|
|
74
73
|
// since both classes are fairly large and complex.
|
|
75
74
|
this.outboundConnectionFactory = new OutboundConnectionFactory(httpClientFactory, credentials, tokens, oauth1, logger);
|
|
76
75
|
this.expressInboundConnectionFactory = new InboundConnectionFactory(credentials, tokens, logger);
|
|
77
|
-
this.getCredentialsProvider = this.getCredentialsProvider.bind(this);
|
|
78
76
|
}
|
|
79
77
|
fetcher(cnx) {
|
|
80
78
|
return this.outboundConnectionFactory.fetcher(cnx);
|
|
@@ -82,9 +80,6 @@ export class DirectConnectionFactory {
|
|
|
82
80
|
handler(cnx) {
|
|
83
81
|
return this.expressInboundConnectionFactory.handler(cnx);
|
|
84
82
|
}
|
|
85
|
-
getCredentialsProvider() {
|
|
86
|
-
return new CredentialsProviderImpl(this.credentials, this.tokens, this.oauth1);
|
|
87
|
-
}
|
|
88
83
|
static fromEnv(logger) {
|
|
89
84
|
const baseUrl = Deno.env.get(envVarCredsBaseURL) || 'http://localhost:9000';
|
|
90
85
|
const credentials = createConnectRpcClient(credentialv1alpha1.CredentialService, () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DurableInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/DurableInterpreter.ts"],"names":[],"mappings":"AAaA,OAAsB,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAgB,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,EAA+B,UAAU,EAAM,YAAY,EAAO,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"DurableInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/DurableInterpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ import { resourceFromAttributes } from '@opentelemetry/resources';
|
|
|
16
16
|
import { NodeSDK } from '@opentelemetry/sdk-node';
|
|
17
17
|
import express from 'express';
|
|
18
18
|
import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
|
|
19
|
+
import { CredentialsProviderImpl } from '../../connection/CredentialsProvider.js';
|
|
19
20
|
import { DirectConnectionFactory } from '../../connection/DirectConnectionFactory.js';
|
|
20
21
|
import { ContextProviderImpl } from '../../context/ContextProvider.js';
|
|
21
22
|
import { VersoriConfigReader } from '../../dsl/http/versori/configloader.js';
|
|
@@ -230,7 +231,7 @@ export class DurableInterpreter {
|
|
|
230
231
|
const platformApi = PlatformApiImpl.fromEnv();
|
|
231
232
|
const organisationId = Deno.env.get(envVarOrgId) || 'development';
|
|
232
233
|
const environmentId = Deno.env.get(envVarEnvId) || 'development';
|
|
233
|
-
const ctxProvider = new ContextProviderImpl(log, kvp, connectionFactory.
|
|
234
|
+
const ctxProvider = new ContextProviderImpl(log, kvp, new CredentialsProviderImpl(connectionFactory.credentials, connectionFactory.tokens, connectionFactory.oauth1, configReader, platformApi), platformApi, organisationId, environmentId, issuesProvider);
|
|
234
235
|
return new DurableInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), PlatformApiImpl.fromEnv(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
|
|
235
236
|
}
|
|
236
237
|
register(workflow, options) {
|
|
@@ -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;AAqFnE,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAGrE,CAAC"}
|
|
@@ -35,9 +35,10 @@ function compileCatch(compilerCtx, task) {
|
|
|
35
35
|
annotations: {
|
|
36
36
|
'error': error.message,
|
|
37
37
|
'stack': error.stack || '',
|
|
38
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
39
|
-
'',
|
|
38
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
40
39
|
'executionId': ctx.executionId,
|
|
40
|
+
'activationId': ctx.activation.id,
|
|
41
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
41
42
|
},
|
|
42
43
|
reason: 'error',
|
|
43
44
|
severity: 'high',
|
|
@@ -49,11 +50,12 @@ function compileCatch(compilerCtx, task) {
|
|
|
49
50
|
});
|
|
50
51
|
compilerCtx.issueProvider.submitIssue({
|
|
51
52
|
annotations: {
|
|
52
|
-
'error': error.message
|
|
53
|
+
'error': error.message,
|
|
53
54
|
'stack': error.stack || '',
|
|
54
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
55
|
-
'',
|
|
55
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
56
56
|
'executionId': ctx.executionId,
|
|
57
|
+
'activationId': ctx.activation.id,
|
|
58
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
57
59
|
},
|
|
58
60
|
reason: 'error',
|
|
59
61
|
severity: 'low',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"AAaA,OAAsB,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAgB,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,EAA+B,UAAU,EAAM,YAAY,EAAO,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ import { resourceFromAttributes } from '@opentelemetry/resources';
|
|
|
16
16
|
import { NodeSDK } from '@opentelemetry/sdk-node';
|
|
17
17
|
import express from 'express';
|
|
18
18
|
import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
|
|
19
|
+
import { CredentialsProviderImpl } from '../../connection/CredentialsProvider.js';
|
|
19
20
|
import { DirectConnectionFactory } from '../../connection/DirectConnectionFactory.js';
|
|
20
21
|
import { ContextProviderImpl } from '../../context/ContextProvider.js';
|
|
21
22
|
import { VersoriConfigReader } from '../../dsl/http/versori/configloader.js';
|
|
@@ -211,7 +212,7 @@ export class MemoryInterpreter {
|
|
|
211
212
|
const platformApi = PlatformApiImpl.fromEnv();
|
|
212
213
|
const organisationId = Deno.env.get(envVarOrgId) || 'development';
|
|
213
214
|
const environmentId = Deno.env.get(envVarEnvId) || 'development';
|
|
214
|
-
const ctxProvider = new ContextProviderImpl(log, kvp, connectionFactory.
|
|
215
|
+
const ctxProvider = new ContextProviderImpl(log, kvp, new CredentialsProviderImpl(connectionFactory.credentials, connectionFactory.tokens, connectionFactory.oauth1, configReader, platformApi), platformApi, organisationId, environmentId, issuesProvider);
|
|
215
216
|
return new MemoryInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, otelSDK);
|
|
216
217
|
}
|
|
217
218
|
register(workflow, options) {
|
|
@@ -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;AAoFnE,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAGrE,CAAC"}
|
|
@@ -34,9 +34,10 @@ function compileCatch(compilerCtx, task) {
|
|
|
34
34
|
annotations: {
|
|
35
35
|
'error': error.message,
|
|
36
36
|
'stack': error.stack || '',
|
|
37
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
38
|
-
'',
|
|
37
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
39
38
|
'executionId': ctx.executionId,
|
|
39
|
+
'activationId': ctx.activation.id,
|
|
40
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
40
41
|
},
|
|
41
42
|
reason: 'error',
|
|
42
43
|
severity: 'high',
|
|
@@ -45,11 +46,12 @@ function compileCatch(compilerCtx, task) {
|
|
|
45
46
|
}
|
|
46
47
|
compilerCtx.issueProvider.submitIssue({
|
|
47
48
|
annotations: {
|
|
48
|
-
'error': error.message
|
|
49
|
+
'error': error.message,
|
|
49
50
|
'stack': error.stack || '',
|
|
50
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
51
|
-
'',
|
|
51
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
52
52
|
'executionId': ctx.executionId,
|
|
53
|
+
'activationId': ctx.activation.id,
|
|
54
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
53
55
|
},
|
|
54
56
|
reason: 'error',
|
|
55
57
|
severity: 'low',
|
package/package.json
CHANGED
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
import { Client } from '@connectrpc/connect';
|
|
2
2
|
import { CredentialsProvider } from '../credentials/CredentialsProvider.js';
|
|
3
|
+
import { VersoriConfigReader } from '../dsl/http/versori/configloader.js';
|
|
3
4
|
import { credentialv1alpha1, oauth1v1, tokensv1 } from '../services/credentials/mod.js';
|
|
5
|
+
import { PlatformApi } from '../services/platform/mod.js';
|
|
4
6
|
export declare class CredentialsProviderImpl implements CredentialsProvider {
|
|
5
7
|
private readonly credentials;
|
|
6
8
|
private readonly tokens;
|
|
7
9
|
private readonly oauth1;
|
|
8
|
-
|
|
10
|
+
private readonly configReader;
|
|
11
|
+
private platformApi;
|
|
12
|
+
private readonly organisationId;
|
|
13
|
+
constructor(credentials: Client<typeof credentialv1alpha1.CredentialService>, tokens: Client<typeof tokensv1.TokenService>, oauth1: Client<typeof oauth1v1.AuthorizationService>, configReader: VersoriConfigReader, platformApi: PlatformApi);
|
|
9
14
|
getRaw(name: string, _activationId?: string): Promise<Uint8Array>;
|
|
10
15
|
getAccessToken(name: string, forceRefresh?: boolean, _activationId?: string): Promise<{
|
|
11
16
|
accessToken: string;
|
|
@@ -13,5 +18,6 @@ export declare class CredentialsProviderImpl implements CredentialsProvider {
|
|
|
13
18
|
expiry: Date | undefined;
|
|
14
19
|
}>;
|
|
15
20
|
getOAuth1Metadata(name: string, _activationId?: string): Promise<oauth1v1.GetAuthorizationMetadataResponse>;
|
|
21
|
+
private getCredentialIDFromName;
|
|
16
22
|
}
|
|
17
23
|
//# sourceMappingURL=CredentialsProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CredentialsProvider.d.ts","sourceRoot":"","sources":["../../../src/src/connection/CredentialsProvider.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"CredentialsProvider.d.ts","sourceRoot":"","sources":["../../../src/src/connection/CredentialsProvider.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,qBAAa,uBAAwB,YAAW,mBAAmB;IAI3D,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,WAAW;IAPvB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;gBAGnB,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,EAChE,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,EAC5C,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EACpD,YAAY,EAAE,mBAAmB,EAC1C,WAAW,EAAE,WAAW;IAK9B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAWjE,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM;;;;;IAc3E,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;YAU9C,uBAAuB;CA4DxC"}
|
|
@@ -15,9 +15,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.CredentialsProviderImpl = void 0;
|
|
16
16
|
const protobuf_1 = require("@bufbuild/protobuf");
|
|
17
17
|
const wkt_1 = require("@bufbuild/protobuf/wkt");
|
|
18
|
+
const constants_js_1 = require("../internal/constants.js");
|
|
18
19
|
const mod_js_1 = require("../services/credentials/mod.js");
|
|
19
20
|
class CredentialsProviderImpl {
|
|
20
|
-
constructor(credentials, tokens, oauth1) {
|
|
21
|
+
constructor(credentials, tokens, oauth1, configReader, platformApi) {
|
|
21
22
|
Object.defineProperty(this, "credentials", {
|
|
22
23
|
enumerable: true,
|
|
23
24
|
configurable: true,
|
|
@@ -36,9 +37,29 @@ class CredentialsProviderImpl {
|
|
|
36
37
|
writable: true,
|
|
37
38
|
value: oauth1
|
|
38
39
|
});
|
|
40
|
+
Object.defineProperty(this, "configReader", {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
configurable: true,
|
|
43
|
+
writable: true,
|
|
44
|
+
value: configReader
|
|
45
|
+
});
|
|
46
|
+
Object.defineProperty(this, "platformApi", {
|
|
47
|
+
enumerable: true,
|
|
48
|
+
configurable: true,
|
|
49
|
+
writable: true,
|
|
50
|
+
value: platformApi
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(this, "organisationId", {
|
|
53
|
+
enumerable: true,
|
|
54
|
+
configurable: true,
|
|
55
|
+
writable: true,
|
|
56
|
+
value: void 0
|
|
57
|
+
});
|
|
58
|
+
this.organisationId = Deno.env.get(constants_js_1.envVarOrgId) || 'development';
|
|
39
59
|
}
|
|
40
60
|
async getRaw(name, _activationId) {
|
|
41
|
-
const
|
|
61
|
+
const credentialId = await this.getCredentialIDFromName(name, _activationId);
|
|
62
|
+
const response = await this.credentials.get({ id: credentialId, organisationId: '' });
|
|
42
63
|
if (!response.credential) {
|
|
43
64
|
throw new Error(`Failed to get credential: ${name}`);
|
|
44
65
|
}
|
|
@@ -46,7 +67,8 @@ class CredentialsProviderImpl {
|
|
|
46
67
|
return rawData.raw;
|
|
47
68
|
}
|
|
48
69
|
async getAccessToken(name, forceRefresh, _activationId) {
|
|
49
|
-
const
|
|
70
|
+
const credentialId = await this.getCredentialIDFromName(name, _activationId);
|
|
71
|
+
const response = await this.tokens.getToken({ credentialId: credentialId, forceRefresh: forceRefresh || false });
|
|
50
72
|
if (!response.token) {
|
|
51
73
|
throw new Error(`Failed to get token for credential: ${name}`);
|
|
52
74
|
}
|
|
@@ -57,11 +79,56 @@ class CredentialsProviderImpl {
|
|
|
57
79
|
};
|
|
58
80
|
}
|
|
59
81
|
async getOAuth1Metadata(name, _activationId) {
|
|
60
|
-
const
|
|
82
|
+
const credentialId = await this.getCredentialIDFromName(name, _activationId);
|
|
83
|
+
const response = await this.oauth1.getAuthorizationMetadata({ credentialId: credentialId });
|
|
61
84
|
if (!response) {
|
|
62
85
|
throw new Error(`Failed to get OAuth1 metadata for credential: ${name}`);
|
|
63
86
|
}
|
|
64
87
|
return response;
|
|
65
88
|
}
|
|
89
|
+
async getCredentialIDFromName(name, activationId) {
|
|
90
|
+
// fin connection config from versori file
|
|
91
|
+
const conn = this.configReader.getCnxMapping(name);
|
|
92
|
+
if (!conn) {
|
|
93
|
+
return '';
|
|
94
|
+
}
|
|
95
|
+
// if connection is dynamic try and load the activation
|
|
96
|
+
if (conn.dynamic) {
|
|
97
|
+
if (!activationId) {
|
|
98
|
+
throw new Error(`Connection ${name} is dynamic, but no activation ID was found on the context`);
|
|
99
|
+
}
|
|
100
|
+
if (!conn.templateId) {
|
|
101
|
+
throw new Error(`Connection ${name} is dynamic, but no template ID was found on the config`);
|
|
102
|
+
}
|
|
103
|
+
const { data: dynamicConn } = await this.platformApi.getActivationConnection({
|
|
104
|
+
path: {
|
|
105
|
+
activation_id: activationId,
|
|
106
|
+
env_system_id: conn.templateId,
|
|
107
|
+
organisation_id: this.organisationId,
|
|
108
|
+
},
|
|
109
|
+
});
|
|
110
|
+
if (!dynamicConn) {
|
|
111
|
+
throw new Error(`Connection ${name} not found`);
|
|
112
|
+
}
|
|
113
|
+
if (!dynamicConn.credentials[0]?.credential?.id) {
|
|
114
|
+
throw new Error(`Connection ${name} has no credentials defined on it`);
|
|
115
|
+
}
|
|
116
|
+
return dynamicConn.credentials[0].credential?.id;
|
|
117
|
+
}
|
|
118
|
+
// connection is not dynamic try and load static connection
|
|
119
|
+
if (!conn.connId) {
|
|
120
|
+
throw new Error(`Connection ${name} is static, but no connection ID was found on the config`);
|
|
121
|
+
}
|
|
122
|
+
const { data: staticConn } = await this.platformApi.getConnection({
|
|
123
|
+
path: {
|
|
124
|
+
organisation_id: this.organisationId,
|
|
125
|
+
connection_id: conn.connId,
|
|
126
|
+
},
|
|
127
|
+
});
|
|
128
|
+
if (!staticConn?.credentials[0]?.credential?.id) {
|
|
129
|
+
throw new Error(`Connection ${name}/${conn.connId} has no credentials defined on it`);
|
|
130
|
+
}
|
|
131
|
+
return staticConn.credentials[0].credential.id;
|
|
132
|
+
}
|
|
66
133
|
}
|
|
67
134
|
exports.CredentialsProviderImpl = CredentialsProviderImpl;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Client } from '@connectrpc/connect';
|
|
2
2
|
import { RequestHandler } from 'express';
|
|
3
|
-
import { CredentialsProvider } from '../credentials/CredentialsProvider.js';
|
|
4
3
|
import { Logger } from '../observability/mod.js';
|
|
5
4
|
import { credentialv1alpha1, oauth1v1, tokensv1 } from '../services/credentials/mod.js';
|
|
6
5
|
import { Connection } from '../services/platform/mod.js';
|
|
@@ -25,7 +24,6 @@ export declare class DirectConnectionFactory implements ConnectionFactory {
|
|
|
25
24
|
constructor(httpClientFactory: HttpClientFactory, credentials: Client<typeof credentialv1alpha1.CredentialService>, tokens: Client<typeof tokensv1.TokenService>, oauth1: Client<typeof oauth1v1.AuthorizationService>, logger: Logger);
|
|
26
25
|
fetcher(cnx: Connection): Promise<FetchLike>;
|
|
27
26
|
handler(cnx: Connection): Promise<RequestHandler>;
|
|
28
|
-
getCredentialsProvider(): CredentialsProvider;
|
|
29
27
|
static fromEnv(logger: Logger): DirectConnectionFactory;
|
|
30
28
|
}
|
|
31
29
|
//# sourceMappingURL=DirectConnectionFactory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DirectConnectionFactory.d.ts","sourceRoot":"","sources":["../../../src/src/connection/DirectConnectionFactory.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"DirectConnectionFactory.d.ts","sourceRoot":"","sources":["../../../src/src/connection/DirectConnectionFactory.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE1D;;;;;;;GAOG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAKzD,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC;IACzE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,MAAM;IAR3B,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAA4B;IACtE,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAA2B;gBAGtD,iBAAiB,EAAE,iBAAiB,EAC5C,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,EAChE,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,EAC5C,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EAC5C,MAAM,EAAE,MAAM;IAkBnC,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAI5C,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC;IAIjD,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,uBAAuB;CAuB1D"}
|
|
@@ -17,7 +17,6 @@ const connect_node_1 = require("@connectrpc/connect-node");
|
|
|
17
17
|
const constants_js_1 = require("../internal/constants.js");
|
|
18
18
|
const createConnectRpcClient_js_1 = require("../services/createConnectRpcClient.js");
|
|
19
19
|
const mod_js_1 = require("../services/credentials/mod.js");
|
|
20
|
-
const CredentialsProvider_js_1 = require("./CredentialsProvider.js");
|
|
21
20
|
const HttpClientFactory_js_1 = require("./internal/HttpClientFactory.js");
|
|
22
21
|
const InboundConnectionFactory_js_1 = require("./internal/InboundConnectionFactory.js");
|
|
23
22
|
const OutboundConnectionFactory_js_1 = require("./internal/OutboundConnectionFactory.js");
|
|
@@ -77,7 +76,6 @@ class DirectConnectionFactory {
|
|
|
77
76
|
// since both classes are fairly large and complex.
|
|
78
77
|
this.outboundConnectionFactory = new OutboundConnectionFactory_js_1.OutboundConnectionFactory(httpClientFactory, credentials, tokens, oauth1, logger);
|
|
79
78
|
this.expressInboundConnectionFactory = new InboundConnectionFactory_js_1.ExpressInboundConnectionFactory(credentials, tokens, logger);
|
|
80
|
-
this.getCredentialsProvider = this.getCredentialsProvider.bind(this);
|
|
81
79
|
}
|
|
82
80
|
fetcher(cnx) {
|
|
83
81
|
return this.outboundConnectionFactory.fetcher(cnx);
|
|
@@ -85,9 +83,6 @@ class DirectConnectionFactory {
|
|
|
85
83
|
handler(cnx) {
|
|
86
84
|
return this.expressInboundConnectionFactory.handler(cnx);
|
|
87
85
|
}
|
|
88
|
-
getCredentialsProvider() {
|
|
89
|
-
return new CredentialsProvider_js_1.CredentialsProviderImpl(this.credentials, this.tokens, this.oauth1);
|
|
90
|
-
}
|
|
91
86
|
static fromEnv(logger) {
|
|
92
87
|
const baseUrl = Deno.env.get(constants_js_1.envVarCredsBaseURL) || 'http://localhost:9000';
|
|
93
88
|
const credentials = (0, createConnectRpcClient_js_1.createConnectRpcClient)(mod_js_1.credentialv1alpha1.CredentialService, () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DurableInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/DurableInterpreter.ts"],"names":[],"mappings":"AAaA,OAAsB,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAgB,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,EAA+B,UAAU,EAAM,YAAY,EAAO,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"DurableInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/DurableInterpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,7 @@ const resources_1 = require("@opentelemetry/resources");
|
|
|
22
22
|
const sdk_node_1 = require("@opentelemetry/sdk-node");
|
|
23
23
|
const express_1 = __importDefault(require("express"));
|
|
24
24
|
const rxjs_1 = require("rxjs");
|
|
25
|
+
const CredentialsProvider_js_1 = require("../../connection/CredentialsProvider.js");
|
|
25
26
|
const DirectConnectionFactory_js_1 = require("../../connection/DirectConnectionFactory.js");
|
|
26
27
|
const ContextProvider_js_1 = require("../../context/ContextProvider.js");
|
|
27
28
|
const configloader_js_1 = require("../../dsl/http/versori/configloader.js");
|
|
@@ -236,7 +237,7 @@ class DurableInterpreter {
|
|
|
236
237
|
const platformApi = PlatformApi_js_1.PlatformApiImpl.fromEnv();
|
|
237
238
|
const organisationId = Deno.env.get(constants_js_1.envVarOrgId) || 'development';
|
|
238
239
|
const environmentId = Deno.env.get(constants_js_1.envVarEnvId) || 'development';
|
|
239
|
-
const ctxProvider = new ContextProvider_js_1.ContextProviderImpl(log, kvp, connectionFactory.
|
|
240
|
+
const ctxProvider = new ContextProvider_js_1.ContextProviderImpl(log, kvp, new CredentialsProvider_js_1.CredentialsProviderImpl(connectionFactory.credentials, connectionFactory.tokens, connectionFactory.oauth1, configReader, platformApi), platformApi, organisationId, environmentId, issuesProvider);
|
|
240
241
|
return new DurableInterpreter(log, compiler, ctxProvider, express_1.default.Router(), express_1.default.Router(), new Map(), PlatformApi_js_1.PlatformApiImpl.fromEnv(), connectionFactory, cronapi_js_1.CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
|
|
241
242
|
}
|
|
242
243
|
register(workflow, options) {
|
|
@@ -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;AAqFnE,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAGrE,CAAC"}
|
|
@@ -38,9 +38,10 @@ function compileCatch(compilerCtx, task) {
|
|
|
38
38
|
annotations: {
|
|
39
39
|
'error': error.message,
|
|
40
40
|
'stack': error.stack || '',
|
|
41
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
42
|
-
'',
|
|
41
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
43
42
|
'executionId': ctx.executionId,
|
|
43
|
+
'activationId': ctx.activation.id,
|
|
44
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
44
45
|
},
|
|
45
46
|
reason: 'error',
|
|
46
47
|
severity: 'high',
|
|
@@ -52,11 +53,12 @@ function compileCatch(compilerCtx, task) {
|
|
|
52
53
|
});
|
|
53
54
|
compilerCtx.issueProvider.submitIssue({
|
|
54
55
|
annotations: {
|
|
55
|
-
'error': error.message
|
|
56
|
+
'error': error.message,
|
|
56
57
|
'stack': error.stack || '',
|
|
57
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
58
|
-
'',
|
|
58
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
59
59
|
'executionId': ctx.executionId,
|
|
60
|
+
'activationId': ctx.activation.id,
|
|
61
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
60
62
|
},
|
|
61
63
|
reason: 'error',
|
|
62
64
|
severity: 'low',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"AAaA,OAAsB,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAgB,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,EAA+B,UAAU,EAAM,YAAY,EAAO,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,7 @@ const resources_1 = require("@opentelemetry/resources");
|
|
|
22
22
|
const sdk_node_1 = require("@opentelemetry/sdk-node");
|
|
23
23
|
const express_1 = __importDefault(require("express"));
|
|
24
24
|
const rxjs_1 = require("rxjs");
|
|
25
|
+
const CredentialsProvider_js_1 = require("../../connection/CredentialsProvider.js");
|
|
25
26
|
const DirectConnectionFactory_js_1 = require("../../connection/DirectConnectionFactory.js");
|
|
26
27
|
const ContextProvider_js_1 = require("../../context/ContextProvider.js");
|
|
27
28
|
const configloader_js_1 = require("../../dsl/http/versori/configloader.js");
|
|
@@ -217,7 +218,7 @@ class MemoryInterpreter {
|
|
|
217
218
|
const platformApi = PlatformApi_js_1.PlatformApiImpl.fromEnv();
|
|
218
219
|
const organisationId = Deno.env.get(constants_js_1.envVarOrgId) || 'development';
|
|
219
220
|
const environmentId = Deno.env.get(constants_js_1.envVarEnvId) || 'development';
|
|
220
|
-
const ctxProvider = new ContextProvider_js_1.ContextProviderImpl(log, kvp, connectionFactory.
|
|
221
|
+
const ctxProvider = new ContextProvider_js_1.ContextProviderImpl(log, kvp, new CredentialsProvider_js_1.CredentialsProviderImpl(connectionFactory.credentials, connectionFactory.tokens, connectionFactory.oauth1, configReader, platformApi), platformApi, organisationId, environmentId, issuesProvider);
|
|
221
222
|
return new MemoryInterpreter(log, compiler, ctxProvider, express_1.default.Router(), express_1.default.Router(), new Map(), connectionFactory, cronapi_js_1.CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, otelSDK);
|
|
222
223
|
}
|
|
223
224
|
register(workflow, options) {
|
|
@@ -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;AAoFnE,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAGrE,CAAC"}
|
|
@@ -37,9 +37,10 @@ function compileCatch(compilerCtx, task) {
|
|
|
37
37
|
annotations: {
|
|
38
38
|
'error': error.message,
|
|
39
39
|
'stack': error.stack || '',
|
|
40
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
41
|
-
'',
|
|
40
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
42
41
|
'executionId': ctx.executionId,
|
|
42
|
+
'activationId': ctx.activation.id,
|
|
43
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
43
44
|
},
|
|
44
45
|
reason: 'error',
|
|
45
46
|
severity: 'high',
|
|
@@ -48,11 +49,12 @@ function compileCatch(compilerCtx, task) {
|
|
|
48
49
|
}
|
|
49
50
|
compilerCtx.issueProvider.submitIssue({
|
|
50
51
|
annotations: {
|
|
51
|
-
'error': error.message
|
|
52
|
+
'error': error.message,
|
|
52
53
|
'stack': error.stack || '',
|
|
53
|
-
'workflowId': ctx.options.workflowId || ctx.workflowId ||
|
|
54
|
-
'',
|
|
54
|
+
'workflowId': ctx.options.workflowId || ctx.workflowId || '',
|
|
55
55
|
'executionId': ctx.executionId,
|
|
56
|
+
'activationId': ctx.activation.id,
|
|
57
|
+
'activationExternalId': ctx.activation?.user.externalId,
|
|
56
58
|
},
|
|
57
59
|
reason: 'error',
|
|
58
60
|
severity: 'low',
|