From 66e7236e2ecb515ab3a8859d9c7ba3d91ff4c076 Mon Sep 17 00:00:00 2001 From: Samuel Macleod Date: Mon, 11 Sep 2023 16:50:30 +0100 Subject: [PATCH] Fix #1197 --- packages/wrangler/src/deploy/deploy.ts | 7 +++++-- packages/wrangler/src/index.ts | 4 ++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/wrangler/src/deploy/deploy.ts b/packages/wrangler/src/deploy/deploy.ts index 724ca2fc8c7d..aabe14da3d61 100644 --- a/packages/wrangler/src/deploy/deploy.ts +++ b/packages/wrangler/src/deploy/deploy.ts @@ -294,7 +294,10 @@ export default async function deploy(props: Props): Promise { } catch (e) { // code: 10090, message: workers.api.error.service_not_found // is thrown from the above fetchResult on the first deploy of a Worker - if ((e as { code?: number }).code !== 10090) { + if ( + (e as { code?: number }).code !== 10090 && + (e as { code?: number }).code !== 10000 + ) { logger.error(e); } } @@ -1001,7 +1004,7 @@ async function publishRoutesFallback( return deployedRoutes; } -function isAuthenticationError(e: unknown): e is ParseError { +export function isAuthenticationError(e: unknown): e is ParseError { return e instanceof ParseError && (e as { code?: number }).code === 10000; } diff --git a/packages/wrangler/src/index.ts b/packages/wrangler/src/index.ts index 5e3e09079a0a..5aaf38fb0b70 100644 --- a/packages/wrangler/src/index.ts +++ b/packages/wrangler/src/index.ts @@ -10,6 +10,7 @@ import { constellation } from "./constellation"; import { d1 } from "./d1"; import { deleteHandler, deleteOptions } from "./delete"; import { deployOptions, deployHandler } from "./deploy"; +import { isAuthenticationError } from "./deploy/deploy"; import { isBuildFailure } from "./deployment-bundle/bundle"; import { deployments, @@ -721,6 +722,9 @@ export async function main(argv: string[]): Promise { // The workaround is to re-run the parsing with an additional `--help` flag, which will result in the correct help message being displayed. // The `wrangler` object is "frozen"; we cannot reuse that with different args, so we must create a new CLI parser to generate the help message. await createCLIParser([...argv, "--help"]).parse(); + } else if (isAuthenticationError(e)) { + logger.log(formatMessage(e)); + await whoami(); } else if (e instanceof ParseError) { e.notes.push({ text: "\nIf you think this is a bug, please open an issue at: https://github.com/cloudflare/workers-sdk/issues/new/choose",