@phystack/cli 4.3.40-dev

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 (192) hide show
  1. package/LICENSE.md +19 -0
  2. package/README.md +24 -0
  3. package/bin/index.js +2 -0
  4. package/dist/commands/app/build-apps.js +66 -0
  5. package/dist/commands/app/build-apps.js.map +1 -0
  6. package/dist/commands/app/build-container-remote.js +171 -0
  7. package/dist/commands/app/build-container-remote.js.map +1 -0
  8. package/dist/commands/app/build-container.js +330 -0
  9. package/dist/commands/app/build-container.js.map +1 -0
  10. package/dist/commands/app/build.js +393 -0
  11. package/dist/commands/app/build.js.map +1 -0
  12. package/dist/commands/app/create.js +451 -0
  13. package/dist/commands/app/create.js.map +1 -0
  14. package/dist/commands/app/deploy.js +176 -0
  15. package/dist/commands/app/deploy.js.map +1 -0
  16. package/dist/commands/app/device-picker.js +150 -0
  17. package/dist/commands/app/device-picker.js.map +1 -0
  18. package/dist/commands/app/import.js +303 -0
  19. package/dist/commands/app/import.js.map +1 -0
  20. package/dist/commands/app/list.js +26 -0
  21. package/dist/commands/app/list.js.map +1 -0
  22. package/dist/commands/app/publish.js +327 -0
  23. package/dist/commands/app/publish.js.map +1 -0
  24. package/dist/commands/app/settings.js +129 -0
  25. package/dist/commands/app/settings.js.map +1 -0
  26. package/dist/commands/app/types.js +13 -0
  27. package/dist/commands/app/types.js.map +1 -0
  28. package/dist/commands/app/upload-description.js +139 -0
  29. package/dist/commands/app/upload-description.js.map +1 -0
  30. package/dist/commands/app/upload-settings.js +29 -0
  31. package/dist/commands/app/upload-settings.js.map +1 -0
  32. package/dist/commands/app/utils.js +86 -0
  33. package/dist/commands/app/utils.js.map +1 -0
  34. package/dist/commands/auth/login.js +111 -0
  35. package/dist/commands/auth/login.js.map +1 -0
  36. package/dist/commands/auth/logout.js +19 -0
  37. package/dist/commands/auth/logout.js.map +1 -0
  38. package/dist/commands/descriptor/create.js +143 -0
  39. package/dist/commands/descriptor/create.js.map +1 -0
  40. package/dist/commands/descriptor/index.js +36 -0
  41. package/dist/commands/descriptor/index.js.map +1 -0
  42. package/dist/commands/descriptor/publish.js +163 -0
  43. package/dist/commands/descriptor/publish.js.map +1 -0
  44. package/dist/commands/descriptor/show.js +68 -0
  45. package/dist/commands/descriptor/show.js.map +1 -0
  46. package/dist/commands/dev/develop.js +175 -0
  47. package/dist/commands/dev/develop.js.map +1 -0
  48. package/dist/commands/dev/forward.js +118 -0
  49. package/dist/commands/dev/forward.js.map +1 -0
  50. package/dist/commands/dev/index.js +66 -0
  51. package/dist/commands/dev/index.js.map +1 -0
  52. package/dist/commands/dev/list.js +96 -0
  53. package/dist/commands/dev/list.js.map +1 -0
  54. package/dist/commands/dev/screen-devtools.js +156 -0
  55. package/dist/commands/dev/screen-devtools.js.map +1 -0
  56. package/dist/commands/dev/select.js +118 -0
  57. package/dist/commands/dev/select.js.map +1 -0
  58. package/dist/commands/dev/shell.js +171 -0
  59. package/dist/commands/dev/shell.js.map +1 -0
  60. package/dist/commands/dev/vnc.js +75 -0
  61. package/dist/commands/dev/vnc.js.map +1 -0
  62. package/dist/commands/device/select.js +118 -0
  63. package/dist/commands/device/select.js.map +1 -0
  64. package/dist/commands/flash.js +1120 -0
  65. package/dist/commands/flash.js.map +1 -0
  66. package/dist/commands/inst/create.js +55 -0
  67. package/dist/commands/inst/create.js.map +1 -0
  68. package/dist/commands/inst/index.js +15 -0
  69. package/dist/commands/inst/index.js.map +1 -0
  70. package/dist/commands/inst/list.js +26 -0
  71. package/dist/commands/inst/list.js.map +1 -0
  72. package/dist/commands/legacydev/debug.js +11 -0
  73. package/dist/commands/legacydev/debug.js.map +1 -0
  74. package/dist/commands/legacydev/deploy.js +15 -0
  75. package/dist/commands/legacydev/deploy.js.map +1 -0
  76. package/dist/commands/legacydev/dumpTwin.js +27 -0
  77. package/dist/commands/legacydev/dumpTwin.js.map +1 -0
  78. package/dist/commands/legacydev/forward.js +104 -0
  79. package/dist/commands/legacydev/forward.js.map +1 -0
  80. package/dist/commands/legacydev/index.js +188 -0
  81. package/dist/commands/legacydev/index.js.map +1 -0
  82. package/dist/commands/legacydev/invoke.js +29 -0
  83. package/dist/commands/legacydev/invoke.js.map +1 -0
  84. package/dist/commands/legacydev/js.js +69 -0
  85. package/dist/commands/legacydev/js.js.map +1 -0
  86. package/dist/commands/legacydev/list.js +196 -0
  87. package/dist/commands/legacydev/list.js.map +1 -0
  88. package/dist/commands/legacydev/logs.js +60 -0
  89. package/dist/commands/legacydev/logs.js.map +1 -0
  90. package/dist/commands/legacydev/modules.js +50 -0
  91. package/dist/commands/legacydev/modules.js.map +1 -0
  92. package/dist/commands/legacydev/move.js +23 -0
  93. package/dist/commands/legacydev/move.js.map +1 -0
  94. package/dist/commands/legacydev/ota.js +88 -0
  95. package/dist/commands/legacydev/ota.js.map +1 -0
  96. package/dist/commands/legacydev/patchTwin.js +21 -0
  97. package/dist/commands/legacydev/patchTwin.js.map +1 -0
  98. package/dist/commands/legacydev/pin.js +23 -0
  99. package/dist/commands/legacydev/pin.js.map +1 -0
  100. package/dist/commands/legacydev/pub.js +25 -0
  101. package/dist/commands/legacydev/pub.js.map +1 -0
  102. package/dist/commands/legacydev/rdp.js +64 -0
  103. package/dist/commands/legacydev/rdp.js.map +1 -0
  104. package/dist/commands/legacydev/screen-devtools.js +142 -0
  105. package/dist/commands/legacydev/screen-devtools.js.map +1 -0
  106. package/dist/commands/legacydev/settingsShow.js +89 -0
  107. package/dist/commands/legacydev/settingsShow.js.map +1 -0
  108. package/dist/commands/legacydev/settingsUpdate.js +114 -0
  109. package/dist/commands/legacydev/settingsUpdate.js.map +1 -0
  110. package/dist/commands/legacydev/shell.js +167 -0
  111. package/dist/commands/legacydev/shell.js.map +1 -0
  112. package/dist/commands/legacydev/showTwin.js +9 -0
  113. package/dist/commands/legacydev/showTwin.js.map +1 -0
  114. package/dist/commands/legacydev/statusLog.js +56 -0
  115. package/dist/commands/legacydev/statusLog.js.map +1 -0
  116. package/dist/commands/legacydev/sub.js +39 -0
  117. package/dist/commands/legacydev/sub.js.map +1 -0
  118. package/dist/commands/legacydev/vnc.js +61 -0
  119. package/dist/commands/legacydev/vnc.js.map +1 -0
  120. package/dist/commands/tenant/index.js +21 -0
  121. package/dist/commands/tenant/index.js.map +1 -0
  122. package/dist/commands/tenant/list.js +14 -0
  123. package/dist/commands/tenant/list.js.map +1 -0
  124. package/dist/commands/tenant/select.js +87 -0
  125. package/dist/commands/tenant/select.js.map +1 -0
  126. package/dist/commands/vm/create.js +718 -0
  127. package/dist/commands/vm/create.js.map +1 -0
  128. package/dist/commands/vm/index.js +130 -0
  129. package/dist/commands/vm/index.js.map +1 -0
  130. package/dist/commands/vm/list.js +124 -0
  131. package/dist/commands/vm/list.js.map +1 -0
  132. package/dist/commands/vm/logs.js +66 -0
  133. package/dist/commands/vm/logs.js.map +1 -0
  134. package/dist/commands/vm/remove.js +180 -0
  135. package/dist/commands/vm/remove.js.map +1 -0
  136. package/dist/commands/vm/shell.js +400 -0
  137. package/dist/commands/vm/shell.js.map +1 -0
  138. package/dist/commands/vm/start.js +861 -0
  139. package/dist/commands/vm/start.js.map +1 -0
  140. package/dist/commands/vm/stop.js +232 -0
  141. package/dist/commands/vm/stop.js.map +1 -0
  142. package/dist/index.js +158 -0
  143. package/dist/index.js.map +1 -0
  144. package/dist/services/admin-api/admin-api.types.js +3 -0
  145. package/dist/services/admin-api/admin-api.types.js.map +1 -0
  146. package/dist/services/admin-api/device-modules.admin-api.service.js +58 -0
  147. package/dist/services/admin-api/device-modules.admin-api.service.js.map +1 -0
  148. package/dist/services/admin-api/devices-admin-api.service.js +213 -0
  149. package/dist/services/admin-api/devices-admin-api.service.js.map +1 -0
  150. package/dist/services/admin-api/gridapps-admin-api.service.js +59 -0
  151. package/dist/services/admin-api/gridapps-admin-api.service.js.map +1 -0
  152. package/dist/services/admin-api/index.js +157 -0
  153. package/dist/services/admin-api/index.js.map +1 -0
  154. package/dist/services/admin-api/installations-admin-api.service.js +29 -0
  155. package/dist/services/admin-api/installations-admin-api.service.js.map +1 -0
  156. package/dist/services/admin-api/organizations-admin-api.service.js +53 -0
  157. package/dist/services/admin-api/organizations-admin-api.service.js.map +1 -0
  158. package/dist/services/auth/device-grant-auth.service.js +224 -0
  159. package/dist/services/auth/device-grant-auth.service.js.map +1 -0
  160. package/dist/services/phyhub/index.js +200 -0
  161. package/dist/services/phyhub/index.js.map +1 -0
  162. package/dist/services/phyhub/phyhub.types.js +3 -0
  163. package/dist/services/phyhub/phyhub.types.js.map +1 -0
  164. package/dist/utils/device-fetcher.js +92 -0
  165. package/dist/utils/device-fetcher.js.map +1 -0
  166. package/dist/utils/devices.js +41 -0
  167. package/dist/utils/devices.js.map +1 -0
  168. package/dist/utils/docker-credentials.js +720 -0
  169. package/dist/utils/docker-credentials.js.map +1 -0
  170. package/dist/utils/emulated-device.js +91 -0
  171. package/dist/utils/emulated-device.js.map +1 -0
  172. package/dist/utils/index.js +180 -0
  173. package/dist/utils/index.js.map +1 -0
  174. package/dist/utils/modules.js +36 -0
  175. package/dist/utils/modules.js.map +1 -0
  176. package/dist/utils/org-selector.js +108 -0
  177. package/dist/utils/org-selector.js.map +1 -0
  178. package/dist/utils/proxy.js +31 -0
  179. package/dist/utils/proxy.js.map +1 -0
  180. package/dist/utils/registry-credentials.js +113 -0
  181. package/dist/utils/registry-credentials.js.map +1 -0
  182. package/dist/utils/statuses.js +124 -0
  183. package/dist/utils/statuses.js.map +1 -0
  184. package/dist/utils/templates.js +197 -0
  185. package/dist/utils/templates.js.map +1 -0
  186. package/dist/utils/tenant-storage.js +88 -0
  187. package/dist/utils/tenant-storage.js.map +1 -0
  188. package/dist/utils/vm.js +434 -0
  189. package/dist/utils/vm.js.map +1 -0
  190. package/dist/utils/with-spinner.js +20 -0
  191. package/dist/utils/with-spinner.js.map +1 -0
  192. package/package.json +103 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flash.js","sourceRoot":"","sources":["../../src/commands/flash.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const chalk_1 = __importDefault(require("chalk"));
7
+ const with_spinner_1 = __importDefault(require("../../utils/with-spinner"));
8
+ const types_1 = require("../app/types");
9
+ const admin_api_1 = require("../../services/admin-api");
10
+ const getDeviceType = (projectType) => {
11
+ switch (projectType) {
12
+ case types_1.ProjectType.Basic:
13
+ return admin_api_1.InstallationDeviceTypeEnum.CLOUD;
14
+ case types_1.ProjectType.React:
15
+ return admin_api_1.InstallationDeviceTypeEnum.PWA;
16
+ case types_1.ProjectType.Mobile:
17
+ return admin_api_1.InstallationDeviceTypeEnum.MOBILE_PWA;
18
+ case types_1.ProjectType.EdgeNode:
19
+ return admin_api_1.InstallationDeviceTypeEnum.IOT;
20
+ default:
21
+ return undefined;
22
+ }
23
+ };
24
+ const create = async ({ appId, installationName, provider = 'app-container', release, organizationId, projectType, }) => {
25
+ const deviceType = getDeviceType(projectType);
26
+ if (!deviceType) {
27
+ throw new Error('Device type is invalid');
28
+ }
29
+ const gridAppReleases = !release
30
+ ? await (0, with_spinner_1.default)(() => (0, admin_api_1.adminApi)().gridapps.listGridappBootReleases(deviceType), 'Fetching grid app releases. Please wait...')
31
+ : [release];
32
+ const latestGridAppRelease = gridAppReleases.length ? gridAppReleases[0] : '';
33
+ if (!latestGridAppRelease) {
34
+ throw new Error('Grid app release version is invalid');
35
+ }
36
+ const data = {
37
+ appContainerGridappId: appId,
38
+ architecture: 'x64',
39
+ autoBuild: true,
40
+ deviceType,
41
+ displayName: `dev-${installationName}`,
42
+ installationGroupId: '',
43
+ organizationId,
44
+ provider: provider || 'app-container',
45
+ release: release || latestGridAppRelease,
46
+ };
47
+ const result = await (0, with_spinner_1.default)(() => (0, admin_api_1.adminApi)().installations.createInstallation(data), 'Creating an installation. Please wait...');
48
+ const { id, appName: slug } = result;
49
+ // Change from omborigrid.com to phygrid.com and update the path structure
50
+ const installationUrl = `https://console.phygrid.com/organisations/${organizationId}/apps/installations/${id}`;
51
+ console.log(chalk_1.default.green(`✓ Successfully created installation. Check it here: ${installationUrl}`));
52
+ return { id, slug };
53
+ };
54
+ exports.default = create;
55
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/inst/create.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAC1B,4EAAmD;AACnD,wCAA2C;AAC3C,wDAIkC;AAElC,MAAM,aAAa,GAAG,CACpB,WAAwB,EACgB,EAAE;IAC1C,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,mBAAW,CAAC,KAAK;YACpB,OAAO,sCAA0B,CAAC,KAAK,CAAC;QAC1C,KAAK,mBAAW,CAAC,KAAK;YACpB,OAAO,sCAA0B,CAAC,GAAG,CAAC;QACxC,KAAK,mBAAW,CAAC,MAAM;YACrB,OAAO,sCAA0B,CAAC,UAAU,CAAC;QAC/C,KAAK,mBAAW,CAAC,QAAQ;YACvB,OAAO,sCAA0B,CAAC,GAAG,CAAC;QACxC;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,KAAK,EAAE,EACpB,KAAK,EACL,gBAAgB,EAChB,QAAQ,GAAG,eAAe,EAC1B,OAAO,EACP,cAAc,EACd,WAAW,GAQZ,EAAyC,EAAE;IAC1C,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,eAAe,GAAG,CAAC,OAAO;QAC9B,CAAC,CAAC,MAAM,IAAA,sBAAW,EACf,GAAG,EAAE,CAAC,IAAA,oBAAQ,GAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,UAAU,CAAC,EAC7D,4CAA4C,CAC7C;QACH,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAEd,MAAM,oBAAoB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,IAAI,GAA8B;QACtC,qBAAqB,EAAE,KAAK;QAC5B,YAAY,EAAE,KAAK;QACnB,SAAS,EAAE,IAAI;QACf,UAAU;QACV,WAAW,EAAE,OAAO,gBAAgB,EAAE;QACtC,mBAAmB,EAAE,EAAE;QACvB,cAAc;QACd,QAAQ,EAAE,QAAQ,IAAI,eAAe;QACrC,OAAO,EAAE,OAAO,IAAI,oBAAoB;KACzC,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAW,EAC9B,GAAG,EAAE,CAAC,IAAA,oBAAQ,GAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,EACvD,0CAA0C,CAC3C,CAAC;IAEF,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAErC,0EAA0E;IAC1E,MAAM,eAAe,GAAG,6CAA6C,cAAc,uBAAuB,EAAE,EAAE,CAAC;IAC/G,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,KAAK,CAAC,uDAAuD,eAAe,EAAE,CAAC,CACtF,CAAC;IAEF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC,CAAC;AAEF,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const commander_1 = __importDefault(require("commander"));
7
+ const utils_1 = require("../../utils");
8
+ const list_1 = __importDefault(require("./list"));
9
+ const inst = commander_1.default.command('inst').description('Installations management');
10
+ inst
11
+ .command('list [<search-string>]')
12
+ .description('List installations')
13
+ .action((0, utils_1.handleError)(list_1.default));
14
+ exports.default = inst;
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/inst/index.ts"],"names":[],"mappings":";;;;;AAAA,0DAAgC;AAChC,uCAA0C;AAE1C,kDAA0B;AAE1B,MAAM,IAAI,GAAG,mBAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;AAE7E,IAAI;KACD,OAAO,CAAC,wBAAwB,CAAC;KACjC,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,IAAA,mBAAW,EAAC,cAAI,CAAC,CAAC,CAAC;AAE7B,kBAAe,IAAI,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("../../utils");
4
+ const admin_api_1 = require("../../services/admin-api");
5
+ exports.default = async (search) => {
6
+ const insts = await (0, admin_api_1.adminApi)().installations.listInstallations();
7
+ const orgs = await (0, admin_api_1.adminApi)().organizations.listOrganizations();
8
+ const orgsById = orgs.reduce((acc, org) => {
9
+ acc[org.id] = org;
10
+ return acc;
11
+ }, {});
12
+ const data = insts
13
+ .filter(({ provider }) => provider === 'app-container')
14
+ .filter(({ organizationId }) => orgsById[organizationId])
15
+ .map(({ organizationId, appName, ...rest }) => ({
16
+ fullName: `${orgsById[organizationId].organizationName}.${appName}`,
17
+ ...rest,
18
+ }));
19
+ (0, utils_1.printTable)({
20
+ data,
21
+ fields: ['deviceType', 'fullName', 'displayName'],
22
+ sort: 'fullName',
23
+ search,
24
+ });
25
+ };
26
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/inst/list.ts"],"names":[],"mappings":";;AAAA,uCAAyC;AACzC,wDAAkE;AAElE,kBAAe,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,KAAK,GAAG,MAAM,IAAA,oBAAQ,GAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC;IACjE,MAAM,IAAI,GAAG,MAAM,IAAA,oBAAQ,GAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC;IAChE,MAAM,QAAQ,GAAmC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACxE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;QAClB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,IAAI,GAAG,KAAK;SACf,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,KAAK,eAAe,CAAC;SACtD,MAAM,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;SACxD,GAAG,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9C,QAAQ,EAAE,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,gBAAgB,IAAI,OAAO,EAAE;QACnE,GAAG,IAAI;KACR,CAAC,CAAC,CAAC;IAEN,IAAA,kBAAU,EAAC;QACT,IAAI;QACJ,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,aAAa,CAAC;QACjD,IAAI,EAAE,UAAU;QAChB,MAAM;KACP,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const forward_1 = __importDefault(require("./forward"));
7
+ async function debug(deviceName, options) {
8
+ return (0, forward_1.default)(deviceName, 'http://localhost:1234', options);
9
+ }
10
+ exports.default = debug;
11
+ //# sourceMappingURL=debug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/commands/legacydev/debug.ts"],"names":[],"mappings":";;;;;AAAA,wDAAgC;AAEhC,KAAK,UAAU,KAAK,CAAC,UAAU,EAAE,OAAO;IACtC,OAAO,IAAA,iBAAO,EAAC,UAAU,EAAE,uBAAuB,EAAE,OAAO,CAAC,CAAC;AAC/D,CAAC;AAED,kBAAe,KAAK,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const modules_1 = require("../../utils/modules");
4
+ const admin_api_1 = require("../../services/admin-api");
5
+ async function deploy(deviceName) {
6
+ const modules = (0, modules_1.getModules)();
7
+ const forceModules = [];
8
+ const data = await (0, admin_api_1.adminApi)().devices.deployDeviceModules(deviceName, {
9
+ modules,
10
+ forceModules,
11
+ });
12
+ data.forEach(({ name, tag }) => console.log(name, tag.split(':').pop()));
13
+ }
14
+ exports.default = deploy;
15
+ //# sourceMappingURL=deploy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/commands/legacydev/deploy.ts"],"names":[],"mappings":";;AAAA,iDAAiD;AACjD,wDAAoD;AAEpD,KAAK,UAAU,MAAM,CAAC,UAAU;IAC9B,MAAM,OAAO,GAAG,IAAA,oBAAU,GAAE,CAAC;IAE7B,MAAM,YAAY,GAAG,EAAE,CAAC;IAExB,MAAM,IAAI,GAAG,MAAM,IAAA,oBAAQ,GAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,UAAU,EAAE;QACpE,OAAO;QACP,YAAY;KACb,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const devices_1 = require("../../utils/devices");
4
+ async function config(deviceName) {
5
+ const data = await (0, devices_1.fetchAllDevices)([
6
+ 'type',
7
+ 'status',
8
+ 'statusLog',
9
+ 'env',
10
+ 'serial',
11
+ 'createdAt',
12
+ 'updatedAt',
13
+ 'name',
14
+ 'edge',
15
+ 'modules',
16
+ ]);
17
+ for (const entry of data.data.docs) {
18
+ if (entry.uuid === deviceName ||
19
+ entry.displayName === deviceName ||
20
+ entry.name === deviceName) {
21
+ console.log(JSON.stringify(entry, null, 1));
22
+ return;
23
+ }
24
+ }
25
+ }
26
+ exports.default = config;
27
+ //# sourceMappingURL=dumpTwin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dumpTwin.js","sourceRoot":"","sources":["../../../src/commands/legacydev/dumpTwin.ts"],"names":[],"mappings":";;AAAA,iDAAsD;AAEtD,KAAK,UAAU,MAAM,CAAC,UAAU;IAC9B,MAAM,IAAI,GAAG,MAAM,IAAA,yBAAe,EAAC;QACjC,MAAM;QACN,QAAQ;QACR,WAAW;QACX,KAAK;QACL,QAAQ;QACR,WAAW;QACX,WAAW;QACX,MAAM;QACN,MAAM;QACN,SAAS;KACV,CAAC,CAAC;IAEH,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACnC,IACE,KAAK,CAAC,IAAI,KAAK,UAAU;YACzB,KAAK,CAAC,WAAW,KAAK,UAAU;YAChC,KAAK,CAAC,IAAI,KAAK,UAAU,EACzB,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;IACH,CAAC;AACH,CAAC;AAED,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const websocket_stream_1 = __importDefault(require("websocket-stream"));
7
+ const child_process_1 = __importDefault(require("child_process"));
8
+ const net_1 = __importDefault(require("net"));
9
+ const fs_1 = __importDefault(require("fs"));
10
+ const chalk_1 = __importDefault(require("chalk"));
11
+ const path_1 = __importDefault(require("path"));
12
+ const os_1 = __importDefault(require("os"));
13
+ const url_1 = __importDefault(require("url"));
14
+ const admin_api_1 = require("../../services/admin-api");
15
+ async function forward(deviceName, fwdUrl, options) {
16
+ const parsed = url_1.default.parse(fwdUrl);
17
+ const isHttp = parsed.protocol === 'http:';
18
+ const isHttps = parsed.protocol === 'https:';
19
+ if (!isHttp && !isHttps)
20
+ throw new Error('Can only forward http and https urls');
21
+ let remotePort = parsed.port;
22
+ if (remotePort === null) {
23
+ if (isHttp)
24
+ remotePort = '80';
25
+ if (isHttps)
26
+ remotePort = '443';
27
+ }
28
+ const remoteHost = parsed.hostname;
29
+ const forwardedUrl = { ...parsed, host: null, href: null, hostname: 'localhost' };
30
+ console.log(chalk_1.default.dim('> creating keypair'));
31
+ const keyfile = path_1.default.join(os_1.default.tmpdir(), `gridapp${Math.floor(Math.random() * 1000)}.key`);
32
+ if (fs_1.default.existsSync(keyfile)) {
33
+ fs_1.default.unlinkSync(keyfile);
34
+ }
35
+ if (fs_1.default.existsSync(`${keyfile}.pub`)) {
36
+ fs_1.default.unlinkSync(`${keyfile}.pub`);
37
+ }
38
+ child_process_1.default.execSync(`ssh-keygen -t ed25519 -f ${keyfile} -N ""`);
39
+ const key = fs_1.default.readFileSync(`${keyfile}.pub`).toString();
40
+ console.log(chalk_1.default.dim('> starting session'));
41
+ const { url, auth, isPhyos, } = await (0, admin_api_1.adminApi)().devices.startDeviceShellSession(deviceName, { key });
42
+ console.log(chalk_1.default.dim('> opening local service'));
43
+ const port = Math.floor(10000 + ((Math.random() * 100000) % 10000));
44
+ const fwdPort = Math.floor(10000 + ((Math.random() * 100000) % 10000));
45
+ forwardedUrl.port = `${fwdPort}`;
46
+ // wait for a single connection
47
+ const connPromise = new Promise((resolve) => {
48
+ const server = net_1.default.createServer((c) => {
49
+ server.close();
50
+ resolve(c);
51
+ });
52
+ server.listen(port, () => console.log(chalk_1.default.dim(`> ssh listening on port ${chalk_1.default.blue(port)}`)));
53
+ });
54
+ child_process_1.default.spawn('ssh', [
55
+ `${isPhyos ? 'phygrid' : 'ombori'}@localhost`,
56
+ '-L',
57
+ `0.0.0.0:${fwdPort}:${remoteHost}:${remotePort}`,
58
+ '-p',
59
+ `${port}`,
60
+ '-o',
61
+ 'UserKnownHostsFile=/dev/null',
62
+ '-o',
63
+ 'StrictHostKeyChecking=no',
64
+ '-o',
65
+ 'ServerAliveInterval=60',
66
+ '-N',
67
+ '-i',
68
+ keyfile,
69
+ ], { stdio: 'inherit' });
70
+ const conn = await connPromise;
71
+ const tgt = url_1.default.format(forwardedUrl);
72
+ console.log(chalk_1.default.dim(`Url ${chalk_1.default.blue(fwdUrl)} forwarded to ${chalk_1.default.bold(chalk_1.default.green(tgt))}`));
73
+ console.log(chalk_1.default.dim('> client connected'));
74
+ conn.on('end', () => {
75
+ console.log(chalk_1.default.dim('> client disconnected'));
76
+ });
77
+ // removing key file
78
+ setTimeout(() => {
79
+ fs_1.default.unlinkSync(keyfile);
80
+ }, 10000);
81
+ const exited = new Promise((resolve, reject) => {
82
+ const ws = (0, websocket_stream_1.default)(url, { headers: { Authorization: `Bearer ${auth}` } });
83
+ console.log(chalk_1.default.dim(`> connection opened`));
84
+ console.log(chalk_1.default.dim('Opening browser'));
85
+ if (process.platform === 'darwin')
86
+ child_process_1.default.spawn('open', [tgt]);
87
+ if (process.platform === 'win32')
88
+ child_process_1.default.exec(`start ${tgt}`);
89
+ conn.pipe(ws);
90
+ ws.pipe(conn);
91
+ ws.on('error', () => {
92
+ console.log(chalk_1.default.red('> socket error'));
93
+ reject();
94
+ });
95
+ ws.on('close', () => {
96
+ console.log(chalk_1.default.dim('> socket closed'));
97
+ resolve();
98
+ });
99
+ });
100
+ await new Promise((resolve) => setTimeout(resolve, 3000));
101
+ return exited;
102
+ }
103
+ exports.default = forward;
104
+ //# sourceMappingURL=forward.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forward.js","sourceRoot":"","sources":["../../../src/commands/legacydev/forward.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const commander_1 = __importDefault(require("commander"));
7
+ const inquirer_1 = __importDefault(require("inquirer"));
8
+ const list_1 = require("./list");
9
+ const modules_1 = __importDefault(require("./modules"));
10
+ const logs_1 = __importDefault(require("./logs"));
11
+ const invoke_1 = __importDefault(require("./invoke"));
12
+ const shell_1 = __importDefault(require("./shell"));
13
+ const settingsShow_1 = __importDefault(require("./settingsShow"));
14
+ const settingsUpdate_1 = __importDefault(require("./settingsUpdate"));
15
+ const deploy_1 = __importDefault(require("./deploy"));
16
+ const showTwin_1 = __importDefault(require("./showTwin"));
17
+ const patchTwin_1 = __importDefault(require("./patchTwin"));
18
+ const dumpTwin_1 = __importDefault(require("./dumpTwin"));
19
+ const pub_1 = __importDefault(require("./pub"));
20
+ const sub_1 = __importDefault(require("./sub"));
21
+ const vnc_1 = __importDefault(require("./vnc"));
22
+ const debug_1 = __importDefault(require("./debug"));
23
+ const forward_1 = __importDefault(require("./forward"));
24
+ const move_1 = __importDefault(require("./move"));
25
+ const js_1 = __importDefault(require("./js"));
26
+ const pin_1 = __importDefault(require("./pin"));
27
+ const statusLog_1 = __importDefault(require("./statusLog"));
28
+ const ota_1 = __importDefault(require("./ota"));
29
+ const utils_1 = require("../../utils");
30
+ const dev = commander_1.default.command('legacydev').description('Legacy compute devices management');
31
+ dev
32
+ .command('list [filters]')
33
+ .description('List compute devices')
34
+ .option('-l --long', 'Output more data (organisation, app, etc)')
35
+ .option('-s --sort <field>', 'Field to sort by')
36
+ .option('-o --output <values>', 'List of values to display')
37
+ .option('-j --json', 'Print result as JSON')
38
+ .option('-v --invert', 'Invert match for filters')
39
+ .option('-w --watch <interval>', 'Update and print list every <interval> seconds')
40
+ .option('-p, --phyhub', 'List devices from Phyhub')
41
+ .description(`Default fields: ${list_1.DEFAULT_FIELDS}\n` +
42
+ `Long fields: ${list_1.LONG_FIELDS}\n` +
43
+ `Filtering examples: \n` +
44
+ ` phy dev list foo - list devices containing a text in any field \n` +
45
+ ` phy dev list '!foo' - list devices which do not have a specified text in any field \n` +
46
+ ` phy dev list status=ok - list devices with given status\n` +
47
+ ` phy dev list some org=acme status!=ok - multiple conditions`)
48
+ .action((search, options, command) => {
49
+ const handler = options.phyhub ? list_1.listDevicesPhyhub : list_1.listDevices;
50
+ return handler(search, options, command);
51
+ });
52
+ dev
53
+ .command('modules <device>')
54
+ .description('List modules running on a device')
55
+ .action((0, utils_1.handleError)(modules_1.default));
56
+ dev
57
+ .command('status <device>')
58
+ .description('List modules running on a device')
59
+ .action((0, utils_1.handleError)(modules_1.default));
60
+ dev
61
+ .command('statuslog <device>')
62
+ .description('Show device status log')
63
+ .action((0, utils_1.handleError)(statusLog_1.default));
64
+ dev
65
+ .command('logs <device> <module>')
66
+ .option('-n --lines <numLines>', 'Number of lines to display')
67
+ .option('--filter <filter>', 'Only display messages containing specified pattern')
68
+ .option('-t --timestamps', 'Display time stamps')
69
+ .option('-f --follow', 'Stream logs continuously')
70
+ .description('Shown logs for a module running in a device')
71
+ .action((0, utils_1.handleError)(logs_1.default));
72
+ dev
73
+ .command('invoke <device> <module> <method> [<payload>]')
74
+ .option('-a --all', 'Do not prettify output')
75
+ .description('Execute a method on a module')
76
+ .usage('device module method - call method with no payload')
77
+ .usage('device module method "{some: "JSON data", is: true, here: 123}"` - call method providing payload in JSON-format')
78
+ .usage('device module method "-" - call method reading payload from stdin')
79
+ .action((0, utils_1.handleError)(invoke_1.default));
80
+ const settings = dev
81
+ .command('settings <device>')
82
+ .description('Device module settings-related command');
83
+ settings
84
+ .command('show <device>')
85
+ .description('Display module settings')
86
+ .action((0, utils_1.handleError)(settingsShow_1.default));
87
+ settings
88
+ .command('update <device> [<module@version>...]')
89
+ .description('Update module settings')
90
+ .usage('device acme.mymodule@1.2.3 - update module "acme.mymodule" to version "1.2.3"')
91
+ .usage('device acme.mymodule@latest - update module "acme.mymodule" to the latest available version')
92
+ .usage('device acme.mymodule.someSetting=123 - update module setting')
93
+ .action((0, utils_1.handleError)(settingsUpdate_1.default));
94
+ const twin = dev
95
+ .command('twin')
96
+ .description('Device edge configuration-related commands');
97
+ twin
98
+ .command('show <device>')
99
+ .description('Display device edge configuration')
100
+ .action((0, utils_1.handleError)(showTwin_1.default));
101
+ twin
102
+ .command('patch <device> <patch>')
103
+ .description('Update device edge configuration')
104
+ .action((0, utils_1.handleError)(patchTwin_1.default));
105
+ twin
106
+ .command('dump <device>')
107
+ .description('Dump device edge configuration')
108
+ .action((0, utils_1.handleError)(dumpTwin_1.default));
109
+ dev
110
+ .command('deploy <device>')
111
+ .description('Deploy config to a device')
112
+ .action((0, utils_1.handleError)(deploy_1.default));
113
+ dev
114
+ .command('pub <device> <type> [<payload>]')
115
+ .description('Publish an event to a message bus')
116
+ .action((0, utils_1.handleError)(pub_1.default));
117
+ dev
118
+ .command('sub <device>')
119
+ .option('-t --timestamps', 'Display time stamps')
120
+ .description('Dump message bus events')
121
+ .action((0, utils_1.handleError)(sub_1.default));
122
+ dev
123
+ .command('shell <device>')
124
+ .option('-L <ip>:<port>', 'Forward remote port to a local machine')
125
+ .description('Open a shell session to a device via IoTHub (legacy)')
126
+ .usage('<device> - open shell via IoTHub (legacy)')
127
+ .usage('-L <host>:<port> <device> - open shell and forward a remote port')
128
+ .action(shell_1.default);
129
+ dev
130
+ .command('vnc <device>')
131
+ .description('Open a VNC session to a device via IoTHub (legacy)')
132
+ .action((0, utils_1.handleError)(vnc_1.default));
133
+ dev
134
+ .command('debug <device>')
135
+ .description('Open debugger session to a screen app on a device via IoTHub (legacy)')
136
+ .action((0, utils_1.handleError)(debug_1.default));
137
+ dev
138
+ .command('forward <device> <url>')
139
+ .description("Access a url from device's local network via IoTHub (legacy)")
140
+ .action((0, utils_1.handleError)(forward_1.default));
141
+ dev
142
+ .command('move <device> <new-installation>')
143
+ .description('Move device to a different installation')
144
+ .action((0, utils_1.handleError)(move_1.default));
145
+ dev
146
+ .command('js <device>')
147
+ .description('Open js shell to a screen app')
148
+ .option('-t --timestamps', 'Display time stamps')
149
+ .action((0, utils_1.handleError)(js_1.default));
150
+ dev
151
+ .command('jshell <device>')
152
+ .description('Open js shell to a screen app')
153
+ .option('-t --timestamps', 'Display time stamps')
154
+ .action((0, utils_1.handleError)(js_1.default));
155
+ dev
156
+ .command('pin <device>')
157
+ .description('Show PIN for a device')
158
+ .action((0, utils_1.handleError)(pin_1.default));
159
+ dev
160
+ .command('ota')
161
+ .description('Perform OTA for device specified')
162
+ .option('-d, --device <device>', 'specify the device')
163
+ .option('-v, --version <version>', 'specify the PhyOS version')
164
+ .option('-f, --force', 'bypass confirmation')
165
+ .action(async (options) => {
166
+ if (options.force) {
167
+ // If --force is used, bypass confirmation and execute the action
168
+ (0, utils_1.handleError)(ota_1.default)(options);
169
+ }
170
+ else {
171
+ // Otherwise, ask for confirmation
172
+ const { confirmation } = await inquirer_1.default.prompt([
173
+ {
174
+ type: 'input',
175
+ name: 'confirmation',
176
+ message: 'Are you sure you want to proceed? Type "yes" to confirm:',
177
+ },
178
+ ]);
179
+ if (confirmation.toLowerCase() === 'yes') {
180
+ (0, utils_1.handleError)(ota_1.default)(options);
181
+ }
182
+ else {
183
+ console.log('Operation cancelled.');
184
+ }
185
+ }
186
+ });
187
+ exports.default = dev;
188
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/legacydev/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const fs_1 = __importDefault(require("fs"));
7
+ const admin_api_1 = require("../../services/admin-api");
8
+ async function invoke(deviceName, moduleName, methodName, payloadString, { all }) {
9
+ let payload = {};
10
+ if (payloadString !== undefined) {
11
+ const text = payloadString === '-' ? fs_1.default.readFileSync(0, 'utf-8') : payloadString;
12
+ // eslint-disable-next-line
13
+ payload = eval(`(${text})`);
14
+ }
15
+ const data = await (0, admin_api_1.adminApi)().devices.invokeDeviceModuleEdge({
16
+ deviceName,
17
+ moduleName,
18
+ method: methodName,
19
+ payload,
20
+ });
21
+ if (all) {
22
+ console.log(JSON.stringify(data, null, 1));
23
+ }
24
+ else {
25
+ console.log(data);
26
+ }
27
+ }
28
+ exports.default = invoke;
29
+ //# sourceMappingURL=invoke.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoke.js","sourceRoot":"","sources":["../../../src/commands/legacydev/invoke.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,wDAAoD;AAEpD,KAAK,UAAU,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE;IAC9E,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,aAAa,KAAK,GAAG,CAAC,CAAC,CAAC,YAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;QACjF,2BAA2B;QAC3B,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,IAAA,oBAAQ,GAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC;QAC3D,UAAU;QACV,UAAU;QACV,MAAM,EAAE,UAAU;QAClB,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,kBAAe,MAAM,CAAC"}