Udostępnij przez


Microsoft.DevOpsInfrastructure pule 2025-09-20

Definicja zasobu Bicep

Typ zasobu pul można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.DevOpsInfrastructure/pools, dodaj następujący kod Bicep do szablonu.

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'
  }
}

Obiekty AgentProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku funkcji Stateful użyj:

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

W przypadku bezstanowych użyj:

{
  kind: 'Stateless'
}

Obiekty ResourcePredictionsProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku opcji Automatyczny użyj:

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

W przypadku instrukcji użyj:

{
  kind: 'Manual'
}

Obiekty OrganizationProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku usługi AzureDevOps użyj:

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

W przypadku usługi GitHubużyj:

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

Obiekty FabricProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku usługi VMSS użyj:

{
  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'
  }
}

Wartości właściwości

Microsoft.DevOpsInfrastructure/pools

Name Description Wartość
tożsamość Tożsamości usługi zarządzanej przypisane do tego zasobu. ManagedServiceIdentity (tożsamość usługi)
lokalizacja Lokalizacja geograficzna, w której znajduje się zasób ciąg (wymagany)
nazwa Nazwa zasobu string

Ograniczenia:
Wzorzec = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (wymagane)
properties Właściwości specyficzne dla zasobu dla tego zasobu. PoolProperties
zakres Użyj polecenia podczas tworzenia zasobu w zakresie innym niż zakres wdrożenia. Ustaw tę właściwość na symboliczną nazwę zasobu, aby zastosować zasób rozszerzenia .
tags Tagi zasobów Słownik nazw tagów i wartości. Zobacz tagi w szablonach

AgentProfile

Name Description Wartość
rodzaj Ustaw wartość "Stateful" dla typu Stateful. Ustaw wartość "Stateless" dla typu StatelessAgentProfile. 'Stateful'
"Bezstanowy" (wymagane)
resourcePredictions Definiuje bufor puli/agentów rezerwowych. any
resourcePredictionsProfile Definiuje sposób zapewniania buforu puli/agentów rezerwowych. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Name Description Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Automatyczny" (wymagane)
predictionPreference Określa równowagę między kosztami i wydajnością. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Name Description Wartość
alias Alias odwołujący się do nazwy puli usługi Azure DevOps. ciąg
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "AzureDevOps" (wymagane)
organizations Lista organizacji usługi Azure DevOps, w których powinna znajdować się pula. Organizacja[] (wymagane)
permissionProfile Typ uprawnienia, który określa, które konta są administratorami w puli usługi Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Name Description Wartość
groups Adresy e-mail grupy string[]
rodzaj Określa, kto ma uprawnienia administratora do puli usługi Azure DevOps. 'CreatorOnly'
'Inherit'
"SpecificAccounts" (wymagane)
users Adresy e-mail użytkownika string[]

Dysk danych

Name Description Wartość
buforowanie Typ buforowania, który ma być włączony dla dysków danych. Wartość domyślna buforowania to readwrite. Aby uzyskać informacje o opcjach buforowania, zobacz: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'None'
"ReadOnly"
"ReadWrite"
diskSizeGiB Początkowy rozmiar dysku w gigabajtach. int
driveLetter Litera dysku dla pustego dysku danych. Jeśli nie zostanie określony, będzie to pierwsza dostępna litera. ciąg
storageAccountType Typ konta magazynu, który ma być używany dla dysku danych. W przypadku pominięcia wartość domyślna to "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Name Description Wartość
nazwa Nazwa jednostki SKU platformy Azure maszyn w puli. ciąg (wymagany)

Profil tkaniny

Name Description Wartość
rodzaj Ustaw wartość "Vmss" dla typu VmssFabricProfile. "Vmss" (wymagane)

GitHubOrganization

Name Description Wartość
repositories Opcjonalna lista repozytoriów, w których należy utworzyć pulę. string[]
URL Adres URL organizacji usługi GitHub, w którym należy utworzyć pulę. ciąg (wymagany)

GitHubOrganizationProfile

Name Description Wartość
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "GitHub" (wymagane)
organizations Lista organizacji/repozytoriów usługi GitHub, w których powinna znajdować się pula. GitHubOrganization[] (wymagane)

ManagedServiceIdentity

Name Description Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). 'None'
'SystemAssigned'
"SystemAssigned,UserAssigned"
"UserAssigned" (wymagane)
userAssignedIdentities Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Name Description Wartość

ManualResourcePredictionsProfile

Name Description Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Ręczne" (wymagane)

Profil sieciowy

Name Description Wartość
staticIpAddressCount Liczba statycznych publicznych adresów IP dla połączeń wychodzących przypisanych do puli. int
subnetId Identyfikator podsieci, w której mają być umieszczone wszystkie maszyny utworzone w puli. ciąg

Organization

Name Description Wartość
alias Alias odwołujący się do nazwy puli usługi Azure DevOps. ciąg
openAccess (Dostęp otwarty) Określa, czy pula powinna mieć otwarty dostęp do wszystkich projektów w tej organizacji. bool
parallelism Ile maszyn można utworzyć maksymalnie w tej organizacji z maksymalnej liczby komputerów w puli. int
projects Opcjonalna lista projektów, w których należy utworzyć pulę. string[]
URL Adres URL organizacji usługi Azure DevOps, w którym należy utworzyć pulę. ciąg (wymagany)

OrganizationProfile

Name Description Wartość
rodzaj Ustaw wartość "AzureDevOps" dla typu AzureDevOpsOrganizationProfile. Ustaw wartość "GitHub" dla typu GitHubOrganizationProfile. 'AzureDevOps'
"GitHub" (wymagane)

Profil osowy

Name Description Wartość
logonType Określa sposób uruchamiania usługi. Domyślnie zostanie ustawiona wartość Usługa. 'Interactive'
"Usługa"
secretsManagementSettings Ustawienia zarządzania wpisami tajnymi maszyn w puli. SecretsManagementSettings

PoolImage

Name Description Wartość
aliases Lista aliasów do odwołowania się do obrazu. string[]
bufor Procent buforu, który ma zostać przydzielony do tego obrazu. ciąg
ephemeralType Efemeryczny typ obrazu. "Automatyczny"
'CacheDisk'
'ResourceDisk'
resourceId Identyfikator zasobu obrazu. ciąg
wellKnownImageName Obraz do użycia z dobrze znanego zestawu obrazów udostępnianych klientom. ciąg

Właściwości puli

Name Description Wartość
agentProfile Definiuje sposób obsługi maszyny po wykonaniu zadania. AgentProfile (wymagane)
devCenterProjectResourceId Identyfikator zasobu projektu DevCenter, do którego należy pula. ciąg (wymagany)
fabricProfile (profil tkaniny) Definiuje typ sieci szkieletowej, na których będzie uruchamiany agent. FabricProfile (wymagane)
maximumConcurrency Określa, ile zasobów można utworzyć w danym momencie. int

Ograniczenia:
Minimalna wartość = 1
Wartość maksymalna = 10000 (wymagane)
organizationProfile Definiuje organizację, w której będzie używana pula. OrganizationProfile (wymagane)
provisioningState Stan bieżącej operacji. "Zaakceptowane"
"Anulowano"
"Usuwanie"
"Niepowodzenie"
"Aprowizowanie"
"Powodzenie"
"Aktualizowanie"
runtimeConfiguration (konfiguracja środowiska uruchomieniowego) Konfiguracja środowiska uruchomieniowego puli. RuntimeConfiguration (konfiguracja środowiska uruchomieniowego)

ResourcePredictionsProfile

Name Description Wartość
rodzaj Ustaw wartość "Automatycznie" dla typu AutomaticResourcePredictionsProfile. Ustaw wartość "Ręcznie" dla typu ManualResourcePredictionsProfile. "Automatyczny"
"Ręczne" (wymagane)

RuntimeConfiguration (konfiguracja środowiska uruchomieniowego)

Name Description Wartość
workFolder (folder roboczy) Docelowy folder roboczy agenta zadań na komputerze. ciąg

SecretsManagementSettings

Name Description Wartość
certificateStoreLocation Gdzie przechowywać certyfikaty na maszynie. ciąg
certificateStoreName Nazwa magazynu certyfikatów do użycia na maszynie, obecnie obsługiwane są pozycje "Moje" i "Root". "Mój"
"Katalog główny"
keyExportable Określa, czy klucz certyfikatów powinien być eksportowalny. bool (wymagane)
observedCertificates Lista certyfikatów do zainstalowania na wszystkich maszynach w puli. string[] (wymagane)

Stateful

Name Description Wartość
gracePeriodTimeSpan Jak długo maszyna powinna być przechowywana po uruchomieniu obciążenia, gdy nie ma agentów rezerwowych. Maksymalna wartość to tydzień. ciąg
rodzaj Właściwość dyskryminująca dla agentaProfile. "Stanowy" (wymagane)
maxAgentLifetime Jak długo powinny być przechowywane stanowe maszyny. Maksymalna wartość to tydzień. ciąg

StatelessAgentProfile

Name Description Wartość
rodzaj Właściwość dyskryminująca dla agentaProfile. "Bezstanowy" (wymagane)

StorageProfile (Profil magazynu)

Name Description Wartość
dataDisks (dyski danych) Lista pustych dysków danych do dołączenia. Dysk z danymi[]
osDiskStorageAccountType Nazwa jednostki SKU platformy Azure maszyn w puli. "Premium"
"Standardowa"
"StandardSSD"

Śledzone tagi zasobów

Name Description Wartość

UserAssignedIdentity

Name Description Wartość

VmssFabricProfile

Name Description Wartość
images Obrazy maszyn wirtualnych maszyn w puli. PoolImage[] (wymagane)
rodzaj Dyskryminująca właściwość fabricProfile. "Vmss" (wymagane)
networkProfile Profil sieciowy maszyn w puli. Profil sieciowy
osProfile Profil systemu operacyjnego maszyn w puli. OsProfile
sku Jednostka SKU platformy Azure maszyn w puli. DevOpsAzureSku (wymagane)
Profil pamięci masowej Profil magazynu maszyn w puli. StorageProfile (Profil magazynu)

Przykłady użycia

Moduły zweryfikowane na platformie Azure

Następujące moduły zweryfikowane platformy Azure mogą służyć do wdrażania tego typu zasobu.

Moduł Description
Pula infrastruktury DevOps Moduł zasobów AVM dla puli infrastruktury DevOps

Definicja zasobu szablonu usługi ARM

Typ zasobu pul można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.DevOpsInfrastructure/pools, dodaj następujący kod JSON do szablonu.

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

Obiekty AgentProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku funkcji Stateful użyj:

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

W przypadku bezstanowych użyj:

{
  "kind": "Stateless"
}

Obiekty ResourcePredictionsProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku opcji Automatyczny użyj:

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

W przypadku instrukcji użyj:

{
  "kind": "Manual"
}

Obiekty OrganizationProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku usługi AzureDevOps użyj:

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

W przypadku usługi GitHubużyj:

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

Obiekty FabricProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku usługi VMSS użyj:

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

Wartości właściwości

Microsoft.DevOpsInfrastructure/pools

Name Description Wartość
apiVersion Wersja interfejsu API '2025-09-20'
tożsamość Tożsamości usługi zarządzanej przypisane do tego zasobu. ManagedServiceIdentity (tożsamość usługi)
lokalizacja Lokalizacja geograficzna, w której znajduje się zasób ciąg (wymagany)
nazwa Nazwa zasobu string

Ograniczenia:
Wzorzec = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (wymagane)
properties Właściwości specyficzne dla zasobu dla tego zasobu. PoolProperties
tags Tagi zasobów Słownik nazw tagów i wartości. Zobacz tagi w szablonach
typ Typ zasobu 'Microsoft.DevOpsInfrastructure/pools'

AgentProfile

Name Description Wartość
rodzaj Ustaw wartość "Stateful" dla typu Stateful. Ustaw wartość "Stateless" dla typu StatelessAgentProfile. 'Stateful'
"Bezstanowy" (wymagane)
resourcePredictions Definiuje bufor puli/agentów rezerwowych. any
resourcePredictionsProfile Definiuje sposób zapewniania buforu puli/agentów rezerwowych. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Name Description Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Automatyczny" (wymagane)
predictionPreference Określa równowagę między kosztami i wydajnością. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Name Description Wartość
alias Alias odwołujący się do nazwy puli usługi Azure DevOps. ciąg
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "AzureDevOps" (wymagane)
organizations Lista organizacji usługi Azure DevOps, w których powinna znajdować się pula. Organizacja[] (wymagane)
permissionProfile Typ uprawnienia, który określa, które konta są administratorami w puli usługi Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Name Description Wartość
groups Adresy e-mail grupy string[]
rodzaj Określa, kto ma uprawnienia administratora do puli usługi Azure DevOps. 'CreatorOnly'
'Inherit'
"SpecificAccounts" (wymagane)
users Adresy e-mail użytkownika string[]

Dysk danych

Name Description Wartość
buforowanie Typ buforowania, który ma być włączony dla dysków danych. Wartość domyślna buforowania to readwrite. Aby uzyskać informacje o opcjach buforowania, zobacz: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'None'
"ReadOnly"
"ReadWrite"
diskSizeGiB Początkowy rozmiar dysku w gigabajtach. int
driveLetter Litera dysku dla pustego dysku danych. Jeśli nie zostanie określony, będzie to pierwsza dostępna litera. ciąg
storageAccountType Typ konta magazynu, który ma być używany dla dysku danych. W przypadku pominięcia wartość domyślna to "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Name Description Wartość
nazwa Nazwa jednostki SKU platformy Azure maszyn w puli. ciąg (wymagany)

Profil tkaniny

Name Description Wartość
rodzaj Ustaw wartość "Vmss" dla typu VmssFabricProfile. "Vmss" (wymagane)

GitHubOrganization

Name Description Wartość
repositories Opcjonalna lista repozytoriów, w których należy utworzyć pulę. string[]
URL Adres URL organizacji usługi GitHub, w którym należy utworzyć pulę. ciąg (wymagany)

GitHubOrganizationProfile

Name Description Wartość
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "GitHub" (wymagane)
organizations Lista organizacji/repozytoriów usługi GitHub, w których powinna znajdować się pula. GitHubOrganization[] (wymagane)

ManagedServiceIdentity

Name Description Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). 'None'
'SystemAssigned'
"SystemAssigned,UserAssigned"
"UserAssigned" (wymagane)
userAssignedIdentities Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Name Description Wartość

ManualResourcePredictionsProfile

Name Description Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Ręczne" (wymagane)

Profil sieciowy

Name Description Wartość
staticIpAddressCount Liczba statycznych publicznych adresów IP dla połączeń wychodzących przypisanych do puli. int
subnetId Identyfikator podsieci, w której mają być umieszczone wszystkie maszyny utworzone w puli. ciąg

Organization

Name Description Wartość
alias Alias odwołujący się do nazwy puli usługi Azure DevOps. ciąg
openAccess (Dostęp otwarty) Określa, czy pula powinna mieć otwarty dostęp do wszystkich projektów w tej organizacji. bool
parallelism Ile maszyn można utworzyć maksymalnie w tej organizacji z maksymalnej liczby komputerów w puli. int
projects Opcjonalna lista projektów, w których należy utworzyć pulę. string[]
URL Adres URL organizacji usługi Azure DevOps, w którym należy utworzyć pulę. ciąg (wymagany)

OrganizationProfile

Name Description Wartość
rodzaj Ustaw wartość "AzureDevOps" dla typu AzureDevOpsOrganizationProfile. Ustaw wartość "GitHub" dla typu GitHubOrganizationProfile. 'AzureDevOps'
"GitHub" (wymagane)

Profil osowy

Name Description Wartość
logonType Określa sposób uruchamiania usługi. Domyślnie zostanie ustawiona wartość Usługa. 'Interactive'
"Usługa"
secretsManagementSettings Ustawienia zarządzania wpisami tajnymi maszyn w puli. SecretsManagementSettings

PoolImage

Name Description Wartość
aliases Lista aliasów do odwołowania się do obrazu. string[]
bufor Procent buforu, który ma zostać przydzielony do tego obrazu. ciąg
ephemeralType Efemeryczny typ obrazu. "Automatyczny"
'CacheDisk'
'ResourceDisk'
resourceId Identyfikator zasobu obrazu. ciąg
wellKnownImageName Obraz do użycia z dobrze znanego zestawu obrazów udostępnianych klientom. ciąg

Właściwości puli

Name Description Wartość
agentProfile Definiuje sposób obsługi maszyny po wykonaniu zadania. AgentProfile (wymagane)
devCenterProjectResourceId Identyfikator zasobu projektu DevCenter, do którego należy pula. ciąg (wymagany)
fabricProfile (profil tkaniny) Definiuje typ sieci szkieletowej, na których będzie uruchamiany agent. FabricProfile (wymagane)
maximumConcurrency Określa, ile zasobów można utworzyć w danym momencie. int

Ograniczenia:
Minimalna wartość = 1
Wartość maksymalna = 10000 (wymagane)
organizationProfile Definiuje organizację, w której będzie używana pula. OrganizationProfile (wymagane)
provisioningState Stan bieżącej operacji. "Zaakceptowane"
"Anulowano"
"Usuwanie"
"Niepowodzenie"
"Aprowizowanie"
"Powodzenie"
"Aktualizowanie"
runtimeConfiguration (konfiguracja środowiska uruchomieniowego) Konfiguracja środowiska uruchomieniowego puli. RuntimeConfiguration (konfiguracja środowiska uruchomieniowego)

ResourcePredictionsProfile

Name Description Wartość
rodzaj Ustaw wartość "Automatycznie" dla typu AutomaticResourcePredictionsProfile. Ustaw wartość "Ręcznie" dla typu ManualResourcePredictionsProfile. "Automatyczny"
"Ręczne" (wymagane)

RuntimeConfiguration (konfiguracja środowiska uruchomieniowego)

Name Description Wartość
workFolder (folder roboczy) Docelowy folder roboczy agenta zadań na komputerze. ciąg

SecretsManagementSettings

Name Description Wartość
certificateStoreLocation Gdzie przechowywać certyfikaty na maszynie. ciąg
certificateStoreName Nazwa magazynu certyfikatów do użycia na maszynie, obecnie obsługiwane są pozycje "Moje" i "Root". "Mój"
"Katalog główny"
keyExportable Określa, czy klucz certyfikatów powinien być eksportowalny. bool (wymagane)
observedCertificates Lista certyfikatów do zainstalowania na wszystkich maszynach w puli. string[] (wymagane)

Stateful

Name Description Wartość
gracePeriodTimeSpan Jak długo maszyna powinna być przechowywana po uruchomieniu obciążenia, gdy nie ma agentów rezerwowych. Maksymalna wartość to tydzień. ciąg
rodzaj Właściwość dyskryminująca dla agentaProfile. "Stanowy" (wymagane)
maxAgentLifetime Jak długo powinny być przechowywane stanowe maszyny. Maksymalna wartość to tydzień. ciąg

StatelessAgentProfile

Name Description Wartość
rodzaj Właściwość dyskryminująca dla agentaProfile. "Bezstanowy" (wymagane)

StorageProfile (Profil magazynu)

Name Description Wartość
dataDisks (dyski danych) Lista pustych dysków danych do dołączenia. Dysk z danymi[]
osDiskStorageAccountType Nazwa jednostki SKU platformy Azure maszyn w puli. "Premium"
"Standardowa"
"StandardSSD"

Śledzone tagi zasobów

Name Description Wartość

UserAssignedIdentity

Name Description Wartość

VmssFabricProfile

Name Description Wartość
images Obrazy maszyn wirtualnych maszyn w puli. PoolImage[] (wymagane)
rodzaj Dyskryminująca właściwość fabricProfile. "Vmss" (wymagane)
networkProfile Profil sieciowy maszyn w puli. Profil sieciowy
osProfile Profil systemu operacyjnego maszyn w puli. OsProfile
sku Jednostka SKU platformy Azure maszyn w puli. DevOpsAzureSku (wymagane)
Profil pamięci masowej Profil magazynu maszyn w puli. StorageProfile (Profil magazynu)

Przykłady użycia

Definicja zasobu narzędzia Terraform (dostawcy AzAPI)

Typ zasobu pul można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.DevOpsInfrastructure/pools, dodaj następujący program Terraform do szablonu.

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

Obiekty AgentProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku funkcji Stateful użyj:

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

W przypadku bezstanowych użyj:

{
  kind = "Stateless"
}

Obiekty ResourcePredictionsProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku opcji Automatyczny użyj:

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

W przypadku instrukcji użyj:

{
  kind = "Manual"
}

Obiekty OrganizationProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku usługi AzureDevOps użyj:

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

W przypadku usługi GitHubużyj:

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

Obiekty FabricProfile

Ustaw właściwość typu , aby określić typ obiektu.

W przypadku usługi VMSS użyj:

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

Wartości właściwości

Microsoft.DevOpsInfrastructure/pools

Name Description Wartość
tożsamość Tożsamości usługi zarządzanej przypisane do tego zasobu. ManagedServiceIdentity (tożsamość usługi)
lokalizacja Lokalizacja geograficzna, w której znajduje się zasób ciąg (wymagany)
nazwa Nazwa zasobu string

Ograniczenia:
Wzorzec = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (wymagane)
parent_id Identyfikator zasobu, do który ma być stosowany ten zasób rozszerzenia. ciąg (wymagany)
properties Właściwości specyficzne dla zasobu dla tego zasobu. PoolProperties
tags Tagi zasobów Słownik nazw tagów i wartości.
typ Typ zasobu "Microsoft.DevOpsInfrastructure/pools@2025-09-20"

AgentProfile

Name Description Wartość
rodzaj Ustaw wartość "Stateful" dla typu Stateful. Ustaw wartość "Stateless" dla typu StatelessAgentProfile. 'Stateful'
"Bezstanowy" (wymagane)
resourcePredictions Definiuje bufor puli/agentów rezerwowych. any
resourcePredictionsProfile Definiuje sposób zapewniania buforu puli/agentów rezerwowych. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Name Description Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Automatyczny" (wymagane)
predictionPreference Określa równowagę między kosztami i wydajnością. 'Balanced'
'BestPerformance'
'MoreCostEffective'
'MorePerformance'
'MostCostEffective'

AzureDevOpsOrganizationProfile

Name Description Wartość
alias Alias odwołujący się do nazwy puli usługi Azure DevOps. ciąg
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "AzureDevOps" (wymagane)
organizations Lista organizacji usługi Azure DevOps, w których powinna znajdować się pula. Organizacja[] (wymagane)
permissionProfile Typ uprawnienia, który określa, które konta są administratorami w puli usługi Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Name Description Wartość
groups Adresy e-mail grupy string[]
rodzaj Określa, kto ma uprawnienia administratora do puli usługi Azure DevOps. 'CreatorOnly'
'Inherit'
"SpecificAccounts" (wymagane)
users Adresy e-mail użytkownika string[]

Dysk danych

Name Description Wartość
buforowanie Typ buforowania, który ma być włączony dla dysków danych. Wartość domyślna buforowania to readwrite. Aby uzyskać informacje o opcjach buforowania, zobacz: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. 'None'
"ReadOnly"
"ReadWrite"
diskSizeGiB Początkowy rozmiar dysku w gigabajtach. int
driveLetter Litera dysku dla pustego dysku danych. Jeśli nie zostanie określony, będzie to pierwsza dostępna litera. ciąg
storageAccountType Typ konta magazynu, który ma być używany dla dysku danych. W przypadku pominięcia wartość domyślna to "standard_lrs". 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'

DevOpsAzureSku

Name Description Wartość
nazwa Nazwa jednostki SKU platformy Azure maszyn w puli. ciąg (wymagany)

Profil tkaniny

Name Description Wartość
rodzaj Ustaw wartość "Vmss" dla typu VmssFabricProfile. "Vmss" (wymagane)

GitHubOrganization

Name Description Wartość
repositories Opcjonalna lista repozytoriów, w których należy utworzyć pulę. string[]
URL Adres URL organizacji usługi GitHub, w którym należy utworzyć pulę. ciąg (wymagany)

GitHubOrganizationProfile

Name Description Wartość
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "GitHub" (wymagane)
organizations Lista organizacji/repozytoriów usługi GitHub, w których powinna znajdować się pula. GitHubOrganization[] (wymagane)

ManagedServiceIdentity

Name Description Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). 'None'
'SystemAssigned'
"SystemAssigned,UserAssigned"
"UserAssigned" (wymagane)
userAssignedIdentities Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Name Description Wartość

ManualResourcePredictionsProfile

Name Description Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Ręczne" (wymagane)

Profil sieciowy

Name Description Wartość
staticIpAddressCount Liczba statycznych publicznych adresów IP dla połączeń wychodzących przypisanych do puli. int
subnetId Identyfikator podsieci, w której mają być umieszczone wszystkie maszyny utworzone w puli. ciąg

Organization

Name Description Wartość
alias Alias odwołujący się do nazwy puli usługi Azure DevOps. ciąg
openAccess (Dostęp otwarty) Określa, czy pula powinna mieć otwarty dostęp do wszystkich projektów w tej organizacji. bool
parallelism Ile maszyn można utworzyć maksymalnie w tej organizacji z maksymalnej liczby komputerów w puli. int
projects Opcjonalna lista projektów, w których należy utworzyć pulę. string[]
URL Adres URL organizacji usługi Azure DevOps, w którym należy utworzyć pulę. ciąg (wymagany)

OrganizationProfile

Name Description Wartość
rodzaj Ustaw wartość "AzureDevOps" dla typu AzureDevOpsOrganizationProfile. Ustaw wartość "GitHub" dla typu GitHubOrganizationProfile. 'AzureDevOps'
"GitHub" (wymagane)

Profil osowy

Name Description Wartość
logonType Określa sposób uruchamiania usługi. Domyślnie zostanie ustawiona wartość Usługa. 'Interactive'
"Usługa"
secretsManagementSettings Ustawienia zarządzania wpisami tajnymi maszyn w puli. SecretsManagementSettings

PoolImage

Name Description Wartość
aliases Lista aliasów do odwołowania się do obrazu. string[]
bufor Procent buforu, który ma zostać przydzielony do tego obrazu. ciąg
ephemeralType Efemeryczny typ obrazu. "Automatyczny"
'CacheDisk'
'ResourceDisk'
resourceId Identyfikator zasobu obrazu. ciąg
wellKnownImageName Obraz do użycia z dobrze znanego zestawu obrazów udostępnianych klientom. ciąg

Właściwości puli

Name Description Wartość
agentProfile Definiuje sposób obsługi maszyny po wykonaniu zadania. AgentProfile (wymagane)
devCenterProjectResourceId Identyfikator zasobu projektu DevCenter, do którego należy pula. ciąg (wymagany)
fabricProfile (profil tkaniny) Definiuje typ sieci szkieletowej, na których będzie uruchamiany agent. FabricProfile (wymagane)
maximumConcurrency Określa, ile zasobów można utworzyć w danym momencie. int

Ograniczenia:
Minimalna wartość = 1
Wartość maksymalna = 10000 (wymagane)
organizationProfile Definiuje organizację, w której będzie używana pula. OrganizationProfile (wymagane)
provisioningState Stan bieżącej operacji. "Zaakceptowane"
"Anulowano"
"Usuwanie"
"Niepowodzenie"
"Aprowizowanie"
"Powodzenie"
"Aktualizowanie"
runtimeConfiguration (konfiguracja środowiska uruchomieniowego) Konfiguracja środowiska uruchomieniowego puli. RuntimeConfiguration (konfiguracja środowiska uruchomieniowego)

ResourcePredictionsProfile

Name Description Wartość
rodzaj Ustaw wartość "Automatycznie" dla typu AutomaticResourcePredictionsProfile. Ustaw wartość "Ręcznie" dla typu ManualResourcePredictionsProfile. "Automatyczny"
"Ręczne" (wymagane)

RuntimeConfiguration (konfiguracja środowiska uruchomieniowego)

Name Description Wartość
workFolder (folder roboczy) Docelowy folder roboczy agenta zadań na komputerze. ciąg

SecretsManagementSettings

Name Description Wartość
certificateStoreLocation Gdzie przechowywać certyfikaty na maszynie. ciąg
certificateStoreName Nazwa magazynu certyfikatów do użycia na maszynie, obecnie obsługiwane są pozycje "Moje" i "Root". "Mój"
"Katalog główny"
keyExportable Określa, czy klucz certyfikatów powinien być eksportowalny. bool (wymagane)
observedCertificates Lista certyfikatów do zainstalowania na wszystkich maszynach w puli. string[] (wymagane)

Stateful

Name Description Wartość
gracePeriodTimeSpan Jak długo maszyna powinna być przechowywana po uruchomieniu obciążenia, gdy nie ma agentów rezerwowych. Maksymalna wartość to tydzień. ciąg
rodzaj Właściwość dyskryminująca dla agentaProfile. "Stanowy" (wymagane)
maxAgentLifetime Jak długo powinny być przechowywane stanowe maszyny. Maksymalna wartość to tydzień. ciąg

StatelessAgentProfile

Name Description Wartość
rodzaj Właściwość dyskryminująca dla agentaProfile. "Bezstanowy" (wymagane)

StorageProfile (Profil magazynu)

Name Description Wartość
dataDisks (dyski danych) Lista pustych dysków danych do dołączenia. Dysk z danymi[]
osDiskStorageAccountType Nazwa jednostki SKU platformy Azure maszyn w puli. "Premium"
"Standardowa"
"StandardSSD"

Śledzone tagi zasobów

Name Description Wartość

UserAssignedIdentity

Name Description Wartość

VmssFabricProfile

Name Description Wartość
images Obrazy maszyn wirtualnych maszyn w puli. PoolImage[] (wymagane)
rodzaj Dyskryminująca właściwość fabricProfile. "Vmss" (wymagane)
networkProfile Profil sieciowy maszyn w puli. Profil sieciowy
osProfile Profil systemu operacyjnego maszyn w puli. OsProfile
sku Jednostka SKU platformy Azure maszyn w puli. DevOpsAzureSku (wymagane)
Profil pamięci masowej Profil magazynu maszyn w puli. StorageProfile (Profil magazynu)

Przykłady użycia

Moduły zweryfikowane na platformie Azure

Następujące moduły zweryfikowane platformy Azure mogą służyć do wdrażania tego typu zasobu.

Moduł Description
Pule DevOps Moduł zasobów AVM dla pul DevOps