@jujulego/jill 1.1.14 → 1.1.18
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/dist/base.command.d.ts +8 -0
- package/dist/base.command.js +33 -0
- package/dist/command.d.ts +21 -0
- package/dist/command.js +69 -0
- package/dist/commands/each.command.d.ts +17 -0
- package/dist/commands/each.command.js +115 -0
- package/dist/commands/info.command.d.ts +9 -0
- package/dist/commands/info.command.js +83 -0
- package/dist/commands/list.command.d.ts +22 -0
- package/dist/commands/list.command.js +177 -0
- package/dist/commands/run.command.d.ts +13 -0
- package/dist/commands/run.command.js +60 -0
- package/dist/filters/affected.js +3 -4
- package/dist/filters/filter.js +2 -1
- package/dist/filters/index.js +2 -1
- package/dist/index.d.ts +4 -9
- package/dist/index.js +13 -26
- package/dist/logger.d.ts +6 -23
- package/dist/logger.js +29 -119
- package/dist/main.js +19 -132
- package/dist/myr/commands/kill.command.d.ts +11 -0
- package/dist/myr/commands/kill.command.js +52 -0
- package/dist/myr/commands/list.command.d.ts +18 -0
- package/dist/myr/commands/list.command.js +127 -0
- package/dist/myr/commands/logs.command.d.ts +11 -0
- package/dist/myr/commands/logs.command.js +83 -0
- package/dist/myr/commands/spawn.command.d.ts +11 -0
- package/dist/myr/commands/spawn.command.js +45 -0
- package/dist/myr/commands/stop.command.d.ts +7 -0
- package/dist/myr/commands/stop.command.js +43 -0
- package/dist/myr/myr-client.d.ts +12 -5
- package/dist/myr/myr-client.js +106 -281
- package/dist/myr/myr.command.d.ts +8 -0
- package/dist/myr/myr.command.js +46 -0
- package/dist/myr/myr.process.js +3 -2
- package/dist/myr/watch.command.d.ts +13 -0
- package/dist/myr/watch.command.js +87 -0
- package/dist/pipeline.js +2 -1
- package/dist/plugin.d.ts +11 -0
- package/dist/plugin.js +40 -0
- package/dist/project.command.d.ts +13 -0
- package/dist/project.command.js +58 -0
- package/dist/task-logger.js +6 -5
- package/dist/utils/cli-list.js +2 -1
- package/dist/workspace.command.d.ts +12 -0
- package/dist/workspace.command.js +55 -0
- package/package.json +32 -22
- package/dist/commands/each.d.ts +0 -12
- package/dist/commands/each.js +0 -74
- package/dist/commands/info.d.ts +0 -5
- package/dist/commands/info.js +0 -42
- package/dist/commands/list.d.ts +0 -15
- package/dist/commands/list.js +0 -119
- package/dist/commands/run.d.ts +0 -9
- package/dist/commands/run.js +0 -43
- package/dist/myr/command.d.ts +0 -2
- package/dist/myr/command.js +0 -50
- package/dist/myr/commands/kill.d.ts +0 -5
- package/dist/myr/commands/kill.js +0 -34
- package/dist/myr/commands/list.d.ts +0 -10
- package/dist/myr/commands/list.js +0 -91
- package/dist/myr/commands/spawn.d.ts +0 -7
- package/dist/myr/commands/spawn.js +0 -39
- package/dist/myr/watch.d.ts +0 -8
- package/dist/myr/watch.js +0 -79
- package/dist/utils/deps-tree.d.ts +0 -2
- package/dist/utils/deps-tree.js +0 -51
- package/dist/wrapper.d.ts +0 -9
- package/dist/wrapper.js +0 -38
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.KillCommand = void 0;
|
|
7
|
+
|
|
8
|
+
var _project = require("../../project.command");
|
|
9
|
+
|
|
10
|
+
var _myrClient = require("../myr-client");
|
|
11
|
+
|
|
12
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
+
|
|
14
|
+
// Command
|
|
15
|
+
class KillCommand extends _project.ProjectCommand {
|
|
16
|
+
constructor(...args) {
|
|
17
|
+
super(...args);
|
|
18
|
+
|
|
19
|
+
_defineProperty(this, "name", 'kill <id>');
|
|
20
|
+
|
|
21
|
+
_defineProperty(this, "description", 'Kill task');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Methods
|
|
25
|
+
define(builder) {
|
|
26
|
+
return super.define(y => builder(y).positional('id', {
|
|
27
|
+
type: 'string',
|
|
28
|
+
demandOption: true
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
async run(args) {
|
|
33
|
+
await super.run(args); // Spawn task
|
|
34
|
+
|
|
35
|
+
this.spinner.start('Connecting to myr');
|
|
36
|
+
const client = new _myrClient.MyrClient(this.project);
|
|
37
|
+
this.spinner.start('Killing task');
|
|
38
|
+
const task = await client.kill(args.id);
|
|
39
|
+
|
|
40
|
+
if (task) {
|
|
41
|
+
this.spinner.succeed(`Task ${task.id} killed`);
|
|
42
|
+
return 0;
|
|
43
|
+
} else {
|
|
44
|
+
this.spinner.fail(`Task ${args.id} not found`);
|
|
45
|
+
return 1;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
exports.KillCommand = KillCommand;
|
|
52
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9jb21tYW5kcy9raWxsLmNvbW1hbmQudHMiXSwibmFtZXMiOlsiS2lsbENvbW1hbmQiLCJQcm9qZWN0Q29tbWFuZCIsImRlZmluZSIsImJ1aWxkZXIiLCJ5IiwicG9zaXRpb25hbCIsInR5cGUiLCJkZW1hbmRPcHRpb24iLCJydW4iLCJhcmdzIiwic3Bpbm5lciIsInN0YXJ0IiwiY2xpZW50IiwiTXlyQ2xpZW50IiwicHJvamVjdCIsInRhc2siLCJraWxsIiwiaWQiLCJzdWNjZWVkIiwiZmFpbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOzs7O0FBUUE7QUFDTyxNQUFNQSxXQUFOLFNBQTBCQyx1QkFBMUIsQ0FBbUQ7QUFBQTtBQUFBOztBQUFBLGtDQUV4QyxXQUZ3Qzs7QUFBQSx5Q0FHakMsV0FIaUM7QUFBQTs7QUFLeEQ7QUFDVUMsRUFBQUEsTUFBTSxDQUFPQyxPQUFQLEVBQXlEO0FBQ3ZFLFdBQU8sTUFBTUQsTUFBTixDQUFhRSxDQUFDLElBQUlELE9BQU8sQ0FBQ0MsQ0FBRCxDQUFQLENBQ3RCQyxVQURzQixDQUNYLElBRFcsRUFDTDtBQUFFQyxNQUFBQSxJQUFJLEVBQUUsUUFBUjtBQUFrQkMsTUFBQUEsWUFBWSxFQUFFO0FBQWhDLEtBREssQ0FBbEIsQ0FBUDtBQUdEOztBQUVrQixRQUFIQyxHQUFHLENBQUNDLElBQUQsRUFBNkM7QUFDOUQsVUFBTSxNQUFNRCxHQUFOLENBQVVDLElBQVYsQ0FBTixDQUQ4RCxDQUc5RDs7QUFDQSxTQUFLQyxPQUFMLENBQWFDLEtBQWIsQ0FBbUIsbUJBQW5CO0FBQ0EsVUFBTUMsTUFBTSxHQUFHLElBQUlDLG9CQUFKLENBQWMsS0FBS0MsT0FBbkIsQ0FBZjtBQUVBLFNBQUtKLE9BQUwsQ0FBYUMsS0FBYixDQUFtQixjQUFuQjtBQUNBLFVBQU1JLElBQUksR0FBRyxNQUFNSCxNQUFNLENBQUNJLElBQVAsQ0FBWVAsSUFBSSxDQUFDUSxFQUFqQixDQUFuQjs7QUFFQSxRQUFJRixJQUFKLEVBQVU7QUFDUixXQUFLTCxPQUFMLENBQWFRLE9BQWIsQ0FBc0IsUUFBT0gsSUFBSSxDQUFDRSxFQUFHLFNBQXJDO0FBQ0EsYUFBTyxDQUFQO0FBQ0QsS0FIRCxNQUdPO0FBQ0wsV0FBS1AsT0FBTCxDQUFhUyxJQUFiLENBQW1CLFFBQU9WLElBQUksQ0FBQ1EsRUFBRyxZQUFsQztBQUNBLGFBQU8sQ0FBUDtBQUNEO0FBQ0Y7O0FBN0J1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2plY3RBcmdzLCBQcm9qZWN0Q29tbWFuZCB9IGZyb20gJy4uLy4uL3Byb2plY3QuY29tbWFuZCc7XG5pbXBvcnQgeyBNeXJDbGllbnQgfSBmcm9tICcuLi9teXItY2xpZW50JztcbmltcG9ydCB7IEFyZ3VtZW50cywgQnVpbGRlciB9IGZyb20gJy4uLy4uL2NvbW1hbmQnO1xuXG4vLyBUeXBlc1xuZXhwb3J0IGludGVyZmFjZSBLaWxsQXJncyBleHRlbmRzIFByb2plY3RBcmdzIHtcbiAgaWQ6IHN0cmluZztcbn1cblxuLy8gQ29tbWFuZFxuZXhwb3J0IGNsYXNzIEtpbGxDb21tYW5kIGV4dGVuZHMgUHJvamVjdENvbW1hbmQ8S2lsbEFyZ3M+IHtcbiAgLy8gQXR0cmlidXRlc1xuICByZWFkb25seSBuYW1lID0gJ2tpbGwgPGlkPic7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uID0gJ0tpbGwgdGFzayc7XG5cbiAgLy8gTWV0aG9kc1xuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFUgJiBLaWxsQXJncz4ge1xuICAgIHJldHVybiBzdXBlci5kZWZpbmUoeSA9PiBidWlsZGVyKHkpXG4gICAgICAucG9zaXRpb25hbCgnaWQnLCB7IHR5cGU6ICdzdHJpbmcnLCBkZW1hbmRPcHRpb246IHRydWUgfSlcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIHJ1bihhcmdzOiBBcmd1bWVudHM8S2lsbEFyZ3M+KTogUHJvbWlzZTxudW1iZXI+IHtcbiAgICBhd2FpdCBzdXBlci5ydW4oYXJncyk7XG5cbiAgICAvLyBTcGF3biB0YXNrXG4gICAgdGhpcy5zcGlubmVyLnN0YXJ0KCdDb25uZWN0aW5nIHRvIG15cicpO1xuICAgIGNvbnN0IGNsaWVudCA9IG5ldyBNeXJDbGllbnQodGhpcy5wcm9qZWN0KTtcblxuICAgIHRoaXMuc3Bpbm5lci5zdGFydCgnS2lsbGluZyB0YXNrJyk7XG4gICAgY29uc3QgdGFzayA9IGF3YWl0IGNsaWVudC5raWxsKGFyZ3MuaWQpO1xuXG4gICAgaWYgKHRhc2spIHtcbiAgICAgIHRoaXMuc3Bpbm5lci5zdWNjZWVkKGBUYXNrICR7dGFzay5pZH0ga2lsbGVkYCk7XG4gICAgICByZXR1cm4gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zcGlubmVyLmZhaWwoYFRhc2sgJHthcmdzLmlkfSBub3QgZm91bmRgKTtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgfVxufSJdLCJmaWxlIjoibXlyL2NvbW1hbmRzL2tpbGwuY29tbWFuZC5qcyJ9
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ProjectArgs, ProjectCommand } from '../../project.command';
|
|
2
|
+
import { Arguments, Builder } from '../../command';
|
|
3
|
+
export declare type Attribute = 'identifier' | 'status' | 'cwd' | 'command' | 'cmd' | 'args';
|
|
4
|
+
export declare type Data = Partial<Record<Attribute, string>>;
|
|
5
|
+
export interface ListArgs extends ProjectArgs {
|
|
6
|
+
all: boolean | undefined;
|
|
7
|
+
attrs: Attribute[] | undefined;
|
|
8
|
+
headers: boolean | undefined;
|
|
9
|
+
long: boolean | undefined;
|
|
10
|
+
json: boolean | undefined;
|
|
11
|
+
}
|
|
12
|
+
export declare class ListCommand extends ProjectCommand<ListArgs> {
|
|
13
|
+
readonly name: string[];
|
|
14
|
+
readonly description = "List myr tasks";
|
|
15
|
+
private buildExtractor;
|
|
16
|
+
protected define<T, U>(builder: Builder<T, U>): Builder<T, U & ListArgs>;
|
|
17
|
+
protected run(args: Arguments<ListArgs>): Promise<void>;
|
|
18
|
+
}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ListCommand = void 0;
|
|
7
|
+
|
|
8
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
9
|
+
|
|
10
|
+
var _path = _interopRequireDefault(require("path"));
|
|
11
|
+
|
|
12
|
+
var _project = require("../../project.command");
|
|
13
|
+
|
|
14
|
+
var _myrClient = require("../myr-client");
|
|
15
|
+
|
|
16
|
+
var _cliList = require("../../utils/cli-list");
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
+
|
|
20
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
21
|
+
|
|
22
|
+
// Constants
|
|
23
|
+
const COLORED_STATUS = {
|
|
24
|
+
blocked: _chalk.default.yellow('blocked'),
|
|
25
|
+
ready: _chalk.default.blue('ready'),
|
|
26
|
+
running: 'running',
|
|
27
|
+
failed: _chalk.default.red('failed'),
|
|
28
|
+
done: _chalk.default.green('done')
|
|
29
|
+
};
|
|
30
|
+
const LONG_ATTRIBUTES = ['identifier', 'status', 'cwd', 'command'];
|
|
31
|
+
const DEFAULT_ATTRIBUTES = ['identifier', 'command'];
|
|
32
|
+
const EXTRACTORS = {
|
|
33
|
+
identifier: tsk => _chalk.default.grey(tsk.id),
|
|
34
|
+
status: tsk => COLORED_STATUS[tsk.status],
|
|
35
|
+
cwd: tsk => _path.default.relative(process.cwd(), tsk.cwd) || '.',
|
|
36
|
+
command: tsk => `${tsk.cmd} ${tsk.args.join(' ')}`,
|
|
37
|
+
cmd: tsk => tsk.cmd,
|
|
38
|
+
args: tsk => tsk.args.join(' ')
|
|
39
|
+
}; // Command
|
|
40
|
+
|
|
41
|
+
class ListCommand extends _project.ProjectCommand {
|
|
42
|
+
constructor(...args) {
|
|
43
|
+
super(...args);
|
|
44
|
+
|
|
45
|
+
_defineProperty(this, "name", ['list', 'ls']);
|
|
46
|
+
|
|
47
|
+
_defineProperty(this, "description", 'List myr tasks');
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// Methods
|
|
51
|
+
buildExtractor(attrs) {
|
|
52
|
+
return tsk => {
|
|
53
|
+
const data = {};
|
|
54
|
+
|
|
55
|
+
for (const attr of attrs) {
|
|
56
|
+
data[attr] = EXTRACTORS[attr](tsk);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return data;
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
define(builder) {
|
|
64
|
+
return super.define(y => builder(y).option('all', {
|
|
65
|
+
alias: 'a',
|
|
66
|
+
type: 'boolean',
|
|
67
|
+
group: 'Filters:',
|
|
68
|
+
desc: 'Show all tasks (by default list shows only running tasks)'
|
|
69
|
+
}).option('attrs', {
|
|
70
|
+
type: 'array',
|
|
71
|
+
choices: ['identifier', 'status', 'cwd', 'command', 'cmd', 'args'],
|
|
72
|
+
default: undefined,
|
|
73
|
+
group: 'Format:',
|
|
74
|
+
desc: 'Select printed attributes'
|
|
75
|
+
}).option('headers', {
|
|
76
|
+
type: 'boolean',
|
|
77
|
+
group: 'Format:',
|
|
78
|
+
desc: 'Prints columns headers'
|
|
79
|
+
}).option('long', {
|
|
80
|
+
alias: 'l',
|
|
81
|
+
type: 'boolean',
|
|
82
|
+
conflicts: 'attrs',
|
|
83
|
+
group: 'Format:',
|
|
84
|
+
desc: 'Prints name, version and root of all workspaces'
|
|
85
|
+
}).option('json', {
|
|
86
|
+
type: 'boolean',
|
|
87
|
+
group: 'Format:',
|
|
88
|
+
desc: 'Prints data as a JSON array'
|
|
89
|
+
}));
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
async run(args) {
|
|
93
|
+
await super.run(args); // Spawn task
|
|
94
|
+
|
|
95
|
+
this.spinner.start('Connecting to myr');
|
|
96
|
+
const client = new _myrClient.MyrClient(this.project);
|
|
97
|
+
this.spinner.start('Requesting tasks');
|
|
98
|
+
const tasks = await client.tasks();
|
|
99
|
+
this.spinner.stop(); // Build data
|
|
100
|
+
|
|
101
|
+
let attrs = args.attrs || DEFAULT_ATTRIBUTES;
|
|
102
|
+
|
|
103
|
+
if (!args.attrs && args.long) {
|
|
104
|
+
attrs = LONG_ATTRIBUTES;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
const data = tasks.filter(tsk => args.all || tsk.status === 'running').map(tsk => this.buildExtractor(attrs)(tsk)); // Print data
|
|
108
|
+
|
|
109
|
+
const list = new _cliList.CliList();
|
|
110
|
+
|
|
111
|
+
if (args.headers ?? attrs.length > 1) {
|
|
112
|
+
list.setHeaders(attrs);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
for (const d of data) {
|
|
116
|
+
list.add(attrs.map(attr => d[attr] || ''));
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
for (const d of list.lines()) {
|
|
120
|
+
this.log(d);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
exports.ListCommand = ListCommand;
|
|
127
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9jb21tYW5kcy9saXN0LmNvbW1hbmQudHMiXSwibmFtZXMiOlsiQ09MT1JFRF9TVEFUVVMiLCJibG9ja2VkIiwiY2hhbGsiLCJ5ZWxsb3ciLCJyZWFkeSIsImJsdWUiLCJydW5uaW5nIiwiZmFpbGVkIiwicmVkIiwiZG9uZSIsImdyZWVuIiwiTE9OR19BVFRSSUJVVEVTIiwiREVGQVVMVF9BVFRSSUJVVEVTIiwiRVhUUkFDVE9SUyIsImlkZW50aWZpZXIiLCJ0c2siLCJncmV5IiwiaWQiLCJzdGF0dXMiLCJjd2QiLCJwYXRoIiwicmVsYXRpdmUiLCJwcm9jZXNzIiwiY29tbWFuZCIsImNtZCIsImFyZ3MiLCJqb2luIiwiTGlzdENvbW1hbmQiLCJQcm9qZWN0Q29tbWFuZCIsImJ1aWxkRXh0cmFjdG9yIiwiYXR0cnMiLCJkYXRhIiwiYXR0ciIsImRlZmluZSIsImJ1aWxkZXIiLCJ5Iiwib3B0aW9uIiwiYWxpYXMiLCJ0eXBlIiwiZ3JvdXAiLCJkZXNjIiwiY2hvaWNlcyIsImRlZmF1bHQiLCJ1bmRlZmluZWQiLCJjb25mbGljdHMiLCJydW4iLCJzcGlubmVyIiwic3RhcnQiLCJjbGllbnQiLCJNeXJDbGllbnQiLCJwcm9qZWN0IiwidGFza3MiLCJzdG9wIiwibG9uZyIsImZpbHRlciIsImFsbCIsIm1hcCIsImxpc3QiLCJDbGlMaXN0IiwiaGVhZGVycyIsImxlbmd0aCIsInNldEhlYWRlcnMiLCJkIiwiYWRkIiwibGluZXMiLCJsb2ciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7Ozs7O0FBa0JBO0FBQ0EsTUFBTUEsY0FBMEMsR0FBRztBQUNqREMsRUFBQUEsT0FBTyxFQUFFQyxlQUFNQyxNQUFOLENBQWEsU0FBYixDQUR3QztBQUVqREMsRUFBQUEsS0FBSyxFQUFFRixlQUFNRyxJQUFOLENBQVcsT0FBWCxDQUYwQztBQUdqREMsRUFBQUEsT0FBTyxFQUFFLFNBSHdDO0FBSWpEQyxFQUFBQSxNQUFNLEVB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LEVBQWI7O0FBRUEsUUFBSWpDLElBQUksQ0FBQ2tDLE9BQUwsSUFBaUI3QixLQUFLLENBQUM4QixNQUFOLEdBQWUsQ0FBcEMsRUFBd0M7QUFDdENILE1BQUFBLElBQUksQ0FBQ0ksVUFBTCxDQUFnQi9CLEtBQWhCO0FBQ0Q7O0FBRUQsU0FBSyxNQUFNZ0MsQ0FBWCxJQUFnQi9CLElBQWhCLEVBQXNCO0FBQ3BCMEIsTUFBQUEsSUFBSSxDQUFDTSxHQUFMLENBQVNqQyxLQUFLLENBQUMwQixHQUFOLENBQVV4QixJQUFJLElBQUk4QixDQUFDLENBQUM5QixJQUFELENBQUQsSUFBVyxFQUE3QixDQUFUO0FBQ0Q7O0FBRUQsU0FBSyxNQUFNOEIsQ0FBWCxJQUFnQkwsSUFBSSxDQUFDTyxLQUFMLEVBQWhCLEVBQThCO0FBQzVCLFdBQUtDLEdBQUwsQ0FBU0gsQ0FBVDtBQUNEO0FBQ0Y7O0FBMUZ1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2tTdGF0dXMgfSBmcm9tICdAanVqdWxlZ28vamlsbC1jb3JlJztcbmltcG9ydCB7IFRhc2sgfSBmcm9tICdAanVqdWxlZ28vamlsbC1teXInO1xuaW1wb3J0IGNoYWxrIGZyb20gJ2NoYWxrJztcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuXG5pbXBvcnQgeyBQcm9qZWN0QXJncywgUHJvamVjdENvbW1hbmQgfSBmcm9tICcuLi8uLi9wcm9qZWN0LmNvbW1hbmQnO1xuaW1wb3J0IHsgTXlyQ2xpZW50IH0gZnJvbSAnLi4vbXlyLWNsaWVudCc7XG5pbXBvcnQgeyBDbGlMaXN0IH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xpLWxpc3QnO1xuaW1wb3J0IHsgQXJndW1lbnRzLCBCdWlsZGVyIH0gZnJvbSAnLi4vLi4vY29tbWFuZCc7XG5cbi8vIFR5cGVzXG5leHBvcnQgdHlwZSBBdHRyaWJ1dGUgPSAnaWRlbnRpZmllcicgfCAnc3RhdHVzJyB8ICdjd2QnIHwgJ2NvbW1hbmQnIHwgJ2NtZCcgfCAnYXJncyc7XG5leHBvcnQgdHlwZSBEYXRhID0gUGFydGlhbDxSZWNvcmQ8QXR0cmlidXRlLCBzdHJpbmc+PjtcblxudHlwZSBFeHRyYWN0b3I8VD4gPSAodHNrOiBUYXNrKSA9PiBUO1xuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RBcmdzIGV4dGVuZHMgUHJvamVjdEFyZ3Mge1xuICBhbGw6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgYXR0cnM6IEF0dHJpYnV0ZVtdIHwgdW5kZWZpbmVkO1xuICBoZWFkZXJzOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBsb25nOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBqc29uOiBib29sZWFuIHwgdW5kZWZpbmVkO1xufVxuXG4vLyBDb25zdGFudHNcbmNvbnN0IENPTE9SRURfU1RBVFVTOiBSZWNvcmQ8VGFza1N0YXR1cywgc3RyaW5nPiA9IHtcbiAgYmxvY2tlZDogY2hhbGsueWVsbG93KCdibG9ja2VkJyksXG4gIHJlYWR5OiBjaGFsay5ibHVlKCdyZWFkeScpLFxuICBydW5uaW5nOiAncnVubmluZycsXG4gIGZhaWxlZDogY2hhbGsucmVkKCdmYWlsZWQnKSxcbiAgZG9uZTogY2hhbGsuZ3JlZW4oJ2RvbmUnKVxufTtcblxuY29uc3QgTE9OR19BVFRSSUJVVEVTOiBBdHRyaWJ1dGVbXSA9IFsnaWRlbnRpZmllcicsICdzdGF0dXMnLCAnY3dkJywgJ2NvbW1hbmQnXTtcbmNvbnN0IERFRkFVTFRfQVRUUklCVVRFUzogQXR0cmlidXRlW10gPSBbJ2lkZW50aWZpZXInLCAnY29tbWFuZCddO1xuXG5jb25zdCBFWFRSQUNUT1JTOiBSZWNvcmQ8QXR0cmlidXRlLCBFeHRyYWN0b3I8c3RyaW5nIHwgdW5kZWZpbmVkPj4gPSB7XG4gIGlkZW50aWZpZXI6IHRzayA9PiBjaGFsay5ncmV5KHRzay5pZCksXG4gIHN0YXR1czogdHNrID0+IENPTE9SRURfU1RBVFVTW3Rzay5zdGF0dXNdLFxuICBjd2Q6IHRzayA9PiBwYXRoLnJlbGF0aXZlKHByb2Nlc3MuY3dkKCksIHRzay5jd2QpIHx8ICcuJyxcbiAgY29tbWFuZDogdHNrID0+IGAke3Rzay5jbWR9ICR7dHNrLmFyZ3Muam9pbignICcpfWAsXG4gIGNtZDogdHNrID0+IHRzay5jbWQsXG4gIGFyZ3M6IHRzayA9PiB0c2suYXJncy5qb2luKCcgJylcbn07XG5cbi8vIENvbW1hbmRcbmV4cG9ydCBjbGFzcyBMaXN0Q29tbWFuZCBleHRlbmRzIFByb2plY3RDb21tYW5kPExpc3RBcmdzPiB7XG4gIC8vIEF0dHJpYnV0ZXNcbiAgcmVhZG9ubHkgbmFtZSA9IFsnbGlzdCcsICdscyddO1xuICByZWFkb25seSBkZXNjcmlwdGlvbiA9ICdMaXN0IG15ciB0YXNrcyc7XG5cbiAgLy8gTWV0aG9kc1xuICBwcml2YXRlIGJ1aWxkRXh0cmFjdG9yKGF0dHJzOiBBdHRyaWJ1dGVbXSk6IEV4dHJhY3RvcjxEYXRhPiB7XG4gICAgcmV0dXJuICh0c2spID0+IHtcbiAgICAgIGNvbnN0IGRhdGE6IERhdGEgPSB7fTtcblxuICAgICAgZm9yIChjb25zdCBhdHRyIG9mIGF0dHJzKSB7XG4gICAgICAgIGRhdGFbYXR0cl0gPSBFWFRSQUNUT1JTW2F0dHJdKHRzayk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFUgJiBMaXN0QXJncz4ge1xuICAgIHJldHVybiBzdXBlci5kZWZpbmUoeSA9PiBidWlsZGVyKHkpXG4gICAgICAub3B0aW9uKCdhbGwnLCB7XG4gICAgICAgIGFsaWFzOiAnYScsXG4gICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgZ3JvdXA6ICdGaWx0ZXJzOicsXG4gICAgICAgIGRlc2M6ICdTaG93IGFsbCB0YXNrcyAoYnkgZGVmYXVsdCBsaXN0IHNob3dzIG9ubHkgcnVubmluZyB0YXNrcyknLFxuICAgICAgfSlcbiAgICAgIC5vcHRpb24oJ2F0dHJzJywge1xuICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICBjaG9pY2VzOiBbJ2lkZW50aWZpZXInLCAnc3RhdHVzJywgJ2N3ZCcgLCdjb21tYW5kJywgJ2NtZCcsICdhcmdzJ10sXG4gICAgICAgIGRlZmF1bHQ6IHVuZGVmaW5lZCBhcyBBdHRyaWJ1dGVbXSB8IHVuZGVmaW5lZCxcbiAgICAgICAgZ3JvdXA6ICdGb3JtYXQ6JyxcbiAgICAgICAgZGVzYzogJ1NlbGVjdCBwcmludGVkIGF0dHJpYnV0ZXMnXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignaGVhZGVycycsIHtcbiAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICBncm91cDogJ0Zvcm1hdDonLFxuICAgICAgICBkZXNjOiAnUHJpbnRzIGNvbHVtbnMgaGVhZGVycydcbiAgICAgIH0pXG4gICAgICAub3B0aW9uKCdsb25nJywge1xuICAgICAgICBhbGlhczogJ2wnLFxuICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGNvbmZsaWN0czogJ2F0dHJzJyxcbiAgICAgICAgZ3JvdXA6ICdGb3JtYXQ6JyxcbiAgICAgICAgZGVzYzogJ1ByaW50cyBuYW1lLCB2ZXJzaW9uIGFuZCByb290IG9mIGFsbCB3b3Jrc3BhY2VzJyxcbiAgICAgIH0pXG4gICAgICAub3B0aW9uKCdqc29uJywge1xuICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGdyb3VwOiAnRm9ybWF0OicsXG4gICAgICAgIGRlc2M6ICdQcmludHMgZGF0YSBhcyBhIEpTT04gYXJyYXknLFxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIHJ1bihhcmdzOiBBcmd1bWVudHM8TGlzdEFyZ3M+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgc3VwZXIucnVuKGFyZ3MpO1xuXG4gICAgLy8gU3Bhd24gdGFza1xuICAgIHRoaXMuc3Bpbm5lci5zdGFydCgnQ29ubmVjdGluZyB0byBteXInKTtcbiAgICBjb25zdCBjbGllbnQgPSBuZXcgTXlyQ2xpZW50KHRoaXMucHJvamVjdCk7XG5cbiAgICB0aGlzLnNwaW5uZXIuc3RhcnQoJ1JlcXVlc3RpbmcgdGFza3MnKTtcbiAgICBjb25zdCB0YXNrcyA9IGF3YWl0IGNsaWVudC50YXNrcygpO1xuXG4gICAgdGhpcy5zcGlubmVyLnN0b3AoKTtcblxuICAgIC8vIEJ1aWxkIGRhdGFcbiAgICBsZXQgYXR0cnMgPSBhcmdzLmF0dHJzIGFzIEF0dHJpYnV0ZVtdIHx8IERFRkFVTFRfQVRUUklCVVRFUztcblxuICAgIGlmICghYXJncy5hdHRycyAmJiBhcmdzLmxvbmcpIHtcbiAgICAgIGF0dHJzID0gTE9OR19BVFRSSUJVVEVTO1xuICAgIH1cblxuICAgIGNvbnN0IGRhdGEgPSB0YXNrc1xuICAgICAgLmZpbHRlcih0c2sgPT4gYXJncy5hbGwgfHwgdHNrLnN0YXR1cyA9PT0gJ3J1bm5pbmcnKVxuICAgICAgLm1hcCh0c2sgPT4gdGhpcy5idWlsZEV4dHJhY3RvcihhdHRycykodHNrKSk7XG5cbiAgICAvLyBQcmludCBkYXRhXG4gICAgY29uc3QgbGlzdCA9IG5ldyBDbGlMaXN0KCk7XG5cbiAgICBpZiAoYXJncy5oZWFkZXJzID8/IChhdHRycy5sZW5ndGggPiAxKSkge1xuICAgICAgbGlzdC5zZXRIZWFkZXJzKGF0dHJzKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGQgb2YgZGF0YSkge1xuICAgICAgbGlzdC5hZGQoYXR0cnMubWFwKGF0dHIgPT4gZFthdHRyXSB8fCAnJykpO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgZCBvZiBsaXN0LmxpbmVzKCkpIHtcbiAgICAgIHRoaXMubG9nKGQpO1xuICAgIH1cbiAgfVxufSJdLCJmaWxlIjoibXlyL2NvbW1hbmRzL2xpc3QuY29tbWFuZC5qcyJ9
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ProjectArgs, ProjectCommand } from '../../project.command';
|
|
2
|
+
import { Arguments, Builder } from '../../command';
|
|
3
|
+
export interface LogsArgs extends ProjectArgs {
|
|
4
|
+
follow: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare class LogsCommand extends ProjectCommand<LogsArgs> {
|
|
7
|
+
readonly name = "logs";
|
|
8
|
+
readonly description = "Request myr logs";
|
|
9
|
+
protected define<T, U>(builder: Builder<T, U>): Builder<T, U & LogsArgs>;
|
|
10
|
+
protected run(args: Arguments<LogsArgs>): Promise<void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.LogsCommand = void 0;
|
|
7
|
+
|
|
8
|
+
var _winston = require("winston");
|
|
9
|
+
|
|
10
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
11
|
+
|
|
12
|
+
var _project = require("../../project.command");
|
|
13
|
+
|
|
14
|
+
var _myrClient = require("../myr-client");
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
19
|
+
|
|
20
|
+
// Utils
|
|
21
|
+
const printLog = _winston.format.combine({
|
|
22
|
+
transform: info => Object.assign(info, {
|
|
23
|
+
[Symbol.for('level')]: info.level
|
|
24
|
+
})
|
|
25
|
+
}, {
|
|
26
|
+
transform: info => Object.assign(info, {
|
|
27
|
+
context: info.task?.substr(0, 8) || info.context
|
|
28
|
+
})
|
|
29
|
+
}, _winston.format.printf(({
|
|
30
|
+
context,
|
|
31
|
+
message,
|
|
32
|
+
timestamp
|
|
33
|
+
}) => context ? (0, _chalk.default)`[jill-myr] {white ${new Date(timestamp).toLocaleString()}} {grey [${context}]} ${message}` : (0, _chalk.default)`[jill-myr] {white ${new Date(timestamp).toLocaleString()}} ${message}`), _winston.format.colorize({
|
|
34
|
+
all: true
|
|
35
|
+
})); // Command
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class LogsCommand extends _project.ProjectCommand {
|
|
39
|
+
constructor(...args) {
|
|
40
|
+
super(...args);
|
|
41
|
+
|
|
42
|
+
_defineProperty(this, "name", 'logs');
|
|
43
|
+
|
|
44
|
+
_defineProperty(this, "description", 'Request myr logs');
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// Methods
|
|
48
|
+
define(builder) {
|
|
49
|
+
return super.define(y => builder(y).option('follow', {
|
|
50
|
+
alias: 'f',
|
|
51
|
+
type: 'boolean',
|
|
52
|
+
default: false,
|
|
53
|
+
description: 'Subscribe to logs stream'
|
|
54
|
+
}));
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
async run(args) {
|
|
58
|
+
await super.run(args); // Spawn task
|
|
59
|
+
|
|
60
|
+
this.spinner.start('Connecting to myr');
|
|
61
|
+
const client = new _myrClient.MyrClient(this.project);
|
|
62
|
+
this.spinner.start('Requesting logs');
|
|
63
|
+
const logs = await client.logs();
|
|
64
|
+
this.spinner.stop();
|
|
65
|
+
|
|
66
|
+
for (const log of logs) {
|
|
67
|
+
printLog.transform(log);
|
|
68
|
+
this.log(log[Symbol.for('message')]);
|
|
69
|
+
} // Follow
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
if (args.follow) {
|
|
73
|
+
for await (const log of client.logs$()) {
|
|
74
|
+
printLog.transform(log);
|
|
75
|
+
this.log(log[Symbol.for('message')]);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
exports.LogsCommand = LogsCommand;
|
|
83
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9jb21tYW5kcy9sb2dzLmNvbW1hbmQudHMiXSwibmFtZXMiOlsicHJpbnRMb2ciLCJmb3JtYXQiLCJjb21iaW5lIiwidHJhbnNmb3JtIiwiaW5mbyIsIk9iamVjdCIsImFzc2lnbiIsIlN5bWJvbCIsImZvciIsImxldmVsIiwiY29udGV4dCIsInRhc2siLCJzdWJzdHIiLCJwcmludGYiLCJtZXNzYWdlIiwidGltZXN0YW1wIiwiRGF0ZSIsInRvTG9jYWxlU3RyaW5nIiwiY29sb3JpemUiLCJhbGwiLCJMb2dzQ29tbWFuZCIsIlByb2plY3RDb21tYW5kIiwiZGVmaW5lIiwiYnVpbGRlciIsInkiLCJvcHRpb24iLCJhbGlhcyIsInR5cGUiLCJkZWZhdWx0IiwiZGVzY3JpcHRpb24iLCJydW4iLCJhcmdzIiwic3Bpbm5lciIsInN0YXJ0IiwiY2xpZW50IiwiTXlyQ2xpZW50IiwicHJvamVjdCIsImxvZ3MiLCJzdG9wIiwibG9nIiwiZm9sbG93IiwibG9ncyQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFQTs7QUFDQTs7Ozs7O0FBUUE7QUFDQSxNQUFNQSxRQUFRLEdBQUdDLGdCQUFPQyxPQUFQLENBQ2Y7QUFBRUMsRUFBQUEsU0FBUyxFQUFHQyxJQUFELElBQVVDLE1BQU0sQ0FBQ0MsTUFBUCxDQUFjRixJQUFkLEVBQW9CO0FBQUUsS0FBQ0csTUFBTSxDQUFDQyxHQUFQLENBQVcsT0FBWCxDQUFELEdBQXVCSixJQUFJLENBQUNLO0FBQTlCLEdBQXBCO0FBQXZCLENBRGUsRUFFZjtBQUFFTixFQUFBQSxTQUFTLEVBQUdDLElBQUQsSUFBVUMsTUFBTSxDQUFDQyxNQUFQLENBQWNGLElBQWQsRUFBb0I7QUFBRU0sSUFBQUEsT0FBTyxFQUFFTixJQUFJLENBQUNPLElBQUwsRUFBV0MsTUFBWCxDQUFrQixDQUFsQixFQUFxQixDQUFyQixLQUEyQlIsSUFBSSxDQUFDTTtBQUEzQyxHQUFwQjtBQUF2QixDQUZlLEVBR2ZULGdCQUFPWSxNQUFQLENBQWMsQ0FBQztBQUFFSCxFQUFBQSxPQUFGO0FBQVdJLEVBQUFBLE9BQVg7QUFBb0JDLEVBQUFBO0FBQXBCLENBQUQsS0FBcUNMLE9BQU8sR0FDdEQsbUJBQU0scUJBQW9CLElBQUlNLElBQUosQ0FBU0QsU0FBVCxFQUFvQkUsY0FBcEIsRUFBcUMsWUFBV1AsT0FBUSxNQUFLSSxPQUFRLEVBRHpDLEdBRXRELG1CQUFNLHFCQUFvQixJQUFJRSxJQUFKLENBQVNELFNBQVQsRUFBb0JFLGNBQXBCLEVBQXFDLEtBQUlILE9BQVEsRUFGL0UsQ0FIZSxFQU9mYixnQkFBT2lCLFFBQVAsQ0FBZ0I7QUFBRUMsRUFBQUEsR0FBRyxFQUFFO0FBQVAsQ0FBaEIsQ0FQZSxDQUFqQixDLENBVUE7OztBQUNPLE1BQU1DLFdBQU4sU0FBMEJDLHVCQUExQixDQUFtRDtBQUFBO0FBQUE7O0FBQUEsa0NBRXhDLE1BRndDOztBQUFBLHlDQUdqQyxrQkFIaUM7QUFBQTs7QUFLeEQ7QUFDVUMsRUFBQUEsTUFBTSxDQUFPQyxPQUFQLEVBQXlEO0FBQ3ZFLFdBQU8sTUFBTUQsTUFBTixDQUFhRSxDQUFDLElBQUlELE9BQU8sQ0FBQ0MsQ0FBRCxDQUFQLENBQ3RCQyxNQURzQixDQUNmLFFBRGUsRUFDTDtBQUNoQkMsTUFBQUEsS0FBSyxFQUFFLEdBRFM7QUFFaEJDLE1BQUFBLElBQUksRUFBRSxTQUZVO0FBR2hCQyxNQUFBQSxPQUFPLEVBQUUsS0FITztBQUloQkMsTUFBQUEsV0FBVyxFQUFFO0FBSkcsS0FESyxDQUFsQixDQUFQO0FBUUQ7O0FBRWtCLFFBQUhDLEdBQUcsQ0FBQ0MsSUFBRCxFQUEyQztBQUM1RCxVQUFNLE1BQU1ELEdBQU4sQ0FBVUMsSUFBVixDQUFOLENBRDRELENBRzVEOztBQUNBLFNBQUtDLE9BQUwsQ0FBYUMsS0FBYixDQUFtQixtQkFBbkI7QUFDQSxVQUFNQyxNQUFNLEdBQUcsSUFBSUMsb0JBQUosQ0FBYyxLQUFLQyxPQUFuQixDQUFmO0FBRUEsU0FBS0osT0FBTCxDQUFhQyxLQUFiLENBQW1CLGlCQUFuQjtBQUNBLFVBQU1JLElBQUksR0FBRyxNQUFNSCxNQUFNLENBQUNHLElBQVAsRUFBbkI7QUFDQSxTQUFLTCxPQUFMLENBQWFNLElBQWI7O0FBRUEsU0FBSyxNQUFNQyxHQUFYLElBQWtCRixJQUFsQixFQUF3QjtBQUN0QnJDLE1BQUFBLFFBQVEsQ0FBQ0csU0FBVCxDQUFtQm9DLEdBQW5CO0FBQ0EsV0FBS0EsR0FBTCxDQUFTQSxHQUFHLENBQUNoQyxNQUFNLENBQUNDLEdBQVAsQ0FBVyxTQUFYLENBQUQsQ0FBWjtBQUNELEtBZDJELENBZ0I1RDs7O0FBQ0EsUUFBSXVCLElBQUksQ0FBQ1MsTUFBVCxFQUFpQjtBQUNmLGlCQUFXLE1BQU1ELEdBQWpCLElBQXdCTCxNQUFNLENBQUNPLEtBQVAsRUFBeEIsRUFBd0M7QUFDdEN6QyxRQUFBQSxRQUFRLENBQUNHLFNBQVQsQ0FBbUJvQyxHQUFuQjtBQUNBLGFBQUtBLEdBQUwsQ0FBU0EsR0FBRyxDQUFDaEMsTUFBTSxDQUFDQyxHQUFQLENBQVcsU0FBWCxDQUFELENBQVo7QUFDRDtBQUNGO0FBQ0Y7O0FBeEN1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdCB9IGZyb20gJ3dpbnN0b24nO1xuaW1wb3J0IGNoYWxrIGZyb20gJ2NoYWxrJztcblxuaW1wb3J0IHsgUHJvamVjdEFyZ3MsIFByb2plY3RDb21tYW5kIH0gZnJvbSAnLi4vLi4vcHJvamVjdC5jb21tYW5kJztcbmltcG9ydCB7IE15ckNsaWVudCB9IGZyb20gJy4uL215ci1jbGllbnQnO1xuaW1wb3J0IHsgQXJndW1lbnRzLCBCdWlsZGVyIH0gZnJvbSAnLi4vLi4vY29tbWFuZCc7XG5cbi8vIFR5cGVzXG5leHBvcnQgaW50ZXJmYWNlIExvZ3NBcmdzIGV4dGVuZHMgUHJvamVjdEFyZ3Mge1xuICBmb2xsb3c6IGJvb2xlYW47XG59XG5cbi8vIFV0aWxzXG5jb25zdCBwcmludExvZyA9IGZvcm1hdC5jb21iaW5lKFxuICB7IHRyYW5zZm9ybTogKGluZm8pID0+IE9iamVjdC5hc3NpZ24oaW5mbywgeyBbU3ltYm9sLmZvcignbGV2ZWwnKV06IGluZm8ubGV2ZWwgfSkgfSxcbiAgeyB0cmFuc2Zvcm06IChpbmZvKSA9PiBPYmplY3QuYXNzaWduKGluZm8sIHsgY29udGV4dDogaW5mby50YXNrPy5zdWJzdHIoMCwgOCkgfHwgaW5mby5jb250ZXh0IH0pIH0sXG4gIGZvcm1hdC5wcmludGYoKHsgY29udGV4dCwgbWVzc2FnZSwgdGltZXN0YW1wIH0pID0+IGNvbnRleHRcbiAgICA/IGNoYWxrYFtqaWxsLW15cl0ge3doaXRlICR7bmV3IERhdGUodGltZXN0YW1wKS50b0xvY2FsZVN0cmluZygpfX0ge2dyZXkgWyR7Y29udGV4dH1dfSAke21lc3NhZ2V9YFxuICAgIDogY2hhbGtgW2ppbGwtbXlyXSB7d2hpdGUgJHtuZXcgRGF0ZSh0aW1lc3RhbXApLnRvTG9jYWxlU3RyaW5nKCl9fSAke21lc3NhZ2V9YFxuICApLFxuICBmb3JtYXQuY29sb3JpemUoeyBhbGw6IHRydWUgfSksXG4pO1xuXG4vLyBDb21tYW5kXG5leHBvcnQgY2xhc3MgTG9nc0NvbW1hbmQgZXh0ZW5kcyBQcm9qZWN0Q29tbWFuZDxMb2dzQXJncz4ge1xuICAvLyBBdHRyaWJ1dGVzXG4gIHJlYWRvbmx5IG5hbWUgPSAnbG9ncyc7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uID0gJ1JlcXVlc3QgbXlyIGxvZ3MnO1xuXG4gIC8vIE1ldGhvZHNcbiAgcHJvdGVjdGVkIGRlZmluZTxULCBVPihidWlsZGVyOiBCdWlsZGVyPFQsIFU+KTogQnVpbGRlcjxULCBVICYgTG9nc0FyZ3M+IHtcbiAgICByZXR1cm4gc3VwZXIuZGVmaW5lKHkgPT4gYnVpbGRlcih5KVxuICAgICAgLm9wdGlvbignZm9sbG93Jywge1xuICAgICAgICBhbGlhczogJ2YnLFxuICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1N1YnNjcmliZSB0byBsb2dzIHN0cmVhbSdcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBydW4oYXJnczogQXJndW1lbnRzPExvZ3NBcmdzPik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHN1cGVyLnJ1bihhcmdzKTtcblxuICAgIC8vIFNwYXduIHRhc2tcbiAgICB0aGlzLnNwaW5uZXIuc3RhcnQoJ0Nvbm5lY3RpbmcgdG8gbXlyJyk7XG4gICAgY29uc3QgY2xpZW50ID0gbmV3IE15ckNsaWVudCh0aGlzLnByb2plY3QpO1xuXG4gICAgdGhpcy5zcGlubmVyLnN0YXJ0KCdSZXF1ZXN0aW5nIGxvZ3MnKTtcbiAgICBjb25zdCBsb2dzID0gYXdhaXQgY2xpZW50LmxvZ3MoKTtcbiAgICB0aGlzLnNwaW5uZXIuc3RvcCgpO1xuXG4gICAgZm9yIChjb25zdCBsb2cgb2YgbG9ncykge1xuICAgICAgcHJpbnRMb2cudHJhbnNmb3JtKGxvZyk7XG4gICAgICB0aGlzLmxvZyhsb2dbU3ltYm9sLmZvcignbWVzc2FnZScpXSk7XG4gICAgfVxuXG4gICAgLy8gRm9sbG93XG4gICAgaWYgKGFyZ3MuZm9sbG93KSB7XG4gICAgICBmb3IgYXdhaXQgKGNvbnN0IGxvZyBvZiBjbGllbnQubG9ncyQoKSkge1xuICAgICAgICBwcmludExvZy50cmFuc2Zvcm0obG9nKTtcbiAgICAgICAgdGhpcy5sb2cobG9nW1N5bWJvbC5mb3IoJ21lc3NhZ2UnKV0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSJdLCJmaWxlIjoibXlyL2NvbW1hbmRzL2xvZ3MuY29tbWFuZC5qcyJ9
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Arguments, Builder } from '../../command';
|
|
2
|
+
import { WorkspaceArgs, WorkspaceCommand } from '../../workspace.command';
|
|
3
|
+
export interface SpawnArgs extends WorkspaceArgs {
|
|
4
|
+
command: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class SpawnCommand extends WorkspaceCommand<SpawnArgs> {
|
|
7
|
+
readonly name = "spawn <command>";
|
|
8
|
+
readonly description = "Spawn new task";
|
|
9
|
+
protected define<T, U>(builder: Builder<T, U>): Builder<T, U & SpawnArgs>;
|
|
10
|
+
protected run(args: Arguments<SpawnArgs>): Promise<number | void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SpawnCommand = void 0;
|
|
7
|
+
|
|
8
|
+
var _workspace = require("../../workspace.command");
|
|
9
|
+
|
|
10
|
+
var _myrClient = require("../myr-client");
|
|
11
|
+
|
|
12
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
+
|
|
14
|
+
// Command
|
|
15
|
+
class SpawnCommand extends _workspace.WorkspaceCommand {
|
|
16
|
+
constructor(...args) {
|
|
17
|
+
super(...args);
|
|
18
|
+
|
|
19
|
+
_defineProperty(this, "name", 'spawn <command>');
|
|
20
|
+
|
|
21
|
+
_defineProperty(this, "description", 'Spawn new task');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Methods
|
|
25
|
+
define(builder) {
|
|
26
|
+
return super.define(y => builder(y).positional('command', {
|
|
27
|
+
type: 'string',
|
|
28
|
+
demandOption: true
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
async run(args) {
|
|
33
|
+
await super.run(args); // Spawn task
|
|
34
|
+
|
|
35
|
+
this.spinner.start('Connecting to myr');
|
|
36
|
+
const client = new _myrClient.MyrClient(this.project);
|
|
37
|
+
this.spinner.start('Spawning task');
|
|
38
|
+
const task = await client.spawn(this.workspace.cwd, args.command, args['--']?.map(arg => arg.toString()));
|
|
39
|
+
this.spinner.succeed(`Task ${task.id} spawned`);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
exports.SpawnCommand = SpawnCommand;
|
|
45
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9jb21tYW5kcy9zcGF3bi5jb21tYW5kLnRzIl0sIm5hbWVzIjpbIlNwYXduQ29tbWFuZCIsIldvcmtzcGFjZUNvbW1hbmQiLCJkZWZpbmUiLCJidWlsZGVyIiwieSIsInBvc2l0aW9uYWwiLCJ0eXBlIiwiZGVtYW5kT3B0aW9uIiwicnVuIiwiYXJncyIsInNwaW5uZXIiLCJzdGFydCIsImNsaWVudCIsIk15ckNsaWVudCIsInByb2plY3QiLCJ0YXNrIiwic3Bhd24iLCJ3b3Jrc3BhY2UiLCJjd2QiLCJjb21tYW5kIiwibWFwIiwiYXJnIiwidG9TdHJpbmciLCJzdWNjZWVkIiwiaWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFDQTs7QUFDQTs7OztBQU9BO0FBQ08sTUFBTUEsWUFBTixTQUEyQkMsMkJBQTNCLENBQXVEO0FBQUE7QUFBQTs7QUFBQSxrQ0FFNUMsaUJBRjRDOztBQUFBLHlDQUdyQyxnQkFIcUM7QUFBQTs7QUFLNUQ7QUFDVUMsRUFBQUEsTUFBTSxDQUFPQyxPQUFQLEVBQTBEO0FBQ3hFLFdBQU8sTUFBTUQsTUFBTixDQUFhRSxDQUFDLElBQUlELE9BQU8sQ0FBQ0MsQ0FBRCxDQUFQLENBQ3RCQyxVQURzQixDQUNYLFNBRFcsRUFDQTtBQUFFQyxNQUFBQSxJQUFJLEVBQUUsUUFBUjtBQUFrQkMsTUFBQUEsWUFBWSxFQUFFO0FBQWhDLEtBREEsQ0FBbEIsQ0FBUDtBQUdEOztBQUVrQixRQUFIQyxHQUFHLENBQUNDLElBQUQsRUFBcUQ7QUFDdEUsVUFBTSxNQUFNRCxHQUFOLENBQVVDLElBQVYsQ0FBTixDQURzRSxDQUd0RTs7QUFDQSxTQUFLQyxPQUFMLENBQWFDLEtBQWIsQ0FBbUIsbUJBQW5CO0FBQ0EsVUFBTUMsTUFBTSxHQUFHLElBQUlDLG9CQUFKLENBQWMsS0FBS0MsT0FBbkIsQ0FBZjtBQUVBLFNBQUtKLE9BQUwsQ0FBYUMsS0FBYixDQUFtQixlQUFuQjtBQUNBLFVBQU1JLElBQUksR0FBRyxNQUFNSCxNQUFNLENBQUNJLEtBQVAsQ0FBYSxLQUFLQyxTQUFMLENBQWVDLEdBQTVCLEVBQWlDVCxJQUFJLENBQUNVLE9BQXRDLEVBQStDVixJQUFJLENBQUMsSUFBRCxDQUFKLEVBQVlXLEdBQVosQ0FBZ0JDLEdBQUcsSUFBSUEsR0FBRyxDQUFDQyxRQUFKLEVBQXZCLENBQS9DLENBQW5CO0FBRUEsU0FBS1osT0FBTCxDQUFhYSxPQUFiLENBQXNCLFFBQU9SLElBQUksQ0FBQ1MsRUFBRyxVQUFyQztBQUNEOztBQXZCMkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcmd1bWVudHMsIEJ1aWxkZXIgfSBmcm9tICcuLi8uLi9jb21tYW5kJztcbmltcG9ydCB7IFdvcmtzcGFjZUFyZ3MsIFdvcmtzcGFjZUNvbW1hbmQgfSBmcm9tICcuLi8uLi93b3Jrc3BhY2UuY29tbWFuZCc7XG5pbXBvcnQgeyBNeXJDbGllbnQgfSBmcm9tICcuLi9teXItY2xpZW50JztcblxuLy8gVHlwZXNcbmV4cG9ydCBpbnRlcmZhY2UgU3Bhd25BcmdzIGV4dGVuZHMgV29ya3NwYWNlQXJncyB7XG4gIGNvbW1hbmQ6IHN0cmluZztcbn1cblxuLy8gQ29tbWFuZFxuZXhwb3J0IGNsYXNzIFNwYXduQ29tbWFuZCBleHRlbmRzIFdvcmtzcGFjZUNvbW1hbmQ8U3Bhd25BcmdzPiB7XG4gIC8vIEF0dHJpYnV0ZXNcbiAgcmVhZG9ubHkgbmFtZSA9ICdzcGF3biA8Y29tbWFuZD4nO1xuICByZWFkb25seSBkZXNjcmlwdGlvbiA9ICdTcGF3biBuZXcgdGFzayc7XG5cbiAgLy8gTWV0aG9kc1xuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFUgJiBTcGF3bkFyZ3M+IHtcbiAgICByZXR1cm4gc3VwZXIuZGVmaW5lKHkgPT4gYnVpbGRlcih5KVxuICAgICAgLnBvc2l0aW9uYWwoJ2NvbW1hbmQnLCB7IHR5cGU6ICdzdHJpbmcnLCBkZW1hbmRPcHRpb246IHRydWUgfSlcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIHJ1bihhcmdzOiBBcmd1bWVudHM8U3Bhd25BcmdzPik6IFByb21pc2U8bnVtYmVyIHwgdm9pZD4ge1xuICAgIGF3YWl0IHN1cGVyLnJ1bihhcmdzKTtcblxuICAgIC8vIFNwYXduIHRhc2tcbiAgICB0aGlzLnNwaW5uZXIuc3RhcnQoJ0Nvbm5lY3RpbmcgdG8gbXlyJyk7XG4gICAgY29uc3QgY2xpZW50ID0gbmV3IE15ckNsaWVudCh0aGlzLnByb2plY3QpO1xuXG4gICAgdGhpcy5zcGlubmVyLnN0YXJ0KCdTcGF3bmluZyB0YXNrJyk7XG4gICAgY29uc3QgdGFzayA9IGF3YWl0IGNsaWVudC5zcGF3bih0aGlzLndvcmtzcGFjZS5jd2QsIGFyZ3MuY29tbWFuZCwgYXJnc1snLS0nXT8ubWFwKGFyZyA9PiBhcmcudG9TdHJpbmcoKSkpO1xuXG4gICAgdGhpcy5zcGlubmVyLnN1Y2NlZWQoYFRhc2sgJHt0YXNrLmlkfSBzcGF3bmVkYCk7XG4gIH1cbn0iXSwiZmlsZSI6Im15ci9jb21tYW5kcy9zcGF3bi5jb21tYW5kLmpzIn0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Arguments } from '../../command';
|
|
2
|
+
import { ProjectArgs, ProjectCommand } from '../../project.command';
|
|
3
|
+
export declare class StopCommand extends ProjectCommand {
|
|
4
|
+
readonly name = "stop";
|
|
5
|
+
readonly description = "Stop myr server. This will kill all running tasks";
|
|
6
|
+
protected run(argv: Arguments<ProjectArgs>): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.StopCommand = void 0;
|
|
7
|
+
|
|
8
|
+
var _project = require("../../project.command");
|
|
9
|
+
|
|
10
|
+
var _myrClient = require("../myr-client");
|
|
11
|
+
|
|
12
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
+
|
|
14
|
+
// Command
|
|
15
|
+
class StopCommand extends _project.ProjectCommand {
|
|
16
|
+
constructor(...args) {
|
|
17
|
+
super(...args);
|
|
18
|
+
|
|
19
|
+
_defineProperty(this, "name", 'stop');
|
|
20
|
+
|
|
21
|
+
_defineProperty(this, "description", 'Stop myr server. This will kill all running tasks');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Methods
|
|
25
|
+
async run(argv) {
|
|
26
|
+
await super.run(argv); // Spawn task
|
|
27
|
+
|
|
28
|
+
this.spinner.start('Stopping myr');
|
|
29
|
+
const client = new _myrClient.MyrClient(this.project);
|
|
30
|
+
const ok = await client.stop();
|
|
31
|
+
|
|
32
|
+
if (ok) {
|
|
33
|
+
this.spinner.succeed('myr stopped');
|
|
34
|
+
} else {
|
|
35
|
+
this.spinner.stop();
|
|
36
|
+
this.logger.warn('myr was not running');
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
exports.StopCommand = StopCommand;
|
|
43
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9jb21tYW5kcy9zdG9wLmNvbW1hbmQudHMiXSwibmFtZXMiOlsiU3RvcENvbW1hbmQiLCJQcm9qZWN0Q29tbWFuZCIsInJ1biIsImFyZ3YiLCJzcGlubmVyIiwic3RhcnQiLCJjbGllbnQiLCJNeXJDbGllbnQiLCJwcm9qZWN0Iiwib2siLCJzdG9wIiwic3VjY2VlZCIsImxvZ2dlciIsIndhcm4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFDQTs7QUFDQTs7OztBQUVBO0FBQ08sTUFBTUEsV0FBTixTQUEwQkMsdUJBQTFCLENBQXlDO0FBQUE7QUFBQTs7QUFBQSxrQ0FFOUIsTUFGOEI7O0FBQUEseUNBR3ZCLG1EQUh1QjtBQUFBOztBQUs5QztBQUNtQixRQUFIQyxHQUFHLENBQUNDLElBQUQsRUFBOEM7QUFDL0QsVUFBTSxNQUFNRCxHQUFOLENBQVVDLElBQVYsQ0FBTixDQUQrRCxDQUcvRDs7QUFDQSxTQUFLQyxPQUFMLENBQWFDLEtBQWIsQ0FBbUIsY0FBbkI7QUFDQSxVQUFNQyxNQUFNLEdBQUcsSUFBSUMsb0JBQUosQ0FBYyxLQUFLQyxPQUFuQixDQUFmO0FBQ0EsVUFBTUMsRUFBRSxHQUFHLE1BQU1ILE1BQU0sQ0FBQ0ksSUFBUCxFQUFqQjs7QUFFQSxRQUFJRCxFQUFKLEVBQVE7QUFDTixXQUFLTCxPQUFMLENBQWFPLE9BQWIsQ0FBcUIsYUFBckI7QUFDRCxLQUZELE1BRU87QUFDTCxXQUFLUCxPQUFMLENBQWFNLElBQWI7QUFDQSxXQUFLRSxNQUFMLENBQVlDLElBQVosQ0FBaUIscUJBQWpCO0FBQ0Q7QUFDRjs7QUFwQjZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJndW1lbnRzIH0gZnJvbSAnLi4vLi4vY29tbWFuZCc7XG5pbXBvcnQgeyBQcm9qZWN0QXJncywgUHJvamVjdENvbW1hbmQgfSBmcm9tICcuLi8uLi9wcm9qZWN0LmNvbW1hbmQnO1xuaW1wb3J0IHsgTXlyQ2xpZW50IH0gZnJvbSAnLi4vbXlyLWNsaWVudCc7XG5cbi8vIENvbW1hbmRcbmV4cG9ydCBjbGFzcyBTdG9wQ29tbWFuZCBleHRlbmRzIFByb2plY3RDb21tYW5kIHtcbiAgLy8gQXR0cmlidXRlc1xuICByZWFkb25seSBuYW1lID0gJ3N0b3AnO1xuICByZWFkb25seSBkZXNjcmlwdGlvbiA9ICdTdG9wIG15ciBzZXJ2ZXIuIFRoaXMgd2lsbCBraWxsIGFsbCBydW5uaW5nIHRhc2tzJztcblxuICAvLyBNZXRob2RzXG4gIHByb3RlY3RlZCBhc3luYyBydW4oYXJndjogQXJndW1lbnRzPFByb2plY3RBcmdzPik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHN1cGVyLnJ1bihhcmd2KTtcblxuICAgIC8vIFNwYXduIHRhc2tcbiAgICB0aGlzLnNwaW5uZXIuc3RhcnQoJ1N0b3BwaW5nIG15cicpO1xuICAgIGNvbnN0IGNsaWVudCA9IG5ldyBNeXJDbGllbnQodGhpcy5wcm9qZWN0KTtcbiAgICBjb25zdCBvayA9IGF3YWl0IGNsaWVudC5zdG9wKCk7XG5cbiAgICBpZiAob2spIHtcbiAgICAgIHRoaXMuc3Bpbm5lci5zdWNjZWVkKCdteXIgc3RvcHBlZCcpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNwaW5uZXIuc3RvcCgpO1xuICAgICAgdGhpcy5sb2dnZXIud2FybignbXlyIHdhcyBub3QgcnVubmluZycpO1xuICAgIH1cbiAgfVxufSJdLCJmaWxlIjoibXlyL2NvbW1hbmRzL3N0b3AuY29tbWFuZC5qcyJ9
|
package/dist/myr/myr-client.d.ts
CHANGED
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
import { Project, Workspace } from '@jujulego/jill-core';
|
|
2
|
-
import {
|
|
2
|
+
import { Task } from '@jujulego/jill-myr';
|
|
3
|
+
import { Repeater } from '@repeaterjs/repeater';
|
|
4
|
+
import { DocumentNode } from 'graphql';
|
|
3
5
|
export declare class MyrClient {
|
|
4
6
|
readonly project: Project;
|
|
5
7
|
private readonly _logger;
|
|
6
8
|
private readonly _endpoint;
|
|
7
9
|
private readonly _qclient;
|
|
10
|
+
private readonly _sclient;
|
|
8
11
|
constructor(project: Project);
|
|
9
12
|
protected _autoStart<T>(fn: () => Promise<T>): Promise<T>;
|
|
13
|
+
protected _subscription<T>(query: DocumentNode, variables: Record<string, unknown>): Repeater<T>;
|
|
10
14
|
start(): Promise<void>;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
+
stop(): Promise<boolean>;
|
|
16
|
+
tasks(): Promise<Task[]>;
|
|
17
|
+
spawn(cwd: string, cmd: string, args?: string[]): Promise<Task>;
|
|
18
|
+
spawnScript(wks: Workspace, script: string, args?: string[]): Promise<Task>;
|
|
19
|
+
logs(): Promise<any[]>;
|
|
20
|
+
logs$(): AsyncGenerator<any>;
|
|
21
|
+
kill(id: string): Promise<Task | undefined>;
|
|
15
22
|
}
|