Como o Ubuntu gerencia tantas imagens diárias?


10

Nestas páginas, https://cloud-images.ubuntu.com/locator/daily/ e http://cloud-images.ubuntu.com/releases/16.04/beta-2/ , o Ubuntu fornece imagens diárias para diferentes versões ( 14.04 a 16.04), plataformas (AWS, Azure, KVM, Vagrant ...) e arquiteturas (i386, amd64 ...).

Isso deve precisar de grande automação. Estou curioso sobre a arquitetura desse tipo de sistema de compilação. Existem documentos sobre isso? Obrigado.


1
Isso pode responder a sua pergunta, por favor editar a sua pergunta se isso não acontecer: askubuntu.com/questions/705552/...
Jorge Castro

Respostas:


4

Para o Ubuntu, provavelmente é feito de maneira semelhante à do Debian. Aqui estão algumas informações sobre a rede Debian Autobuilder .

Aqui estão alguns detalhes sobre como criar uma imagem específica do instalador do Ubuntu .

Para o Debian, para diminuir a carga do servidor, existem muitos espelhos que, por exemplo, fornecem as imagens de cd criadas pelos principais servidores Debian. A maioria dos espelhos é mantida por voluntários. Aqui estão alguns documentos sobre: Espelhos Debian . O mesmo existe para o Ubuntu: Ubuntu Mirrors

Deve ser suficiente ter um ou talvez dois servidores de construção por arquitetura. Cada servidor de construção pode construir as imagens de CD para sua própria arquitetura, para todas as plataformas, para todas as versões periodicamente. (Ao usar a compilação cruzada, menos servidores de compilação podem ser necessários)

Antes de fazer o upload de um installer-cd-image, existem muitos testes de integração que precisam ser executados para validar, que os pacotes recém-compilados funcionam entre si (consulte a especificação dep8 ). E, é claro, existem testes específicos de pacotes durante a compilação de cada pacote.

No entanto, eu não sei se o cd-build em si é acionado por script + um trabalho cron, ou se eles usam algum tipo de software para integração contínua (por exemplo, Jenkins ). Ou se eles usam uma ferramenta como o Linux automatizado do zero .

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.