Sistema de Staging de Znuny – Migración y entorno de pruebas seguro
Sistema de Staging de Znuny – Migración y entorno de pruebas seguro
Sección titulada «Sistema de Staging de Znuny – Migración y entorno de pruebas seguro»Un sistema de Staging es el entorno perfecto para probar cambios en el sistema de tickets de forma segura en Znuny. Se trata de una copia exacta del sistema de producción en la que se migran, prueban y validan funciones, configuraciones y datos, sin afectar al sistema en vivo.
🗾 Compatibilidad: Los pasos descritos en este artículo se aplican a Znuny 6.x+. Los archivos de configuración son consistentes y se marcarán según sea necesario.
🔄 Resumen: Flujo de migración del sistema de Staging
Sección titulada «🔄 Resumen: Flujo de migración del sistema de Staging»- Preparar el sistema de desarrollo
- Configurar el sistema de Staging
- Copiar los datos de producción
- Probar el Staging
- Desplegar el Staging a producción (opcional)
✅ Ventajas de un sistema de Staging
Sección titulada «✅ Ventajas de un sistema de Staging»- Pruebas seguras de configuración, Custom Code y Packages
- Pruebas de extremo a extremo (End-to-End) automatizadas con, por ejemplo, Playwright
- Pruebas conformes al RGPD tras la anonimización
- Pruebas de restauración y verificación de backups
🛠 Requisitos previos
Sección titulada «🛠 Requisitos previos»- Ubuntu 20.04+ o Debian 10+
- Docker (recomendado) o instalación manual en Linux
- Recursos de sistema suficientes (8 GB RAM, 4 CPUs)
- Acceso a los datos de producción actuales (DB y sistema de archivos)
- Posibilidad de desactivar el envío de correos electrónicos (p. ej., mediante un SMTP ficticio)
`customer_user“
🧱 Guía paso a paso
Sección titulada «🧱 Guía paso a paso»1. Configurar el sistema de Staging
Sección titulada «1. Configurar el sistema de Staging»Se recomienda una instalación con Docker:
SysConfig
2. Limpiar el sistema de desarrollo
Sección titulada «2. Limpiar el sistema de desarrollo»Si utiliza un sistema de desarrollo como base:
SendmailModule
Sección titulada «Si utiliza un sistema de desarrollo como base:
SendmailModule»3. Copiar los datos de producción
Sección titulada «3. Copiar los datos de producción»Kernel::System::Email::DoNotSendEmail
Importar en el Staging:
127.0.0.1
🔐 Protección de datos: Anonimice todos los datos de clientes de producción, por ejemplo, en la tabla
customer_user, o elimine las direcciones de correo electrónico con un script SQL.
4. Ajustar la configuración
Sección titulada «4. Ajustar la configuración»1
5. Impedir el envío de correos electrónicos
Sección titulada «5. Impedir el envío de correos electrónicos»En SysConfig:
- Establecer
SendmailModuleenKernel::System::Email::DoNotSendEmail - Alternativamente: cambiar el servidor SMTP a
127.0.0.1y el puerto a1
🔬 Pruebas en el Staging
Sección titulada «🔬 Pruebas en el Staging»- Utilizar scripts de Playwright o Cypress para pruebas de UI
- Usar
bin/znuny.Console.pl Maint::Test::System - Verificar la integridad de los datos y el comportamiento de la UI
- Desactivar integraciones como LDAP o Webservices, o redirigirlas a un servidor de pruebas
🔐 Asegurar el Staging
Sección titulada «🔐 Asegurar el Staging»- Restringir el acceso mediante VPN o lista blanca de IP
- Configurar
robots.txtpara evitar la indexación - Si es necesario, implementar Basic-Auth mediante Nginx
- Asegurar SSL mediante certificado SAN o Wildcard (
*.staging.example.com)
🔄 Opcional: Desplegar el Staging a producción
Sección titulada «🔄 Opcional: Desplegar el Staging a producción»Una vez realizadas todas las pruebas en el Staging:
- Detener el servidor de producción
- Copiar la base de datos y los directorios del Staging al servidor de producción
- Ajustar
Config.pm - Reiniciar la producción
🧪 Herramientas ejemplares para la automatización
Sección titulada «🧪 Herramientas ejemplares para la automatización»Playwright(para pruebas E2E)rsyncpara una transferencia de datos rápidadocker-composepara un entorno orquestadocronosystemdpara backups regulares- Scripts de Python para anonimización o migración de estructuras
Conclusión
Sección titulada «Conclusión»Un sistema de Staging de Znuny ofrece la máxima seguridad al introducir cambios. Mediante una migración estructurada, datos de prueba anonimizados y pruebas automatizadas, evitará interrupciones y garantizará despliegues estables.
🔁 Consejo: Integre los procesos de Staging en su pipeline de CI/CD para una garantía de calidad automatizada con cada cambio.