setup-bun/src/utils.ts
2024-04-02 12:16:10 +02:00

14 lines
310 B
TypeScript

export function retry<T>(
fn: () => Promise<T>,
retries: number,
timeout = 5000
): Promise<T> {
return fn().catch((err) => {
if (retries <= 0) {
throw err;
}
return new Promise((resolve) => setTimeout(resolve, timeout)).then(() =>
retry(fn, retries - 1, timeout)
);
});
}