diff --git a/README.md b/README.md index 6296002..dde6fd5 100644 --- a/README.md +++ b/README.md @@ -59,14 +59,42 @@ npm run lint -w api npm run build ``` -## Versiones y despliegue +## Generar un release -La versión es el `version` del `package.json` raíz (SemVer); cada release lleva un tag `vX.Y.Z`. +La versión es el `version` del `package.json` raíz y sigue SemVer (`MAYOR.MENOR.PARCHE`). Cada +release sube la versión y lleva un tag `vX.Y.Z` en git. -```sh -npm run version:parche # o version:menor / version:mayor -npm run publicar # genera release/devolucion-proveedores/ -``` +1. **Subir la versión** (elegir uno; no crea commit ni tag): -La aplicación se instala en Windows como un único servicio (NSSM) con HTTPS directo en Node. -Guía completa: [`deploy/windows/DEPLOY.md`](deploy/windows/DEPLOY.md). + ```sh + npm run version:parche # 2.0.1 → 2.0.2 correcciones + npm run version:menor # 2.0.1 → 2.1.0 funciones nuevas compatibles + npm run version:mayor # 2.0.1 → 3.0.0 cambios incompatibles + ``` + +2. **Commit y tag**: + + ```sh + git add -A + git commit -m "Versión X.Y.Z" + git tag -a vX.Y.Z -m "Versión X.Y.Z" + git push origin main --tags + ``` + +3. **Armar la carpeta de despliegue** (después del commit, para que el release lleve el commit + correcto): + + ```sh + npm run publicar # compila shared + api + web y arma la carpeta + npm run publicar -- --sin-build # reutiliza los builds ya hechos (más rápido) + ``` + + El resultado queda en `release/devolucion-proveedores/` (ignorada por git): la API compilada, + la web compilada, solo las dependencias de producción y los scripts de instalación. Incluye + `app/version.json` con el número, la fecha y el commit (si hay cambios sin commit, el commit + aparece con `-modificado`). La versión se muestra en el login y en la barra superior. + +4. **Instalar o actualizar en el servidor**: copiar esa carpeta al servidor Windows. Se instala + como un único servicio (NSSM) con HTTPS directo en Node. Instalación nueva: secciones 1 a 8 de + [`deploy/windows/DEPLOY.md`](deploy/windows/DEPLOY.md); actualizar una instalación existente + sin tocar el `.env`: sección 11.