Partager via


Intégrer des tâches de pipeline de build personnalisées avec des extensions

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

Utilisez cette référence lorsque vous souhaitez créer et intégrer des tâches de pipeline de build personnalisées avec des extensions dans Azure DevOps.

Conseil / Astuce

Consultez notre documentation la plus récente sur le développement d’extensions à l’aide du Kit de développement logiciel (SDK) d’extension Azure DevOps.

Tâches personnalisées

Les tâches sont les blocs de construction pour définir l’automatisation dans un pipeline de build ou de mise en production. Pour plus d’informations, consultez Types de tâches et utilisation.

Nous offrons de nombreuses tâches intégrées pour permettre des scénarios de génération et de déploiement fondamentaux. Nous vous recommandons de passer en revue ces scénarios avant de créer vos propres scénarios. Si les tâches existantes ne répondent pas à vos besoins, vous pouvez créer une tâche personnalisée.

Outil de génération personnalisée JSON

Lorsque vous créez une tâche de génération ou de mise en production personnalisée avec une extension, votre extension inclut un fichier task.json pour chaque tâche de génération ou de mise en production. Le fichier task.json décrit la tâche de génération ou de mise en production. Le système de génération l’utilise pour afficher les options de configuration à l’utilisateur et connaître les scripts à exécuter au moment de la génération.

Pour plus d’informations, consultez la documentation du Kit de développement logiciel (SDK) de tâche de génération et de mise en production sur GitHub. Plus précisément, vous serez peut-être intéressé par le schématask.json.

Regrouper plusieurs versions des tâches de build ou de mise en production dans une seule extension

Vous pouvez inclure plusieurs versions d’une tâche de build ou de mise en production dans votre extension. Déployez les futures versions de votre extension sans interrompre le service des utilisateurs sur les versions antérieures. Les informations suivantes montrent la disposition pour avoir plusieurs versions dans une seule extension.

Disposition traditionnelle de l'extension

  • extensionManifest.json
  • extensionIcon.png
  • Tâche1
    • task.json
    • icon.png
    • taskScript.ps1

Remarque

Lorsque vous configurez une icône de tâche, vérifiez que la valeur suivante est vraie.

  • Le nom de l’icône est icon.png
  • La taille de l’icône est de 32 x 32 pixels
  • L’icône se trouve dans le même emplacement que le fichier task.json

Disposition de plusieurs versions

Remarque

Le code recherche le fichier task.json dans le dossier des tâches, puis un niveau plus approfondi. Si l’un d’eux n’est pas trouvé dans l’un ou l’autre niveau, un message d’erreur s’affiche.

  • extensionManifest.json
  • extensionIcon.png
  • Tâche1
    • Tâche1V1
      • task.json
      • icon.png
      • taskScript.ps1
    • Tâche1V2
      • task.json
      • icon.png
      • taskScript.ps1
  • Tâche2
    • Tâche2V1
      • task.json
      • icon.png
      • taskScript.ps1
    • Tâche2V2
      • task.json
      • icon.png
      • taskScript.ps1

Conseil / Astuce

Pour vous assurer que le dossier _build/Tasks/ssrsfilesdeploy contient le contenu V1 et V2, définissez matchCopy(item, srcPath, destPath, { noRecurse: sur false dans le fichier make-util.js.