Exécuteurs Node.js dans l’agent Azure Pipelines

L’agent Azure Pipelines est fourni avec plusieurs versions de bibliothèques de Node.js pour prendre en charge les tâches cibles qui peuvent utiliser des gestionnaires Node.js différents.

Warning

Les versions 6, 10 et 16 de Node.js sont en fin de vie et seront supprimées de l’agent le 24 novembre 2026. L’agent Azure Pipelines inclut déjà Node.js 24. Les auteurs de tâches personnalisés et d’extension doivent mettre à jour leurs tâches avec Node.js 24 pour éviter tout impact sur les pipelines qui utilisent ces tâches.

prise en charge des versions de Node.js

Le tableau suivant répertorie les versions Node.js prises en charge dans Azure Pipelines, ainsi que leurs dates de fin de support et leurs dates de suppression.

version de Node.js Fin de la prise en charge dans Azure Pipelines Date de suppression dans Azure Pipelines
24 Avril 20281 Octobre 20281
20 Avril 2026 Avril 2027
16 Septembre 2021 24 novembre 2026
10 Avril 2021 24 novembre 2026
6 Avril 2019 24 novembre 2026
  • Fin du support dans Azure Pipelines : lorsque la date de fin de support est atteinte, la version Node.js ne sera pas mise à jour dans l’agent Azure Pipelines. La date de fin du support est basée sur le calendrier officiel du support de Node.js.
  • Date de suppression dans Azure Pipelines : lorsque la date de suppression est atteinte, la version Node.js sera supprimée des nouvelles versions de l’agent et les tâches qui nécessitent ces versions Node.js peuvent échouer. La date de suppression sera toujours au moins six mois après la date de fin de support.

Les pipelines émettent des avertissements pour informer les utilisateurs des dates de fin de support ou de suppression à venir.

À compter de Node.js 24, l’agent Azure Pipelines inclut uniquement d’autres versions de support à long terme (LTS) de Node.js.

1Les dates de fin de support et de suppression des Node.js 24 s’alignent sur la planification officielle du supportNode.js à compter de novembre 2025. Ces dates sont susceptibles de changer en fonction des annonces futures de l’équipe Node.js.

Date de suppression du Node.js 6, 10 et 16

Node.js 6, 10 et 16 n’ont pas été pris en charge dans les pipelines depuis leurs dates de fin de support respectives. Les pipelines avec des tâches qui dépendent de ces versions Node.js émettent actuellement des avertissements lorsqu’elles s’exécutent. Pour vous donner suffisamment de temps pour migrer vos tâches personnalisées vers une version de Node.js prise en charge, nous avons étendu la date de suppression au 24 novembre 2026.

Pour plus d’informations sur la mise à jour et le test de vos tâches personnalisées vers la version actuelle de Node.js, consultez Comment puis-je mettre à niveau ma tâche vers la dernière version Node.js.

Testez les tâches avant que les exécuteurs Node.js en fin de vie ne soient supprimés

Utilisez le paramètre au niveau de l’organisation Restreindre les versions de Node.js non prises en charge dans les tâches de pipeline pour évaluer l’impact de la suppression de Node.js 6, 10 et 16 de l’agent d’exécution sur vos pipelines. Le paramètre est désactivé par défaut. Lorsque vous l’activez, les tâches affectées s’exécutent avec un exécuteur de Node.js disponible plus récent au lieu de leur exécuteur de fin de vie déclaré.

Ce paramètre vous permet d’identifier et de mettre à jour les pipelines impactés avant Node.js 6, 10 et 16 sont supprimés de l’agent le 24 novembre 2026. Cela ne supprime pas les runners associés à l’agent.

Conditions préalables pour cette fonctionnalité

Vous avez besoin de l’agent version 4.278.0 ou ultérieure pour le paramètre précédent.

Activer le paramètre

  1. Accédez à Paramètres de l’organisation>>.

  2. Sous Restrictions de tâche, activez Restreindre les versions de Node.js hors support dans les tâches de pipeline.

    Capture d’écran montrant le paramètre activé pour restreindre les versions de Node.js qui ne sont plus prises en charge dans les tâches de pipeline.

  3. Exécutez vos pipelines et consultez les journaux pour repérer les avertissements concernant les tâches qui dépendent de versions Node.js en fin de vie.

Comportement lorsque le paramètre est activé

Pour chaque tâche qui déclare un gestionnaire d’exécution Node.js 6, 10 ou 16, l’agent :

  1. Empêche la tâche d’utiliser son exécuteur de fin de vie déclaré Node.js.
  2. Sélectionne un exécuteur plus récent disponible, préférant Node.js 24, puis Node.js 20.
  3. Enregistre un avertissement qui identifie la tâche affectée et explique qu’elle peut échouer ou se comporter de manière inattendue.
  4. Exécute la tâche avec l’exécuteur sélectionné ou échoue si aucun exécuteur plus récent compatible n’est disponible.

Le paramètre s’applique aux agents hébergés Microsoft et auto-hébergés et aux tâches qui s’exécutent sur l’hôte de l’agent ou dans un conteneur.

Important

L’exécution d’une tâche avec une version Node.js plus récente ne rend pas la tâche compatible avec cette version. Testez les pipelines affectés et mettez à jour des tâches personnalisées pour utiliser un exécuteur de Node.js actuel. Pour obtenir des conseils sur la migration, consultez Comment puis-je mettre à niveau ma tâche vers la dernière version Node.js.

Comment exécuter des tâches sur des versions Node.js non prises en charge

Pour maintenir la compatibilité descendante pour les tâches personnalisées à l’aide d’une version Node.js qui n’est plus prise en charge ou qui a été supprimée, nous proposons ces options en libre-service pour pouvoir installer l’exécuteur de Node.js requis :

  • Installez manuellement l’exécuteur de Node.js souhaité. Pour plus d’informations, consultez Prise en charge du programme d’exécution Node.js.

  • Utilisez la NodeTaskRunnerInstaller@0 tâche dans vos pipelines qui nécessitent une bibliothèque de Node.js obsolète.

  • Installez un package d’agent qui inclut les bibliothèques de Node.js souhaitées.

    Azure Pipelines fournit deux versions de packages d’agent :

    • vsts-agent-\: packages qui prennent en charge les bibliothèques Node.js 6 et Node.js 10.
    • pipelines-agent-\: packages qui ne prennent pas en charge les bibliothèques Node.js 6 et Node.js 10. À l’avenir, cette version du package devient le package d’agent par défaut.

    Note

    Le pipelines-agent package n’inclut pas Node.js 16. Les auteurs de tâches personnalisés et d’extension doivent mettre à jour et tester leurs tâches avec Node.js 24.

    Si vos tâches ne nécessitent pas la bibliothèque Node.js 6 ou Node.js 10 et que vous ne souhaitez pas installer la bibliothèque Node.js 6 ou Node.js 10 sur votre ordinateur agent, vous pouvez installer l’agent à partir de cette documentation, sous Téléchargements d’autres agents.

FAQ

Que se passe-t-il pour les tâches qui utilisent Node.js 6, 10 ou 16 quand j’active le paramètre ?

L’agent bloque le runtime déclaré comme étant en fin de vie pour la tâche et tente d’exécuter celle-ci avec Node.js 24, ou avec Node.js 20 si Node.js 24 n’est pas disponible ou utilisable. Le journal du pipeline identifie la tâche concernée et affiche un avertissement. Si aucun exécuteur utilisable plus récent n’est disponible, la tâche échoue.

Les scripts et les applications qui utilisent Node.js ne sont pas affectés uniquement parce qu’ils utilisent Node.js. Le paramètre s’applique au gestionnaire d’exécution Node.js déclaré par une tâche Azure Pipelines.

Pourquoi mon pipeline a-t-il échoué après avoir activé le paramètre ?

Le pipeline peut utiliser des tâches qui ne sont pas compatibles avec le plus récent Node.js exécuteur. Consultez l’avertissement et l’erreur dans le journal du pipeline pour identifier la tâche concernée.

  • Pour une tâche intégrée, mettez à jour le pipeline pour utiliser la dernière version principale de la tâche.
  • Pour une tâche de la Place de marché, recherchez une version mise à jour ou contactez l’éditeur d’extension.
  • Pour une tâche personnalisée, mettez à jour son gestionnaire d’exécution et ses dépendances vers une version Node.js actuelle. Pour plus d’informations, consultez Comment mettre à niveau ma tâche vers la dernière version Node.js.
  • Pour un agent auto-hébergé, vérifiez que la version de l’agent est mise à jour vers la version 4.278.0 ou ultérieure.

Jusqu’à ce que les runners en fin de vie soient supprimés, vous pouvez désactiver temporairement le paramètre de l’organisation pendant que vous mettez à jour la tâche. La désactivation du paramètre n’est pas une solution à long terme, car Node.js 6, 10 et 16 sont prévus pour la suppression le 24 novembre 2026.

Le paramètre supprime-t-il Node.js 6, 10 ou 16 de mes agents ?

Non. Le paramètre empêche les tâches de pipeline de sélectionner ces exécuteurs afin de pouvoir tester l’effet de leur suppression à venir. Il ne désinstalle pas les fichiers d’un agent.

Puis-je continuer à utiliser un exécuteur Node.js non pris en charge ?

La conservation d’un runtime de fin de vie présente des risques de sécurité et de compatibilité. Mettez donc à jour la tâche à la place. Pour obtenir des options d’agent auto-hébergé temporaires, consultez Comment exécuter des tâches sur des versions non prises en charge Node.js.

Le paramètre affecte-t-il Azure DevOps Server ?

Non. Le paramètre d’organisation n’est pas disponible dans Azure DevOps Server.

Voir également