Résoudre l'échec du démarrage du pipeline

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

Si votre pipeline est en file d'attente mais ne démarre jamais, vérifiez les éléments suivants.

Remarque

Les scénarios suivants ne consomment pas de travail parallèle :

  • Si vous utilisez des pipelines de mise en production ou des pipelines YAML à plusieurs étapes, une exécution consomme un travail parallèle uniquement lorsqu’il est déployé activement sur une phase. Quand la mise en production est en attente d’approbation ou d’intervention manuelle, elle ne consomme pas de travail parallèle.
  • Lorsque vous exécutez un travail serveur ou que vous effectuez un déploiement dans un groupe de déploiement à l’aide de pipelines de mise en production, vous n’utilisez pas de travaux parallèles.

En savoir plus : Comment un travail parallèle est consommé par un pipeline, Ajouter des approbations de prédéploiement, Travaux serveur, Groupes de déploiement

Limites des travaux parallèles : aucun agent disponible ou vous avez atteint vos limites gratuites

Si vous exécutez actuellement d'autres pipelines, il se peut qu'il ne vous reste plus aucune tâche parallèle ou que vous ayez atteint vos limites de disponibilité.

Consulter les travaux parallèles disponibles

Notes

Azure Pipelines a temporairement désactivé l’octroi gratuit automatique de travaux parallèles hébergés par Microsoft dans de nouvelles organisations pour des projets publics et pour certains projets privés. Si vous n’avez pas de travaux parallèles, vos pipelines échouent avec l’erreur suivante : ##[error]No hosted parallelism has been purchased or granted. To request a free parallelism grant, please fill out the following form https://aka.ms/azpipelines-parallelism-request. Vérifiez vos travaux parallèles hébergés par Microsoft, comme décrit dans la section suivante et si vous n’avez aucun travail parallèle, vous pouvez demander l’octroi gratuit de travaux parallèles. Pour demander l’octroi gratuit de travaux parallèles pour votre organisation, envoyez une demande. Veuillez prévoir 2 à 3 jours ouvrables pour répondre à votre demande d’octroi.

Pour vérifier vos limites, accédez à Paramètres du projet, Travaux parallèles.

Tâches Pipelines concurrentes

Si vous utilisez des agents hébergés par Microsoft, vérifiez les limites de tâches parallèles pour les projets hébergés par Microsoft pour les projets privés ou les projets publics, selon que votre projet Azure DevOps est un projet privé (par défaut) ou un projet public.

Après avoir examiné les limites, vérifiez l’accès concurrentiel pour voir combien de travaux sont en cours d’exécution et combien sont disponibles.

Si vous exécutez actuellement d'autres pipelines, il se peut qu'il ne vous reste plus aucune tâche parallèle ou que vous ayez atteint vos limites de disponibilité.

Impossible d’accéder à Azure Key Vault derrière un pare-feu à partir d’Azure DevOps

Si vous ne pouvez pas accéder à Azure Key Vault à partir de votre pipeline, le pare-feu peut bloquer l’adresse IP de l’agent Azure DevOps Services. Les adresses IP publiées dans le fichier JSON hebdomadaire doivent être autorisées. Pour plus d’informations, consultez Agents hébergés par Microsoft : mise en réseau.

Vous n’avez pas assez de concurrence

Pour évaluer votre niveau de concurrence :

  1. Pour vérifier vos limites, accédez à Paramètres du projet, Travaux parallèles.

    Limites de pipelines concurrents

    Vous pouvez également accéder à cette page en accédant à https://dev.azure.com/{org}/_settings/buildqueue?_a=concurrentJobs ou en choisissant gérer les travaux parallèles à partir des journaux.

    Gérer les travaux parallèles

  2. Déterminez le pool sur lequel vous souhaitez vérifier votre niveau de concurrence (pools hébergés par Microsoft ou autohébergés), puis choisissez Afficher les travaux en cours.

  3. Vous verrez le texte indiquant Travaux X/X en cours d’exécution. Si les deux nombres sont identiques, les travaux en attente attendent la fin des travaux en cours d’exécution.

    Afficher les travaux en cours

    Vous pouvez afficher tous les travaux, y compris les travaux mis en file d’attente, en sélectionnant Pools d’agents dans les Paramètres du projet.

    Afficher les travaux en file d’attente

    Dans cet exemple, la limite de travaux simultanés est de un, avec un travail en cours d’exécution et un travail mis en file d’attente. Lorsque tous les agents sont occupés à exécuter des travaux, comme dans cet exemple, le message suivant s’affiche lorsque des travaux supplémentaires sont mis en file d’attente : The agent request is not running because all potential agents are running other requests. Current position in queue: 1. Dans cet exemple, le travail est le suivant dans la file d’attente. Sa position est donc de un.

Votre travail est peut-être en attente d'approbation

Votre pipeline pourrait ne pas passer à l’étape suivante car il est en attente d’approbation. Pour plus d’informations, consultez Définir des approbations et des vérifications.

Tous les agents disponibles sont en cours d’utilisation

Les tâches peuvent attendre si tous vos agents sont actuellement occupés. Pour vérifier vos agents :

  1. Accédez à https://dev.azure.com/{org}/_settings/agentpools.

  2. Sélectionnez le pool d’agents à vérifier, dans cet exemple FabrikamPool, puis choisissez Agents.

    État de l’agent

    Cette page affiche tous les agents actuellement en ligne/hors connexion et en cours d’utilisation. Vous pouvez également ajouter des agents supplémentaires au pool à partir de cette page.

Demandes qui ne correspondent pas aux fonctionnalités d’un agent

Si votre pipeline a des demandes qui ne répondent pas aux fonctionnalités d’un de vos agents, votre pipeline ne démarre pas. Si seuls certains de vos agents disposent des fonctionnalités souhaitées et qu’ils exécutent actuellement d’autres pipelines, votre pipeline sera bloqué jusqu’à ce qu’un de ces agents soit disponible.

Pour vérifier les capacités et les exigences spécifiées pour vos agents et pipelines, consultez Capacités.

Notes

Les fonctionnalités et les demandes sont généralement utilisées uniquement avec des agents auto-hébergés. Si votre pipeline a des demandes qui ne correspondent pas aux fonctionnalités système de l’agent, sauf si vous avez explicitement étiqueté les agents avec des fonctionnalités correspondantes, vos pipelines n’obtiennent pas d’agent.

Problèmes de connexion de l’agent TFS

La configuration échoue lors du test de la connexion de l’agent (TFS local uniquement)

Testing agent connection.
VS30063: You are not authorized to access http://<SERVER>:8080/tfs

Si l’erreur ci-dessus est reçue lors de la configuration de l’agent, connectez-vous à votre ordinateur TFS. Ouvrez le manager IIS (Internet Information Services). Assurez-vous que l’option Authentification anonyme est activée.

est une authentification anonyme activée

Perte de communication de l’agent

Ce problème est caractérisé par le message d’erreur :

The job has been abandoned because agent did not renew the lock. Ensure agent is running, not sleeping, and has not lost communication with the service.

Cette erreur peut indiquer que l'agent a perdu la communication avec le serveur pendant plusieurs minutes. Vérifiez les éléments suivants pour écarter les interruptions réseau ou autres sur l’ordinateur agent :

  • Vérifiez que les mises à jour automatiques sont désactivées. Un redémarrage de machine à partir d’une mise à jour entraîne l’échec d’une build ou d’une mise en production avec l’erreur ci-dessus. Appliquez les mises à jour de manière contrôlée pour éviter ce type d’interruption. Avant de redémarrer l’ordinateur agent, marquez l’agent comme désactivé dans la page d’administration du pool et laissez toute build en cours d’exécution se terminer.
  • Vérifiez que les paramètres de veille sont désactivés.
  • Si l'agent s'exécute sur une machine virtuelle, évitez toute migration en direct ou toute autre opération de maintenance de VM susceptible d'avoir un impact important sur l'état de santé de la machine pendant plusieurs minutes.
  • Si l’agent s’exécute sur une machine virtuelle, les mêmes suggestions de mise à jour du système d’exploitation et de mise en veille s’appliquent à l’ordinateur hôte. Et également toutes les autres opérations de maintenance qui ont un impact sur l’ordinateur hôte.
  • La journalisation de l’analyseur de performances ou une autre journalisation des métriques d’intégrité peut aider à mettre en corrélation ce type d’erreur avec la disponibilité limitée des ressources sur l’ordinateur agent (disque, mémoire, fichier de page, processeur, réseau).
  • Une autre façon de mettre en corrélation l’erreur avec les problèmes réseau consiste à effectuer indéfiniment un test ping sur un serveur et à vider la sortie dans un fichier, ainsi que des timestamps. Utilisez un intervalle sain, par exemple 20 ou 30 secondes. Si vous utilisez Azure Pipelines, vous souhaiterez alors envoyer une requête ping à un domaine Internet, par exemple bing.com. Si vous utilisez un serveur TFS sur site, vous souhaiterez alors envoyer une requête ping à un serveur sur le même réseau.
  • Vérifiez que le débit réseau de la machine est adéquat. Vous pouvez effectuer un test de vitesse en ligne pour vérifier le débit.
  • Si vous utilisez un proxy, vérifiez que l’agent est configuré pour utiliser votre proxy. Reportez-vous à la rubrique de déploiement de l’agent.

L’agent de travail TFS n’a pas démarré

Cela peut être caractérisé par un message dans la console Web « En attente de la demande d'un agent ». Vérifiez que le service TFSJobAgent (nom complet : Agent de travail en arrière-plan Visual Studio Team Foundation) Windows est démarré.

URL de notification mal configurée (version de l’agent 1.x)

Cela peut être caractérisé par un message dans la console Web « En attente de la sortie de la console d'un agent » et le processus finit par expirer.

Une URL de notification incompatible peut empêcher le processus de travail de se connecter au serveur. Consultez Console Administration Team Foundation, Couche Application. L’agent 1.x écoute la file d’attente des messages à l’aide de l’URL avec laquelle il a été configuré. Toutefois, lorsqu’un message de travail est extrait de la file d’attente, le processus de travail utilise l’URL de notification pour communiquer à nouveau au serveur.

Vérifier l’état Azure DevOps pour une détérioration de service

Consultez le portail d'état du service Azure DevOps pour tout problème susceptible de provoquer une dégradation du service, tel qu'une augmentation du temps d'attente pour les agents. Pour plus d’informations, consultez État du service Azure DevOps.

J’ai besoin d’une aide supplémentaire. J'ai trouvé un bogue. J’ai une suggestion. Où aller ?

Obtenir un abonnement, une facturation et un support technique

Signalez les problèmes ou envoyez des commentaires à Developer Community.

Vos suggestions sont les bienvenues :