Desde estas páginas, https://cloud-images.ubuntu.com/locator/daily/ y http://cloud-images.ubuntu.com/releases/16.04/beta-2/ , Ubuntu proporciona imágenes diarias para diferentes versiones ( 14.04 a 16.04), plataformas (AWS, Azure, KVM, Vagrant ...) y arquitecturas (i386, amd64 ...).
Esto debe necesitar una gran automatización. Tengo curiosidad sobre la arquitectura de este tipo de sistema de construcción. ¿Hay algún documento al respecto? Gracias.
Respuestas:
Para Ubuntu, probablemente se realiza de manera similar que para Debian. Aquí hay información sobre la red de Debian Autobuilder .
Aquí algunos detalles sobre cómo construir una imagen de instalador de Ubuntu específica .
Para Debian, para disminuir la carga del servidor, hay muchos espejos que, por ejemplo, proporcionan las imágenes de CD creadas por los principales servidores Debian. La mayoría de los espejos son mantenidos por voluntarios. Aquí algunos documentos sobre: Debian Mirrors . Lo mismo existe para Ubuntu: Ubuntu Mirrors
Debería ser suficiente tener uno o quizás dos servidores de compilación por arquitectura. Cada servidor de compilación puede compilar las imágenes de CD para su propia arquitectura, para todas las plataformas, para todas las versiones periódicamente. (Cuando se utiliza la compilación cruzada, podrían necesitarse incluso menos servidores de compilación)
Antes de cargar una imagen de cd de instalador, hay muchas pruebas de integración que deben ejecutarse para validar que los paquetes de nueva construcción funcionan entre sí (consulte la especificación dep8 ) Y, por supuesto, hay pruebas específicas de paquetes durante la compilación de cada paquete
Sin embargo, no sé si las compilaciones de cd en sí mismas son activadas por script + un trabajo cron, o si usan algún tipo de software para la integración continua (por ejemplo, Jenkins ). O si usan una herramienta como Linux automatizado desde cero .
fuente