Ir al contenido
Explora el sitio web
Hablemos de tu proyecto

contact@almousa.dev

PRÁCTICAS DE ENTREGA / DEL CÓDIGO A LAS OPERACIONES

Ingeniería y operaciones

Nuestro trabajo incluye la revisión por otra persona y un enfoque de pruebas y compilaciones mediante GitHub Actions. Esta página describe nuestra política de entrega y operaciones. Cada control se implementa y verifica dentro del alcance acordado del proyecto; su inclusión aquí no demuestra que todos los ajustes estén habilitados en todos los proyectos.

Del cambio de código a producción

  1. Git

    Registrar los cambios, asignar a cada uno un propósito claro y gestionarlo mediante una solicitud de incorporación de cambios que pueda revisarse.

  2. Revisión de código

    Encargar a otra persona la revisión del cambio. La integración requiere aprobación, y las modificaciones posteriores requieren una nueva revisión.

  3. CI

    Ejecutar comprobaciones automatizadas mediante GitHub Actions y exigir que se superen las comprobaciones obligatorias antes de integrar los cambios.

  4. Pruebas

    Verificar el comportamiento afectado por el cambio y añadir pruebas adecuadas a sus riesgos y alcance.

  5. Construcción

    Generar una versión identificable y trazable una vez superadas las comprobaciones requeridas.

  6. Preproducción

    Probar la versión en un entorno separado de producción, con datos de prueba y secretos distintos.

  7. Aceptación

    El responsable técnico del equipo aprueba la preparación técnica, y el cliente o su representante aprueba la conformidad con los requisitos, según la magnitud del cambio. Documentar la aceptación.

  8. Producción

    Desplegar la versión aprobada con los permisos definidos y bloquear el despliegue si no se supera un control obligatorio.

  9. Monitorización

    Comprobar el estado del servicio después del despliegue y supervisar internamente la disponibilidad, el rendimiento y los errores.

Estas son etapas lógicas; las pruebas y las compilaciones pueden ejecutarse dentro de la integración continua (CI). Los controles de aceptación y los permisos se definen para cada proyecto antes del despliegue.

Los siguientes controles constituyen la política aprobada que debe implementarse y verificarse en el marco del acuerdo del proyecto. Las responsabilidades operativas efectivas son las asignadas en el contrato de operaciones o soporte.

Registro de eventos

Los registros se limitan a la información necesaria para diagnosticar fallos y apoyar las operaciones. Los datos sensibles se ocultan y el acceso se restringe a las personas autorizadas. Los plazos de conservación se definen según las necesidades operativas, con eliminación automática al finalizar dichos plazos. No deben registrarse contraseñas ni claves de acceso, ni el contenido sensible íntegro de las solicitudes.

Seguimiento de errores

Los errores se recopilan y priorizan según su impacto en el servicio, con alertas que ayudan a la persona designada a investigar y dar seguimiento. Los datos se depuran para ocultar información sensible antes de enviarlos a la herramienta de seguimiento, y el diagnóstico no debe convertirse en una recopilación innecesaria de datos de los visitantes.

Monitorización

La política aprobada contempla la monitorización automatizada de la disponibilidad, el rendimiento y los errores, con una persona designada para recibir las alertas y darles seguimiento. El acuerdo de operaciones o soporte define los horarios de cobertura, los tiempos de respuesta y las responsabilidades. Esta política no promete una supervisión humana las 24 horas ni un porcentaje específico de disponibilidad.

Copias de seguridad

La política aprobada contempla copias de seguridad automatizadas y cifradas, aisladas del sistema principal, con un plazo de conservación definido y pruebas de restauración periódicas. El contrato identifica quién es responsable de las copias de seguridad, el seguimiento y la restauración; la responsabilidad no pasa automáticamente al desarrollador por el mero hecho de haber creado el sitio web.

El alcance de las copias de seguridad se basa en los datos que realmente existen: archivos del sitio web, recursos, configuración necesaria para la recuperación y datos cambiantes, si los hay. Que una tarea de copia de seguridad finalice correctamente no basta por sí solo; debe verificarse la posibilidad de restaurarla. La frecuencia de las copias, la pérdida de datos aceptable y el tiempo de recuperación se determinan según las necesidades del servicio y el acuerdo, sin compromisos numéricos no aprobados.

Reversión a la versión anterior

Conservar una versión estable y preparar un procedimiento probado de reversión, con comprobaciones del estado del servicio después del despliegue y de la reversión. Los cambios en la base de datos, si los hay, requieren un plan independiente para proteger los datos y verificar la compatibilidad. No debe suponerse que restaurar los archivos de la aplicación restaure automáticamente los datos.

Gestión de secretos

Las contraseñas de servicios y las claves de API se almacenan en un gestor de secretos específico. Los secretos de pruebas y de producción se mantienen separados, y el acceso se limita según la necesidad. Los secretos no deben aparecer en el código fuente, en los archivos públicos del frontend ni en los registros. Se revocan y sustituyen cuando se sospecha una exposición, y se revisan los permisos de acceso.