action-gh-release/node_modules/@octokit/plugin-retry/dist-src/index.js
2021-07-21 15:17:14 +08:00

26 lines
888 B
JavaScript

import { errorRequest } from "./error-request";
import { wrapRequest } from "./wrap-request";
export const VERSION = "0.0.0-development";
export function retry(octokit, octokitOptions = {}) {
const state = Object.assign({
enabled: true,
retryAfterBaseValue: 1000,
doNotRetry: [400, 401, 403, 404, 422],
retries: 3,
}, octokitOptions.retry);
octokit.retry = {
retryRequest: (error, retries, retryAfter) => {
error.request.request = Object.assign({}, error.request.request, {
retries: retries,
retryAfter: retryAfter,
});
return error;
},
};
if (!state.enabled) {
return;
}
octokit.hook.error("request", errorRequest.bind(null, octokit, state));
octokit.hook.wrap("request", wrapRequest.bind(null, state));
}
retry.VERSION = VERSION;