snyk-broker 4.190.2 → 4.191.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/client/brokerClientPlugins/pluginManager.js +10 -10
- package/dist/lib/client/brokerClientPlugins/pluginManager.js.map +1 -1
- package/dist/lib/client/brokerClientPlugins/plugins/githubServerAppAuth.js +16 -5
- package/dist/lib/client/brokerClientPlugins/plugins/githubServerAppAuth.js.map +1 -1
- package/dist/lib/client/checks/config/index.js +3 -3
- package/dist/lib/client/checks/config/index.js.map +1 -1
- package/dist/lib/client/config/configHelpers.js +9 -1
- package/dist/lib/client/config/configHelpers.js.map +1 -1
- package/dist/lib/client/config/remoteConfig.js +38 -34
- package/dist/lib/client/config/remoteConfig.js.map +1 -1
- package/dist/lib/client/connectionsManager/mainWatcher.js +74 -0
- package/dist/lib/client/connectionsManager/mainWatcher.js.map +1 -0
- package/dist/lib/client/connectionsManager/manager.js +51 -0
- package/dist/lib/client/connectionsManager/manager.js.map +1 -0
- package/dist/lib/client/connectionsManager/remoteConnectionSync.js +14 -0
- package/dist/lib/client/connectionsManager/remoteConnectionSync.js.map +1 -0
- package/dist/lib/client/connectionsManager/validator.js +32 -0
- package/dist/lib/client/connectionsManager/validator.js.map +1 -0
- package/dist/lib/client/hooks/startup/processHooks.js +9 -18
- package/dist/lib/client/hooks/startup/processHooks.js.map +1 -1
- package/dist/lib/client/index.js +12 -28
- package/dist/lib/client/index.js.map +1 -1
- package/dist/lib/client/routesHandler/websocketConnectionMiddlewares.js.map +1 -1
- package/dist/lib/client/socket.js +34 -20
- package/dist/lib/client/socket.js.map +1 -1
- package/dist/lib/client/socketHandlers/openHandler.js +5 -2
- package/dist/lib/client/socketHandlers/openHandler.js.map +1 -1
- package/dist/lib/client/types/client.js.map +1 -1
- package/dist/lib/client/utils/cleanup.js +10 -4
- package/dist/lib/client/utils/cleanup.js.map +1 -1
- package/dist/lib/client/utils/configurations.js +12 -0
- package/dist/lib/client/utils/configurations.js.map +1 -0
- package/dist/lib/client/utils/integrations.js +8 -0
- package/dist/lib/client/utils/integrations.js.map +1 -0
- package/dist/lib/common/config/config.js +2 -2
- package/dist/lib/common/config/config.js.map +1 -1
- package/dist/lib/common/relay/forwardHttpRequest.js +2 -1
- package/dist/lib/common/relay/forwardHttpRequest.js.map +1 -1
- package/dist/lib/common/relay/forwardHttpRequestOverHttp.js +2 -1
- package/dist/lib/common/relay/forwardHttpRequestOverHttp.js.map +1 -1
- package/dist/lib/common/relay/forwardWebsocketRequest.js +5 -1
- package/dist/lib/common/relay/forwardWebsocketRequest.js.map +1 -1
- package/dist/lib/common/relay/prepareRequest.js +13 -18
- package/dist/lib/common/relay/prepareRequest.js.map +1 -1
- package/dist/lib/common/utils/content-length.js +21 -0
- package/dist/lib/common/utils/content-length.js.map +1 -0
- package/dist/lib/common/utils/headers-value-constants.js +7 -0
- package/dist/lib/common/utils/headers-value-constants.js.map +1 -0
- package/dist/lib/common/utils/signals.js +8 -1
- package/dist/lib/common/utils/signals.js.map +1 -1
- package/dist/lib/index.js +42 -32
- package/dist/lib/index.js.map +1 -1
- package/dist/package.json +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -69,20 +69,20 @@ const loadPlugins = async (pluginsFolderPath, clientOpts) => {
|
|
|
69
69
|
}
|
|
70
70
|
};
|
|
71
71
|
exports.loadPlugins = loadPlugins;
|
|
72
|
-
const runStartupPlugins = async (clientOpts) => {
|
|
72
|
+
const runStartupPlugins = async (clientOpts, connectionKey) => {
|
|
73
73
|
var _a;
|
|
74
74
|
const loadedPlugins = clientOpts.config.plugins;
|
|
75
|
-
const connectionsKeys = clientOpts.config.connections
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
for (const connectionKey of connectionsKeys) {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
}
|
|
75
|
+
// const connectionsKeys = clientOpts.config.connections
|
|
76
|
+
// ? Object.keys(clientOpts.config.connections)
|
|
77
|
+
// : [];
|
|
78
|
+
// for (const connectionKey of connectionsKeys) {
|
|
79
|
+
if (loadedPlugins.has(`${clientOpts.config.connections[connectionKey].type}`)) {
|
|
80
|
+
const pluginInstances = (_a = loadedPlugins.get(`${clientOpts.config.connections[connectionKey].type}`)) !== null && _a !== void 0 ? _a : [];
|
|
81
|
+
for (let i = 0; i < pluginInstances.length; i++) {
|
|
82
|
+
await pluginInstances[i].startUp(clientOpts.config.connections[connectionKey]);
|
|
84
83
|
}
|
|
85
84
|
}
|
|
85
|
+
// }
|
|
86
86
|
};
|
|
87
87
|
exports.runStartupPlugins = runStartupPlugins;
|
|
88
88
|
const runPreRequestPlugins = async (clientOpts, connectionIdentifier, pristinePreRequest) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pluginManager.js","sourceRoot":"","sources":["../../../../lib/client/brokerClientPlugins/pluginManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAsC;AACtC,8CAAkD;AAElD,2BAAgC;AAGzB,MAAM,WAAW,GAAG,KAAK,EAAE,iBAAyB,EAAE,UAAU,EAAE,EAAE;;IACzE,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC1D,UAAU,CAAC,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACtD,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IACH,IAAI;QACF,IAAI,IAAA,eAAU,EAAC,iBAAiB,CAAC,EAAE;YACjC,MAAM,YAAY,GAAG,MAAM,IAAA,kBAAO,EAAC,iBAAiB,CAAC,CAAC;YACtD,KAAK,MAAM,UAAU,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CACxD,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CACzB,EAAE;gBACD,MAAM,MAAM,GAAG,YAAa,GAAG,iBAAiB,IAAI,UAAU,EAAE,0DAAC,CAAC;gBAClE,qFAAqF;gBACrF,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAC5D,MAAM,qBAAqB,GAAG,cAAc,CAAC,kBAAkB,EAAE,CAAC;gBAClE,qBAAqB,CAAC,OAAO,CAAC,CAAC,oBAAoB,EAAE,EAAE;oBACrD,IACE,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC;wBAC7C,cAAc,CAAC,cAAc,EAAE,EAC/B;wBACA,YAAM,CAAC,KAAK,CAAC,EAAE,EAAE,kBAAkB,cAAc,CAAC,UAAU,EAAE,CAAC,CAAC;wBAChE,MAAM,0BAA0B,GAC9B,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;wBACtD,IACE,0BAA0B,CAAC,IAAI,CAC7B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,UAAU,KAAK,cAAc,CAAC,UAAU;4BAC1C,CAAC,CAAC,UAAU,KAAK,cAAc,CAAC,UAAU,CAC7C,EACD;4BACA,MAAM,MAAM,GAAG,2CAA2C,CAAC;4BAC3D,YAAM,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;4BACzB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;yBACzB;wBACD,0BAA0B,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;qBACjD;yBAAM;wBACL,YAAM,CAAC,KAAK,CACV,EAAE,EACF,mBAAmB,cAAc,CAAC,UAAU,eAAe,CAC5D,CAAC;qBACH;gBACH,CAAC,CAAC,CAAC;aACJ;SACF;QACD,OAAO,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;KACrC;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,MAAM,GAAG,8BAA8B,iBAAiB,EAAE,CAAC;QACjE,YAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,8BAA8B,iBAAiB,EAAE,CAAC,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;KACzB;AACH,CAAC,CAAC;AAlDW,QAAA,WAAW,eAkDtB;AAEK,MAAM,iBAAiB,GAAG,KAAK,EAAE,UAAU,EAAE,EAAE;;
|
|
1
|
+
{"version":3,"file":"pluginManager.js","sourceRoot":"","sources":["../../../../lib/client/brokerClientPlugins/pluginManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,6 +48,17 @@ class Plugin extends abstractBrokerPlugin_1.default {
|
|
|
48
48
|
try {
|
|
49
49
|
this.logger.info({ plugin: this.pluginName }, 'Running Startup');
|
|
50
50
|
this.logger.debug({ plugin: this.pluginCode, config: connectionConfig }, 'Connection Config passed to the plugin');
|
|
51
|
+
if (connectionConfig &&
|
|
52
|
+
(!connectionConfig.GITHUB_APP_CLIENT_ID ||
|
|
53
|
+
!connectionConfig.GITHUB_APP_PRIVATE_PEM_PATH ||
|
|
54
|
+
!connectionConfig.GITHUB_APP_INSTALLATION_ID)) {
|
|
55
|
+
throw new Error(`Missing environment variable(s) for plugin (GITHUB_APP_CLIENT_ID, GITHUB_APP_PRIVATE_PEM_PATH, GITHUB_APP_INSTALLATION_ID)`);
|
|
56
|
+
}
|
|
57
|
+
if (connectionConfig &&
|
|
58
|
+
connectionConfig.GITHUB_APP_PRIVATE_PEM_PATH &&
|
|
59
|
+
!(0, node_fs_1.existsSync)(connectionConfig.GITHUB_APP_PRIVATE_PEM_PATH)) {
|
|
60
|
+
throw new Error(`Pem file path is invalid ${connectionConfig.GITHUB_APP_PRIVATE_PEM_PATH}`);
|
|
61
|
+
}
|
|
51
62
|
// Generate the JWT
|
|
52
63
|
const now = Date.now();
|
|
53
64
|
connectionConfig.JWT_TOKEN = this._getJWT(Math.floor(now / 1000), // Current time in seconds
|
|
@@ -58,8 +69,8 @@ class Plugin extends abstractBrokerPlugin_1.default {
|
|
|
58
69
|
this._setAccessTokenLifecycleHandler(connectionConfig);
|
|
59
70
|
}
|
|
60
71
|
catch (err) {
|
|
61
|
-
this.logger.
|
|
62
|
-
throw Error(`Error in ${this.pluginName}-${this.pluginCode} startup. ${err}`);
|
|
72
|
+
this.logger.error({ err }, `Error in ${this.pluginName}-${this.pluginCode} startup.`);
|
|
73
|
+
throw new Error(`Error in ${this.pluginName}-${this.pluginCode} startup. ${err}`);
|
|
63
74
|
}
|
|
64
75
|
}
|
|
65
76
|
_getJWT(nowInSeconds, privatePemPath, githubAppClientId) {
|
|
@@ -92,7 +103,7 @@ class Plugin extends abstractBrokerPlugin_1.default {
|
|
|
92
103
|
}
|
|
93
104
|
catch (err) {
|
|
94
105
|
this.logger.error({ plugin: this.pluginCode, err }, `Error refreshing JWT`);
|
|
95
|
-
throw
|
|
106
|
+
throw err;
|
|
96
107
|
}
|
|
97
108
|
};
|
|
98
109
|
timeoutHandlerId = setTimeout(timeoutHandler, this._getTimeDifferenceInMsToFutureDate(now + this.JWT_TTL) - 10000);
|
|
@@ -101,7 +112,7 @@ class Plugin extends abstractBrokerPlugin_1.default {
|
|
|
101
112
|
}
|
|
102
113
|
catch (err) {
|
|
103
114
|
this.logger.error({ plugin: this.pluginCode, err }, `Error setting JWT lifecycle handler.`);
|
|
104
|
-
throw
|
|
115
|
+
throw err;
|
|
105
116
|
}
|
|
106
117
|
}
|
|
107
118
|
async _getAccessToken(endpointHostname, githubAppInstallationId, jwtToken) {
|
|
@@ -144,7 +155,7 @@ class Plugin extends abstractBrokerPlugin_1.default {
|
|
|
144
155
|
}
|
|
145
156
|
catch (err) {
|
|
146
157
|
this.logger.error({ plugin: this.pluginCode, err }, `Error setting Access Token lifecycle handler.`);
|
|
147
|
-
throw
|
|
158
|
+
throw err;
|
|
148
159
|
}
|
|
149
160
|
};
|
|
150
161
|
timeoutHandlerId = setTimeout(timeoutHandler, this._getTimeDifferenceInMsToFutureDate(JSON.parse(connectionConfig.accessToken).expires_at) - 10000);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"githubServerAppAuth.js","sourceRoot":"","sources":["../../../../../lib/client/brokerClientPlugins/plugins/githubServerAppAuth.ts"],"names":[],"mappings":";;;;;;AAAA,oFAAoF;AACpF,
|
|
1
|
+
{"version":3,"file":"githubServerAppAuth.js","sourceRoot":"","sources":["../../../../../lib/client/brokerClientPlugins/plugins/githubServerAppAuth.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,9 +29,9 @@ const brokerClientUrlCheck = (config) => {
|
|
|
29
29
|
};
|
|
30
30
|
const universalBrokerConnectionsCheck = (config) => {
|
|
31
31
|
return {
|
|
32
|
-
id: 'universal-broker-connections-config-validation',
|
|
33
|
-
name: 'Universal Broker Client Connections Configuration Check',
|
|
34
|
-
enabled: config.universalBrokerEnabled,
|
|
32
|
+
id: 'local-universal-broker-connections-config-validation',
|
|
33
|
+
name: 'Local Universal Broker Client Connections Configuration Check',
|
|
34
|
+
enabled: config.universalBrokerEnabled && config.SKIP_REMOTE_CONFIG,
|
|
35
35
|
check: function () {
|
|
36
36
|
return (0, universalConnectionConfigCheck_1.validateUniversalConnectionsConfig)({ id: this.id, name: this.name }, config);
|
|
37
37
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/client/checks/config/index.ts"],"names":[],"mappings":";;;AAEA,iEAAiE;AACjE,yDAA+D;AAC/D,iEAAsE;AACtE,qFAAsF;AACtF,yEAAsF;AAEtF,SAAgB,eAAe,CAAC,MAAc;IAC5C,OAAO;QACL,oBAAoB,CAAC,MAAM,CAAC;QAC5B,+BAA+B,CAAC,MAAM,CAAC;QACvC,6BAA6B,CAAC,MAAM,CAAC;QACrC,yBAAyB,CAAC,MAAM,CAAC;QACjC,wBAAwB,CAAC,MAAM,CAAC;KACjC,CAAC;AACJ,CAAC;AARD,0CAQC;AAED,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAS,EAAE;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;IACrC,OAAO;QACL,EAAE,EAAE,8BAA8B;QAClC,IAAI,EAAE,oCAAoC;QAC1C,OAAO,EAAE,GAAG,IAAI,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAC3C,KAAK,EAAE,KAAK;YACV,OAAO,MAAM,IAAA,8CAAuB,EAClC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAChC,MAAM,CACP,CAAC;QACJ,CAAC;KACc,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,+BAA+B,GAAG,CAAC,MAAc,EAAS,EAAE;IAChE,OAAO;QACL,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/client/checks/config/index.ts"],"names":[],"mappings":";;;AAEA,iEAAiE;AACjE,yDAA+D;AAC/D,iEAAsE;AACtE,qFAAsF;AACtF,yEAAsF;AAEtF,SAAgB,eAAe,CAAC,MAAc;IAC5C,OAAO;QACL,oBAAoB,CAAC,MAAM,CAAC;QAC5B,+BAA+B,CAAC,MAAM,CAAC;QACvC,6BAA6B,CAAC,MAAM,CAAC;QACrC,yBAAyB,CAAC,MAAM,CAAC;QACjC,wBAAwB,CAAC,MAAM,CAAC;KACjC,CAAC;AACJ,CAAC;AARD,0CAQC;AAED,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAS,EAAE;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;IACrC,OAAO;QACL,EAAE,EAAE,8BAA8B;QAClC,IAAI,EAAE,oCAAoC;QAC1C,OAAO,EAAE,GAAG,IAAI,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAC3C,KAAK,EAAE,KAAK;YACV,OAAO,MAAM,IAAA,8CAAuB,EAClC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAChC,MAAM,CACP,CAAC;QACJ,CAAC;KACc,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,+BAA+B,GAAG,CAAC,MAAc,EAAS,EAAE;IAChE,OAAO;QACL,EAAE,EAAE,sDAAsD;QAC1D,IAAI,EAAE,+DAA+D;QACrE,OAAO,EAAE,MAAM,CAAC,sBAAsB,IAAI,MAAM,CAAC,kBAAkB;QACnE,KAAK,EAAE;YACL,OAAO,IAAA,mEAAkC,EACvC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAChC,MAAM,CACP,CAAC;QACJ,CAAC;KACc,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,6BAA6B,GAAG,CAAC,MAAc,EAAS,EAAE;IAC9D,OAAO;QACL,EAAE,EAAE,gCAAgC;QACpC,IAAI,EAAE,kCAAkC;QACxC,OAAO,EAAE,IAAI;QACb,KAAK,EAAE;YACL,OAAO,IAAA,4CAAyB,EAC9B,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAChC,MAAM,CACP,CAAC;QACJ,CAAC;KACc,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,MAAc,EAAS,EAAE;IAC1D,OAAO;QACL,EAAE,EAAE,mCAAmC;QACvC,IAAI,EAAE,8BAA8B;QACpC,OAAO,EAAE,CAAC,MAAM,CAAC,kCAAkC;QACnD,KAAK,EAAE;YACL,OAAO,IAAA,mDAA4B,EACjC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAChC,MAAM,CACP,CAAC;QACJ,CAAC;KACc,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,MAAc,EAAS,EAAE;IACzD,OAAO;QACL,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,6BAA6B;QACnC,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,KAAK;YACV,OAAO,MAAM,IAAA,mEAAwC,EACnD,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAChC,MAAM,CACP,CAAC;QACJ,CAAC;KACc,CAAC;AACpB,CAAC,CAAC"}
|
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.highAvailabilityModeEnabled = exports.getClientConfigMetadata = void 0;
|
|
3
|
+
exports.highAvailabilityModeEnabled = exports.getClientConfigMetadata = exports.reloadConfig = void 0;
|
|
4
4
|
const logger_1 = require("../../logs/logger");
|
|
5
|
+
const config_1 = require("../../common/config/config");
|
|
6
|
+
const reloadConfig = async (clientOpts) => {
|
|
7
|
+
// Reload config with connection
|
|
8
|
+
await (0, config_1.loadBrokerConfig)();
|
|
9
|
+
const globalConfig = { config: (0, config_1.getConfig)() };
|
|
10
|
+
clientOpts.config = Object.assign({}, clientOpts.config, globalConfig.config);
|
|
11
|
+
};
|
|
12
|
+
exports.reloadConfig = reloadConfig;
|
|
5
13
|
const getClientConfigMetadata = (clientConfig) => {
|
|
6
14
|
const configMetadata = {
|
|
7
15
|
haMode: highAvailabilityModeEnabled(clientConfig),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configHelpers.js","sourceRoot":"","sources":["../../../../lib/client/config/configHelpers.ts"],"names":[],"mappings":";;;AAEA,8CAAkD;
|
|
1
|
+
{"version":3,"file":"configHelpers.js","sourceRoot":"","sources":["../../../../lib/client/config/configHelpers.ts"],"names":[],"mappings":";;;AAEA,8CAAkD;AAClD,uDAIoC;AAE7B,MAAM,YAAY,GAAG,KAAK,EAAE,UAAU,EAAE,EAAE;IAC/C,gCAAgC;IAChC,MAAM,IAAA,yBAAgB,GAAE,CAAC;IACzB,MAAM,YAAY,GAAG,EAAE,MAAM,EAAE,IAAA,kBAAS,GAAE,EAAE,CAAC;IAC7C,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAC/B,EAAE,EACF,UAAU,CAAC,MAAM,EACjB,YAAY,CAAC,MAAM,CACoB,CAAC;AAC5C,CAAC,CAAC;AATW,QAAA,YAAY,gBASvB;AAEK,MAAM,uBAAuB,GAAG,CACrC,YAAiC,EACjB,EAAE;IAClB,MAAM,cAAc,GAAmB;QACrC,MAAM,EAAE,2BAA2B,CAAC,YAAY,CAAC;QACjD,SAAS,EAAE,YAAY,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QAC3D,WAAW,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QACtD,WAAW,EAAE,iBAAiB,CAAC,YAAY,CAAC;QAC5C,SAAS,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QACtD,SAAS,EACP,QAAQ,CAAC,YAAY,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QACvE,KAAK,EAAE,YAAY,CAAC,SAAS,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QACvE,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QAChD,kBAAkB,EAAE,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QAClE,eAAe,EAAE,YAAY,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;KACpE,CAAC;IACF,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAjBW,QAAA,uBAAuB,2BAiBlC;AAEF,MAAM,iBAAiB,GAAG,CAAC,MAA2B,EAAW,EAAE;IACjE,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;QACxB,IAAI,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YACvD,OAAO,IAAI,CAAC,CAAC,iCAAiC;SAC/C;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,SAAgB,2BAA2B,CAAC,MAAW;IACrD,iDAAiD;IACjD,IAAI,2BAA2B,GAAG,KAAK,CAAC;IACxC,MAAM,gCAAgC,GAAI,MAAiB;SACxD,sBAAsB,CAAC;IAE1B,IAAI,OAAO,gCAAgC,KAAK,WAAW,EAAE;QAC3D,2BAA2B;YACzB,gCAAgC,CAAC,WAAW,EAAE,KAAK,MAAM;gBACzD,gCAAgC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;KAC5D;IAED,YAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2BAA2B,EAAE,EAAE,sBAAsB,CAAC,CAAC;IAE9E,OAAO,2BAA2B,CAAC;AACrC,CAAC;AAfD,kEAeC"}
|
|
@@ -3,46 +3,50 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.retrieveConnectionsForDeployment = void 0;
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
const request_1 = require("../../common/http/request");
|
|
6
|
+
const configurations_1 = require("../utils/configurations");
|
|
6
7
|
const retrieveConnectionsForDeployment = async (clientOpts, universalFilePath) => {
|
|
7
|
-
var _a, _b;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (connectionsResponse.statusCode
|
|
8
|
+
var _a, _b, _c, _d;
|
|
9
|
+
const tenantId = clientOpts.config.tenantId;
|
|
10
|
+
const installId = clientOpts.config.installId;
|
|
11
|
+
const deploymentId = clientOpts.config.deploymentId;
|
|
12
|
+
const apiVersion = clientOpts.config.apiVersion;
|
|
13
|
+
const request = {
|
|
14
|
+
url: `${clientOpts.config.API_BASE_URL}/rest/tenants/${tenantId}/brokers/installs/${installId}/deployments/${deploymentId}/connections?version=${apiVersion}`,
|
|
15
|
+
headers: {
|
|
16
|
+
'Content-Type': 'application/vnd.api+json',
|
|
17
|
+
Authorization: `${(_a = clientOpts.accessToken) === null || _a === void 0 ? void 0 : _a.authHeader}`,
|
|
18
|
+
},
|
|
19
|
+
method: 'GET',
|
|
20
|
+
};
|
|
21
|
+
const connectionsResponse = await (0, request_1.makeRequestToDownstream)(request);
|
|
22
|
+
if (connectionsResponse.statusCode != 200) {
|
|
23
|
+
if (connectionsResponse.statusCode == 404) {
|
|
24
|
+
throw new Error(`No deployment found for tenant ${tenantId} install ${installId}. You must create a deployment first.`);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
23
27
|
const errorBody = JSON.parse(connectionsResponse.body);
|
|
24
28
|
throw new Error(`${connectionsResponse.statusCode}-${errorBody.error}:${errorBody.error_description}`);
|
|
25
29
|
}
|
|
26
|
-
const connections = JSON.parse(connectionsResponse.body)
|
|
27
|
-
.data;
|
|
28
|
-
const connectionsObjectForFile = { CONNECTIONS: {} };
|
|
29
|
-
for (let i = 0; i < connections.length; i++) {
|
|
30
|
-
connectionsObjectForFile.CONNECTIONS[`${connections[i].attributes.name}`] = {
|
|
31
|
-
...connections[i].attributes.configuration.default,
|
|
32
|
-
...connections[i].attributes.configuration.required,
|
|
33
|
-
};
|
|
34
|
-
connectionsObjectForFile.CONNECTIONS[`${connections[i].attributes.name}`].type = connections[i].attributes.type;
|
|
35
|
-
connectionsObjectForFile.CONNECTIONS[`${connections[i].attributes.name}`].identifier = connections[i].id;
|
|
36
|
-
}
|
|
37
|
-
const universalConfigFileBuffer = (0, fs_1.readFileSync)(universalFilePath);
|
|
38
|
-
const universalConfigFile = JSON.parse((_b = universalConfigFileBuffer.toString()) !== null && _b !== void 0 ? _b : { CONNECTIONS: {} });
|
|
39
|
-
universalConfigFile['CONNECTIONS'] = connectionsObjectForFile.CONNECTIONS;
|
|
40
|
-
(0, fs_1.writeFileSync)(universalFilePath, JSON.stringify(universalConfigFile));
|
|
41
|
-
return;
|
|
42
30
|
}
|
|
43
|
-
|
|
44
|
-
|
|
31
|
+
const connections = JSON.parse(connectionsResponse.body)
|
|
32
|
+
.data;
|
|
33
|
+
const connectionsObjectForFile = { CONNECTIONS: {} };
|
|
34
|
+
for (let i = 0; i < connections.length; i++) {
|
|
35
|
+
connectionsObjectForFile.CONNECTIONS[`${connections[i].attributes.name}`] =
|
|
36
|
+
{
|
|
37
|
+
...(0, configurations_1.capitalizeKeys)((_b = connections[i].attributes.configuration.default) !== null && _b !== void 0 ? _b : {}),
|
|
38
|
+
...(0, configurations_1.capitalizeKeys)((_c = connections[i].attributes.configuration.required) !== null && _c !== void 0 ? _c : {}),
|
|
39
|
+
};
|
|
40
|
+
connectionsObjectForFile.CONNECTIONS[`${connections[i].attributes.name}`].type = connections[i].attributes.type;
|
|
41
|
+
connectionsObjectForFile.CONNECTIONS[`${connections[i].attributes.name}`].identifier = connections[i].attributes.identifier;
|
|
42
|
+
connectionsObjectForFile.CONNECTIONS[`${connections[i].attributes.name}`].id = connections[i].id;
|
|
43
|
+
connectionsObjectForFile.CONNECTIONS[`${connections[i].attributes.name}`].friendlyName = connections[i].attributes.name;
|
|
45
44
|
}
|
|
45
|
+
const universalConfigFileBuffer = (0, fs_1.readFileSync)(universalFilePath);
|
|
46
|
+
const universalConfigFile = JSON.parse((_d = universalConfigFileBuffer.toString()) !== null && _d !== void 0 ? _d : { CONNECTIONS: {} });
|
|
47
|
+
universalConfigFile['CONNECTIONS'] = connectionsObjectForFile.CONNECTIONS;
|
|
48
|
+
(0, fs_1.writeFileSync)(universalFilePath, JSON.stringify(universalConfigFile));
|
|
49
|
+
return;
|
|
46
50
|
};
|
|
47
51
|
exports.retrieveConnectionsForDeployment = retrieveConnectionsForDeployment;
|
|
48
52
|
//# sourceMappingURL=remoteConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remoteConfig.js","sourceRoot":"","sources":["../../../../lib/client/config/remoteConfig.ts"],"names":[],"mappings":";;;AAAA,2BAAiD;AACjD,uDAAoE;
|
|
1
|
+
{"version":3,"file":"remoteConfig.js","sourceRoot":"","sources":["../../../../lib/client/config/remoteConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setMainWatcher = void 0;
|
|
4
|
+
const remoteConnectionSync_1 = require("./remoteConnectionSync");
|
|
5
|
+
const logger_1 = require("../../logs/logger");
|
|
6
|
+
const socket_1 = require("../socket");
|
|
7
|
+
const pluginManager_1 = require("../brokerClientPlugins/pluginManager");
|
|
8
|
+
const signals_1 = require("../../common/utils/signals");
|
|
9
|
+
const setMainWatcher = async (clientOpts, websocketConnections, globalIdentifyingMetadata) => {
|
|
10
|
+
const watcher = async () => {
|
|
11
|
+
if (!process.env.SKIP_REMOTE_CONFIG) {
|
|
12
|
+
await (0, remoteConnectionSync_1.retrieveAndLoadRemoteConfigSync)(clientOpts);
|
|
13
|
+
}
|
|
14
|
+
const integrationsKeys = clientOpts.config.connections
|
|
15
|
+
? Object.keys(clientOpts.config.connections)
|
|
16
|
+
: [];
|
|
17
|
+
if (integrationsKeys.length < 1) {
|
|
18
|
+
logger_1.log.info({}, `Found deployment ${clientOpts.config.deploymentId}. Waiting for connections. (polling)`);
|
|
19
|
+
}
|
|
20
|
+
for (let i = 0; i < integrationsKeys.length; i++) {
|
|
21
|
+
const currentWebsocketConnectionIndex = websocketConnections.findIndex((websocketConnection) => websocketConnection.friendlyName == integrationsKeys[i]);
|
|
22
|
+
if (clientOpts.config.connections[`${integrationsKeys[i]}`].isDisabled) {
|
|
23
|
+
logger_1.log.error({
|
|
24
|
+
id: clientOpts.config.connections[`${integrationsKeys[i]}`].id,
|
|
25
|
+
name: clientOpts.config.connections[`${integrationsKeys[i]}`]
|
|
26
|
+
.friendlyName,
|
|
27
|
+
}, `Connection is disabled due to (a) missing environment variable(s). Please provide the value and restart the broker client.`);
|
|
28
|
+
}
|
|
29
|
+
else if (!clientOpts.config.connections[`${integrationsKeys[i]}`].identifier) {
|
|
30
|
+
if (currentWebsocketConnectionIndex > -1) {
|
|
31
|
+
logger_1.log.info({
|
|
32
|
+
id: clientOpts.config.connections[`${integrationsKeys[i]}`].id,
|
|
33
|
+
name: clientOpts.config.connections[`${integrationsKeys[i]}`]
|
|
34
|
+
.friendlyName,
|
|
35
|
+
}, `Shutting down unused connection`);
|
|
36
|
+
websocketConnections[currentWebsocketConnectionIndex].end();
|
|
37
|
+
websocketConnections[currentWebsocketConnectionIndex].destroy();
|
|
38
|
+
websocketConnections.splice(currentWebsocketConnectionIndex, 1);
|
|
39
|
+
const secondTunnelIndex = websocketConnections.findIndex((websocketConnection) => websocketConnection.friendlyName == integrationsKeys[i]);
|
|
40
|
+
websocketConnections[secondTunnelIndex].end();
|
|
41
|
+
websocketConnections[secondTunnelIndex].destroy();
|
|
42
|
+
websocketConnections.splice(secondTunnelIndex, 1);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
logger_1.log.info({
|
|
46
|
+
id: clientOpts.config.connections[`${integrationsKeys[i]}`].id,
|
|
47
|
+
name: clientOpts.config.connections[`${integrationsKeys[i]}`]
|
|
48
|
+
.friendlyName,
|
|
49
|
+
}, `Connection (${clientOpts.config.connections[`${integrationsKeys[i]}`]
|
|
50
|
+
.friendlyName}) not in use by any orgs. Will check periodically and create connection when in use.`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
if (currentWebsocketConnectionIndex < 0) {
|
|
55
|
+
logger_1.log.info({ connectionName: integrationsKeys[i] }, 'Creating configured connection.');
|
|
56
|
+
await (0, pluginManager_1.runStartupPlugins)(clientOpts, integrationsKeys[i]);
|
|
57
|
+
await (0, socket_1.createWebSocketConnectionPairs)(websocketConnections, clientOpts, globalIdentifyingMetadata, integrationsKeys[i]);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
logger_1.log.debug({ connectionName: integrationsKeys[i] }, 'Connection already configured.');
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
if (process.env.NODE_ENV != 'test') {
|
|
66
|
+
(0, signals_1.addTimerToTerminalHandlers)(setInterval(watcher, clientOpts.config.connectionsManager.watcher.interval));
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
console.log('Disabling main watcher interval for testing');
|
|
70
|
+
}
|
|
71
|
+
await watcher();
|
|
72
|
+
};
|
|
73
|
+
exports.setMainWatcher = setMainWatcher;
|
|
74
|
+
//# sourceMappingURL=mainWatcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mainWatcher.js","sourceRoot":"","sources":["../../../../lib/client/connectionsManager/mainWatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.manageWebsocketConnections = void 0;
|
|
4
|
+
const logger_1 = require("../../logs/logger");
|
|
5
|
+
const remoteConfig_1 = require("../config/remoteConfig");
|
|
6
|
+
const config_1 = require("../../common/config/config");
|
|
7
|
+
const signals_1 = require("../../common/utils/signals");
|
|
8
|
+
const cleanup_1 = require("../utils/cleanup");
|
|
9
|
+
const validator_1 = require("./validator");
|
|
10
|
+
const fs_1 = require("fs");
|
|
11
|
+
const oauth_1 = require("../auth/oauth");
|
|
12
|
+
const configHelpers_1 = require("../config/configHelpers");
|
|
13
|
+
const processHooks_1 = require("../hooks/startup/processHooks");
|
|
14
|
+
const mainWatcher_1 = require("./mainWatcher");
|
|
15
|
+
const manageWebsocketConnections = async (clientOpts, globalIdentifyingMetadata) => {
|
|
16
|
+
try {
|
|
17
|
+
if (!process.env.SKIP_REMOTE_CONFIG) {
|
|
18
|
+
if (!(0, fs_1.existsSync)(`${(0, config_1.findProjectRoot)(__dirname)}/config.universal.json`)) {
|
|
19
|
+
process.env.NO_UNIVERSAL_FILE = 'true';
|
|
20
|
+
(0, fs_1.writeFileSync)(`${(0, config_1.findProjectRoot)(__dirname)}/config.universal.json`, JSON.stringify({
|
|
21
|
+
BROKER_CLIENT_CONFIGURATION: {
|
|
22
|
+
common: {
|
|
23
|
+
oauth: {
|
|
24
|
+
clientId: '${CLIENT_ID}',
|
|
25
|
+
clientSecret: '${CLIENT_SECRET}',
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
}));
|
|
30
|
+
await (0, configHelpers_1.reloadConfig)(clientOpts);
|
|
31
|
+
}
|
|
32
|
+
clientOpts.accessToken = await (0, oauth_1.fetchJwt)(clientOpts.config.API_BASE_URL, clientOpts.config.brokerClientConfiguration.common.oauth.clientId, clientOpts.config.brokerClientConfiguration.common.oauth.clientSecret);
|
|
33
|
+
await (0, remoteConfig_1.retrieveConnectionsForDeployment)(clientOpts, `${(0, config_1.findProjectRoot)(__dirname)}/config.universal.json`);
|
|
34
|
+
(0, validator_1.validateUniversalConnectionsRemoteConfig)(`${(0, config_1.findProjectRoot)(__dirname)}/config.universal.json`);
|
|
35
|
+
(0, signals_1.handleTerminationSignal)(cleanup_1.cleanUpUniversalFile);
|
|
36
|
+
}
|
|
37
|
+
await (0, configHelpers_1.reloadConfig)(clientOpts);
|
|
38
|
+
}
|
|
39
|
+
catch (err) {
|
|
40
|
+
logger_1.log.error({ err }, 'Error loading connections from remote');
|
|
41
|
+
throw err;
|
|
42
|
+
}
|
|
43
|
+
// Running preflight check now in universal broker, after configuration loading
|
|
44
|
+
globalIdentifyingMetadata.preflightChecks = (await (0, processHooks_1.processStartUpHooks)(clientOpts, globalIdentifyingMetadata.clientId)).preflightCheckResults;
|
|
45
|
+
// At that point, plugins startup methods have executred and connections objects were mutated if needed
|
|
46
|
+
const websocketConnections = [];
|
|
47
|
+
(0, mainWatcher_1.setMainWatcher)(clientOpts, websocketConnections, globalIdentifyingMetadata);
|
|
48
|
+
return websocketConnections;
|
|
49
|
+
};
|
|
50
|
+
exports.manageWebsocketConnections = manageWebsocketConnections;
|
|
51
|
+
//# sourceMappingURL=manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../lib/client/connectionsManager/manager.ts"],"names":[],"mappings":";;;AAEA,8CAAkD;AAClD,yDAA0E;AAC1E,uDAA6D;AAC7D,wDAAqE;AACrE,8CAAwD;AACxD,2CAAuE;AACvE,2BAA+C;AAC/C,yCAAyC;AACzC,2DAAuD;AACvD,gEAAoE;AACpE,+CAA+C;AAExC,MAAM,0BAA0B,GAAG,KAAK,EAC7C,UAA4B,EAC5B,yBAA8C,EACd,EAAE;IAClC,IAAI;QACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE;YACnC,IAAI,CAAC,IAAA,eAAU,EAAC,GAAG,IAAA,wBAAe,EAAC,SAAS,CAAC,wBAAwB,CAAC,EAAE;gBACtE,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAC;gBACvC,IAAA,kBAAa,EACX,GAAG,IAAA,wBAAe,EAAC,SAAS,CAAC,wBAAwB,EACrD,IAAI,CAAC,SAAS,CAAC;oBACb,2BAA2B,EAAE;wBAC3B,MAAM,EAAE;4BACN,KAAK,EAAE;gCACL,QAAQ,EAAE,cAAc;gCACxB,YAAY,EAAE,kBAAkB;6BACjC;yBACF;qBACF;iBACF,CAAC,CACH,CAAC;gBACF,MAAM,IAAA,4BAAY,EAAC,UAAU,CAAC,CAAC;aAChC;YAED,UAAU,CAAC,WAAW,GAAG,MAAM,IAAA,gBAAQ,EACrC,UAAU,CAAC,MAAM,CAAC,YAAY,EAC9B,UAAU,CAAC,MAAM,CAAC,yBAAyB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EACjE,UAAU,CAAC,MAAM,CAAC,yBAAyB,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CACtE,CAAC;YAEF,MAAM,IAAA,+CAAgC,EACpC,UAAU,EACV,GAAG,IAAA,wBAAe,EAAC,SAAS,CAAC,wBAAwB,CACtD,CAAC;YAEF,IAAA,oDAAwC,EACtC,GAAG,IAAA,wBAAe,EAAC,SAAS,CAAC,wBAAwB,CACtD,CAAC;YAEF,IAAA,iCAAuB,EAAC,8BAAoB,CAAC,CAAC;SAC/C;QAED,MAAM,IAAA,4BAAY,EAAC,UAAU,CAAC,CAAC;KAChC;IAAC,OAAO,GAAG,EAAE;QACZ,YAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,uCAAuC,CAAC,CAAC;QAC/D,MAAM,GAAG,CAAC;KACX;IAED,+EAA+E;IAC/E,yBAAyB,CAAC,eAAe,GAAG,CAC1C,MAAM,IAAA,kCAAmB,EAAC,UAAU,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAC1E,CAAC,qBAAqB,CAAC;IAExB,uGAAuG;IAEvG,MAAM,oBAAoB,GAA0B,EAAE,CAAC;IAEvD,IAAA,4BAAc,EAAC,UAAU,EAAE,oBAAoB,EAAE,yBAAyB,CAAC,CAAC;IAC5E,OAAO,oBAAoB,CAAC;AAC9B,CAAC,CAAC;AA3DW,QAAA,0BAA0B,8BA2DrC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.retrieveAndLoadRemoteConfigSync = void 0;
|
|
4
|
+
const config_1 = require("../../common/config/config");
|
|
5
|
+
const configHelpers_1 = require("../config/configHelpers");
|
|
6
|
+
const remoteConfig_1 = require("../config/remoteConfig");
|
|
7
|
+
const validator_1 = require("./validator");
|
|
8
|
+
const retrieveAndLoadRemoteConfigSync = async (clientOpts) => {
|
|
9
|
+
await (0, remoteConfig_1.retrieveConnectionsForDeployment)(clientOpts, `${(0, config_1.findProjectRoot)(__dirname)}/config.universal.json`);
|
|
10
|
+
(0, validator_1.validateUniversalConnectionsRemoteConfig)(`${(0, config_1.findProjectRoot)(__dirname)}/config.universal.json`);
|
|
11
|
+
await (0, configHelpers_1.reloadConfig)(clientOpts);
|
|
12
|
+
};
|
|
13
|
+
exports.retrieveAndLoadRemoteConfigSync = retrieveAndLoadRemoteConfigSync;
|
|
14
|
+
//# sourceMappingURL=remoteConnectionSync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remoteConnectionSync.js","sourceRoot":"","sources":["../../../../lib/client/connectionsManager/remoteConnectionSync.ts"],"names":[],"mappings":";;;AAAA,uDAA6D;AAE7D,2DAAuD;AACvD,yDAA0E;AAC1E,2CAAuE;AAEhE,MAAM,+BAA+B,GAAG,KAAK,EAClD,UAA4B,EACb,EAAE;IACjB,MAAM,IAAA,+CAAgC,EACpC,UAAU,EACV,GAAG,IAAA,wBAAe,EAAC,SAAS,CAAC,wBAAwB,CACtD,CAAC;IACF,IAAA,oDAAwC,EACtC,GAAG,IAAA,wBAAe,EAAC,SAAS,CAAC,wBAAwB,CACtD,CAAC;IACF,MAAM,IAAA,4BAAY,EAAC,UAAU,CAAC,CAAC;AACjC,CAAC,CAAC;AAXW,QAAA,+BAA+B,mCAW1C"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateUniversalConnectionsRemoteConfig = void 0;
|
|
4
|
+
const node_fs_1 = require("node:fs");
|
|
5
|
+
const logger_1 = require("../../logs/logger");
|
|
6
|
+
const validateUniversalConnectionsRemoteConfig = (universalCfgFilePath) => {
|
|
7
|
+
var _a;
|
|
8
|
+
const universalConfigFileBuffer = (0, node_fs_1.readFileSync)(universalCfgFilePath);
|
|
9
|
+
const universalConfigFile = JSON.parse((_a = universalConfigFileBuffer.toString()) !== null && _a !== void 0 ? _a : { CONNECTIONS: {} });
|
|
10
|
+
const connections = universalConfigFile['CONNECTIONS'];
|
|
11
|
+
const connectionsKeys = Object.keys(connections);
|
|
12
|
+
for (let i = 0; i < connectionsKeys.length; i++) {
|
|
13
|
+
const values = Object.values(connections[`${connectionsKeys[i]}`]);
|
|
14
|
+
const placeHolderValues = values.length > 0 ? values.filter((x) => x && x.startsWith('${')) : [];
|
|
15
|
+
for (let j = 0; j < placeHolderValues.length; j++) {
|
|
16
|
+
const envVarName = placeHolderValues[j]
|
|
17
|
+
.replace('${', '')
|
|
18
|
+
.replace('}', '');
|
|
19
|
+
if (process.env[envVarName] &&
|
|
20
|
+
process.env[envVarName] != 'placeholderValue') {
|
|
21
|
+
break;
|
|
22
|
+
}
|
|
23
|
+
process.env[envVarName] = 'placeholderValue';
|
|
24
|
+
connections[`${connectionsKeys[i]}`].isDisabled = true;
|
|
25
|
+
logger_1.log.error({ connection: connectionsKeys[i] }, `Connection is missing environment variable value ${envVarName}. Connection is disabled till value is provided. Restart broker once added.`);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
universalConfigFile['CONNECTIONS'] = connections;
|
|
29
|
+
(0, node_fs_1.writeFileSync)(universalCfgFilePath, JSON.stringify(universalConfigFile));
|
|
30
|
+
};
|
|
31
|
+
exports.validateUniversalConnectionsRemoteConfig = validateUniversalConnectionsRemoteConfig;
|
|
32
|
+
//# sourceMappingURL=validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../../lib/client/connectionsManager/validator.ts"],"names":[],"mappings":";;;AAAA,qCAAsD;AACtD,8CAAkD;AAC3C,MAAM,wCAAwC,GAAG,CACtD,oBAA4B,EAC5B,EAAE;;IACF,MAAM,yBAAyB,GAAG,IAAA,sBAAY,EAAC,oBAAoB,CAAC,CAAC;IACrE,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CACpC,MAAA,yBAAyB,CAAC,QAAQ,EAAE,mCAAI,EAAE,WAAW,EAAE,EAAE,EAAE,CAC5D,CAAC;IAEF,MAAM,WAAW,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAC1B,WAAW,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CACpB,CAAC;QACnB,MAAM,iBAAiB,GACrB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjD,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC;iBACpC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACpB,IACE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,kBAAkB,EAC7C;gBACA,MAAM;aACP;YACD,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,kBAAkB,CAAC;YAC7C,WAAW,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;YACvD,YAAM,CAAC,KAAK,CACV,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAClC,oDAAoD,UAAU,6EAA6E,CAC5I,CAAC;SACH;KACF;IAED,mBAAmB,CAAC,aAAa,CAAC,GAAG,WAAW,CAAC;IACjD,IAAA,uBAAa,EAAC,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC3E,CAAC,CAAC;AArCW,QAAA,wCAAwC,4CAqCnD"}
|
|
@@ -6,7 +6,6 @@ const logger_1 = require("../../../logs/logger");
|
|
|
6
6
|
const checks_1 = require("../../checks");
|
|
7
7
|
const scm_1 = require("../../scm");
|
|
8
8
|
const configHelpers_1 = require("../../config/configHelpers");
|
|
9
|
-
const pluginManager_1 = require("../../brokerClientPlugins/pluginManager");
|
|
10
9
|
const validateMinimalConfig = async (clientOpts) => {
|
|
11
10
|
if (!clientOpts.config.brokerToken &&
|
|
12
11
|
!clientOpts.config.universalBrokerEnabled) {
|
|
@@ -25,6 +24,14 @@ const validateMinimalConfig = async (clientOpts) => {
|
|
|
25
24
|
error['code'] = 'MISSING_BROKER_SERVER_URL';
|
|
26
25
|
throw error;
|
|
27
26
|
}
|
|
27
|
+
if (clientOpts.config.universalBrokerEnabled &&
|
|
28
|
+
!clientOpts.config.SKIP_REMOTE_CONFIG &&
|
|
29
|
+
(!clientOpts.config.clientId || !clientOpts.config.clientSecret)) {
|
|
30
|
+
logger_1.log.error({}, '[MISSING_CREDENTIALS] ClientId and ClientSecret are required for Universal Broker usage.');
|
|
31
|
+
const error = new ReferenceError('ClientId + ClientSecret are required for Universal Broker usage.');
|
|
32
|
+
error['code'] = 'MISSING_CREDENTIALS';
|
|
33
|
+
throw error;
|
|
34
|
+
}
|
|
28
35
|
};
|
|
29
36
|
exports.validateMinimalConfig = validateMinimalConfig;
|
|
30
37
|
const processStartUpHooks = async (clientOpts, brokerClientId) => {
|
|
@@ -48,20 +55,7 @@ const processStartUpHooks = async (clientOpts, brokerClientId) => {
|
|
|
48
55
|
}
|
|
49
56
|
let serverId;
|
|
50
57
|
if ((0, configHelpers_1.highAvailabilityModeEnabled)(clientOpts.config)) {
|
|
51
|
-
if (clientOpts.config.universalBrokerEnabled) {
|
|
52
|
-
for (const key in clientOpts.config.connections) {
|
|
53
|
-
serverId = await (0, dispatcher_1.getServerId)(clientOpts.config, clientOpts.config.connections[key].identifier, brokerClientId);
|
|
54
|
-
if (serverId === null) {
|
|
55
|
-
logger_1.log.warn({}, 'could not receive server id from Broker Dispatcher');
|
|
56
|
-
serverId = '';
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
logger_1.log.info({ serverId }, 'received server id');
|
|
60
|
-
clientOpts.config.connections[key].serverId = serverId;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
58
|
+
if (!clientOpts.config.universalBrokerEnabled) {
|
|
65
59
|
serverId = await (0, dispatcher_1.getServerId)(clientOpts.config, clientOpts.config.brokerToken, brokerClientId);
|
|
66
60
|
if (serverId === null) {
|
|
67
61
|
logger_1.log.warn({}, 'could not receive server id from Broker Dispatcher');
|
|
@@ -93,9 +87,6 @@ const processStartUpHooks = async (clientOpts, brokerClientId) => {
|
|
|
93
87
|
if (clientOpts.config.INSECURE_DOWNSTREAM) {
|
|
94
88
|
logger_1.log.warn({}, 'Caution! Running in insecure downstream mode, making downstream calls over http, data is not encrypted');
|
|
95
89
|
}
|
|
96
|
-
if (clientOpts.config.universalBrokerEnabled) {
|
|
97
|
-
await (0, pluginManager_1.runStartupPlugins)(clientOpts);
|
|
98
|
-
}
|
|
99
90
|
return {
|
|
100
91
|
preflightCheckResults: preflightCheckResults.length
|
|
101
92
|
? preflightCheckResults
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processHooks.js","sourceRoot":"","sources":["../../../../../lib/client/hooks/startup/processHooks.ts"],"names":[],"mappings":";;;AAAA,iDAA+C;AAC/C,iDAAqD;AACrD,yCAA8E;AAC9E,mCAA2E;AAI3E,8DAAyE;
|
|
1
|
+
{"version":3,"file":"processHooks.js","sourceRoot":"","sources":["../../../../../lib/client/hooks/startup/processHooks.ts"],"names":[],"mappings":"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"}
|