définition de pool.demandes

Demandes (pour un pool privé).

Définitions qui font référence à cette définition : pool

Implémentations

Implémentation Descriptif
demandes : chaîne Spécifiez une demande pour un pool privé.
demandes : liste de chaînes Spécifiez une liste de demandes pour un pool privé.

Remarques

Utilisez des demandes pour vous assurer que les fonctionnalités dont votre pipeline a besoin sont présentes sur les agents qui l’exécutent. Les demandes sont déclarées automatiquement par des tâches ou manuellement par vous.

Remarque

Les demandes et les capacités sont conçues pour être utilisées avec des agents autohébergés afin que les travaux soient attribués à un agent qui répond aux exigences du travail. Lorsque vous utilisez des agents hébergés par Microsoft, vous sélectionnez une image pour l’agent qui correspond aux exigences du travail. Par conséquent, bien qu’il soit possible d’ajouter des fonctionnalités à un agent hébergé par Microsoft, vous n’avez pas besoin d’utiliser des fonctionnalités avec des agents hébergés par Microsoft.

Vous pouvez vérifier la présence d’une fonctionnalité (opération Exists) ou rechercher une chaîne spécifique dans une fonctionnalité (opération Equals). La vérification de l’existence d’une fonctionnalité (existe) et la vérification d’une chaîne spécifique dans une fonctionnalité (égale) sont les deux seules opérations prises en charge pour les demandes.

Demandes de tâche

Certaines tâches ne s’exécutent pas, sauf si une ou plusieurs demandes sont satisfaites par l’agent. Par exemple, la tâche De build Visual Studio exige qu’elle msbuild soit visualstudio installée sur l’agent.

Demandes de l’agent entrées manuellement

Vous devrez peut-être utiliser des agents auto-hébergés avec des fonctionnalités spéciales. Par exemple, votre pipeline peut nécessiter SpecialSoftware sur les agents du Default pool. Ou, si vous avez plusieurs agents avec différents systèmes d’exploitation dans le même pool, vous pouvez avoir un pipeline qui nécessite un agent Linux.

Opération Exists

L’opération existe vérifie la présence d’une fonctionnalité portant le nom spécifique. La comparaison n’est pas sensible à la casse.

pool:
  name: MyPool
  demands: myCustomCapability # exists check for myCustomCapability

Opération égale

L’opération égale vérifie l’existence d’une fonctionnalité et, le cas échéant, vérifie sa valeur avec la valeur spécifiée. Si la fonctionnalité n’est pas présente ou si les valeurs ne correspondent pas, l’opération prend la valeur false. Les comparaisons ne respectent pas la casse.

pool:
  name: MyPool
  demands: Agent.Version -equals 2.144.0 # equals check for Agent.Version 2.144.0

Variables d’agent en tant que fonctionnalités système

Les agents auto-hébergés ont les fonctionnalités système suivantes avec des noms similaires aux variables d’agent, mais ils ne sont pas des variables et ne nécessitent pas de syntaxe de variable lors de la vérification d’existences ou égales à la demande.

  • Agent.Name
  • Agent.Version
  • Agent.ComputerName
  • Agent.HomeDirectory
  • Agent.OS
  • Agent.OSArchitecture
  • Agent.OSVersion (agents Windows uniquement)

Analyse des capacités des agents

Lorsque le logiciel agent démarre, il analyse les logiciels et outils suivants et enregistre les capacités correspondantes.

Tip

Après avoir installé un nouveau logiciel sur un agent auto-hébergé, vous devez redémarrer l’agent pour que la nouvelle capacité s’affiche. Pour plus d’informations, consultez Redémarrer l’agent Windows, Redémarrer l’agent Linux et Redémarrer l’agent Mac.

Sur les agents Windows, l’agent utilise les scripts PowerShell suivants pour scanner les outils et logiciels, et enregistre les capacités correspondantes. Ces scripts font partie du logiciel open source agent et se trouvent dans le dossier /src/Misc/layoutbin/powershell.

Le tableau suivant a été généré par Copilot. Copilot est alimenté par l’IA, donc les surprises et les erreurs sont possibles. Pour plus d’informations, consultez les FAQ sur l’utilisation générale de Copilot.

Script de balayage d’outils Capacités
Add-AndroidSdkCapabilities.ps1 AndroidSDK
AndroidSDK_{version}
Add-AntCapabilities.ps1 ant
Add-ApplicationCapabilities.ps1 npm
gulp
node.js
bower
grunt
svn
cmake
docker
Add-AzureGuestAgentCapabilities.ps1 AzureGuestAgent
Add-AzurePowerShellCapabilities.ps1 AzurePS
Add-ChefCapabilities.ps1 Chef
KnifeReporting
Add-DotNetFrameworkCapabilities.ps1 DotNetFramework_{major.minor}
DotNetFramework_{major.minor}_x64
DotNetFramework
Add-JavaCapabilities.ps1 java_6
java_7
java_8
java_{major} (pour les versions 9 et ultérieures)
java_6_x64
java_7_x64
java_8_x64
java_{major}_x64 (pour les versions 9 et ultérieures)
java
jdk_6
jdk_7
jdk_8
jdk_{major} (pour les versions 9 et ultérieures)
jdk_6_x64
jdk_7_x64
jdk_8_x64
jdk_{major}_x64 (pour les versions 9 et ultérieures)
jdk

Les distributions JDK détectées incluent Oracle JavaSoft, AdoptOpenJDK, Eclipse Adoptium, Eclipse Foundation et IBM Semeru.
Add-MavenCapabilities.ps1 maven
Add-MSBuildCapabilities.ps1 MSBuild_2.0
MSBuild_3.5
MSBuild_4.0
MSBuild_12.0
MSBuild_14.0
MSBuild_15.0
MSBuild_16.0
MSBuild_17.0
MSBuild_18.0
MSBuild
MSBuild_2.0_x64
MSBuild_3.5_x64
MSBuild_4.0_x64
MSBuild_12.0_x64
MSBuild_14.0_x64
MSBuild_15.0_x64
MSBuild_16.0_x64
MSBuild_17.0_x64
MSBuild_18.0_x64
MSBuild_x64
Add-PowerShellCapabilities.ps1 PowerShell
Add-ScvmmAdminConsoleCapabilities.ps1 SCVMMAdminConsole
Add-SqlPackageCapabilities.ps1 SqlPackage
Add-VisualStudioCapabilities.ps1 VisualStudio_10.0
VisualStudio_IDE_10.0
VisualStudio_11.0
VisualStudio_IDE_11.0
VisualStudio_12.0
VisualStudio_IDE_12.0
VSTest_12.0
VisualStudio_14.0
VisualStudio_IDE_14.0
VSTest_14.0
VisualStudio_15.0
VisualStudio_IDE_15.0
VSTest_15.0
VisualStudio_16.0
VisualStudio_IDE_16.0
VSTest_16.0
VisualStudio_17.0
VisualStudio_IDE_17.0
VSTest_17.0
VisualStudio_18.0
VisualStudio_IDE_18.0
VSTest_18.0
VisualStudio
VisualStudio_IDE
VSTest
Add-WindowsKitCapabilities.ps1 WindowsKit_{major.minor}
WindowsKit
Add-WindowsSdkCapabilities.ps1 WindowsSdk_{major.minor}
WindowsSdk_{major.minor}_{toolName}
WindowsSdk_{major.minor}_{toolName}_x64
WindowsSdk
Add-XamarinAndroidCapabilities.ps1 Xamarin.Android

demandes : chaîne

Spécifiez une demande pour un pool privé.

demands: string # Specify a demand for a private pool.

chaîne demands.

Spécifiez une demande pour un pool privé.

Exemples

Pour ajouter une demande unique à votre pipeline de build YAML, ajoutez la ligne demands: à la section pool.

pool:
  name: Default
  demands: SpecialSoftware # exists check for SpecialSoftware

demandes : liste de chaînes

Spécifiez une liste de demandes pour un pool privé.

demands: [ string ] # Specify a list of demands for a private pool.

Types de listes

Catégorie Descriptif
ficelle Spécifiez une liste de demandes pour un pool privé.

Exemples

Pour spécifier plusieurs demandes, ajoutez une par ligne.

pool:
  name: MyPool
  demands:
  - myCustomCapability   # exists check for myCustomCapability
  - Agent.Version -equals 2.144.0 # equals check for Agent.Version 2.144.0

Voir aussi