Compartir a través de


Grupos de Microsoft.DevOpsInfrastructure

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@2024-10-19' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    agentProfile: {
      resourcePredictions: any(Azure.Bicep.Types.Concrete.AnyType)
      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'
  }
  tags: {
    {customized property}: 'string'
  }
}

FabricProfile (objetos)

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

Para vmss, use:

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

Objetos OrganizationProfile

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

Para azureDevOps, use:

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

Para gitHub, use:

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

Objetos AgentProfile

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

Para con estado , use:

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

Para sin estado , use:

{
  kind: 'Stateless'
}

Objetos ResourcePredictionsProfile

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

Para Automatic, use:

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

Para manual, use:

{
  kind: 'Manual'
}

Valores de propiedad

AgentProfile

Nombre Descripción Valor
amable Establezca en "Stateful" para el tipo Stateful. Establezca en "Stateless" para el tipo StatelessAgentProfile. "Con estado"
'Sin estado' (obligatorio)
resourcePredictions Define los agentes de búfer de grupo o de stand-by. cualquier
resourcePredictionsProfile Define cómo se proporcionan los agentes de búfer o de espera del grupo. resourcePredictionsProfile

AutomaticResourcePredictionsProfile

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

AzureDevOpsOrganizationProfile

Nombre Descripción Valor
amable Propiedad Discriminador para OrganizationProfile. "AzureDevOps" (obligatorio)
Organizaciones 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 Descripción Valor
grupos Direcciones de correo electrónico de grupo string[]
amable Determina quién tiene permisos de administrador para el grupo de Azure DevOps. 'CreatorOnly'
'Heredar'
'SpecificAccounts' (obligatorio)
Usuarios Direcciones de correo electrónico de usuario string[]

DataDisk

Nombre Descripción Valor
Caché 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/. 'Ninguno'
'ReadOnly'
"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
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 Descripción Valor
nombre Nombre de la SKU de Azure de las máquinas del grupo. string (obligatorio)

FabricProfile

Nombre Descripción Valor
amable Establezca en "Vmss" para el tipo VmssFabricProfile. "Vmss" (obligatorio)

GitHubOrganization

Nombre Descripción Valor
Repositorios 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 Descripción Valor
amable Propiedad Discriminador para OrganizationProfile. 'GitHub' (obligatorio)
Organizaciones La lista de organizaciones o repositorios de GitHub en los que debe estar presente el grupo. GitHubOrganization[] (obligatorio)

ManagedServiceIdentity

Nombre Descripción Valor
tipo Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). 'Ninguno'
'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. UserAssignedIdentities

ManualResourcePredictionsProfile

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

Microsoft.DevOpsInfrastructure/pools

Nombre Descripción Valor
identidad Identidades de servicio administradas asignadas a este recurso. managedServiceIdentity
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso cuerda

Restricciones:
Patrón = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obligatorio)
Propiedades Propiedades específicas del recurso para este recurso. poolProperties de
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas

NetworkProfile

Nombre Descripción Valor
subnetId Identificador de subred en el que se van a colocar todas las máquinas creadas en el grupo. string (obligatorio)

Organización

Nombre Descripción Valor
paralelismo Número máximo de máquinas que se pueden crear en esta organización fuera de la máxima simultaneidad del grupo. Int
Proyectos 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 Descripción Valor
amable Establezca en "AzureDevOps" para el tipo AzureDevOpsOrganizationProfile. Establezca en "GitHub" para el tipo GitHubOrganizationProfile. "AzureDevOps"
'GitHub' (obligatorio)

OsProfile

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

PoolImage

Nombre Descripción Valor
Alias Lista de alias por los que hacer referencia a la imagen. string[]
búfer Porcentaje del búfer que se va a asignar a esta imagen. cuerda
resourceId Identificador de recurso de la imagen. cuerda
wellKnownImageName Imagen que se va a usar desde un conjunto conocido de imágenes que están disponibles para los clientes. cuerda

PoolProperties

Nombre Descripción Valor
agentProfile Define cómo se controlará la máquina una vez que ejecutó un trabajo. AgentProfile de (obligatorio)
devCenterProjectResourceId Identificador de recurso del proyecto de DevCenter al que pertenece el grupo. string (obligatorio)
fabricProfile 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"

ResourcePredictionsProfile

Nombre Descripción Valor
amable Establezca en "Automático" para el tipo AutomaticResourcePredictionsProfile. Establezca en "Manual" para el tipo ManualResourcePredictionsProfile. 'Automático'
'Manual' (obligatorio)

SecretsManagementSettings

Nombre Descripción Valor
certificateStoreLocation Dónde almacenar certificados en la máquina. cuerda
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 Descripción Valor
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
amable Propiedad Discriminador para AgentProfile. "Con estado" (obligatorio)
maxAgentLifetime Cuánto tiempo deben mantenerse las máquinas con estado. El máximo es una semana. cuerda

StatelessAgentProfile

Nombre Descripción Valor
amable Propiedad Discriminador para AgentProfile. 'Sin estado' (obligatorio)

StorageProfile

Nombre Descripción Valor
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 Descripción Valor

UserAssignedIdentities

Nombre Descripción Valor

UserAssignedIdentity

Nombre Descripción Valor

VmssFabricProfile

Nombre Descripción Valor
Imágenes 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

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": "2024-10-19",
  "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"
  },
  "tags": {
    "{customized property}": "string"
  }
}

FabricProfile (objetos)

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

Para vmss, use:

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

Objetos OrganizationProfile

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

Para azureDevOps, use:

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

Para gitHub, use:

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

Objetos AgentProfile

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

Para con estado , use:

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

Para sin estado , use:

{
  "kind": "Stateless"
}

Objetos ResourcePredictionsProfile

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

Para Automatic, use:

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

Para manual, use:

{
  "kind": "Manual"
}

Valores de propiedad

AgentProfile

Nombre Descripción Valor
amable Establezca en "Stateful" para el tipo Stateful. Establezca en "Stateless" para el tipo StatelessAgentProfile. "Con estado"
'Sin estado' (obligatorio)
resourcePredictions Define los agentes de búfer de grupo o de stand-by. cualquier
resourcePredictionsProfile Define cómo se proporcionan los agentes de búfer o de espera del grupo. resourcePredictionsProfile

AutomaticResourcePredictionsProfile

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

AzureDevOpsOrganizationProfile

Nombre Descripción Valor
amable Propiedad Discriminador para OrganizationProfile. "AzureDevOps" (obligatorio)
Organizaciones 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 Descripción Valor
grupos Direcciones de correo electrónico de grupo string[]
amable Determina quién tiene permisos de administrador para el grupo de Azure DevOps. 'CreatorOnly'
'Heredar'
'SpecificAccounts' (obligatorio)
Usuarios Direcciones de correo electrónico de usuario string[]

DataDisk

Nombre Descripción Valor
Caché 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/. 'Ninguno'
'ReadOnly'
"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
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 Descripción Valor
nombre Nombre de la SKU de Azure de las máquinas del grupo. string (obligatorio)

FabricProfile

Nombre Descripción Valor
amable Establezca en "Vmss" para el tipo VmssFabricProfile. "Vmss" (obligatorio)

GitHubOrganization

Nombre Descripción Valor
Repositorios 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 Descripción Valor
amable Propiedad Discriminador para OrganizationProfile. 'GitHub' (obligatorio)
Organizaciones La lista de organizaciones o repositorios de GitHub en los que debe estar presente el grupo. GitHubOrganization[] (obligatorio)

ManagedServiceIdentity

Nombre Descripción Valor
tipo Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). 'Ninguno'
'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. UserAssignedIdentities

ManualResourcePredictionsProfile

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

Microsoft.DevOpsInfrastructure/pools

Nombre Descripción Valor
apiVersion La versión de api '2024-10-19'
identidad Identidades de servicio administradas asignadas a este recurso. managedServiceIdentity
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso cuerda

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

NetworkProfile

Nombre Descripción Valor
subnetId Identificador de subred en el que se van a colocar todas las máquinas creadas en el grupo. string (obligatorio)

Organización

Nombre Descripción Valor
paralelismo Número máximo de máquinas que se pueden crear en esta organización fuera de la máxima simultaneidad del grupo. Int
Proyectos 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 Descripción Valor
amable Establezca en "AzureDevOps" para el tipo AzureDevOpsOrganizationProfile. Establezca en "GitHub" para el tipo GitHubOrganizationProfile. "AzureDevOps"
'GitHub' (obligatorio)

OsProfile

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

PoolImage

Nombre Descripción Valor
Alias Lista de alias por los que hacer referencia a la imagen. string[]
búfer Porcentaje del búfer que se va a asignar a esta imagen. cuerda
resourceId Identificador de recurso de la imagen. cuerda
wellKnownImageName Imagen que se va a usar desde un conjunto conocido de imágenes que están disponibles para los clientes. cuerda

PoolProperties

Nombre Descripción Valor
agentProfile Define cómo se controlará la máquina una vez que ejecutó un trabajo. AgentProfile de (obligatorio)
devCenterProjectResourceId Identificador de recurso del proyecto de DevCenter al que pertenece el grupo. string (obligatorio)
fabricProfile 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"

ResourcePredictionsProfile

Nombre Descripción Valor
amable Establezca en "Automático" para el tipo AutomaticResourcePredictionsProfile. Establezca en "Manual" para el tipo ManualResourcePredictionsProfile. 'Automático'
'Manual' (obligatorio)

SecretsManagementSettings

Nombre Descripción Valor
certificateStoreLocation Dónde almacenar certificados en la máquina. cuerda
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 Descripción Valor
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
amable Propiedad Discriminador para AgentProfile. "Con estado" (obligatorio)
maxAgentLifetime Cuánto tiempo deben mantenerse las máquinas con estado. El máximo es una semana. cuerda

StatelessAgentProfile

Nombre Descripción Valor
amable Propiedad Discriminador para AgentProfile. 'Sin estado' (obligatorio)

StorageProfile

Nombre Descripción Valor
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 Descripción Valor

UserAssignedIdentities

Nombre Descripción Valor

UserAssignedIdentity

Nombre Descripción Valor

VmssFabricProfile

Nombre Descripción Valor
Imágenes 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

Definición de recursos de Terraform (proveedor AzAPI)

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

  • grupos de recursos de

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@2024-10-19"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
      }
    }
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    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"
    }
  })
}

FabricProfile (objetos)

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

Para vmss, use:

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

Objetos OrganizationProfile

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

Para azureDevOps, use:

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

Para gitHub, use:

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

Objetos AgentProfile

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

Para con estado , use:

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

Para sin estado , use:

{
  kind = "Stateless"
}

Objetos ResourcePredictionsProfile

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

Para Automatic, use:

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

Para manual, use:

{
  kind = "Manual"
}

Valores de propiedad

AgentProfile

Nombre Descripción Valor
amable Establezca en "Stateful" para el tipo Stateful. Establezca en "Stateless" para el tipo StatelessAgentProfile. "Con estado"
'Sin estado' (obligatorio)
resourcePredictions Define los agentes de búfer de grupo o de stand-by. cualquier
resourcePredictionsProfile Define cómo se proporcionan los agentes de búfer o de espera del grupo. resourcePredictionsProfile

AutomaticResourcePredictionsProfile

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

AzureDevOpsOrganizationProfile

Nombre Descripción Valor
amable Propiedad Discriminador para OrganizationProfile. "AzureDevOps" (obligatorio)
Organizaciones 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 Descripción Valor
grupos Direcciones de correo electrónico de grupo string[]
amable Determina quién tiene permisos de administrador para el grupo de Azure DevOps. 'CreatorOnly'
'Heredar'
'SpecificAccounts' (obligatorio)
Usuarios Direcciones de correo electrónico de usuario string[]

DataDisk

Nombre Descripción Valor
Caché 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/. 'Ninguno'
'ReadOnly'
"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
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 Descripción Valor
nombre Nombre de la SKU de Azure de las máquinas del grupo. string (obligatorio)

FabricProfile

Nombre Descripción Valor
amable Establezca en "Vmss" para el tipo VmssFabricProfile. "Vmss" (obligatorio)

GitHubOrganization

Nombre Descripción Valor
Repositorios 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 Descripción Valor
amable Propiedad Discriminador para OrganizationProfile. 'GitHub' (obligatorio)
Organizaciones La lista de organizaciones o repositorios de GitHub en los que debe estar presente el grupo. GitHubOrganization[] (obligatorio)

ManagedServiceIdentity

Nombre Descripción Valor
tipo Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). 'Ninguno'
'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. UserAssignedIdentities

ManualResourcePredictionsProfile

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

Microsoft.DevOpsInfrastructure/pools

Nombre Descripción Valor
identidad Identidades de servicio administradas asignadas a este recurso. managedServiceIdentity
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso cuerda

Restricciones:
Patrón = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obligatorio)
Propiedades Propiedades específicas del recurso para este recurso. poolProperties de
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta.
tipo El tipo de recurso "Microsoft.DevOpsInfrastructure/pools@2024-10-19"

NetworkProfile

Nombre Descripción Valor
subnetId Identificador de subred en el que se van a colocar todas las máquinas creadas en el grupo. string (obligatorio)

Organización

Nombre Descripción Valor
paralelismo Número máximo de máquinas que se pueden crear en esta organización fuera de la máxima simultaneidad del grupo. Int
Proyectos 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 Descripción Valor
amable Establezca en "AzureDevOps" para el tipo AzureDevOpsOrganizationProfile. Establezca en "GitHub" para el tipo GitHubOrganizationProfile. "AzureDevOps"
'GitHub' (obligatorio)

OsProfile

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

PoolImage

Nombre Descripción Valor
Alias Lista de alias por los que hacer referencia a la imagen. string[]
búfer Porcentaje del búfer que se va a asignar a esta imagen. cuerda
resourceId Identificador de recurso de la imagen. cuerda
wellKnownImageName Imagen que se va a usar desde un conjunto conocido de imágenes que están disponibles para los clientes. cuerda

PoolProperties

Nombre Descripción Valor
agentProfile Define cómo se controlará la máquina una vez que ejecutó un trabajo. AgentProfile de (obligatorio)
devCenterProjectResourceId Identificador de recurso del proyecto de DevCenter al que pertenece el grupo. string (obligatorio)
fabricProfile 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"

ResourcePredictionsProfile

Nombre Descripción Valor
amable Establezca en "Automático" para el tipo AutomaticResourcePredictionsProfile. Establezca en "Manual" para el tipo ManualResourcePredictionsProfile. 'Automático'
'Manual' (obligatorio)

SecretsManagementSettings

Nombre Descripción Valor
certificateStoreLocation Dónde almacenar certificados en la máquina. cuerda
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 Descripción Valor
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
amable Propiedad Discriminador para AgentProfile. "Con estado" (obligatorio)
maxAgentLifetime Cuánto tiempo deben mantenerse las máquinas con estado. El máximo es una semana. cuerda

StatelessAgentProfile

Nombre Descripción Valor
amable Propiedad Discriminador para AgentProfile. 'Sin estado' (obligatorio)

StorageProfile

Nombre Descripción Valor
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 Descripción Valor

UserAssignedIdentities

Nombre Descripción Valor

UserAssignedIdentity

Nombre Descripción Valor

VmssFabricProfile

Nombre Descripción Valor
Imágenes 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