@alwaysai/device-agent 0.0.10 → 0.0.12
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/lib/application-control/backup.d.ts.map +1 -1
- package/lib/application-control/backup.js +4 -3
- package/lib/application-control/backup.js.map +1 -1
- package/lib/application-control/install.d.ts.map +1 -1
- package/lib/application-control/install.js +6 -5
- package/lib/application-control/install.js.map +1 -1
- package/lib/application-control/models.d.ts.map +1 -1
- package/lib/application-control/models.js +3 -2
- package/lib/application-control/models.js.map +1 -1
- package/lib/application-control/status.d.ts.map +1 -1
- package/lib/application-control/status.js +6 -5
- package/lib/application-control/status.js.map +1 -1
- package/lib/application-control/utils.d.ts.map +1 -1
- package/lib/application-control/utils.js +3 -2
- package/lib/application-control/utils.js.map +1 -1
- package/lib/cloud-connection/device-agent-cloud-connection.d.ts +3 -4
- package/lib/cloud-connection/device-agent-cloud-connection.d.ts.map +1 -1
- package/lib/cloud-connection/device-agent-cloud-connection.js +89 -50
- package/lib/cloud-connection/device-agent-cloud-connection.js.map +1 -1
- package/lib/cloud-connection/device-agent.d.ts +21 -0
- package/lib/cloud-connection/device-agent.d.ts.map +1 -0
- package/lib/cloud-connection/device-agent.js +69 -0
- package/lib/cloud-connection/device-agent.js.map +1 -0
- package/lib/endpoints.d.ts +3 -0
- package/lib/endpoints.d.ts.map +1 -0
- package/lib/endpoints.js +28 -0
- package/lib/endpoints.js.map +1 -0
- package/lib/environment.d.ts +1 -0
- package/lib/environment.d.ts.map +1 -1
- package/lib/environment.js +2 -1
- package/lib/environment.js.map +1 -1
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib/infrastructure/certificates-and-tokens.d.ts +1 -1
- package/lib/infrastructure/certificates-and-tokens.d.ts.map +1 -1
- package/lib/infrastructure/certificates-and-tokens.js +13 -39
- package/lib/infrastructure/certificates-and-tokens.js.map +1 -1
- package/lib/subcommands/app/app.d.ts.map +1 -1
- package/lib/subcommands/app/app.js +6 -5
- package/lib/subcommands/app/app.js.map +1 -1
- package/lib/subcommands/device/device.d.ts.map +1 -1
- package/lib/subcommands/device/device.js +31 -22
- package/lib/subcommands/device/device.js.map +1 -1
- package/lib/subcommands/get-model-package.d.ts.map +1 -1
- package/lib/subcommands/get-model-package.js +2 -1
- package/lib/subcommands/get-model-package.js.map +1 -1
- package/lib/util/directories.d.ts +15 -0
- package/lib/util/directories.d.ts.map +1 -1
- package/lib/util/directories.js +19 -4
- package/lib/util/directories.js.map +1 -1
- package/lib/util/http-client.d.ts +3 -0
- package/lib/util/http-client.d.ts.map +1 -0
- package/lib/util/http-client.js +30 -0
- package/lib/util/http-client.js.map +1 -0
- package/lib/util/logger.d.ts +4 -0
- package/lib/util/logger.d.ts.map +1 -0
- package/lib/util/logger.js +25 -0
- package/lib/util/logger.js.map +1 -0
- package/package.json +3 -2
- package/src/application-control/backup.ts +4 -3
- package/src/application-control/install.ts +6 -5
- package/src/application-control/models.ts +4 -3
- package/src/application-control/status.ts +6 -5
- package/src/application-control/utils.ts +3 -2
- package/src/cloud-connection/device-agent-cloud-connection.ts +177 -81
- package/src/cloud-connection/device-agent.ts +122 -0
- package/src/endpoints.ts +24 -0
- package/src/environment.ts +1 -0
- package/src/index.ts +2 -1
- package/src/infrastructure/certificates-and-tokens.ts +31 -49
- package/src/subcommands/app/app.ts +6 -5
- package/src/subcommands/device/device.ts +67 -30
- package/src/subcommands/get-model-package.ts +2 -1
- package/src/util/directories.ts +49 -6
- package/src/util/http-client.ts +35 -0
- package/src/util/logger.ts +28 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/application-control/backup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/application-control/backup.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,UAAU,SAAS,CAAC;AAEjC,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,iBAQjE;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,iBAe7D"}
|
|
@@ -5,6 +5,7 @@ const rimraf = require("rimraf");
|
|
|
5
5
|
const copy_dir_1 = require("../util/copy-dir");
|
|
6
6
|
const utils_1 = require("./utils");
|
|
7
7
|
const agent_config_1 = require("../infrastructure/agent-config");
|
|
8
|
+
const logger_1 = require("../util/logger");
|
|
8
9
|
exports.BACKUP_EXT = '.bak';
|
|
9
10
|
async function createAppBackup(props) {
|
|
10
11
|
const { projectId } = props;
|
|
@@ -13,7 +14,7 @@ async function createAppBackup(props) {
|
|
|
13
14
|
rimraf.sync(backupAppDir);
|
|
14
15
|
await (0, copy_dir_1.copyDir)({ srcPath: appDir, destPath: backupAppDir });
|
|
15
16
|
await (0, agent_config_1.AgentConfigFile)().setAppBackup({ projectId });
|
|
16
|
-
|
|
17
|
+
logger_1.logger.info(`Backed up app ${projectId} to ${backupAppDir}`);
|
|
17
18
|
}
|
|
18
19
|
exports.createAppBackup = createAppBackup;
|
|
19
20
|
async function rollbackApp(props) {
|
|
@@ -22,7 +23,7 @@ async function rollbackApp(props) {
|
|
|
22
23
|
if (!config) {
|
|
23
24
|
throw new Error(`Backup doesn't exist for ${projectId}`);
|
|
24
25
|
}
|
|
25
|
-
|
|
26
|
+
logger_1.logger.info(`Rolling back app ${projectId} to ${config.version}`);
|
|
26
27
|
await (0, agent_config_1.AgentConfigFile)().setAppInstalling({ projectId, version: config.version });
|
|
27
28
|
const appDir = (0, utils_1.getAppDir)(projectId);
|
|
28
29
|
const backupAppDir = `${appDir}${exports.BACKUP_EXT}`;
|
|
@@ -30,7 +31,7 @@ async function rollbackApp(props) {
|
|
|
30
31
|
await (0, copy_dir_1.copyDir)({ srcPath: backupAppDir, destPath: appDir });
|
|
31
32
|
await (0, utils_1.buildApp)({ appDir });
|
|
32
33
|
await (0, agent_config_1.AgentConfigFile)().setAppInstalled({ projectId, version: config.version });
|
|
33
|
-
|
|
34
|
+
logger_1.logger.info(`Rolled back app ${projectId} to ${config.version}`);
|
|
34
35
|
}
|
|
35
36
|
exports.rollbackApp = rollbackApp;
|
|
36
37
|
//# sourceMappingURL=backup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/application-control/backup.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAEjC,+CAA2C;AAC3C,mCAA8C;AAC9C,iEAAiE;
|
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/application-control/backup.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAEjC,+CAA2C;AAC3C,mCAA8C;AAC9C,iEAAiE;AAEjE,2CAAwC;AAE3B,QAAA,UAAU,GAAG,MAAM,CAAC;AAE1B,KAAK,UAAU,eAAe,CAAC,KAA4B;IAChE,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,MAAM,MAAM,GAAG,IAAA,iBAAS,EAAC,SAAS,CAAC,CAAC;IACpC,MAAM,YAAY,GAAG,GAAG,MAAM,GAAG,kBAAU,EAAE,CAAC;IAC9C,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1B,MAAM,IAAA,kBAAO,EAAC,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;IAC3D,MAAM,IAAA,8BAAe,GAAE,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IACpD,eAAM,CAAC,IAAI,CAAC,iBAAiB,SAAS,OAAO,YAAY,EAAE,CAAC,CAAC;AAC/D,CAAC;AARD,0CAQC;AAEM,KAAK,UAAU,WAAW,CAAC,KAA4B;IAC5D,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAe,GAAE,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IACnE,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,4BAA4B,SAAS,EAAE,CAAC,CAAC;KAC1D;IACD,eAAM,CAAC,IAAI,CAAC,oBAAoB,SAAS,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAClE,MAAM,IAAA,8BAAe,GAAE,CAAC,gBAAgB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IACjF,MAAM,MAAM,GAAG,IAAA,iBAAS,EAAC,SAAS,CAAC,CAAC;IACpC,MAAM,YAAY,GAAG,GAAG,MAAM,GAAG,kBAAU,EAAE,CAAC;IAC9C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpB,MAAM,IAAA,kBAAO,EAAC,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3D,MAAM,IAAA,gBAAQ,EAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3B,MAAM,IAAA,8BAAe,GAAE,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAChF,eAAM,CAAC,IAAI,CAAC,mBAAmB,SAAS,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;AACnE,CAAC;AAfD,kCAeC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/application-control/install.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAuB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/application-control/install.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAuB,MAAM,gCAAgC,CAAC;AAqBvF,aAAK,oBAAoB,GAAG;IAC1B,iBAAiB,EAAE;QACjB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,oBAAoB,EAAE;QACpB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;CACL,CAAC;AAEF,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAQpE;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,oBAAoB,CAAC;CAC1C,GAAG,OAAO,CAAC,IAAI,CAAC,CA4EhB;AA6DD,wBAAsB,YAAY,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB9E"}
|
|
@@ -17,6 +17,7 @@ const constants_1 = require("alwaysai/lib/constants");
|
|
|
17
17
|
const release_1 = require("alwaysai/lib/components/release");
|
|
18
18
|
const run_in_dir_1 = require("../util/run-in-dir");
|
|
19
19
|
const models_1 = require("./models");
|
|
20
|
+
const logger_1 = require("../util/logger");
|
|
20
21
|
async function getInstalledApps() {
|
|
21
22
|
const apps = await (0, agent_config_1.AgentConfigFile)().getApps();
|
|
22
23
|
const appDetails = [];
|
|
@@ -35,7 +36,7 @@ async function installApp(props) {
|
|
|
35
36
|
if (!(await (0, agent_config_1.AgentConfigFile)().isAppReady({ projectId }))) {
|
|
36
37
|
throw new Error('Application already has installation in progress!');
|
|
37
38
|
}
|
|
38
|
-
|
|
39
|
+
logger_1.logger.info('Application is already installed, updating');
|
|
39
40
|
await (0, agent_config_1.AgentConfigFile)().setAppInstalling({ projectId, version: appReleaseHash });
|
|
40
41
|
await spawner.rimraf(appDir);
|
|
41
42
|
}
|
|
@@ -83,7 +84,7 @@ async function installApp(props) {
|
|
|
83
84
|
}
|
|
84
85
|
await (0, utils_1.buildApp)({ appDir });
|
|
85
86
|
await (0, agent_config_1.AgentConfigFile)().setAppInstalled({ projectId, version: appReleaseHash });
|
|
86
|
-
|
|
87
|
+
logger_1.logger.info(`Installed app version ${appReleaseHash} from project ${projectId} to ${appDir}.`);
|
|
87
88
|
}
|
|
88
89
|
exports.installApp = installApp;
|
|
89
90
|
async function installAppBuildReqs(props) {
|
|
@@ -135,21 +136,21 @@ async function checkValidProjectFiles({ appDir }) {
|
|
|
135
136
|
async function uninstallApp(props) {
|
|
136
137
|
const { projectId } = props;
|
|
137
138
|
if (!(await (0, agent_config_1.AgentConfigFile)().isAppPresent({ projectId }))) {
|
|
138
|
-
|
|
139
|
+
logger_1.logger.info(`Application ${projectId} not installed`);
|
|
139
140
|
return;
|
|
140
141
|
}
|
|
141
142
|
try {
|
|
142
143
|
await (0, status_1.stopApp)({ projectId });
|
|
143
144
|
}
|
|
144
145
|
catch (_a) {
|
|
145
|
-
|
|
146
|
+
logger_1.logger.info('Failed to stop app, may be left running...');
|
|
146
147
|
}
|
|
147
148
|
await (0, agent_config_1.AgentConfigFile)().setAppUninstalled({ projectId });
|
|
148
149
|
// Delete application directory and backup
|
|
149
150
|
const appDir = (0, utils_1.getAppDir)(projectId);
|
|
150
151
|
rimraf.sync(appDir);
|
|
151
152
|
rimraf.sync(`${appDir}${backup_1.BACKUP_EXT}`);
|
|
152
|
-
|
|
153
|
+
logger_1.logger.info('Uninstalled', projectId);
|
|
153
154
|
}
|
|
154
155
|
exports.uninstallApp = uninstallApp;
|
|
155
156
|
//# sourceMappingURL=install.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/application-control/install.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,yBAAyB;AACzB,6BAA6B;AAC7B,4CAAuD;AACvD,mCAAgF;AAEhF,qCAAuD;AACvD,qCAAmC;AACnC,iEAAiE;AACjE,uDAA4D;AAC5D,+CAI+B;AAC/B,qDAAmF;AACnF,6FAG2D;AAC3D,sDAAmF;AACnF,6DAA0E;AAC1E,mDAA8C;AAC9C,qCAA0D;
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/application-control/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/application-control/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/application-control/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAiBjF,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAQvC,wBAAsB,YAAY,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,2BAoB9D;AAED,wBAAsB,QAAQ,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,iBAY3E;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,iBAiB9E;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,iBAyBnF;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,iBAU9D;AAED,wBAAsB,8BAA8B,CAClD,aAAa,EAAE,mBAAmB,EAAE,EACpC,SAAS,EAAE,MAAM,iBAgBlB;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,EACf,oBAAoB,EAAE,mBAAmB,EAAE,iBAoD5C"}
|
|
@@ -4,6 +4,7 @@ exports.updateModelsWithPresignedUrls = exports.installModelsWithPresignedURLs =
|
|
|
4
4
|
const device_agent_schemas_1 = require("@alwaysai/device-agent-schemas");
|
|
5
5
|
const app_1 = require("alwaysai/lib/components/app");
|
|
6
6
|
const util_1 = require("alwaysai/lib/util");
|
|
7
|
+
const logger_1 = require("../util/logger");
|
|
7
8
|
const fs_1 = require("fs");
|
|
8
9
|
const path_1 = require("path");
|
|
9
10
|
const agent_config_1 = require("../infrastructure/agent-config");
|
|
@@ -140,10 +141,10 @@ async function updateModelsWithPresignedUrls(project, modelInstallPayloads) {
|
|
|
140
141
|
if (appIsRunning) {
|
|
141
142
|
(0, status_1.restartApp)({ projectId: project });
|
|
142
143
|
}
|
|
143
|
-
|
|
144
|
+
logger_1.logger.info(`Models installed for project ${project}`);
|
|
144
145
|
}
|
|
145
146
|
catch (e) {
|
|
146
|
-
|
|
147
|
+
logger_1.logger.error(e, 'Error updating app models from presigned URL, restoring models.');
|
|
147
148
|
await spawner.rimraf(tmpDir);
|
|
148
149
|
await spawner.rimraf(ogDir);
|
|
149
150
|
await (0, copy_dir_1.copyDir)({ srcPath: restoreDir, destPath: ogDir });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/application-control/models.ts"],"names":[],"mappings":";;;AAAA,yEAAiF;AAEjF,qDAKqC;AACrC,
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/application-control/models.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/application-control/status.ts"],"names":[],"mappings":";AAMA,OAAO,EAEL,cAAc,EAGf,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/application-control/status.ts"],"names":[],"mappings":";AAMA,OAAO,EAEL,cAAc,EAGf,MAAM,gCAAgC,CAAC;AAIxC,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,sEAIjE;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,+BAOtE;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,cAAc,CAAC,CA+E1B;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAqBjC;AAED,wBAAsB,QAAQ,CAAC,KAAK,EAAE;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBhB;AAED,wBAAsB,OAAO,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAezE;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAI5E"}
|
|
@@ -8,6 +8,7 @@ const docker_cmd_1 = require("../docker/docker-cmd");
|
|
|
8
8
|
const utils_1 = require("./utils");
|
|
9
9
|
const device_agent_schemas_1 = require("@alwaysai/device-agent-schemas");
|
|
10
10
|
const agent_config_1 = require("../infrastructure/agent-config");
|
|
11
|
+
const logger_1 = require("../util/logger");
|
|
11
12
|
async function listAppReleases(props) {
|
|
12
13
|
const { projectId } = props;
|
|
13
14
|
const releaseHistory = await (0, infrastructure_1.fetchAppReleaseHistory)(projectId);
|
|
@@ -117,16 +118,16 @@ async function startApp(props) {
|
|
|
117
118
|
const appDir = (0, utils_1.getAppDir)(projectId);
|
|
118
119
|
if (dockerLoginToken !== undefined) {
|
|
119
120
|
const result = await (0, docker_cmd_1.runDockerLogin)({ token: dockerLoginToken });
|
|
120
|
-
|
|
121
|
+
logger_1.logger.info(result);
|
|
121
122
|
}
|
|
122
123
|
// TODO: Check if app is running
|
|
123
124
|
// Start app
|
|
124
125
|
const upOut = await docker_compose_1.default.upAll({ cwd: appDir });
|
|
125
|
-
|
|
126
|
+
logger_1.logger.info(upOut);
|
|
126
127
|
if (upOut.exitCode !== 0) {
|
|
127
128
|
throw new Error(`Failed to start application! stdout=${upOut.out} stderr=${upOut.err}`);
|
|
128
129
|
}
|
|
129
|
-
|
|
130
|
+
logger_1.logger.info('Started', projectId);
|
|
130
131
|
}
|
|
131
132
|
exports.startApp = startApp;
|
|
132
133
|
async function stopApp(props) {
|
|
@@ -136,11 +137,11 @@ async function stopApp(props) {
|
|
|
136
137
|
// TODO: Check if app is running
|
|
137
138
|
// Stop app
|
|
138
139
|
const output = await docker_compose_1.default.down({ cwd: appDir });
|
|
139
|
-
|
|
140
|
+
logger_1.logger.info(output);
|
|
140
141
|
if (output.exitCode !== 0) {
|
|
141
142
|
throw new Error(`Failed to stop application! stdout=${output.out} stderr=${output.err}`);
|
|
142
143
|
}
|
|
143
|
-
|
|
144
|
+
logger_1.logger.info('Stopped', projectId);
|
|
144
145
|
}
|
|
145
146
|
exports.stopApp = stopApp;
|
|
146
147
|
async function restartApp(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/application-control/status.ts"],"names":[],"mappings":";;;AAAA,mDAAqC;AACrC,gEAAqE;AACrE,4CAA8C;AAE9C,qDAAsD;AACtD,mCAAyD;AACzD,yEAKwC;AACxC,iEAAiE;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/application-control/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/application-control/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/application-control/utils.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,QAAqC,CAAC;AAE3D,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAsB,mBAAmB,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,iBASrE;AAED,wBAAsB,QAAQ,CAAC,KAAK,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,iBA+BvD;AAED,wBAAsB,gCAAgC,CAAC,KAAK,EAAE;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBhB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,gBAOjD"}
|
|
@@ -11,6 +11,7 @@ const app_1 = require("alwaysai/lib/core/app");
|
|
|
11
11
|
const app_2 = require("alwaysai/lib/components/app");
|
|
12
12
|
const run_in_dir_1 = require("../util/run-in-dir");
|
|
13
13
|
const util_1 = require("alwaysai/lib/util");
|
|
14
|
+
const logger_1 = require("../util/logger");
|
|
14
15
|
exports.APP_ROOT = path.join(constants_1.AAI_DIR, 'applications');
|
|
15
16
|
function getAppDir(projectId) {
|
|
16
17
|
return path.join(exports.APP_ROOT, projectId);
|
|
@@ -46,14 +47,14 @@ async function buildApp(props) {
|
|
|
46
47
|
},
|
|
47
48
|
], appDir);
|
|
48
49
|
const buildOut = await docker_compose_1.default.buildAll({ cwd: appDir });
|
|
49
|
-
|
|
50
|
+
logger_1.logger.info(buildOut);
|
|
50
51
|
if (buildOut.exitCode !== 0) {
|
|
51
52
|
throw new Error(`Failed to build application! stdout=${buildOut.out} stderr=${buildOut.err}`);
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
55
|
exports.buildApp = buildApp;
|
|
55
56
|
async function downloadPackageUsingPresignedUrl(props) {
|
|
56
|
-
|
|
57
|
+
logger_1.logger.info('downloading URL');
|
|
57
58
|
const { localDest, presignedUrl } = props;
|
|
58
59
|
const response = await (0, node_fetch_1.default)(presignedUrl);
|
|
59
60
|
if (response.status !== 200) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/application-control/utils.ts"],"names":[],"mappings":";;;AAAA,mDAAqC;AACrC,6BAA6B;AAC7B,yBAAyB;AACzB,sDAAwE;AAExE,iEAAiE;AACjE,2CAAmC;AACnC,+CAAuD;AACvD,qDAA4E;AAC5E,mDAA8C;AAC9C,4CAA8C;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/application-control/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ClientMessage } from
|
|
1
|
+
import { ClientMessage } from "@alwaysai/device-agent-schemas";
|
|
2
2
|
export declare class DeviceAgentCloudConnection {
|
|
3
3
|
private clientId;
|
|
4
4
|
private host;
|
|
@@ -7,7 +7,6 @@ export declare class DeviceAgentCloudConnection {
|
|
|
7
7
|
private liveUpdatesAlive;
|
|
8
8
|
private liveUpdatesSleepIntervals;
|
|
9
9
|
private appLogStreams;
|
|
10
|
-
private deviceType;
|
|
11
10
|
private readonly shadowPrefix;
|
|
12
11
|
private readonly shadowTopics;
|
|
13
12
|
private readonly toCloudTopic;
|
|
@@ -43,10 +42,10 @@ export declare class DeviceAgentCloudConnection {
|
|
|
43
42
|
topic: string;
|
|
44
43
|
message: ClientMessage;
|
|
45
44
|
}): Promise<void>;
|
|
46
|
-
handleShadowTopic({ topic, payload }: {
|
|
45
|
+
handleShadowTopic({ topic, payload, }: {
|
|
47
46
|
topic: string;
|
|
48
47
|
payload: string;
|
|
49
48
|
}): Promise<void>;
|
|
50
49
|
}
|
|
51
|
-
export declare function runDeviceAgentCloudInterface(): void
|
|
50
|
+
export declare function runDeviceAgentCloudInterface(): Promise<void>;
|
|
52
51
|
//# sourceMappingURL=device-agent-cloud-connection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-agent-cloud-connection.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/device-agent-cloud-connection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"device-agent-cloud-connection.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/device-agent-cloud-connection.ts"],"names":[],"mappings":"AA6BA,OAAO,EAiBL,aAAa,EAKd,MAAM,gCAAgC,CAAC;AAiBxC,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,kBAAkB,CAAgC;IAC1D,OAAO,CAAC,gBAAgB,CAItB;IACF,OAAO,CAAC,yBAAyB,CAK/B;IACF,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+C;IAC5E,OAAO,CAAC,QAAQ,CAAC,YAAY,CAK3B;IACF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgC;IAC7D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAIxD,eAAe;YAIR,uBAAuB;YAsCvB,iBAAiB;IA0C/B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,mBAAmB;IAK3B,OAAO,CAAC,kBAAkB;YAcZ,kBAAkB;YAelB,qBAAqB;IAiBnC,OAAO,CAAC,0BAA0B,CAQ9B;YAEU,0BAA0B;IA4BxC,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,mBAAmB,CAEzB;IAEF,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,yBAAyB;YAYnB,iBAAiB;YA4CjB,oBAAoB;YAepB,mBAAmB;IAY1B,MAAM,MAAiB;;IAiBvB,WAAW,IAAI,MAAM;IAIrB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAKvC,mBAAmB,CAAC,EAC/B,KAAK,EACL,OAAO,GACR,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,aAAa,CAAC;KACxB;IAoFY,iBAAiB,CAAC,EAC7B,KAAK,EACL,OAAO,GACR,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB;CAeF;AAED,wBAAsB,4BAA4B,kBAoFjD"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.runDeviceAgentCloudInterface = exports.DeviceAgentCloudConnection = void 0;
|
|
4
|
-
const awsIot = require(
|
|
4
|
+
const awsIot = require("aws-iot-device-sdk");
|
|
5
5
|
const urls_1 = require("../infrastructure/urls");
|
|
6
|
+
const fs_1 = require("fs");
|
|
6
7
|
const directories_1 = require("../util/directories");
|
|
8
|
+
const device_agent_1 = require("./device-agent");
|
|
7
9
|
const sleep_1 = require("../util/sleep");
|
|
8
10
|
const status_1 = require("../application-control/status");
|
|
9
11
|
const install_1 = require("../application-control/install");
|
|
@@ -31,7 +33,6 @@ class DeviceAgentCloudConnection {
|
|
|
31
33
|
[device_agent_schemas_1.keyMirrors.agentMessageType.app_install_status]: 5000,
|
|
32
34
|
};
|
|
33
35
|
this.appLogStreams = new Set();
|
|
34
|
-
this.deviceType = 'aai-device';
|
|
35
36
|
this.shadowPrefix = `$aws/things/${this.clientId}/shadow/name/`;
|
|
36
37
|
this.shadowTopics = {
|
|
37
38
|
projects: {
|
|
@@ -39,9 +40,9 @@ class DeviceAgentCloudConnection {
|
|
|
39
40
|
getAccepted: `${this.shadowPrefix}projects/get/accepted`,
|
|
40
41
|
},
|
|
41
42
|
};
|
|
42
|
-
this.toCloudTopic =
|
|
43
|
-
this.toClientTopic =
|
|
44
|
-
this.toDeviceTopic =
|
|
43
|
+
this.toCloudTopic = (0, device_agent_schemas_1.getCloudTopic)(this.clientId);
|
|
44
|
+
this.toClientTopic = (0, device_agent_schemas_1.getClientTopic)(this.clientId);
|
|
45
|
+
this.toDeviceTopic = (0, device_agent_schemas_1.getDeviceTopic)(this.clientId);
|
|
45
46
|
// must be arrow function due to this context when function is passed as param
|
|
46
47
|
this.getAppInstallStatusMessage = async () => {
|
|
47
48
|
const appInstallStatus = this.getAppInstallStatus();
|
|
@@ -59,9 +60,10 @@ class DeviceAgentCloudConnection {
|
|
|
59
60
|
this.device = awsIot.device({
|
|
60
61
|
keyPath: (0, directories_1.getPrivateKeyFilePath)(),
|
|
61
62
|
certPath: (0, directories_1.getCertificateFilePath)(),
|
|
62
|
-
caPath:
|
|
63
|
+
caPath: directories_1.AWS_ROOT_CERTIFICATE_FILE_PATH,
|
|
63
64
|
clientId: this.clientId,
|
|
64
65
|
host: this.host,
|
|
66
|
+
port: 8883,
|
|
65
67
|
});
|
|
66
68
|
this.device.subscribe(this.toDeviceTopic);
|
|
67
69
|
this.device.subscribe(this.shadowTopics.projects.getAccepted);
|
|
@@ -105,9 +107,9 @@ class DeviceAgentCloudConnection {
|
|
|
105
107
|
this.appLogStreams.add(projectId);
|
|
106
108
|
const readable = await (0, status_1.getAppLogs)({
|
|
107
109
|
projectId,
|
|
108
|
-
args: [
|
|
110
|
+
args: ["--tail", "100", "--no-log-prefix"],
|
|
109
111
|
});
|
|
110
|
-
readable.on(
|
|
112
|
+
readable.on("data", (chunk) => {
|
|
111
113
|
if (!this.appLogStreams.has(projectId)) {
|
|
112
114
|
// why doesn't typescript know about this function?
|
|
113
115
|
// @ts-ignore
|
|
@@ -126,10 +128,10 @@ class DeviceAgentCloudConnection {
|
|
|
126
128
|
const packet = this.buildMessagePacket(this.getClientId(), this.toClientTopic, message);
|
|
127
129
|
this.publishMessage(this.toClientTopic, JSON.stringify(packet));
|
|
128
130
|
});
|
|
129
|
-
readable.on(
|
|
131
|
+
readable.on("error", (error) => {
|
|
130
132
|
util_1.logger.error(`App log stream terminated for project ${projectId}: ${error}`);
|
|
131
133
|
});
|
|
132
|
-
readable.on(
|
|
134
|
+
readable.on("finished", () => {
|
|
133
135
|
util_1.logger.info(`App logs finished piping for project ${projectId}`);
|
|
134
136
|
});
|
|
135
137
|
}
|
|
@@ -206,7 +208,8 @@ class DeviceAgentCloudConnection {
|
|
|
206
208
|
case device_agent_schemas_1.keyMirrors.agentMessageType.app_state:
|
|
207
209
|
return this.liveUpdatesAlive[flag];
|
|
208
210
|
case device_agent_schemas_1.keyMirrors.agentMessageType.app_install_status:
|
|
209
|
-
return this.appInstallStatus.status ===
|
|
211
|
+
return (this.appInstallStatus.status ===
|
|
212
|
+
device_agent_schemas_1.keyMirrors.appInstallStatus.in_progress);
|
|
210
213
|
default:
|
|
211
214
|
util_1.logger.error(`Unrecognized publishable flag ${flag}`);
|
|
212
215
|
return false;
|
|
@@ -314,7 +317,7 @@ class DeviceAgentCloudConnection {
|
|
|
314
317
|
}
|
|
315
318
|
publishMessage(topic, message) {
|
|
316
319
|
// TODO: topic validation
|
|
317
|
-
this.device.publish(topic, message);
|
|
320
|
+
this.device.publish(topic, message, (err) => { });
|
|
318
321
|
}
|
|
319
322
|
async handleClientMessage({ topic, message, }) {
|
|
320
323
|
const payload = message.payload;
|
|
@@ -332,7 +335,7 @@ class DeviceAgentCloudConnection {
|
|
|
332
335
|
break;
|
|
333
336
|
}
|
|
334
337
|
case device_agent_schemas_1.keyMirrors.clientMessageType.app_install_cloud_response: {
|
|
335
|
-
const { projectId, appReleaseHash, appInstallPayload, modelsInstallPayload } = payload.appInstallCloudResponse;
|
|
338
|
+
const { projectId, appReleaseHash, appInstallPayload, modelsInstallPayload, } = payload.appInstallCloudResponse;
|
|
336
339
|
this.initAppInstallStatus({
|
|
337
340
|
status: device_agent_schemas_1.keyMirrors.appInstallStatus.in_progress,
|
|
338
341
|
appReleaseHash,
|
|
@@ -356,7 +359,7 @@ class DeviceAgentCloudConnection {
|
|
|
356
359
|
await this.publishReportedState(projectId);
|
|
357
360
|
}
|
|
358
361
|
catch (e) {
|
|
359
|
-
|
|
362
|
+
util_1.logger.error(e);
|
|
360
363
|
const message = e.message;
|
|
361
364
|
// uninstall the failed app to put system back in good state
|
|
362
365
|
await (0, install_1.uninstallApp)({ projectId });
|
|
@@ -365,7 +368,7 @@ class DeviceAgentCloudConnection {
|
|
|
365
368
|
message,
|
|
366
369
|
});
|
|
367
370
|
// delete shadow for project
|
|
368
|
-
this.publishMessage(`${this.shadowPrefix}${projectId}/delete`,
|
|
371
|
+
this.publishMessage(`${this.shadowPrefix}${projectId}/delete`, "");
|
|
369
372
|
}
|
|
370
373
|
break;
|
|
371
374
|
}
|
|
@@ -376,7 +379,7 @@ class DeviceAgentCloudConnection {
|
|
|
376
379
|
await this.publishReportedState(projectId);
|
|
377
380
|
}
|
|
378
381
|
catch (e) {
|
|
379
|
-
|
|
382
|
+
util_1.logger.error(e);
|
|
380
383
|
}
|
|
381
384
|
break;
|
|
382
385
|
}
|
|
@@ -384,8 +387,8 @@ class DeviceAgentCloudConnection {
|
|
|
384
387
|
util_1.logger.error(`Invalid Client Message '${JSON.stringify(payload)}'`);
|
|
385
388
|
}
|
|
386
389
|
}
|
|
387
|
-
async handleShadowTopic({ topic, payload }) {
|
|
388
|
-
const shadowName = topic.split(
|
|
390
|
+
async handleShadowTopic({ topic, payload, }) {
|
|
391
|
+
const shadowName = topic.split("/")[5];
|
|
389
392
|
const message = JSON.parse(payload);
|
|
390
393
|
if (topic === this.shadowTopics.projects.updateDelta) {
|
|
391
394
|
this.handleNamedShadowUpdate({ payload });
|
|
@@ -397,46 +400,82 @@ class DeviceAgentCloudConnection {
|
|
|
397
400
|
});
|
|
398
401
|
}
|
|
399
402
|
else {
|
|
400
|
-
|
|
403
|
+
util_1.logger.info(`No delta updates in shadow ${shadowName}`);
|
|
401
404
|
}
|
|
402
405
|
}
|
|
403
406
|
}
|
|
404
407
|
}
|
|
405
408
|
exports.DeviceAgentCloudConnection = DeviceAgentCloudConnection;
|
|
406
|
-
function runDeviceAgentCloudInterface() {
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
409
|
+
async function runDeviceAgentCloudInterface() {
|
|
410
|
+
switch ((0, fs_1.existsSync)((0, directories_1.getCertificateFilePath)())) {
|
|
411
|
+
case true:
|
|
412
|
+
{
|
|
413
|
+
const deviceAgent = new DeviceAgentCloudConnection();
|
|
414
|
+
deviceAgent.device.on("connect", function (connack) {
|
|
415
|
+
util_1.logger.info("Device Agent has connected to the cloud");
|
|
416
|
+
// Get shadow updates
|
|
417
|
+
deviceAgent.publishMessage(`${deviceAgent.getShadowPrefix()}projects/get`, "");
|
|
418
|
+
});
|
|
419
|
+
deviceAgent.device.on("disconnect", function () {
|
|
420
|
+
util_1.logger.info("Device Agent has been disconnected from the cloud");
|
|
421
|
+
});
|
|
422
|
+
deviceAgent.device.on("message", function (topic, payload) {
|
|
423
|
+
console.log(topic);
|
|
424
|
+
console.log(JSON.parse(payload));
|
|
425
|
+
try {
|
|
426
|
+
const jsonPacket = JSON.parse(payload);
|
|
427
|
+
if (jsonPacket.hasOwnProperty("state")) {
|
|
428
|
+
deviceAgent.handleShadowTopic({
|
|
429
|
+
topic,
|
|
430
|
+
payload: JSON.stringify(jsonPacket.state),
|
|
431
|
+
});
|
|
432
|
+
}
|
|
433
|
+
else {
|
|
434
|
+
const valid = (0, device_agent_schemas_1.validateClientMessage)(jsonPacket);
|
|
435
|
+
if (!valid) {
|
|
436
|
+
console.error(JSON.stringify(device_agent_schemas_1.validateClientMessage.errors));
|
|
437
|
+
}
|
|
438
|
+
else {
|
|
439
|
+
deviceAgent.handleClientMessage({
|
|
440
|
+
topic,
|
|
441
|
+
message: jsonPacket,
|
|
442
|
+
});
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
catch (error) {
|
|
447
|
+
util_1.logger.error(error);
|
|
448
|
+
}
|
|
449
|
+
});
|
|
450
|
+
deviceAgent.device.on("packetsend", (packet) => {
|
|
451
|
+
console.log({ packet: packet });
|
|
424
452
|
});
|
|
425
453
|
}
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
454
|
+
break;
|
|
455
|
+
case false: {
|
|
456
|
+
//set timer
|
|
457
|
+
const clientId = (0, get_device_id_1.getDeviceId)();
|
|
458
|
+
const bootstrapConfig = {
|
|
459
|
+
keyPath: directories_1.BOOTSTRAP_DEVICE_PRIVATE_KEY_FILE_PATH,
|
|
460
|
+
certPath: directories_1.BOOTSTRAP_DEVICE_CERTIFICATE_FILE_PATH,
|
|
461
|
+
caPath: directories_1.AWS_ROOT_CERTIFICATE_FILE_PATH,
|
|
462
|
+
clientId,
|
|
463
|
+
host: (0, urls_1.getIoTCoreEndpointUrl)(),
|
|
464
|
+
};
|
|
465
|
+
const bootstrapAgent = new device_agent_1.BootstrapAgent(bootstrapConfig);
|
|
466
|
+
bootstrapAgent.subscribeToAllTopics();
|
|
467
|
+
bootstrapAgent.publishMessage("$aws/certificates/create/json", "");
|
|
468
|
+
bootstrapAgent.device.on("connect", () => {
|
|
469
|
+
console.log("Your device is being provisioned");
|
|
470
|
+
});
|
|
471
|
+
bootstrapAgent.device.on("message", (topic, payload) => {
|
|
472
|
+
bootstrapAgent.handleAwsCertificateTopics(topic, payload);
|
|
473
|
+
});
|
|
474
|
+
bootstrapAgent.device.on("packetsend", (packet) => {
|
|
475
|
+
console.log({ packet: packet.subscriptions });
|
|
476
|
+
});
|
|
438
477
|
}
|
|
439
|
-
}
|
|
478
|
+
}
|
|
440
479
|
}
|
|
441
480
|
exports.runDeviceAgentCloudInterface = runDeviceAgentCloudInterface;
|
|
442
481
|
//# sourceMappingURL=device-agent-cloud-connection.js.map
|