content icon indicating copy to clipboard operation
content copied to clipboard

`queryCollection is not defined` in Github Actions

Open wvovaw opened this issue 2 months ago • 1 comments

Environment

  • Operating System: Linux
  • Node Version: v24.4.0
  • Nuxt Version: 4.2.0
  • CLI Version: 3.29.3
  • Nitro Version: 2.12.8
  • Package Manager: [email protected]
  • Builder: -
  • User Config: app, compatibilityDate, devtools, modules
  • Runtime Modules: @nuxt/[email protected]
  • Build Modules: -

Version

V3

Reproduction

https://github.com/wvovaw/nuxt-content-gh-actions-reprod

Description

There's an error when I try to generate a static build using Github Actions: Error: [unhandledRejection] queryCollection is not defined

It is in the prerendering stage

Additional context

I've been upgrading my static site from Nuxt v3 to v4 and @nuxt/content v2 to v3. I also moved to bun from node+pnpm. I tried using node.js in action and had the same error. It was ok with queryContent before, prerendering worked and CI deployment worked well.

Logs

Run bun run generate
$ nuxt generate
[log] [nuxi] Nuxt 4.2.0 (with Nitro 2.12.8, Vite 7.1.12 and Vue 3.5.22)
[info] [nuxi] Building for Nitro preset: `static`
[info] Building client...
[info] vite v7.1.12 building for production...
[info] transforming...
[info] ✓ 134 modules transformed.
[info] rendering chunks...
[info] computing gzip size...
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/manifest.json                   1.52 kB │ gzip:  0.37 kB
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/_nuxt/entry.Ki_6-c8y.css        0.04 kB │ gzip:  0.05 kB
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/_nuxt/error-500.DLkAwcfL.css    1.91 kB │ gzip:  0.73 kB
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/_nuxt/error-404.BLrjNXsr.css    2.43 kB │ gzip:  0.86 kB
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/_nuxt/B7u0fUz_.js               0.33 kB │ gzip:  0.25 kB
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/_nuxt/D4z1Ub35.js               3.50 kB │ gzip:  1.57 kB
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/_nuxt/6LBg7BfG.js               7.18 kB │ gzip:  2.80 kB
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/_nuxt/BTdoMPcQ.js               8.88 kB │ gzip:  3.57 kB
[info] ../node_modules/.cache/nuxt/.nuxt/dist/client/_nuxt/D_RNh6XI.js             162.97 kB │ gzip: 62.11 kB
[info] ✓ built in 1.90s
[success] Client built in 1930ms
[info] Building server...
[info] vite v7.1.12 building SSR bundle for production...
[info] transforming...
[info] ✓ 66 modules transformed.
[info] rendering chunks...
[info] ✓ built in 569ms
[success] Server built in 579ms
[info] [nitro] Initializing prerenderer
[info] [nitro] Prerendering 3 initial routes with crawler
Error:  [unhandledRejection] queryCollection is not defined
  at node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/index-B2-hbplV.mjs:361:94
  at node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/index-B2-hbplV.mjs:200:80
  at fn (node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:222:20)
  at Object.callAsync (node_modules/unctx/dist/index.mjs:68:55)
  at node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:225:56
  at Object.runWithContext (node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js:3067:18)
  at callWithNuxt (node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:225:24)
  at node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:74:41
  at EffectScope.run (node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js:81:16)
  at Object.runWithContext (node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:74:31)
Error:  [unhandledRejection] queryCollection is not defined
  at node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/index-B2-hbplV.mjs:361:94
  at node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/index-B2-hbplV.mjs:200:80
  at fn (node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:222:20)
  at Object.callAsync (node_modules/unctx/dist/index.mjs:68:55)
  at node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:225:56
  at Object.runWithContext (node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js:3067:18)
  at callWithNuxt (node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:225:24)
  at node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:74:41
  at EffectScope.run (node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js:81:16)
  at Object.runWithContext (node_modules/.cache/nuxt/.nuxt/prerender/chunks/build/server.mjs:74:31)
[log] [nitro]   ├─ /200.html (40ms)
[log] [nitro]   ├─ /404.html (41ms)
[log] [nitro]   ├─ / (48ms)
[log] [nitro]   ├─ /_payload.json?43a422e9-e6e3-438c-97df-efbfce836f70 (2ms) (skipped)
[log] [nitro]   ├─ /_payload.json (3ms)
[info] [nitro] Prerendered 4 routes in 0.883 seconds
[success] [nitro] Generated public .output/public
[success] [nitro] You can preview this build using `npx serve .output/public`
[success] [nuxi] You can now deploy `.output/public` to any static hosting!

wvovaw avatar Oct 27 '25 18:10 wvovaw

The type: 'site-config' option in your content.config.ts file might not be a valid option, as the type can only either be "data" or "page" according to the docs. Maybe changing that to a valid value fixes it?

antalasztrik avatar Oct 31 '25 14:10 antalasztrik