Passando um endereço de proxy para uma tarefa no Azure Pipelines
Outro dia estava em um cliente e por motivos técnicos a equipe da infra tinha alterado o endereço do proxy deles para um temporário. Nós não tinhamos acesso aos servidores onde rodavam os agentes e isso tinha parado todos os pipelines, pois nenhum deles conseguia acessar serviços externos, como o Azure Artifacts.
Como não conseguiamos reiniciar ou reconfigurar os agentes precisavamos de uma outra estratégia. E é esse modelo que vou explicar aqui para você.
Toda ques que executávamos algum processo de build estavamos recebendo o seguinte erro:
A mensagem dizia o seguinte:
```E:*\a2_work_tool\dncs\3.1.100\x64\sdk\3.1.100\NuGet.targets(123,5): error : Unable to load the service index for source https://api.nuget.org/v3/index.json. [E:*\a2_work\4\s\MB.Console.STC.Monitor.sln] E:****\a2_work_tool\dncs\3.1.100\x64\sdk\3.1.100\NuGet.targets(123,5): error : A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. ##[error]Cmd.exe exited with code ‘1’.
Como podemos ver, ele não conseguia acessar a API do nuget e com isso não conseguia restaurar os pacotes da solution. Para resolver esse problema, nós podemos passar uma variável para o processo de pipeline e nesse caso colocamos diretamente na tarefa duas variáveis fr ambiente HTTP_PROXY e HTTPS_PROXY e definimos os valores para elas.
Com isso, quando a tarefa era executada, automaticamente o pipeline injetava as informações de proxy com o novo endereço e o link do nuget ficava acessível e restaurava os pacotes normalmente.
Espero que tenha gostado e se tiver alguma dúvida específica me manda um e-mail ou deixe nos comentários.
Até a próxima, Claudio Romão
27/01/2020 | Por Claudio Romão | Em Técnico | Tempo de leitura: 1 min.