konveyor / tackle2-ui

Tackle (2nd generation) UI component.
Apache License 2.0
8 stars 43 forks source link

:ghost: force npm9 during image build #1781

Closed sjd78 closed 8 months ago

sjd78 commented 8 months ago

Ever since the build container we use [1][2] updated to use npm@10, the image builder github action has encountered a number of problems. The first was solved with #1746. The second more random problem has been with network connections erroring out when installing dependencies.

To work around the network and nofiles errors:

  1. enforce the use of npm@9
  2. pin the Dockerfile base images to specific version tags builder at :1-88, and runtime at :1-93

Additional solutions:

[1] registry.access.redhat.com/ubi9/nodejs-18:latest [2] https://catalog.redhat.com/software/containers/ubi9/nodejs-18/62e8e7ed22d1d3c2dfe2ca01

ibolton336 commented 8 months ago

Looks like this is causing NPM install to fail locally. Error fixed by moving back to "npm": "^9.5.0" in package.json

Error:

➜  tackle2-ui git:(main) npm i
npm ERR! code EBADENGINE
npm ERR! engine Unsupported engine
npm ERR! engine Not compatible with your version of node/npm: @konveyor-ui/root@2.1.0
npm ERR! notsup Not compatible with your version of node/npm: @konveyor-ui/root@2.1.0
npm ERR! notsup Required: {"node":">=18.14.2","npm":"^9.5.0"}
npm ERR! notsup Actual:   {"npm":"10.2.0","node":"v21.1.0"}

npm ERR! A complete log of this run can be found in: /Users/ibolton/.npm/_logs/2024-03-25T13_35_37_824Z-debug-0.log
➜  tackle2-ui git:(main)
ibolton336 commented 8 months ago

This was due to my local npm version falling outside the supported version range in package.json. Fixed with: npm install -g npm@9.5.0