definition "pool.demands"

Anforderungen (für einen privaten Pool).

Definitionen, die auf diese Definition verweisen: Pool

Ausführungen

Implementierung BESCHREIBUNG
anforderungen: string Geben Sie eine Anforderung für einen privaten Pool an.
Anforderungen: Zeichenfolgenliste Geben Sie eine Liste der Anforderungen für einen privaten Pool an.

Bemerkungen

Verwenden Sie Anforderungen, um sicherzustellen, dass die Funktionen , die Ihre Pipeline benötigt, auf den Agents vorhanden sind, die sie ausführen. Anforderungen werden automatisch von Vorgängen oder manuell von Ihnen bestätigt.

Hinweis

Anforderungen und Funktionen sind für die Verwendung mit selbstgehosteten Agents konzipiert, damit Aufträge einem Agent zugewiesen werden können, der die Anforderungen des Auftrags erfüllt. Wenn Sie von Microsoft gehostete Agents verwenden, wählen Sie ein Bild für den Agent aus, der den Anforderungen des Auftrags entspricht. Obwohl es möglich ist, einem von Microsoft gehosteten Agent Funktionen hinzuzufügen, müssen Sie keine Funktionen mit von Microsoft gehosteten Agents verwenden.

Sie können überprüfen, ob eine Funktion vorhanden ist (Exists-Vorgang) oder sie können eine bestimmte Zeichenfolge in einer Funktion (Equals-Vorgang) überprüfen. Die Überprüfung auf das Vorhandensein einer Funktion (vorhanden) und die Überprüfung auf eine bestimmte Zeichenfolge in einer Funktion (gleich) sind die einzigen beiden unterstützten Vorgänge für Anforderungen.

Aufgabenanforderungen

Einige Aufgaben werden nicht ausgeführt, es sei denn, eine oder mehrere Anforderungen werden vom Agent erfüllt. Die Visual Studio Build-Aufgabe erfordert beispielsweise, dass msbuild sie auf dem Agent installiert und visualstudio installiert sind.

Manuell eingegebene Agentanforderungen

Möglicherweise müssen Sie selbst gehostete Agents mit speziellen Funktionen verwenden. Ihre Pipeline kann z. B. SpecialSoftware für Agents im Default Pool erfordern. Oder wenn Sie über mehrere Agents mit unterschiedlichen Betriebssystemen im selben Pool verfügen, verfügen Sie möglicherweise über eine Pipeline, die einen Linux-Agent erfordert.

Vorhandener Vorgang

Der Vorgang "Exists" sucht nach dem Vorhandensein einer Funktion mit dem spezifischen Namen. Bei dem Vergleich wird die Groß-/Kleinschreibung nicht beachtet.

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

Gleich Vorgang

Der Gleiche Vorgang überprüft das Vorhandensein einer Funktion, und wenn vorhanden, wird der Wert mit dem angegebenen Wert überprüft. Wenn die Funktion nicht vorhanden ist oder die Werte nicht übereinstimmen, wird der Vorgang als "false" ausgewertet. Bei den Vergleichen wird die Groß-/Kleinschreibung nicht beachtet.

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

Agentvariablen als Systemfunktionen

Selbst gehostete Agents verfügen über die folgenden Systemfunktionen mit ähnlichen Namen wie Agentvariablen, aber sie sind keine Variablen und erfordern keine Variablesyntax, wenn die Überprüfung vorhanden oder gleich einer Anforderung ist.

  • Agent.Name
  • Agent.Version
  • Agent.ComputerName
  • Agent.HomeDirectory
  • Agent.OS
  • Agent.OSArchitecture
  • Agent.OSVersion (nur Windows-Agents)

Agentenfähigkeits-Scannen

Wenn die Agentensoftware startet, scannt sie nach folgender Software und Tools und registriert die entsprechenden Funktionen.

Tip

Nachdem Sie eine neue Software auf einem selbstgehosteten Agent installiert haben, müssen Sie den Agent neu starten, damit die neue Funktion angezeigt wird. Weitere Informationen finden Sie unter Windows-Agent neu starten, Linux-Agent neu starten und Mac-Agent neu starten.

Auf Windows-Agenten verwendet der Agent die folgenden PowerShell-Skripte, um nach Tools und Software zu suchen, und registriert die entsprechenden Funktionen. Diese Skripte sind Teil der Open Source-Software des Agenten und befinden sich im Ordner /src/Misc/layoutbin/powershell.

Die folgende Tabelle wurde von Copilot erstellt. Copilot wird von KI unterstützt. Daher sind Überraschungen und Fehler möglich. Weitere Informationen finden Sie in den häufig gestellten Fragen zur allgemeinen Verwendung von Copilot.

Werkzeug-Scan-Skript Capabilities
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} (für Versionen 9 und später)
java_6_x64
java_7_x64
java_8_x64
java_{major}_x64 (für Versionen 9 und später)
java
jdk_6
jdk_7
jdk_8
jdk_{major} (für Versionen 9 und später)
jdk_6_x64
jdk_7_x64
jdk_8_x64
jdk_{major}_x64 (für Versionen 9 und später)
jdk

Entdeckte JDK-Distributionen umfassen Oracle JavaSoft, AdoptOpenJDK, Eclipse Adoptium, Eclipse Foundation und 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

anforderungen: string

Geben Sie eine Anforderung für einen privaten Pool an.

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

demands Zeichenfolge.

Geben Sie eine Anforderung für einen privaten Pool an.

Beispiele

Um Ihrer YAML-Buildpipeline eine einzelne Anforderung hinzuzufügen, fügen Sie die demands: Zeile zum Abschnitt pool hinzu.

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

Anforderungen: Zeichenfolgenliste

Geben Sie eine Liste der Anforderungen für einen privaten Pool an.

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

Listentypen

Typ BESCHREIBUNG
Schnur Geben Sie eine Liste der Anforderungen für einen privaten Pool an.

Beispiele

Um mehrere Anforderungen anzugeben, fügen Sie eine pro Zeile hinzu.

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

Siehe auch