@alwaysai/device-agent 1.3.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/lib/application-control/environment-variables.d.ts.map +1 -1
  2. package/lib/application-control/environment-variables.js +9 -4
  3. package/lib/application-control/environment-variables.js.map +1 -1
  4. package/lib/application-control/environment-variables.test.js +1 -1
  5. package/lib/application-control/environment-variables.test.js.map +1 -1
  6. package/lib/application-control/install.d.ts.map +1 -1
  7. package/lib/application-control/install.js +6 -2
  8. package/lib/application-control/install.js.map +1 -1
  9. package/lib/application-control/models.d.ts.map +1 -1
  10. package/lib/application-control/models.js +4 -2
  11. package/lib/application-control/models.js.map +1 -1
  12. package/lib/application-control/status.js +4 -5
  13. package/lib/application-control/status.js.map +1 -1
  14. package/lib/cloud-connection/device-agent-cloud-connection.d.ts +3 -3
  15. package/lib/cloud-connection/device-agent-cloud-connection.d.ts.map +1 -1
  16. package/lib/cloud-connection/device-agent-cloud-connection.js +114 -99
  17. package/lib/cloud-connection/device-agent-cloud-connection.js.map +1 -1
  18. package/lib/cloud-connection/live-updates-handler.d.ts +1 -0
  19. package/lib/cloud-connection/live-updates-handler.d.ts.map +1 -1
  20. package/lib/cloud-connection/live-updates-handler.js +22 -4
  21. package/lib/cloud-connection/live-updates-handler.js.map +1 -1
  22. package/lib/cloud-connection/messages.d.ts.map +1 -1
  23. package/lib/cloud-connection/messages.js +3 -4
  24. package/lib/cloud-connection/messages.js.map +1 -1
  25. package/lib/cloud-connection/shadow-handler.d.ts +14 -21
  26. package/lib/cloud-connection/shadow-handler.d.ts.map +1 -1
  27. package/lib/cloud-connection/shadow-handler.js +162 -108
  28. package/lib/cloud-connection/shadow-handler.js.map +1 -1
  29. package/lib/cloud-connection/shadow-handler.test.js +100 -83
  30. package/lib/cloud-connection/shadow-handler.test.js.map +1 -1
  31. package/lib/device-control/device-control.d.ts +7 -14
  32. package/lib/device-control/device-control.d.ts.map +1 -1
  33. package/lib/device-control/device-control.js +37 -14
  34. package/lib/device-control/device-control.js.map +1 -1
  35. package/lib/secure-tunneling/secure-tunneling.d.ts +105 -0
  36. package/lib/secure-tunneling/secure-tunneling.d.ts.map +1 -0
  37. package/lib/secure-tunneling/secure-tunneling.js +435 -0
  38. package/lib/secure-tunneling/secure-tunneling.js.map +1 -0
  39. package/lib/secure-tunneling/secure-tunneling.test.d.ts +2 -0
  40. package/lib/secure-tunneling/secure-tunneling.test.d.ts.map +1 -0
  41. package/lib/secure-tunneling/secure-tunneling.test.js +1070 -0
  42. package/lib/secure-tunneling/secure-tunneling.test.js.map +1 -0
  43. package/lib/secure-tunneling/spawner-detached.d.ts +6 -0
  44. package/lib/secure-tunneling/spawner-detached.d.ts.map +1 -0
  45. package/lib/secure-tunneling/spawner-detached.js +107 -0
  46. package/lib/secure-tunneling/spawner-detached.js.map +1 -0
  47. package/lib/subcommands/app/analytics.d.ts.map +1 -1
  48. package/lib/subcommands/app/analytics.js +9 -13
  49. package/lib/subcommands/app/analytics.js.map +1 -1
  50. package/lib/subcommands/app/env-vars.d.ts.map +1 -1
  51. package/lib/subcommands/app/env-vars.js +11 -16
  52. package/lib/subcommands/app/env-vars.js.map +1 -1
  53. package/lib/subcommands/app/models.d.ts.map +1 -1
  54. package/lib/subcommands/app/models.js +12 -16
  55. package/lib/subcommands/app/models.js.map +1 -1
  56. package/lib/subcommands/device/clean.d.ts.map +1 -1
  57. package/lib/subcommands/device/clean.js +3 -1
  58. package/lib/subcommands/device/clean.js.map +1 -1
  59. package/lib/subcommands/device/device.d.ts.map +1 -1
  60. package/lib/subcommands/device/device.js +14 -6
  61. package/lib/subcommands/device/device.js.map +1 -1
  62. package/lib/util/cloud-mode-ready.d.ts +1 -0
  63. package/lib/util/cloud-mode-ready.d.ts.map +1 -1
  64. package/lib/util/cloud-mode-ready.js +36 -1
  65. package/lib/util/cloud-mode-ready.js.map +1 -1
  66. package/package.json +2 -2
  67. package/src/application-control/environment-variables.test.ts +1 -1
  68. package/src/application-control/environment-variables.ts +9 -6
  69. package/src/application-control/install.ts +7 -3
  70. package/src/application-control/models.ts +11 -6
  71. package/src/application-control/status.ts +8 -8
  72. package/src/cloud-connection/device-agent-cloud-connection.ts +161 -131
  73. package/src/cloud-connection/live-updates-handler.ts +34 -6
  74. package/src/cloud-connection/messages.ts +3 -4
  75. package/src/cloud-connection/shadow-handler.test.ts +101 -84
  76. package/src/cloud-connection/shadow-handler.ts +275 -133
  77. package/src/device-control/device-control.ts +46 -19
  78. package/src/secure-tunneling/secure-tunneling.test.ts +1239 -0
  79. package/src/secure-tunneling/secure-tunneling.ts +606 -0
  80. package/src/secure-tunneling/spawner-detached.ts +123 -0
  81. package/src/subcommands/app/analytics.ts +16 -13
  82. package/src/subcommands/app/env-vars.ts +18 -16
  83. package/src/subcommands/app/models.ts +20 -16
  84. package/src/subcommands/device/clean.ts +4 -1
  85. package/src/subcommands/device/device.ts +26 -10
  86. package/src/util/cloud-mode-ready.ts +36 -0
  87. package/lib/secure-tunneling/index.d.ts +0 -5
  88. package/lib/secure-tunneling/index.d.ts.map +0 -1
  89. package/lib/secure-tunneling/index.js +0 -64
  90. package/lib/secure-tunneling/index.js.map +0 -1
  91. package/src/secure-tunneling/index.ts +0 -74
@@ -2,29 +2,29 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.runDeviceAgentCloudInterface = exports.DeviceAgentCloudConnection = void 0;
4
4
  // eslint-disable-next-line
5
- const awsIot = require("aws-iot-device-sdk");
6
- const urls_1 = require("../infrastructure/urls");
5
+ const awsIot = require('aws-iot-device-sdk');
6
+ const device_agent_schemas_1 = require("@alwaysai/device-agent-schemas");
7
7
  const fs_1 = require("fs");
8
+ const application_control_1 = require("../application-control");
9
+ const backup_1 = require("../application-control/backup");
10
+ const device_control_1 = require("../device-control/device-control");
11
+ const environment_1 = require("../environment");
12
+ const agent_config_1 = require("../infrastructure/agent-config");
13
+ const urls_1 = require("../infrastructure/urls");
14
+ const secure_tunneling_1 = require("../secure-tunneling/secure-tunneling");
15
+ const cloud_mode_ready_1 = require("../util/cloud-mode-ready");
8
16
  const directories_1 = require("../util/directories");
9
- const device_agent_schemas_1 = require("@alwaysai/device-agent-schemas");
10
17
  const get_device_id_1 = require("../util/get-device-id");
11
18
  const logger_1 = require("../util/logger");
12
- const cloud_mode_ready_1 = require("../util/cloud-mode-ready");
13
- const agent_config_1 = require("../infrastructure/agent-config");
14
- const application_control_1 = require("../application-control");
15
- const shadow_handler_1 = require("./shadow-handler");
16
- const index_1 = require("../secure-tunneling/index");
17
- const publisher_1 = require("./publisher");
19
+ const sleep_1 = require("../util/sleep");
18
20
  const bootstrap_provision_1 = require("./bootstrap-provision");
21
+ const live_updates_handler_1 = require("./live-updates-handler");
19
22
  const passthrough_handler_1 = require("./passthrough-handler");
20
- const environment_1 = require("../environment");
21
- const sleep_1 = require("../util/sleep");
22
- const backup_1 = require("../application-control/backup");
23
+ const publisher_1 = require("./publisher");
24
+ const shadow_handler_1 = require("./shadow-handler");
23
25
  const transaction_manager_1 = require("./transaction-manager");
24
- const device_control_1 = require("../device-control/device-control");
25
26
  const child_process_1 = require("child_process");
26
27
  const util_1 = require("util");
27
- const live_updates_handler_1 = require("./live-updates-handler");
28
28
  const exec_promise = (0, util_1.promisify)(child_process_1.exec);
29
29
  class DeviceAgentCloudConnection {
30
30
  /*=================================================================
@@ -37,6 +37,7 @@ class DeviceAgentCloudConnection {
37
37
  this.port = 8883;
38
38
  this.toDeviceTopic = (0, device_agent_schemas_1.getToDeviceTopic)(this.clientId);
39
39
  this.secureTunnelNotifyTopic = `$aws/things/${this.clientId}/tunnels/notify`;
40
+ this.secureTunnelHandler = secure_tunneling_1.SecureTunnelHandlerSingleton.getInstance();
40
41
  // FIXME: Add support for multiple simultaneous project updates
41
42
  this.appCfgUpdateQueue = [];
42
43
  this.handleAppStateControl = async (payload) => {
@@ -84,7 +85,10 @@ class DeviceAgentCloudConnection {
84
85
  appInstallPayload,
85
86
  modelsInstallPayload
86
87
  };
87
- await this.atomicApplicationUpdate(application_control_1.installApp, [{ projectId, appReleaseHash, signedUrlsPayload }], projectId);
88
+ await this.atomicApplicationUpdate(async () => {
89
+ this.shadowHandler.clearProjectShadow(projectId);
90
+ await (0, application_control_1.installApp)({ projectId, appReleaseHash, signedUrlsPayload });
91
+ }, projectId);
88
92
  return true;
89
93
  };
90
94
  this.handleModelsInstallCloudResponsePayload = async (payload) => {
@@ -95,23 +99,23 @@ class DeviceAgentCloudConnection {
95
99
  const { appCfgUpdate, envVarUpdate } = update;
96
100
  const projectId = payload.modelsInstallResponse.projectId;
97
101
  if (appCfgUpdate) {
98
- await this.atomicApplicationUpdate(application_control_1.updateModelsWithPresignedUrls, [
99
- {
100
- projectId,
101
- modelInstallPayloads: payload.modelsInstallResponse.newModels,
102
- newAppCfg: appCfgUpdate.newAppCfg
103
- }
104
- ], projectId);
102
+ await this.atomicApplicationUpdate(async () => await (0, application_control_1.updateModelsWithPresignedUrls)({
103
+ projectId,
104
+ modelInstallPayloads: payload.modelsInstallResponse.newModels,
105
+ newAppCfg: appCfgUpdate.newAppCfg
106
+ }), projectId);
105
107
  }
106
108
  if (envVarUpdate) {
107
- await this.atomicApplicationUpdate(application_control_1.setEnv, [{ projectId, envVars: envVarUpdate.envVars }], projectId);
109
+ await this.atomicApplicationUpdate(async () => await this.shadowHandler.updateProjectEnvVars({
110
+ projectId,
111
+ envVars: envVarUpdate.envVars
112
+ }), projectId, true);
108
113
  }
109
114
  return true;
110
115
  };
111
- this.handleAppConfigUpdate = async (update, txId) => {
116
+ this.handleProjectShadowConfigUpdate = async (update, txId) => {
112
117
  const { projectId, appCfgUpdate, envVarUpdate } = update;
113
- if (appCfgUpdate &&
114
- appCfgUpdate.updatedModels &&
118
+ if ((appCfgUpdate === null || appCfgUpdate === void 0 ? void 0 : appCfgUpdate.updatedModels) &&
115
119
  Object.keys(appCfgUpdate.updatedModels).length) {
116
120
  // When there are model updates request signed URLs and wait to apply config changes
117
121
  const { updatedModels } = appCfgUpdate;
@@ -128,15 +132,16 @@ class DeviceAgentCloudConnection {
128
132
  return false;
129
133
  }
130
134
  if (appCfgUpdate) {
131
- await this.atomicApplicationUpdate(application_control_1.updateAppCfg, [
132
- {
133
- projectId,
134
- newAppCfg: appCfgUpdate.newAppCfg
135
- }
136
- ], projectId);
135
+ await this.atomicApplicationUpdate(async () => await (0, application_control_1.updateAppCfg)({
136
+ projectId,
137
+ newAppCfg: appCfgUpdate.newAppCfg
138
+ }), projectId);
137
139
  }
138
140
  if (envVarUpdate) {
139
- await this.atomicApplicationUpdate(application_control_1.setEnv, [{ projectId, envVars: envVarUpdate.envVars }], projectId);
141
+ await this.atomicApplicationUpdate(async () => await this.shadowHandler.updateProjectEnvVars({
142
+ projectId,
143
+ envVars: envVarUpdate.envVars
144
+ }), projectId, true);
140
145
  }
141
146
  return true;
142
147
  };
@@ -155,11 +160,11 @@ class DeviceAgentCloudConnection {
155
160
  this.txnMgr = new transaction_manager_1.TransactionManager(this.publisher, this.liveUpdatesHandler);
156
161
  this.subscribe(this.toDeviceTopic);
157
162
  this.subscribe(this.secureTunnelNotifyTopic);
158
- this.subscribe(this.shadowHandler.shadowTopics.projects.getAccepted);
159
- this.subscribe(this.shadowHandler.shadowTopics.projects.getRejected);
160
- this.subscribe(this.shadowHandler.shadowTopics.projects.updateDelta);
161
- this.subscribe(this.shadowHandler.shadowTopics.projects.updateAccepted);
162
- this.subscribe(this.shadowHandler.shadowTopics.projects.updateRejected);
163
+ for (const topic of this.shadowHandler.projectShadowTopics) {
164
+ this.subscribe(topic);
165
+ }
166
+ this.subscribe(this.shadowHandler.shadowTopics.secureTunnel.updateDelta);
167
+ this.subscribe(this.shadowHandler.shadowTopics.secureTunnel.deleteAccepted);
163
168
  }
164
169
  async handleDeviceAction(payload) {
165
170
  const { system_restart } = device_agent_schemas_1.keyMirrors.deviceAction;
@@ -183,7 +188,7 @@ class DeviceAgentCloudConnection {
183
188
  async atomicApplicationUninstall(projectId) {
184
189
  try {
185
190
  await (0, application_control_1.uninstallApp)({ projectId });
186
- this.shadowHandler.clearAppConfig(projectId);
191
+ this.shadowHandler.clearProjectShadow(projectId);
187
192
  }
188
193
  catch (e) {
189
194
  logger_1.logger.error(`Failed to uninstall ${projectId}: ${e.message}`);
@@ -191,7 +196,7 @@ class DeviceAgentCloudConnection {
191
196
  }
192
197
  }
193
198
  // eslint-disable-next-line
194
- async atomicApplicationUpdate(func, args, projectId) {
199
+ async atomicApplicationUpdate(func, projectId, skipUpdateShadow) {
195
200
  // First try to create a backup, so that there is one available if something goes wrong in the next try:catch.
196
201
  if (await (0, agent_config_1.AgentConfigFile)().isAppPresent({ projectId })) {
197
202
  try {
@@ -202,9 +207,9 @@ class DeviceAgentCloudConnection {
202
207
  }
203
208
  }
204
209
  try {
205
- const out = await func(...args);
206
- this.shadowHandler.clearAppConfig(projectId);
207
- await this.shadowHandler.updateProjectShadow(projectId);
210
+ const out = await func();
211
+ if (!skipUpdateShadow)
212
+ await this.shadowHandler.updateProjectShadow(projectId);
208
213
  return out;
209
214
  }
210
215
  catch (errorAppUpdate) {
@@ -217,10 +222,10 @@ class DeviceAgentCloudConnection {
217
222
  catch (errorRollbackApp) {
218
223
  // and if that fails, uninstall the app as a last resort.
219
224
  try {
220
- await (0, application_control_1.uninstallApp)({ projectId });
225
+ await this.atomicApplicationUninstall(projectId);
221
226
  }
222
- finally {
223
- this.shadowHandler.clearAppConfig(projectId);
227
+ catch (_a) {
228
+ // atomicApplicationUninstall handles failing, so there's nothing to handle here.
224
229
  }
225
230
  logger_1.logger.error(`Application update failed, rolled back to previous version: ${errorAppUpdate}`);
226
231
  throw new Error(`Application update and rollback failed, uninstalled the application: ${errorAppUpdate}`);
@@ -228,15 +233,38 @@ class DeviceAgentCloudConnection {
228
233
  throw new Error(`Application update failed, rolled the application back: ${errorAppUpdate}`);
229
234
  }
230
235
  }
236
+ async handleProjectShadowMessage(topic, message) {
237
+ const shadowUpdates = await this.shadowHandler.handleProjectShadow({
238
+ topic,
239
+ payload: message,
240
+ clientToken: message.clientToken
241
+ });
242
+ if (shadowUpdates.length) {
243
+ const shadowUpdatePromises = [];
244
+ for (const shadowUpdate of shadowUpdates) {
245
+ const projectId = shadowUpdate.projectId;
246
+ const txId = shadowUpdate.txId;
247
+ shadowUpdatePromises.push(this.txnMgr
248
+ .runTransactionStep({
249
+ func: () => this.handleProjectShadowConfigUpdate(shadowUpdate, txId),
250
+ projectId,
251
+ txId,
252
+ start: true,
253
+ stepName: topic
254
+ })
255
+ .catch((e) => {
256
+ logger_1.logger.error(`There was an issue updating project shadow config: ${JSON.stringify(e)}`);
257
+ }));
258
+ }
259
+ await Promise.all(shadowUpdatePromises);
260
+ }
261
+ }
231
262
  getClientId() {
232
263
  return this.clientId;
233
264
  }
234
265
  getToDeviceTopic() {
235
266
  return this.toDeviceTopic;
236
267
  }
237
- getShadowTopics() {
238
- return this.shadowHandler.shadowTopics;
239
- }
240
268
  isCmdInProgress(projectId) {
241
269
  return this.txnMgr.isOngoingTransactionForProjectID(projectId);
242
270
  }
@@ -251,7 +279,7 @@ class DeviceAgentCloudConnection {
251
279
  return;
252
280
  }
253
281
  const txId = message.txId;
254
- const { app_state_control, app_version_control, live_state_updates, app_install_response, models_install_response, status_response } = device_agent_schemas_1.keyMirrors.toDeviceAgentMessageType;
282
+ const { app_state_control, app_version_control, live_state_updates, app_install_response, models_install_response, status_response, device_action } = device_agent_schemas_1.keyMirrors.toDeviceAgentMessageType;
255
283
  switch (message.messageType) {
256
284
  case app_state_control: {
257
285
  // txId sent from cloud, just need to continue it
@@ -341,14 +369,19 @@ class DeviceAgentCloudConnection {
341
369
  }
342
370
  break;
343
371
  }
344
- case device_agent_schemas_1.keyMirrors.toDeviceAgentMessageType.device_action: {
372
+ case device_action: {
345
373
  try {
374
+ const statusResponsePayload = {
375
+ status: device_agent_schemas_1.keyMirrors.statusResponse.in_progress
376
+ };
377
+ const statusResponseMessage = (0, device_agent_schemas_1.buildToClientStatusResponseMessage)(this.clientId, statusResponsePayload, txId);
378
+ this.publisher.publishToClient(statusResponseMessage);
379
+ await this.handleDeviceAction(message.payload);
346
380
  const successStatusResponsePayload = {
347
381
  status: device_agent_schemas_1.keyMirrors.statusResponse.success
348
382
  };
349
383
  const successStatusResponseMessage = (0, device_agent_schemas_1.buildToClientStatusResponseMessage)(this.clientId, successStatusResponsePayload, txId);
350
384
  this.publisher.publishToClient(successStatusResponseMessage);
351
- await this.handleDeviceAction(message.payload);
352
385
  }
353
386
  catch (e) {
354
387
  logger_1.logger.error(`There was a problem performing device action '${message.payload.action}': ${e.message}`);
@@ -367,50 +400,32 @@ class DeviceAgentCloudConnection {
367
400
  }
368
401
  async handleMessage(topic, message) {
369
402
  logger_1.logger.debug(`Received message: ${JSON.stringify({ topic, message }, null, 2)}`);
370
- switch (topic) {
371
- case this.shadowHandler.shadowTopics.projects.getAccepted:
372
- case this.shadowHandler.shadowTopics.projects.updateAccepted: {
373
- const shadowUpdates = await this.shadowHandler.handleShadowTopic({
374
- topic,
375
- payload: message.state,
376
- clientToken: message.clientToken
377
- });
378
- if (shadowUpdates.length) {
379
- for (const shadowUpdate of shadowUpdates) {
380
- const projectId = shadowUpdate.projectId;
381
- const txId = shadowUpdate.txId;
382
- try {
383
- await this.txnMgr.runTransactionStep({
384
- func: () => this.handleAppConfigUpdate(shadowUpdate, txId),
385
- projectId,
386
- txId,
387
- start: true,
388
- stepName: topic
389
- });
390
- }
391
- catch (e) {
392
- logger_1.logger.error(`Error handling shadow message: ${e.message}`);
393
- }
394
- }
395
- }
396
- break;
397
- }
398
- case this.shadowHandler.shadowTopics.projects.getRejected:
399
- case this.shadowHandler.shadowTopics.projects.updateDelta:
400
- case this.shadowHandler.shadowTopics.projects.updateRejected:
401
- // Not handling these for now
402
- break;
403
- case this.toDeviceTopic:
404
- await this.handleDeviceAgentMessage({
405
- topic,
406
- message
407
- });
408
- break;
409
- case this.secureTunnelNotifyTopic:
410
- await (0, index_1.secureTunnelNotifyHandler)(message);
411
- break;
412
- default:
413
- logger_1.logger.error(`Unexpected topic, ignoring! ${topic}`);
403
+ // ProjectShadow messages
404
+ if (this.shadowHandler.projectShadowTopics.includes(topic)) {
405
+ await this.handleProjectShadowMessage(topic, message);
406
+ }
407
+ else if (topic === this.toDeviceTopic) {
408
+ await this.handleDeviceAgentMessage({
409
+ topic,
410
+ message
411
+ });
412
+ // SecureTunnelNotify messages
413
+ }
414
+ else if (topic === this.secureTunnelNotifyTopic) {
415
+ await this.secureTunnelHandler.secureTunnelNotifyHandler(message);
416
+ // SecureTunnel messages
417
+ }
418
+ else if (topic === this.shadowHandler.shadowTopics.secureTunnel.updateDelta) {
419
+ logger_1.logger.info(`Received secure tunnel update: ${message}`);
420
+ const reported = await this.secureTunnelHandler.syncShadowToDeviceState(message);
421
+ this.publisher.publish(this.shadowHandler.shadowTopics.secureTunnel.update, JSON.stringify({ state: { reported } }));
422
+ }
423
+ else if (topic === this.shadowHandler.shadowTopics.secureTunnel.deleteAccepted) {
424
+ logger_1.logger.info(`Received secure tunnel deleteAccepted: ${message}`);
425
+ await this.secureTunnelHandler.destroy();
426
+ }
427
+ else {
428
+ logger_1.logger.error(`Unexpected topic, ignoring! ${topic}`);
414
429
  }
415
430
  }
416
431
  async setupHandlers() {
@@ -494,9 +509,9 @@ class DeviceAgentCloudConnection {
494
509
  }
495
510
  }
496
511
  async stop() {
497
- // FIXME: This method is currently only used by the CLI, and shadow messages
498
- // can be lost since we aren't waiting for responses so sleep for a short
499
- // time to receive them
512
+ // This method is currently only used by the CLI, and shadow messages can be
513
+ // lost since we aren't waiting for responses so sleep for a short time to
514
+ // receive them
500
515
  await (0, sleep_1.default)(1000);
501
516
  this.device.end();
502
517
  }
@@ -1 +1 @@
1
- {"version":3,"file":"device-agent-cloud-connection.js","sourceRoot":"","sources":["../../src/cloud-connection/device-agent-cloud-connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device-agent-cloud-connection.js","sourceRoot":"","sources":["../../src/cloud-connection/device-agent-cloud-connection.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export declare class LiveUpdatesHandler {
8
8
  private liveUpdatesSleepIntervals;
9
9
  private appLogStreams;
10
10
  private transactionStatuses;
11
+ private getAppLogsWithRetry;
11
12
  private startAppLogStream;
12
13
  private continuePublishing;
13
14
  private getLiveUpdatesInterval;
@@ -1 +1 @@
1
- {"version":3,"file":"live-updates-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/live-updates-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,6BAA6B,EAO9B,MAAM,gCAAgC,CAAC;AAIxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AASxC,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,kBAAkB,CAAgC;IAC1D,OAAO,CAAC,gBAAgB,CAKtB;IACF,OAAO,CAAC,yBAAyB,CAK/B;IAEF,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,mBAAmB,CAAqB;YAElC,iBAAiB;IAoC/B,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,yBAAyB;YAWnB,0BAA0B;gBAyB5B,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM;IAQ3C,yBAAyB;IAIzB,sBAAsB;IAItB,qBAAqB;IAIf,uBAAuB,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAuB/C,wBAAwB,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAShD,aAAa,CACxB,OAAO,EAAE,6BAA6B,EACtC,IAAI,EAAE,MAAM;CA+Cf"}
1
+ {"version":3,"file":"live-updates-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/live-updates-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,6BAA6B,EAQ9B,MAAM,gCAAgC,CAAC;AAIxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AASxC,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,kBAAkB,CAAgC;IAC1D,OAAO,CAAC,gBAAgB,CAKtB;IACF,OAAO,CAAC,yBAAyB,CAK/B;IAEF,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,mBAAmB,CAAqB;YAElC,mBAAmB;YAqBnB,iBAAiB;IA0C/B,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,yBAAyB;YAWnB,0BAA0B;gBAyB5B,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM;IAQ3C,yBAAyB;IAIzB,sBAAsB;IAItB,qBAAqB;IAIf,uBAAuB,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAuB/C,wBAAwB,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAShD,aAAa,CACxB,OAAO,EAAE,6BAA6B,EACtC,IAAI,EAAE,MAAM;CA+Cf"}
@@ -33,13 +33,31 @@ class LiveUpdatesHandler {
33
33
  this.clientId = clientId;
34
34
  logger_1.logger.debug(`Toggle live updates timeout set to ${LIVE_UPDATES_TIMEOUT} ms`);
35
35
  }
36
+ async getAppLogsWithRetry(projectId) {
37
+ // Retry starting logs until it starts successfully or is terminated
38
+ while (this.appLogStreams.has(projectId)) {
39
+ try {
40
+ return await (0, application_control_1.getAppLogs)({
41
+ projectId,
42
+ args: ['--tail', '100', '--no-log-prefix']
43
+ });
44
+ }
45
+ catch (e) {
46
+ logger_1.logger.info(`Failed to start app logs, retrying in 1 second. Error: ${e}`);
47
+ await (0, sleep_1.default)(1000);
48
+ }
49
+ }
50
+ // Case where logs were disabled prior to connecting
51
+ return null;
52
+ }
36
53
  async startAppLogStream(projectId, txId) {
37
54
  logger_1.logger.info(`Starting log stream for ${projectId}`);
38
55
  this.appLogStreams.add(projectId);
39
- const readable = await (0, application_control_1.getAppLogs)({
40
- projectId,
41
- args: ['--tail', '100', '--no-log-prefix']
42
- });
56
+ const readable = await this.getAppLogsWithRetry(projectId);
57
+ if (readable === null) {
58
+ logger_1.logger.info(`App log stream terminated for project ${projectId} prior to starting`);
59
+ return;
60
+ }
43
61
  readable.on('data', async (chunk) => {
44
62
  if (!this.appLogStreams.has(projectId)) {
45
63
  // why doesn't typescript know about this function?
@@ -1 +1 @@
1
- {"version":3,"file":"live-updates-handler.js","sourceRoot":"","sources":["../../src/cloud-connection/live-updates-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"live-updates-handler.js","sourceRoot":"","sources":["../../src/cloud-connection/live-updates-handler.ts"],"names":[],"mappings":";;;AAAA,yEAWwC;AACxC,gEAAoD;AACpD,2CAAwC;AACxC,yCAAkC;AAElC,yCAAuE;AACvE,gDAAkE;AAGlE,MAAM,oBAAoB,GAAG,8CAAgC;IAC3D,CAAC,CAAC,QAAQ,CAAC,8CAAgC,CAAC;IAC5C,CAAC,CAAC,KAAK,CAAC;AAEV,MAAa,kBAAkB;IA0J7B;;uEAEmE;IAEnE,YAAY,SAAoB,EAAE,QAAgB;QAzJ1C,qBAAgB,GAAG;YACzB,CAAC,iCAAU,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,KAAK;YACpD,CAAC,iCAAU,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,KAAK;YACjD,CAAC,iCAAU,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,KAAK;YAChD,CAAC,iCAAU,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,KAAK;SACxD,CAAC;QACM,8BAAyB,GAAG;YAClC,CAAC,iCAAU,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,IAAI;YACnD,CAAC,iCAAU,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,IAAI;YAChD,CAAC,iCAAU,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,IAAI;YAC/C,CAAC,iCAAU,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,IAAI;SACvD,CAAC;QAEM,kBAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,wBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QA4I9C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,eAAM,CAAC,KAAK,CACV,sCAAsC,oBAAoB,KAAK,CAChE,CAAC;IACJ,CAAC;IA/IO,KAAK,CAAC,mBAAmB,CAC/B,SAAiB;QAEjB,oEAAoE;QACpE,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACxC,IAAI;gBACF,OAAO,MAAM,IAAA,gCAAU,EAAC;oBACtB,SAAS;oBACT,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,iBAAiB,CAAC;iBAC3C,CAAC,CAAC;aACJ;YAAC,OAAO,CAAC,EAAE;gBACV,eAAM,CAAC,IAAI,CACT,0DAA0D,CAAC,EAAE,CAC9D,CAAC;gBACF,MAAM,IAAA,eAAK,EAAC,IAAI,CAAC,CAAC;aACnB;SACF;QACD,oDAAoD;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,SAAiB,EAAE,IAAY;QAC7D,eAAM,CAAC,IAAI,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QAEpD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAE3D,IAAI,QAAQ,KAAK,IAAI,EAAE;YACrB,eAAM,CAAC,IAAI,CACT,yCAAyC,SAAS,oBAAoB,CACvE,CAAC;YACF,OAAO;SACR;QAED,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,KAAa,EAAE,EAAE;YAC1C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;gBACtC,mDAAmD;gBACnD,aAAa;gBACb,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACnB,eAAM,CAAC,IAAI,CAAC,yCAAyC,SAAS,EAAE,CAAC,CAAC;gBAClE,OAAO;aACR;YACD,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,OAAO,GAAmB;gBAC9B,SAAS;gBACT,QAAQ,EAAE,MAAM;aACjB,CAAC;YACF,MAAM,OAAO,GAAG,IAAA,0CAAmB,EAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAClE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,eAAM,CAAC,KAAK,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7B,eAAM,CAAC,KAAK,CACV,yCAAyC,SAAS,KAAK,KAAK,EAAE,CAC/D,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;YAC3B,eAAM,CAAC,IAAI,CAAC,wCAAwC,SAAS,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,kBAAkB,CACxB,IAA8B,EAC9B,IAAa;QAEb,QAAQ,IAAI,EAAE;YACZ,KAAK,iCAAU,CAAC,mBAAmB,CAAC,YAAY,CAAC;YACjD,KAAK,iCAAU,CAAC,mBAAmB,CAAC,SAAS;gBAC3C,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACrC,KAAK,iCAAU,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;gBACnD,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;iBACvE;gBACD,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aAC3C;YACD;gBACE,eAAM,CAAC,KAAK,CAAC,iCAAiC,IAAI,EAAE,CAAC,CAAC;gBACtD,OAAO,KAAK,CAAC;SAChB;IACH,CAAC;IAEO,sBAAsB,CAAC,IAA8B;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,MAAM,EAAE;YACV,OAAO,MAAM,CAAC;SACf;QACD,eAAM,CAAC,KAAK,CAAC,kCAAkC,IAAI,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IAEO,cAAc,CAAC,OAAsC;QAC3D,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE;YACrC,IAAI,CAAC,gBAAgB,CAAC,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;SAC1D;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;YAClC,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;SACpD;IACH,CAAC;IAEO,yBAAyB;QAC/B,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,GAAG,EAAE;YACxC,IAAI,CAAC,cAAc,CAAC;gBAClB,WAAW,EAAE,KAAK;gBAClB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC,EAAE,oBAAoB,CAAC,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,WAAqC,EACrC,UAA0C,EAC1C,IAAY;QAEZ,eAAM,CAAC,IAAI,CAAC,8BAA8B,WAAW,EAAE,CAAC,CAAC;QACzD,IAAI;YACF,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;gBACjD,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;gBACnC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,eAAM,CAAC,KAAK,CAAC,CAAC;gBAEtD,MAAM,IAAA,eAAK,EAAC,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAC;aACvD;SACF;QAAC,OAAO,CAAC,EAAE;YACV,eAAM,CAAC,KAAK,CACV,qCAAqC,WAAW,KAAK,CAAC,CAAC,OAAO,EAAE,CACjE,CAAC;SACH;QACD,eAAM,CAAC,IAAI,CAAC,+BAA+B,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC;IAcM,yBAAyB;QAC9B,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC;IAC5C,CAAC;IAEM,sBAAsB;QAC3B,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;IACzC,CAAC;IAEM,qBAAqB;QAC1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;IACxC,CAAC;IAEM,KAAK,CAAC,uBAAuB,CAAC,KAAuB;QAC1D,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,IAAI,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACvC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,mEAAmE;YACnE,KAAK,IAAI,CAAC,0BAA0B,CAClC,iCAAU,CAAC,mBAAmB,CAAC,eAAe,EAC9C,KAAK,IAAI,EAAE;gBACT,MAAM,OAAO,GAA0B;oBACrC,MAAM,EAAE,iCAAU,CAAC,cAAc,CAAC,WAAW;iBAC9C,CAAC;gBACF,OAAO,IAAA,yDAAkC,EACvC,IAAI,CAAC,QAAQ,EACb,OAAO,EACP,IAAI,CACL,CAAC;YACJ,CAAC,EACD,IAAI,CACL,CAAC;SACH;IACH,CAAC;IAEM,KAAK,CAAC,wBAAwB,CAAC,KAAuB;QAC3D,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,EAAE;YACvC,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,KAAK,CAAC;SAC/C;IACH,CAAC;IAEM,KAAK,CAAC,aAAa,CACxB,OAAsC,EACtC,IAAY;QAEZ,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QACnD,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAEjC,IAAI,WAAW,KAAK,SAAS,EAAE;YAC7B,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC5D,IAAI,CAAC,gBAAgB,CAAC,YAAY,GAAG,WAAW,CAAC;YACjD,IAAI,WAAW,IAAI,kBAAkB,KAAK,IAAI,EAAE;gBAC9C,mEAAmE;gBACnE,KAAK,IAAI,CAAC,0BAA0B,CAClC,iCAAU,CAAC,mBAAmB,CAAC,YAAY,EAC3C,KAAK,IAAI,EAAE;oBACT,MAAM,OAAO,GAAG,MAAM,IAAA,gCAAqB,GAAE,CAAC;oBAC9C,OAAO,IAAA,8CAAuB,EAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC/D,CAAC,EACD,IAAI,CACL,CAAC;aACH;SACF;QAED,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACtD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC3C,IAAI,QAAQ,IAAI,eAAe,KAAK,IAAI,EAAE;gBACxC,mEAAmE;gBACnE,KAAK,IAAI,CAAC,0BAA0B,CAClC,iCAAU,CAAC,mBAAmB,CAAC,SAAS,EACxC,KAAK,IAAI,EAAE;oBACT,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAkB,GAAE,CAAC;oBAC3C,OAAO,IAAA,2CAAoB,EAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC5D,CAAC,EACD,IAAI,CACL,CAAC;aACH;SACF;QAED,IAAI,OAAO,KAAK,SAAS,EAAE;YACzB,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACpD,IAAI,OAAO,CAAC,MAAM,IAAI,cAAc,KAAK,IAAI,EAAE;gBAC7C,mEAAmE;gBACnE,KAAK,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;aACtD;iBAAM;gBACL,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aAC9C;SACF;IACH,CAAC;CACF;AAnQD,gDAmQC"}
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AASxC,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CAYnE;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAWzE"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AASxC,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CAWnE;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAWzE"}
@@ -5,15 +5,14 @@ const application_control_1 = require("../application-control");
5
5
  const device_control_1 = require("../device-control/device-control");
6
6
  const agent_config_1 = require("../infrastructure/agent-config");
7
7
  async function getAppStatePayload() {
8
- const appState = [];
8
+ const appStatePromises = [];
9
9
  const apps = await (0, agent_config_1.AgentConfigFile)().getApps();
10
10
  for (const app of apps) {
11
11
  const projectId = app.projectId;
12
- const status = await (0, application_control_1.getAppState)({ projectId });
13
- appState.push(status);
12
+ appStatePromises.push((0, application_control_1.getAppState)({ projectId }));
14
13
  }
15
14
  const appStatePayload = {
16
- appState: appState
15
+ appState: await Promise.all(appStatePromises)
17
16
  };
18
17
  return appStatePayload;
19
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/cloud-connection/messages.ts"],"names":[],"mappings":";;;AAKA,gEAAqD;AACrD,qEAI0C;AAC1C,iEAAiE;AAE1D,KAAK,UAAU,kBAAkB;IACtC,MAAM,QAAQ,GAAe,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,IAAA,8BAAe,GAAE,CAAC,OAAO,EAAE,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAW,EAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAChD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACvB;IACD,MAAM,eAAe,GAAG;QACtB,QAAQ,EAAE,QAAQ;KACnB,CAAC;IACF,OAAO,eAAe,CAAC;AACzB,CAAC;AAZD,gDAYC;AAEM,KAAK,UAAU,qBAAqB;IACzC,MAAM,UAAU,GAAG,MAAM,IAAA,8BAAa,GAAE,CAAC;IACzC,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAc,GAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,MAAM,IAAA,8BAAa,GAAE,CAAC;IAEzC,MAAM,kBAAkB,GAAuB;QAC7C,UAAU;QACV,WAAW;QACX,UAAU;KACX,CAAC;IACF,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAXD,sDAWC"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/cloud-connection/messages.ts"],"names":[],"mappings":";;;AAKA,gEAAqD;AACrD,qEAI0C;AAC1C,iEAAiE;AAE1D,KAAK,UAAU,kBAAkB;IACtC,MAAM,gBAAgB,GAAwB,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,MAAM,IAAA,8BAAe,GAAE,CAAC,OAAO,EAAE,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAChC,gBAAgB,CAAC,IAAI,CAAC,IAAA,iCAAW,EAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;KACnD;IACD,MAAM,eAAe,GAAG;QACtB,QAAQ,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;KAC9C,CAAC;IACF,OAAO,eAAe,CAAC;AACzB,CAAC;AAXD,gDAWC;AAEM,KAAK,UAAU,qBAAqB;IACzC,MAAM,UAAU,GAAG,MAAM,IAAA,8BAAa,GAAE,CAAC;IACzC,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAc,GAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,MAAM,IAAA,8BAAa,GAAE,CAAC;IAEzC,MAAM,kBAAkB,GAAuB;QAC7C,UAAU;QACV,WAAW;QACX,UAAU;KACX,CAAC;IACF,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAXD,sDAWC"}
@@ -2,21 +2,6 @@ import { AppConfig } from '@alwaysai/app-configuration-schemas';
2
2
  import { EnvVars } from '../application-control';
3
3
  import { Publisher } from './publisher';
4
4
  import { AppConfigModels } from './shadow';
5
- export interface ShadowTopics {
6
- projects: {
7
- get: string;
8
- getAccepted: string;
9
- getRejected: string;
10
- update: string;
11
- updateDelta: string;
12
- updateAccepted: string;
13
- updateRejected: string;
14
- delete: string;
15
- };
16
- systemInfo: {
17
- update: string;
18
- };
19
- }
20
5
  export declare type AppConfigUpdate = {
21
6
  newAppCfg: AppConfig;
22
7
  updatedModels?: AppConfigModels;
@@ -33,18 +18,26 @@ export declare type ShadowUpdate = {
33
18
  export declare class ShadowHandler {
34
19
  private clientId;
35
20
  private publisher;
36
- readonly shadowPrefix: string;
37
- readonly shadowTopics: ShadowTopics;
21
+ projectShadowTopics: string[];
22
+ readonly shadowTopics: {
23
+ [key: string]: any;
24
+ };
38
25
  constructor(clientId: string, publisher: Publisher);
39
- private handleNamedShadowUpdate;
40
- handleShadowTopic({ topic, payload, clientToken }: {
26
+ private generateAppConfigUpdate;
27
+ private processProjectShadowUpdates;
28
+ private processProjectShadowUpdate;
29
+ handleProjectShadow({ topic, payload, clientToken }: {
41
30
  topic: string;
42
31
  payload: any;
43
32
  clientToken: string;
44
33
  }): Promise<ShadowUpdate[]>;
45
34
  updateSystemInfoShadow(): Promise<void>;
46
35
  updateProjectShadow(projectId: string): Promise<void>;
47
- getShadowUpdates(): void;
48
- clearAppConfig(projectId: string): void;
36
+ updateProjectEnvVars({ projectId, envVars }: {
37
+ projectId: string;
38
+ envVars: EnvVars;
39
+ }): Promise<void>;
40
+ getProjectShadowUpdates(): void;
41
+ clearProjectShadow(projectId: string): void;
49
42
  }
50
43
  //# sourceMappingURL=shadow-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadow-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/shadow-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAEV,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,OAAO,EAA8B,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAuB,MAAM,UAAU,CAAC;AAIhE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE;QACR,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,UAAU,EAAE;QACV,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,oBAAY,eAAe,GAAG;IAC5B,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,YAAY,EAAE,YAAY,CAAC;gBAE/B,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;YAqBpC,uBAAuB;IAsExB,iBAAiB,CAAC,EAC7B,KAAK,EACL,OAAO,EACP,WAAW,EACZ,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,GAAG,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACrB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqCd,sBAAsB;IAYtB,mBAAmB,CAAC,SAAS,EAAE,MAAM;IAmB3C,gBAAgB;IAQhB,cAAc,CAAC,SAAS,EAAE,MAAM;CAiBxC"}
1
+ {"version":3,"file":"shadow-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/shadow-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAEV,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,OAAO,EAIR,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAuB,MAAM,UAAU,CAAC;AAchE,oBAAY,eAAe,GAAG;IAC5B,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAY;IACtB,mBAAmB,EAAE,MAAM,EAAE,CAAM;IAC1C,SAAgB,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;gBACzC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;YAoDpC,uBAAuB;YAiDvB,2BAA2B;YAkC3B,0BAA0B;IAiD3B,mBAAmB,CAAC,EAC/B,KAAK,EACL,OAAO,EACP,WAAW,EACZ,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,GAAG,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACrB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqEd,sBAAsB;IAUtB,mBAAmB,CAAC,SAAS,EAAE,MAAM;IAqBrC,oBAAoB,CAAC,EAChC,SAAS,EACT,OAAO,EACR,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;KAClB;IAkBM,uBAAuB;IAOvB,kBAAkB,CAAC,SAAS,EAAE,MAAM;CAY5C"}