UNPKG

6.22 kBJavaScriptView Raw
1// koffee 1.14.0
2
3/*
400000000 000 000 000 000 0000000 00 00 0000000
5000 000 000 000 0000 000 000 000 000 000 000
60000000 000 000 000 0 000 000 000000000 000 000
7000 000 000 000 000 0000 000 000 0 000 000 000
8000 000 0000000 000 000 0000000 000 000 0000000
9 */
10var args, childp, klog, kolor, konradError, pretty, ref, runcmd, slash, valid;
11
12ref = require('kxk'), args = ref.args, childp = ref.childp, klog = ref.klog, kolor = ref.kolor, slash = ref.slash, valid = ref.valid;
13
14pretty = require('./pretty');
15
16konradError = require('./error');
17
18runcmd = function(cmd, cmdargs, cwd) {
19 var cmdpath, command, err, pkg, ref1, result;
20 try {
21 if (cmd === 'test') {
22 if (valid(cmdargs) && 0 < cmdargs.indexOf('.coffee')) {
23 cmdpath = 'mocha -c --require koffee/js/register ';
24 } else {
25 pkg = require(slash.join(cwd, 'package.json'));
26 if (!(pkg != null ? (ref1 = pkg.scripts) != null ? ref1.test : void 0 : void 0)) {
27 klog('no test script');
28 return true;
29 } else {
30 cmdpath = 'npm run test';
31 }
32 }
33 } else {
34 cmdpath = slash.resolve(slash.join(__dirname, '..', 'bin', cmd));
35 }
36 if (slash.win()) {
37 command = "bash " + cmdpath + " " + cmdargs;
38 } else {
39 command = cmdpath + " " + cmdargs;
40 }
41 if (args.verbose) {
42 klog(" 🔧 ", kolor.gray(cmd), pretty.filePath(command));
43 }
44 result = childp.execSync(command, {
45 cwd: cwd,
46 encoding: 'utf8',
47 stdio: 'inherit',
48 shell: true
49 });
50 } catch (error) {
51 err = error;
52 konradError("command error", "command '" + cmd + "' (" + command + ") " + 'failed!', err);
53 return false;
54 }
55 return true;
56};
57
58module.exports = runcmd;
59
60//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuY21kLmpzIiwic291cmNlUm9vdCI6Ii4uL2NvZmZlZSIsInNvdXJjZXMiOlsicnVuY21kLmNvZmZlZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBOzs7Ozs7O0FBQUEsSUFBQTs7QUFRQSxNQUE4QyxPQUFBLENBQVEsS0FBUixDQUE5QyxFQUFFLGVBQUYsRUFBUSxtQkFBUixFQUFnQixlQUFoQixFQUFzQixpQkFBdEIsRUFBNkIsaUJBQTdCLEVBQW9DOztBQUVwQyxNQUFBLEdBQWMsT0FBQSxDQUFRLFVBQVI7O0FBQ2QsV0FBQSxHQUFjLE9BQUEsQ0FBUSxTQUFSOztBQUVkLE1BQUEsR0FBUyxTQUFDLEdBQUQsRUFBTSxPQUFOLEVBQWUsR0FBZjtBQUVMLFFBQUE7QUFBQTtRQUNJLElBQUcsR0FBQSxLQUFPLE1BQVY7WUFDSSxJQUFHLEtBQUEsQ0FBTSxPQUFOLENBQUEsSUFBbUIsQ0FBQSxHQUFJLE9BQU8sQ0FBQyxPQUFSLENBQWdCLFNBQWhCLENBQTFCO2dCQUNJLE9BQUEsR0FBVSx5Q0FEZDthQUFBLE1BQUE7Z0JBR0ksR0FBQSxHQUFNLE9BQUEsQ0FBUSxLQUFLLENBQUMsSUFBTixDQUFXLEdBQVgsRUFBZ0IsY0FBaEIsQ0FBUjtnQkFDTixJQUFHLG1EQUFnQixDQUFFLHVCQUFyQjtvQkFDSSxJQUFBLENBQUssZ0JBQUw7QUFDQSwyQkFBTyxLQUZYO2lCQUFBLE1BQUE7b0JBSUksT0FBQSxHQUFVLGVBSmQ7aUJBSko7YUFESjtTQUFBLE1BQUE7WUFXSSxPQUFBLEdBQVUsS0FBSyxDQUFDLE9BQU4sQ0FBYyxLQUFLLENBQUMsSUFBTixDQUFXLFNBQVgsRUFBc0IsSUFBdEIsRUFBMkIsS0FBM0IsRUFBaUMsR0FBakMsQ0FBZCxFQVhkOztRQWFBLElBQUcsS0FBSyxDQUFDLEdBQU4sQ0FBQSxDQUFIO1lBQ0ksT0FBQSxHQUFVLE9BQUEsR0FBUSxPQUFSLEdBQWdCLEdBQWhCLEdBQW1CLFFBRGpDO1NBQUEsTUFBQTtZQUdJLE9BQUEsR0FBYSxPQUFELEdBQVMsR0FBVCxHQUFZLFFBSDVCOztRQUtBLElBQUcsSUFBSSxDQUFDLE9BQVI7WUFDSSxJQUFBLENBQUssTUFBTCxFQUFZLEtBQUssQ0FBQyxJQUFOLENBQVcsR0FBWCxDQUFaLEVBQTZCLE1BQU0sQ0FBQyxRQUFQLENBQWdCLE9BQWhCLENBQTdCLEVBREo7O1FBR0EsTUFBQSxHQUFTLE1BQU0sQ0FBQyxRQUFQLENBQWdCLE9BQWhCLEVBQ0w7WUFBQSxHQUFBLEVBQVUsR0FBVjtZQUNBLFFBQUEsRUFBVSxNQURWO1lBRUEsS0FBQSxFQUFVLFNBRlY7WUFHQSxLQUFBLEVBQVUsSUFIVjtTQURLLEVBdEJiO0tBQUEsYUFBQTtRQThCTTtRQUNGLFdBQUEsQ0FBWSxlQUFaLEVBQTRCLFdBQUEsR0FBWSxHQUFaLEdBQWdCLEtBQWhCLEdBQXFCLE9BQXJCLEdBQTZCLElBQTdCLEdBQWlDLFNBQTdELEVBQXlFLEdBQXpFO0FBQ0EsZUFBTyxNQWhDWDs7V0FpQ0E7QUFuQ0s7O0FBcUNULE1BQU0sQ0FBQyxPQUFQLEdBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiIyMjXG4wMDAwMDAwMCAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAgMDAwMDAwMCAgMDAgICAgIDAwICAwMDAwMDAwICBcbjAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAwICAwMDAgIDAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAgIDAwMFxuMDAwMDAwMCAgICAwMDAgICAwMDAgIDAwMCAwIDAwMCAgMDAwICAgICAgIDAwMDAwMDAwMCAgMDAwICAgMDAwXG4wMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwICAwMDAwICAwMDAgICAgICAgMDAwIDAgMDAwICAwMDAgICAwMDBcbjAwMCAgIDAwMCAgIDAwMDAwMDAgICAwMDAgICAwMDAgICAwMDAwMDAwICAwMDAgICAwMDAgIDAwMDAwMDAgIFxuIyMjXG5cbnsgYXJncywgY2hpbGRwLCBrbG9nLCBrb2xvciwgc2xhc2gsIHZhbGlkIH0gPSByZXF1aXJlICdreGsnXG5cbnByZXR0eSAgICAgID0gcmVxdWlyZSAnLi9wcmV0dHknXG5rb25yYWRFcnJvciA9IHJlcXVpcmUgJy4vZXJyb3InXG5cbnJ1bmNtZCA9IChjbWQsIGNtZGFyZ3MsIGN3ZCkgLT5cbiAgICBcbiAgICB0cnlcbiAgICAgICAgaWYgY21kID09ICd0ZXN0J1xuICAgICAgICAgICAgaWYgdmFsaWQoY21kYXJncykgYW5kIDAgPCBjbWRhcmdzLmluZGV4T2YoJy5jb2ZmZWUnKVxuICAgICAgICAgICAgICAgIGNtZHBhdGggPSAnbW9jaGEgLWMgLS1yZXF1aXJlIGtvZmZlZS9qcy9yZWdpc3RlciAnXG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgcGtnID0gcmVxdWlyZSBzbGFzaC5qb2luIGN3ZCwgJ3BhY2thZ2UuanNvbidcbiAgICAgICAgICAgICAgICBpZiBub3QgcGtnPy5zY3JpcHRzPy50ZXN0XG4gICAgICAgICAgICAgICAgICAgIGtsb2cgJ25vIHRlc3Qgc2NyaXB0J1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgY21kcGF0aCA9ICducG0gcnVuIHRlc3QnXG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIGNtZHBhdGggPSBzbGFzaC5yZXNvbHZlIHNsYXNoLmpvaW4gX19kaXJuYW1lLCAnLi4nICdiaW4nIGNtZFxuICAgICAgICBcbiAgICAgICAgaWYgc2xhc2gud2luKClcbiAgICAgICAgICAgIGNvbW1hbmQgPSBcImJhc2ggI3tjbWRwYXRofSAje2NtZGFyZ3N9XCJcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgY29tbWFuZCA9IFwiI3tjbWRwYXRofSAje2NtZGFyZ3N9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICBpZiBhcmdzLnZlcmJvc2VcbiAgICAgICAgICAgIGtsb2cgXCIg8J+UpyBcIiBrb2xvci5ncmF5KGNtZCksIHByZXR0eS5maWxlUGF0aChjb21tYW5kKVxuICAgICAgICAgICAgICAgIFxuICAgICAgICByZXN1bHQgPSBjaGlsZHAuZXhlY1N5bmMgY29tbWFuZCxcbiAgICAgICAgICAgIGN3ZDrCoCAgICAgY3dkXG4gICAgICAgICAgICBlbmNvZGluZzrCoCd1dGY4J1xuICAgICAgICAgICAgc3RkaW86wqAgICAnaW5oZXJpdCdcbiAgICAgICAgICAgIHNoZWxsOiAgICB0cnVlXG4gICAgICAgICAgICBcbiAgICAgICAgIyBrbG9nICdyZXN1bHQnIHJlc3VsdFxuICAgICAgICAgIFxuICAgIGNhdGNoIGVyclxuICAgICAgICBrb25yYWRFcnJvciBcImNvbW1hbmQgZXJyb3JcIiBcImNvbW1hbmQgJyN7Y21kfScgKCN7Y29tbWFuZH0pICN7J2ZhaWxlZCEnfVwiIGVyclxuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICB0cnVlXG5cbm1vZHVsZS5leHBvcnRzID0gcnVuY21kXG4iXX0=
61//# sourceURL=../coffee/runcmd.coffee
\No newline at end of file