NodeBB - Update auf v1.18.4
-
Heute auf die neue Version aktualisiert, so wie immer
git fetch git reset --hard origin/v1.18.x ./nodebb upgrade ./nodebb start
Bei
./nodebb upgrade
kommt dieser Fehler
nodebb@webserver:~/nodebb$ ./nodebb upgrade Updating NodeBB... 1. Updating package.json file with defaults... OK 2. Bringing base dependencies up to date... started npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.2 (node_modules/chokidar/node_modules/fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"}) npm WARN textcomplete.contenteditable@0.1.1 requires a peer of textcomplete@^0.14.2 but none is installed. You must install peer dependencies yourself. npm ERR! code EEXIST npm ERR! path /user/nodebb/node_modules/.bin/nanoid npm ERR! Refusing to delete /user/nodebb/node_modules/.bin/nanoid: is outside /user/nodebb/node_modules/nanoid and not a link npm ERR! File exists: /user/nodebb/node_modules/.bin/nanoid npm ERR! Remove the existing file and try again, or run npm npm ERR! with --force to overwrite files recklessly. npm ERR! A complete log of this run can be found in: npm ERR! /user/.npm/_logs/2021-10-09T15_39_29_779Z-debug.log Error installing dependencies! message: Command failed: npm install --production stdout: null stderr: null Error occurred during upgrade: Error: Command failed: npm install --production at checkExecSyncError (child_process.js:790:11) at Object.execSync (child_process.js:863:15) at Object.installAll (/user/nodebb/src/cli/package-install.js:73:9) at Object.handler (/user/nodebb/src/cli/upgrade.js:21:19) at runSteps (/user/nodebb/src/cli/upgrade.js:54:16) at processTicksAndRejections (internal/process/task_queues.js:95:5) at async Object.runUpgrade [as upgrade] (/user/nodebb/src/cli/upgrade.js:84:3) (node:36405) UnhandledPromiseRejectionWarning: Error: Command failed: npm install --production at checkExecSyncError (child_process.js:790:11) at Object.execSync (child_process.js:863:15) at Object.installAll (/user/nodebb/src/cli/package-install.js:73:9) at Object.handler (/user/nodebb/src/cli/upgrade.js:21:19) at runSteps (/user/nodebb/src/cli/upgrade.js:54:16) at processTicksAndRejections (internal/process/task_queues.js:95:5) at async Object.runUpgrade [as upgrade] (/user/nodebb/src/cli/upgrade.js:84:3) (Use `node --trace-warnings ...` to show where the warning was created) (node:36405) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) (node:36405) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Ok, da bekommt man dann immer feuchte Hände. Ist aber mit Proxmox nicht so schlimm, ich mache vorher immer Snapshots.
Ok, aufmerksam lesen, hilft hier meistens.
npm ERR! File exists: /user/nodebb/node_modules/.bin/nanoid npm ERR! Remove the existing file and try again, or run npm npm ERR! with --force to overwrite files recklessly.
Ich lese, das man zwei Möglichkeiten hat.
- Wir löschen das File von Hand
- Wir nutzen die Option --force
Ich habe die erste Option getestet. Zur Sicherung verschiebe ich das File.
mv /user/nodebb/node_modules/.bin/nanoid /home/user
Danach wieder
./nodebb upgrade
Diesmal funktioniert es einwandfrei.