57 lines
2.0 KiB
Markdown
57 lines
2.0 KiB
Markdown
# Deploy Web
|
|
|
|
## Versión actual
|
|
|
|
- Base actual: `1.0.1`
|
|
- Fuente de verdad: [VERSION](/home/mgonzalez/desarrollo/react/linkedsign/VERSION)
|
|
- Historial de cambios: [CHANGELOG.md](/home/mgonzalez/desarrollo/react/linkedsign/CHANGELOG.md)
|
|
|
|
## Pasos
|
|
|
|
1. Haz los cambios en `dev`.
|
|
2. Si corresponde, sube versión:
|
|
- `./scripts/set-version.sh X.Y.Z`
|
|
- actualiza `CHANGELOG.md`
|
|
3. Prueba local:
|
|
- `cd frontend && npm run build`
|
|
- `cd ../backend && node -e "require('./src/app')"`
|
|
4. Guarda cambios en git:
|
|
- `git add .`
|
|
- `git commit -m "mensaje"`
|
|
5. Sube a Gitea:
|
|
- `git push origin main`
|
|
6. En el servidor app entra por SSH:
|
|
- `ssh deploy@192.168.222.3 -p 2203`
|
|
7. Actualiza código:
|
|
- `cd /opt/apps/linkedsign/source`
|
|
- `git fetch origin main`
|
|
- `git reset --hard origin/main`
|
|
- `rm -rf /opt/apps/linkedsign/source/android /opt/apps/linkedsign/source/android_react /opt/apps/linkedsign/source/android_firma_electronica.html`
|
|
8. Recompila frontend:
|
|
- `cd /opt/apps/linkedsign/source/frontend`
|
|
- `npm ci`
|
|
- `npm run build`
|
|
9. Publica frontend:
|
|
- `rm -rf /opt/apps/linkedsign/frontend/*`
|
|
- `cp -r dist /opt/apps/linkedsign/frontend/`
|
|
- `cp server.js /opt/apps/linkedsign/frontend/`
|
|
10. Publica backend:
|
|
- `rm -rf /opt/apps/linkedsign/backend/*`
|
|
- `cp -r /opt/apps/linkedsign/source/backend/* /opt/apps/linkedsign/backend/`
|
|
- `cd /opt/apps/linkedsign/backend`
|
|
- `npm ci --omit=dev`
|
|
11. Reinicia servicios:
|
|
- `sudo systemctl restart linkedsign-frontend`
|
|
- `sudo systemctl restart linkedsign-backend`
|
|
12. Limpia archivos `.md` en producción:
|
|
- `find /opt/apps/linkedsign -type f -iname '*.md' -delete`
|
|
13. Verifica:
|
|
- `curl -I http://127.0.0.1:3000`
|
|
- `curl http://127.0.0.1:4000/health`
|
|
|
|
## Notas
|
|
|
|
- Si cambias variables de entorno, actualiza `/opt/apps/linkedsign/backend/.env`.
|
|
- Si cambias rutas del APK o storage, revisa también `PRODUCCION.md`.
|
|
- En producción no debe quedar código fuente Android; solo el APK release en `/opt/apps/linkedsign/android/apk/`.
|