O Que É um Runner Sidecar? Um Processo Auxiliar ao Lado do Job
Um runner sidecar é um processo secundário rodando ao lado do job principal em ou perto de um runner, fornecendo serviços de suporte como cache, monitoramento ou detecção de falhas sem mudar o job em si.
O padrão "sidecar", emprestado de containers, roda um auxiliar ao lado da sua carga primária. Em um runner, um sidecar pode adicionar capacidades - um proxy de cache, um coletor de métricas, um agente de autocorreção - de forma transparente ao job.
O padrão sidecar
Um sidecar é um processo companheiro que lida com preocupações transversais para que o job principal não tenha que fazer. Ele compartilha o ciclo de vida e a rede do runner mas fica separado da sua lógica de build.
O que sidecars fazem em runners
- Proxy de cache: servir e armazenar caches de dependência e camada localmente.
- Observabilidade: coletar logs, métricas e uso de recursos por job.
- Autocorreção: vigiar falhas transitórias e disparar retentativas.
- Segurança: mediar acesso à rede ou impor política.
Por que é transparente
Como o sidecar roda ao lado do job em vez de dentro dele, seu YAML de workflow geralmente não muda. A plataforma conecta o sidecar, e o job se beneficia sem o autor saber que ele está lá.
Sidecars em runners gerenciados
Plataformas gerenciadas usam sidecars para entregar recursos como cache e autocorreção sem pedir que você modifique workflows. O auxiliar faz o trabalho pesado ao lado do seu job, invisivelmente.
Sidecar vs service container
Um "service container" do GitHub Actions é algo que você declara no seu workflow para o job conversar, como um banco de dados. Um sidecar de plataforma é conectado pela infraestrutura do runner para preocupações transversais. Ambos rodam ao lado do job, mas um é seu para configurar e o outro é da plataforma.
Principais conclusões
- Um runner sidecar é um processo auxiliar rodando ao lado do job.
- Ele fornece cache, monitoramento, autocorreção ou segurança.
- É transparente - seu workflow geralmente não precisa de mudanças.
- Plataformas gerenciadas usam sidecars para adicionar recursos invisivelmente.