mirror of
https://github.com/github/codeql-action.git
synced 2026-10-03 17:41:28 +00:00
Change waitForProcessing to use exponential backoff
This commit is contained in:
28
lib/entry-points.js
generated
28
lib/entry-points.js
generated
@@ -157473,22 +157473,18 @@ function dumpSarifFile(sarifPayload, outputDir, logger, uploadTarget) {
|
||||
logger.info(`Writing processed SARIF file to ${outputFile}`);
|
||||
fs21.writeFileSync(outputFile, sarifPayload);
|
||||
}
|
||||
var STATUS_CHECK_FREQUENCY_MILLISECONDS = 5 * 1e3;
|
||||
var STATUS_CHECK_TIMEOUT_MILLISECONDS = 2 * 60 * 1e3;
|
||||
var STATUS_CHECK_INITIAL_BACKOFF_MILLISECONDS = 5 * 1e3;
|
||||
var STATUS_CHECK_BACKOFF_MULTIPLIER = 2;
|
||||
var STATUS_CHECK_MAX_TRIES = 5;
|
||||
async function waitForProcessing(repositoryNwo, sarifID, logger, options = {
|
||||
isUnsuccessfulExecution: false
|
||||
}) {
|
||||
logger.startGroup("Waiting for processing to finish");
|
||||
try {
|
||||
const client = getApiClient();
|
||||
const statusCheckingStarted = Date.now();
|
||||
while (true) {
|
||||
if (Date.now() > statusCheckingStarted + STATUS_CHECK_TIMEOUT_MILLISECONDS) {
|
||||
logger.warning(
|
||||
"Timed out waiting for analysis to finish processing. Continuing."
|
||||
);
|
||||
break;
|
||||
}
|
||||
let statusCheckBackoff = STATUS_CHECK_INITIAL_BACKOFF_MILLISECONDS;
|
||||
await delay(statusCheckBackoff, { allowProcessExit: false });
|
||||
for (let statusCheckCount = 1; statusCheckCount <= STATUS_CHECK_MAX_TRIES; statusCheckCount++) {
|
||||
let response = void 0;
|
||||
try {
|
||||
response = await client.request(
|
||||
@@ -157526,9 +157522,15 @@ ${response.data.errors}`;
|
||||
} else {
|
||||
assertNever(status);
|
||||
}
|
||||
await delay(STATUS_CHECK_FREQUENCY_MILLISECONDS, {
|
||||
allowProcessExit: false
|
||||
});
|
||||
if (statusCheckCount === STATUS_CHECK_MAX_TRIES) {
|
||||
logger.warning(
|
||||
"Timed out waiting for analysis to finish processing. Continuing."
|
||||
);
|
||||
break;
|
||||
} else {
|
||||
statusCheckBackoff *= STATUS_CHECK_BACKOFF_MULTIPLIER;
|
||||
await delay(statusCheckBackoff, { allowProcessExit: false });
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
logger.endGroup();
|
||||
|
||||
Reference in New Issue
Block a user