Events
Mar 17, 9 PM - Mar 21, 10 AM
Join the meetup series to build scalable AI solutions based on real-world use cases with fellow developers and experts.
Register nowThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
The pool
keyword specifies which pool to use for a job of the pipeline.
A pool
specification also holds information about the job's strategy for running.
Definitions that reference this definition: pipeline, stages.stage, jobs.job, jobs.deployment, preDeployHook, deployHook, routeTrafficHook, postRouteTrafficHook, onFailureHook, onSuccessHook
Implementation | Description |
---|---|
pool: string | Specify a private pool by name. |
pool: name, demands, vmImage | Full syntax for using demands and Microsoft-hosted pools. |
Implementation | Description |
---|---|
pool: string | Specify a private pool by name. |
pool: name, demands | Which pool to use for a job of the pipeline. |
In Azure DevOps Server 2019 you can specify a pool at the job level in YAML, and at the pipeline level in the pipeline settings UI. In Azure DevOps Server 2019.1 you can also specify a pool at the pipeline level in YAML if you have a single implicit job.
You can specify a pool at the pipeline, stage, or job level.
The pool specified at the lowest level of the hierarchy is used to run the job.
Specify a private pool by name to use for a job of the pipeline.
pool: string # Specify a private pool by name.
pool
string.
Specify a private pool by name.
Use this syntax to specify a private pool by name.
Note
If your pool name has a space in it, enclose the pool name in single quotes, like pool: 'My pool'
.
To use a private pool with no demands:
pool: MyPool
Full syntax for using demands and Microsoft-hosted pools.
pool:
name: string # Name of a pool.
demands: string | [ string ] # Demands (for a private pool).
vmImage: string # Name of the VM image you want to use; valid only in the Microsoft-hosted pool.
name
string.
Name of a pool.
demands
pool.demands.
Demands (for a private pool).
vmImage
string.
Name of the VM image you want to use; valid only in the Microsoft-hosted pool.
Which pool to use for a job of the pipeline.
pool:
name: string # Name of a pool.
demands: string | [ string ] # Demands (for a private pool).
name
string.
Name of a pool.
demands
pool.demands.
Demands (for a private pool).
Specify a Microsoft-hosted pool using the vmImage
property.
If your self-hosted agent pool name has a space in it, enclose the pool name in single quotes, like name: 'My pool'
.
To use a Microsoft-hosted pool, omit the name and specify one of the available hosted images:
pool:
vmImage: ubuntu-latest
You can specify demands for a private pool using the full syntax.
To add a single demand to your YAML build pipeline, add the demands:
line to the pool
section.
pool:
name: Default
demands: SpecialSoftware # exists check for SpecialSoftware
Or if you need to add multiple demands, add one per line.
pool:
name: MyPool
demands:
- myCustomCapability # exists check for myCustomCapability
- Agent.Version -equals 2.144.0 # equals check for Agent.Version 2.144.0
Checking for the existence of a capability (exists) and checking for a specific string in a capability (equals) are the only two supported operations for demands.
The exists operation checks for the presence of a capability with the specific name. The comparison is not case sensitive.
pool:
name: MyPool
demands: myCustomCapability # exists check for myCustomCapability
The equals operation checks for the existence of a capability, and if present, checks its value with the specified value. If the capability is not present or the values don't match, the operation evaluates to false. The comparisons are not case sensitive.
pool:
name: MyPool
demands: Agent.Version -equals 2.144.0 # equals check for Agent.Version 2.144.0
Self-hosted agents have the following system capabilities with similar names to agent variables, but they are not variables and don't require variable syntax when checking for exists or equals in a demand.
For more information, see Specify demands.
Events
Mar 17, 9 PM - Mar 21, 10 AM
Join the meetup series to build scalable AI solutions based on real-world use cases with fellow developers and experts.
Register now