* Implementación del rol de Ansible 'siguldry' para CentOS Stream 10 * Migración del plugin de firmas de Koji Hub a un spooler asíncrono * Modificación de roles para utilizar empaquetamiento RPM nativo de siguldry-pkcs11 * Documentación de decisiones (ADRs) y roadmap en docs/technical/ * Limpieza de binarios locales pesados de PKCS#11 en Ansible Co-developed-by: Gemini AI <renich+gemini@woralelandia.com> Signed-off-by: Rénich Bon Ćirić <renich@woralelandia.com>
3.2 KiB
Roadmap de Desarrollo de MxOS Koji
Este roadmap define el camino a seguir para el desarrollo y optimización de la infraestructura de compilación de MxOS. El enfoque prioritario es lograr la compatibilidad absoluta con CentOS Stream 10 antes de introducir optimizaciones adicionales.
Igualacion a CentOS Stream
El primer hito es replicar los mecanismos de compilación y firma oficiales para ser compatibles con CentOS Stream:
Estandarización de Fuentes (Lookaside Cache): * Adoptar el script oficial get_sources.sh o su equivalente compatible con el formato de la caché lookaside. * Modificar los scripts de sincronización locales para integrarse con la estructura oficial.
Firma con Sigul Oficial: * Desplegar en staging el servidor y el puente de Sigul (sigul-server y sigul-bridge) usando certificados TLS dedicados y políticas de ACL de Sigul. * Configurar e importar llaves GPG reales de pruebas en el servidor de Sigul. * Reescribir el plugin de Koji Hub (sigul_sign.py) para invocar el cliente sigul oficial.
Políticas de SCM en el Hub: * Restringir el Koji Hub mediante la propiedad AllowedSCMs para forzar las compilaciones a partir de los repositorios Git en git.mx-os.mx/RPMs/.
Branding de Koji a MxOS
Para personalizar la interfaz de Koji Web con la identidad gráfica de MxOS (utilizando los recursos de logotipos en SVG en la raíz del proyecto):
Conversión de Recursos Gráficos: * Utilizar herramientas nativas de CentOS Stream 10 para convertir los archivos de logotipos SVG (mxos.svg y mxos-reducido.svg) a formato PNG con la resolución adecuada para Koji Web.
Creación de Tema para Koji Web: * Implementar el rol de Ansible para crear el directorio del tema en /usr/share/koji-web/static/themes/mxos/. * Copiar el logotipo de MxOS en images/koji.png dentro del tema. * Personalizar la hoja de estilos koji.css del tema mxos para aplicar la paleta de colores y estilos corporativos.
Configuración del Tema en el Servidor: * Configurar KojiTheme = mxos y SiteName = MxOS Koji en /etc/kojiweb/web.conf a través de las plantillas del rol koji_hub.
Planes de Mejora y Escalabilidad
Una vez alcanzada la paridad técnica con CentOS Stream, se procederá con las siguientes mejoras de infraestructura y automatización:
Asincronía vía Bus de Mensajes: * Reemplazar los callbacks locales por la emisión de mensajes AMQP mediante koji-messagebus (RabbitMQ). * Crear un servicio consumidor de firmas autónomo que escuche los eventos de compilación terminada para firmar paquetes asíncronamente sin afectar a Apache.
Autenticación Centralizada (Kerberos): * Integrar FreeIPA o Red Hat IDM para autenticar de manera segura a los builders y desarrolladores. * Configurar sssd en los nodos y configurar mod_auth_gssapi en Koji Hub y Koji Web.
Múltiples Builders: * Escalar horizontalmente el número de Koji Builders activos, asociándolos a canales especializados (como compilar arquitecturas secundarias o tareas prioritarias).