Partilhar via


Pools Microsoft.DevOpsInfrastructure 2025-09-20

Definição de recursos do bíceps

O tipo de recurso de pools pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevOpsInfrastructure/pools, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
  scope: resourceSymbolicName or scope
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    agentProfile: {
      resourcePredictions: any(...)
      resourcePredictionsProfile: {
        kind: 'string'
        // For remaining properties, see ResourcePredictionsProfile objects
      }
      kind: 'string'
      // For remaining properties, see AgentProfile objects
    }
    devCenterProjectResourceId: 'string'
    fabricProfile: {
      kind: 'string'
      // For remaining properties, see FabricProfile objects
    }
    maximumConcurrency: int
    organizationProfile: {
      kind: 'string'
      // For remaining properties, see OrganizationProfile objects
    }
    provisioningState: 'string'
    runtimeConfiguration: {
      workFolder: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Objetos AgentProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Stateful, use:

{
  gracePeriodTimeSpan: 'string'
  kind: 'Stateful'
  maxAgentLifetime: 'string'
}

Para Apátrida, use:

{
  kind: 'Stateless'
}

Objetos ResourcePredictionsProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Automático, utilize:

{
  kind: 'Automatic'
  predictionPreference: 'string'
}

Para o Manual, use:

{
  kind: 'Manual'
}

Objetos OrganizationProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para AzureDevOps, use:

{
  alias: 'string'
  kind: 'AzureDevOps'
  organizations: [
    {
      alias: 'string'
      openAccess: bool
      parallelism: int
      projects: [
        'string'
      ]
      url: 'string'
    }
  ]
  permissionProfile: {
    groups: [
      'string'
    ]
    kind: 'string'
    users: [
      'string'
    ]
  }
}

Para do GitHub, use:

{
  kind: 'GitHub'
  organizations: [
    {
      repositories: [
        'string'
      ]
      url: 'string'
    }
  ]
}

Objetos FabricProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Vmss, use:

{
  images: [
    {
      aliases: [
        'string'
      ]
      buffer: 'string'
      ephemeralType: 'string'
      resourceId: 'string'
      wellKnownImageName: 'string'
    }
  ]
  kind: 'Vmss'
  networkProfile: {
    staticIpAddressCount: int
    subnetId: 'string'
  }
  osProfile: {
    logonType: 'string'
    secretsManagementSettings: {
      certificateStoreLocation: 'string'
      certificateStoreName: 'string'
      keyExportable: bool
      observedCertificates: [
        'string'
      ]
    }
  }
  sku: {
    name: 'string'
  }
  storageProfile: {
    dataDisks: [
      {
        caching: 'string'
        diskSizeGiB: int
        driveLetter: 'string'
        storageAccountType: 'string'
      }
    ]
    osDiskStorageAccountType: 'string'
  }
}

Valores de propriedade

Microsoft.DevOpsInfrastructure/pools

Nome Description Valor
identidade As identidades de serviço gerenciado atribuídas a este recurso. ManagedServiceIdentity
localização A geolocalização onde o recurso vive string (obrigatório)
nome O nome do recurso string

Restrições:
Padrão = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obrigatório)
propriedades As propriedades específicas do recurso para este recurso. PoolProperties
âmbito Use ao criar um recurso em um escopo diferente do escopo de implantação. Defina essa propriedade como o nome simbólico de um recurso para aplicar o recurso de extensão .
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos

AgentProfile

Nome Description Valor
tipo Defina como 'Stateful' para o tipo Stateful. Defina como 'Stateless' para o tipo StatelessAgentProfile. 'Stateful'
«Apátrida» (obrigatório)
resourcePredictions Define agentes de buffer/stand-by de pool. any
resourcePredictionsProfile Define como os agentes de buffer/stand-by do pool são fornecidos. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nome Description Valor
tipo Determina como o esquema de stand-by deve ser fornecido. 'Automático' (obrigatório)
predictionPreference Determina o equilíbrio entre custo e desempenho. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Nome Description Valor
alias Um alias para fazer referência ao nome do pool de DevOps do Azure. cadeia (de caracteres)
tipo Propriedade Discriminator para OrganizationProfile. 'AzureDevOps' (obrigatório)
organizations A lista de organizações de DevOps do Azure nas quais o pool deve estar presente. Organização[] (obrigatório)
permissionProfile O tipo de permissão que determina quais contas são administradores no pool de DevOps do Azure. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nome Description Valor
groups Endereços de e-mail do grupo string[]
tipo Determina quem tem permissões de administrador para o pool de DevOps do Azure. 'CreatorOnly'
'Inherit'
'SpecificAccounts' (obrigatório)
users Endereços de e-mail do usuário string[]

Disco de dados

Nome Description Valor
colocação em cache O tipo de cache a ser habilitado para os discos de dados. O valor padrão para cache é readwrite. Para obter informações sobre as opções de cache, consulte: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'Nenhuma'
'Somente leitura'
'ReadWrite'
diskSizeGiB O tamanho inicial do disco em gigabytes. int
driveLetter A letra da unidade para o disco de dados vazio. Se não for especificado, será a primeira carta disponível. cadeia (de caracteres)
storageAccountType O tipo de conta de armazenamento a ser usado para o disco de dados. Se omitido, o padrão é "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Nome Description Valor
nome O nome da SKU do Azure das máquinas no pool. string (obrigatório)

FabricProfile

Nome Description Valor
tipo Defina como 'Vmss' para o tipo VmssFabricProfile. 'Vmss' (obrigatório)

GitHubOrganization

Nome Description Valor
repositories Lista opcional de repositórios nos quais o pool deve ser criado. string[]
URL A URL da organização do GitHub na qual o pool deve ser criado. string (obrigatório)

GitHubOrganizationProfile

Nome Description Valor
tipo Propriedade Discriminator para OrganizationProfile. 'GitHub' (obrigatório)
organizations A lista de organizações/repositórios do GitHub em que o pool deve estar presente. GitHubOrganization[] (obrigatório)

ManagedServiceIdentity

Nome Description Valor
tipo Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). 'Nenhuma'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nome Description Valor

ManualResourcePredictionsProfile

Nome Description Valor
tipo Determina como o esquema de stand-by deve ser fornecido. 'Manual' (obrigatório)

Perfil de rede

Nome Description Valor
staticIpAddressCount O número de endereços IP públicos estáticos para conexões de saída atribuídas ao pool. int
subnetId O id da sub-rede no qual colocar todas as máquinas criadas no pool. cadeia (de caracteres)

Organização

Nome Description Valor
alias Um alias para fazer referência ao nome do pool de DevOps do Azure. cadeia (de caracteres)
Acesso aberto Determina se o pool deve ter acesso aberto a todos os projetos nesta organização. bool
parallelism Quantas máquinas podem ser criadas no máximo nesta organização fora da simultaneidade máxima do pool. int
projects Lista opcional de projetos nos quais o pool deve ser criado. string[]
URL A URL da organização do Azure DevOps na qual o pool deve ser criado. string (obrigatório)

OrganizationProfile

Nome Description Valor
tipo Defina como 'AzureDevOps' para o tipo AzureDevOpsOrganizationProfile. Defina como 'GitHub' para o tipo GitHubOrganizationProfile. 'AzureDevOps'
'GitHub' (obrigatório)

OsProfile

Nome Description Valor
logonType Determina como o serviço deve ser executado. Por padrão, isso será definido como Serviço. 'Interactive'
'Serviço'
secretsManagementSettings As configurações secretas de gerenciamento das máquinas no pool. SecretsManagementSettings

PoolImage

Nome Description Valor
aliases Lista de aliases para referenciar a imagem por. string[]
colocar em memória intermédia A porcentagem do buffer a ser alocado para esta imagem. cadeia (de caracteres)
ephemeralType O tipo efêmero da imagem. 'Automático'
'CacheDisk'
'ResourceDisk'
resourceId O id de recurso da imagem. cadeia (de caracteres)
wellKnownImageName A imagem a utilizar a partir de um conhecido conjunto de imagens disponibilizadas aos clientes. cadeia (de caracteres)

PoolProperties

Nome Description Valor
agentProfile Define como a máquina será manipulada depois de executar um trabalho. AgentProfile (obrigatório)
devCenterProjectResourceId A id de recurso do Projeto DevCenter ao qual o pool pertence. string (obrigatório)
fabricProfile Define o tipo de malha em que o agente será executado. FabricProfile (obrigatório)
maximumConcurrency Define quantos recursos podem ser criados a qualquer momento. int

Restrições:
Valor mínimo = 1
Valor máximo = 10000 (obrigatório)
organizationProfile Define a organização na qual o pool será usado. OrganizationProfile (obrigatório)
provisioningState O status da operação atual. 'Aceito'
'Cancelado'
'Eliminação'
'Falhou'
'Provisionamento'
'Conseguiu'
'Atualização'
runtimeConfiguration A configuração de tempo de execução do pool. RuntimeConfiguration

ResourcePredictionsProfile

Nome Description Valor
tipo Defina como 'Automatic' para o tipo AutomaticResourcePredictionsProfile. Defina como 'Manual' para digitar ManualResourcePredictionsProfile. 'Automático'
'Manual' (obrigatório)

RuntimeConfiguration

Nome Description Valor
workFolder A pasta de trabalho de destino do agente de tarefas na máquina. cadeia (de caracteres)

SecretsManagementSettings

Nome Description Valor
certificateStoreLocation Onde armazenar certificados na máquina. cadeia (de caracteres)
certificateStoreName Nome do armazenamento de certificados a ser usado na máquina, atualmente 'Meu' e 'Raiz' são suportados. 'Meu'
'Raiz'
keyExportable Define se a chave dos certificados deve ser exportável. bool (obrigatório)
observedCertificates A lista de certificados a serem instalados em todas as máquinas do pool. string[] (obrigatório)

Stateful

Nome Description Valor
gracePeriodTimeSpan Por quanto tempo a máquina deve ser mantida por perto depois de executar uma carga de trabalho quando não há agentes em stand-by. O máximo é de uma semana. cadeia (de caracteres)
tipo Propriedade Discriminator para AgentProfile. «Com estado» (obrigatório)
maxAgentLifetime Por quanto tempo as máquinas stateful devem ser mantidas por perto. O máximo é de uma semana. cadeia (de caracteres)

StatelessAgentProfile

Nome Description Valor
tipo Propriedade Discriminator para AgentProfile. «Apátrida» (obrigatório)

Perfil de armazenamento

Nome Description Valor
dataDisks Uma lista de discos de dados vazios para anexar. DataDisk[]
osDiskStorageAccountType O nome da SKU do Azure das máquinas no pool. 'Premium'
'Padrão'
'SSD padrão'

TrackedResourceTags

Nome Description Valor

UserAssignedIdentity

Nome Description Valor

VmssFabricProfile

Nome Description Valor
images As imagens VM das máquinas no pool. PoolImage[] (obrigatório)
tipo Propriedade Discriminator para FabricProfile. 'Vmss' (obrigatório)
networkProfile O perfil de rede das máquinas no pool. Perfil de rede
osProfile O perfil do SO das máquinas no pool. OsProfile
sku A SKU do Azure das máquinas no pool. DevOpsAzureSku (obrigatório)
storageProfile O perfil de armazenamento das máquinas no pool. Perfil de armazenamento

Exemplos de uso

Módulos verificados do Azure

Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.

Módulo Description
Pool de infraestrutura de DevOps Módulo de recursos AVM para pool de infraestrutura de DevOps

Definição de recurso de modelo ARM

O tipo de recurso de pools pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevOpsInfrastructure/pools, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.DevOpsInfrastructure/pools",
  "apiVersion": "2025-09-20",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "agentProfile": {
      "resourcePredictions": {},
      "resourcePredictionsProfile": {
        "kind": "string"
        // For remaining properties, see ResourcePredictionsProfile objects
      },
      "kind": "string"
      // For remaining properties, see AgentProfile objects
    },
    "devCenterProjectResourceId": "string",
    "fabricProfile": {
      "kind": "string"
      // For remaining properties, see FabricProfile objects
    },
    "maximumConcurrency": "int",
    "organizationProfile": {
      "kind": "string"
      // For remaining properties, see OrganizationProfile objects
    },
    "provisioningState": "string",
    "runtimeConfiguration": {
      "workFolder": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Objetos AgentProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Stateful, use:

{
  "gracePeriodTimeSpan": "string",
  "kind": "Stateful",
  "maxAgentLifetime": "string"
}

Para Apátrida, use:

{
  "kind": "Stateless"
}

Objetos ResourcePredictionsProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Automático, utilize:

{
  "kind": "Automatic",
  "predictionPreference": "string"
}

Para o Manual, use:

{
  "kind": "Manual"
}

Objetos OrganizationProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para AzureDevOps, use:

{
  "alias": "string",
  "kind": "AzureDevOps",
  "organizations": [
    {
      "alias": "string",
      "openAccess": "bool",
      "parallelism": "int",
      "projects": [ "string" ],
      "url": "string"
    }
  ],
  "permissionProfile": {
    "groups": [ "string" ],
    "kind": "string",
    "users": [ "string" ]
  }
}

Para do GitHub, use:

{
  "kind": "GitHub",
  "organizations": [
    {
      "repositories": [ "string" ],
      "url": "string"
    }
  ]
}

Objetos FabricProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Vmss, use:

{
  "images": [
    {
      "aliases": [ "string" ],
      "buffer": "string",
      "ephemeralType": "string",
      "resourceId": "string",
      "wellKnownImageName": "string"
    }
  ],
  "kind": "Vmss",
  "networkProfile": {
    "staticIpAddressCount": "int",
    "subnetId": "string"
  },
  "osProfile": {
    "logonType": "string",
    "secretsManagementSettings": {
      "certificateStoreLocation": "string",
      "certificateStoreName": "string",
      "keyExportable": "bool",
      "observedCertificates": [ "string" ]
    }
  },
  "sku": {
    "name": "string"
  },
  "storageProfile": {
    "dataDisks": [
      {
        "caching": "string",
        "diskSizeGiB": "int",
        "driveLetter": "string",
        "storageAccountType": "string"
      }
    ],
    "osDiskStorageAccountType": "string"
  }
}

Valores de propriedade

Microsoft.DevOpsInfrastructure/pools

Nome Description Valor
apiVersion A versão api '2025-09-20'
identidade As identidades de serviço gerenciado atribuídas a este recurso. ManagedServiceIdentity
localização A geolocalização onde o recurso vive string (obrigatório)
nome O nome do recurso string

Restrições:
Padrão = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obrigatório)
propriedades As propriedades específicas do recurso para este recurso. PoolProperties
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos
tipo O tipo de recurso 'Microsoft.DevOpsInfrastructure/pools'

AgentProfile

Nome Description Valor
tipo Defina como 'Stateful' para o tipo Stateful. Defina como 'Stateless' para o tipo StatelessAgentProfile. 'Stateful'
«Apátrida» (obrigatório)
resourcePredictions Define agentes de buffer/stand-by de pool. any
resourcePredictionsProfile Define como os agentes de buffer/stand-by do pool são fornecidos. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nome Description Valor
tipo Determina como o esquema de stand-by deve ser fornecido. 'Automático' (obrigatório)
predictionPreference Determina o equilíbrio entre custo e desempenho. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Nome Description Valor
alias Um alias para fazer referência ao nome do pool de DevOps do Azure. cadeia (de caracteres)
tipo Propriedade Discriminator para OrganizationProfile. 'AzureDevOps' (obrigatório)
organizations A lista de organizações de DevOps do Azure nas quais o pool deve estar presente. Organização[] (obrigatório)
permissionProfile O tipo de permissão que determina quais contas são administradores no pool de DevOps do Azure. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nome Description Valor
groups Endereços de e-mail do grupo string[]
tipo Determina quem tem permissões de administrador para o pool de DevOps do Azure. 'CreatorOnly'
'Inherit'
'SpecificAccounts' (obrigatório)
users Endereços de e-mail do usuário string[]

Disco de dados

Nome Description Valor
colocação em cache O tipo de cache a ser habilitado para os discos de dados. O valor padrão para cache é readwrite. Para obter informações sobre as opções de cache, consulte: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'Nenhuma'
'Somente leitura'
'ReadWrite'
diskSizeGiB O tamanho inicial do disco em gigabytes. int
driveLetter A letra da unidade para o disco de dados vazio. Se não for especificado, será a primeira carta disponível. cadeia (de caracteres)
storageAccountType O tipo de conta de armazenamento a ser usado para o disco de dados. Se omitido, o padrão é "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Nome Description Valor
nome O nome da SKU do Azure das máquinas no pool. string (obrigatório)

FabricProfile

Nome Description Valor
tipo Defina como 'Vmss' para o tipo VmssFabricProfile. 'Vmss' (obrigatório)

GitHubOrganization

Nome Description Valor
repositories Lista opcional de repositórios nos quais o pool deve ser criado. string[]
URL A URL da organização do GitHub na qual o pool deve ser criado. string (obrigatório)

GitHubOrganizationProfile

Nome Description Valor
tipo Propriedade Discriminator para OrganizationProfile. 'GitHub' (obrigatório)
organizations A lista de organizações/repositórios do GitHub em que o pool deve estar presente. GitHubOrganization[] (obrigatório)

ManagedServiceIdentity

Nome Description Valor
tipo Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). 'Nenhuma'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nome Description Valor

ManualResourcePredictionsProfile

Nome Description Valor
tipo Determina como o esquema de stand-by deve ser fornecido. 'Manual' (obrigatório)

Perfil de rede

Nome Description Valor
staticIpAddressCount O número de endereços IP públicos estáticos para conexões de saída atribuídas ao pool. int
subnetId O id da sub-rede no qual colocar todas as máquinas criadas no pool. cadeia (de caracteres)

Organização

Nome Description Valor
alias Um alias para fazer referência ao nome do pool de DevOps do Azure. cadeia (de caracteres)
Acesso aberto Determina se o pool deve ter acesso aberto a todos os projetos nesta organização. bool
parallelism Quantas máquinas podem ser criadas no máximo nesta organização fora da simultaneidade máxima do pool. int
projects Lista opcional de projetos nos quais o pool deve ser criado. string[]
URL A URL da organização do Azure DevOps na qual o pool deve ser criado. string (obrigatório)

OrganizationProfile

Nome Description Valor
tipo Defina como 'AzureDevOps' para o tipo AzureDevOpsOrganizationProfile. Defina como 'GitHub' para o tipo GitHubOrganizationProfile. 'AzureDevOps'
'GitHub' (obrigatório)

OsProfile

Nome Description Valor
logonType Determina como o serviço deve ser executado. Por padrão, isso será definido como Serviço. 'Interactive'
'Serviço'
secretsManagementSettings As configurações secretas de gerenciamento das máquinas no pool. SecretsManagementSettings

PoolImage

Nome Description Valor
aliases Lista de aliases para referenciar a imagem por. string[]
colocar em memória intermédia A porcentagem do buffer a ser alocado para esta imagem. cadeia (de caracteres)
ephemeralType O tipo efêmero da imagem. 'Automático'
'CacheDisk'
'ResourceDisk'
resourceId O id de recurso da imagem. cadeia (de caracteres)
wellKnownImageName A imagem a utilizar a partir de um conhecido conjunto de imagens disponibilizadas aos clientes. cadeia (de caracteres)

PoolProperties

Nome Description Valor
agentProfile Define como a máquina será manipulada depois de executar um trabalho. AgentProfile (obrigatório)
devCenterProjectResourceId A id de recurso do Projeto DevCenter ao qual o pool pertence. string (obrigatório)
fabricProfile Define o tipo de malha em que o agente será executado. FabricProfile (obrigatório)
maximumConcurrency Define quantos recursos podem ser criados a qualquer momento. int

Restrições:
Valor mínimo = 1
Valor máximo = 10000 (obrigatório)
organizationProfile Define a organização na qual o pool será usado. OrganizationProfile (obrigatório)
provisioningState O status da operação atual. 'Aceito'
'Cancelado'
'Eliminação'
'Falhou'
'Provisionamento'
'Conseguiu'
'Atualização'
runtimeConfiguration A configuração de tempo de execução do pool. RuntimeConfiguration

ResourcePredictionsProfile

Nome Description Valor
tipo Defina como 'Automatic' para o tipo AutomaticResourcePredictionsProfile. Defina como 'Manual' para digitar ManualResourcePredictionsProfile. 'Automático'
'Manual' (obrigatório)

RuntimeConfiguration

Nome Description Valor
workFolder A pasta de trabalho de destino do agente de tarefas na máquina. cadeia (de caracteres)

SecretsManagementSettings

Nome Description Valor
certificateStoreLocation Onde armazenar certificados na máquina. cadeia (de caracteres)
certificateStoreName Nome do armazenamento de certificados a ser usado na máquina, atualmente 'Meu' e 'Raiz' são suportados. 'Meu'
'Raiz'
keyExportable Define se a chave dos certificados deve ser exportável. bool (obrigatório)
observedCertificates A lista de certificados a serem instalados em todas as máquinas do pool. string[] (obrigatório)

Stateful

Nome Description Valor
gracePeriodTimeSpan Por quanto tempo a máquina deve ser mantida por perto depois de executar uma carga de trabalho quando não há agentes em stand-by. O máximo é de uma semana. cadeia (de caracteres)
tipo Propriedade Discriminator para AgentProfile. «Com estado» (obrigatório)
maxAgentLifetime Por quanto tempo as máquinas stateful devem ser mantidas por perto. O máximo é de uma semana. cadeia (de caracteres)

StatelessAgentProfile

Nome Description Valor
tipo Propriedade Discriminator para AgentProfile. «Apátrida» (obrigatório)

Perfil de armazenamento

Nome Description Valor
dataDisks Uma lista de discos de dados vazios para anexar. DataDisk[]
osDiskStorageAccountType O nome da SKU do Azure das máquinas no pool. 'Premium'
'Padrão'
'SSD padrão'

TrackedResourceTags

Nome Description Valor

UserAssignedIdentity

Nome Description Valor

VmssFabricProfile

Nome Description Valor
images As imagens VM das máquinas no pool. PoolImage[] (obrigatório)
tipo Propriedade Discriminator para FabricProfile. 'Vmss' (obrigatório)
networkProfile O perfil de rede das máquinas no pool. Perfil de rede
osProfile O perfil do SO das máquinas no pool. OsProfile
sku A SKU do Azure das máquinas no pool. DevOpsAzureSku (obrigatório)
storageProfile O perfil de armazenamento das máquinas no pool. Perfil de armazenamento

Exemplos de uso

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso de pools pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevOpsInfrastructure/pools, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DevOpsInfrastructure/pools@2025-09-20"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      agentProfile = {
        resourcePredictions = ?
        resourcePredictionsProfile = {
          kind = "string"
          // For remaining properties, see ResourcePredictionsProfile objects
        }
        kind = "string"
        // For remaining properties, see AgentProfile objects
      }
      devCenterProjectResourceId = "string"
      fabricProfile = {
        kind = "string"
        // For remaining properties, see FabricProfile objects
      }
      maximumConcurrency = int
      organizationProfile = {
        kind = "string"
        // For remaining properties, see OrganizationProfile objects
      }
      provisioningState = "string"
      runtimeConfiguration = {
        workFolder = "string"
      }
    }
  }
}

Objetos AgentProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Stateful, use:

{
  gracePeriodTimeSpan = "string"
  kind = "Stateful"
  maxAgentLifetime = "string"
}

Para Apátrida, use:

{
  kind = "Stateless"
}

Objetos ResourcePredictionsProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Automático, utilize:

{
  kind = "Automatic"
  predictionPreference = "string"
}

Para o Manual, use:

{
  kind = "Manual"
}

Objetos OrganizationProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para AzureDevOps, use:

{
  alias = "string"
  kind = "AzureDevOps"
  organizations = [
    {
      alias = "string"
      openAccess = bool
      parallelism = int
      projects = [
        "string"
      ]
      url = "string"
    }
  ]
  permissionProfile = {
    groups = [
      "string"
    ]
    kind = "string"
    users = [
      "string"
    ]
  }
}

Para do GitHub, use:

{
  kind = "GitHub"
  organizations = [
    {
      repositories = [
        "string"
      ]
      url = "string"
    }
  ]
}

Objetos FabricProfile

Defina a propriedade kind para especificar o tipo de objeto.

Para Vmss, use:

{
  images = [
    {
      aliases = [
        "string"
      ]
      buffer = "string"
      ephemeralType = "string"
      resourceId = "string"
      wellKnownImageName = "string"
    }
  ]
  kind = "Vmss"
  networkProfile = {
    staticIpAddressCount = int
    subnetId = "string"
  }
  osProfile = {
    logonType = "string"
    secretsManagementSettings = {
      certificateStoreLocation = "string"
      certificateStoreName = "string"
      keyExportable = bool
      observedCertificates = [
        "string"
      ]
    }
  }
  sku = {
    name = "string"
  }
  storageProfile = {
    dataDisks = [
      {
        caching = "string"
        diskSizeGiB = int
        driveLetter = "string"
        storageAccountType = "string"
      }
    ]
    osDiskStorageAccountType = "string"
  }
}

Valores de propriedade

Microsoft.DevOpsInfrastructure/pools

Nome Description Valor
identidade As identidades de serviço gerenciado atribuídas a este recurso. ManagedServiceIdentity
localização A geolocalização onde o recurso vive string (obrigatório)
nome O nome do recurso string

Restrições:
Padrão = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obrigatório)
parent_id A ID do recurso ao qual aplicar esse recurso de extensão. string (obrigatório)
propriedades As propriedades específicas do recurso para este recurso. PoolProperties
tags Etiquetas de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft.DevOpsInfrastructure/pools@2025-09-20"

AgentProfile

Nome Description Valor
tipo Defina como 'Stateful' para o tipo Stateful. Defina como 'Stateless' para o tipo StatelessAgentProfile. 'Stateful'
«Apátrida» (obrigatório)
resourcePredictions Define agentes de buffer/stand-by de pool. any
resourcePredictionsProfile Define como os agentes de buffer/stand-by do pool são fornecidos. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nome Description Valor
tipo Determina como o esquema de stand-by deve ser fornecido. 'Automático' (obrigatório)
predictionPreference Determina o equilíbrio entre custo e desempenho. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Nome Description Valor
alias Um alias para fazer referência ao nome do pool de DevOps do Azure. cadeia (de caracteres)
tipo Propriedade Discriminator para OrganizationProfile. 'AzureDevOps' (obrigatório)
organizations A lista de organizações de DevOps do Azure nas quais o pool deve estar presente. Organização[] (obrigatório)
permissionProfile O tipo de permissão que determina quais contas são administradores no pool de DevOps do Azure. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nome Description Valor
groups Endereços de e-mail do grupo string[]
tipo Determina quem tem permissões de administrador para o pool de DevOps do Azure. 'CreatorOnly'
'Inherit'
'SpecificAccounts' (obrigatório)
users Endereços de e-mail do usuário string[]

Disco de dados

Nome Description Valor
colocação em cache O tipo de cache a ser habilitado para os discos de dados. O valor padrão para cache é readwrite. Para obter informações sobre as opções de cache, consulte: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'Nenhuma'
'Somente leitura'
'ReadWrite'
diskSizeGiB O tamanho inicial do disco em gigabytes. int
driveLetter A letra da unidade para o disco de dados vazio. Se não for especificado, será a primeira carta disponível. cadeia (de caracteres)
storageAccountType O tipo de conta de armazenamento a ser usado para o disco de dados. Se omitido, o padrão é "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Nome Description Valor
nome O nome da SKU do Azure das máquinas no pool. string (obrigatório)

FabricProfile

Nome Description Valor
tipo Defina como 'Vmss' para o tipo VmssFabricProfile. 'Vmss' (obrigatório)

GitHubOrganization

Nome Description Valor
repositories Lista opcional de repositórios nos quais o pool deve ser criado. string[]
URL A URL da organização do GitHub na qual o pool deve ser criado. string (obrigatório)

GitHubOrganizationProfile

Nome Description Valor
tipo Propriedade Discriminator para OrganizationProfile. 'GitHub' (obrigatório)
organizations A lista de organizações/repositórios do GitHub em que o pool deve estar presente. GitHubOrganization[] (obrigatório)

ManagedServiceIdentity

Nome Description Valor
tipo Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). 'Nenhuma'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nome Description Valor

ManualResourcePredictionsProfile

Nome Description Valor
tipo Determina como o esquema de stand-by deve ser fornecido. 'Manual' (obrigatório)

Perfil de rede

Nome Description Valor
staticIpAddressCount O número de endereços IP públicos estáticos para conexões de saída atribuídas ao pool. int
subnetId O id da sub-rede no qual colocar todas as máquinas criadas no pool. cadeia (de caracteres)

Organização

Nome Description Valor
alias Um alias para fazer referência ao nome do pool de DevOps do Azure. cadeia (de caracteres)
Acesso aberto Determina se o pool deve ter acesso aberto a todos os projetos nesta organização. bool
parallelism Quantas máquinas podem ser criadas no máximo nesta organização fora da simultaneidade máxima do pool. int
projects Lista opcional de projetos nos quais o pool deve ser criado. string[]
URL A URL da organização do Azure DevOps na qual o pool deve ser criado. string (obrigatório)

OrganizationProfile

Nome Description Valor
tipo Defina como 'AzureDevOps' para o tipo AzureDevOpsOrganizationProfile. Defina como 'GitHub' para o tipo GitHubOrganizationProfile. 'AzureDevOps'
'GitHub' (obrigatório)

OsProfile

Nome Description Valor
logonType Determina como o serviço deve ser executado. Por padrão, isso será definido como Serviço. 'Interactive'
'Serviço'
secretsManagementSettings As configurações secretas de gerenciamento das máquinas no pool. SecretsManagementSettings

PoolImage

Nome Description Valor
aliases Lista de aliases para referenciar a imagem por. string[]
colocar em memória intermédia A porcentagem do buffer a ser alocado para esta imagem. cadeia (de caracteres)
ephemeralType O tipo efêmero da imagem. 'Automático'
'CacheDisk'
'ResourceDisk'
resourceId O id de recurso da imagem. cadeia (de caracteres)
wellKnownImageName A imagem a utilizar a partir de um conhecido conjunto de imagens disponibilizadas aos clientes. cadeia (de caracteres)

PoolProperties

Nome Description Valor
agentProfile Define como a máquina será manipulada depois de executar um trabalho. AgentProfile (obrigatório)
devCenterProjectResourceId A id de recurso do Projeto DevCenter ao qual o pool pertence. string (obrigatório)
fabricProfile Define o tipo de malha em que o agente será executado. FabricProfile (obrigatório)
maximumConcurrency Define quantos recursos podem ser criados a qualquer momento. int

Restrições:
Valor mínimo = 1
Valor máximo = 10000 (obrigatório)
organizationProfile Define a organização na qual o pool será usado. OrganizationProfile (obrigatório)
provisioningState O status da operação atual. 'Aceito'
'Cancelado'
'Eliminação'
'Falhou'
'Provisionamento'
'Conseguiu'
'Atualização'
runtimeConfiguration A configuração de tempo de execução do pool. RuntimeConfiguration

ResourcePredictionsProfile

Nome Description Valor
tipo Defina como 'Automatic' para o tipo AutomaticResourcePredictionsProfile. Defina como 'Manual' para digitar ManualResourcePredictionsProfile. 'Automático'
'Manual' (obrigatório)

RuntimeConfiguration

Nome Description Valor
workFolder A pasta de trabalho de destino do agente de tarefas na máquina. cadeia (de caracteres)

SecretsManagementSettings

Nome Description Valor
certificateStoreLocation Onde armazenar certificados na máquina. cadeia (de caracteres)
certificateStoreName Nome do armazenamento de certificados a ser usado na máquina, atualmente 'Meu' e 'Raiz' são suportados. 'Meu'
'Raiz'
keyExportable Define se a chave dos certificados deve ser exportável. bool (obrigatório)
observedCertificates A lista de certificados a serem instalados em todas as máquinas do pool. string[] (obrigatório)

Stateful

Nome Description Valor
gracePeriodTimeSpan Por quanto tempo a máquina deve ser mantida por perto depois de executar uma carga de trabalho quando não há agentes em stand-by. O máximo é de uma semana. cadeia (de caracteres)
tipo Propriedade Discriminator para AgentProfile. «Com estado» (obrigatório)
maxAgentLifetime Por quanto tempo as máquinas stateful devem ser mantidas por perto. O máximo é de uma semana. cadeia (de caracteres)

StatelessAgentProfile

Nome Description Valor
tipo Propriedade Discriminator para AgentProfile. «Apátrida» (obrigatório)

Perfil de armazenamento

Nome Description Valor
dataDisks Uma lista de discos de dados vazios para anexar. DataDisk[]
osDiskStorageAccountType O nome da SKU do Azure das máquinas no pool. 'Premium'
'Padrão'
'SSD padrão'

TrackedResourceTags

Nome Description Valor

UserAssignedIdentity

Nome Description Valor

VmssFabricProfile

Nome Description Valor
images As imagens VM das máquinas no pool. PoolImage[] (obrigatório)
tipo Propriedade Discriminator para FabricProfile. 'Vmss' (obrigatório)
networkProfile O perfil de rede das máquinas no pool. Perfil de rede
osProfile O perfil do SO das máquinas no pool. OsProfile
sku A SKU do Azure das máquinas no pool. DevOpsAzureSku (obrigatório)
storageProfile O perfil de armazenamento das máquinas no pool. Perfil de armazenamento

Exemplos de uso

Módulos verificados do Azure

Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.

Módulo Description
DevOps Pools Módulo de recursos AVM para pools de DevOps