Skip to content

The registry viewer build fails if a devfile doesn't have any starter projects #579

@johnmcollier

Description

@johnmcollier

/kind bug

Which area this bug is related to?

/area registry

Bug Summary

Describe the bug:
Trying to generate pages for the devfile registry viewer fails if the viewer is pointing to devfiles that don't have any starter projects:

Error occurred prerendering page "/devfiles/Example1+java-maven". Read more: https://nextjs.org/docs/messages/prerender-error
TypeError: Cannot read property '0' of undefined
    at DevPageProjects (/Users/johncollier/registry-viewer/.next/server/pages/devfiles/[id].js:1475:118)
    at d (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:33:498)
    at bb (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:36:16)
    at a.b.render (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:42:43)
    at a.b.read (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:41:83)
    at exports.renderToString (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:52:138)
    at Object.renderPage (/Users/johncollier/registry-viewer/node_modules/next/dist/next-server/server/render.js:53:854)
    at Function.getInitialProps (/Users/johncollier/registry-viewer/.next/server/chunks/859.js:538:19)
    at loadGetInitialProps (/Users/johncollier/registry-viewer/node_modules/next/dist/next-server/lib/utils.js:5:101)
    at renderToHTML (/Users/johncollier/registry-viewer/node_modules/next/dist/next-server/server/render.js:53:1145)

To Reproduce:

  1. Git clone the registry-viewer repository
  2. Git clone https://github.com/johnmcollier/registry-nostarter under the registry-viewer folder
  3. Modify config/devfile-registry-hosts.json and add the following:
{
  "Example1": {
    "stacks": "/registry-nostarter/stacks"
  }
}
  1. Run yarn install
  2. Run DEVFILE_COMMUNITY_HOST=false yarn build. The following error should show up:
Error occurred prerendering page "/devfiles/Example1+java-maven". Read more: https://nextjs.org/docs/messages/prerender-error
TypeError: Cannot read property '0' of undefined
    at DevPageProjects (/Users/johncollier/registry-viewer/.next/server/pages/devfiles/[id].js:1475:118)
    at d (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:33:498)
    at bb (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:36:16)
    at a.b.render (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:42:43)
    at a.b.read (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:41:83)
    at exports.renderToString (/Users/johncollier/registry-viewer/node_modules/react-dom/cjs/react-dom-server.node.production.min.js:52:138)
    at Object.renderPage (/Users/johncollier/registry-viewer/node_modules/next/dist/next-server/server/render.js:53:854)
    at Function.getInitialProps (/Users/johncollier/registry-viewer/.next/server/chunks/859.js:538:19)
    at loadGetInitialProps (/Users/johncollier/registry-viewer/node_modules/next/dist/next-server/lib/utils.js:5:101)
    at renderToHTML (/Users/johncollier/registry-viewer/node_modules/next/dist/next-server/server/render.js:53:1145)

Expected behavior

The registry viewer build / page generation should support devfiles that don't have any starter projects

Metadata

Metadata

Assignees

Labels

area/registryDevfile registry for stacks and infrastructurekind/bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions