Uruchamianie własnego agenta za internetowym serwerem proxy

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Jeśli własny agent wymaga internetowego serwera proxy, możesz poinformować agenta o serwerze proxy podczas konfiguracji. Dzięki temu agent może łączyć się z usługą Azure Pipelines lub TFS za pośrednictwem serwera proxy. Dzięki temu agent może pobierać źródła i pobierać artefakty. Na koniec przekazuje szczegóły serwera proxy do zadań, które również wymagają ustawień serwera proxy w celu uzyskania dostępu do sieci Web.

Azure Pipelines, TFS 2018 RTM i nowsze

(Dotyczy agenta w wersji 2.122 i nowszej).

Aby umożliwić agentowi uruchamianie za internetowym serwerem proxy, przekaż --proxyurl--proxyusername polecenie i --proxypassword podczas konfiguracji agenta.

Na przykład:

./config.cmd --proxyurl http://127.0.0.1:8888 --proxyusername "myuser" --proxypassword "mypass"

Poświadczenia serwera proxy są przechowywane odpowiedzialnie na każdej platformie, aby zapobiec przypadkowemu wyciekowi. W systemie Linux poświadczenie jest szyfrowane przy użyciu klucza symetrycznego na podstawie identyfikatora komputera. W systemie macOS używamy pęku kluczy. W systemie Windows używamy magazynu poświadczeń.

Uwaga

Agent w wersji 122.0 dostarczany z programem TFS 2018 RTM ma znany problem z konfigurowaniem jako usługi w systemie Windows. Ponieważ magazyn poświadczeń systemu Windows jest na użytkownika, należy skonfigurować agenta przy użyciu tego samego użytkownika, w którym będzie działać usługa. Aby na przykład skonfigurować usługę agenta jako mydomain\buildadmin, należy uruchomić config.cmd polecenie jako mydomain\buildadmin. Możesz to zrobić, logując się do komputera z tym użytkownikiem lub używając go Run as a different user w powłoce systemu Windows.

Jak agent obsługuje serwer proxy w ramach zadania kompilacji lub wydania

Agent będzie komunikować się z usługą Azure DevOps/TFS za pośrednictwem internetowego serwera proxy określonego .proxy w pliku.

Ponieważ kod zadania Get Source w kompilacjach i Download Artifact zadaniu w wydaniach jest również umieszczany w agencie, te zadania będą wykonywane zgodnie z konfiguracją serwera proxy agenta .proxy z pliku.

Agent uwidacznia konfigurację serwera proxy za pośrednictwem zmiennych środowiskowych dla każdego wykonania zadania. Autorzy zadań muszą używać metod azure-pipelines-task-lib do pobierania konfiguracji serwera proxy i obsługi serwera proxy w ramach zadania.

Należy pamiętać, że wiele narzędzi nie używa automatycznie ustawień serwera proxy skonfigurowanego przez agenta. Na przykład narzędzia, takie jak curl i dotnet mogą wymagać ustawienia zmiennych środowiskowych serwera proxy, takich jak http_proxy również na maszynie.

Określanie adresów URL obejścia serwera proxy

.proxybypass Utwórz plik w katalogu głównym agenta, który określa wyrażenia regularne (w składni ECMAScript), aby dopasować adresy URL, które powinny pomijać serwer proxy. Na przykład:

github\.com
bitbucket\.com