@dxos/cli 0.1.28-next.bec5e3e → 0.1.30-next.7c60cd3
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/README.md +62 -1
- package/config/config-default.yml +2 -0
- package/config/config-dev.yml +2 -0
- package/config/config-local.yml +2 -0
- package/config/config-staging.yml +2 -0
- package/config/config.yml +2 -0
- package/dist/src/base-command.d.ts +2 -1
- package/dist/src/base-command.d.ts.map +1 -1
- package/dist/src/base-command.js +27 -5
- package/dist/src/base-command.js.map +1 -1
- package/dist/src/commands/halo/join.d.ts +12 -0
- package/dist/src/commands/halo/join.d.ts.map +1 -0
- package/dist/src/commands/halo/join.js +66 -0
- package/dist/src/commands/halo/join.js.map +1 -0
- package/dist/src/commands/halo/share.d.ts +7 -0
- package/dist/src/commands/halo/share.d.ts.map +1 -0
- package/dist/src/commands/halo/share.js +53 -0
- package/dist/src/commands/halo/share.js.map +1 -0
- package/dist/src/commands/kube/auth.d.ts +9 -0
- package/dist/src/commands/kube/auth.d.ts.map +1 -0
- package/dist/src/commands/kube/auth.js +102 -0
- package/dist/src/commands/kube/auth.js.map +1 -0
- package/dist/src/util/exec.js +1 -1
- package/dist/src/util/exec.js.map +1 -1
- package/dist/src/util/index.d.ts +1 -0
- package/dist/src/util/index.d.ts.map +1 -1
- package/dist/src/util/index.js +1 -0
- package/dist/src/util/index.js.map +1 -1
- package/dist/src/util/supervisor/index.d.ts +2 -0
- package/dist/src/util/supervisor/index.d.ts.map +1 -0
- package/dist/src/util/supervisor/index.js +21 -0
- package/dist/src/util/supervisor/index.js.map +1 -0
- package/dist/src/util/supervisor/supervisor-rpc-peer.d.ts +15 -0
- package/dist/src/util/supervisor/supervisor-rpc-peer.d.ts.map +1 -0
- package/dist/src/util/supervisor/supervisor-rpc-peer.js +89 -0
- package/dist/src/util/supervisor/supervisor-rpc-peer.js.map +1 -0
- package/dist/src/util/telemetryrc.json +1 -1
- package/oclif.manifest.json +1 -1
- package/package.json +17 -16
package/README.md
CHANGED
|
@@ -27,7 +27,7 @@ $ npm install -g @dxos/cli
|
|
|
27
27
|
$ dx COMMAND
|
|
28
28
|
running command...
|
|
29
29
|
$ dx (--version)
|
|
30
|
-
@dxos/cli/0.1.
|
|
30
|
+
@dxos/cli/0.1.30-next.7c60cd3 linux-x64 node-v18.14.2
|
|
31
31
|
$ dx --help [COMMAND]
|
|
32
32
|
USAGE
|
|
33
33
|
$ dx COMMAND
|
|
@@ -44,8 +44,11 @@ USAGE
|
|
|
44
44
|
* [`dx config`](#dx-config)
|
|
45
45
|
* [`dx halo`](#dx-halo)
|
|
46
46
|
* [`dx halo create [DISPLAYNAME]`](#dx-halo-create-displayname)
|
|
47
|
+
* [`dx halo join`](#dx-halo-join)
|
|
47
48
|
* [`dx halo recover [SEEDPHRASE]`](#dx-halo-recover-seedphrase)
|
|
49
|
+
* [`dx halo share`](#dx-halo-share)
|
|
48
50
|
* [`dx help [COMMAND]`](#dx-help-command)
|
|
51
|
+
* [`dx kube auth`](#dx-kube-auth)
|
|
49
52
|
* [`dx kube deploy`](#dx-kube-deploy)
|
|
50
53
|
* [`dx plugins`](#dx-plugins)
|
|
51
54
|
* [`dx plugins:install PLUGIN...`](#dx-pluginsinstall-plugin)
|
|
@@ -189,6 +192,26 @@ DESCRIPTION
|
|
|
189
192
|
Create HALO.
|
|
190
193
|
```
|
|
191
194
|
|
|
195
|
+
## `dx halo join`
|
|
196
|
+
|
|
197
|
+
Join HALO (device) invitation.
|
|
198
|
+
|
|
199
|
+
```
|
|
200
|
+
USAGE
|
|
201
|
+
$ dx halo join [--config <value>] [--timeout <value>] [--json] [--invitation <value>]
|
|
202
|
+
|
|
203
|
+
FLAGS
|
|
204
|
+
--config=<value> Specify config file
|
|
205
|
+
--invitation=<value> Invitation code
|
|
206
|
+
--timeout=<value> [default: 30] Timeout in seconds
|
|
207
|
+
|
|
208
|
+
GLOBAL FLAGS
|
|
209
|
+
--json Format output as json.
|
|
210
|
+
|
|
211
|
+
DESCRIPTION
|
|
212
|
+
Join HALO (device) invitation.
|
|
213
|
+
```
|
|
214
|
+
|
|
192
215
|
## `dx halo recover [SEEDPHRASE]`
|
|
193
216
|
|
|
194
217
|
Recover HALO.
|
|
@@ -208,6 +231,25 @@ DESCRIPTION
|
|
|
208
231
|
Recover HALO.
|
|
209
232
|
```
|
|
210
233
|
|
|
234
|
+
## `dx halo share`
|
|
235
|
+
|
|
236
|
+
Create HALO (device) invitation.
|
|
237
|
+
|
|
238
|
+
```
|
|
239
|
+
USAGE
|
|
240
|
+
$ dx halo share [--config <value>] [--timeout <value>] [--json]
|
|
241
|
+
|
|
242
|
+
FLAGS
|
|
243
|
+
--config=<value> Specify config file
|
|
244
|
+
--timeout=<value> [default: 30] Timeout in seconds
|
|
245
|
+
|
|
246
|
+
GLOBAL FLAGS
|
|
247
|
+
--json Format output as json.
|
|
248
|
+
|
|
249
|
+
DESCRIPTION
|
|
250
|
+
Create HALO (device) invitation.
|
|
251
|
+
```
|
|
252
|
+
|
|
211
253
|
## `dx help [COMMAND]`
|
|
212
254
|
|
|
213
255
|
Display help for dx.
|
|
@@ -228,6 +270,25 @@ DESCRIPTION
|
|
|
228
270
|
|
|
229
271
|
_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v5.1.15/src/commands/help.ts)_
|
|
230
272
|
|
|
273
|
+
## `dx kube auth`
|
|
274
|
+
|
|
275
|
+
Authenticate with KUBE.
|
|
276
|
+
|
|
277
|
+
```
|
|
278
|
+
USAGE
|
|
279
|
+
$ dx kube auth [--config <value>] [--timeout <value>] [--json]
|
|
280
|
+
|
|
281
|
+
FLAGS
|
|
282
|
+
--config=<value> Specify config file
|
|
283
|
+
--timeout=<value> [default: 30] Timeout in seconds
|
|
284
|
+
|
|
285
|
+
GLOBAL FLAGS
|
|
286
|
+
--json Format output as json.
|
|
287
|
+
|
|
288
|
+
DESCRIPTION
|
|
289
|
+
Authenticate with KUBE.
|
|
290
|
+
```
|
|
291
|
+
|
|
231
292
|
## `dx kube deploy`
|
|
232
293
|
|
|
233
294
|
Deploy KUBE.
|
package/config/config-dev.yml
CHANGED
package/config/config-local.yml
CHANGED
package/config/config.yml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Command, Config as OclifConfig } from '@oclif/core';
|
|
2
2
|
import { Client, Config } from '@dxos/client';
|
|
3
|
-
import { PublisherRpcPeer, TelemetryContext } from './util';
|
|
3
|
+
import { PublisherRpcPeer, SupervisorRpcPeer, TelemetryContext } from './util';
|
|
4
4
|
export declare abstract class BaseCommand extends Command {
|
|
5
5
|
private _clientConfig?;
|
|
6
6
|
private _client?;
|
|
@@ -33,6 +33,7 @@ export declare abstract class BaseCommand extends Command {
|
|
|
33
33
|
* Convenience function to wrap command passing in kube publisher.
|
|
34
34
|
*/
|
|
35
35
|
execWithPublisher<T>(callback: (rpc: PublisherRpcPeer) => Promise<T | undefined>): Promise<T | undefined>;
|
|
36
|
+
execWithSupervisor<T>(callback: (rpc: SupervisorRpcPeer) => Promise<T | undefined>): Promise<T | undefined>;
|
|
36
37
|
addToTelemetryContext(values: object): void;
|
|
37
38
|
}
|
|
38
39
|
//# sourceMappingURL=base-command.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-command.d.ts","sourceRoot":"","sources":["../../src/base-command.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAS,MAAM,aAAa,CAAC;AASpE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAM9C,OAAO,EAIL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"base-command.d.ts","sourceRoot":"","sources":["../../src/base-command.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAS,MAAM,aAAa,CAAC;AASpE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAM9C,OAAO,EAIL,gBAAgB,EAChB,iBAAiB,EAEjB,gBAAgB,EAEjB,MAAM,QAAQ,CAAC;AAkBhB,8BAAsB,WAAY,SAAQ,OAAO;IAC/C,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,UAAU,CAAO;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,SAAS,CAAC,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;IAE/C,OAAgB,KAAK;;;MAWnB;gBAEU,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,WAAW;IAM/C,KAAK,EAAE,GAAG,CAAC;IAEX,IAAI,YAAY,uBAEf;IAED,EAAE;IAIF;;OAEG;IACY,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAsErB,KAAK,CAAC,GAAG,EAAE,KAAK;IAOhB,OAAO;IActB;;OAEG;IACG,SAAS;IAYf;;OAEG;IACG,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAkBrG;;OAEG;IACG,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAyBzG,kBAAkB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IA0BjH,qBAAqB,CAAC,MAAM,EAAE,MAAM;CAUrC"}
|
package/dist/src/base-command.js
CHANGED
|
@@ -159,10 +159,10 @@ class BaseCommand extends core_1.Command {
|
|
|
159
159
|
async getClient() {
|
|
160
160
|
(0, node_assert_1.default)(this._clientConfig);
|
|
161
161
|
if (!this._client) {
|
|
162
|
-
(0, log_1.log)('Creating client...', {}, { file: "packages/devtools/cli/src/base-command.ts", line:
|
|
162
|
+
(0, log_1.log)('Creating client...', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 183, 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) });
|
|
163
163
|
this._client = new client_1.Client({ config: this._clientConfig });
|
|
164
164
|
await this._client.initialize();
|
|
165
|
-
(0, log_1.log)('Initialized', {}, { file: "packages/devtools/cli/src/base-command.ts", line:
|
|
165
|
+
(0, log_1.log)('Initialized', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 186, 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) });
|
|
166
166
|
}
|
|
167
167
|
return this._client;
|
|
168
168
|
}
|
|
@@ -173,12 +173,12 @@ class BaseCommand extends core_1.Command {
|
|
|
173
173
|
try {
|
|
174
174
|
const client = await this.getClient();
|
|
175
175
|
const value = await callback(client);
|
|
176
|
-
(0, log_1.log)('Destroying...', {}, { file: "packages/devtools/cli/src/base-command.ts", line:
|
|
176
|
+
(0, log_1.log)('Destroying...', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 199, 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) });
|
|
177
177
|
await client.destroy();
|
|
178
|
-
(0, log_1.log)('Destroyed', {}, { file: "packages/devtools/cli/src/base-command.ts", line:
|
|
178
|
+
(0, log_1.log)('Destroyed', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 201, 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) });
|
|
179
179
|
// TODO(burdon): Ends with abort signal without sleep (threads still open?)
|
|
180
180
|
await (0, async_1.sleep)(3000);
|
|
181
|
-
(0, log_1.log)('Done', {}, { file: "packages/devtools/cli/src/base-command.ts", line:
|
|
181
|
+
(0, log_1.log)('Done', {}, { file: "packages/devtools/cli/src/base-command.ts", line: 205, 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) });
|
|
182
182
|
return value;
|
|
183
183
|
}
|
|
184
184
|
catch (err) {
|
|
@@ -210,6 +210,28 @@ class BaseCommand extends core_1.Command {
|
|
|
210
210
|
}
|
|
211
211
|
}
|
|
212
212
|
}
|
|
213
|
+
async execWithSupervisor(callback) {
|
|
214
|
+
let rpc;
|
|
215
|
+
try {
|
|
216
|
+
(0, node_assert_1.default)(this._clientConfig);
|
|
217
|
+
const wsEndpoint = this._clientConfig.get('runtime.services.supervisor.server');
|
|
218
|
+
(0, node_assert_1.default)(wsEndpoint);
|
|
219
|
+
rpc = new util_1.SupervisorRpcPeer(wsEndpoint);
|
|
220
|
+
await Promise.race([rpc.connected.waitForCount(1), rpc.error.waitForCount(1).then((err) => Promise.reject(err))]);
|
|
221
|
+
const value = await callback(rpc);
|
|
222
|
+
return value;
|
|
223
|
+
}
|
|
224
|
+
catch (err) {
|
|
225
|
+
// TODO(egorgripasov): Move Sentry into this.error?
|
|
226
|
+
Sentry.captureException(err);
|
|
227
|
+
this.error(err);
|
|
228
|
+
}
|
|
229
|
+
finally {
|
|
230
|
+
if (rpc) {
|
|
231
|
+
await rpc.close();
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
213
235
|
addToTelemetryContext(values) {
|
|
214
236
|
if (!this._telemetryContext) {
|
|
215
237
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-command.js","sourceRoot":"","sources":["../../src/base-command.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,sCAAoE;AACpE,kDAA0B;AAC1B,sDAA2B;AAC3B,4DAA+B;AAC/B,8DAAiC;AACjC,+CAA6D;AAC7D,yCAAiC;AAEjC,uCAAoC;AACpC,yCAA8C;AAC9C,mCAAgC;AAChC,qDAAuC;AACvC,yCAAgD;AAChD,2DAA6C;AAE7C,
|
|
1
|
+
{"version":3,"file":"base-command.js","sourceRoot":"","sources":["../../src/base-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BaseCommand } from '../../base-command';
|
|
2
|
+
export default class Join extends BaseCommand {
|
|
3
|
+
static enableJsonFlag: boolean;
|
|
4
|
+
static description: string;
|
|
5
|
+
static flags: {
|
|
6
|
+
invitation: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
7
|
+
config: import("@oclif/core/lib/interfaces").OptionFlag<string>;
|
|
8
|
+
timeout: import("@oclif/core/lib/interfaces").OptionFlag<number>;
|
|
9
|
+
};
|
|
10
|
+
run(): Promise<any>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=join.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"join.d.ts","sourceRoot":"","sources":["../../../../src/commands/halo/join.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,WAAW;IAC3C,OAAgB,cAAc,UAAQ;IACtC,OAAgB,WAAW,SAAoC;IAE/D,OAAgB,KAAK;;;;MAKnB;IAEI,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;CA+C1B"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2023 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
const core_1 = require("@oclif/core");
|
|
10
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
11
|
+
const async_1 = require("@dxos/async");
|
|
12
|
+
const client_1 = require("@dxos/client");
|
|
13
|
+
const base_command_1 = require("../../base-command");
|
|
14
|
+
class Join extends base_command_1.BaseCommand {
|
|
15
|
+
async run() {
|
|
16
|
+
const { flags } = await this.parse(Join);
|
|
17
|
+
let { invitation: encoded } = flags;
|
|
18
|
+
return await this.execWithClient(async (client) => {
|
|
19
|
+
const identity = client.halo.identity;
|
|
20
|
+
if (identity) {
|
|
21
|
+
this.log((0, chalk_1.default) `{red Profile already initialized.}`);
|
|
22
|
+
return {};
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
if (!encoded) {
|
|
26
|
+
encoded = await core_1.CliUx.ux.prompt('Invitation');
|
|
27
|
+
}
|
|
28
|
+
const invitation = client_1.InvitationEncoder.decode(encoded);
|
|
29
|
+
const observable = await client.halo.acceptInvitation(invitation);
|
|
30
|
+
const connecting = new async_1.Trigger();
|
|
31
|
+
const done = new async_1.Trigger();
|
|
32
|
+
observable.subscribe({
|
|
33
|
+
onConnecting: (invitation) => {
|
|
34
|
+
connecting.wake(invitation);
|
|
35
|
+
},
|
|
36
|
+
async onAuthenticating() {
|
|
37
|
+
const code = await core_1.CliUx.ux.prompt('Invitation code');
|
|
38
|
+
await observable.authenticate(code);
|
|
39
|
+
},
|
|
40
|
+
onSuccess: (invitation) => {
|
|
41
|
+
done.wake(invitation);
|
|
42
|
+
},
|
|
43
|
+
onError: (err) => {
|
|
44
|
+
throw err;
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
core_1.CliUx.ux.action.start('Waiting for peer to connect');
|
|
48
|
+
await connecting.wait();
|
|
49
|
+
core_1.CliUx.ux.action.stop();
|
|
50
|
+
await done.wait();
|
|
51
|
+
// TODO(egorgripasov): Wait to replicate?
|
|
52
|
+
await (0, async_1.sleep)(15000);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.default = Join;
|
|
58
|
+
Join.enableJsonFlag = true;
|
|
59
|
+
Join.description = 'Join HALO (device) invitation.';
|
|
60
|
+
Join.flags = {
|
|
61
|
+
...base_command_1.BaseCommand.flags,
|
|
62
|
+
invitation: core_1.Flags.string({
|
|
63
|
+
description: 'Invitation code'
|
|
64
|
+
})
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=join.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"join.js","sourceRoot":"","sources":["../../../../src/commands/halo/join.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,sCAA2C;AAC3C,kDAA0B;AAE1B,uCAA6C;AAC7C,yCAAqE;AAErE,qDAAiD;AAEjD,MAAqB,IAAK,SAAQ,0BAAW;IAW3C,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;QAEpC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;YACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;YACtC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,GAAG,CAAC,IAAA,eAAK,EAAA,oCAAoC,CAAC,CAAC;gBACpD,OAAO,EAAE,CAAC;aACX;iBAAM;gBACL,IAAI,CAAC,OAAO,EAAE;oBACZ,OAAO,GAAG,MAAM,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;iBAC/C;gBAED,MAAM,UAAU,GAAG,0BAAiB,CAAC,MAAM,CAAC,OAAQ,CAAC,CAAC;gBACtD,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBAElE,MAAM,UAAU,GAAG,IAAI,eAAO,EAAc,CAAC;gBAC7C,MAAM,IAAI,GAAG,IAAI,eAAO,EAAc,CAAC;gBAEvC,UAAU,CAAC,SAAS,CAAC;oBACnB,YAAY,EAAE,CAAC,UAAU,EAAE,EAAE;wBAC3B,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC9B,CAAC;oBACD,KAAK,CAAC,gBAAgB;wBACpB,MAAM,IAAI,GAAG,MAAM,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;wBACtD,MAAM,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBACtC,CAAC;oBACD,SAAS,EAAE,CAAC,UAAU,EAAE,EAAE;wBACxB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACxB,CAAC;oBACD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;wBACf,MAAM,GAAG,CAAC;oBACZ,CAAC;iBACF,CAAC,CAAC;gBAEH,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBACrD,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;gBACxB,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAEvB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;gBAElB,yCAAyC;gBACzC,MAAM,IAAA,aAAK,EAAC,KAAM,CAAC,CAAC;aACrB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;AAzDH,uBA0DC;AAzDiB,mBAAc,GAAG,IAAI,CAAC;AACtB,gBAAW,GAAG,gCAAgC,CAAC;AAE/C,UAAK,GAAG;IACtB,GAAG,0BAAW,CAAC,KAAK;IACpB,UAAU,EAAE,YAAK,CAAC,MAAM,CAAC;QACvB,WAAW,EAAE,iBAAiB;KAC/B,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"share.d.ts","sourceRoot":"","sources":["../../../../src/commands/halo/share.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,WAAW;IAC5C,OAAgB,cAAc,UAAQ;IACtC,OAAgB,WAAW,SAAsC;IAE3D,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;CAwC1B"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2023 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
const core_1 = require("@oclif/core");
|
|
10
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
11
|
+
const async_1 = require("@dxos/async");
|
|
12
|
+
const client_1 = require("@dxos/client");
|
|
13
|
+
const base_command_1 = require("../../base-command");
|
|
14
|
+
class Share extends base_command_1.BaseCommand {
|
|
15
|
+
async run() {
|
|
16
|
+
return await this.execWithClient(async (client) => {
|
|
17
|
+
const identity = client.halo.identity;
|
|
18
|
+
if (!identity) {
|
|
19
|
+
this.log((0, chalk_1.default) `{red Profile not initialized.}`);
|
|
20
|
+
return {};
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
const observable = await client.halo.createInvitation();
|
|
24
|
+
const connecting = new async_1.Trigger();
|
|
25
|
+
const done = new async_1.Trigger();
|
|
26
|
+
observable.subscribe({
|
|
27
|
+
onConnecting: (invitation) => {
|
|
28
|
+
connecting.wake(invitation);
|
|
29
|
+
},
|
|
30
|
+
onSuccess: (invitation) => {
|
|
31
|
+
done.wake(invitation);
|
|
32
|
+
},
|
|
33
|
+
onError: (err) => {
|
|
34
|
+
throw err;
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
await connecting.wait();
|
|
38
|
+
const invitationCode = client_1.InvitationEncoder.encode(observable.invitation);
|
|
39
|
+
this.log((0, chalk_1.default) `\n{blue Invitation}: ${invitationCode}`);
|
|
40
|
+
this.log((0, chalk_1.default) `\n{red Secret}: ${observable.invitation.authenticationCode}\n`);
|
|
41
|
+
core_1.CliUx.ux.action.start('Waiting for peer to connect');
|
|
42
|
+
await done.wait();
|
|
43
|
+
core_1.CliUx.ux.action.stop();
|
|
44
|
+
// TODO(egorgripasov): Wait to replicate?
|
|
45
|
+
await (0, async_1.sleep)(15000);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.default = Share;
|
|
51
|
+
Share.enableJsonFlag = true;
|
|
52
|
+
Share.description = 'Create HALO (device) invitation.';
|
|
53
|
+
//# sourceMappingURL=share.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"share.js","sourceRoot":"","sources":["../../../../src/commands/halo/share.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,sCAAoC;AACpC,kDAA0B;AAE1B,uCAA6C;AAC7C,yCAAqE;AAErE,qDAAiD;AAEjD,MAAqB,KAAM,SAAQ,0BAAW;IAI5C,KAAK,CAAC,GAAG;QACP,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;YACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;YACtC,IAAI,CAAC,QAAQ,EAAE;gBACb,IAAI,CAAC,GAAG,CAAC,IAAA,eAAK,EAAA,gCAAgC,CAAC,CAAC;gBAChD,OAAO,EAAE,CAAC;aACX;iBAAM;gBACL,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAExD,MAAM,UAAU,GAAG,IAAI,eAAO,EAAc,CAAC;gBAC7C,MAAM,IAAI,GAAG,IAAI,eAAO,EAAc,CAAC;gBAEvC,UAAU,CAAC,SAAS,CAAC;oBACnB,YAAY,EAAE,CAAC,UAAU,EAAE,EAAE;wBAC3B,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC9B,CAAC;oBACD,SAAS,EAAE,CAAC,UAAU,EAAE,EAAE;wBACxB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACxB,CAAC;oBACD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;wBACf,MAAM,GAAG,CAAC;oBACZ,CAAC;iBACF,CAAC,CAAC;gBAEH,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;gBAExB,MAAM,cAAc,GAAG,0BAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,UAAW,CAAC,CAAC;gBAExE,IAAI,CAAC,GAAG,CAAC,IAAA,eAAK,EAAA,wBAAwB,cAAc,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC,GAAG,CAAC,IAAA,eAAK,EAAA,mBAAmB,UAAU,CAAC,UAAW,CAAC,kBAAkB,IAAI,CAAC,CAAC;gBAEhF,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBACrD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClB,YAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAEvB,yCAAyC;gBACzC,MAAM,IAAA,aAAK,EAAC,KAAM,CAAC,CAAC;aACrB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;AA3CH,wBA4CC;AA3CiB,oBAAc,GAAG,IAAI,CAAC;AACtB,iBAAW,GAAG,kCAAkC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Client } from '@dxos/client';
|
|
2
|
+
import { BaseCommand } from '../../base-command';
|
|
3
|
+
export default class Auth extends BaseCommand {
|
|
4
|
+
static enableJsonFlag: boolean;
|
|
5
|
+
static description: string;
|
|
6
|
+
presentAuthCredentials(client: Client): Promise<any>;
|
|
7
|
+
run(): Promise<any>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/commands/kube/auth.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAItC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAiCjD,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,WAAW;IAC3C,OAAgB,cAAc,UAAQ;IACtC,OAAgB,WAAW,SAA6B;IAElD,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAwCpD,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;CA2B1B"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2023 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
10
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
|
11
|
+
const async_1 = require("@dxos/async");
|
|
12
|
+
const keys_1 = require("@dxos/keys");
|
|
13
|
+
const base_command_1 = require("../../base-command");
|
|
14
|
+
const timeout = 500;
|
|
15
|
+
const getCredentials = async (client, type, predicate) => {
|
|
16
|
+
const credentialsQuery = client.halo.queryCredentials({ type });
|
|
17
|
+
const trigger = new async_1.Trigger();
|
|
18
|
+
credentialsQuery.subscribe({
|
|
19
|
+
onUpdate: (credentials) => {
|
|
20
|
+
if (predicate) {
|
|
21
|
+
credentials = credentials.filter(predicate);
|
|
22
|
+
}
|
|
23
|
+
if (credentials.length) {
|
|
24
|
+
trigger.wake(credentials);
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
onError: (err) => {
|
|
28
|
+
throw err;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
try {
|
|
32
|
+
return await (0, async_1.asyncTimeout)(trigger.wait(), timeout);
|
|
33
|
+
}
|
|
34
|
+
catch (err) {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
class Auth extends base_command_1.BaseCommand {
|
|
39
|
+
async presentAuthCredentials(client) {
|
|
40
|
+
this.log((0, chalk_1.default) `{gray Initiating presentation sequence..}`);
|
|
41
|
+
// TODO(egorgripasov): Find AuthorizedDevice by KubeAccess credential.
|
|
42
|
+
const { deviceKey } = client.halo.device;
|
|
43
|
+
const authDeviceCreds = await getCredentials(client, 'dxos.halo.credentials.AuthorizedDevice', (cred) => keys_1.PublicKey.equals(cred.subject.id, deviceKey));
|
|
44
|
+
if (!authDeviceCreds.length) {
|
|
45
|
+
throw new Error('No authorized devices');
|
|
46
|
+
}
|
|
47
|
+
// Init auth sequence.
|
|
48
|
+
return this.execWithSupervisor(async (supervisor) => {
|
|
49
|
+
var _a;
|
|
50
|
+
const { nonce, kubeKey } = await supervisor.rpc.initAuthSequence();
|
|
51
|
+
// Find proper KubeAccess credential.
|
|
52
|
+
const kubeAccessCreds = await getCredentials(client, 'dxos.halo.credentials.KubeAccess', (cred) => keys_1.PublicKey.equals(cred.issuer, kubeKey));
|
|
53
|
+
if (!kubeAccessCreds.length) {
|
|
54
|
+
this.log((0, chalk_1.default) `{gray No kube access credentials - requesting..}`);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
this.log((0, chalk_1.default) `{gray Kube access credentials found - requesting session token..}`);
|
|
58
|
+
}
|
|
59
|
+
const credsToPresent = [authDeviceCreds[0].id, (_a = kubeAccessCreds[0]) === null || _a === void 0 ? void 0 : _a.id].filter(Boolean);
|
|
60
|
+
// Create presentation.
|
|
61
|
+
const presentation = await client.halo.presentCredentials({
|
|
62
|
+
ids: credsToPresent,
|
|
63
|
+
nonce
|
|
64
|
+
});
|
|
65
|
+
return supervisor.rpc.authenticate({
|
|
66
|
+
presentation
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
async run() {
|
|
71
|
+
return await this.execWithClient(async (client) => {
|
|
72
|
+
const identity = client.halo.identity;
|
|
73
|
+
if (!identity) {
|
|
74
|
+
// TODO(burdon): Error if called twice with no halo.
|
|
75
|
+
// Error [OpenError]: Error parsing JSON in /tmp/user-1/dx/cli/keystore/data.json: Unexpected end of JSON input
|
|
76
|
+
this.log((0, chalk_1.default) `{red Profile not initialized.}`);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
const { credential, token } = await this.presentAuthCredentials(client);
|
|
80
|
+
(0, node_assert_1.default)(!!credential || !!token, 'No credentials or token received.');
|
|
81
|
+
if (token) {
|
|
82
|
+
this.log((0, chalk_1.default) `{green Authenticated with session token ${token}}`);
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
this.log((0, chalk_1.default) `{gray Writing KUBE access credential..}`);
|
|
86
|
+
await client.halo.writeCredentials([credential]);
|
|
87
|
+
const { token } = await this.presentAuthCredentials(client);
|
|
88
|
+
if (token) {
|
|
89
|
+
this.log((0, chalk_1.default) `{green Authenticated with session token: ${token}}`);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
this.log((0, chalk_1.default) `{red Failed to authenticate.}`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
exports.default = Auth;
|
|
100
|
+
Auth.enableJsonFlag = true;
|
|
101
|
+
Auth.description = 'Authenticate with KUBE.';
|
|
102
|
+
//# sourceMappingURL=auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/commands/kube/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/src/util/exec.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.exec = void 0;
|
|
7
7
|
const node_child_process_1 = require("node:child_process");
|
|
8
|
-
// TODO
|
|
8
|
+
// TODO(zhenyasav): resolve with executors/.../exec.ts
|
|
9
9
|
const exec = (command, options) => {
|
|
10
10
|
const { verbose, cwd } = { verbose: false, cwd: process.cwd(), ...options };
|
|
11
11
|
if (verbose) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../src/util/exec.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,2DAA2C;AAO3C,
|
|
1
|
+
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../src/util/exec.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,2DAA2C;AAO3C,sDAAsD;AAC/C,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,OAA8B,EAAmB,EAAE;IACvF,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC;IAC5E,IAAI,OAAO,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KACtB;IACD,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,UAAU,GAAG,IAAA,0BAAK,EAAC,KAAK,EAAE,IAAI,EAAE;YACpC,KAAK,EAAE,IAAI;YACX,GAAG;SACJ,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/B,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YACrC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YACrC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAC9B,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;aAC5B;iBAAM;gBACL,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;aACzG;QACH,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA9BW,QAAA,IAAI,QA8Bf"}
|
package/dist/src/util/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"AAIA,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"AAIA,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC"}
|
package/dist/src/util/index.js
CHANGED
|
@@ -19,5 +19,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
20
|
__exportStar(require("./telemetry"), exports);
|
|
21
21
|
__exportStar(require("./publish"), exports);
|
|
22
|
+
__exportStar(require("./supervisor"), exports);
|
|
22
23
|
__exportStar(require("./util"), exports);
|
|
23
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;AAEF,8CAA4B;AAC5B,4CAA0B;AAC1B,yCAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;AAEF,8CAA4B;AAC5B,4CAA0B;AAC1B,+CAA6B;AAC7B,yCAAuB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/util/supervisor/index.ts"],"names":[],"mappings":"AAIA,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2023 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
17
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
__exportStar(require("./supervisor-rpc-peer"), exports);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/util/supervisor/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;AAEF,wDAAsC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Event } from '@dxos/async';
|
|
2
|
+
import { Supervisor } from '@dxos/protocols/proto/dxos/service/supervisor';
|
|
3
|
+
export declare class SupervisorRpcPeer {
|
|
4
|
+
private readonly _url;
|
|
5
|
+
private readonly _socket;
|
|
6
|
+
private readonly _rpc;
|
|
7
|
+
private readonly _connectTrigger;
|
|
8
|
+
readonly connected: Event<void>;
|
|
9
|
+
readonly disconnected: Event<void>;
|
|
10
|
+
readonly error: Event<Error>;
|
|
11
|
+
constructor(_url: string);
|
|
12
|
+
get rpc(): Supervisor;
|
|
13
|
+
close(): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=supervisor-rpc-peer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supervisor-rpc-peer.d.ts","sourceRoot":"","sources":["../../../../src/util/supervisor/supervisor-rpc-peer.ts"],"names":[],"mappings":"AAQA,OAAO,EAAW,KAAK,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AAK3E,qBAAa,iBAAiB;IAShB,OAAO,CAAC,QAAQ,CAAC,IAAI;IARjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2C;IAChE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IAEjD,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,YAAY,cAAe;IACpC,QAAQ,CAAC,KAAK,eAAsB;gBAEP,IAAI,EAAE,MAAM;IAqDzC,IAAI,GAAG,IAAI,UAAU,CAEpB;IAEK,KAAK;CAOZ"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2023 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.SupervisorRpcPeer = void 0;
|
|
10
|
+
// TODO(egorgripasov): Factor out.
|
|
11
|
+
const debug_1 = __importDefault(require("debug"));
|
|
12
|
+
const isomorphic_ws_1 = __importDefault(require("isomorphic-ws"));
|
|
13
|
+
const async_1 = require("@dxos/async");
|
|
14
|
+
const protocols_1 = require("@dxos/protocols");
|
|
15
|
+
const rpc_1 = require("@dxos/rpc");
|
|
16
|
+
const log = (0, debug_1.default)('dxos:cli:supervisor-rpc-peer');
|
|
17
|
+
class SupervisorRpcPeer {
|
|
18
|
+
constructor(_url) {
|
|
19
|
+
this._url = _url;
|
|
20
|
+
this._connectTrigger = new async_1.Trigger();
|
|
21
|
+
this.connected = new async_1.Event();
|
|
22
|
+
this.disconnected = new async_1.Event();
|
|
23
|
+
this.error = new async_1.Event();
|
|
24
|
+
this._socket = new isomorphic_ws_1.default(this._url);
|
|
25
|
+
this._socket.onopen = async () => {
|
|
26
|
+
try {
|
|
27
|
+
await this._rpc.open();
|
|
28
|
+
log(`RPC open ${this._url}`);
|
|
29
|
+
this.connected.emit();
|
|
30
|
+
this._connectTrigger.wake();
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
this.error.emit(err);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
this._socket.onclose = async () => {
|
|
37
|
+
log(`Disconnected ${this._url}`);
|
|
38
|
+
this.disconnected.emit();
|
|
39
|
+
try {
|
|
40
|
+
await this._rpc.close();
|
|
41
|
+
}
|
|
42
|
+
catch (err) {
|
|
43
|
+
this.error.emit(err);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
this._socket.onerror = (event) => {
|
|
47
|
+
var _a;
|
|
48
|
+
log(`Publisher socket error ${this._url} ${event.message}`);
|
|
49
|
+
this.error.emit((_a = event.error) !== null && _a !== void 0 ? _a : new Error(event.message));
|
|
50
|
+
};
|
|
51
|
+
this._rpc = (0, rpc_1.createProtoRpcPeer)({
|
|
52
|
+
requested: {
|
|
53
|
+
Supervisor: protocols_1.schema.getService('dxos.service.supervisor.Supervisor')
|
|
54
|
+
},
|
|
55
|
+
exposed: {},
|
|
56
|
+
handlers: {},
|
|
57
|
+
noHandshake: true,
|
|
58
|
+
timeout: 1000000,
|
|
59
|
+
port: {
|
|
60
|
+
send: (msg) => {
|
|
61
|
+
this._socket.send(msg);
|
|
62
|
+
},
|
|
63
|
+
subscribe: (cb) => {
|
|
64
|
+
this._socket.onmessage = async (msg) => {
|
|
65
|
+
if (typeof Blob !== 'undefined' && msg.data instanceof Blob) {
|
|
66
|
+
cb(Buffer.from(await msg.data.arrayBuffer()));
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
cb(msg.data);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
get rpc() {
|
|
77
|
+
return this._rpc.rpc.Supervisor;
|
|
78
|
+
}
|
|
79
|
+
async close() {
|
|
80
|
+
try {
|
|
81
|
+
await this._rpc.close();
|
|
82
|
+
}
|
|
83
|
+
finally {
|
|
84
|
+
this._socket.close();
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
exports.SupervisorRpcPeer = SupervisorRpcPeer;
|
|
89
|
+
//# sourceMappingURL=supervisor-rpc-peer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supervisor-rpc-peer.js","sourceRoot":"","sources":["../../../../src/util/supervisor/supervisor-rpc-peer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"DX_ENVIRONMENT": "staging",
|
|
3
|
-
"DX_RELEASE": "@dxos/cli@0.1.
|
|
3
|
+
"DX_RELEASE": "@dxos/cli@0.1.30-next.7c60cd3",
|
|
4
4
|
"SENTRY_DESTINATION": "https://2647916221e643869965e78469479aa4@o4504012000067584.ingest.sentry.io/4504012027265029",
|
|
5
5
|
"TELEMETRY_API_KEY": "B00QG6PtJJrJ0VVFe0H5a6bcUUShKyZM",
|
|
6
6
|
"IPDATA_API_KEY": "ccc5f0cd66dd34a7c31c2ddc61c2bbca2db73892a993982bb3a5f0e2"
|
package/oclif.manifest.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"0.1.28-next.bec5e3e","commands":{"app:create":{"id":"app:create","description":"Create a DXOS project.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"tag":{"name":"tag","type":"option","description":"Git tag or branch of the DXOS repo to checkout.","multiple":false},"template":{"name":"template","type":"option","char":"t","description":"Template to use when creating the project.","multiple":false,"options":["hello","bare","tasks"],"default":"hello"},"interactive":{"name":"interactive","type":"boolean","char":"i","description":"Customize app template options via interactive prompt","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"Verbose output","allowNo":false}},"args":[{"name":"name","description":"Name of the project","required":true}]},"app:list":{"id":"app:list","description":"List apps.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"app:publish":{"id":"app:publish","description":"Publish apps.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"configPath":{"name":"configPath","type":"option","description":"Path to dx.yml","multiple":false},"accessToken":{"name":"accessToken","type":"option","description":"Access token for publishing","multiple":false},"skipExisting":{"name":"skipExisting","type":"boolean","description":"Do not update content on KUBE if version already exists","allowNo":false},"verbose":{"name":"verbose","type":"boolean","description":"Verbose output","allowNo":false},"version":{"name":"version","type":"option","description":"Version of modules to publish","multiple":false}},"args":[]},"config":{"id":"config","description":"Show config file.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"halo:create":{"id":"halo:create","description":"Create HALO.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[{"name":"displayName"}],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"halo":{"id":"halo","description":"Show HALO profile.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"halo:recover":{"id":"halo:recover","description":"Recover HALO.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[{"name":"seedphrase"}],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"kube:deploy":{"id":"kube:deploy","description":"Deploy KUBE.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"hostname":{"name":"hostname","type":"option","description":"Hostname","required":true,"multiple":false},"provider":{"name":"provider","type":"option","description":"Cloud Provider","multiple":false,"default":"digitalocean"},"accessToken":{"name":"accessToken","type":"option","description":"Access token for seeding admin identity","multiple":false},"dev":{"name":"dev","type":"boolean","description":"Deploy latest version from dev channel","allowNo":false}},"args":[]},"reset":{"id":"reset","description":"Reset all data.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30}},"args":[]},"shell":{"id":"shell","description":"Interactive shell.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30}},"args":[]},"space:create":{"id":"space:create","description":"Create space.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[{"name":"name"}],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"space":{"id":"space","description":"List spaces.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30}},"args":[]},"space:invite":{"id":"space:invite","description":"Create space invitation.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30}},"args":[{"name":"key"}]},"space:join":{"id":"space:join","description":"Join space invitation","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"invitation":{"name":"invitation","type":"option","description":"Invitation code","multiple":false},"secret":{"name":"secret","type":"option","description":"Invitation secret","multiple":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"space:list":{"id":"space:list","description":"List spaces.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"columns":{"name":"columns","type":"option","description":"only show provided columns (comma-separated)","multiple":false,"exclusive":["extended"]},"sort":{"name":"sort","type":"option","description":"property to sort by (prepend '-' for descending)","multiple":false},"filter":{"name":"filter","type":"option","description":"filter property by partial string matching, ex: name=foo","multiple":false},"csv":{"name":"csv","type":"boolean","description":"output is csv format [alias: --output=csv]","allowNo":false,"exclusive":["no-truncate"]},"output":{"name":"output","type":"option","description":"output in a more machine friendly format","multiple":false,"options":["csv","json","yaml"],"exclusive":["no-truncate","csv"]},"extended":{"name":"extended","type":"boolean","char":"x","description":"show extra columns","allowNo":false,"exclusive":["columns"]},"no-truncate":{"name":"no-truncate","type":"boolean","description":"do not truncate output to fit screen","allowNo":false,"exclusive":["csv"]},"no-header":{"name":"no-header","type":"boolean","description":"hide table header from output","allowNo":false,"exclusive":["csv"]}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"space:members":{"id":"space:members","description":"List space members.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"columns":{"name":"columns","type":"option","description":"only show provided columns (comma-separated)","multiple":false,"exclusive":["extended"]},"sort":{"name":"sort","type":"option","description":"property to sort by (prepend '-' for descending)","multiple":false},"filter":{"name":"filter","type":"option","description":"filter property by partial string matching, ex: name=foo","multiple":false},"csv":{"name":"csv","type":"boolean","description":"output is csv format [alias: --output=csv]","allowNo":false,"exclusive":["no-truncate"]},"output":{"name":"output","type":"option","description":"output in a more machine friendly format","multiple":false,"options":["csv","json","yaml"],"exclusive":["no-truncate","csv"]},"extended":{"name":"extended","type":"boolean","char":"x","description":"show extra columns","allowNo":false,"exclusive":["columns"]},"no-truncate":{"name":"no-truncate","type":"boolean","description":"do not truncate output to fit screen","allowNo":false,"exclusive":["csv"]},"no-header":{"name":"no-header","type":"boolean","description":"hide table header from output","allowNo":false,"exclusive":["csv"]}},"args":[{"name":"key"}],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"tunnel:list":{"id":"tunnel:list","description":"List tunnels.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"tunnel:set":{"id":"tunnel:set","description":"Enable or disable tunnel.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"app":{"name":"app","type":"option","description":"Application name","required":true,"multiple":false},"enabled":{"name":"enabled","type":"boolean","description":"Enable tunnel.","allowNo":false},"disabled":{"name":"disabled","type":"boolean","description":"Disable tunnel.","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}}}}
|
|
1
|
+
{"version":"0.1.30-next.7c60cd3","commands":{"app:create":{"id":"app:create","description":"Create a DXOS project.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"tag":{"name":"tag","type":"option","description":"Git tag or branch of the DXOS repo to checkout.","multiple":false},"template":{"name":"template","type":"option","char":"t","description":"Template to use when creating the project.","multiple":false,"options":["hello","bare","tasks"],"default":"hello"},"interactive":{"name":"interactive","type":"boolean","char":"i","description":"Customize app template options via interactive prompt","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"Verbose output","allowNo":false}},"args":[{"name":"name","description":"Name of the project","required":true}]},"app:list":{"id":"app:list","description":"List apps.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"app:publish":{"id":"app:publish","description":"Publish apps.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"configPath":{"name":"configPath","type":"option","description":"Path to dx.yml","multiple":false},"accessToken":{"name":"accessToken","type":"option","description":"Access token for publishing","multiple":false},"skipExisting":{"name":"skipExisting","type":"boolean","description":"Do not update content on KUBE if version already exists","allowNo":false},"verbose":{"name":"verbose","type":"boolean","description":"Verbose output","allowNo":false},"version":{"name":"version","type":"option","description":"Version of modules to publish","multiple":false}},"args":[]},"config":{"id":"config","description":"Show config file.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"halo:create":{"id":"halo:create","description":"Create HALO.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[{"name":"displayName"}],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"halo":{"id":"halo","description":"Show HALO profile.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"halo:join":{"id":"halo:join","description":"Join HALO (device) invitation.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"invitation":{"name":"invitation","type":"option","description":"Invitation code","multiple":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"halo:recover":{"id":"halo:recover","description":"Recover HALO.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[{"name":"seedphrase"}],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"halo:share":{"id":"halo:share","description":"Create HALO (device) invitation.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"kube:auth":{"id":"kube:auth","description":"Authenticate with KUBE.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"kube:deploy":{"id":"kube:deploy","description":"Deploy KUBE.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"hostname":{"name":"hostname","type":"option","description":"Hostname","required":true,"multiple":false},"provider":{"name":"provider","type":"option","description":"Cloud Provider","multiple":false,"default":"digitalocean"},"accessToken":{"name":"accessToken","type":"option","description":"Access token for seeding admin identity","multiple":false},"dev":{"name":"dev","type":"boolean","description":"Deploy latest version from dev channel","allowNo":false}},"args":[]},"reset":{"id":"reset","description":"Reset all data.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30}},"args":[]},"shell":{"id":"shell","description":"Interactive shell.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30}},"args":[]},"space:create":{"id":"space:create","description":"Create space.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[{"name":"name"}],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"space":{"id":"space","description":"List spaces.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30}},"args":[]},"space:invite":{"id":"space:invite","description":"Create space invitation.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30}},"args":[{"name":"key"}]},"space:join":{"id":"space:join","description":"Join space invitation","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"invitation":{"name":"invitation","type":"option","description":"Invitation code","multiple":false},"secret":{"name":"secret","type":"option","description":"Invitation secret","multiple":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"space:list":{"id":"space:list","description":"List spaces.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"columns":{"name":"columns","type":"option","description":"only show provided columns (comma-separated)","multiple":false,"exclusive":["extended"]},"sort":{"name":"sort","type":"option","description":"property to sort by (prepend '-' for descending)","multiple":false},"filter":{"name":"filter","type":"option","description":"filter property by partial string matching, ex: name=foo","multiple":false},"csv":{"name":"csv","type":"boolean","description":"output is csv format [alias: --output=csv]","allowNo":false,"exclusive":["no-truncate"]},"output":{"name":"output","type":"option","description":"output in a more machine friendly format","multiple":false,"options":["csv","json","yaml"],"exclusive":["no-truncate","csv"]},"extended":{"name":"extended","type":"boolean","char":"x","description":"show extra columns","allowNo":false,"exclusive":["columns"]},"no-truncate":{"name":"no-truncate","type":"boolean","description":"do not truncate output to fit screen","allowNo":false,"exclusive":["csv"]},"no-header":{"name":"no-header","type":"boolean","description":"hide table header from output","allowNo":false,"exclusive":["csv"]}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"space:members":{"id":"space:members","description":"List space members.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"columns":{"name":"columns","type":"option","description":"only show provided columns (comma-separated)","multiple":false,"exclusive":["extended"]},"sort":{"name":"sort","type":"option","description":"property to sort by (prepend '-' for descending)","multiple":false},"filter":{"name":"filter","type":"option","description":"filter property by partial string matching, ex: name=foo","multiple":false},"csv":{"name":"csv","type":"boolean","description":"output is csv format [alias: --output=csv]","allowNo":false,"exclusive":["no-truncate"]},"output":{"name":"output","type":"option","description":"output in a more machine friendly format","multiple":false,"options":["csv","json","yaml"],"exclusive":["no-truncate","csv"]},"extended":{"name":"extended","type":"boolean","char":"x","description":"show extra columns","allowNo":false,"exclusive":["columns"]},"no-truncate":{"name":"no-truncate","type":"boolean","description":"do not truncate output to fit screen","allowNo":false,"exclusive":["csv"]},"no-header":{"name":"no-header","type":"boolean","description":"hide table header from output","allowNo":false,"exclusive":["csv"]}},"args":[{"name":"key"}],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"tunnel:list":{"id":"tunnel:list","description":"List tunnels.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}},"tunnel:set":{"id":"tunnel:set","description":"Enable or disable tunnel.","strict":true,"pluginName":"@dxos/cli","pluginAlias":"@dxos/cli","pluginType":"core","aliases":[],"flags":{"config":{"name":"config","type":"option","description":"Specify config file","multiple":false},"timeout":{"name":"timeout","type":"option","description":"Timeout in seconds","multiple":false,"default":30},"json":{"name":"json","type":"boolean","description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false},"app":{"name":"app","type":"option","description":"Application name","required":true,"multiple":false},"enabled":{"name":"enabled","type":"boolean","description":"Enable tunnel.","allowNo":false},"disabled":{"name":"disabled","type":"boolean","description":"Disable tunnel.","allowNo":false}},"args":[],"_enableJsonFlag":true,"_globalFlags":{"json":{"description":"Format output as json.","helpGroup":"GLOBAL","allowNo":false,"type":"boolean"}}}}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.30-next.7c60cd3",
|
|
4
4
|
"description": "DXOS CLI",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"dxos",
|
|
@@ -45,21 +45,22 @@
|
|
|
45
45
|
"tempy": "^1.0.1",
|
|
46
46
|
"uuid": "^8.3.2",
|
|
47
47
|
"ws": "^7.4.4",
|
|
48
|
-
"@dxos/async": "0.1.
|
|
49
|
-
"@dxos/bare-template": "0.1.
|
|
50
|
-
"@dxos/client": "0.1.
|
|
51
|
-
"@dxos/client-services": "0.1.
|
|
52
|
-
"@dxos/
|
|
53
|
-
"@dxos/
|
|
54
|
-
"@dxos/
|
|
55
|
-
"@dxos/
|
|
56
|
-
"@dxos/
|
|
57
|
-
"@dxos/
|
|
58
|
-
"@dxos/
|
|
59
|
-
"@dxos/
|
|
60
|
-
"@dxos/
|
|
61
|
-
"@dxos/
|
|
62
|
-
"@dxos/
|
|
48
|
+
"@dxos/async": "0.1.30-next.7c60cd3",
|
|
49
|
+
"@dxos/bare-template": "0.1.30-next.7c60cd3",
|
|
50
|
+
"@dxos/client": "0.1.30-next.7c60cd3",
|
|
51
|
+
"@dxos/client-services": "0.1.30-next.7c60cd3",
|
|
52
|
+
"@dxos/codec-protobuf": "0.1.30-next.7c60cd3",
|
|
53
|
+
"@dxos/config": "0.1.30-next.7c60cd3",
|
|
54
|
+
"@dxos/debug": "0.1.30-next.7c60cd3",
|
|
55
|
+
"@dxos/hello-template": "0.1.30-next.7c60cd3",
|
|
56
|
+
"@dxos/keys": "0.1.30-next.7c60cd3",
|
|
57
|
+
"@dxos/log": "0.1.30-next.7c60cd3",
|
|
58
|
+
"@dxos/plate": "0.1.30-next.7c60cd3",
|
|
59
|
+
"@dxos/protocols": "0.1.30-next.7c60cd3",
|
|
60
|
+
"@dxos/rpc": "0.1.30-next.7c60cd3",
|
|
61
|
+
"@dxos/sentry": "0.1.30-next.7c60cd3",
|
|
62
|
+
"@dxos/tasks-template": "0.1.30-next.7c60cd3",
|
|
63
|
+
"@dxos/telemetry": "0.1.30-next.7c60cd3"
|
|
63
64
|
},
|
|
64
65
|
"devDependencies": {
|
|
65
66
|
"@oclif/test": "^2.1.1",
|