UNPKG

1.47 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _cliEngineCommand = require('cli-engine-command');
8
9var _cliEngineCommand2 = _interopRequireDefault(_cliEngineCommand);
10
11var _plugins = require('../../plugins');
12
13var _plugins2 = _interopRequireDefault(_plugins);
14
15var _path = require('path');
16
17var _path2 = _interopRequireDefault(_path);
18
19var _hooks = require('../../hooks');
20
21function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
23let cli = 'heroku';
24if (global.config) {
25 cli = global.config.bin;
26}
27
28class PluginsLink extends _cliEngineCommand2.default {
29
30 async run() {
31 this.plugins = new _plugins2.default(this.config);
32 let p = _path2.default.resolve(this.argv[0] || process.cwd());
33 this.out.action.start(`Linking ${p}`);
34 await this.plugins.addLinkedPlugin(p);
35 const hooks = new _hooks.Hooks({ config: this.config });
36 await hooks.run('update');
37 }
38}
39exports.default = PluginsLink;
40PluginsLink.topic = 'plugins';
41PluginsLink.command = 'link';
42PluginsLink.args = [{ name: 'path', optional: true, description: 'local file path to plugin root' }];
43PluginsLink.description = 'links a local plugin to the CLI for development';
44PluginsLink.help = `Example:
45 $ ${cli} plugins:link .
46 Installing dependencies for /Users/dickeyxxx/src/github.com/heroku/heroku-status... done
47 Running prepare script for /Users/dickeyxxx/src/github.com/heroku/heroku-status... done`;
\No newline at end of file