Deploy SSH - SGRRHH
Script Principal
Ubicación: SGRRHH.Local/scripts/Deploy-ToServer.ps1
Configuración del Servidor
| Propiedad | Valor |
|---|---|
| Host | 192.168.1.248 |
| Usuario SSH | equipo1 |
| Ruta Remota | C:\SGRRHH |
| Share SMB | \\192.168.1.248\SGRRHH |
| Servicio | SGRRHH_Local |
Archivos PROTEGIDOS
[!CAUTION] Estos archivos/carpetas NUNCA se sobrescriben ni eliminan:
| Ruta | Contenido |
|---|---|
Data/ | Base de datos SQLite (sgrrhh.db) |
certs/ | Certificados SSL (localhost+2.p12) |
logs/ | Logs de la aplicación |
backups/ | Backups locales |
appsettings.json | Configuración local del servidor |
appsettings.Development.json | Configuración desarrollo |
Comandos de Deploy
Deploy Incremental (Recomendado)
powershell
cd c:\Users\evert\Documents\rrhh\SGRRHH.Local .\scripts\Deploy-ToServer.ps1
- •Compila en modo Release
- •Sincroniza solo archivos modificados
- •Reinicia el servicio automáticamente
Deploy sin Recompilar
powershell
.\scripts\Deploy-ToServer.ps1 -SkipBuild
Usa el build existente en publish-ssh/
Deploy Completo (Full Sync)
powershell
.\scripts\Deploy-ToServer.ps1 -FullSync
[!WARNING] Full Sync puede eliminar archivos extras en el servidor. Usar con precaución.
Deploy con Base de Datos
powershell
.\scripts\Deploy-ToServer.ps1 -IncludeDatabase
Copia la BD local al servidor (sobrescribe la del servidor)
Otros Scripts Disponibles
| Script | Función |
|---|---|
Deploy-Production.ps1 | Deploy local (sin SSH) |
Backup-Database.ps1 | Backup de la BD |
Restore-Backup.ps1 | Restaurar backup |
AutoUpdate-Service.ps1 | Actualización automática |
Verificación Post-Deploy
Verificar conectividad SSH
powershell
ssh equipo1@192.168.1.248 "echo OK"
Verificar estado del servicio
powershell
ssh equipo1@192.168.1.248 "sc query SGRRHH_Local"
Ver logs recientes
powershell
ssh equipo1@192.168.1.248 "type C:\SGRRHH\logs\*.log"
Reiniciar servicio manualmente
powershell
ssh equipo1@192.168.1.248 "net stop SGRRHH_Local && net start SGRRHH_Local"
Servicio Windows (NSSM)
- •Nombre:
SGRRHH_Local - •Gestionado con:
nssm - •Logs:
C:\SGRRHH\logscon rotación (1 MB / 24h) - •Ejecutable:
C:\SGRRHH\SGRRHH.Local.Server.exe
Accesos Directos en Servidor
| Acceso | Función |
|---|---|
SGRRHH - Consola | Ejecución con ventana y logs en vivo |
SGRRHH - Ver Logs | Tail del log actual |
Certificado SSL
Ruta: C:\SGRRHH\certs\localhost+2.p12
Si falta el certificado, copiar antes de iniciar:
powershell
scp certs/localhost+2.p12 equipo1@192.168.1.248:C:/SGRRHH/certs/
Flujo de Deploy Completo
code
1. Compilar localmente (Release, self-contained, win-x64) 2. Detener servicio en servidor 3. Sincronizar archivos vía Robocopy/SMB 4. Preservar Data/, certs/, logs/ 5. Iniciar servicio 6. Verificar salud de la aplicación
Troubleshooting
Error de esquema (columnas faltantes)
La DB no se migra automáticamente:
- •Respaldar la DB actual
- •Eliminar archivos
.waly.shm - •Copiar la DB válida
Error de conexión SMB
powershell
net use \\192.168.1.248\SGRRHH /user:equipo1