Commit
679906e5db227bfa0d8a3ca5800418269ab474e8
by infodeploy: pin Node v22.22.3, self-heal the install, realign bootstrap to ISPConfig
The first Jenkins build logged EBADENGINE warnings: several transitive deps
(@babel/*, undici) require Node ^22.18 / >=22.19 while the pin was v22.14.0.
Bumped to v22.22.3 — same NODE_MODULE_VERSION 127, so the better-sqlite3 native
build stays compatible and no rebuild-from-scratch is forced.
deploy.sh now runs `nvm install` rather than `nvm use`, so bumping the pin in git
is sufficient; previously a new version would have failed the deploy outright with
"N/A: version not yet installed". It also ensures pm2 exists for that Node build.
bootstrap-server.sh still carried the pre-ISPConfig layout and, worse, would have
written a standalone nginx vhost with the same server_name as the ISPConfig-generated
one - a collision that ISPConfig would regenerate away. It now creates the real
layout (code in the docroot, secrets and SQLite in the site's private/ dir) and only
REPORTS on the proxy block instead of fighting the panel for ownership.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
(commit: 679906e)