retry token exchange on HTTP errors (not just network errors)
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
committed by
pullfrog[bot]
parent
ac561bd4c8
commit
5e76fd86df
@@ -139610,7 +139610,10 @@ async function acquireTokenViaGitHubApp(opts) {
|
|||||||
}
|
}
|
||||||
async function acquireNewToken(opts) {
|
async function acquireNewToken(opts) {
|
||||||
if (isOIDCAvailable()) {
|
if (isOIDCAvailable()) {
|
||||||
return await retry(() => acquireTokenViaOIDC(opts), { label: "token exchange" });
|
return await retry(() => acquireTokenViaOIDC(opts), {
|
||||||
|
label: "token exchange",
|
||||||
|
shouldRetry: (error49) => error49 instanceof Error && (error49.name === "AbortError" || error49.message.includes("fetch failed") || error49.message.includes("ECONNRESET") || error49.message.includes("ETIMEDOUT") || error49.message.includes("Token exchange failed"))
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
return await acquireTokenViaGitHubApp(opts);
|
return await acquireTokenViaGitHubApp(opts);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25874,7 +25874,10 @@ async function acquireTokenViaGitHubApp(opts) {
|
|||||||
}
|
}
|
||||||
async function acquireNewToken(opts) {
|
async function acquireNewToken(opts) {
|
||||||
if (isOIDCAvailable()) {
|
if (isOIDCAvailable()) {
|
||||||
return await retry(() => acquireTokenViaOIDC(opts), { label: "token exchange" });
|
return await retry(() => acquireTokenViaOIDC(opts), {
|
||||||
|
label: "token exchange",
|
||||||
|
shouldRetry: (error2) => error2 instanceof Error && (error2.name === "AbortError" || error2.message.includes("fetch failed") || error2.message.includes("ECONNRESET") || error2.message.includes("ETIMEDOUT") || error2.message.includes("Token exchange failed"))
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
return await acquireTokenViaGitHubApp(opts);
|
return await acquireTokenViaGitHubApp(opts);
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-1
@@ -289,7 +289,16 @@ async function acquireTokenViaGitHubApp(opts?: AcquireTokenOptions): Promise<str
|
|||||||
|
|
||||||
export async function acquireNewToken(opts?: AcquireTokenOptions): Promise<string> {
|
export async function acquireNewToken(opts?: AcquireTokenOptions): Promise<string> {
|
||||||
if (isOIDCAvailable()) {
|
if (isOIDCAvailable()) {
|
||||||
return await retry(() => acquireTokenViaOIDC(opts), { label: "token exchange" });
|
return await retry(() => acquireTokenViaOIDC(opts), {
|
||||||
|
label: "token exchange",
|
||||||
|
shouldRetry: (error) =>
|
||||||
|
error instanceof Error &&
|
||||||
|
(error.name === "AbortError" ||
|
||||||
|
error.message.includes("fetch failed") ||
|
||||||
|
error.message.includes("ECONNRESET") ||
|
||||||
|
error.message.includes("ETIMEDOUT") ||
|
||||||
|
error.message.includes("Token exchange failed")),
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
// local development via GitHub App
|
// local development via GitHub App
|
||||||
return await acquireTokenViaGitHubApp(opts);
|
return await acquireTokenViaGitHubApp(opts);
|
||||||
|
|||||||
Reference in New Issue
Block a user