MCPcopy Create free account
hub / github.com/acode/cli / RebuildCommand

Class RebuildCommand

cli/commands/rebuild.js:13–114  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

11const RELEASE_ENV = 'release';
12
13class RebuildCommand extends Command {
14
15 constructor() {
16
17 super('rebuild');
18
19 }
20
21 help() {
22
23 return {
24 description: 'Rebuilds a service (useful for registry performance updates), alias of `lib restart -b`',
25 args: [
26 'environment'
27 ],
28 flags: {
29 r: 'Rebuild a release package'
30 },
31 vflags: {
32 release: 'Rebuild a release package'
33 }
34 };
35
36 }
37
38 run(params, callback) {
39
40 let environment = params.args[0];
41 let release = params.flags.r || params.vflags.release;
42 let version = null;
43
44 if (environment) {
45 if (environment === RELEASE_ENV) {
46 if (release[0]) {
47 version = release[0];
48 }
49 } else if (release) {
50 return callback(new Error('Can not release to an environment'));
51 }
52 } else if (release) {
53 environment = RELEASE_ENV;
54 if (release[0]) {
55 version = release[0];
56 }
57 } else {
58 return callback(new Error('Please specify an environment'));
59 }
60
61 let host = 'packages.stdlib.com';
62 let port = 443;
63
64 let hostname = (params.flags.h && params.flags.h[0]) || '';
65 let matches = hostname.match(/^(https?:\/\/)?(.*?)(:\d+)?$/);
66
67 if (hostname && matches) {
68 host = matches[2];
69 port = parseInt((matches[3] || '').substr(1) || (hostname.indexOf('https') === 0 ? 443 : 80));
70 }

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected