@dxos/cli 0.1.48 → 0.1.49-next.7ec9d52

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 (230) hide show
  1. package/README.md +444 -217
  2. package/bin/dev +5 -4
  3. package/bin/dev.cmd +1 -1
  4. package/bin/run +1 -1
  5. package/config/config-default.yml +9 -11
  6. package/config/config-dev.yml +10 -10
  7. package/config/config-local.yml +2 -2
  8. package/config/config-staging.yml +10 -10
  9. package/config/config.yml +11 -11
  10. package/dist/src/base-command.d.ts +49 -13
  11. package/dist/src/base-command.d.ts.map +1 -1
  12. package/dist/src/base-command.js +142 -109
  13. package/dist/src/base-command.js.map +1 -1
  14. package/dist/src/commands/agent/list.d.ts +8 -0
  15. package/dist/src/commands/agent/list.d.ts.map +1 -0
  16. package/dist/src/commands/agent/list.js +37 -0
  17. package/dist/src/commands/agent/list.js.map +1 -0
  18. package/dist/src/commands/agent/restart.d.ts +7 -0
  19. package/dist/src/commands/agent/restart.d.ts.map +1 -0
  20. package/dist/src/commands/{daemon → agent}/restart.js +2 -3
  21. package/dist/src/commands/agent/restart.js.map +1 -0
  22. package/dist/src/commands/agent/run.d.ts +19 -0
  23. package/dist/src/commands/agent/run.d.ts.map +1 -0
  24. package/dist/src/commands/agent/run.js +60 -0
  25. package/dist/src/commands/agent/run.js.map +1 -0
  26. package/dist/src/commands/{daemon → agent}/start.d.ts +1 -1
  27. package/dist/src/commands/agent/start.d.ts.map +1 -0
  28. package/dist/src/commands/{daemon → agent}/start.js +3 -4
  29. package/dist/src/commands/agent/start.js.map +1 -0
  30. package/dist/src/commands/{daemon → agent}/stop.d.ts +1 -1
  31. package/dist/src/commands/agent/stop.d.ts.map +1 -0
  32. package/dist/src/commands/{daemon → agent}/stop.js +3 -4
  33. package/dist/src/commands/agent/stop.js.map +1 -0
  34. package/dist/src/commands/app/app.test.js.map +1 -1
  35. package/dist/src/commands/app/create.d.ts +4 -2
  36. package/dist/src/commands/app/create.d.ts.map +1 -1
  37. package/dist/src/commands/app/create.js +23 -34
  38. package/dist/src/commands/app/create.js.map +1 -1
  39. package/dist/src/commands/app/list.d.ts +1 -1
  40. package/dist/src/commands/app/list.d.ts.map +1 -1
  41. package/dist/src/commands/app/list.js +5 -12
  42. package/dist/src/commands/app/list.js.map +1 -1
  43. package/dist/src/commands/app/open.d.ts +5 -2
  44. package/dist/src/commands/app/open.d.ts.map +1 -1
  45. package/dist/src/commands/app/open.js +5 -6
  46. package/dist/src/commands/app/open.js.map +1 -1
  47. package/dist/src/commands/app/publish.d.ts +5 -3
  48. package/dist/src/commands/app/publish.d.ts.map +1 -1
  49. package/dist/src/commands/app/publish.js +31 -43
  50. package/dist/src/commands/app/publish.js.map +1 -1
  51. package/dist/src/commands/config/index.d.ts +1 -1
  52. package/dist/src/commands/config/index.d.ts.map +1 -1
  53. package/dist/src/commands/config/index.js +1 -2
  54. package/dist/src/commands/config/index.js.map +1 -1
  55. package/dist/src/commands/{daemon/run.d.ts → debug/stats.d.ts} +11 -4
  56. package/dist/src/commands/debug/stats.d.ts.map +1 -0
  57. package/dist/src/commands/debug/stats.js +31 -0
  58. package/dist/src/commands/debug/stats.js.map +1 -0
  59. package/dist/src/commands/{daemon/restart.d.ts → device/index.d.ts} +2 -2
  60. package/dist/src/commands/device/index.d.ts.map +1 -0
  61. package/dist/src/commands/device/index.js +19 -0
  62. package/dist/src/commands/device/index.js.map +1 -0
  63. package/dist/src/commands/{daemon → device}/list.d.ts +1 -1
  64. package/dist/src/commands/device/list.d.ts.map +1 -0
  65. package/dist/src/commands/device/list.js +20 -0
  66. package/dist/src/commands/device/list.js.map +1 -0
  67. package/dist/src/commands/function/exec.d.ts +10 -0
  68. package/dist/src/commands/function/exec.d.ts.map +1 -0
  69. package/dist/src/commands/function/exec.js +35 -0
  70. package/dist/src/commands/function/exec.js.map +1 -0
  71. package/dist/src/commands/function/list.d.ts +8 -0
  72. package/dist/src/commands/function/list.d.ts.map +1 -0
  73. package/dist/src/commands/function/list.js +43 -0
  74. package/dist/src/commands/function/list.js.map +1 -0
  75. package/dist/src/commands/function/logs.d.ts +10 -0
  76. package/dist/src/commands/function/logs.d.ts.map +1 -0
  77. package/dist/src/commands/function/logs.js +38 -0
  78. package/dist/src/commands/function/logs.js.map +1 -0
  79. package/dist/src/commands/halo/create.d.ts +2 -2
  80. package/dist/src/commands/halo/create.d.ts.map +1 -1
  81. package/dist/src/commands/halo/create.js +4 -5
  82. package/dist/src/commands/halo/create.js.map +1 -1
  83. package/dist/src/commands/halo/credential/add.d.ts +1 -1
  84. package/dist/src/commands/halo/credential/add.d.ts.map +1 -1
  85. package/dist/src/commands/halo/credential/add.js +1 -3
  86. package/dist/src/commands/halo/credential/add.js.map +1 -1
  87. package/dist/src/commands/halo/credential/list.d.ts +5 -2
  88. package/dist/src/commands/halo/credential/list.d.ts.map +1 -1
  89. package/dist/src/commands/halo/credential/list.js +2 -3
  90. package/dist/src/commands/halo/credential/list.js.map +1 -1
  91. package/dist/src/commands/halo/index.d.ts +1 -1
  92. package/dist/src/commands/halo/index.d.ts.map +1 -1
  93. package/dist/src/commands/halo/index.js +1 -2
  94. package/dist/src/commands/halo/index.js.map +1 -1
  95. package/dist/src/commands/halo/join.d.ts +5 -2
  96. package/dist/src/commands/halo/join.d.ts.map +1 -1
  97. package/dist/src/commands/halo/join.js +1 -2
  98. package/dist/src/commands/halo/join.js.map +1 -1
  99. package/dist/src/commands/halo/share.d.ts +5 -2
  100. package/dist/src/commands/halo/share.d.ts.map +1 -1
  101. package/dist/src/commands/halo/share.js +2 -3
  102. package/dist/src/commands/halo/share.js.map +1 -1
  103. package/dist/src/commands/kube/auth.d.ts +1 -1
  104. package/dist/src/commands/kube/auth.d.ts.map +1 -1
  105. package/dist/src/commands/kube/auth.js +2 -3
  106. package/dist/src/commands/kube/auth.js.map +1 -1
  107. package/dist/src/commands/kube/deploy.d.ts +5 -2
  108. package/dist/src/commands/kube/deploy.d.ts.map +1 -1
  109. package/dist/src/commands/kube/deploy.js +1 -2
  110. package/dist/src/commands/kube/deploy.js.map +1 -1
  111. package/dist/src/commands/reset/index.d.ts +10 -1
  112. package/dist/src/commands/reset/index.d.ts.map +1 -1
  113. package/dist/src/commands/reset/index.js +30 -9
  114. package/dist/src/commands/reset/index.js.map +1 -1
  115. package/dist/src/commands/shell/index.d.ts +1 -1
  116. package/dist/src/commands/shell/index.d.ts.map +1 -1
  117. package/dist/src/commands/shell/index.js.map +1 -1
  118. package/dist/src/commands/space/create.d.ts +1 -1
  119. package/dist/src/commands/space/create.d.ts.map +1 -1
  120. package/dist/src/commands/space/create.js +2 -3
  121. package/dist/src/commands/space/create.js.map +1 -1
  122. package/dist/src/commands/space/{new-epoch.d.ts → epoch.d.ts} +6 -3
  123. package/dist/src/commands/space/epoch.d.ts.map +1 -0
  124. package/dist/src/commands/space/{new-epoch.js → epoch.js} +8 -9
  125. package/dist/src/commands/space/epoch.js.map +1 -0
  126. package/dist/src/commands/space/index.d.ts +1 -1
  127. package/dist/src/commands/space/index.d.ts.map +1 -1
  128. package/dist/src/commands/space/index.js +1 -0
  129. package/dist/src/commands/space/index.js.map +1 -1
  130. package/dist/src/commands/space/invite.d.ts +1 -1
  131. package/dist/src/commands/space/invite.d.ts.map +1 -1
  132. package/dist/src/commands/space/invite.js +1 -2
  133. package/dist/src/commands/space/invite.js.map +1 -1
  134. package/dist/src/commands/space/join.d.ts +5 -2
  135. package/dist/src/commands/space/join.d.ts.map +1 -1
  136. package/dist/src/commands/space/join.js +1 -2
  137. package/dist/src/commands/space/join.js.map +1 -1
  138. package/dist/src/commands/space/list.d.ts +5 -2
  139. package/dist/src/commands/space/list.d.ts.map +1 -1
  140. package/dist/src/commands/space/list.js +2 -3
  141. package/dist/src/commands/space/list.js.map +1 -1
  142. package/dist/src/commands/space/members.d.ts +5 -2
  143. package/dist/src/commands/space/members.d.ts.map +1 -1
  144. package/dist/src/commands/space/members.js +3 -4
  145. package/dist/src/commands/space/members.js.map +1 -1
  146. package/dist/src/commands/tunnel/list.d.ts +1 -1
  147. package/dist/src/commands/tunnel/list.d.ts.map +1 -1
  148. package/dist/src/commands/tunnel/list.js +7 -16
  149. package/dist/src/commands/tunnel/list.js.map +1 -1
  150. package/dist/src/commands/tunnel/set.d.ts +5 -2
  151. package/dist/src/commands/tunnel/set.d.ts.map +1 -1
  152. package/dist/src/commands/tunnel/set.js +8 -15
  153. package/dist/src/commands/tunnel/set.js.map +1 -1
  154. package/dist/src/util/credential.js.map +1 -1
  155. package/dist/src/util/exec.d.ts.map +1 -1
  156. package/dist/src/util/exec.js.map +1 -1
  157. package/dist/src/util/print.d.ts +6 -0
  158. package/dist/src/util/print.d.ts.map +1 -1
  159. package/dist/src/util/print.js +33 -10
  160. package/dist/src/util/print.js.map +1 -1
  161. package/dist/src/util/provider/provider.js +2 -2
  162. package/dist/src/util/publish/common.d.ts +1 -1
  163. package/dist/src/util/publish/common.d.ts.map +1 -1
  164. package/dist/src/util/publish/common.js +2 -2
  165. package/dist/src/util/publish/common.js.map +1 -1
  166. package/dist/src/util/telemetry.d.ts.map +1 -1
  167. package/dist/src/util/telemetry.js +1 -0
  168. package/dist/src/util/telemetry.js.map +1 -1
  169. package/dist/src/util/telemetryrc.json +2 -2
  170. package/dist/src/util/tunnel/common.js +3 -3
  171. package/dist/src/util/util.d.ts +1 -0
  172. package/dist/src/util/util.d.ts.map +1 -1
  173. package/dist/src/util/util.js +11 -1
  174. package/dist/src/util/util.js.map +1 -1
  175. package/oclif.manifest.json +1433 -407
  176. package/package.json +24 -23
  177. package/dist/src/commands/daemon/list.d.ts.map +0 -1
  178. package/dist/src/commands/daemon/list.js +0 -19
  179. package/dist/src/commands/daemon/list.js.map +0 -1
  180. package/dist/src/commands/daemon/restart.d.ts.map +0 -1
  181. package/dist/src/commands/daemon/restart.js.map +0 -1
  182. package/dist/src/commands/daemon/run.d.ts.map +0 -1
  183. package/dist/src/commands/daemon/run.js +0 -33
  184. package/dist/src/commands/daemon/run.js.map +0 -1
  185. package/dist/src/commands/daemon/start.d.ts.map +0 -1
  186. package/dist/src/commands/daemon/start.js.map +0 -1
  187. package/dist/src/commands/daemon/stop.d.ts.map +0 -1
  188. package/dist/src/commands/daemon/stop.js.map +0 -1
  189. package/dist/src/commands/space/new-epoch.d.ts.map +0 -1
  190. package/dist/src/commands/space/new-epoch.js.map +0 -1
  191. package/dist/src/daemon/daemon.d.ts +0 -15
  192. package/dist/src/daemon/daemon.d.ts.map +0 -1
  193. package/dist/src/daemon/daemon.js +0 -6
  194. package/dist/src/daemon/daemon.js.map +0 -1
  195. package/dist/src/daemon/faas/api.d.ts +0 -346
  196. package/dist/src/daemon/faas/api.d.ts.map +0 -1
  197. package/dist/src/daemon/faas/api.js +0 -11
  198. package/dist/src/daemon/faas/api.js.map +0 -1
  199. package/dist/src/daemon/faas/connector.d.ts +0 -46
  200. package/dist/src/daemon/faas/connector.d.ts.map +0 -1
  201. package/dist/src/daemon/faas/connector.js +0 -185
  202. package/dist/src/daemon/faas/connector.js.map +0 -1
  203. package/dist/src/daemon/forever/forever-daemon.d.ts +0 -15
  204. package/dist/src/daemon/forever/forever-daemon.d.ts.map +0 -1
  205. package/dist/src/daemon/forever/forever-daemon.js +0 -83
  206. package/dist/src/daemon/forever/forever-daemon.js.map +0 -1
  207. package/dist/src/daemon/forever/index.d.ts +0 -2
  208. package/dist/src/daemon/forever/index.d.ts.map +0 -1
  209. package/dist/src/daemon/forever/index.js +0 -21
  210. package/dist/src/daemon/forever/index.js.map +0 -1
  211. package/dist/src/daemon/index.d.ts +0 -5
  212. package/dist/src/daemon/index.d.ts.map +0 -1
  213. package/dist/src/daemon/index.js +0 -24
  214. package/dist/src/daemon/index.js.map +0 -1
  215. package/dist/src/daemon/pm2/index.d.ts +0 -2
  216. package/dist/src/daemon/pm2/index.d.ts.map +0 -1
  217. package/dist/src/daemon/pm2/index.js +0 -21
  218. package/dist/src/daemon/pm2/index.js.map +0 -1
  219. package/dist/src/daemon/pm2/pm2-daemon.d.ts +0 -21
  220. package/dist/src/daemon/pm2/pm2-daemon.d.ts.map +0 -1
  221. package/dist/src/daemon/pm2/pm2-daemon.js +0 -107
  222. package/dist/src/daemon/pm2/pm2-daemon.js.map +0 -1
  223. package/dist/src/daemon/run-services.d.ts +0 -7
  224. package/dist/src/daemon/run-services.d.ts.map +0 -1
  225. package/dist/src/daemon/run-services.js +0 -109
  226. package/dist/src/daemon/run-services.js.map +0 -1
  227. package/dist/src/daemon/util.d.ts +0 -8
  228. package/dist/src/daemon/util.d.ts.map +0 -1
  229. package/dist/src/daemon/util.js +0 -38
  230. package/dist/src/daemon/util.js.map +0 -1
@@ -28,7 +28,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
28
28
  var __importDefault = (this && this.__importDefault) || function (mod) {
29
29
  return (mod && mod.__esModule) ? mod : { "default": mod };
30
30
  };
31
- var _a;
32
31
  Object.defineProperty(exports, "__esModule", { value: true });
33
32
  exports.BaseCommand = void 0;
34
33
  const core_1 = require("@oclif/core");
@@ -40,15 +39,15 @@ const node_fs_1 = __importDefault(require("node:fs"));
40
39
  const promises_1 = require("node:fs/promises");
41
40
  const node_path_1 = require("node:path");
42
41
  const pkg_up_1 = __importDefault(require("pkg-up"));
42
+ const agent_1 = require("@dxos/agent");
43
43
  const client_1 = require("@dxos/client");
44
+ const client_protocol_1 = require("@dxos/client-protocol");
44
45
  const debug_1 = require("@dxos/debug");
45
46
  const log_1 = require("@dxos/log");
46
47
  const Sentry = __importStar(require("@dxos/sentry"));
47
48
  const sentry_1 = require("@dxos/sentry");
48
49
  const Telemetry = __importStar(require("@dxos/telemetry"));
49
- const forever_1 = require("./daemon/forever");
50
50
  const util_1 = require("./util");
51
- const ENV_DX_CONFIG = 'DX_CONFIG';
52
51
  // TODO(wittjosiah): Factor out.
53
52
  const exists = async (...args) => {
54
53
  try {
@@ -64,6 +63,11 @@ const exists = async (...args) => {
64
63
  }
65
64
  }
66
65
  };
66
+ /**
67
+ * Custom base command.
68
+ * https://oclif.io/docs/base_class#docsNav
69
+ * Ref: https://github.com/salesforcecli/sf-plugins-core/blob/main/src/sfCommand.ts
70
+ */
67
71
  class BaseCommand extends core_1.Command {
68
72
  constructor(argv, config) {
69
73
  super(argv, config);
@@ -77,23 +81,37 @@ class BaseCommand extends core_1.Command {
77
81
  this._startTime = new Date();
78
82
  }
79
83
  get clientConfig() {
84
+ (0, node_assert_1.default)(this._clientConfig);
80
85
  return this._clientConfig;
81
86
  }
82
87
  get stdin() {
83
88
  return this._stdin;
84
89
  }
85
- ok() {
86
- this.log('ok');
90
+ done() {
91
+ (0, log_1.log)('ok', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 137, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
87
92
  }
88
93
  /**
89
94
  * Load the client config.
90
95
  */
91
96
  async init() {
92
97
  await super.init();
93
- this._telemetryContext = await (0, util_1.getTelemetryContext)(this.config.configDir);
98
+ await this._initTelemetry();
99
+ const { args, flags } = await this.parse({
100
+ flags: this.ctor.flags,
101
+ baseFlags: super.ctor.baseFlags,
102
+ args: this.ctor.args,
103
+ strict: this.ctor.strict,
104
+ });
105
+ this.flags = flags;
106
+ this.args = args;
107
+ // Load user config file.
108
+ await this._loadConfig();
109
+ }
110
+ async _initTelemetry() {
111
+ this._telemetryContext = await (0, util_1.getTelemetryContext)(client_1.DX_DATA);
94
112
  const { mode, installationId, group, environment, release } = this._telemetryContext;
95
113
  if (group === 'dxos') {
96
- this.log((0, chalk_1.default) `✨ {bgMagenta You're using the CLI as an internal user} ✨\n`);
114
+ (0, log_1.log)((0, chalk_1.default) `✨ {bgMagenta Running as internal user} ✨\n`, {}, { file: "packages/devtools/cli/src/base-command.ts", line: 165, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
97
115
  }
98
116
  if (util_1.SENTRY_DESTINATION && mode !== 'disabled') {
99
117
  Sentry.init({
@@ -110,7 +128,7 @@ class BaseCommand extends core_1.Command {
110
128
  });
111
129
  }
112
130
  if (util_1.TELEMETRY_API_KEY) {
113
- mode === 'disabled' && (await (0, util_1.disableTelemetry)(this.config.configDir));
131
+ mode === 'disabled' && (await (0, util_1.disableTelemetry)(client_1.DX_DATA));
114
132
  Telemetry.init({
115
133
  apiKey: util_1.TELEMETRY_API_KEY,
116
134
  batchSize: 20,
@@ -118,54 +136,64 @@ class BaseCommand extends core_1.Command {
118
136
  });
119
137
  }
120
138
  this.addToTelemetryContext({ command: this.id });
121
- setTimeout(async () => {
122
- try {
123
- const res = await (0, node_fetch_1.default)(`https://api.ipdata.co/?api-key=${util_1.IPDATA_API_KEY}`);
124
- const data = await res.json();
125
- const { city, region, country, latitude, longitude } = data;
126
- this.addToTelemetryContext({ city, region, country, latitude, longitude });
127
- }
128
- catch (err) {
129
- (0, sentry_1.captureException)(err);
130
- }
131
- });
132
- // Load user config file.
133
- await this._loadConfig();
134
- }
135
- async _loadConfig() {
136
- var _b, _c, _d, _e;
137
- const { flags } = await this.parse(this.constructor);
138
- const { config: configFile } = flags;
139
139
  try {
140
- const configExists = await exists(configFile);
141
- if (!configExists) {
142
- const defaultConfigPath = (0, node_path_1.join)((0, node_path_1.dirname)((_b = pkg_up_1.default.sync({ cwd: __dirname })) !== null && _b !== void 0 ? _b : (0, debug_1.raise)(new Error('Could not find package.json'))), 'config/config-default.yml');
143
- const yamlConfig = js_yaml_1.default.load(await (0, promises_1.readFile)(defaultConfigPath, 'utf-8'));
144
- if ((_e = (_d = (_c = yamlConfig.runtime) === null || _c === void 0 ? void 0 : _c.client) === null || _d === void 0 ? void 0 : _d.storage) === null || _e === void 0 ? void 0 : _e.path) {
145
- // Isolate DX_PROFILE storages.
146
- yamlConfig.runtime.client.storage.path = (0, node_path_1.join)(yamlConfig.runtime.client.storage.path, flags.profile);
147
- }
148
- await (0, promises_1.writeFile)(configFile, js_yaml_1.default.dump(yamlConfig), 'utf-8');
149
- }
150
- this._clientConfig = new client_1.Config(js_yaml_1.default.load(await (0, promises_1.readFile)(configFile, 'utf-8')));
140
+ const res = await (0, node_fetch_1.default)(`https://api.ipdata.co/?api-key=${util_1.IPDATA_API_KEY}`);
141
+ const data = await res.json();
142
+ const { city, region, country, latitude, longitude } = data;
143
+ this.addToTelemetryContext({ city, region, country, latitude, longitude });
151
144
  }
152
145
  catch (err) {
153
- Sentry.captureException(err);
154
- log_1.log.error(`Invalid config file: ${configFile}`, err, { file: "packages/devtools/cli/src/base-command.ts", line: 194, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
155
- process.exit(1);
146
+ (0, sentry_1.captureException)(err);
156
147
  }
157
148
  }
158
- async catch(err) {
159
- this._failing = true;
149
+ async _loadConfig() {
150
+ var _a, _b, _c, _d;
151
+ const { config: configFile } = this.flags;
152
+ const configExists = await exists(configFile);
153
+ if (!configExists) {
154
+ const defaultConfigPath = (0, node_path_1.join)((0, node_path_1.dirname)((_a = pkg_up_1.default.sync({ cwd: __dirname })) !== null && _a !== void 0 ? _a : (0, debug_1.raise)(new Error('Could not find package.json'))), 'config/config-default.yml');
155
+ const yamlConfig = js_yaml_1.default.load(await (0, promises_1.readFile)(defaultConfigPath, 'utf-8'));
156
+ if ((_d = (_c = (_b = yamlConfig.runtime) === null || _b === void 0 ? void 0 : _b.client) === null || _c === void 0 ? void 0 : _c.storage) === null || _d === void 0 ? void 0 : _d.path) {
157
+ // Isolate DX_PROFILE storages.
158
+ yamlConfig.runtime.client.storage.path = (0, node_path_1.join)(yamlConfig.runtime.client.storage.path, this.flags.profile);
159
+ }
160
+ await (0, promises_1.mkdir)((0, node_path_1.dirname)(configFile), { recursive: true });
161
+ await (0, promises_1.writeFile)(configFile, js_yaml_1.default.dump(yamlConfig), 'utf-8');
162
+ }
163
+ this._clientConfig = new client_1.Config(js_yaml_1.default.load(await (0, promises_1.readFile)(configFile, 'utf-8')));
164
+ }
165
+ // TODO(burdon): Reconcile internal/external logging.
166
+ /**
167
+ * Use this method for user-facing messages.
168
+ * Use @dxos/logger for internal messages.
169
+ */
170
+ log(message, ...args) {
171
+ super.log(message, ...args);
172
+ }
173
+ /**
174
+ * Use this method for user-facing warnings.
175
+ * Use @dxos/logger for internal messages.
176
+ */
177
+ warn(err) {
178
+ const message = typeof err === 'string' ? err : err.message;
179
+ super.logToStderr((0, chalk_1.default) `{red Warning}: ${message}`);
180
+ // NOTE: Default method displays stack trace.
181
+ // super.warn(err);
182
+ return err;
183
+ }
184
+ error(err, options) {
185
+ super.error(err, options);
160
186
  Sentry.captureException(err);
161
- this.error(err);
187
+ this._failing = true;
162
188
  }
163
- // Called after each run.
189
+ /**
190
+ * Called after each command run.
191
+ */
164
192
  async finally() {
165
- var _b;
193
+ var _a;
166
194
  const endTime = new Date();
167
195
  Telemetry.event({
168
- installationId: (_b = this._telemetryContext) === null || _b === void 0 ? void 0 : _b.installationId,
196
+ installationId: (_a = this._telemetryContext) === null || _a === void 0 ? void 0 : _a.installationId,
169
197
  name: 'cli.command.run',
170
198
  properties: {
171
199
  ...this._telemetryContext,
@@ -174,59 +202,63 @@ class BaseCommand extends core_1.Command {
174
202
  },
175
203
  });
176
204
  }
205
+ async maybeStartDaemon() {
206
+ if (!this.flags['no-agent']) {
207
+ await this.execWithDaemon(async (daemon) => {
208
+ const running = await daemon.isRunning(this.flags.profile);
209
+ if (!running) {
210
+ this.log(`Starting agent (${this.flags.profile})`);
211
+ await daemon.start(this.flags.profile);
212
+ this.log('Started');
213
+ }
214
+ });
215
+ }
216
+ }
177
217
  /**
178
218
  * Lazily create the client.
179
219
  */
180
220
  async getClient() {
181
- const { flags } = await this.parse(this.constructor);
182
- await this.execWithDaemon(async (daemon) => {
183
- if (!(await daemon.isRunning(flags.profile))) {
184
- await daemon.start(flags.profile);
185
- }
186
- });
221
+ await this.maybeStartDaemon();
187
222
  (0, node_assert_1.default)(this._clientConfig);
188
223
  if (!this._client) {
189
- (0, log_1.log)('Creating client...', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 233, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
190
- this._client = new client_1.Client({ config: this._clientConfig, services: (0, client_1.fromCliEnv)(flags.profile) });
224
+ await this.maybeStartDaemon();
225
+ (0, node_assert_1.default)(this._clientConfig);
226
+ if (this.flags['no-agent']) {
227
+ this._client = new client_1.Client({ config: this._clientConfig });
228
+ }
229
+ else {
230
+ this._client = new client_1.Client({ config: this._clientConfig, services: (0, client_1.fromAgent)(this.flags.profile) });
231
+ }
191
232
  await this._client.initialize();
192
- (0, log_1.log)('Initialized', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 236, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
233
+ (0, log_1.log)('Client initialized', { profile: this.flags.profile }, { file: "packages/devtools/cli/src/base-command.ts", line: 308, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
193
234
  }
194
235
  return this._client;
195
236
  }
196
237
  /**
197
238
  * Convenience function to wrap command passing in client object.
198
239
  */
199
- async execWithClient(callback) {
200
- try {
201
- const client = await this.getClient();
202
- const value = await callback(client);
203
- (0, log_1.log)('Destroying...', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 249, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
204
- await client.destroy();
205
- (0, log_1.log)('Done', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 252, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
206
- return value;
207
- }
208
- catch (err) {
209
- Sentry.captureException(err);
210
- this.error(err);
240
+ async execWithClient(callback, checkHalo = false) {
241
+ const client = await this.getClient();
242
+ if (checkHalo && !client.halo.identity.get()) {
243
+ this.warn('HALO not initialized; run `dx halo create --help`');
244
+ process.exit(1);
211
245
  }
246
+ const value = await callback(client);
247
+ await client.destroy();
248
+ return value;
212
249
  }
250
+ /**
251
+ * Convenience function to wrap starting the agent.
252
+ */
213
253
  async execWithDaemon(callback) {
214
- try {
215
- const daemon = new forever_1.ForeverDaemon();
216
- await daemon.connect();
217
- const value = await callback(daemon);
218
- (0, log_1.log)('Disconnecting...', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 265, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
219
- await daemon.disconnect();
220
- (0, log_1.log)('Done', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 268, scope: this, bugcheck: "If you see this message then it means that the source code preprocessor for @dxos/log is broken. It probably has misinterpreted an unrelated call for a logger invocation.", callSite: (fn, args) => fn(...args) });
221
- return value;
222
- }
223
- catch (err) {
224
- Sentry.captureException(err);
225
- this.error(err);
226
- }
254
+ const daemon = new agent_1.ForeverDaemon(`${client_1.DX_RUNTIME}/agent`);
255
+ await daemon.connect();
256
+ const value = await callback(daemon);
257
+ await daemon.disconnect();
258
+ return value;
227
259
  }
228
260
  /**
229
- * Convenience function to wrap command passing in kube publisher.
261
+ * Convenience function to wrap command passing in KUBE publisher.
230
262
  */
231
263
  async execWithPublisher(callback) {
232
264
  let rpc;
@@ -236,11 +268,9 @@ class BaseCommand extends core_1.Command {
236
268
  (0, node_assert_1.default)(wsEndpoint);
237
269
  rpc = new util_1.PublisherRpcPeer(wsEndpoint);
238
270
  await Promise.race([rpc.connected.waitForCount(1), rpc.error.waitForCount(1).then((err) => Promise.reject(err))]);
239
- const value = await callback(rpc);
240
- return value;
271
+ return await callback(rpc);
241
272
  }
242
273
  catch (err) {
243
- Sentry.captureException(err);
244
274
  this.error(err);
245
275
  }
246
276
  finally {
@@ -257,11 +287,9 @@ class BaseCommand extends core_1.Command {
257
287
  (0, node_assert_1.default)(wsEndpoint);
258
288
  rpc = new util_1.TunnelRpcPeer(wsEndpoint);
259
289
  await Promise.race([rpc.connected.waitForCount(1), rpc.error.waitForCount(1).then((err) => Promise.reject(err))]);
260
- const value = await callback(rpc);
261
- return value;
290
+ return await callback(rpc);
262
291
  }
263
292
  catch (err) {
264
- Sentry.captureException(err);
265
293
  this.error(err);
266
294
  }
267
295
  finally {
@@ -278,12 +306,9 @@ class BaseCommand extends core_1.Command {
278
306
  (0, node_assert_1.default)(wsEndpoint);
279
307
  rpc = new util_1.SupervisorRpcPeer(wsEndpoint);
280
308
  await Promise.race([rpc.connected.waitForCount(1), rpc.error.waitForCount(1).then((err) => Promise.reject(err))]);
281
- const value = await callback(rpc);
282
- return value;
309
+ return await callback(rpc);
283
310
  }
284
311
  catch (err) {
285
- // TODO(egorgripasov): Move Sentry into this.error?
286
- Sentry.captureException(err);
287
312
  this.error(err);
288
313
  }
289
314
  finally {
@@ -302,35 +327,43 @@ class BaseCommand extends core_1.Command {
302
327
  };
303
328
  }
304
329
  }
305
- _a = BaseCommand;
306
330
  BaseCommand.enableJsonFlag = true;
307
331
  BaseCommand.flags = {
332
+ 'dry-run': core_1.Flags.boolean({
333
+ description: 'Dry run.',
334
+ default: false,
335
+ }),
336
+ verbose: core_1.Flags.boolean({
337
+ char: 'v',
338
+ description: 'Verbose output',
339
+ default: false,
340
+ }),
341
+ profile: core_1.Flags.string({
342
+ description: 'User profile.',
343
+ default: client_protocol_1.ENV_DX_PROFILE_DEFAULT,
344
+ env: client_protocol_1.ENV_DX_PROFILE,
345
+ }),
308
346
  config: core_1.Flags.string({
309
- env: ENV_DX_CONFIG,
310
- description: 'Specify config file',
311
- default: async (context) => {
312
- var _b;
313
- if ((_b = context === null || context === void 0 ? void 0 : context.flags) === null || _b === void 0 ? void 0 : _b.profile) {
314
- return (0, node_path_1.join)(context.config.configDir, `${context.flags.profile}.yml`);
315
- }
316
- else {
317
- return (0, node_path_1.join)(context.config.configDir, `${client_1.DEFAULT_DX_PROFILE}.yml`);
318
- }
347
+ env: client_protocol_1.ENV_DX_CONFIG,
348
+ description: 'Config file.',
349
+ async default({ flags }) {
350
+ var _a;
351
+ const profile = (_a = flags === null || flags === void 0 ? void 0 : flags.profile) !== null && _a !== void 0 ? _a : client_protocol_1.ENV_DX_PROFILE_DEFAULT;
352
+ return (0, node_path_1.join)(client_protocol_1.DX_CONFIG, `profile/${profile}.yml`);
319
353
  },
320
354
  dependsOn: ['profile'],
321
355
  aliases: ['c'],
322
356
  }),
357
+ // TODO(burdon): '--no-' prefix is not working.
358
+ 'no-agent': core_1.Flags.boolean({
359
+ description: 'Auto-start agent.',
360
+ default: false,
361
+ }),
323
362
  timeout: core_1.Flags.integer({
324
- description: 'Timeout in seconds',
363
+ description: 'Timeout in seconds.',
325
364
  default: 30,
326
365
  aliases: ['t'],
327
366
  }),
328
- profile: core_1.Flags.string({
329
- description: 'DXOS profile name, each profile runs separate daemon with isolated environment.',
330
- default: client_1.DEFAULT_DX_PROFILE,
331
- env: 'DX_PROFILE',
332
- }),
333
- // TODO(mykola): Implement JSON args.
334
367
  };
335
368
  exports.BaseCommand = BaseCommand;
336
369
  //# sourceMappingURL=base-command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-command.js","sourceRoot":"","sources":["../../src/base-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-command.js","sourceRoot":"","sources":["../../src/base-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { BaseCommand } from '../../base-command';
2
+ export declare const printAgents: (daemons: any[], flags?: {}) => void;
3
+ export default class List extends BaseCommand<typeof List> {
4
+ static enableJsonFlag: boolean;
5
+ static description: string;
6
+ run(): Promise<any>;
7
+ }
8
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/commands/agent/list.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,eAAO,MAAM,WAAW,YAAa,GAAG,EAAE,qBAkBzC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,WAAW,CAAC,OAAO,IAAI,CAAC;IACxD,OAAgB,cAAc,UAAQ;IACtC,OAAgB,WAAW,SAAkB;IAEvC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;CAO1B"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ //
3
+ // Copyright 2023 DXOS.org
4
+ //
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.printAgents = void 0;
7
+ const core_1 = require("@oclif/core");
8
+ const base_command_1 = require("../../base-command");
9
+ const printAgents = (daemons, flags = {}) => {
10
+ core_1.ux.table(daemons, {
11
+ profile: {
12
+ header: 'profile',
13
+ },
14
+ pid: {
15
+ header: 'process',
16
+ },
17
+ running: {
18
+ header: 'running',
19
+ },
20
+ }, {
21
+ ...flags,
22
+ });
23
+ };
24
+ exports.printAgents = printAgents;
25
+ class List extends base_command_1.BaseCommand {
26
+ async run() {
27
+ return await this.execWithDaemon(async (daemon) => {
28
+ const result = await daemon.list();
29
+ (0, exports.printAgents)(result);
30
+ return result;
31
+ });
32
+ }
33
+ }
34
+ List.enableJsonFlag = true;
35
+ List.description = 'List agents.';
36
+ exports.default = List;
37
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/agent/list.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,sCAAiC;AAEjC,qDAAiD;AAE1C,MAAM,WAAW,GAAG,CAAC,OAAc,EAAE,KAAK,GAAG,EAAE,EAAE,EAAE;IACxD,SAAE,CAAC,KAAK,CACN,OAAO,EACP;QACE,OAAO,EAAE;YACP,MAAM,EAAE,SAAS;SAClB;QACD,GAAG,EAAE;YACH,MAAM,EAAE,SAAS;SAClB;QACD,OAAO,EAAE;YACP,MAAM,EAAE,SAAS;SAClB;KACF,EACD;QACE,GAAG,KAAK;KACT,CACF,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,WAAW,eAkBtB;AAEF,MAAqB,IAAK,SAAQ,0BAAwB;IAIxD,KAAK,CAAC,GAAG;QACP,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACnC,IAAA,mBAAW,EAAC,MAAM,CAAC,CAAC;YACpB,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;;AATe,mBAAc,GAAG,IAAI,CAAC;AACtB,gBAAW,GAAG,cAAc,CAAC;kBAF1B,IAAI"}
@@ -0,0 +1,7 @@
1
+ import { BaseCommand } from '../../base-command';
2
+ export default class Restart extends BaseCommand<typeof Restart> {
3
+ static enableJsonFlag: boolean;
4
+ static description: string;
5
+ run(): Promise<any>;
6
+ }
7
+ //# sourceMappingURL=restart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restart.d.ts","sourceRoot":"","sources":["../../../../src/commands/agent/restart.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,WAAW,CAAC,OAAO,OAAO,CAAC;IAC9D,OAAgB,cAAc,UAAQ;IACtC,OAAgB,WAAW,SAA2B;IAEhD,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;CAM1B"}
@@ -7,13 +7,12 @@ const base_command_1 = require("../../base-command");
7
7
  class Restart extends base_command_1.BaseCommand {
8
8
  async run() {
9
9
  return await this.execWithDaemon(async (daemon) => {
10
- const params = await this.parse(Restart);
11
- const process = await daemon.restart(params.flags.profile);
10
+ const process = await daemon.restart(this.flags.profile);
12
11
  this.log('Restarted: ', process);
13
12
  });
14
13
  }
15
14
  }
16
15
  Restart.enableJsonFlag = true;
17
- Restart.description = 'Restart daemon process.';
16
+ Restart.description = 'Restart agent daemon.';
18
17
  exports.default = Restart;
19
18
  //# sourceMappingURL=restart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restart.js","sourceRoot":"","sources":["../../../../src/commands/agent/restart.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;AAEF,qDAAiD;AAEjD,MAAqB,OAAQ,SAAQ,0BAA2B;IAI9D,KAAK,CAAC,GAAG;QACP,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC;;AARe,sBAAc,GAAG,IAAI,CAAC;AACtB,mBAAW,GAAG,uBAAuB,CAAC;kBAFnC,OAAO"}
@@ -0,0 +1,19 @@
1
+ import { BaseCommand } from '../../base-command';
2
+ export default class Run extends BaseCommand<typeof Run> {
3
+ static enableJsonFlag: boolean;
4
+ static description: string;
5
+ static flags: {
6
+ socket: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
7
+ 'web-socket': import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
8
+ http: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
9
+ epoch: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
10
+ 'dry-run': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
12
+ profile: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
13
+ config: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
14
+ 'no-agent': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
+ timeout: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
16
+ };
17
+ run(): Promise<any>;
18
+ }
19
+ //# sourceMappingURL=run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../src/commands/agent/run.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,WAAW,CAAC,OAAO,GAAG,CAAC;IACtD,OAAgB,cAAc,UAAQ;IACtC,OAAgB,WAAW,SAAsC;IAEjE,OAAgB,KAAK;;;;;;;;;;;MAgBnB;IAEI,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;CA+B1B"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ //
3
+ // Copyright 2023 DXOS.org
4
+ //
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const core_1 = require("@oclif/core");
7
+ const agent_1 = require("@dxos/agent");
8
+ const client_protocol_1 = require("@dxos/client-protocol");
9
+ const base_command_1 = require("../../base-command");
10
+ const util_1 = require("../../util");
11
+ class Run extends base_command_1.BaseCommand {
12
+ async run() {
13
+ const listen = [];
14
+ if (this.flags.socket) {
15
+ listen.push(`unix://${client_protocol_1.DX_RUNTIME}/profile/${this.flags.profile}/agent.sock`);
16
+ }
17
+ if (this.flags['web-socket']) {
18
+ listen.push(`ws://localhost:${this.flags['web-socket']}`);
19
+ }
20
+ if (this.flags.http) {
21
+ listen.push(`http://localhost:${this.flags.http}`);
22
+ }
23
+ const agent = new agent_1.Agent(this.clientConfig, { profile: this.flags.profile, listen });
24
+ await agent.start();
25
+ if (this.flags.epoch && this.flags.epoch !== '0') {
26
+ const limit = (0, util_1.safeParseInt)(this.flags.epoch, undefined);
27
+ await agent.monitorEpochs({ limit });
28
+ }
29
+ // NOTE: This is currently called by the agent's forever daemon.
30
+ this.log('Agent started... (ctrl-c to exit)');
31
+ process.on('SIGINT', async () => {
32
+ await agent.stop();
33
+ process.exit(0);
34
+ });
35
+ if (this.flags['web-socket']) {
36
+ this.log(`Open devtools: https://devtools.dxos.org?target=ws://localhost:${this.flags['web-socket']}`);
37
+ }
38
+ }
39
+ }
40
+ Run.enableJsonFlag = true;
41
+ Run.description = 'Run agent as foreground process.';
42
+ Run.flags = {
43
+ ...base_command_1.BaseCommand.flags,
44
+ socket: core_1.Flags.boolean({
45
+ description: 'Expose socket.',
46
+ default: true,
47
+ }),
48
+ 'web-socket': core_1.Flags.integer({
49
+ description: 'Expose web socket port.',
50
+ aliases: ['ws'],
51
+ }),
52
+ http: core_1.Flags.integer({
53
+ description: 'Expose HTTP proxy.',
54
+ }),
55
+ epoch: core_1.Flags.string({
56
+ description: 'Manage epochs (set to "auto" or message count).',
57
+ }),
58
+ };
59
+ exports.default = Run;
60
+ //# sourceMappingURL=run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../src/commands/agent/run.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;AAEF,sCAAoC;AAEpC,uCAAoC;AACpC,2DAAmD;AAEnD,qDAAiD;AACjD,qCAA0C;AAE1C,MAAqB,GAAI,SAAQ,0BAAuB;IAsBtD,KAAK,CAAC,GAAG;QACP,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACrB,MAAM,CAAC,IAAI,CAAC,UAAU,4BAAU,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;SAC9E;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YAC5B,MAAM,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;SAC3D;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACnB,MAAM,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;SACpD;QAED,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACpF,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QAEpB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,EAAE;YAChD,MAAM,KAAK,GAAG,IAAA,mBAAY,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YACxD,MAAM,KAAK,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;SACtC;QAED,gEAAgE;QAChE,IAAI,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QAC9C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC9B,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YAC5B,IAAI,CAAC,GAAG,CAAC,kEAAkE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;SACxG;IACH,CAAC;;AAnDe,kBAAc,GAAG,IAAI,CAAC;AACtB,eAAW,GAAG,kCAAkC,CAAC;AAEjD,SAAK,GAAG;IACtB,GAAG,0BAAW,CAAC,KAAK;IACpB,MAAM,EAAE,YAAK,CAAC,OAAO,CAAC;QACpB,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,IAAI;KACd,CAAC;IACF,YAAY,EAAE,YAAK,CAAC,OAAO,CAAC;QAC1B,WAAW,EAAE,yBAAyB;QACtC,OAAO,EAAE,CAAC,IAAI,CAAC;KAChB,CAAC;IACF,IAAI,EAAE,YAAK,CAAC,OAAO,CAAC;QAClB,WAAW,EAAE,oBAAoB;KAClC,CAAC;IACF,KAAK,EAAE,YAAK,CAAC,MAAM,CAAC;QAClB,WAAW,EAAE,iDAAiD;KAC/D,CAAC;CACH,CAAC;kBApBiB,GAAG"}
@@ -1,5 +1,5 @@
1
1
  import { BaseCommand } from '../../base-command';
2
- export default class Start extends BaseCommand {
2
+ export default class Start extends BaseCommand<typeof Start> {
3
3
  static enableJsonFlag: boolean;
4
4
  static description: string;
5
5
  run(): Promise<any>;