fix: version 2.6.1 -- auto-update no reiniciaba el backend en exilaser

El sudoers NOPASSWD autoriza "systemctl restart <servicio>" por
separado para backend y frontend, pero el script los reiniciaba en
un solo comando combinado -- eso no matchea ninguna de las dos
reglas, sudo pide contraseña, falla sin terminal, y el backend queda
corriendo codigo viejo indefinidamente sin que nada lo avise (el
frontend si se ve actualizado porque sirve archivos de disco sin
reiniciar proceso). Se separa en dos llamadas a sudo.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Milton Gonzalez
2026-09-30 08:15:11 -05:00
parent 82308faeb1
commit f607455668
5 changed files with 21 additions and 4 deletions
+11
View File
@@ -1,5 +1,16 @@
# Changelog - project.linkedcorp.net # Changelog - project.linkedcorp.net
## [2.6.1] - 2026-09-30
### Fixed
- **Bug real en el botón "Actualizar" (auto-actualización)**: el paso final reiniciaba backend y
frontend con un solo comando (`systemctl restart back front`), pero el permiso sudo sin
contraseña solo está autorizado para cada servicio por separado — el reinicio fallaba en
silencio (sin romper el resto del proceso) y el backend se quedaba con el código viejo
indefinidamente, aunque el panel ya mostrara "actualizado". El frontend sí se veía al día
porque no necesita reiniciar el proceso para servir archivos nuevos — por eso el síntoma era
confuso (la UI nueva se veía, pero funciones nuevas del backend faltaban). Se separa en dos
comandos `sudo systemctl restart` — uno por servicio.
## [2.6.0] - 2026-09-30 ## [2.6.0] - 2026-09-30
### Changed ### Changed
- Listado de Proyectos: el porcentaje de avance ahora va **dentro** de la barra de progreso - Listado de Proyectos: el porcentaje de avance ahora va **dentro** de la barra de progreso
+1 -1
View File
@@ -1 +1 @@
2.6.0 2.6.1
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "project-linkedcorp-backend", "name": "project-linkedcorp-backend",
"version": "2.6.0", "version": "2.6.1",
"private": true, "private": true,
"type": "module", "type": "module",
"main": "src/server.js", "main": "src/server.js",
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"name": "project-linkedcorp-frontend", "name": "project-linkedcorp-frontend",
"private": true, "private": true,
"version": "2.6.0", "version": "2.6.1",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
+7 -1
View File
@@ -57,6 +57,12 @@ rm -rf "$APP_DIR/frontend/dist"
cp -r dist "$APP_DIR/frontend/dist" cp -r dist "$APP_DIR/frontend/dist"
echo "-- reiniciando servicios --" echo "-- reiniciando servicios --"
sudo systemctl restart "$BACKEND_SERVICE" "$FRONTEND_SERVICE" # Dos llamadas separadas a proposito: el sudoers NOPASSWD (ver DEPLOY_WEB.md) whitelistea cada
# "systemctl restart <servicio>" por separado -- un solo "systemctl restart back front" junto no
# matchea ninguna de las dos reglas, sudo pide contraseña, falla en este contexto sin terminal, y
# el restart nunca pasa (el resto del update ya corrio bien, pero los servicios quedan con el
# codigo viejo sin que nada avise del error). Bug real encontrado el 2026-09-30.
sudo systemctl restart "$BACKEND_SERVICE"
sudo systemctl restart "$FRONTEND_SERVICE"
echo "=== update done $(date -Iseconds) -- v$NEW_VERSION ===" echo "=== update done $(date -Iseconds) -- v$NEW_VERSION ==="