UNPKG

1 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const cli_ux_1 = require("cli-ux");
4function buildCommand(args) {
5 if (args.length === 1) {
6 // do not add quotes around arguments if there is only one argument
7 // `heroku run "rake test"` should work like `heroku run rake test`
8 return args[0];
9 }
10 let cmd = '';
11 for (let arg of args) {
12 if (arg.indexOf(' ') !== -1 || arg.indexOf('"') !== -1) {
13 arg = '"' + arg.replace(/"/g, '\\"') + '"';
14 }
15 cmd = cmd + ' ' + arg;
16 }
17 return cmd.trim();
18}
19exports.buildCommand = buildCommand;
20function buildEnvFromFlag(flag) {
21 let env = {};
22 for (let v of flag.split(';')) {
23 let m = v.match(/^\s*([\w.-]+)\s*=\s*(.*)?\s*$/);
24 if (m)
25 env[m[1]] = m[2];
26 else
27 cli_ux_1.default.warn(`env flag ${v} appears invalid. Avoid using ';' in values.`);
28 }
29 return env;
30}
31exports.buildEnvFromFlag = buildEnvFromFlag;