README: cómo generar un release

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
dot.gcalleandClaude Opus 5.5 committed 2026-10-20 16:29:40 -03:00
1 parent 7efdcce113
commit 29dcc8ccef
1 file changed
+36 -8
+36 -8
View File
@@ -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.