Manages an agent queue within Azure DevOps. In the UI, this is equivalent to adding an Organization defined pool to a project.
The created queue is not authorized for use by all pipelines in the project. However,
the azuredevops_resource_authorization
resource can be used to grant authorization.
resource "azuredevops_project" "example" {
name = "Example Project"
}
data "azuredevops_agent_pool" "example" {
name = "example-pool"
}
resource "azuredevops_agent_queue" "example" {
project_id = azuredevops_project.example.id
agent_pool_id = data.azuredevops_agent_pool.example.id
}
# Grant access to queue to all pipelines in the project
resource "azuredevops_resource_authorization" "example" {
project_id = azuredevops_project.example.id
resource_id = azuredevops_agent_queue.example.id
type = "queue"
authorized = true
}
data "azuredevops_project" "example" {
name = "Example Project"
}
resource "azuredevops_agent_queue" "example" {
name = "example-queue"
project_id = data.azuredevops_project.example.id
}
The following arguments are supported:
name
- (Optional) The name of the agent queue. Defaults to the ID of the agent pool. Conflicts with agent_pool_id
.project_id
- (Required) The ID of the project in which to create the resource.agent_pool_id
- (Optional) The ID of the organization agent pool. Conflicts with name
.In addition to all arguments above, the following attributes are exported:
id
- The ID of the agent queue reference.Azure DevOps Agent Pools can be imported using the project ID and agent queue ID, e.g.
terraform import azuredevops_agent_queue.example 00000000-0000-0000-0000-000000000000/0