* 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>
48 lines
3.2 KiB
ReStructuredText
48 lines
3.2 KiB
ReStructuredText
==================================
|
|
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).
|