added automatic retrial of failed commands
This commit is contained in:
parent
2ae6fad2a1
commit
1e9c2c850c
4
dist/npmci.bash.d.ts
vendored
4
dist/npmci.bash.d.ts
vendored
@ -1,3 +1,3 @@
|
|||||||
import "typings-global";
|
import "typings-global";
|
||||||
export declare let bash: (commandArg: any) => void;
|
export declare let bash: (commandArg: string, retryArg?: number) => void;
|
||||||
export declare let bashBare: (commandArg: any) => void;
|
export declare let bashBare: (commandArg: any, retryArg?: number) => void;
|
||||||
|
22
dist/npmci.bash.js
vendored
22
dist/npmci.bash.js
vendored
@ -1,29 +1,41 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
require("typings-global");
|
require("typings-global");
|
||||||
var plugins = require("./npmci.plugins");
|
var plugins = require("./npmci.plugins");
|
||||||
exports.bash = function (commandArg) {
|
exports.bash = function (commandArg, retryArg) {
|
||||||
|
if (retryArg === void 0) { retryArg = 2; }
|
||||||
if (!process.env.NPMTS_TEST) {
|
if (!process.env.NPMTS_TEST) {
|
||||||
|
for (var i = 0; i <= retryArg; i++) {
|
||||||
var exitCode = plugins.shelljs.exec("bash -c \"source /usr/local/nvm/nvm.sh &&" +
|
var exitCode = plugins.shelljs.exec("bash -c \"source /usr/local/nvm/nvm.sh &&" +
|
||||||
commandArg +
|
commandArg +
|
||||||
"\"").code;
|
"\"").code;
|
||||||
if (exitCode !== 0) {
|
if (exitCode !== 0 && i == retryArg) {
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
|
else if (exitCode == 0) {
|
||||||
|
i = retryArg + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
plugins.beautylog.log("ShellExec would be: " + commandArg.blue);
|
plugins.beautylog.log("ShellExec would be: " + commandArg.blue);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
exports.bashBare = function (commandArg) {
|
exports.bashBare = function (commandArg, retryArg) {
|
||||||
|
if (retryArg === void 0) { retryArg = 3; }
|
||||||
if (!process.env.NPMTS_TEST) {
|
if (!process.env.NPMTS_TEST) {
|
||||||
|
for (var i = 0; i <= retryArg; i++) {
|
||||||
var exitCode = plugins.shelljs.exec(commandArg).code;
|
var exitCode = plugins.shelljs.exec(commandArg).code;
|
||||||
if (exitCode !== 0) {
|
if (exitCode !== 0 && i == retryArg) {
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
|
else if (exitCode == 0) {
|
||||||
|
i = retryArg + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
plugins.beautylog.log("ShellExec would be: " + commandArg.blue);
|
plugins.beautylog.log("ShellExec would be: " + commandArg.blue);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5wbWNpLmJhc2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUN4QixJQUFZLE9BQU8sV0FBTSxpQkFBaUIsQ0FBQyxDQUFBO0FBQ2hDLFlBQUksR0FBRyxVQUFDLFVBQVU7SUFDekIsRUFBRSxDQUFBLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFBLENBQUM7UUFDeEIsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQy9CLDJDQUEyQztZQUMzQyxVQUFVO1lBQ1YsSUFBSSxDQUNQLENBQUMsSUFBSSxDQUFDO1FBQ1AsRUFBRSxDQUFBLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxDQUFBLENBQUM7WUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BCLENBQUM7SUFDTCxDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkUsQ0FBQztBQUNMLENBQUMsQ0FBQTtBQUVVLGdCQUFRLEdBQUcsVUFBQyxVQUFVO0lBQzdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQSxDQUFDO1FBQ3pCLElBQUksUUFBUSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNyRCxFQUFFLENBQUEsQ0FBQyxRQUFRLEtBQUssQ0FBQyxDQUFDLENBQUEsQ0FBQztZQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsQ0FBQztJQUNMLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLHNCQUFzQixHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNuRSxDQUFDO0FBQ0wsQ0FBQyxDQUFBIiwiZmlsZSI6Im5wbWNpLmJhc2guanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xyXG5pbXBvcnQgKiBhcyBwbHVnaW5zIGZyb20gXCIuL25wbWNpLnBsdWdpbnNcIjtcclxuZXhwb3J0IGxldCBiYXNoID0gKGNvbW1hbmRBcmcpID0+IHtcclxuICAgIGlmKCFwcm9jZXNzLmVudi5OUE1UU19URVNUKXtcclxuICAgICAgICBsZXQgZXhpdENvZGUgPSBwbHVnaW5zLnNoZWxsanMuZXhlYyhcclxuICAgICAgICAgICAgXCJiYXNoIC1jIFxcXCJzb3VyY2UgL3Vzci9sb2NhbC9udm0vbnZtLnNoICYmXCIgK1xyXG4gICAgICAgICAgICBjb21tYW5kQXJnICtcclxuICAgICAgICAgICAgXCJcXFwiXCJcclxuICAgICAgICApLmNvZGU7XHJcbiAgICAgICAgaWYoZXhpdENvZGUgIT09IDApe1xyXG4gICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBwbHVnaW5zLmJlYXV0eWxvZy5sb2coXCJTaGVsbEV4ZWMgd291bGQgYmU6IFwiICsgY29tbWFuZEFyZy5ibHVlKVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgbGV0IGJhc2hCYXJlID0gKGNvbW1hbmRBcmcpID0+IHtcclxuICAgIGlmICghcHJvY2Vzcy5lbnYuTlBNVFNfVEVTVCl7XHJcbiAgICAgICAgbGV0IGV4aXRDb2RlID0gcGx1Z2lucy5zaGVsbGpzLmV4ZWMoY29tbWFuZEFyZykuY29kZTtcclxuICAgICAgICBpZihleGl0Q29kZSAhPT0gMCl7XHJcbiAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcclxuICAgICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIHBsdWdpbnMuYmVhdXR5bG9nLmxvZyhcIlNoZWxsRXhlYyB3b3VsZCBiZTogXCIgKyBjb21tYW5kQXJnLmJsdWUpXHJcbiAgICB9XHJcbn0iXX0=
|
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5wbWNpLmJhc2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUN4QixJQUFZLE9BQU8sV0FBTSxpQkFBaUIsQ0FBQyxDQUFBO0FBQ2hDLFlBQUksR0FBRyxVQUFDLFVBQWlCLEVBQUMsUUFBWTtJQUFaLHdCQUFZLEdBQVosWUFBWTtJQUM3QyxFQUFFLENBQUEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUEsQ0FBQztRQUN4QixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBQyxDQUFDO1lBQ2hDLElBQUksUUFBUSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUMvQiwyQ0FBMkM7Z0JBQzNDLFVBQVU7Z0JBQ1YsSUFBSSxDQUNQLENBQUMsSUFBSSxDQUFDO1lBQ1AsRUFBRSxDQUFBLENBQUMsUUFBUSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUEsQ0FBQztnQkFDaEMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNwQixDQUFDO1lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsQ0FBQSxDQUFDO2dCQUNyQixDQUFDLEdBQUcsUUFBUSxHQUFHLENBQUMsQ0FBQztZQUNyQixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLHNCQUFzQixHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNuRSxDQUFDO0FBQ0wsQ0FBQyxDQUFBO0FBRVUsZ0JBQVEsR0FBRyxVQUFDLFVBQVUsRUFBQyxRQUFZO0lBQVosd0JBQVksR0FBWixZQUFZO0lBQzFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQSxDQUFDO1FBQ3pCLEdBQUcsQ0FBQSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFDLENBQUM7WUFDL0IsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ3JELEVBQUUsQ0FBQSxDQUFDLFFBQVEsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFBLENBQUM7Z0JBQ2hDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEIsQ0FBQztZQUFDLElBQUksQ0FBQyxFQUFFLENBQUEsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUEsQ0FBQztnQkFDckIsQ0FBQyxHQUFHLFFBQVEsR0FBRyxDQUFDLENBQUM7WUFDckIsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkUsQ0FBQztBQUNMLENBQUMsQ0FBQSIsImZpbGUiOiJucG1jaS5iYXNoLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcclxuaW1wb3J0ICogYXMgcGx1Z2lucyBmcm9tIFwiLi9ucG1jaS5wbHVnaW5zXCI7XHJcbmV4cG9ydCBsZXQgYmFzaCA9IChjb21tYW5kQXJnOnN0cmluZyxyZXRyeUFyZyA9IDIpID0+IHtcclxuICAgIGlmKCFwcm9jZXNzLmVudi5OUE1UU19URVNUKXtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSByZXRyeUFyZzsgaSsrKXtcclxuICAgICAgICAgICAgbGV0IGV4aXRDb2RlID0gcGx1Z2lucy5zaGVsbGpzLmV4ZWMoXHJcbiAgICAgICAgICAgICAgICBcImJhc2ggLWMgXFxcInNvdXJjZSAvdXNyL2xvY2FsL252bS9udm0uc2ggJiZcIiArXHJcbiAgICAgICAgICAgICAgICBjb21tYW5kQXJnICtcclxuICAgICAgICAgICAgICAgIFwiXFxcIlwiXHJcbiAgICAgICAgICAgICkuY29kZTtcclxuICAgICAgICAgICAgaWYoZXhpdENvZGUgIT09IDAgJiYgaSA9PSByZXRyeUFyZyl7XHJcbiAgICAgICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZihleGl0Q29kZSA9PSAwKXtcclxuICAgICAgICAgICAgICAgIGkgPSByZXRyeUFyZyArIDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIHBsdWdpbnMuYmVhdXR5bG9nLmxvZyhcIlNoZWxsRXhlYyB3b3VsZCBiZTogXCIgKyBjb21tYW5kQXJnLmJsdWUpXHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBsZXQgYmFzaEJhcmUgPSAoY29tbWFuZEFyZyxyZXRyeUFyZyA9IDMpID0+IHtcclxuICAgIGlmICghcHJvY2Vzcy5lbnYuTlBNVFNfVEVTVCl7XHJcbiAgICAgICAgZm9yKGxldCBpID0gMDsgaSA8PSByZXRyeUFyZzsgaSsrKXtcclxuICAgICAgICAgICAgbGV0IGV4aXRDb2RlID0gcGx1Z2lucy5zaGVsbGpzLmV4ZWMoY29tbWFuZEFyZykuY29kZTtcclxuICAgICAgICAgICAgaWYoZXhpdENvZGUgIT09IDAgJiYgaSA9PSByZXRyeUFyZyl7XHJcbiAgICAgICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZihleGl0Q29kZSA9PSAwKXtcclxuICAgICAgICAgICAgICAgIGkgPSByZXRyeUFyZyArIDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIHBsdWdpbnMuYmVhdXR5bG9nLmxvZyhcIlNoZWxsRXhlYyB3b3VsZCBiZTogXCIgKyBjb21tYW5kQXJnLmJsdWUpXHJcbiAgICB9XHJcbn0iXX0=
|
||||||
|
@ -1,25 +1,33 @@
|
|||||||
import "typings-global";
|
import "typings-global";
|
||||||
import * as plugins from "./npmci.plugins";
|
import * as plugins from "./npmci.plugins";
|
||||||
export let bash = (commandArg) => {
|
export let bash = (commandArg:string,retryArg = 2) => {
|
||||||
if(!process.env.NPMTS_TEST){
|
if(!process.env.NPMTS_TEST){
|
||||||
|
for (let i = 0; i <= retryArg; i++){
|
||||||
let exitCode = plugins.shelljs.exec(
|
let exitCode = plugins.shelljs.exec(
|
||||||
"bash -c \"source /usr/local/nvm/nvm.sh &&" +
|
"bash -c \"source /usr/local/nvm/nvm.sh &&" +
|
||||||
commandArg +
|
commandArg +
|
||||||
"\""
|
"\""
|
||||||
).code;
|
).code;
|
||||||
if(exitCode !== 0){
|
if(exitCode !== 0 && i == retryArg){
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
|
} else if(exitCode == 0){
|
||||||
|
i = retryArg + 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
plugins.beautylog.log("ShellExec would be: " + commandArg.blue)
|
plugins.beautylog.log("ShellExec would be: " + commandArg.blue)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export let bashBare = (commandArg) => {
|
export let bashBare = (commandArg,retryArg = 3) => {
|
||||||
if (!process.env.NPMTS_TEST){
|
if (!process.env.NPMTS_TEST){
|
||||||
|
for(let i = 0; i <= retryArg; i++){
|
||||||
let exitCode = plugins.shelljs.exec(commandArg).code;
|
let exitCode = plugins.shelljs.exec(commandArg).code;
|
||||||
if(exitCode !== 0){
|
if(exitCode !== 0 && i == retryArg){
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
|
} else if(exitCode == 0){
|
||||||
|
i = retryArg + 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
plugins.beautylog.log("ShellExec would be: " + commandArg.blue)
|
plugins.beautylog.log("ShellExec would be: " + commandArg.blue)
|
||||||
|
Loading…
Reference in New Issue
Block a user