As variáveis de proxy pertencem aos jobs do GitLab que precisam delas
Reutilize um modelo de job oculto para delimitar o ambiente de proxy sem torná-lo um padrão de todo o pipeline.
Um estágio do GitLab agrupa jobs; ele não possui um ambiente de processo separado. Coloque as variáveis de proxy nos jobs que precisam delas, opcionalmente por meio de um modelo oculto reutilizável:
.proxy-environment:
variables:
HTTP_PROXY: "$CODE_PROXY"
HTTPS_PROXY: "$CODE_PROXY"
NO_PROXY: "localhost,127.0.0.1"
external_check:
extends: .proxy-environment
stage: test
script:
- python ci/check_external_service.py
CODE_PROXY é fornecido pela gestão de variáveis existente do projeto. Para jobs autorizados a acessar serviços públicos por proxies públicos, seu valor pode usar um endpoint HTTP da lista de proxies HTTP. O comando Python é uma tarefa de projeto ilustrativa. Outros jobs podem omitir esse modelo, e vários jobs no mesmo estágio podem escolher ambientes diferentes.
Deixe esses nomes de proxy fora dos padrões YAML de nível superior se não devem ser herdados amplamente. Inspecione também as variáveis de projeto, grupo e pipeline: a precedência delas pode substituir o valor YAML de um job.
inherit:variables controla a herança de variáveis padrão do YAML. Ele não apaga variáveis CI/CD de projeto ou grupo, então não é um interruptor geral para remover todas as fontes de proxy.
Isto configura o processo do job. O cliente HTTP iniciado dentro dele deve suportar essas variáveis, e a conexão anterior do runner para baixar a imagem tem sua própria configuração.