From 281ea9fc344dec4348e398696e671f833334045b Mon Sep 17 00:00:00 2001 From: Nate Moore Date: Thu, 8 Dec 2022 15:54:19 -0500 Subject: [PATCH] Node: better serverEntrypoint error (#5560) * fix(node): better entrypoint error * fix(node): surface start errors during preview Co-authored-by: Nate Moore --- .changeset/nice-pens-lie.md | 5 +++++ packages/integrations/node/src/preview.ts | 12 ++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) create mode 100644 .changeset/nice-pens-lie.md diff --git a/.changeset/nice-pens-lie.md b/.changeset/nice-pens-lie.md new file mode 100644 index 000000000000..b5297dfbaa84 --- /dev/null +++ b/.changeset/nice-pens-lie.md @@ -0,0 +1,5 @@ +--- +'@astrojs/node': patch +--- + +Improve error message when serverEntrypoint does not exist diff --git a/packages/integrations/node/src/preview.ts b/packages/integrations/node/src/preview.ts index b35d3020499f..39b1f9f2e286 100644 --- a/packages/integrations/node/src/preview.ts +++ b/packages/integrations/node/src/preview.ts @@ -24,10 +24,14 @@ const preview: CreatePreviewServer = async function ({ `The server entrypoint doesn't have a handler. Are you sure this is the right file?` ); } - } catch (_err) { - throw new Error( - `The server entrypoint ${fileURLToPath} does not exist. Have you ran a build yet?` - ); + } catch (err) { + if ((err as any).code === 'ERR_MODULE_NOT_FOUND') { + throw new Error( + `The server entrypoint ${fileURLToPath(serverEntrypoint)} does not exist. Have you ran a build yet?` + ); + } else { + throw err; + } } const handler: http.RequestListener = (req, res) => {