This commit is contained in:
Wathanyu Phromma 2020-05-29 20:37:00 +07:00
parent bc5ff62522
commit c2d9bb82a5
6 changed files with 61 additions and 19 deletions

10
dist/index.js vendored
View File

@ -10,11 +10,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
return result; return result;
}; };
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
var axios_1 = __importDefault(require("axios"));
var requestconf_1 = __importDefault(require("./requestconf")); var requestconf_1 = __importDefault(require("./requestconf"));
var core = __importStar(require("@actions/core")); var core = __importStar(require("@actions/core"));
var output_1 = __importDefault(require("./output"));
var fs = __importStar(require("fs")); var fs = __importStar(require("fs"));
var util_1 = require("./util");
function sleep(ms) {
return new Promise(function (resolve) { return setTimeout(resolve, ms); });
}
try { try {
if (core.getInput('custom-config')) { if (core.getInput('custom-config')) {
var configPath = core.getInput('custom-config'); var configPath = core.getInput('custom-config');
@ -28,10 +30,10 @@ try {
throw new Error('Config file not found, meybe you need to use action/checkout before this step or there is typo on file name'); throw new Error('Config file not found, meybe you need to use action/checkout before this step or there is typo on file name');
} }
var customConfig = JSON.parse(fs.readFileSync(path).toString()); var customConfig = JSON.parse(fs.readFileSync(path).toString());
axios_1.default(customConfig).then(function (res) { return output_1.default(res); }).catch(function (err) { return core.setFailed(err.message); }); util_1.sendRequestWithRetry(customConfig);
} }
else { else {
axios_1.default(requestconf_1.default).then(function (res) { return output_1.default(res); }).catch(function (err) { return core.setFailed(err.message); }); util_1.sendRequestWithRetry(requestconf_1.default);
} }
} }
catch (err) { catch (err) {

2
dist/index.js.map vendored
View File

@ -1 +1 @@
{"version":3,"file":"index.js","sourceRoot":"./src/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,gDAAyB;AACzB,8DAAkC;AAClC,kDAAqC;AAErC,oDAAgC;AAChC,qCAAwB;AAGxB,IAAI;IACA,IAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAC;QAC9B,IAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAClD,IAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAC9C,IAAM,IAAI,GAAM,QAAQ,SAAI,UAAY,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,aAAW,IAAM,CAAC,CAAC;QAC7B,IAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,MAAM,EAAC;YACtC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;SAC9C;QACD,IAAG,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAC;YACpB,MAAM,IAAI,KAAK,CAAC,6GAA6G,CAAC,CAAA;SACjI;QACD,IAAI,YAAY,GAAwB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAuB,CAAC;QAC3G,eAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,gBAAS,CAAC,GAAG,CAAC,EAAd,CAAc,CAAC,CAAC,KAAK,CAAC,UAAA,GAAG,IAAK,OAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAA3B,CAA2B,CAAC,CAAA;KAC7F;SAAI;QACD,eAAK,CAAC,qBAAM,CAAC,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,gBAAS,CAAC,GAAG,CAAC,EAAd,CAAc,CAAC,CAAC,KAAK,CAAC,UAAA,GAAG,IAAK,OAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAA3B,CAA2B,CAAC,CAAA;KACvF;CACJ;AAAC,OAAO,GAAG,EAAE;IACV,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;CAC/B"} {"version":3,"file":"index.js","sourceRoot":"./src/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,8DAAkC;AAClC,kDAAqC;AACrC,qCAAwB;AACxB,+BAA6C;AAE7C,SAAS,KAAK,CAAC,EAAU;IACrB,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,IAAI,OAAA,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAvB,CAAuB,CAAC,CAAC;AAC3D,CAAC;AAED,IAAI;IACA,IAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAC;QAC9B,IAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAClD,IAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAC9C,IAAM,IAAI,GAAM,QAAQ,SAAI,UAAY,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,aAAW,IAAM,CAAC,CAAC;QAC7B,IAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,MAAM,EAAC;YACtC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;SAC9C;QACD,IAAG,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAC;YACpB,MAAM,IAAI,KAAK,CAAC,6GAA6G,CAAC,CAAA;SACjI;QACD,IAAI,YAAY,GAAwB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAuB,CAAC;QAC3G,2BAAoB,CAAC,YAAY,CAAC,CAAA;KACrC;SAAI;QACD,2BAAoB,CAAC,qBAAM,CAAC,CAAA;KAC/B;CACJ;AAAC,OAAO,GAAG,EAAE;IACV,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;CAC/B"}

39
dist/util.js vendored
View File

@ -6,8 +6,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
result["default"] = mod; result["default"] = mod;
return result; return result;
}; };
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
var core = __importStar(require("@actions/core")); var core = __importStar(require("@actions/core"));
var axios_1 = __importDefault(require("axios"));
var output_1 = __importDefault(require("./output"));
exports.validateStatusCode = function (actualStatusCode) { exports.validateStatusCode = function (actualStatusCode) {
var acceptedStatusCode = core.getInput('accept') var acceptedStatusCode = core.getInput('accept')
.split(",").filter(function (x) { return x !== ""; }) .split(",").filter(function (x) { return x !== ""; })
@ -23,4 +28,38 @@ exports.buildOutput = function (res) {
"headers": res.headers "headers": res.headers
}); });
}; };
exports.sendRequestWithRetry = function (config) {
var exit = false;
var countRetry = 0;
var retryArr = core.getInput('retry').split('/');
var numberOfRetry = Number(retryArr[0]);
var backoff = Number(retryArr[1]);
core.info("retry: " + countRetry);
do {
try {
axios_1.default(config)
.then(function (res) {
exit = true;
output_1.default(res);
})
.catch(function (err) {
throw new Error(err);
});
}
catch (err) {
countRetry += 1;
core.info("retry: " + countRetry);
if (countRetry <= numberOfRetry) {
sleep(backoff);
}
else {
exit = true;
core.setFailed(err);
}
}
} while (!exit);
};
function sleep(ms) {
return new Promise(function (resolve) { return setTimeout(resolve, ms); });
}
//# sourceMappingURL=util.js.map //# sourceMappingURL=util.js.map

2
dist/util.js.map vendored
View File

@ -1 +1 @@
{"version":3,"file":"util.js","sourceRoot":"./src/","sources":["util.ts"],"names":[],"mappings":";;;;;;;;;AAAA,kDAAqC;AAGxB,QAAA,kBAAkB,GAAG,UAAC,gBAAwB;IACvD,IAAM,kBAAkB,GAAa,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;SACf,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,KAAK,EAAE,EAAR,CAAQ,CAAC;SAChC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,IAAI,EAAE,EAAR,CAAQ,CAAC,CAAC;IAChE,IAAG,CAAC,kBAAkB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,iCAA+B,kBAAkB,iBAAY,gBAAkB,CAAC,CAAA;KACnG;AACL,CAAC,CAAA;AAEY,QAAA,WAAW,GAAG,UAAC,GAAwB;IAChD,OAAO,IAAI,CAAC,SAAS,CAAC;QAClB,aAAa,EAAE,GAAG,CAAC,MAAM;QACzB,MAAM,EAAE,GAAG,CAAC,IAAI;QAChB,SAAS,EAAE,GAAG,CAAC,OAAO;KACzB,CAAC,CAAA;AACN,CAAC,CAAA"} {"version":3,"file":"util.js","sourceRoot":"./src/","sources":["util.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAqC;AACrC,gDAAgE;AAChE,oDAAgC;AAEnB,QAAA,kBAAkB,GAAG,UAAC,gBAAwB;IACvD,IAAM,kBAAkB,GAAa,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;SACvD,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,KAAK,EAAE,EAAR,CAAQ,CAAC;SAChC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,IAAI,EAAE,EAAR,CAAQ,CAAC,CAAC;IACxB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;QAChD,MAAM,IAAI,KAAK,CAAC,iCAA+B,kBAAkB,iBAAY,gBAAkB,CAAC,CAAA;KACnG;AACL,CAAC,CAAA;AAEY,QAAA,WAAW,GAAG,UAAC,GAAuB;IAC/C,OAAO,IAAI,CAAC,SAAS,CAAC;QAClB,aAAa,EAAE,GAAG,CAAC,MAAM;QACzB,MAAM,EAAE,GAAG,CAAC,IAAI;QAChB,SAAS,EAAE,GAAG,CAAC,OAAO;KACzB,CAAC,CAAA;AACN,CAAC,CAAA;AAEY,QAAA,oBAAoB,GAAG,UAAC,MAA0B;IAC3D,IAAI,IAAI,GAAG,KAAK,CAAA;IAChB,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,IAAM,QAAQ,GAAa,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5D,IAAM,aAAa,GAAW,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IACjD,IAAM,OAAO,GAAW,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3C,IAAI,CAAC,IAAI,CAAC,YAAU,UAAY,CAAC,CAAA;IACjC,GAAG;QACC,IAAG;YACC,eAAK,CAAC,MAAM,CAAC;iBACZ,IAAI,CAAC,UAAA,GAAG;gBACL,IAAI,GAAG,IAAI,CAAA;gBACX,gBAAS,CAAC,GAAG,CAAC,CAAA;YAClB,CAAC,CAAC;iBACD,KAAK,CAAC,UAAA,GAAG;gBACN,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;YACxB,CAAC,CAAC,CAAA;SACL;QAAA,OAAM,GAAG,EAAC;YACP,UAAU,IAAI,CAAC,CAAA;YACf,IAAI,CAAC,IAAI,CAAC,YAAU,UAAY,CAAC,CAAA;YACjC,IAAI,UAAU,IAAI,aAAa,EAAE;gBAC7B,KAAK,CAAC,OAAO,CAAC,CAAA;aACjB;iBAAM;gBACH,IAAI,GAAG,IAAI,CAAA;gBACX,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;aACtB;SACJ;KACJ,QAAQ,CAAC,IAAI,EAAC;AACnB,CAAC,CAAA;AAED,SAAS,KAAK,CAAC,EAAU;IACrB,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,IAAI,OAAA,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAvB,CAAuB,CAAC,CAAC;AAC3D,CAAC"}

View File

@ -10,10 +10,6 @@ function sleep(ms: number) {
} }
try { try {
process.on('uncaughtException', function (err) {
sleep(10000)
console.error(err.message)
})
if(core.getInput('custom-config')){ if(core.getInput('custom-config')){
const configPath = core.getInput('custom-config'); const configPath = core.getInput('custom-config');
const basePath = process.env.GITHUB_WORKSPACE; const basePath = process.env.GITHUB_WORKSPACE;

View File

@ -25,22 +25,27 @@ export const sendRequestWithRetry = (config: AxiosRequestConfig): void => {
const retryArr: string[] = core.getInput('retry').split('/') const retryArr: string[] = core.getInput('retry').split('/')
const numberOfRetry: number = Number(retryArr[0]) const numberOfRetry: number = Number(retryArr[0])
const backoff: number = Number(retryArr[1]) const backoff: number = Number(retryArr[1])
core.info(`retry: ${countRetry}`)
do { do {
axios(config) try{
axios(config)
.then(res => { .then(res => {
exit = true exit = true
setOutput(res) setOutput(res)
}) })
.catch(err => { .catch(err => {
countRetry += 1 throw new Error(err)
core.info(`retry: ${countRetry}`)
if (countRetry <= numberOfRetry) {
sleep(backoff)
} else {
exit = true
core.setFailed(err)
}
}) })
}catch(err){
countRetry += 1
core.info(`retry: ${countRetry}`)
if (countRetry <= numberOfRetry) {
sleep(backoff)
} else {
exit = true
core.setFailed(err)
}
}
} while (!exit) } while (!exit)
} }