El script de auto-actualizacion heredaba NODE_ENV=production del
backend, lo que hacia que npm saltara devDependencies (vite incluido)
al instalar el frontend -- el build fallaba en silencio y el sistema
quedaba en la version vieja. Se fuerza --include=dev en ese paso.
De paso: logo de la empresa que usa el sistema al doble de tamano,
logo de LinkedCorp (desarrollador) a la mitad.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
POST /api/updater/apply dispara scripts/apply-update.sh (backup +
git pull + migraciones + build + restart) en un proceso separado.
Apagado por defecto: solo se activa si el servidor define
UPDATE_APP_DIR/UPDATE_BACKEND_SERVICE/UPDATE_FRONTEND_SERVICE en su
backend/.env. Sin esa config, el panel se comporta igual que antes.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
scripts/install.sh automatiza el primer despliegue en un servidor Debian/Ubuntu nuevo: verifica
requisitos (Node.js, npm, cliente mysql, systemd, espacio, puertos libres), pregunta dominio,
puertos y base de datos (MariaDB local auto-instalada o un servidor existente), genera
backend/.env con secretos aleatorios, corre migraciones + catalogos, compila el frontend y
crea/arranca los servicios systemd. No crea usuarios: el primer registro publico se vuelve
superadmin solo (bootstrap ya existente).
Probando el instalador de punta a punta contra una base de datos recien creada goo un bug real:
la migracion 006_seed_it_baseline.sql (datos de ejemplo especificos de LinkedCorp) fallaba por
foreign key al no existir todavia catalogos ni usuario. Corregido para que detecte esa situacion
y quede inerte en instalaciones nuevas, sin tocar el comportamiento ya probado en dev/prod.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>