refactor: peanut entrypoint (#10902)

* refactor: peanut entrypoint

* refactor: peanut: entrypoint fix

* Apply suggestion from @tremor021

* Apply suggestion from @tremor021

---------

Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
This commit is contained in:
Tobias
2026-01-18 15:18:51 +01:00
committed by GitHub
parent c03e532dde
commit 9dc1e606ec
2 changed files with 13 additions and 3 deletions

View File

@@ -28,7 +28,7 @@ function update_script() {
exit
fi
NODE_VERSION="22" NODE_MODULE="pnpm" setup_nodejs
NODE_VERSION="24" NODE_MODULE="pnpm" setup_nodejs
if check_for_gh_release "peanut" "Brandawg93/PeaNUT"; then
msg_info "Stopping Service"
@@ -37,6 +37,15 @@ function update_script() {
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "peanut" "Brandawg93/PeaNUT" "tarball" "latest" "/opt/peanut"
if ! grep -q '/opt/peanut/entrypoint.mjs' /etc/systemd/system/peanut.service; then
msg_info "Fixing entrypoint"
cd /opt/peanut
ln -sf .next/standalone/server.js server.js
sed -i 's|/opt/peanut/.next/standalone/server.js|/opt/peanut/entrypoint.mjs|' /etc/systemd/system/peanut.service
systemctl daemon-reload
msg_ok "Fixed entrypoint"
fi
msg_info "Updating Peanut"
cd /opt/peanut
$STD pnpm i

View File

@@ -18,7 +18,7 @@ msg_info "Installing NUT"
$STD apt install -y nut-client
msg_ok "Installed NUT"
NODE_VERSION="22" NODE_MODULE="pnpm" setup_nodejs
NODE_VERSION="24" NODE_MODULE="pnpm" setup_nodejs
fetch_and_deploy_gh_release "peanut" "Brandawg93/PeaNUT" "tarball" "latest" "/opt/peanut"
msg_info "Setup Peanut"
@@ -28,6 +28,7 @@ $STD pnpm run build:local
cp -r .next/static .next/standalone/.next/
mkdir -p /opt/peanut/.next/standalone/config
mkdir -p /etc/peanut/
ln -sf .next/standalone/server.js server.js
cat <<EOF >/etc/peanut/settings.yml
WEB_HOST: 0.0.0.0
WEB_PORT: 3000
@@ -53,7 +54,7 @@ Environment="NODE_ENV=production"
#Environment="WEB_HOST=0.0.0.0"
#Environment="WEB_PORT=3000"
WorkingDirectory=/opt/peanut
ExecStart=node /opt/peanut/.next/standalone/server.js
ExecStart=node /opt/peanut/entrypoint.mjs
TimeoutStopSec=30
[Install]
WantedBy=multi-user.target