Udostępnij za pośrednictwem


Pule Microsoft.DevOpsInfrastructure

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

Obiekty FabricProfile

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

W przypadku usługi Vmssużyj:

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

Obiekty OrganizationProfile

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

W przypadku AzureDevOps użyj:

{
  kind: 'AzureDevOps'
  organizations: [
    {
      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 AgentProfile

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

W przypadku stanowychużyj:

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

W przypadku bezstanowychużyj:

{
  kind: 'Stateless'
}

Obiekty ResourcePredictionsProfile

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

W przypadku automatycznegoużyj:

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

W przypadku ręcznegoużyj:

{
  kind: 'Manual'
}

Wartości właściwości

AgentProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Stateful" dla typu Stanowy. Ustaw wartość "Bezstanowa" dla typu StatelessAgentProfile. "Stanowe"
"Bezstanowy" (wymagany)
resourcePredictions Definiuje bufor puli/agentów rezerwowych. jakikolwiek
resourcePredictionsProfile Definiuje sposób zapewniania buforu puli/agentów rezerwowych. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nazwa Opis Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Automatyczny" (wymagany)
predictionPreference Określa równowagę między kosztami i wydajnością. "Zrównoważony"
"BestPerformance"
"MoreCostEffective"
"WięcejPerformance"
"MostCostEffective"

AzureDevOpsOrganizationProfile

Nazwa Opis Wartość
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "AzureDevOps" (wymagane)
Organizacji Lista organizacji usługi Azure DevOps, w których powinna znajdować się pula. organizacji[] (wymagane)
permissionProfile Typ uprawnienia, który określa, które konta są administratorami w puli usługi Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nazwa Opis Wartość
Grupy Adresy e-mail grupy string[]
rodzaj Określa, kto ma uprawnienia administratora do puli usługi Azure DevOps. "CreatorOnly"
"Dziedzicz"
"Określonekonta" (wymagane)
Użytkowników Adresy e-mail użytkownika string[]

DataDisk

Nazwa Opis 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/. "Brak"
"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. struna
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

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

FabricProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Vmss" dla typu VmssFabricProfile. "Vmss" (wymagane)

GitHubOrganizacja

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

GitHubOrganizationProfile

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

ManagedServiceIdentity

Nazwa Opis Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). "Brak"
"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. UserAssignedIdentities

ManualResourcePredictionsProfile

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

Microsoft.DevOpsInfrastructure/pools

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

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

NetworkProfile

Nazwa Opis Wartość
subnetId Identyfikator podsieci, w której mają być umieszczone wszystkie maszyny utworzone w puli. ciąg (wymagany)

Organizacja

Nazwa Opis Wartość
Równoległości prostych Ile maszyn można utworzyć maksymalnie w tej organizacji z maksymalnej liczby komputerów w puli. Int
projekty Opcjonalna lista projektów, w których należy utworzyć pulę. string[]
adres URL Adres URL organizacji usługi Azure DevOps, w którym należy utworzyć pulę. ciąg (wymagany)

OrganizationProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "AzureDevOps" dla typu AzureDevOpsOrganizationProfile. Ustaw wartość "GitHub" dla typu GitHubOrganizationProfile. "AzureDevOps"
"GitHub" (wymagane)

OsProfile

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

PoolImage

Nazwa Opis Wartość
Aliasy Lista aliasów do odwołowania się do obrazu. string[]
bufor Procent buforu, który ma zostać przydzielony do tego obrazu. struna
resourceId Identyfikator zasobu obrazu. struna
wellKnownImageName Obraz do użycia z dobrze znanego zestawu obrazów udostępnianych klientom. struna

Właściwości puli

Nazwa Opis 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 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"

ResourcePredictionsProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Automatic" dla typu AutomaticResourcePredictionsProfile. Ustaw wartość "Manual" dla typu ManualResourcePredictionsProfile. "Automatyczny"
"Ręczne" (wymagane)

SecretsManagementSettings

Nazwa Opis Wartość
certificateStoreLocation Gdzie przechowywać certyfikaty na maszynie. struna
keyExportable Określa, czy klucz certyfikatów powinien być eksportowalny. bool (wymagane)
obserwowaneCertyfikaty Lista certyfikatów do zainstalowania na wszystkich maszynach w puli. string[] (wymagane)

Stanowe

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

StatelessAgentProfile

Nazwa Opis Wartość
rodzaj Właściwość dyskryminująca dla agentaProfile. "Bezstanowy" (wymagany)

StorageProfile

Nazwa Opis Wartość
dataDisks Lista pustych dysków danych do dołączenia. DataDisk[]
osDiskStorageAccountType Nazwa jednostki SKU platformy Azure maszyn w puli. "Premium"
"Standardowa"
"StandardSSD"

TrackedResourceTags

Nazwa Opis Wartość

UserAssignedIdentities

Nazwa Opis Wartość

UserAssignedIdentity

Nazwa Opis Wartość

VmssFabricProfile

Nazwa Opis Wartość
Obrazów Obrazy maszyn wirtualnych maszyn w puli. PoolImage[] (wymagane)
rodzaj Dyskryminująca właściwość fabricProfile. "Vmss" (wymagane)
networkProfile Profil sieciowy maszyn w puli. NetworkProfile
osProfile Profil systemu operacyjnego maszyn w puli. OsProfile
Numer jednostki magazynowej Jednostka SKU platformy Azure maszyn w puli. DevOpsAzureSku (wymagane)
storageProfile Profil magazynu maszyn w puli. StorageProfile

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

Obiekty FabricProfile

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

W przypadku usługi Vmssużyj:

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

Obiekty OrganizationProfile

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

W przypadku AzureDevOps użyj:

{
  "kind": "AzureDevOps",
  "organizations": [
    {
      "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 AgentProfile

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

W przypadku stanowychużyj:

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

W przypadku bezstanowychużyj:

{
  "kind": "Stateless"
}

Obiekty ResourcePredictionsProfile

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

W przypadku automatycznegoużyj:

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

W przypadku ręcznegoużyj:

{
  "kind": "Manual"
}

Wartości właściwości

AgentProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Stateful" dla typu Stanowy. Ustaw wartość "Bezstanowa" dla typu StatelessAgentProfile. "Stanowe"
"Bezstanowy" (wymagany)
resourcePredictions Definiuje bufor puli/agentów rezerwowych. jakikolwiek
resourcePredictionsProfile Definiuje sposób zapewniania buforu puli/agentów rezerwowych. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nazwa Opis Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Automatyczny" (wymagany)
predictionPreference Określa równowagę między kosztami i wydajnością. "Zrównoważony"
"BestPerformance"
"MoreCostEffective"
"WięcejPerformance"
"MostCostEffective"

AzureDevOpsOrganizationProfile

Nazwa Opis Wartość
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "AzureDevOps" (wymagane)
Organizacji Lista organizacji usługi Azure DevOps, w których powinna znajdować się pula. organizacji[] (wymagane)
permissionProfile Typ uprawnienia, który określa, które konta są administratorami w puli usługi Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nazwa Opis Wartość
Grupy Adresy e-mail grupy string[]
rodzaj Określa, kto ma uprawnienia administratora do puli usługi Azure DevOps. "CreatorOnly"
"Dziedzicz"
"Określonekonta" (wymagane)
Użytkowników Adresy e-mail użytkownika string[]

DataDisk

Nazwa Opis 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/. "Brak"
"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. struna
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

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

FabricProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Vmss" dla typu VmssFabricProfile. "Vmss" (wymagane)

GitHubOrganizacja

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

GitHubOrganizationProfile

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

ManagedServiceIdentity

Nazwa Opis Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). "Brak"
"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. UserAssignedIdentities

ManualResourcePredictionsProfile

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

Microsoft.DevOpsInfrastructure/pools

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

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

NetworkProfile

Nazwa Opis Wartość
subnetId Identyfikator podsieci, w której mają być umieszczone wszystkie maszyny utworzone w puli. ciąg (wymagany)

Organizacja

Nazwa Opis Wartość
Równoległości prostych Ile maszyn można utworzyć maksymalnie w tej organizacji z maksymalnej liczby komputerów w puli. Int
projekty Opcjonalna lista projektów, w których należy utworzyć pulę. string[]
adres URL Adres URL organizacji usługi Azure DevOps, w którym należy utworzyć pulę. ciąg (wymagany)

OrganizationProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "AzureDevOps" dla typu AzureDevOpsOrganizationProfile. Ustaw wartość "GitHub" dla typu GitHubOrganizationProfile. "AzureDevOps"
"GitHub" (wymagane)

OsProfile

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

PoolImage

Nazwa Opis Wartość
Aliasy Lista aliasów do odwołowania się do obrazu. string[]
bufor Procent buforu, który ma zostać przydzielony do tego obrazu. struna
resourceId Identyfikator zasobu obrazu. struna
wellKnownImageName Obraz do użycia z dobrze znanego zestawu obrazów udostępnianych klientom. struna

Właściwości puli

Nazwa Opis 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 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"

ResourcePredictionsProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Automatic" dla typu AutomaticResourcePredictionsProfile. Ustaw wartość "Manual" dla typu ManualResourcePredictionsProfile. "Automatyczny"
"Ręczne" (wymagane)

SecretsManagementSettings

Nazwa Opis Wartość
certificateStoreLocation Gdzie przechowywać certyfikaty na maszynie. struna
keyExportable Określa, czy klucz certyfikatów powinien być eksportowalny. bool (wymagane)
obserwowaneCertyfikaty Lista certyfikatów do zainstalowania na wszystkich maszynach w puli. string[] (wymagane)

Stanowe

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

StatelessAgentProfile

Nazwa Opis Wartość
rodzaj Właściwość dyskryminująca dla agentaProfile. "Bezstanowy" (wymagany)

StorageProfile

Nazwa Opis Wartość
dataDisks Lista pustych dysków danych do dołączenia. DataDisk[]
osDiskStorageAccountType Nazwa jednostki SKU platformy Azure maszyn w puli. "Premium"
"Standardowa"
"StandardSSD"

TrackedResourceTags

Nazwa Opis Wartość

UserAssignedIdentities

Nazwa Opis Wartość

UserAssignedIdentity

Nazwa Opis Wartość

VmssFabricProfile

Nazwa Opis Wartość
Obrazów Obrazy maszyn wirtualnych maszyn w puli. PoolImage[] (wymagane)
rodzaj Dyskryminująca właściwość fabricProfile. "Vmss" (wymagane)
networkProfile Profil sieciowy maszyn w puli. NetworkProfile
osProfile Profil systemu operacyjnego maszyn w puli. OsProfile
Numer jednostki magazynowej Jednostka SKU platformy Azure maszyn w puli. DevOpsAzureSku (wymagane)
storageProfile Profil magazynu maszyn w puli. StorageProfile

Definicja zasobu narzędzia Terraform (dostawcy AzAPI)

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

  • grupy zasobów

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

Obiekty FabricProfile

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

W przypadku usługi Vmssużyj:

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

Obiekty OrganizationProfile

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

W przypadku AzureDevOps użyj:

{
  kind = "AzureDevOps"
  organizations = [
    {
      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 AgentProfile

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

W przypadku stanowychużyj:

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

W przypadku bezstanowychużyj:

{
  kind = "Stateless"
}

Obiekty ResourcePredictionsProfile

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

W przypadku automatycznegoużyj:

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

W przypadku ręcznegoużyj:

{
  kind = "Manual"
}

Wartości właściwości

AgentProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Stateful" dla typu Stanowy. Ustaw wartość "Bezstanowa" dla typu StatelessAgentProfile. "Stanowe"
"Bezstanowy" (wymagany)
resourcePredictions Definiuje bufor puli/agentów rezerwowych. jakikolwiek
resourcePredictionsProfile Definiuje sposób zapewniania buforu puli/agentów rezerwowych. ResourcePredictionsProfile

AutomaticResourcePredictionsProfile

Nazwa Opis Wartość
rodzaj Określa sposób zapewniania schematu rezerwowego. "Automatyczny" (wymagany)
predictionPreference Określa równowagę między kosztami i wydajnością. "Zrównoważony"
"BestPerformance"
"MoreCostEffective"
"WięcejPerformance"
"MostCostEffective"

AzureDevOpsOrganizationProfile

Nazwa Opis Wartość
rodzaj Właściwość dyskryminująca dla elementu OrganizationProfile. "AzureDevOps" (wymagane)
Organizacji Lista organizacji usługi Azure DevOps, w których powinna znajdować się pula. organizacji[] (wymagane)
permissionProfile Typ uprawnienia, który określa, które konta są administratorami w puli usługi Azure DevOps. AzureDevOpsPermissionProfile

AzureDevOpsPermissionProfile

Nazwa Opis Wartość
Grupy Adresy e-mail grupy string[]
rodzaj Określa, kto ma uprawnienia administratora do puli usługi Azure DevOps. "CreatorOnly"
"Dziedzicz"
"Określonekonta" (wymagane)
Użytkowników Adresy e-mail użytkownika string[]

DataDisk

Nazwa Opis 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/. "Brak"
"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. struna
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

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

FabricProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Vmss" dla typu VmssFabricProfile. "Vmss" (wymagane)

GitHubOrganizacja

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

GitHubOrganizationProfile

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

ManagedServiceIdentity

Nazwa Opis Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). "Brak"
"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. UserAssignedIdentities

ManualResourcePredictionsProfile

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

Microsoft.DevOpsInfrastructure/pools

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

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

NetworkProfile

Nazwa Opis Wartość
subnetId Identyfikator podsieci, w której mają być umieszczone wszystkie maszyny utworzone w puli. ciąg (wymagany)

Organizacja

Nazwa Opis Wartość
Równoległości prostych Ile maszyn można utworzyć maksymalnie w tej organizacji z maksymalnej liczby komputerów w puli. Int
projekty Opcjonalna lista projektów, w których należy utworzyć pulę. string[]
adres URL Adres URL organizacji usługi Azure DevOps, w którym należy utworzyć pulę. ciąg (wymagany)

OrganizationProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "AzureDevOps" dla typu AzureDevOpsOrganizationProfile. Ustaw wartość "GitHub" dla typu GitHubOrganizationProfile. "AzureDevOps"
"GitHub" (wymagane)

OsProfile

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

PoolImage

Nazwa Opis Wartość
Aliasy Lista aliasów do odwołowania się do obrazu. string[]
bufor Procent buforu, który ma zostać przydzielony do tego obrazu. struna
resourceId Identyfikator zasobu obrazu. struna
wellKnownImageName Obraz do użycia z dobrze znanego zestawu obrazów udostępnianych klientom. struna

Właściwości puli

Nazwa Opis 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 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"

ResourcePredictionsProfile

Nazwa Opis Wartość
rodzaj Ustaw wartość "Automatic" dla typu AutomaticResourcePredictionsProfile. Ustaw wartość "Manual" dla typu ManualResourcePredictionsProfile. "Automatyczny"
"Ręczne" (wymagane)

SecretsManagementSettings

Nazwa Opis Wartość
certificateStoreLocation Gdzie przechowywać certyfikaty na maszynie. struna
keyExportable Określa, czy klucz certyfikatów powinien być eksportowalny. bool (wymagane)
obserwowaneCertyfikaty Lista certyfikatów do zainstalowania na wszystkich maszynach w puli. string[] (wymagane)

Stanowe

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

StatelessAgentProfile

Nazwa Opis Wartość
rodzaj Właściwość dyskryminująca dla agentaProfile. "Bezstanowy" (wymagany)

StorageProfile

Nazwa Opis Wartość
dataDisks Lista pustych dysków danych do dołączenia. DataDisk[]
osDiskStorageAccountType Nazwa jednostki SKU platformy Azure maszyn w puli. "Premium"
"Standardowa"
"StandardSSD"

TrackedResourceTags

Nazwa Opis Wartość

UserAssignedIdentities

Nazwa Opis Wartość

UserAssignedIdentity

Nazwa Opis Wartość

VmssFabricProfile

Nazwa Opis Wartość
Obrazów Obrazy maszyn wirtualnych maszyn w puli. PoolImage[] (wymagane)
rodzaj Dyskryminująca właściwość fabricProfile. "Vmss" (wymagane)
networkProfile Profil sieciowy maszyn w puli. NetworkProfile
osProfile Profil systemu operacyjnego maszyn w puli. OsProfile
Numer jednostki magazynowej Jednostka SKU platformy Azure maszyn w puli. DevOpsAzureSku (wymagane)
storageProfile Profil magazynu maszyn w puli. StorageProfile