ansible-koji/docs/technical/roadmap.rst
Rénich Bon Ćirić 89d6f66be8
feat: Integración de Siguldry PKCS#11 y spooler de firmas
* 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>
2026-06-16 10:06:44 -06:00

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).