azuredevops_agent_queue

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.

Example Usage

Creating a Queue from an organization-level pool

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
}

Creating a Queue at the project level (Organization-level permissions not required)

data "azuredevops_project" "example" {
  name = "Example Project"
}

resource "azuredevops_agent_queue" "example" {
  name          = "example-queue"
  project_id    = data.azuredevops_project.example.id
}

Argument Reference

The following arguments are supported:

Attributes Reference

In addition to all arguments above, the following attributes are exported:

Import

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