[ci] Add jest retry (#174389)

If a jest test is flaky, we want to retry a single step instead of
re-running the entire pipeline.
This commit is contained in:
Jon 2024-01-05 15:25:31 -06:00 committed by GitHub
parent b89c53b90b
commit c3983b85a5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -218,6 +218,12 @@ export async function pickTestGroupRunOrder() {
if (Number.isNaN(FTR_CONFIGS_RETRY_COUNT)) {
throw new Error(`invalid FTR_CONFIGS_RETRY_COUNT: ${process.env.FTR_CONFIGS_RETRY_COUNT}`);
}
const JEST_CONFIGS_RETRY_COUNT = process.env.JEST_CONFIGS_RETRY_COUNT
? parseInt(process.env.JEST_CONFIGS_RETRY_COUNT, 10)
: 1;
if (Number.isNaN(JEST_CONFIGS_RETRY_COUNT)) {
throw new Error(`invalid JEST_CONFIGS_RETRY_COUNT: ${process.env.JEST_CONFIGS_RETRY_COUNT}`);
}
const FTR_CONFIGS_DEPS =
process.env.FTR_CONFIGS_DEPS !== undefined
@ -417,10 +423,10 @@ export async function pickTestGroupRunOrder() {
},
retry: {
automatic: [
{
exit_status: '-1',
limit: 3,
},
{ exit_status: '-1', limit: 3 },
...(JEST_CONFIGS_RETRY_COUNT > 0
? [{ exit_status: '*', limit: JEST_CONFIGS_RETRY_COUNT }]
: []),
],
},
}
@ -437,10 +443,10 @@ export async function pickTestGroupRunOrder() {
},
retry: {
automatic: [
{
exit_status: '-1',
limit: 3,
},
{ exit_status: '-1', limit: 3 },
...(JEST_CONFIGS_RETRY_COUNT > 0
? [{ exit_status: '*', limit: JEST_CONFIGS_RETRY_COUNT }]
: []),
],
},
}