@alwaysai/device-agent 0.0.1-2.1-beta-provision
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 +8 -0
- package/lib/application-control/backup.d.ts.map +1 -0
- package/lib/application-control/backup.js +37 -0
- package/lib/application-control/backup.js.map +1 -0
- package/lib/application-control/config.d.ts +17 -0
- package/lib/application-control/config.d.ts.map +1 -0
- package/lib/application-control/config.js +62 -0
- package/lib/application-control/config.js.map +1 -0
- package/lib/application-control/environment-variables.d.ts +9 -0
- package/lib/application-control/environment-variables.d.ts.map +1 -0
- package/lib/application-control/environment-variables.js +73 -0
- package/lib/application-control/environment-variables.js.map +1 -0
- package/lib/application-control/index.d.ts +10 -0
- package/lib/application-control/index.d.ts.map +1 -0
- package/lib/application-control/index.js +32 -0
- package/lib/application-control/index.js.map +1 -0
- package/lib/application-control/install.d.ts +22 -0
- package/lib/application-control/install.d.ts.map +1 -0
- package/lib/application-control/install.js +156 -0
- package/lib/application-control/install.js.map +1 -0
- package/lib/application-control/models.d.ts +23 -0
- package/lib/application-control/models.d.ts.map +1 -0
- package/lib/application-control/models.js +154 -0
- package/lib/application-control/models.js.map +1 -0
- package/lib/application-control/status.d.ts +27 -0
- package/lib/application-control/status.d.ts.map +1 -0
- package/lib/application-control/status.js +153 -0
- package/lib/application-control/status.js.map +1 -0
- package/lib/application-control/types.d.ts +5 -0
- package/lib/application-control/types.d.ts.map +1 -0
- package/lib/application-control/types.js +3 -0
- package/lib/application-control/types.js.map +1 -0
- package/lib/application-control/utils.d.ts +14 -0
- package/lib/application-control/utils.d.ts.map +1 -0
- package/lib/application-control/utils.js +82 -0
- package/lib/application-control/utils.js.map +1 -0
- package/lib/cloud-connection/device-agent-cloud-connection.d.ts +51 -0
- package/lib/cloud-connection/device-agent-cloud-connection.d.ts.map +1 -0
- package/lib/cloud-connection/device-agent-cloud-connection.js +490 -0
- package/lib/cloud-connection/device-agent-cloud-connection.js.map +1 -0
- 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 +65 -0
- package/lib/cloud-connection/device-agent.js.map +1 -0
- package/lib/device-control/device-control.d.ts +4 -0
- package/lib/device-control/device-control.d.ts.map +1 -0
- package/lib/device-control/device-control.js +20 -0
- package/lib/device-control/device-control.js.map +1 -0
- package/lib/docker/docker-cmd.d.ts +4 -0
- package/lib/docker/docker-cmd.d.ts.map +1 -0
- package/lib/docker/docker-cmd.js +16 -0
- package/lib/docker/docker-cmd.js.map +1 -0
- package/lib/docker/docker-compose-cmd.d.ts +5 -0
- package/lib/docker/docker-compose-cmd.d.ts.map +1 -0
- package/lib/docker/docker-compose-cmd.js +16 -0
- package/lib/docker/docker-compose-cmd.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 +7 -0
- package/lib/environment.d.ts.map +1 -0
- package/lib/environment.js +24 -0
- package/lib/environment.js.map +1 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +26 -0
- package/lib/index.js.map +1 -0
- package/lib/infrastructure/agent-config.d.ts +73 -0
- package/lib/infrastructure/agent-config.d.ts.map +1 -0
- package/lib/infrastructure/agent-config.js +175 -0
- package/lib/infrastructure/agent-config.js.map +1 -0
- package/lib/infrastructure/agent-config.test.d.ts +2 -0
- package/lib/infrastructure/agent-config.test.d.ts.map +1 -0
- package/lib/infrastructure/agent-config.test.js +182 -0
- package/lib/infrastructure/agent-config.test.js.map +1 -0
- package/lib/infrastructure/certificates-and-tokens.d.ts +6 -0
- package/lib/infrastructure/certificates-and-tokens.d.ts.map +1 -0
- package/lib/infrastructure/certificates-and-tokens.js +37 -0
- package/lib/infrastructure/certificates-and-tokens.js.map +1 -0
- package/lib/infrastructure/urls.d.ts +2 -0
- package/lib/infrastructure/urls.d.ts.map +1 -0
- package/lib/infrastructure/urls.js +25 -0
- package/lib/infrastructure/urls.js.map +1 -0
- package/lib/root.d.ts +2 -0
- package/lib/root.d.ts.map +1 -0
- package/lib/root.js +12 -0
- package/lib/root.js.map +1 -0
- package/lib/subcommands/app/app.d.ts +59 -0
- package/lib/subcommands/app/app.d.ts.map +1 -0
- package/lib/subcommands/app/app.js +317 -0
- package/lib/subcommands/app/app.js.map +1 -0
- package/lib/subcommands/app/index.d.ts +2 -0
- package/lib/subcommands/app/index.d.ts.map +1 -0
- package/lib/subcommands/app/index.js +30 -0
- package/lib/subcommands/app/index.js.map +1 -0
- package/lib/subcommands/device/clean.d.ts +2 -0
- package/lib/subcommands/device/clean.d.ts.map +1 -0
- package/lib/subcommands/device/clean.js +20 -0
- package/lib/subcommands/device/clean.js.map +1 -0
- package/lib/subcommands/device/device.d.ts +6 -0
- package/lib/subcommands/device/device.d.ts.map +1 -0
- package/lib/subcommands/device/device.js +92 -0
- package/lib/subcommands/device/device.js.map +1 -0
- package/lib/subcommands/device/index.d.ts +2 -0
- package/lib/subcommands/device/index.d.ts.map +1 -0
- package/lib/subcommands/device/index.js +12 -0
- package/lib/subcommands/device/index.js.map +1 -0
- package/lib/subcommands/get-model-package.d.ts +5 -0
- package/lib/subcommands/get-model-package.d.ts.map +1 -0
- package/lib/subcommands/get-model-package.js +35 -0
- package/lib/subcommands/get-model-package.js.map +1 -0
- package/lib/subcommands/index.d.ts +9 -0
- package/lib/subcommands/index.d.ts.map +1 -0
- package/lib/subcommands/index.js +14 -0
- package/lib/subcommands/index.js.map +1 -0
- package/lib/subcommands/login.d.ts +6 -0
- package/lib/subcommands/login.d.ts.map +1 -0
- package/lib/subcommands/login.js +35 -0
- package/lib/subcommands/login.js.map +1 -0
- package/lib/util/clean-certs.d.ts +2 -0
- package/lib/util/clean-certs.d.ts.map +1 -0
- package/lib/util/clean-certs.js +16 -0
- package/lib/util/clean-certs.js.map +1 -0
- package/lib/util/copy-dir.d.ts +5 -0
- package/lib/util/copy-dir.d.ts.map +1 -0
- package/lib/util/copy-dir.js +16 -0
- package/lib/util/copy-dir.js.map +1 -0
- package/lib/util/directories.d.ts +23 -0
- package/lib/util/directories.d.ts.map +1 -0
- package/lib/util/directories.js +50 -0
- package/lib/util/directories.js.map +1 -0
- package/lib/util/get-device-id.d.ts +2 -0
- package/lib/util/get-device-id.d.ts.map +1 -0
- package/lib/util/get-device-id.js +24 -0
- package/lib/util/get-device-id.js.map +1 -0
- 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 +24 -0
- package/lib/util/logger.js.map +1 -0
- package/lib/util/run-in-dir.d.ts +2 -0
- package/lib/util/run-in-dir.d.ts.map +1 -0
- package/lib/util/run-in-dir.js +17 -0
- package/lib/util/run-in-dir.js.map +1 -0
- package/lib/util/sleep.d.ts +2 -0
- package/lib/util/sleep.d.ts.map +1 -0
- package/lib/util/sleep.js +9 -0
- package/lib/util/sleep.js.map +1 -0
- package/package.json +98 -0
- package/readme.md +219 -0
- package/src/application-control/backup.ts +36 -0
- package/src/application-control/config.ts +61 -0
- package/src/application-control/environment-variables.ts +74 -0
- package/src/application-control/index.ts +45 -0
- package/src/application-control/install.ts +206 -0
- package/src/application-control/models.ts +194 -0
- package/src/application-control/status.ts +187 -0
- package/src/application-control/types.ts +1 -0
- package/src/application-control/utils.ts +95 -0
- package/src/cloud-connection/device-agent-cloud-connection.ts +673 -0
- package/src/cloud-connection/device-agent.ts +120 -0
- package/src/device-control/device-control.ts +16 -0
- package/src/docker/docker-cmd.ts +12 -0
- package/src/docker/docker-compose-cmd.ts +12 -0
- package/src/endpoints.ts +24 -0
- package/src/environment.ts +28 -0
- package/src/index.ts +26 -0
- package/src/infrastructure/agent-config.test.ts +199 -0
- package/src/infrastructure/agent-config.ts +208 -0
- package/src/infrastructure/certificates-and-tokens.ts +47 -0
- package/src/infrastructure/urls.ts +21 -0
- package/src/root.ts +11 -0
- package/src/subcommands/app/app.ts +337 -0
- package/src/subcommands/app/index.ts +46 -0
- package/src/subcommands/device/clean.ts +16 -0
- package/src/subcommands/device/device.ts +126 -0
- package/src/subcommands/device/index.ts +9 -0
- package/src/subcommands/get-model-package.ts +33 -0
- package/src/subcommands/index.ts +11 -0
- package/src/subcommands/login.ts +33 -0
- package/src/util/clean-certs.ts +12 -0
- package/src/util/copy-dir.ts +12 -0
- package/src/util/directories.ts +82 -0
- package/src/util/get-device-id.ts +22 -0
- package/src/util/http-client.ts +35 -0
- package/src/util/logger.ts +28 -0
- package/src/util/run-in-dir.ts +15 -0
- package/src/util/sleep.ts +5 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getInfoCliLeaf = exports.initCliLeaf = void 0;
|
|
4
|
+
const alwayscli_1 = require("@alwaysai/alwayscli");
|
|
5
|
+
const user_1 = require("alwaysai/lib/components/user");
|
|
6
|
+
const project_1 = require("alwaysai/lib/core/project");
|
|
7
|
+
const uuid_1 = require("uuid");
|
|
8
|
+
const infrastructure_1 = require("alwaysai/lib/infrastructure");
|
|
9
|
+
const fs_1 = require("fs");
|
|
10
|
+
const http_client_1 = require("../../util/http-client");
|
|
11
|
+
const directories_1 = require("../../util/directories");
|
|
12
|
+
const constants_1 = require("alwaysai/lib/constants");
|
|
13
|
+
const util_1 = require("alwaysai/lib/util");
|
|
14
|
+
const device_control_1 = require("../../device-control/device-control");
|
|
15
|
+
const certificates_and_tokens_1 = require("../../infrastructure/certificates-and-tokens");
|
|
16
|
+
const logger_1 = require("../../util/logger");
|
|
17
|
+
exports.initCliLeaf = (0, alwayscli_1.CliLeaf)({
|
|
18
|
+
name: "init",
|
|
19
|
+
description: "Initialize device",
|
|
20
|
+
namedInputs: {
|
|
21
|
+
name: (0, alwayscli_1.CliStringInput)({
|
|
22
|
+
description: "Device name",
|
|
23
|
+
required: true,
|
|
24
|
+
}),
|
|
25
|
+
description: (0, alwayscli_1.CliStringInput)({
|
|
26
|
+
description: "Device description",
|
|
27
|
+
required: false,
|
|
28
|
+
}),
|
|
29
|
+
},
|
|
30
|
+
async action(_, opts) {
|
|
31
|
+
const { name, description } = opts;
|
|
32
|
+
switch (true) {
|
|
33
|
+
case !(0, fs_1.existsSync)((0, directories_1.getPrivateKeyFilePath)()):
|
|
34
|
+
{
|
|
35
|
+
logger_1.logger.info("Initializing device");
|
|
36
|
+
await (0, user_1.checkUserIsLoggedInComponent)({ yes: true });
|
|
37
|
+
if (!(await (0, project_1.checkPaidPlan)())) {
|
|
38
|
+
throw new Error(`This action only supported for Enterprise alwaysAI accounts!`);
|
|
39
|
+
}
|
|
40
|
+
const { username } = await (0, infrastructure_1.CliAuthenticationClient)().getInfo();
|
|
41
|
+
const spawner = (0, util_1.JsSpawner)();
|
|
42
|
+
const device = {
|
|
43
|
+
deviceMode: "production",
|
|
44
|
+
hardwareId: (0, uuid_1.v4)(),
|
|
45
|
+
txId: (0, uuid_1.v4)(),
|
|
46
|
+
userName: username,
|
|
47
|
+
friendlyName: name,
|
|
48
|
+
};
|
|
49
|
+
//**NOTE: hardwareId currently is mocked. The real hardwareId will be used in future work
|
|
50
|
+
const response = await (0, http_client_1.microServiceHttpClient)("fleet-provision", "addDevice", "POST", JSON.stringify(device));
|
|
51
|
+
if (Object.hasOwn(response, "claimCertificate")) {
|
|
52
|
+
const ROOT_CERT_AWS = await (0, http_client_1.httpClient)("https://www.amazontrust.com/repository/AmazonRootCA1.pem", "GET");
|
|
53
|
+
await (0, certificates_and_tokens_1.writeCertificateAndToken)({ deviceUuid: response.deviceUuid });
|
|
54
|
+
const hardwareIdSpawner = (0, util_1.JsSpawner)({
|
|
55
|
+
path: constants_1.LOCAL_CERT_AND_KEY_DIR,
|
|
56
|
+
});
|
|
57
|
+
await (0, util_1.JsSpawner)().mkdirp(directories_1.BOOTSTRAP_CERTIFICATES_DIR_PATH);
|
|
58
|
+
await hardwareIdSpawner.writeFile("hardware-id.txt", device.hardwareId);
|
|
59
|
+
(0, util_1.JsSpawner)({ path: constants_1.LOCAL_CERT_AND_KEY_DIR }).writeFile(directories_1.AWS_ROOT_CERTIFICATE_FILE_NAME, ROOT_CERT_AWS);
|
|
60
|
+
const certSpawner = (0, util_1.JsSpawner)({
|
|
61
|
+
path: directories_1.BOOTSTRAP_CERTIFICATES_DIR_PATH,
|
|
62
|
+
});
|
|
63
|
+
for (const key in response.claimCertificate) {
|
|
64
|
+
await certSpawner.writeFile(key, response.claimCertificate[key]);
|
|
65
|
+
}
|
|
66
|
+
logger_1.logger.info(`Initialized device as ${response.deviceUuid}`);
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
logger_1.logger.info("Device cannot be provisioned. Run 'device-agent device clean' and retry.");
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
break;
|
|
73
|
+
default: {
|
|
74
|
+
logger_1.logger.info("Device has been previously provisioned. Run 'device-agent device clean' to re-provision");
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
exports.getInfoCliLeaf = (0, alwayscli_1.CliLeaf)({
|
|
80
|
+
name: "get-info",
|
|
81
|
+
description: "Get device info",
|
|
82
|
+
namedInputs: {},
|
|
83
|
+
async action(_, opts) {
|
|
84
|
+
const deviceInfo = [
|
|
85
|
+
["CPU Utilization", `${String(await (0, device_control_1.getCpuUtil)())} %`],
|
|
86
|
+
["Disk Utilization", `${String(await (0, device_control_1.getDiskUtil)())} %`],
|
|
87
|
+
["Memory Utilization", `${String(await (0, device_control_1.getMemUtil)())} %`],
|
|
88
|
+
];
|
|
89
|
+
console.table(deviceInfo);
|
|
90
|
+
},
|
|
91
|
+
});
|
|
92
|
+
//# sourceMappingURL=device.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../../src/subcommands/device/device.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/subcommands/device/index.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,eAAe,mDAI1B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deviceCliBranch = void 0;
|
|
4
|
+
const alwayscli_1 = require("@alwaysai/alwayscli");
|
|
5
|
+
const device_1 = require("./device");
|
|
6
|
+
const clean_1 = require("./clean");
|
|
7
|
+
exports.deviceCliBranch = (0, alwayscli_1.CliBranch)({
|
|
8
|
+
name: "device",
|
|
9
|
+
description: "Manage current device",
|
|
10
|
+
subcommands: [device_1.initCliLeaf, device_1.getInfoCliLeaf, clean_1.cleanCliLeaf],
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/subcommands/device/index.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAChD,qCAAuD;AACvD,mCAAuC;AAE1B,QAAA,eAAe,GAAG,IAAA,qBAAS,EAAC;IACvC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,uBAAuB;IACpC,WAAW,EAAE,CAAC,oBAAW,EAAE,uBAAc,EAAE,oBAAY,CAAC;CACzD,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const getModelPackageCliLeaf: import("@alwaysai/alwayscli/lib/types").CliLeaf<import("@alwaysai/alwayscli").CliInput<string, true>, {
|
|
2
|
+
version: import("@alwaysai/alwayscli").CliInput<number | undefined, boolean>;
|
|
3
|
+
path: import("@alwaysai/alwayscli").CliInput<string | undefined, false>;
|
|
4
|
+
}, import("@alwaysai/alwayscli").CliInput<undefined, false>>;
|
|
5
|
+
//# sourceMappingURL=get-model-package.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-model-package.d.ts","sourceRoot":"","sources":["../../src/subcommands/get-model-package.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,sBAAsB;;;4DA0BjC,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getModelPackageCliLeaf = void 0;
|
|
4
|
+
const alwayscli_1 = require("@alwaysai/alwayscli");
|
|
5
|
+
const app_1 = require("alwaysai/lib/core/app");
|
|
6
|
+
const infrastructure_1 = require("alwaysai/lib/infrastructure");
|
|
7
|
+
const util_1 = require("alwaysai/lib/util");
|
|
8
|
+
const logger_1 = require("../util/logger");
|
|
9
|
+
exports.getModelPackageCliLeaf = (0, alwayscli_1.CliLeaf)({
|
|
10
|
+
name: 'get-model-package',
|
|
11
|
+
description: 'Download and unpack a model package',
|
|
12
|
+
positionalInput: (0, alwayscli_1.CliStringInput)({
|
|
13
|
+
description: 'For example, "alwaysai/mobilenet_ssd"',
|
|
14
|
+
required: true,
|
|
15
|
+
placeholder: '<id>',
|
|
16
|
+
}),
|
|
17
|
+
namedInputs: {
|
|
18
|
+
version: (0, alwayscli_1.CliNumberInput)({
|
|
19
|
+
description: 'The version number of the model',
|
|
20
|
+
required: false,
|
|
21
|
+
}),
|
|
22
|
+
path: (0, alwayscli_1.CliStringInput)({
|
|
23
|
+
description: 'The output path to write model package to',
|
|
24
|
+
required: false,
|
|
25
|
+
}),
|
|
26
|
+
},
|
|
27
|
+
async action(id, opts) {
|
|
28
|
+
const path = opts.path || process.cwd();
|
|
29
|
+
const spawner = (0, util_1.JsSpawner)({ path });
|
|
30
|
+
const version = opts.version || (await (0, infrastructure_1.CliRpcClient)().getModelVersion({ id })).version;
|
|
31
|
+
await (0, app_1.appInstallModel)(spawner, id, version);
|
|
32
|
+
logger_1.logger.info(`Completed downloading ${id} to ${path}`);
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=get-model-package.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-model-package.js","sourceRoot":"","sources":["../../src/subcommands/get-model-package.ts"],"names":[],"mappings":";;;AAAA,mDAA8E;AAC9E,+CAAwD;AACxD,gEAA2D;AAC3D,4CAA8C;AAC9C,2CAAwC;AAE3B,QAAA,sBAAsB,GAAG,IAAA,mBAAO,EAAC;IAC5C,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,qCAAqC;IAClD,eAAe,EAAE,IAAA,0BAAc,EAAC;QAC9B,WAAW,EAAE,uCAAuC;QACpD,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,MAAM;KACpB,CAAC;IACF,WAAW,EAAE;QACX,OAAO,EAAE,IAAA,0BAAc,EAAC;YACtB,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,IAAI,EAAE,IAAA,0BAAc,EAAC;YACnB,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACD,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAA,gBAAS,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,MAAM,OAAO,GACX,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,IAAA,6BAAY,GAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACzE,MAAM,IAAA,qBAAe,EAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QAC5C,eAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const subcommands: (import("@alwaysai/alwayscli/lib/types").CliBranch | import("@alwaysai/alwayscli/lib/types").CliLeaf<import("@alwaysai/alwayscli").CliInput<undefined, false>, {
|
|
2
|
+
email: import("@alwaysai/alwayscli").CliInput<string, true>;
|
|
3
|
+
password: import("@alwaysai/alwayscli").CliInput<string, true>;
|
|
4
|
+
device: import("@alwaysai/alwayscli").CliInput<string | undefined, false>;
|
|
5
|
+
}, import("@alwaysai/alwayscli").CliInput<undefined, false>> | import("@alwaysai/alwayscli/lib/types").CliLeaf<import("@alwaysai/alwayscli").CliInput<string, true>, {
|
|
6
|
+
version: import("@alwaysai/alwayscli").CliInput<number | undefined, boolean>;
|
|
7
|
+
path: import("@alwaysai/alwayscli").CliInput<string | undefined, false>;
|
|
8
|
+
}, import("@alwaysai/alwayscli").CliInput<undefined, false>>)[];
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/subcommands/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW;;;;;;;+DAKvB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.subcommands = void 0;
|
|
4
|
+
const app_1 = require("./app");
|
|
5
|
+
const device_1 = require("./device");
|
|
6
|
+
const login_1 = require("./login");
|
|
7
|
+
const get_model_package_1 = require("./get-model-package");
|
|
8
|
+
exports.subcommands = [
|
|
9
|
+
login_1.loginCliLeaf,
|
|
10
|
+
app_1.appCliBranch,
|
|
11
|
+
device_1.deviceCliBranch,
|
|
12
|
+
get_model_package_1.getModelPackageCliLeaf,
|
|
13
|
+
];
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/subcommands/index.ts"],"names":[],"mappings":";;;AAAA,+BAAqC;AACrC,qCAA2C;AAC3C,mCAAuC;AACvC,2DAA6D;AAEhD,QAAA,WAAW,GAAG;IACzB,oBAAY;IACZ,kBAAY;IACZ,wBAAe;IACf,0CAAsB;CACvB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const loginCliLeaf: import("@alwaysai/alwayscli/lib/types").CliLeaf<import("@alwaysai/alwayscli").CliInput<undefined, false>, {
|
|
2
|
+
email: import("@alwaysai/alwayscli").CliInput<string, true>;
|
|
3
|
+
password: import("@alwaysai/alwayscli").CliInput<string, true>;
|
|
4
|
+
device: import("@alwaysai/alwayscli").CliInput<string | undefined, false>;
|
|
5
|
+
}, import("@alwaysai/alwayscli").CliInput<undefined, false>>;
|
|
6
|
+
//# sourceMappingURL=login.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/subcommands/login.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,YAAY;;;;4DA4BvB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loginCliLeaf = void 0;
|
|
4
|
+
const alwayscli_1 = require("@alwaysai/alwayscli");
|
|
5
|
+
const user_1 = require("alwaysai/lib/components/user");
|
|
6
|
+
const certificates_and_tokens_1 = require("../infrastructure/certificates-and-tokens");
|
|
7
|
+
exports.loginCliLeaf = (0, alwayscli_1.CliLeaf)({
|
|
8
|
+
name: 'login',
|
|
9
|
+
description: 'Login to alwaysAI (this is meant for scripted environments)',
|
|
10
|
+
namedInputs: {
|
|
11
|
+
email: (0, alwayscli_1.CliStringInput)({
|
|
12
|
+
description: 'alwaysAI email',
|
|
13
|
+
required: true,
|
|
14
|
+
}),
|
|
15
|
+
password: (0, alwayscli_1.CliStringInput)({
|
|
16
|
+
description: 'Account password',
|
|
17
|
+
required: true,
|
|
18
|
+
}),
|
|
19
|
+
device: (0, alwayscli_1.CliStringInput)({
|
|
20
|
+
description: 'The device UUID',
|
|
21
|
+
required: false,
|
|
22
|
+
}),
|
|
23
|
+
},
|
|
24
|
+
async action(_, opts) {
|
|
25
|
+
const { email, password, device } = opts;
|
|
26
|
+
await (0, user_1.alwaysaiUserLoginYesComponent)({
|
|
27
|
+
alwaysaiUserEmail: email,
|
|
28
|
+
alwaysaiUserPassword: password,
|
|
29
|
+
});
|
|
30
|
+
if (device) {
|
|
31
|
+
await (0, certificates_and_tokens_1.writeCertificateAndToken)({ deviceUuid: device });
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=login.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/subcommands/login.ts"],"names":[],"mappings":";;;AAAA,mDAA8D;AAC9D,uDAA6E;AAC7E,uFAAqF;AAExE,QAAA,YAAY,GAAG,IAAA,mBAAO,EAAC;IAClC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,6DAA6D;IAC1E,WAAW,EAAE;QACX,KAAK,EAAE,IAAA,0BAAc,EAAC;YACpB,WAAW,EAAE,gBAAgB;YAC7B,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,QAAQ,EAAE,IAAA,0BAAc,EAAC;YACvB,WAAW,EAAE,kBAAkB;YAC/B,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,MAAM,EAAE,IAAA,0BAAc,EAAC;YACrB,WAAW,EAAE,iBAAiB;YAC9B,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACD,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI;QAClB,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAEzC,MAAM,IAAA,oCAA6B,EAAC;YAClC,iBAAiB,EAAE,KAAK;YACxB,oBAAoB,EAAE,QAAQ;SAC/B,CAAC,CAAC;QACH,IAAI,MAAM,EAAE;YACV,MAAM,IAAA,kDAAwB,EAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;SACxD;IACH,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clean-certs.d.ts","sourceRoot":"","sources":["../../src/util/clean-certs.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,wBAAwB,sBAMpC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rmBootstrapCertsAndClose = void 0;
|
|
4
|
+
const util_1 = require("alwaysai/lib/util");
|
|
5
|
+
const logger_1 = require("../util/logger");
|
|
6
|
+
const constants_1 = require("alwaysai/lib/constants");
|
|
7
|
+
const directories_1 = require("../util/directories");
|
|
8
|
+
const rmBootstrapCertsAndClose = async () => {
|
|
9
|
+
const spawner = (0, util_1.JsSpawner)();
|
|
10
|
+
await spawner.rimraf(directories_1.BOOTSTRAP_CERTIFICATES_DIR_PATH);
|
|
11
|
+
await spawner.rimraf(constants_1.LOCAL_CERT_AND_KEY_DIR);
|
|
12
|
+
logger_1.logger.info("Could not provision device. Try again.");
|
|
13
|
+
process.exit();
|
|
14
|
+
};
|
|
15
|
+
exports.rmBootstrapCertsAndClose = rmBootstrapCertsAndClose;
|
|
16
|
+
//# sourceMappingURL=clean-certs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clean-certs.js","sourceRoot":"","sources":["../../src/util/clean-certs.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAC9C,2CAAwC;AACxC,sDAAgE;AAChE,qDAAsE;AAE/D,MAAM,wBAAwB,GAAG,KAAK,IAAI,EAAE;IACjD,MAAM,OAAO,GAAG,IAAA,gBAAS,GAAE,CAAC;IAC5B,MAAM,OAAO,CAAC,MAAM,CAAC,6CAA+B,CAAC,CAAC;IACtD,MAAM,OAAO,CAAC,MAAM,CAAC,kCAAsB,CAAC,CAAC;IAC7C,eAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,EAAE,CAAC;AACjB,CAAC,CAAC;AANW,QAAA,wBAAwB,4BAMnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copy-dir.d.ts","sourceRoot":"","sources":["../../src/util/copy-dir.ts"],"names":[],"mappings":"AAEA,wBAAsB,OAAO,CAAC,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,iBASzE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.copyDir = void 0;
|
|
4
|
+
const util_1 = require("alwaysai/lib/util");
|
|
5
|
+
async function copyDir(props) {
|
|
6
|
+
const { srcPath, destPath } = props;
|
|
7
|
+
const src = (0, util_1.JsSpawner)({ path: srcPath });
|
|
8
|
+
const allFileNames = await src.readdir();
|
|
9
|
+
const dest = (0, util_1.JsSpawner)({ path: destPath });
|
|
10
|
+
await dest.mkdirp();
|
|
11
|
+
if (allFileNames.length) {
|
|
12
|
+
await dest.untar(await src.tar(...allFileNames));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.copyDir = copyDir;
|
|
16
|
+
//# sourceMappingURL=copy-dir.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copy-dir.js","sourceRoot":"","sources":["../../src/util/copy-dir.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAEvC,KAAK,UAAU,OAAO,CAAC,KAA4C;IACxE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACpC,MAAM,GAAG,GAAG,IAAA,gBAAS,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;IACzC,MAAM,IAAI,GAAG,IAAA,gBAAS,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3C,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;IACpB,IAAI,YAAY,CAAC,MAAM,EAAE;QACvB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;KAClD;AACH,CAAC;AATD,0BASC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare const shortenSystemId: () => "prod" | "dev" | undefined;
|
|
2
|
+
export declare const BOOTSTRAP_DIR_NAME = "bootstrap-certificates";
|
|
3
|
+
export declare const BOOTSTRAP_DEVICE_PRIVATE_KEY_FILE_NAME: string;
|
|
4
|
+
export declare const BOOTSTRAP_DEVICE_CERTIFICATE_FILE_NAME: string;
|
|
5
|
+
export declare const BOOTSTRAP_CLAIM_ID_FILE_NAME: string;
|
|
6
|
+
export declare const AWS_ROOT_CERTIFICATE_FILE_NAME = "AmazonRootCA1.pem";
|
|
7
|
+
export declare const CERTIFICATE_OWNERSHIP_TOKEN_FILE_NAME = "certificate-ownership-token.txt";
|
|
8
|
+
export declare const AGENT_CONFIG_FILE_NAME = "alwaysai.agent.json";
|
|
9
|
+
export declare const DEVICE_PRIVATE_KEY_FILE_NAME: string;
|
|
10
|
+
export declare const DEVICE_CERTIFICATE_FILE_NAME: string;
|
|
11
|
+
export declare const DEVICE_CLAIM_ID_FILE_NAME: string;
|
|
12
|
+
export declare function getPrivateKeyFilePath(): string;
|
|
13
|
+
export declare function getCertificateFilePath(): string;
|
|
14
|
+
export declare function getRootCertificateFilePath(): string;
|
|
15
|
+
export declare function getCredentialsFilePath(): string;
|
|
16
|
+
export declare const BOOTSTRAP_CERTIFICATES_DIR_PATH: string;
|
|
17
|
+
export declare const DEVICE_CLAIM_ID_FILE_PATH: string;
|
|
18
|
+
export declare const BOOTSTRAP_DEVICE_PRIVATE_KEY_FILE_PATH: string;
|
|
19
|
+
export declare const BOOTSTRAP_DEVICE_CERTIFICATE_FILE_PATH: string;
|
|
20
|
+
export declare const BOOTSTRAP_CLAIM_ID_FILE_PATH: string;
|
|
21
|
+
export declare const AWS_ROOT_CERTIFICATE_FILE_PATH: string;
|
|
22
|
+
export declare const AGENT_CONFIG_FILE_PATH: string;
|
|
23
|
+
//# sourceMappingURL=directories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directories.d.ts","sourceRoot":"","sources":["../../src/util/directories.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,eAAe,kCAO3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,2BAA2B,CAAC;AAC3D,eAAO,MAAM,sCAAsC,QAAuD,CAAC;AAC3G,eAAO,MAAM,sCAAsC,QAAgD,CAAC;AACpG,eAAO,MAAM,4BAA4B,QAA+C,CAAC;AACzF,eAAO,MAAM,8BAA8B,sBAAsB,CAAC;AAClE,eAAO,MAAM,qCAAqC,oCACf,CAAC;AACpC,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAC5D,eAAO,MAAM,4BAA4B,QAAuD,CAAC;AACjG,eAAO,MAAM,4BAA4B,QAAgD,CAAC;AAC1F,eAAO,MAAM,yBAAyB,QAA+C,CAAC;AAEtF,wBAAgB,qBAAqB,WAEpC;AAED,wBAAgB,sBAAsB,WAErC;AAED,wBAAgB,0BAA0B,WAEzC;AAED,wBAAgB,sBAAsB,WAErC;AAED,eAAO,MAAM,+BAA+B,QAG3C,CAAC;AACF,eAAO,MAAM,yBAAyB,QAGrC,CAAC;AAEF,eAAO,MAAM,sCAAsC,QAIlD,CAAC;AAEF,eAAO,MAAM,sCAAsC,QAIlD,CAAC;AAEF,eAAO,MAAM,4BAA4B,QAIxC,CAAC;AAEF,eAAO,MAAM,8BAA8B,QAG1C,CAAC;AAEF,eAAO,MAAM,sBAAsB,QAGlC,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AGENT_CONFIG_FILE_PATH = exports.AWS_ROOT_CERTIFICATE_FILE_PATH = exports.BOOTSTRAP_CLAIM_ID_FILE_PATH = exports.BOOTSTRAP_DEVICE_CERTIFICATE_FILE_PATH = exports.BOOTSTRAP_DEVICE_PRIVATE_KEY_FILE_PATH = exports.DEVICE_CLAIM_ID_FILE_PATH = exports.BOOTSTRAP_CERTIFICATES_DIR_PATH = exports.getCredentialsFilePath = exports.getRootCertificateFilePath = exports.getCertificateFilePath = exports.getPrivateKeyFilePath = exports.DEVICE_CLAIM_ID_FILE_NAME = exports.DEVICE_CERTIFICATE_FILE_NAME = exports.DEVICE_PRIVATE_KEY_FILE_NAME = exports.AGENT_CONFIG_FILE_NAME = exports.CERTIFICATE_OWNERSHIP_TOKEN_FILE_NAME = exports.AWS_ROOT_CERTIFICATE_FILE_NAME = exports.BOOTSTRAP_CLAIM_ID_FILE_NAME = exports.BOOTSTRAP_DEVICE_CERTIFICATE_FILE_NAME = exports.BOOTSTRAP_DEVICE_PRIVATE_KEY_FILE_NAME = exports.BOOTSTRAP_DIR_NAME = exports.shortenSystemId = void 0;
|
|
4
|
+
const constants_1 = require("alwaysai/lib/constants");
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const infrastructure_1 = require("alwaysai/lib/infrastructure");
|
|
7
|
+
const shortenSystemId = () => {
|
|
8
|
+
const id = (0, infrastructure_1.getSystemId)();
|
|
9
|
+
if (id === "production") {
|
|
10
|
+
return "prod";
|
|
11
|
+
}
|
|
12
|
+
else if (id === "development") {
|
|
13
|
+
return "dev";
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
exports.shortenSystemId = shortenSystemId;
|
|
17
|
+
exports.BOOTSTRAP_DIR_NAME = "bootstrap-certificates";
|
|
18
|
+
exports.BOOTSTRAP_DEVICE_PRIVATE_KEY_FILE_NAME = `aai-claim-private-key_${(0, exports.shortenSystemId)()}.pem.key`;
|
|
19
|
+
exports.BOOTSTRAP_DEVICE_CERTIFICATE_FILE_NAME = `aai-claim-cert_${(0, exports.shortenSystemId)()}.pem.crt`;
|
|
20
|
+
exports.BOOTSTRAP_CLAIM_ID_FILE_NAME = `aai-claim-cert-id_${(0, exports.shortenSystemId)()}.txt`;
|
|
21
|
+
exports.AWS_ROOT_CERTIFICATE_FILE_NAME = "AmazonRootCA1.pem";
|
|
22
|
+
exports.CERTIFICATE_OWNERSHIP_TOKEN_FILE_NAME = "certificate-ownership-token.txt";
|
|
23
|
+
exports.AGENT_CONFIG_FILE_NAME = "alwaysai.agent.json";
|
|
24
|
+
exports.DEVICE_PRIVATE_KEY_FILE_NAME = `aai-claim-private-key_${(0, exports.shortenSystemId)()}.pem.key`;
|
|
25
|
+
exports.DEVICE_CERTIFICATE_FILE_NAME = `aai-claim-cert_${(0, exports.shortenSystemId)()}.pem.crt`;
|
|
26
|
+
exports.DEVICE_CLAIM_ID_FILE_NAME = `aai-claim-cert-id_${(0, exports.shortenSystemId)()}.txt`;
|
|
27
|
+
function getPrivateKeyFilePath() {
|
|
28
|
+
return (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, exports.DEVICE_PRIVATE_KEY_FILE_NAME);
|
|
29
|
+
}
|
|
30
|
+
exports.getPrivateKeyFilePath = getPrivateKeyFilePath;
|
|
31
|
+
function getCertificateFilePath() {
|
|
32
|
+
return (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, exports.DEVICE_CERTIFICATE_FILE_NAME);
|
|
33
|
+
}
|
|
34
|
+
exports.getCertificateFilePath = getCertificateFilePath;
|
|
35
|
+
function getRootCertificateFilePath() {
|
|
36
|
+
return (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, exports.AWS_ROOT_CERTIFICATE_FILE_NAME);
|
|
37
|
+
}
|
|
38
|
+
exports.getRootCertificateFilePath = getRootCertificateFilePath;
|
|
39
|
+
function getCredentialsFilePath() {
|
|
40
|
+
return (0, path_1.join)(constants_1.LOCAL_AAI_CFG_DIR, constants_1.DEVICE_TOKEN_FILE_NAME);
|
|
41
|
+
}
|
|
42
|
+
exports.getCredentialsFilePath = getCredentialsFilePath;
|
|
43
|
+
exports.BOOTSTRAP_CERTIFICATES_DIR_PATH = (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, exports.BOOTSTRAP_DIR_NAME);
|
|
44
|
+
exports.DEVICE_CLAIM_ID_FILE_PATH = (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, constants_1.DEVICE_TOKEN_FILE_NAME);
|
|
45
|
+
exports.BOOTSTRAP_DEVICE_PRIVATE_KEY_FILE_PATH = (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, exports.BOOTSTRAP_DIR_NAME, exports.BOOTSTRAP_DEVICE_PRIVATE_KEY_FILE_NAME);
|
|
46
|
+
exports.BOOTSTRAP_DEVICE_CERTIFICATE_FILE_PATH = (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, exports.BOOTSTRAP_DIR_NAME, exports.BOOTSTRAP_DEVICE_CERTIFICATE_FILE_NAME);
|
|
47
|
+
exports.BOOTSTRAP_CLAIM_ID_FILE_PATH = (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, exports.BOOTSTRAP_DIR_NAME, exports.BOOTSTRAP_CLAIM_ID_FILE_NAME);
|
|
48
|
+
exports.AWS_ROOT_CERTIFICATE_FILE_PATH = (0, path_1.join)(constants_1.LOCAL_CERT_AND_KEY_DIR, exports.AWS_ROOT_CERTIFICATE_FILE_NAME);
|
|
49
|
+
exports.AGENT_CONFIG_FILE_PATH = (0, path_1.join)(constants_1.ALWAYSAI_CONFIG_DIR, exports.AGENT_CONFIG_FILE_NAME);
|
|
50
|
+
//# sourceMappingURL=directories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directories.js","sourceRoot":"","sources":["../../src/util/directories.ts"],"names":[],"mappings":";;;AAAA,sDAKgC;AAChC,+BAA4B;AAC5B,gEAA0D;AAEnD,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,EAAE,GAAG,IAAA,4BAAW,GAAE,CAAC;IACzB,IAAI,EAAE,KAAK,YAAY,EAAE;QACvB,OAAO,MAAM,CAAC;KACf;SAAM,IAAI,EAAE,KAAK,aAAa,EAAE;QAC/B,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAPW,QAAA,eAAe,mBAO1B;AAEW,QAAA,kBAAkB,GAAG,wBAAwB,CAAC;AAC9C,QAAA,sCAAsC,GAAG,yBAAyB,IAAA,uBAAe,GAAE,UAAU,CAAC;AAC9F,QAAA,sCAAsC,GAAG,kBAAkB,IAAA,uBAAe,GAAE,UAAU,CAAC;AACvF,QAAA,4BAA4B,GAAG,qBAAqB,IAAA,uBAAe,GAAE,MAAM,CAAC;AAC5E,QAAA,8BAA8B,GAAG,mBAAmB,CAAC;AACrD,QAAA,qCAAqC,GAChD,iCAAiC,CAAC;AACvB,QAAA,sBAAsB,GAAG,qBAAqB,CAAC;AAC/C,QAAA,4BAA4B,GAAG,yBAAyB,IAAA,uBAAe,GAAE,UAAU,CAAC;AACpF,QAAA,4BAA4B,GAAG,kBAAkB,IAAA,uBAAe,GAAE,UAAU,CAAC;AAC7E,QAAA,yBAAyB,GAAG,qBAAqB,IAAA,uBAAe,GAAE,MAAM,CAAC;AAEtF,SAAgB,qBAAqB;IACnC,OAAO,IAAA,WAAI,EAAC,kCAAsB,EAAE,oCAA4B,CAAC,CAAC;AACpE,CAAC;AAFD,sDAEC;AAED,SAAgB,sBAAsB;IACpC,OAAO,IAAA,WAAI,EAAC,kCAAsB,EAAE,oCAA4B,CAAC,CAAC;AACpE,CAAC;AAFD,wDAEC;AAED,SAAgB,0BAA0B;IACxC,OAAO,IAAA,WAAI,EAAC,kCAAsB,EAAE,sCAA8B,CAAC,CAAC;AACtE,CAAC;AAFD,gEAEC;AAED,SAAgB,sBAAsB;IACpC,OAAO,IAAA,WAAI,EAAC,6BAAiB,EAAE,kCAAsB,CAAC,CAAC;AACzD,CAAC;AAFD,wDAEC;AAEY,QAAA,+BAA+B,GAAG,IAAA,WAAI,EACjD,kCAAsB,EACtB,0BAAkB,CACnB,CAAC;AACW,QAAA,yBAAyB,GAAG,IAAA,WAAI,EAC3C,kCAAsB,EACtB,kCAAsB,CACvB,CAAC;AAEW,QAAA,sCAAsC,GAAG,IAAA,WAAI,EACxD,kCAAsB,EACtB,0BAAkB,EAClB,8CAAsC,CACvC,CAAC;AAEW,QAAA,sCAAsC,GAAG,IAAA,WAAI,EACxD,kCAAsB,EACtB,0BAAkB,EAClB,8CAAsC,CACvC,CAAC;AAEW,QAAA,4BAA4B,GAAG,IAAA,WAAI,EAC9C,kCAAsB,EACtB,0BAAkB,EAClB,oCAA4B,CAC7B,CAAC;AAEW,QAAA,8BAA8B,GAAG,IAAA,WAAI,EAChD,kCAAsB,EACtB,sCAA8B,CAC/B,CAAC;AAEW,QAAA,sBAAsB,GAAG,IAAA,WAAI,EACxC,+BAAmB,EACnB,8BAAsB,CACvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-device-id.d.ts","sourceRoot":"","sources":["../../src/util/get-device-id.ts"],"names":[],"mappings":"AAKA,wBAAgB,WAAW,WAgB1B"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getDeviceId = void 0;
|
|
4
|
+
const directories_1 = require("../util/directories");
|
|
5
|
+
const alwayscli_1 = require("@alwaysai/alwayscli");
|
|
6
|
+
const config_nodejs_1 = require("@alwaysai/config-nodejs");
|
|
7
|
+
const t = require("io-ts");
|
|
8
|
+
function getDeviceId() {
|
|
9
|
+
const path = (0, directories_1.getCredentialsFilePath)();
|
|
10
|
+
const codec = t.type({
|
|
11
|
+
deviceId: t.union([t.string, t.undefined]),
|
|
12
|
+
});
|
|
13
|
+
const credentialsJsonFile = (0, config_nodejs_1.ConfigFile)({
|
|
14
|
+
path,
|
|
15
|
+
codec,
|
|
16
|
+
});
|
|
17
|
+
const config = credentialsJsonFile.readIfExists();
|
|
18
|
+
if (!config || !config.deviceId) {
|
|
19
|
+
throw new alwayscli_1.CliTerseError('Invalid device credentials! Please ensure you are using the device agent on a valid device.');
|
|
20
|
+
}
|
|
21
|
+
return config.deviceId;
|
|
22
|
+
}
|
|
23
|
+
exports.getDeviceId = getDeviceId;
|
|
24
|
+
//# sourceMappingURL=get-device-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-device-id.js","sourceRoot":"","sources":["../../src/util/get-device-id.ts"],"names":[],"mappings":";;;AAAA,qDAA6D;AAC7D,mDAAoD;AACpD,2DAAqD;AACrD,2BAA2B;AAE3B,SAAgB,WAAW;IACzB,MAAM,IAAI,GAAG,IAAA,oCAAsB,GAAE,CAAC;IACtC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC;QACnB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;KAC3C,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,IAAA,0BAAU,EAAC;QACrC,IAAI;QACJ,KAAK;KACN,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,mBAAmB,CAAC,YAAY,EAAE,CAAC;IAClD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC/B,MAAM,IAAI,yBAAa,CACrB,6FAA6F,CAC9F,CAAC;KACH;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAhBD,kCAgBC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare function httpClient(url: string, method: string, data?: string, headers?: object): Promise<any>;
|
|
2
|
+
export declare function microServiceHttpClient(service: string, path: string, method: string, data?: string): Promise<any>;
|
|
3
|
+
//# sourceMappingURL=http-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/util/http-client.ts"],"names":[],"mappings":"AAIA,wBAAsB,UAAU,CAC9B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,gBAcjB;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,gBAMd"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.microServiceHttpClient = exports.httpClient = void 0;
|
|
4
|
+
const node_fetch_1 = require("node-fetch");
|
|
5
|
+
const endpoints_1 = require("../endpoints");
|
|
6
|
+
const infrastructure_1 = require("alwaysai/lib/infrastructure");
|
|
7
|
+
async function httpClient(url, method, data, headers) {
|
|
8
|
+
const options = Object.assign({ method }, (data ? { body: data } : {}));
|
|
9
|
+
try {
|
|
10
|
+
const response = await (0, node_fetch_1.default)(url, options);
|
|
11
|
+
const code = response.status;
|
|
12
|
+
const contentType = response.headers.get("content-type");
|
|
13
|
+
if (contentType === "application/json") {
|
|
14
|
+
return await response.json();
|
|
15
|
+
}
|
|
16
|
+
else if (contentType.includes("text/plain")) {
|
|
17
|
+
return await response.text();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
catch (e) { }
|
|
21
|
+
}
|
|
22
|
+
exports.httpClient = httpClient;
|
|
23
|
+
async function microServiceHttpClient(service, path, method, data) {
|
|
24
|
+
const endpoint = (0, endpoints_1.serviceEndpointBuilder)(service, path);
|
|
25
|
+
const { getIdAuthorizationHeader } = (0, infrastructure_1.CliAuthenticationClient)();
|
|
26
|
+
const authorizationHeader = await getIdAuthorizationHeader();
|
|
27
|
+
return await httpClient(endpoint, method, data);
|
|
28
|
+
}
|
|
29
|
+
exports.microServiceHttpClient = microServiceHttpClient;
|
|
30
|
+
//# sourceMappingURL=http-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/util/http-client.ts"],"names":[],"mappings":";;;AAAA,2CAA+B;AAC/B,4CAAsD;AACtD,gEAAsE;AAE/D,KAAK,UAAU,UAAU,CAC9B,GAAW,EACX,MAAc,EACd,IAAa,EACb,OAAgB;IAEhB,MAAM,OAAO,mBAAK,MAAM,IAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC;IAC5D,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC;QAE7B,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACzD,IAAI,WAAW,KAAK,kBAAkB,EAAE;YACtC,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC9B;aAAM,IAAI,WAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YAC9C,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC9B;KACF;IAAC,OAAO,CAAC,EAAE,GAAE;AAChB,CAAC;AAlBD,gCAkBC;AAEM,KAAK,UAAU,sBAAsB,CAC1C,OAAe,EACf,IAAY,EACZ,MAAc,EACd,IAAa;IAEb,MAAM,QAAQ,GAAG,IAAA,kCAAsB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvD,MAAM,EAAE,wBAAwB,EAAE,GAAG,IAAA,wCAAuB,GAAE,CAAC;IAC/D,MAAM,mBAAmB,GAAG,MAAM,wBAAwB,EAAE,CAAC;IAC7D,OAAO,MAAM,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AAClD,CAAC;AAVD,wDAUC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/util/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,2BAA2B,CAAC;AAiBnC,eAAO,MAAM,MAAM,gBASjB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.logger = void 0;
|
|
4
|
+
const winston = require("winston");
|
|
5
|
+
require("winston-daily-rotate-file");
|
|
6
|
+
const path = require("path");
|
|
7
|
+
const constants_1 = require("alwaysai/lib/constants");
|
|
8
|
+
const environment_1 = require("../environment");
|
|
9
|
+
const LOG_LEVEL = environment_1.ALWAYSAI_LOG_LEVEL || "info";
|
|
10
|
+
const transports = environment_1.ALWAYSAI_LOG_TO_CONSOLE
|
|
11
|
+
? [new winston.transports.Console({ level: LOG_LEVEL })]
|
|
12
|
+
: [
|
|
13
|
+
new winston.transports.DailyRotateFile({
|
|
14
|
+
filename: path.join(constants_1.AAI_DIR, "agent-logs", "agent-logs.txt"),
|
|
15
|
+
maxSize: "5m",
|
|
16
|
+
maxFiles: "2d",
|
|
17
|
+
}),
|
|
18
|
+
];
|
|
19
|
+
exports.logger = winston.createLogger({
|
|
20
|
+
level: LOG_LEVEL,
|
|
21
|
+
format: winston.format.combine(winston.format.colorize(), winston.format.errors({ stack: true }), winston.format.splat(), winston.format.simple()),
|
|
22
|
+
transports,
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/util/logger.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACnC,qCAAmC;AACnC,6BAA6B;AAC7B,sDAAiD;AACjD,gDAA6E;AAE7E,MAAM,SAAS,GAAG,gCAAkB,IAAI,MAAM,CAAC;AAE/C,MAAM,UAAU,GAAG,qCAAuB;IACxC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC;QACE,IAAI,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC;YACrC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,mBAAO,EAAE,YAAY,EAAE,gBAAgB,CAAC;YAC5D,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;AAEO,QAAA,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IACzC,KAAK,EAAE,SAAS;IAChB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EACzB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EACtC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EACtB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CACxB;IACD,UAAU;CACX,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-in-dir.d.ts","sourceRoot":"","sources":["../../src/util/run-in-dir.ts"],"names":[],"mappings":"AAAA,wBAAsB,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,SAAS,GAAG,EAC3D,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,EACvB,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,MAAM,cAWZ"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runInDir = void 0;
|
|
4
|
+
async function runInDir(func, args, dir) {
|
|
5
|
+
const origCwd = process.cwd();
|
|
6
|
+
let out;
|
|
7
|
+
try {
|
|
8
|
+
process.chdir(dir);
|
|
9
|
+
out = await func(...args);
|
|
10
|
+
}
|
|
11
|
+
finally {
|
|
12
|
+
process.chdir(origCwd);
|
|
13
|
+
}
|
|
14
|
+
return out;
|
|
15
|
+
}
|
|
16
|
+
exports.runInDir = runInDir;
|
|
17
|
+
//# sourceMappingURL=run-in-dir.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-in-dir.js","sourceRoot":"","sources":["../../src/util/run-in-dir.ts"],"names":[],"mappings":";;;AAAO,KAAK,UAAU,QAAQ,CAC5B,IAAuB,EACvB,IAAO,EACP,GAAW;IAEX,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC9B,IAAI,GAAM,CAAC;IACX,IAAI;QACF,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;KAC3B;YAAS;QACR,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KACxB;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAdD,4BAcC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sleep.d.ts","sourceRoot":"","sources":["../../src/util/sleep.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAAE,EAAE,MAAM,oBAIvC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sleep.js","sourceRoot":"","sources":["../../src/util/sleep.ts"],"names":[],"mappings":";;AAAA,SAAwB,KAAK,CAAC,EAAU;IACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAJD,wBAIC"}
|