firebase / firebase-tools

The Firebase Command Line Tools
MIT License
3.97k stars 916 forks source link

Next.js SSR: "Couldn't find any 'pages' or 'app' directory. Please create one under the project root" #7128

Open nilsreichardt opened 1 month ago

nilsreichardt commented 1 month ago

[REQUIRED] Environment info

firebase-tools: 13.8.0

Platform: macOS

[REQUIRED] Test case

Our docs using Nextra: https://github.com/SharezoneApp/sharezone-app/tree/main/docs

[REQUIRED] Steps to reproduce

  1. Clone our Nextra docs: https://github.com/SharezoneApp/sharezone-app/tree/main/docs
  2. Enable web frameworks
  3. Update firebase.json and .firebaserc to use your own Firebase project
  4. Run firebase deploy

[REQUIRED] Expected behavior

No errors in the console.

[REQUIRED] Actual behavior

We are getting a lot of error in our console for our ssrsharezonedocsprod cloud function:

image


Error: > Couldn't find any `pages` or `app` directory. Please create one under the project root
    at findPagesDir (/workspace/node_modules/next/dist/lib/find-pages-dir.js:42:15)
    at findPagesDirectory (/workspace/node_modules/nextra/dist/index.js:169:15)
    at Object.<anonymous> (/workspace/node_modules/nextra/dist/index.js:173:53)
    at Module._compile (node:internal/modules/cjs/loader:1364:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1422:10)
    at Module.load (node:internal/modules/cjs/loader:1203:32)
    at Module._load (node:internal/modules/cjs/loader:1019:12)
    at Module.require (node:internal/modules/cjs/loader:1231:19)
    at mod.require (/workspace/node_modules/next/dist/server/require-hook.js:65:28)
    at require (node:internal/modules/helpers:177:18)

The source folder of deployed cloud function (downloaded via GCP console):

image

Local functions folder in .firebase:

image

aalej commented 1 month ago

Hey @nilsreichardt, thanks for the detailed report. Sorry to hear you encounter this issue. I’m currently unable to reproduce this. I tried following the steps provided, but no errors were raised during deployment or when visiting the site.

image

I also tried visiting the other pages on the deployed site but no errors were raised as well. Does the error message occur when visiting a specific page?

Could you try deploying using firebase-tools 13.8.1? Also, regarding the screenshot of the function-source you downloaded, could you try running ls -a to see if there are also other files downloaded? I’m guessing there may be some hidden files which are not being shown when using finder.

nilsreichardt commented 1 month ago

Sorry, that I wasn't clear about the issue. The deployment is fine. It's running in production at https://docs.sharezone.net. However, our Google Cloud logs are spammed by the SSR cloud function (see screenshot). My goal is to get rid of the error logs in the cloud function.

Here the screenshot with the hidden files:

image image