O Que É uma Runner Image de CI (ou AMI)?
Uma runner image é o template pré-construído a partir do qual um runner inicializa - um OS mais um conjunto selecionado de ferramentas e SDKs já instalados, para que os jobs não tenham que instalá-los do zero toda vez.
Seja chamada de image, de AMI (na AWS) ou de template de VM, a ideia é a mesma: um snapshot de uma máquina pronta para trabalhar. O conteúdo dessa image determina em grande parte o quão rápido e o quão consistente é o seu CI.
O que há na image
Uma runner image embute o sistema operacional, runtimes e SDKs de linguagens comuns, ferramentas de build e o próprio agente do runner. Quando um runner é lançado, ele inicializa essa image e fica imediatamente pronto para pegar um job - sem provisionamento demorado da toolchain base a cada execução.
Por que pré-embutir importa
- Velocidade: as ferramentas estão presentes na inicialização, então os jobs pulam as instalações de ferramentas base.
- Consistência: cada runner parte da mesma baseline idêntica e conhecida.
- Reprodutibilidade: fixar uma versão da image fixa a toolchain para todos os jobs.
AMI especificamente
Na AWS, a image é uma AMI (Amazon Machine Image) - o template de disco a partir do qual uma instância EC2 é lançada. Uma frota de runners self-hosted ou gerenciada normalmente constrói uma AMI personalizada com exatamente as ferramentas que seus jobs precisam, para que cada instância suba pré-carregada em vez de instalar tudo na inicialização.
As trocas
Uma image mais rica inicializa pronta para mais jobs, mas é maior e precisa ser reconstruída e republicada sempre que as ferramentas embutidas mudam. Uma image mais enxuta é menor e mais fácil de manter, mas força os jobs a instalar mais em tempo de execução. O equilíbrio é incluir o que a maioria dos jobs precisa, deixando ferramentas raras e pesadas para instalação por job ou para cache.
Principais conclusões
- Uma runner image é o template pré-construído a partir do qual um runner inicializa.
- Na AWS esse template é uma AMI a partir da qual uma instância EC2 é lançada.
- Pré-embutir ferramentas dá velocidade, consistência e reprodutibilidade.
- Images mais ricas inicializam prontas mas custam tamanho e churn de rebuild - equilibre-os.