Integración y despliegue
Procedimiento para integrar los cinco componentes entregados (ver Manifiesto de entrega) en un Moodle 5.1 sobre el stack Docker del campus. Está pensado para el equipo de infraestructura y los administradores de Moodle del cliente.
El runbook documenta el stack Docker real del proyecto (Docker Compose + upgrade.php +
purge_caches.php). Los valores específicos de cada entorno (host, contenedores, rutas) se
expresan como variables; sustitúyelas por las del entorno destino.
Modelo de entrega
El código se entrega por el repositorio GitLab del cliente (rama de entrega) o como paquete
(zip/rsync). Se ubica dentro del árbol de Moodle, bajo public/, en las rutas estándar de
cada tipo de plugin:
| Componente | Ruta destino (dentro del docroot) |
|---|---|
local_pccntr8203403_dashboard | public/local/pccntr8203403_dashboard/ |
local_pccntr8203403_aitutor | public/local/pccntr8203403_aitutor/ |
block_pccntr8203403_logros | public/blocks/pccntr8203403_logros/ |
block_pccntr8203403_atencion | public/blocks/pccntr8203403_atencion/ |
theme_cdigital | public/theme/cdigital/ |
No se toca ningún otro archivo del core. Orden de instalación: primero los plugins locales,
luego los bloques y por último el tema (el tema y los bloques consumen clases y Web Services de
los plugins locales; los bloques declaran la dependencia en version.php). Con una copia única
del árbol y un solo upgrade.php, Moodle resuelve este orden automáticamente.
Entornos del proyecto
| Entorno | Host | URL | Proyecto Compose |
|---|---|---|---|
| Local (dev) | localhost | http://localhost:8080 · https://localhost:8443 | local/ |
| Pruebas | root@2.24.207.244 | https://campusvirtual.metaversodenegocios.com | colombiaaprende |
| Certificación | (VPN) | https://applicationcert.colombiaaprende.edu.co | certificacion/ |
En Certificación no hay despliegue directo (acceso por VPN, solo consulta). La entrega al cliente se realiza por el GitLab de MinEducación y se formaliza con el formato RFC del MEN; la ejecución la realiza el equipo técnico del MEN.
Entre ambientes viaja código, nunca datos: ver qué NO incluye la entrega.
Variables del runbook
Define estas variables según el entorno destino (los valores de ejemplo son los de Pruebas):
HOST=root@2.24.207.244 # host SSH del entorno
KEY=/ruta/a/llave_ssh # llave SSH (si aplica)
SRC=/ruta/local/APP158C/public # árbol de origen (build local)
DST=/opt/docker/apps/colombiaaprende/APP158C/public # docroot destino
WEB=colombiaaprende_web # contenedor web (PHP 8.3)
DB=colombiaaprende_db # contenedor MariaDB
OWNER=501:50 # propietario del árbol de código
Secuencia de despliegue
- Build de assets — solo si cambiaron
amd/src/*o el SCSS del tema. - Procedimiento — backup → copia de código → propietario →
upgrade.php→purge_caches.php→ activar tema. - Verificación — comprobar que el despliegue quedó sano y la feature funciona.
- Rollback — si algo falla, restaurar.
Para la entrega final al cliente (ambiente Certificación), el procedimiento anterior se traduce al formato del MEN: Entrega a Certificación (RFC).
Antes de tocar nada, confirma los requisitos del entorno.