Résoudre l’erreur ECONNREFUSED sur des tâches Nuget dans des pipelines VSTS

Simon Emmanuel Rivas
Publié par Simon Emmanuel
Catégorie : Nuget / VSTS
17/10/2018

Imaginez le scénario suivant :

  • Vous utilisez VSTS pour builder et déployer vos développements
  • Vous avez configuré un feed Nuget dans VSTS
  • Vous avez configuré un agent privé pour exécuter les tâches de votre pipeline

Si vous êtes dans ce scénario, il ets très probable que vous rencontriez l’erreur suivante : ECONNREFUSED, comme illustré ci-dessous :

Vous avez probalement suivi la documentation officielle de Microsoft: https://docs.microsoft.com/en-us/azure/devops/pipelines/targets/nuget?view=vsts&tabs=designer

Les instructions décrites fonctionnent très bien avec un agent hosté, mais il est très possible que vous ayez le problème ci-dessus avec un agent privé. Dans mon cas, j’utilisais un agent privé pour compiler des projets BizTalk (qui malheureusement ne peuvent pas être compilés dans un agent hosté) situé derrière un firewall.

 

Après plusieurs heures passées à vérifier vainement la configuration de mon Personal Access Token, la configuration de l’agent VSTS (et en particulier la configuration du proxy) et la configuration du Credential Manager, il s’est finalement avéré que tout était correctement configuré (le Credential Manager n’est même pas nécessaire!).

Le problème est simplement que, pour une raison inconnue (que je n’ai pas eu le temps de creuser), les tâches Nuget n’utilisent pas la configuration de proxy de l’agent VSTS.

 

La solution est en fait très simple : dans votre définition de build ou votre définition de release (en fonction de votre cas), il suffit d’ajouter une variable http_proxy :

Et voilà! Plus de problème de connexion: