Exécuter un agent autohébergé derrière un proxy web

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

Lorsque votre agent auto-hébergé nécessite un proxy web, vous pouvez indiquer le proxy à l’agent pendant la configuration. Cela permet à votre agent de se connecter à Azure Pipelines ou TFS via le proxy. Cela permet à l’agent d’obtenir des sources et de télécharger des artefacts. Enfin, il transmet les détails du proxy aux tâches qui ont également besoin de paramètres de proxy pour atteindre le web.

Azure Pipelines, TFS 2018 RTM et ultérieur

(S’applique à l’agent version 2.122 et ultérieure.)

Pour permettre à l’agent de s’exécuter derrière un proxy web, passez --proxyurl, --proxyusername et --proxypassword pendant la configuration de l’agent.

Par exemple :

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

Nous stockons vos informations d’identification de proxy de manière responsable sur chaque plateforme pour éviter les fuites accidentelles. Sur Linux, les informations d’identification sont chiffrées avec une clé symétrique basée sur l’ID de machine. Sur macOS, nous utilisons le trousseau. Sur Windows, nous utilisons Credential Store.

Notes

La version 122.0 de l’agent, fournie avec TFS 2018 RTM, présente un problème connu de configuration en tant que service sur Windows. Étant donné que Credential Store Windows est par utilisateur, vous devez configurer l’agent à l’aide du même utilisateur que celui que le service va exécuter. Par exemple, pour configurer l’exécution du service d’agent en tant que mydomain\buildadmin, vous devez lancer config.cmd en tant que mydomain\buildadmin. Pour ce faire, connectez-vous à l’ordinateur avec cet utilisateur ou utilisez Run as a different user l’interpréteur de commandes Windows.

Comment l’agent gère le proxy dans un travail de build ou de mise en production

L’agent communique avec le service Azure DevOps/TFS via le proxy web spécifié dans le .proxy fichier.

Étant donné que le code de la Get Source tâche dans les builds et Download Artifact de la tâche dans les versions est également intégré à l’agent, ces tâches suivent la configuration du proxy de l’agent à partir du .proxy fichier.

L’agent expose la configuration du proxy via des variables d’environnement pour chaque exécution de tâche. Les auteurs de tâches doivent utiliser les méthodes azure-pipelines-task-lib pour récupérer la configuration du proxy et gérer le proxy au sein de leur tâche.

Notez que de nombreux outils n’utilisent pas automatiquement les paramètres de proxy configurés par l’agent. Par exemple, des outils tels que curl et dotnet peuvent exiger que des variables d’environnement proxy telles que http_proxy soient également définies sur l’ordinateur.

Spécifier des URL de contournement de proxy

Créez un .proxybypass fichier dans le répertoire racine de l’agent qui spécifie des expressions régulières (dans la syntaxe ECMAScript) pour faire correspondre les URL qui doivent contourner le proxy. Par exemple :

github\.com
bitbucket\.com