Definir um proxy para um único comando de shell Unix do Jenkins
Substitua o ambiente de proxy de um comando de build no agente sem alterar o controlador nem as etapas não relacionadas.
Para um único comando num agente Jenkins Unix, coloque a atribuição do proxy nesse comando:
node('linux') {
sh 'http_proxy=http://build-proxy.example:8080 https_proxy=http://build-proxy.example:8080 ./build.sh'
}O exemplo pressupõe que o repositório tem um script de build e que as ferramentas do agente leem estes nomes de ambiente. As atribuições substituem os valores herdados para esse comando e os seus filhos. Não reescrevem o ambiente persistente da máquina. Para um passo de build que obtém artefactos públicos por uma rota permitida sem autenticação de proxy, a lista de proxies HTTP pode fornecer pontos finais HTTP candidatos para esses valores.
Se vários passos de Pipeline devem partilhar a substituição, use um bloco withEnv à volta desses passos. O Jenkins documenta que o tratamento de variáveis não distingue maiúsculas de minúsculas, mas preserva-as; verifique a grafia resultante quando uma ferramenta Unix exige um nome específico em minúsculas.
Um export simples num passo sh pertence a essa shell. Um passo de shell independente posterior é um novo processo e não herda as alterações do seu vizinho.
Aplique a definição onde o comando é executado. As transferências do controlador Jenkins e uma ferramenta lançada num agente remoto são consumidores de rede distintos. Uma verificação de atualização bem-sucedida no controlador não estabelece a rota do comando do agente.