共用方式為


pool.demands 定義

私人集區) 的需求 (。

參考此定義的定義: 集區

實作

實作 描述
需求:字串 指定私人集區的需求。
需求:字串清單 指定私人集區的需求清單。

備註

使用需求, 確定您的管 線需求存在於執行管線的代理程式上。 要求會由工作自動判斷,或由您手動判斷。

注意

需求和功能是設計來搭配自我裝載代理程式使用,讓作業可以與符合作業需求的代理程式相符。 使用 Microsoft 裝載的代理程式時,您會為符合作業需求的代理程式選取映射,因此雖然可以將功能新增至 Microsoft 裝載的代理程式,但不需要搭配 Microsoft 裝載的代理程式使用功能。

您可以檢查功能是否存在 (Exists 作業) ,也可以檢查功能 (Equals 作業) 中的特定字串。 檢查功能是否存在 (存在) ,而且檢查功能中的特定字串 (是否等於) 是唯一兩個支援的需求作業。

工作需求

除非代理程式符合一或多個需求,否則某些工作不會執行。 例如, Visual Studio 建置 工作會要求 msbuild 在代理程式上安裝 和 visualstudio

手動輸入的代理程式需求

您可能需要使用具有特殊功能的自我裝載代理程式。 例如,您的管線在集區中的 Default 代理程式上可能需要SpecialSoftware。 或者,如果您在相同集區中有多個具有不同作業系統的代理程式,則可能有需要 Linux 代理程式的管線。

存在作業

存在作業會檢查是否有具有特定名稱的功能。 (名稱比較不區分大小寫)。

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

等於運算

等於作業會檢查功能是否存在,如果有的話,請使用指定的值檢查其值。 如果功能不存在或值不相符,作業會評估為 false。 比較不區分大小寫。

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

代理程式變數作為系統功能

自我裝載代理程式具有類似代理程式變數名稱的下列系統功能,但它們不是變數,而且在檢查是否存在或等於需求時不需要變數語法。

  • Agent.Name
  • Agent.Version
  • Agent.ComputerName
  • Agent.HomeDirectory
  • Agent.OS
  • Agent.OSArchitecture
  • Agent.OSVersion (僅限 Windows 代理程式)

需求:字串

指定私人集區的需求。

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

demands 字串。

指定私人集區的需求。

範例

若要將單一需求新增至 YAML 組建管線,請將該 demands: 行新增至 pool 區段。

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

需求:字串清單

指定私人集區的需求清單。

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

清單類型

類型 Description
字串 指定私人集區的需求清單。

範例

若要指定多個需求,請為每個行新增一個。

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

另請參閱