1 | import exec from 'then-exec';
|
2 | export function trim(string) {
|
3 | return string.replace(/^\s+|\s+$/g, '');
|
4 | }
|
5 | export function loadVersion(version) {
|
6 | return exec(`unset npm_config_prefix && . ~/.nvm/nvm.sh && nvm use ${version}`);
|
7 | }
|
8 | export function runCommand(version, command) {
|
9 | return exec(`unset npm_config_prefix && . ~/.nvm/nvm.sh && nvm use ${version} && ${command}`);
|
10 | }
|
11 | export function runVersion(version) {
|
12 | return runCommand(version, "node -e 'process.stdout.write(process.versions.node)'");
|
13 | }
|
14 | export function runInstall(version) {
|
15 | return exec(`unset npm_config_prefix && . ~/.nvm/nvm.sh && nvm install --no-progress ${version}`);
|
16 | }
|
17 | export function lastLine(string) {
|
18 | return string.toString().trim().split('\n').slice(-1)[0].trim();
|
19 | }
|
20 | export function parseExitCode(code) {
|
21 |
|
22 | const number = Number(code);
|
23 | if (isNaN(number))
|
24 | return null;
|
25 | return number;
|
26 | }
|
27 | export function uniq(array) {
|
28 | return [...new Set(array)];
|
29 | }
|