mirror of
https://github.com/github/codeql-action.git
synced 2025-12-26 17:20:10 +08:00
plugin-retry.js
Retries requests for server 4xx/5xx responses except
400,401,403and404.
Usage
| Browsers |
Load |
|---|---|
| Node |
Install with |
Note: If you use it with @octokit/rest v16, install @octokit/core as a devDependency. This is only temporary and will no longer be necessary with @octokit/rest v17.
const MyOctokit = Octokit.plugin(retry);
const octokit = new MyOctokit({ auth: "secret123" });
// retries request up to 3 times in case of a 500 response
octokit.request("/").catch((error) => {
if (error.request.request.retryCount) {
console.log(
`request failed after ${error.request.request.retryCount} retries`
);
}
console.error(error);
});
To override the default doNotRetry list:
const octokit = new MyOctokit({
auth: "secret123",
retry: {
doNotRetry: [
/* List of HTTP 4xx/5xx status codes */
],
},
});
To override the number of retries:
const octokit = new MyOctokit({
auth: "secret123",
request: { retries: 1 },
});
You can manually ask for retries for any request by passing { request: { retries: numRetries, retryAfter: delayInSeconds }}
octokit
.request("/", { request: { retries: 1, retryAfter: 1 } })
.catch((error) => {
if (error.request.request.retryCount) {
console.log(
`request failed after ${error.request.request.retryCount} retries`
);
}
console.error(error);
});
Pass { retry: { enabled: false } } to disable this plugin.
Contributing
See CONTRIBUTING.md