Référence : intégrer des tâches de génération personnalisées dans des extensions
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
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
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. 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.
Json de tâche de génération personnalisée
Lorsque vous créez une tâche de build ou de mise en production personnalisée avec une extension, votre extension inclut un task.json
fichier pour chaque tâche de génération ou de mise en production.
Le task.json
fichier 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.
La documentation du Kit de développement logiciel (SDK) de tâche de build/mise en production se trouve sur GitHub. Plus précisément, vous serez peut-être intéressé par le schéma task.json.
Regrouper plusieurs versions des tâches de build/mise en production au sein d’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 d’extension traditionnelle
- 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
task.json
fichier
Disposition de plusieurs versions
Remarque
Le code recherche le task.json
fichier à l’intérieur du dossier de 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
- Task1V1
- task.json
- icon.png
- taskScript.ps1
- Task1V2
- task.json
- icon.png
- taskScript.ps1
- Task1V1
- Tâche2
- Task2V1
- task.json
- icon.png
- taskScript.ps1
- Task2V2
- task.json
- icon.png
- taskScript.ps1
- Task2V1
Conseil
Pour vous assurer que le _build/Tasks/ssrsfilesdeploy
dossier contient le contenu V1 et V2, défini matchCopy(item, srcPath, destPath, { noRecurse:
false
sur le make-util.js
fichier.