Compartir a través de


Grupos de Microsoft.DevOpsInfrastructure 2025-09-20

Definición de recursos de Bicep

El tipo de recurso pools se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.DevOpsInfrastructure/pools, agregue el siguiente bicep a la plantilla.

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

Establezca la propiedad de tipo para especificar el tipo de objeto.

Para Stateful, use:

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

Para Stateless, use:

{
  kind: 'Stateless'
}

Objetos ResourcePredictionsProfile

Establezca la propiedad de tipo para especificar el tipo de objeto.

Para Automático, use:

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

Para Manual, use:

{
  kind: 'Manual'
}

Objetos OrganizationProfile

Establezca la propiedad de tipo para especificar el 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 gitHub, use:

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

Objetos FabricProfile

Establezca la propiedad de tipo para especificar el 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 propiedad

Microsoft.DevOpsInfrastructure/pools

Nombre Description Importancia
identity Identidades de servicio administradas asignadas a este recurso. managedServiceIdentity
location Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso string

Restricciones:
Patrón = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obligatorio)
Propiedades Propiedades específicas del recurso para este recurso. PoolProperties
scope Use al crear un recurso en un ámbito diferente del ámbito de implementación. Establezca esta propiedad en el nombre simbólico de un recurso para aplicar el recurso de extensión .
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas

AgentProfile

Nombre Description Importancia
amable Establézcalo en "Stateful" para el tipo Stateful. Establézcalo en 'Stateless' para el tipo StatelessAgentProfile. 'Stateful'
'Apátrida' (obligatorio)
resourcePredictions Define los agentes de búfer de grupo o de stand-by. cualquiera
resourcePredictionsProfile Define cómo se proporcionan los agentes de búfer o de espera del grupo. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nombre Description Importancia
amable Determina cómo se debe proporcionar el esquema stand-by. 'Automático' (obligatorio)
predictionPreference Determina el equilibrio entre el costo y el rendimiento. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Nombre Description Importancia
alias Un alias para hacer referencia al nombre del grupo de Azure DevOps. cuerda / cadena
amable Propiedad Discriminador para OrganizationProfile. 'AzureDevOps' (obligatorio)
organizations La lista de organizaciones de Azure DevOps en las que debe estar presente el grupo. Organización[] (obligatorio)
permissionProfile Tipo de permiso que determina qué cuentas son administradores en el grupo de Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nombre Description Importancia
groups Direcciones de correo electrónico de grupo string[]
amable Determina quién tiene permisos de administrador para el grupo de Azure DevOps. 'CreatorOnly'
'Inherit'
'SpecificAccounts' (obligatorio)
users Direcciones de correo electrónico de usuario string[]

Disco de datos

Nombre Description Importancia
caching Tipo de almacenamiento en caché que se va a habilitar para los discos de datos. El valor predeterminado para el almacenamiento en caché es readwrite. Para obtener información sobre las opciones de almacenamiento en caché, consulte: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'None'
'Solo lectura'
"ReadWrite"
diskSizeGiB Tamaño inicial del disco en gigabytes. int
driveLetter Letra de unidad del disco de datos vacío. Si no se especifica, será la primera letra disponible. cuerda / cadena
storageAccountType Tipo de cuenta de almacenamiento que se va a usar para el disco de datos. Si se omite, el valor predeterminado es "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Nombre Description Importancia
nombre Nombre de la SKU de Azure de las máquinas del grupo. string (obligatorio)

FabricProfile

Nombre Description Importancia
amable Establézcalo en "Vmss" para el tipo VmssFabricProfile. 'Vmss' (obligatorio)

GitHubOrganization

Nombre Description Importancia
repositories Lista opcional de repositorios en los que se debe crear el grupo. string[]
URL Dirección URL de la organización de GitHub en la que se debe crear el grupo. string (obligatorio)

GitHubOrganizationProfile

Nombre Description Importancia
amable Propiedad Discriminador para OrganizationProfile. 'GitHub' (obligatorio)
organizations La lista de organizaciones o repositorios de GitHub en los que debe estar presente el grupo. GitHubOrganization[] (obligatorio)

Identidad de Servicio Gestionado

Nombre Description Importancia
type Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatorio)
userAssignedIdentities Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves de diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. managedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nombre Description Importancia

ManualResourcePredictionsProfile

Nombre Description Importancia
amable Determina cómo se debe proporcionar el esquema stand-by. 'Manual' (obligatorio)

Perfil de red

Nombre Description Importancia
staticIpAddressCount El número de direcciones IP públicas estáticas para las conexiones salientes asignadas al grupo. int
subnetId Identificador de subred en el que se van a colocar todas las máquinas creadas en el grupo. cuerda / cadena

Organización

Nombre Description Importancia
alias Un alias para hacer referencia al nombre del grupo de Azure DevOps. cuerda / cadena
openAccess Determina si el grupo debe tener acceso abierto a todos los proyectos de esta organización. bool
parallelism Número máximo de máquinas que se pueden crear en esta organización fuera de la máxima simultaneidad del grupo. int
projects Lista opcional de proyectos en los que se debe crear el grupo. string[]
URL Dirección URL de la organización de Azure DevOps en la que se debe crear el grupo. string (obligatorio)

OrganizationProfile

Nombre Description Importancia
amable Establézcalo en "AzureDevOps" para el tipo AzureDevOpsOrganizationProfile. Establézcalo en "GitHub" para el tipo GitHubOrganizationProfile. 'AzureDevOps'
'GitHub' (obligatorio)

OsProfile

Nombre Description Importancia
logonType Determina cómo se debe ejecutar el servicio. De forma predeterminada, se establecerá en Servicio. 'Interactive'
"Servicio"
secretsManagementSettings Configuración de administración de secretos de las máquinas del grupo. SecretsManagementSettings

PoolImage

Nombre Description Importancia
aliases Lista de alias por los que hacer referencia a la imagen. string[]
buffer Porcentaje del búfer que se va a asignar a esta imagen. cuerda / cadena
ephemeralType Tipo efímero de la imagen. 'Automático'
'CacheDisk'
'ResourceDisk'
resourceId Identificador de recurso de la imagen. cuerda / cadena
wellKnownImageName Imagen que se va a usar desde un conjunto conocido de imágenes que están disponibles para los clientes. cuerda / cadena

PoolProperties (Propiedades de la piscina)

Nombre Description Importancia
agentProfile Define cómo se controlará la máquina una vez que ejecutó un trabajo. AgentProfile (obligatorio)
devCenterProjectResourceId Identificador de recurso del proyecto de DevCenter al que pertenece el grupo. string (obligatorio)
tejidoPerfil Define el tipo de tejido en el que se ejecutará el agente. FabricProfile (obligatorio)
maximumConcurrency Define el número de recursos que se pueden crear en un momento dado. int

Restricciones:
Valor mínimo = 1
Valor máximo = 10000 (obligatorio)
organizationProfile Define la organización en la que se usará el grupo. OrganizationProfile (obligatorio)
provisioningState Estado de la operación actual. 'Aceptado'
'Cancelado'
"Eliminar"
'Error'
"Aprovisionamiento"
"Correcto"
"Actualización"
configuración de tiempo de ejecución La configuración en tiempo de ejecución del grupo. Configuración en tiempo de ejecución

ResourcePredictionsProfile

Nombre Description Importancia
amable Establézcalo en "Automático" para el tipo AutomaticResourcePredictionsProfile. Establézcalo en "Manual" para el tipo ManualResourcePredictionsProfile. 'Automático'
'Manual' (obligatorio)

Configuración en tiempo de ejecución

Nombre Description Importancia
workFolder La carpeta de trabajo de destino del agente de tareas en la máquina. cuerda / cadena

SecretsManagementSettings

Nombre Description Importancia
certificateStoreLocation Dónde almacenar certificados en la máquina. cuerda / cadena
certificateStoreName Nombre del almacén de certificados que se va a usar en la máquina, actualmente se admiten "My" y "Root". "Mi"
'Raíz'
keyExportable Define si la clave de los certificados debe ser exportable. bool (obligatorio)
observedCertificates Lista de certificados que se van a instalar en todas las máquinas del grupo. string[] (obligatorio)

Stateful

Nombre Description Importancia
gracePeriodTimeSpan Cuánto tiempo debe mantenerse la máquina después de ejecutar una carga de trabajo cuando no hay ningún agente independiente. El máximo es una semana. cuerda / cadena
amable Propiedad Discriminador para AgentProfile. 'Stateful' (obligatorio)
maxAgentLifetime Cuánto tiempo deben mantenerse las máquinas con estado. El máximo es una semana. cuerda / cadena

StatelessAgentProfile

Nombre Description Importancia
amable Propiedad Discriminador para AgentProfile. 'Apátrida' (obligatorio)

StorageProfile

Nombre Description Importancia
dataDisks Lista de discos de datos vacíos que se van a conectar. DataDisk []
osDiskStorageAccountType Nombre de la SKU de Azure de las máquinas del grupo. 'Premium'
'Estándar'
"StandardSSD"

TrackedResourceTags

Nombre Description Importancia

UserAssignedIdentity

Nombre Description Importancia

VmssFabricProfile

Nombre Description Importancia
images Imágenes de máquina virtual de las máquinas del grupo. PoolImage[] (obligatorio)
amable Propiedad Discriminador para FabricProfile. 'Vmss' (obligatorio)
networkProfile Perfil de red de las máquinas del grupo. networkProfile de
osProfile Perfil del sistema operativo de las máquinas del grupo. OsProfile
sku SKU de Azure de las máquinas del grupo. DevOpsAzureSku (obligatorio)
storageProfile Perfil de almacenamiento de las máquinas del grupo. storageProfile

Ejemplos de uso

Módulos comprobados de Azure

Los siguientes módulos comprobados de Azure se pueden usar para implementar este tipo de recurso.

Módulo Description
Grupo de infraestructura de DevOps Módulo de recursos de AVM para el grupo de infraestructura de DevOps

Definición de recursos de plantilla de ARM

El tipo de recurso pools se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.DevOpsInfrastructure/pools, agregue el siguiente JSON a la plantilla.

{
  "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

Establezca la propiedad de tipo para especificar el tipo de objeto.

Para Stateful, use:

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

Para Stateless, use:

{
  "kind": "Stateless"
}

Objetos ResourcePredictionsProfile

Establezca la propiedad de tipo para especificar el tipo de objeto.

Para Automático, use:

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

Para Manual, use:

{
  "kind": "Manual"
}

Objetos OrganizationProfile

Establezca la propiedad de tipo para especificar el 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 gitHub, use:

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

Objetos FabricProfile

Establezca la propiedad de tipo para especificar el 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 propiedad

Microsoft.DevOpsInfrastructure/pools

Nombre Description Importancia
apiVersion La versión de api '2025-09-20'
identity Identidades de servicio administradas asignadas a este recurso. managedServiceIdentity
location Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso string

Restricciones:
Patrón = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obligatorio)
Propiedades Propiedades específicas del recurso para este recurso. PoolProperties
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
type El tipo de recurso 'Microsoft.DevOpsInfrastructure/pools'

AgentProfile

Nombre Description Importancia
amable Establézcalo en "Stateful" para el tipo Stateful. Establézcalo en 'Stateless' para el tipo StatelessAgentProfile. 'Stateful'
'Apátrida' (obligatorio)
resourcePredictions Define los agentes de búfer de grupo o de stand-by. cualquiera
resourcePredictionsProfile Define cómo se proporcionan los agentes de búfer o de espera del grupo. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nombre Description Importancia
amable Determina cómo se debe proporcionar el esquema stand-by. 'Automático' (obligatorio)
predictionPreference Determina el equilibrio entre el costo y el rendimiento. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Nombre Description Importancia
alias Un alias para hacer referencia al nombre del grupo de Azure DevOps. cuerda / cadena
amable Propiedad Discriminador para OrganizationProfile. 'AzureDevOps' (obligatorio)
organizations La lista de organizaciones de Azure DevOps en las que debe estar presente el grupo. Organización[] (obligatorio)
permissionProfile Tipo de permiso que determina qué cuentas son administradores en el grupo de Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nombre Description Importancia
groups Direcciones de correo electrónico de grupo string[]
amable Determina quién tiene permisos de administrador para el grupo de Azure DevOps. 'CreatorOnly'
'Inherit'
'SpecificAccounts' (obligatorio)
users Direcciones de correo electrónico de usuario string[]

Disco de datos

Nombre Description Importancia
caching Tipo de almacenamiento en caché que se va a habilitar para los discos de datos. El valor predeterminado para el almacenamiento en caché es readwrite. Para obtener información sobre las opciones de almacenamiento en caché, consulte: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'None'
'Solo lectura'
"ReadWrite"
diskSizeGiB Tamaño inicial del disco en gigabytes. int
driveLetter Letra de unidad del disco de datos vacío. Si no se especifica, será la primera letra disponible. cuerda / cadena
storageAccountType Tipo de cuenta de almacenamiento que se va a usar para el disco de datos. Si se omite, el valor predeterminado es "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Nombre Description Importancia
nombre Nombre de la SKU de Azure de las máquinas del grupo. string (obligatorio)

FabricProfile

Nombre Description Importancia
amable Establézcalo en "Vmss" para el tipo VmssFabricProfile. 'Vmss' (obligatorio)

GitHubOrganization

Nombre Description Importancia
repositories Lista opcional de repositorios en los que se debe crear el grupo. string[]
URL Dirección URL de la organización de GitHub en la que se debe crear el grupo. string (obligatorio)

GitHubOrganizationProfile

Nombre Description Importancia
amable Propiedad Discriminador para OrganizationProfile. 'GitHub' (obligatorio)
organizations La lista de organizaciones o repositorios de GitHub en los que debe estar presente el grupo. GitHubOrganization[] (obligatorio)

Identidad de Servicio Gestionado

Nombre Description Importancia
type Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatorio)
userAssignedIdentities Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves de diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. managedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nombre Description Importancia

ManualResourcePredictionsProfile

Nombre Description Importancia
amable Determina cómo se debe proporcionar el esquema stand-by. 'Manual' (obligatorio)

Perfil de red

Nombre Description Importancia
staticIpAddressCount El número de direcciones IP públicas estáticas para las conexiones salientes asignadas al grupo. int
subnetId Identificador de subred en el que se van a colocar todas las máquinas creadas en el grupo. cuerda / cadena

Organización

Nombre Description Importancia
alias Un alias para hacer referencia al nombre del grupo de Azure DevOps. cuerda / cadena
openAccess Determina si el grupo debe tener acceso abierto a todos los proyectos de esta organización. bool
parallelism Número máximo de máquinas que se pueden crear en esta organización fuera de la máxima simultaneidad del grupo. int
projects Lista opcional de proyectos en los que se debe crear el grupo. string[]
URL Dirección URL de la organización de Azure DevOps en la que se debe crear el grupo. string (obligatorio)

OrganizationProfile

Nombre Description Importancia
amable Establézcalo en "AzureDevOps" para el tipo AzureDevOpsOrganizationProfile. Establézcalo en "GitHub" para el tipo GitHubOrganizationProfile. 'AzureDevOps'
'GitHub' (obligatorio)

OsProfile

Nombre Description Importancia
logonType Determina cómo se debe ejecutar el servicio. De forma predeterminada, se establecerá en Servicio. 'Interactive'
"Servicio"
secretsManagementSettings Configuración de administración de secretos de las máquinas del grupo. SecretsManagementSettings

PoolImage

Nombre Description Importancia
aliases Lista de alias por los que hacer referencia a la imagen. string[]
buffer Porcentaje del búfer que se va a asignar a esta imagen. cuerda / cadena
ephemeralType Tipo efímero de la imagen. 'Automático'
'CacheDisk'
'ResourceDisk'
resourceId Identificador de recurso de la imagen. cuerda / cadena
wellKnownImageName Imagen que se va a usar desde un conjunto conocido de imágenes que están disponibles para los clientes. cuerda / cadena

PoolProperties (Propiedades de la piscina)

Nombre Description Importancia
agentProfile Define cómo se controlará la máquina una vez que ejecutó un trabajo. AgentProfile (obligatorio)
devCenterProjectResourceId Identificador de recurso del proyecto de DevCenter al que pertenece el grupo. string (obligatorio)
tejidoPerfil Define el tipo de tejido en el que se ejecutará el agente. FabricProfile (obligatorio)
maximumConcurrency Define el número de recursos que se pueden crear en un momento dado. int

Restricciones:
Valor mínimo = 1
Valor máximo = 10000 (obligatorio)
organizationProfile Define la organización en la que se usará el grupo. OrganizationProfile (obligatorio)
provisioningState Estado de la operación actual. 'Aceptado'
'Cancelado'
"Eliminar"
'Error'
"Aprovisionamiento"
"Correcto"
"Actualización"
configuración de tiempo de ejecución La configuración en tiempo de ejecución del grupo. Configuración en tiempo de ejecución

ResourcePredictionsProfile

Nombre Description Importancia
amable Establézcalo en "Automático" para el tipo AutomaticResourcePredictionsProfile. Establézcalo en "Manual" para el tipo ManualResourcePredictionsProfile. 'Automático'
'Manual' (obligatorio)

Configuración en tiempo de ejecución

Nombre Description Importancia
workFolder La carpeta de trabajo de destino del agente de tareas en la máquina. cuerda / cadena

SecretsManagementSettings

Nombre Description Importancia
certificateStoreLocation Dónde almacenar certificados en la máquina. cuerda / cadena
certificateStoreName Nombre del almacén de certificados que se va a usar en la máquina, actualmente se admiten "My" y "Root". "Mi"
'Raíz'
keyExportable Define si la clave de los certificados debe ser exportable. bool (obligatorio)
observedCertificates Lista de certificados que se van a instalar en todas las máquinas del grupo. string[] (obligatorio)

Stateful

Nombre Description Importancia
gracePeriodTimeSpan Cuánto tiempo debe mantenerse la máquina después de ejecutar una carga de trabajo cuando no hay ningún agente independiente. El máximo es una semana. cuerda / cadena
amable Propiedad Discriminador para AgentProfile. 'Stateful' (obligatorio)
maxAgentLifetime Cuánto tiempo deben mantenerse las máquinas con estado. El máximo es una semana. cuerda / cadena

StatelessAgentProfile

Nombre Description Importancia
amable Propiedad Discriminador para AgentProfile. 'Apátrida' (obligatorio)

StorageProfile

Nombre Description Importancia
dataDisks Lista de discos de datos vacíos que se van a conectar. DataDisk []
osDiskStorageAccountType Nombre de la SKU de Azure de las máquinas del grupo. 'Premium'
'Estándar'
"StandardSSD"

TrackedResourceTags

Nombre Description Importancia

UserAssignedIdentity

Nombre Description Importancia

VmssFabricProfile

Nombre Description Importancia
images Imágenes de máquina virtual de las máquinas del grupo. PoolImage[] (obligatorio)
amable Propiedad Discriminador para FabricProfile. 'Vmss' (obligatorio)
networkProfile Perfil de red de las máquinas del grupo. networkProfile de
osProfile Perfil del sistema operativo de las máquinas del grupo. OsProfile
sku SKU de Azure de las máquinas del grupo. DevOpsAzureSku (obligatorio)
storageProfile Perfil de almacenamiento de las máquinas del grupo. storageProfile

Ejemplos de uso

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso pools se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.DevOpsInfrastructure/pools, agregue el siguiente terraform a la plantilla.

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

Establezca la propiedad de tipo para especificar el tipo de objeto.

Para Stateful, use:

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

Para Stateless, use:

{
  kind = "Stateless"
}

Objetos ResourcePredictionsProfile

Establezca la propiedad de tipo para especificar el tipo de objeto.

Para Automático, use:

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

Para Manual, use:

{
  kind = "Manual"
}

Objetos OrganizationProfile

Establezca la propiedad de tipo para especificar el 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 gitHub, use:

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

Objetos FabricProfile

Establezca la propiedad de tipo para especificar el 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 propiedad

Microsoft.DevOpsInfrastructure/pools

Nombre Description Importancia
identity Identidades de servicio administradas asignadas a este recurso. managedServiceIdentity
location Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso string

Restricciones:
Patrón = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obligatorio)
parent_id Identificador del recurso al que se va a aplicar este recurso de extensión. string (obligatorio)
Propiedades Propiedades específicas del recurso para este recurso. PoolProperties
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta.
type El tipo de recurso "Microsoft.DevOpsInfrastructure/pools@2025-09-20"

AgentProfile

Nombre Description Importancia
amable Establézcalo en "Stateful" para el tipo Stateful. Establézcalo en 'Stateless' para el tipo StatelessAgentProfile. 'Stateful'
'Apátrida' (obligatorio)
resourcePredictions Define los agentes de búfer de grupo o de stand-by. cualquiera
resourcePredictionsProfile Define cómo se proporcionan los agentes de búfer o de espera del grupo. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nombre Description Importancia
amable Determina cómo se debe proporcionar el esquema stand-by. 'Automático' (obligatorio)
predictionPreference Determina el equilibrio entre el costo y el rendimiento. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Nombre Description Importancia
alias Un alias para hacer referencia al nombre del grupo de Azure DevOps. cuerda / cadena
amable Propiedad Discriminador para OrganizationProfile. 'AzureDevOps' (obligatorio)
organizations La lista de organizaciones de Azure DevOps en las que debe estar presente el grupo. Organización[] (obligatorio)
permissionProfile Tipo de permiso que determina qué cuentas son administradores en el grupo de Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nombre Description Importancia
groups Direcciones de correo electrónico de grupo string[]
amable Determina quién tiene permisos de administrador para el grupo de Azure DevOps. 'CreatorOnly'
'Inherit'
'SpecificAccounts' (obligatorio)
users Direcciones de correo electrónico de usuario string[]

Disco de datos

Nombre Description Importancia
caching Tipo de almacenamiento en caché que se va a habilitar para los discos de datos. El valor predeterminado para el almacenamiento en caché es readwrite. Para obtener información sobre las opciones de almacenamiento en caché, consulte: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'None'
'Solo lectura'
"ReadWrite"
diskSizeGiB Tamaño inicial del disco en gigabytes. int
driveLetter Letra de unidad del disco de datos vacío. Si no se especifica, será la primera letra disponible. cuerda / cadena
storageAccountType Tipo de cuenta de almacenamiento que se va a usar para el disco de datos. Si se omite, el valor predeterminado es "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Nombre Description Importancia
nombre Nombre de la SKU de Azure de las máquinas del grupo. string (obligatorio)

FabricProfile

Nombre Description Importancia
amable Establézcalo en "Vmss" para el tipo VmssFabricProfile. 'Vmss' (obligatorio)

GitHubOrganization

Nombre Description Importancia
repositories Lista opcional de repositorios en los que se debe crear el grupo. string[]
URL Dirección URL de la organización de GitHub en la que se debe crear el grupo. string (obligatorio)

GitHubOrganizationProfile

Nombre Description Importancia
amable Propiedad Discriminador para OrganizationProfile. 'GitHub' (obligatorio)
organizations La lista de organizaciones o repositorios de GitHub en los que debe estar presente el grupo. GitHubOrganization[] (obligatorio)

Identidad de Servicio Gestionado

Nombre Description Importancia
type Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatorio)
userAssignedIdentities Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves de diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. managedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nombre Description Importancia

ManualResourcePredictionsProfile

Nombre Description Importancia
amable Determina cómo se debe proporcionar el esquema stand-by. 'Manual' (obligatorio)

Perfil de red

Nombre Description Importancia
staticIpAddressCount El número de direcciones IP públicas estáticas para las conexiones salientes asignadas al grupo. int
subnetId Identificador de subred en el que se van a colocar todas las máquinas creadas en el grupo. cuerda / cadena

Organización

Nombre Description Importancia
alias Un alias para hacer referencia al nombre del grupo de Azure DevOps. cuerda / cadena
openAccess Determina si el grupo debe tener acceso abierto a todos los proyectos de esta organización. bool
parallelism Número máximo de máquinas que se pueden crear en esta organización fuera de la máxima simultaneidad del grupo. int
projects Lista opcional de proyectos en los que se debe crear el grupo. string[]
URL Dirección URL de la organización de Azure DevOps en la que se debe crear el grupo. string (obligatorio)

OrganizationProfile

Nombre Description Importancia
amable Establézcalo en "AzureDevOps" para el tipo AzureDevOpsOrganizationProfile. Establézcalo en "GitHub" para el tipo GitHubOrganizationProfile. 'AzureDevOps'
'GitHub' (obligatorio)

OsProfile

Nombre Description Importancia
logonType Determina cómo se debe ejecutar el servicio. De forma predeterminada, se establecerá en Servicio. 'Interactive'
"Servicio"
secretsManagementSettings Configuración de administración de secretos de las máquinas del grupo. SecretsManagementSettings

PoolImage

Nombre Description Importancia
aliases Lista de alias por los que hacer referencia a la imagen. string[]
buffer Porcentaje del búfer que se va a asignar a esta imagen. cuerda / cadena
ephemeralType Tipo efímero de la imagen. 'Automático'
'CacheDisk'
'ResourceDisk'
resourceId Identificador de recurso de la imagen. cuerda / cadena
wellKnownImageName Imagen que se va a usar desde un conjunto conocido de imágenes que están disponibles para los clientes. cuerda / cadena

PoolProperties (Propiedades de la piscina)

Nombre Description Importancia
agentProfile Define cómo se controlará la máquina una vez que ejecutó un trabajo. AgentProfile (obligatorio)
devCenterProjectResourceId Identificador de recurso del proyecto de DevCenter al que pertenece el grupo. string (obligatorio)
tejidoPerfil Define el tipo de tejido en el que se ejecutará el agente. FabricProfile (obligatorio)
maximumConcurrency Define el número de recursos que se pueden crear en un momento dado. int

Restricciones:
Valor mínimo = 1
Valor máximo = 10000 (obligatorio)
organizationProfile Define la organización en la que se usará el grupo. OrganizationProfile (obligatorio)
provisioningState Estado de la operación actual. 'Aceptado'
'Cancelado'
"Eliminar"
'Error'
"Aprovisionamiento"
"Correcto"
"Actualización"
configuración de tiempo de ejecución La configuración en tiempo de ejecución del grupo. Configuración en tiempo de ejecución

ResourcePredictionsProfile

Nombre Description Importancia
amable Establézcalo en "Automático" para el tipo AutomaticResourcePredictionsProfile. Establézcalo en "Manual" para el tipo ManualResourcePredictionsProfile. 'Automático'
'Manual' (obligatorio)

Configuración en tiempo de ejecución

Nombre Description Importancia
workFolder La carpeta de trabajo de destino del agente de tareas en la máquina. cuerda / cadena

SecretsManagementSettings

Nombre Description Importancia
certificateStoreLocation Dónde almacenar certificados en la máquina. cuerda / cadena
certificateStoreName Nombre del almacén de certificados que se va a usar en la máquina, actualmente se admiten "My" y "Root". "Mi"
'Raíz'
keyExportable Define si la clave de los certificados debe ser exportable. bool (obligatorio)
observedCertificates Lista de certificados que se van a instalar en todas las máquinas del grupo. string[] (obligatorio)

Stateful

Nombre Description Importancia
gracePeriodTimeSpan Cuánto tiempo debe mantenerse la máquina después de ejecutar una carga de trabajo cuando no hay ningún agente independiente. El máximo es una semana. cuerda / cadena
amable Propiedad Discriminador para AgentProfile. 'Stateful' (obligatorio)
maxAgentLifetime Cuánto tiempo deben mantenerse las máquinas con estado. El máximo es una semana. cuerda / cadena

StatelessAgentProfile

Nombre Description Importancia
amable Propiedad Discriminador para AgentProfile. 'Apátrida' (obligatorio)

StorageProfile

Nombre Description Importancia
dataDisks Lista de discos de datos vacíos que se van a conectar. DataDisk []
osDiskStorageAccountType Nombre de la SKU de Azure de las máquinas del grupo. 'Premium'
'Estándar'
"StandardSSD"

TrackedResourceTags

Nombre Description Importancia

UserAssignedIdentity

Nombre Description Importancia

VmssFabricProfile

Nombre Description Importancia
images Imágenes de máquina virtual de las máquinas del grupo. PoolImage[] (obligatorio)
amable Propiedad Discriminador para FabricProfile. 'Vmss' (obligatorio)
networkProfile Perfil de red de las máquinas del grupo. networkProfile de
osProfile Perfil del sistema operativo de las máquinas del grupo. OsProfile
sku SKU de Azure de las máquinas del grupo. DevOpsAzureSku (obligatorio)
storageProfile Perfil de almacenamiento de las máquinas del grupo. storageProfile

Ejemplos de uso

Módulos comprobados de Azure

Los siguientes módulos comprobados de Azure se pueden usar para implementar este tipo de recurso.

Módulo Description
Grupos de DevOps Módulo de recursos de AVM para grupos de DevOps