다음을 통해 공유


pool.demands 정의

요구 사항(프라이빗 풀의 경우).

이 정의를 참조하는 정의:

구현들

이행 설명
demands: string 프라이빗 풀에 대한 수요를 지정합니다.
demands: 문자열 목록 프라이빗 풀에 대한 요구 목록을 지정합니다.

비고

요구 사항을 사용하여 파이프라인을 실행하는 에이전트에 파이프라인에 필요한 기능이 있는지 확인합니다. 요청은 태스크에 의해 자동으로 어설션되거나 사용자가 수동으로 어설션됩니다.

비고

요구 사항 및 기능은 작업의 요구 사항을 충족하는 에이전트와 작업을 일치시킬 수 있도록 자체 호스팅 에이전트에서 사용하도록 설계되었습니다. Microsoft 호스팅 에이전트를 사용하는 경우 작업의 요구 사항과 일치하는 에이전트에 대한 이미지를 선택하므로 Microsoft 호스팅 에이전트에 기능을 추가할 수 있지만 Microsoft 호스팅 에이전트에서 기능을 사용할 필요는 없습니다.

기능의 존재 여부를 확인하거나(기존 작업) 기능에서 특정 문자열을 확인할 수 있습니다(같음 작업). 기능(존재)의 존재 여부를 확인하고 기능에서 특정 문자열(같음)을 확인하는 것은 요구 사항에 대해 지원되는 두 가지 작업뿐입니다.

작업 요구 사항

에이전트에서 하나 이상의 요구 사항을 충족하지 않는 한 일부 작업은 실행되지 않습니다. 예를 들어 Visual Studio 빌드 태스크는 msbuild 에이전트에 설치해야 하며 visualstudio 이를 요구합니다.

수동으로 입력한 에이전트 요구 사항

특수 기능이 있는 자체 호스팅 에이전트를 사용해야 할 수도 있습니다. 예를 들어 파이프라인에는 풀의 에이전트에 SpecialSoftwareDefault 필요할 수 있습니다. 또는 동일한 풀에 서로 다른 운영 체제를 가진 여러 에이전트가 있는 경우 Linux 에이전트가 필요한 파이프라인이 있을 수 있습니다.

Exists 작업

기존 작업은 특정 이름을 가진 기능이 있는지 확인합니다. 비교는 대/소문자를 구분하지 않습니다.

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

프라이빗 풀에 대한 수요를 지정합니다.

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

demands 문자열입니다.

프라이빗 풀에 대한 수요를 지정합니다.

예시

YAML 빌드 파이프라인에 단일 수요를 추가하려면 demands: 섹션에 pool 줄을 추가합니다.

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

demands: 문자열 목록

프라이빗 풀에 대한 요구 목록을 지정합니다.

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

목록 형식

유형 설명
문자열 프라이빗 풀에 대한 요구 목록을 지정합니다.

예시

여러 요구를 지정하려면 줄당 하나를 추가합니다.

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

참고하십시오