pool.demands 定義

要求 (プライベート プールの場合)。

この定義を参照する定義: pool

実装

実装 説明
demands: string プライベート プールの需要を指定します。
demands: 文字列リスト プライベート プールの要求の一覧を指定します。

注釈

要求を使用して、パイプラインを実行するエージェントにパイプラインに必要な 機能 が存在することを確認します。 要求は、タスクによって自動的にアサートされるか、手動でアサートします。

注意

要求と機能はセルフホステッド エージェントで使うように設計されているので、ジョブをジョブの要件を満たすエージェントと対応付けることができます。 Microsoft ホステッド エージェントを使う場合、ジョブの要件に一致するエージェントのイメージはお客様が選ぶので、Microsoft ホステッド エージェントに機能を追加することもできますが、Microsoft ホステッド エージェントで機能を使う必要はありません。

機能の存在をチェックすることも (Exists 操作)、機能内の特定の文字列 (Equals 操作) に対してチェックすることもできます。 機能の存在 (exists) の確認と、機能内の特定の文字列 (equals) の確認は、要求でサポートされているたった 2 つの操作です。

タスクの要求

エージェントによって 1 つ以上の要求が満たされない限り、一部のタスクは実行されません。 たとえば、Visual Studio Build タスクでは、msbuildvisualstudio がエージェントにインストールされている必要があります。

手動で入力されたエージェントの要求

特殊な機能を備えたセルフホステッド エージェントを使用する必要がある場合があります。 たとえば、パイプラインで Default プール内のエージェントに SpecialSoftware が必要になる場合があります。 または、同じプール内に異なるオペレーティング システムを持つ複数のエージェントがある場合は、Linux エージェントを必要とするパイプラインがある可能性があります。

Exists 操作

存在する操作では、特定の名前の機能が存在するかどうかを確認します。 大文字と小文字は区別されません。

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

Equals 演算

equals 操作は機能の存在をチェックし、存在する場合は、指定された値でその値をチェックします。 機能が存在しない場合、または値が一致しない場合、操作は 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

プライベート プールの需要を指定します。

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

demands 文字列。

プライベート プールの需要を指定します。

YAML ビルド パイプラインに 1 つの要求を追加するには、pool セクションに demands: 行を追加します。

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

demands: 文字列リスト

プライベート プールの要求の一覧を指定します。

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

リストの種類

説明
string プライベート プールの要求の一覧を指定します。

複数の要求を指定するには、1 行に 1 つを追加します。

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

こちらもご覧ください