Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Definizione della risorsa Bicep
Il tipo di risorsa pool può essere distribuito con operazioni destinate a:
Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.
Esempi di utilizzo
Moduli verificati di Azure
I seguenti Azure Moduli Verificati possono essere utilizzati per distribuire questo tipo di risorsa.
| Module | Description |
|---|---|
| Pool di Infrastruttura DevOps | Modulo di risorse AVM per il pool di infrastruttura DevOps |
Formato delle risorse
Per creare un Microsoft. Risorsa DevOpsInfrastructure/pools, aggiungi il seguente Bicep al tuo template.
resource symbolicname 'Microsoft.DevOpsInfrastructure/pools@2026-06-02' = {
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'
}
}
Oggetti ResourcePredictionsProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per l'Automatico, utilizzare:
{
kind: 'Automatic'
predictionPreference: 'string'
}
Per il manuale, utilizzare:
{
kind: 'Manual'
}
Oggetti AgentProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per Stateful, utilizzare:
{
gracePeriodTimeSpan: 'string'
kind: 'Stateful'
maxAgentLifetime: 'string'
}
Per gli apolidi, utilizzare:
{
kind: 'Stateless'
}
Oggetti OrganizationProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per AzureDevOps, usare:
{
alias: 'string'
description: 'string'
kind: 'AzureDevOps'
organizations: [
{
alias: 'string'
openAccess: bool
parallelism: int
projects: [
'string'
]
url: 'string'
}
]
permissionProfile: {
groups: [
'string'
]
kind: 'string'
users: [
'string'
]
}
updateDescription: bool
}
Per GitHub, si utilizza:
{
kind: 'GitHub'
organizations: [
{
repositories: [
'string'
]
url: 'string'
}
]
}
Oggetti FabricProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per Vmss, utilizzare:
{
images: [
{
aliases: [
'string'
]
buffer: 'string'
ephemeralType: 'string'
provisioningScriptEntryPoint: 'string'
provisioningScriptManagedIdentityClientId: 'string'
provisioningScriptShouldRestart: bool
provisioningScriptStorageAccountResourceId: '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: {
linuxNvmePath: 'string'
name: 'string'
vmSizes: [
{
name: 'string'
}
]
windowsNvmeDrive: 'string'
}
storageProfile: {
dataDisks: [
{
caching: 'string'
diskSizeGiB: int
driveLetter: 'string'
storageAccountType: 'string'
}
]
osDiskStorageAccountType: 'string'
}
}
Valori delle proprietà
Microsoft. DevOpsInfrastructure/pool
| Name | Description | Value |
|---|---|---|
| identity | Identità del servizio gestito assegnate a questa risorsa. | ManagedServiceIdentity |
| location | Posizione geografica in cui risiede la risorsa | stringa (obbligatorio) |
| name | Nome della risorsa | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obbligatorio) |
| properties | Proprietà specifiche della risorsa. | PoolProperties |
| tags | Tag delle risorse | Dizionario di nomi e valori di tag. Vedere tag nei modelli |
AgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su "Stateful" per il tipo Stateful. Impostare su 'Stateless' per il tipo StatelessAgentProfile. | 'Stateful' "Apolide" (obbligatorio) |
| resourcePredictions | Definisce gli agenti di buffer/stand-by del pool. | any |
| resourcePredictionsProfile | Definisce il modo in cui vengono forniti gli agenti buffer/stand-by del pool. | ResourcePredictionsProfile |
AutomaticResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Determina il modo in cui deve essere fornito lo schema stand-by. | 'Automatico' (obbligatorio) |
| predictionPreference | Determina l'equilibrio tra costi e prestazioni. | 'Balanced' 'BestPerformance' 'MoreCostEffective' 'MorePerformance' 'MostCostEffective' |
AzureDevOpsOrganizationProfile
| Name | Description | Value |
|---|---|---|
| alias | Un alias per fare riferimento al nome del pool Azure DevOps. | string |
| description | Una descrizione extra da aggiungere al pool Azure DevOps. | string |
| kind | Proprietà discriminatoria per OrganizationProfile. | 'AzureDevOps' (obbligatorio) |
| organizations | L'elenco delle organizzazioni Azure DevOps in cui il pool dovrebbe essere presente. | Organizzazione[] (richiesto) |
| permissionProfile | Il tipo di permesso che determina quali account sono amministratori nel pool Azure DevOps. | AzureDevOpsPermissionProfile |
| aggiornamentoDescrizione | Determina se il servizio aggiorna la descrizione del pool Azure DevOps. | bool |
AzureDevOpsPermissionProfile
| Name | Description | Value |
|---|---|---|
| groups | Indirizzi di posta elettronica del gruppo | string[] |
| kind | Determina chi ha i permessi amministratori per il pool Azure DevOps. | 'CreatorOnly' 'Inherit' 'SpecificAccounts' (obbligatorio) |
| users | Indirizzi di posta elettronica utente | string[] |
DataDisk
| Name | Description | Value |
|---|---|---|
| caching | Tipo di memorizzazione nella cache da abilitare per i dischi dati. Il valore predefinito per la memorizzazione nella cache è readwrite. Per informazioni sulle opzioni di memorizzazione nella cache, vedere: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. | 'None' 'ReadOnly' 'ReadWrite' |
| diskSizeGiB | Dimensioni iniziali del disco in gigabyte. | int |
| driveLetter | Lettera di unità per il disco dati vuoto. Se non specificato, sarà la prima lettera disponibile. | string |
| storageAccountType | Tipo di account di archiviazione da usare per il disco dati. Se omesso, il valore predefinito è "standard_lrs". | 'Premium_LRS' 'Premium_ZRS' 'StandardSSD_LRS' 'StandardSSD_ZRS' 'Standard_LRS' |
DevOpsAzureSku
| Name | Description | Value |
|---|---|---|
| linuxNvmePath | Il percorso di montaggio per il volume striato NVMe su Linux (ad esempio, '/mnt/azure_nvme_temp'). Di default imposta '/mnt/azure_nvme_temp' quando non è specificato. | string |
| name | Il nome SKU Azure delle macchine nel pool. | stringa (obbligatorio) |
| vmSizes | Specifica le dimensioni delle VM per l'allocazione del sistema di istanze. | VmSize[] |
| windowsNvmeDrive | La lettera dell'unità per il volume a strisce NVMe su Windows (ad esempio, 'N'). Di default imposta la 'N' quando non specificato. | string |
FabricProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su 'Vmss' per il tipo VmssFabricProfile. | 'Vmss' (obbligatorio) |
GitHubOrganization
| Name | Description | Value |
|---|---|---|
| repositories | Elenco facoltativo di repository in cui creare il pool. | string[] |
| url | L'URL dell'organizzazione di GitHub in cui il pool dovrebbe essere creato. | stringa (obbligatorio) |
GitHubOrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Proprietà discriminatoria per OrganizationProfile. | 'GitHub' (richiesto) |
| organizations | L'elenco delle organizzazioni/repository GitHub in cui il pool dovrebbe essere presente. | GitHubOrganization[] (obbligatorio) |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | Tipo di identità del servizio gestito (in cui sono consentiti sia i tipi SystemAssigned che UserAssigned). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (obbligatorio) |
| userAssignedIdentities | Set di identità assegnate dall'utente associate alla risorsa. Le chiavi del dizionario userAssignedIdentities saranno ID di risorsa ARM nel modulo: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft. ManagedIdentity/userAssignedIdentities/{identityName}. I valori del dizionario possono essere oggetti vuoti ({}) nelle richieste. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ManualResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Determina il modo in cui deve essere fornito lo schema stand-by. | 'Manuale' (obbligatorio) |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| staticIpAddressCount | Numero di indirizzi IP pubblici statici per le connessioni in uscita assegnate al pool. | int |
| subnetId | ID subnet in cui inserire tutti i computer creati nel pool. | string |
Organization
| Name | Description | Value |
|---|---|---|
| alias | Un alias per fare riferimento al nome del pool Azure DevOps. | string |
| openAccess | Determina se il pool deve avere accesso aperto a tutti i progetti dell'organizzazione. | bool |
| parallelism | Numero massimo di computer che possono essere creati in questa organizzazione al di fuori della concorrenza massima del pool. | int |
| projects | Elenco facoltativo di progetti in cui creare il pool. | string[] |
| url | L'URL dell'organizzazione Azure DevOps in cui il pool dovrebbe essere creato. | stringa (obbligatorio) |
OrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su 'AzureDevOps' per il tipo AzureDevOpsOrganizationProfile. Impostato su 'GitHub' per il tipo GitHubOrganizationProfile. | 'AzureDevOps' 'GitHub' (richiesto) |
OsProfile
| Name | Description | Value |
|---|---|---|
| logonType | Determina la modalità di esecuzione del servizio. Per impostazione predefinita, questa opzione verrà impostata su Servizio. | 'Interactive' 'Service' |
| secretsManagementSettings | Impostazioni di gestione dei segreti dei computer nel pool. | SecretsManagementSettings |
PoolImage
| Name | Description | Value |
|---|---|---|
| aliases | Elenco di alias per cui fare riferimento all'immagine. | string[] |
| buffer | Percentuale del buffer da allocare a questa immagine. | string |
| ephemeralType | Tipo temporaneo dell'immagine. | 'Automatic' 'CacheDisk' 'ResourceDisk' |
| provisioningScriptEntryPoint | Il punto di ingresso dello script di provisioning per questa immagine. | string |
| provisioningScriptManagedIdentityClientId | L'ID client di identità gestita utilizzato per accedere al contenuto degli script di provisioning per questa immagine. | string |
| provisioningScriptShouldRestart | Determina se la macchina debba essere riavviata dopo aver fornito l'esecuzione dello script per questa immagine. | bool |
| provisioningScriptStorageAccountResourceId | L'ID risorsa ARM dell'account di archiviazione che ospita gli script di provisioning per questa immagine. | string |
| resourceId | ID risorsa dell'immagine. | string |
| wellKnownImageName | Immagine da usare da un set noto di immagini rese disponibili ai clienti. | string |
PoolProperties
| Name | Description | Value |
|---|---|---|
| agentProfile | Definisce la modalità di gestione del computer dopo l'esecuzione di un processo. | AgentProfile (obbligatorio) |
| devCenterProjectResourceId | L'ID della risorsa del DevCenter Project a cui appartiene il pool. | string |
| fabricProfile | Definisce il tipo di infrastruttura in cui verrà eseguito l'agente. | FabricProfile (richiesto) |
| maximumConcurrency | Definisce il numero di risorse che è possibile creare in qualsiasi momento. | int Constraints: Valore minimo = 1 Valore massimo = 10000 (obbligatorio) |
| organizationProfile | Definisce l'organizzazione in cui verrà usato il pool. | OrganizationProfile (obbligatorio) |
| provisioningState | Stato dell'operazione corrente. | 'Accepted' 'Canceled' 'Deleting' 'Failed' 'Provisioning' 'Succeeded' 'Updating' |
| runtimeConfiguration | Configurazione di runtime del pool. | Configurazione del runtime |
ResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su "Automatico" per il tipo AutomaticResourcePredictionsProfile. Impostare su 'Manual' per il tipo ManualResourcePredictionsProfile. | 'Automatic' 'Manuale' (obbligatorio) |
Configurazione del runtime
| Name | Description | Value |
|---|---|---|
| cartella di lavoro | Cartella di lavoro di destinazione dell'agente attività nel computer. | string |
SecretsManagementSettings
| Name | Description | Value |
|---|---|---|
| certificateStoreLocation | Dove archiviare i certificati nel computer. | string |
| certificateStoreName | Il nome dell'archivio certificati da usare nel computer, attualmente sono supportati "My" e "Root". | 'My' 'Root' |
| keyExportable | Definisce se la chiave dei certificati deve essere esportabile. | bool (obbligatorio) |
| observedCertificates | Elenco di certificati da installare in tutti i computer nel pool. | string[] (obbligatorio) |
Stateful
| Name | Description | Value |
|---|---|---|
| gracePeriodTimeSpan | Quanto tempo deve essere mantenuto il computer dopo l'esecuzione di un carico di lavoro quando non sono presenti agenti stand-by. Il valore massimo è una settimana. | string |
| kind | Proprietà discriminatoria per AgentProfile. | 'Stateful' (obbligatorio) |
| maxAgentLifetime | Per quanto tempo devono essere mantenute le macchine con stato. Il valore massimo è una settimana. | string |
StatelessAgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Proprietà discriminatoria per AgentProfile. | "Apolide" (obbligatorio) |
StorageProfile
| Name | Description | Value |
|---|---|---|
| dataDisks | Elenco di dischi dati vuoti da collegare. | DataDisk[] |
| osDiskStorageAccountType | Il nome SKU Azure delle macchine nel pool. | 'Premium' 'Standard' 'StandardSSD' |
TrackedResourceTags
| Name | Description | Value |
|---|
UserAssignedIdentity
| Name | Description | Value |
|---|
VmSize
| Name | Description | Value |
|---|---|---|
| name | Specifica il nome delle dimensioni della macchina virtuale. | string |
VmssFabricProfile
| Name | Description | Value |
|---|---|---|
| images | Immagini di macchine virtuali dei computer nel pool. | PoolImage[] (obbligatorio) |
| kind | Proprietà discriminatoria per FabricProfile. | 'Vmss' (obbligatorio) |
| networkProfile | Profilo di rete dei computer nel pool. | NetworkProfile |
| osProfile | Profilo del sistema operativo dei computer nel pool. | OsProfile |
| sku | Lo SKU Azure delle macchine nel pool. | DevOpsAzureSku (obbligatorio) |
| storageProfile | Profilo di archiviazione dei computer nel pool. | StorageProfile |
Definizione di risorsa del modello di Resource Manager
Il tipo di risorsa pool può essere distribuito con operazioni destinate a:
- Gruppi di risorse - Vedi comandi di distribuzione dei gruppi di risorse Per un elenco delle proprietà modificate in ciascuna versione API, vedi registro delle modifiche.
Esempi di utilizzo
Formato delle risorse
Per creare un Microsoft. Risorsa DevOpsInfrastructure/pools, aggiungi il seguente JSON al tuo template.
{
"type": "Microsoft.DevOpsInfrastructure/pools",
"apiVersion": "2026-06-02",
"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"
}
}
Oggetti ResourcePredictionsProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per l'Automatico, utilizzare:
{
"kind": "Automatic",
"predictionPreference": "string"
}
Per il manuale, utilizzare:
{
"kind": "Manual"
}
Oggetti AgentProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per Stateful, utilizzare:
{
"gracePeriodTimeSpan": "string",
"kind": "Stateful",
"maxAgentLifetime": "string"
}
Per gli apolidi, utilizzare:
{
"kind": "Stateless"
}
Oggetti OrganizationProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per AzureDevOps, usare:
{
"alias": "string",
"description": "string",
"kind": "AzureDevOps",
"organizations": [
{
"alias": "string",
"openAccess": "bool",
"parallelism": "int",
"projects": [ "string" ],
"url": "string"
}
],
"permissionProfile": {
"groups": [ "string" ],
"kind": "string",
"users": [ "string" ]
},
"updateDescription": "bool"
}
Per GitHub, si utilizza:
{
"kind": "GitHub",
"organizations": [
{
"repositories": [ "string" ],
"url": "string"
}
]
}
Oggetti FabricProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per Vmss, utilizzare:
{
"images": [
{
"aliases": [ "string" ],
"buffer": "string",
"ephemeralType": "string",
"provisioningScriptEntryPoint": "string",
"provisioningScriptManagedIdentityClientId": "string",
"provisioningScriptShouldRestart": "bool",
"provisioningScriptStorageAccountResourceId": "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": {
"linuxNvmePath": "string",
"name": "string",
"vmSizes": [
{
"name": "string"
}
],
"windowsNvmeDrive": "string"
},
"storageProfile": {
"dataDisks": [
{
"caching": "string",
"diskSizeGiB": "int",
"driveLetter": "string",
"storageAccountType": "string"
}
],
"osDiskStorageAccountType": "string"
}
}
Valori delle proprietà
Microsoft. DevOpsInfrastructure/pool
| Name | Description | Value |
|---|---|---|
| apiVersion | Versione dell'API | '2026-06-02' |
| identity | Identità del servizio gestito assegnate a questa risorsa. | ManagedServiceIdentity |
| location | Posizione geografica in cui risiede la risorsa | stringa (obbligatorio) |
| name | Nome della risorsa | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obbligatorio) |
| properties | Proprietà specifiche della risorsa. | PoolProperties |
| tags | Tag delle risorse | Dizionario di nomi e valori di tag. Vedere tag nei modelli |
| type | Tipo di risorsa | 'Microsoft. DevOpsInfrastructure/pool |
AgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su "Stateful" per il tipo Stateful. Impostare su 'Stateless' per il tipo StatelessAgentProfile. | 'Stateful' "Apolide" (obbligatorio) |
| resourcePredictions | Definisce gli agenti di buffer/stand-by del pool. | any |
| resourcePredictionsProfile | Definisce il modo in cui vengono forniti gli agenti buffer/stand-by del pool. | ResourcePredictionsProfile |
AutomaticResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Determina il modo in cui deve essere fornito lo schema stand-by. | 'Automatico' (obbligatorio) |
| predictionPreference | Determina l'equilibrio tra costi e prestazioni. | 'Balanced' 'BestPerformance' 'MoreCostEffective' 'MorePerformance' 'MostCostEffective' |
AzureDevOpsOrganizationProfile
| Name | Description | Value |
|---|---|---|
| alias | Un alias per fare riferimento al nome del pool Azure DevOps. | string |
| description | Una descrizione extra da aggiungere al pool Azure DevOps. | string |
| kind | Proprietà discriminatoria per OrganizationProfile. | 'AzureDevOps' (obbligatorio) |
| organizations | L'elenco delle organizzazioni Azure DevOps in cui il pool dovrebbe essere presente. | Organizzazione[] (richiesto) |
| permissionProfile | Il tipo di permesso che determina quali account sono amministratori nel pool Azure DevOps. | AzureDevOpsPermissionProfile |
| aggiornamentoDescrizione | Determina se il servizio aggiorna la descrizione del pool Azure DevOps. | bool |
AzureDevOpsPermissionProfile
| Name | Description | Value |
|---|---|---|
| groups | Indirizzi di posta elettronica del gruppo | string[] |
| kind | Determina chi ha i permessi amministratori per il pool Azure DevOps. | 'CreatorOnly' 'Inherit' 'SpecificAccounts' (obbligatorio) |
| users | Indirizzi di posta elettronica utente | string[] |
DataDisk
| Name | Description | Value |
|---|---|---|
| caching | Tipo di memorizzazione nella cache da abilitare per i dischi dati. Il valore predefinito per la memorizzazione nella cache è readwrite. Per informazioni sulle opzioni di memorizzazione nella cache, vedere: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. | 'None' 'ReadOnly' 'ReadWrite' |
| diskSizeGiB | Dimensioni iniziali del disco in gigabyte. | int |
| driveLetter | Lettera di unità per il disco dati vuoto. Se non specificato, sarà la prima lettera disponibile. | string |
| storageAccountType | Tipo di account di archiviazione da usare per il disco dati. Se omesso, il valore predefinito è "standard_lrs". | 'Premium_LRS' 'Premium_ZRS' 'StandardSSD_LRS' 'StandardSSD_ZRS' 'Standard_LRS' |
DevOpsAzureSku
| Name | Description | Value |
|---|---|---|
| linuxNvmePath | Il percorso di montaggio per il volume striato NVMe su Linux (ad esempio, '/mnt/azure_nvme_temp'). Di default imposta '/mnt/azure_nvme_temp' quando non è specificato. | string |
| name | Il nome SKU Azure delle macchine nel pool. | stringa (obbligatorio) |
| vmSizes | Specifica le dimensioni delle VM per l'allocazione del sistema di istanze. | VmSize[] |
| windowsNvmeDrive | La lettera dell'unità per il volume a strisce NVMe su Windows (ad esempio, 'N'). Di default imposta la 'N' quando non specificato. | string |
FabricProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su 'Vmss' per il tipo VmssFabricProfile. | 'Vmss' (obbligatorio) |
GitHubOrganization
| Name | Description | Value |
|---|---|---|
| repositories | Elenco facoltativo di repository in cui creare il pool. | string[] |
| url | L'URL dell'organizzazione di GitHub in cui il pool dovrebbe essere creato. | stringa (obbligatorio) |
GitHubOrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Proprietà discriminatoria per OrganizationProfile. | 'GitHub' (richiesto) |
| organizations | L'elenco delle organizzazioni/repository GitHub in cui il pool dovrebbe essere presente. | GitHubOrganization[] (obbligatorio) |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | Tipo di identità del servizio gestito (in cui sono consentiti sia i tipi SystemAssigned che UserAssigned). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (obbligatorio) |
| userAssignedIdentities | Set di identità assegnate dall'utente associate alla risorsa. Le chiavi del dizionario userAssignedIdentities saranno ID di risorsa ARM nel modulo: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft. ManagedIdentity/userAssignedIdentities/{identityName}. I valori del dizionario possono essere oggetti vuoti ({}) nelle richieste. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ManualResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Determina il modo in cui deve essere fornito lo schema stand-by. | 'Manuale' (obbligatorio) |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| staticIpAddressCount | Numero di indirizzi IP pubblici statici per le connessioni in uscita assegnate al pool. | int |
| subnetId | ID subnet in cui inserire tutti i computer creati nel pool. | string |
Organization
| Name | Description | Value |
|---|---|---|
| alias | Un alias per fare riferimento al nome del pool Azure DevOps. | string |
| openAccess | Determina se il pool deve avere accesso aperto a tutti i progetti dell'organizzazione. | bool |
| parallelism | Numero massimo di computer che possono essere creati in questa organizzazione al di fuori della concorrenza massima del pool. | int |
| projects | Elenco facoltativo di progetti in cui creare il pool. | string[] |
| url | L'URL dell'organizzazione Azure DevOps in cui il pool dovrebbe essere creato. | stringa (obbligatorio) |
OrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su 'AzureDevOps' per il tipo AzureDevOpsOrganizationProfile. Impostato su 'GitHub' per il tipo GitHubOrganizationProfile. | 'AzureDevOps' 'GitHub' (richiesto) |
OsProfile
| Name | Description | Value |
|---|---|---|
| logonType | Determina la modalità di esecuzione del servizio. Per impostazione predefinita, questa opzione verrà impostata su Servizio. | 'Interactive' 'Service' |
| secretsManagementSettings | Impostazioni di gestione dei segreti dei computer nel pool. | SecretsManagementSettings |
PoolImage
| Name | Description | Value |
|---|---|---|
| aliases | Elenco di alias per cui fare riferimento all'immagine. | string[] |
| buffer | Percentuale del buffer da allocare a questa immagine. | string |
| ephemeralType | Tipo temporaneo dell'immagine. | 'Automatic' 'CacheDisk' 'ResourceDisk' |
| provisioningScriptEntryPoint | Il punto di ingresso dello script di provisioning per questa immagine. | string |
| provisioningScriptManagedIdentityClientId | L'ID client di identità gestita utilizzato per accedere al contenuto degli script di provisioning per questa immagine. | string |
| provisioningScriptShouldRestart | Determina se la macchina debba essere riavviata dopo aver fornito l'esecuzione dello script per questa immagine. | bool |
| provisioningScriptStorageAccountResourceId | L'ID risorsa ARM dell'account di archiviazione che ospita gli script di provisioning per questa immagine. | string |
| resourceId | ID risorsa dell'immagine. | string |
| wellKnownImageName | Immagine da usare da un set noto di immagini rese disponibili ai clienti. | string |
PoolProperties
| Name | Description | Value |
|---|---|---|
| agentProfile | Definisce la modalità di gestione del computer dopo l'esecuzione di un processo. | AgentProfile (obbligatorio) |
| devCenterProjectResourceId | L'ID della risorsa del DevCenter Project a cui appartiene il pool. | string |
| fabricProfile | Definisce il tipo di infrastruttura in cui verrà eseguito l'agente. | FabricProfile (richiesto) |
| maximumConcurrency | Definisce il numero di risorse che è possibile creare in qualsiasi momento. | int Constraints: Valore minimo = 1 Valore massimo = 10000 (obbligatorio) |
| organizationProfile | Definisce l'organizzazione in cui verrà usato il pool. | OrganizationProfile (obbligatorio) |
| provisioningState | Stato dell'operazione corrente. | 'Accepted' 'Canceled' 'Deleting' 'Failed' 'Provisioning' 'Succeeded' 'Updating' |
| runtimeConfiguration | Configurazione di runtime del pool. | Configurazione del runtime |
ResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su "Automatico" per il tipo AutomaticResourcePredictionsProfile. Impostare su 'Manual' per il tipo ManualResourcePredictionsProfile. | 'Automatic' 'Manuale' (obbligatorio) |
Configurazione del runtime
| Name | Description | Value |
|---|---|---|
| cartella di lavoro | Cartella di lavoro di destinazione dell'agente attività nel computer. | string |
SecretsManagementSettings
| Name | Description | Value |
|---|---|---|
| certificateStoreLocation | Dove archiviare i certificati nel computer. | string |
| certificateStoreName | Il nome dell'archivio certificati da usare nel computer, attualmente sono supportati "My" e "Root". | 'My' 'Root' |
| keyExportable | Definisce se la chiave dei certificati deve essere esportabile. | bool (obbligatorio) |
| observedCertificates | Elenco di certificati da installare in tutti i computer nel pool. | string[] (obbligatorio) |
Stateful
| Name | Description | Value |
|---|---|---|
| gracePeriodTimeSpan | Quanto tempo deve essere mantenuto il computer dopo l'esecuzione di un carico di lavoro quando non sono presenti agenti stand-by. Il valore massimo è una settimana. | string |
| kind | Proprietà discriminatoria per AgentProfile. | 'Stateful' (obbligatorio) |
| maxAgentLifetime | Per quanto tempo devono essere mantenute le macchine con stato. Il valore massimo è una settimana. | string |
StatelessAgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Proprietà discriminatoria per AgentProfile. | "Apolide" (obbligatorio) |
StorageProfile
| Name | Description | Value |
|---|---|---|
| dataDisks | Elenco di dischi dati vuoti da collegare. | DataDisk[] |
| osDiskStorageAccountType | Il nome SKU Azure delle macchine nel pool. | 'Premium' 'Standard' 'StandardSSD' |
TrackedResourceTags
| Name | Description | Value |
|---|
UserAssignedIdentity
| Name | Description | Value |
|---|
VmSize
| Name | Description | Value |
|---|---|---|
| name | Specifica il nome delle dimensioni della macchina virtuale. | string |
VmssFabricProfile
| Name | Description | Value |
|---|---|---|
| images | Immagini di macchine virtuali dei computer nel pool. | PoolImage[] (obbligatorio) |
| kind | Proprietà discriminatoria per FabricProfile. | 'Vmss' (obbligatorio) |
| networkProfile | Profilo di rete dei computer nel pool. | NetworkProfile |
| osProfile | Profilo del sistema operativo dei computer nel pool. | OsProfile |
| sku | Lo SKU Azure delle macchine nel pool. | DevOpsAzureSku (obbligatorio) |
| storageProfile | Profilo di archiviazione dei computer nel pool. | StorageProfile |
Definizione di risorsa Terraform (provider AzAPI)
Il tipo di risorsa pool può essere distribuito con operazioni destinate a:
- Gruppi di risorse Per un elenco delle proprietà modificate in ogni versione dell'API, vedi il registro modifiche.
Esempi di utilizzo
Moduli verificati di Azure
I seguenti Azure Moduli Verificati possono essere utilizzati per distribuire questo tipo di risorsa.
| Module | Description |
|---|---|
| DevOps Pool | Modulo di risorse AVM per i pool DevOps |
Formato delle risorse
Per creare un Microsoft. DevOpsInfrastructure/pools resource, aggiungi il seguente Terraform al tuo template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DevOpsInfrastructure/pools@2026-06-02"
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"
}
}
}
}
Oggetti ResourcePredictionsProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per l'Automatico, utilizzare:
{
kind = "Automatic"
predictionPreference = "string"
}
Per il manuale, utilizzare:
{
kind = "Manual"
}
Oggetti AgentProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per Stateful, utilizzare:
{
gracePeriodTimeSpan = "string"
kind = "Stateful"
maxAgentLifetime = "string"
}
Per gli apolidi, utilizzare:
{
kind = "Stateless"
}
Oggetti OrganizationProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per AzureDevOps, usare:
{
alias = "string"
description = "string"
kind = "AzureDevOps"
organizations = [
{
alias = "string"
openAccess = bool
parallelism = int
projects = [
"string"
]
url = "string"
}
]
permissionProfile = {
groups = [
"string"
]
kind = "string"
users = [
"string"
]
}
updateDescription = bool
}
Per GitHub, si utilizza:
{
kind = "GitHub"
organizations = [
{
repositories = [
"string"
]
url = "string"
}
]
}
Oggetti FabricProfile
Impostare la proprietà kind per specificare il tipo di oggetto.
Per Vmss, utilizzare:
{
images = [
{
aliases = [
"string"
]
buffer = "string"
ephemeralType = "string"
provisioningScriptEntryPoint = "string"
provisioningScriptManagedIdentityClientId = "string"
provisioningScriptShouldRestart = bool
provisioningScriptStorageAccountResourceId = "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 = {
linuxNvmePath = "string"
name = "string"
vmSizes = [
{
name = "string"
}
]
windowsNvmeDrive = "string"
}
storageProfile = {
dataDisks = [
{
caching = "string"
diskSizeGiB = int
driveLetter = "string"
storageAccountType = "string"
}
]
osDiskStorageAccountType = "string"
}
}
Valori delle proprietà
Microsoft. DevOpsInfrastructure/pool
| Name | Description | Value |
|---|---|---|
| identity | Identità del servizio gestito assegnate a questa risorsa. | ManagedServiceIdentity |
| location | Posizione geografica in cui risiede la risorsa | stringa (obbligatorio) |
| name | Nome della risorsa | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (obbligatorio) |
| properties | Proprietà specifiche della risorsa. | PoolProperties |
| tags | Tag delle risorse | Dizionario di nomi e valori di tag. |
| type | Tipo di risorsa | "Microsoft. DevOpsInfrastructure/pools@2026-06-02" |
AgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su "Stateful" per il tipo Stateful. Impostare su 'Stateless' per il tipo StatelessAgentProfile. | 'Stateful' "Apolide" (obbligatorio) |
| resourcePredictions | Definisce gli agenti di buffer/stand-by del pool. | any |
| resourcePredictionsProfile | Definisce il modo in cui vengono forniti gli agenti buffer/stand-by del pool. | ResourcePredictionsProfile |
AutomaticResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Determina il modo in cui deve essere fornito lo schema stand-by. | 'Automatico' (obbligatorio) |
| predictionPreference | Determina l'equilibrio tra costi e prestazioni. | 'Balanced' 'BestPerformance' 'MoreCostEffective' 'MorePerformance' 'MostCostEffective' |
AzureDevOpsOrganizationProfile
| Name | Description | Value |
|---|---|---|
| alias | Un alias per fare riferimento al nome del pool Azure DevOps. | string |
| description | Una descrizione extra da aggiungere al pool Azure DevOps. | string |
| kind | Proprietà discriminatoria per OrganizationProfile. | 'AzureDevOps' (obbligatorio) |
| organizations | L'elenco delle organizzazioni Azure DevOps in cui il pool dovrebbe essere presente. | Organizzazione[] (richiesto) |
| permissionProfile | Il tipo di permesso che determina quali account sono amministratori nel pool Azure DevOps. | AzureDevOpsPermissionProfile |
| aggiornamentoDescrizione | Determina se il servizio aggiorna la descrizione del pool Azure DevOps. | bool |
AzureDevOpsPermissionProfile
| Name | Description | Value |
|---|---|---|
| groups | Indirizzi di posta elettronica del gruppo | string[] |
| kind | Determina chi ha i permessi amministratori per il pool Azure DevOps. | 'CreatorOnly' 'Inherit' 'SpecificAccounts' (obbligatorio) |
| users | Indirizzi di posta elettronica utente | string[] |
DataDisk
| Name | Description | Value |
|---|---|---|
| caching | Tipo di memorizzazione nella cache da abilitare per i dischi dati. Il valore predefinito per la memorizzazione nella cache è readwrite. Per informazioni sulle opzioni di memorizzazione nella cache, vedere: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. | 'None' 'ReadOnly' 'ReadWrite' |
| diskSizeGiB | Dimensioni iniziali del disco in gigabyte. | int |
| driveLetter | Lettera di unità per il disco dati vuoto. Se non specificato, sarà la prima lettera disponibile. | string |
| storageAccountType | Tipo di account di archiviazione da usare per il disco dati. Se omesso, il valore predefinito è "standard_lrs". | 'Premium_LRS' 'Premium_ZRS' 'StandardSSD_LRS' 'StandardSSD_ZRS' 'Standard_LRS' |
DevOpsAzureSku
| Name | Description | Value |
|---|---|---|
| linuxNvmePath | Il percorso di montaggio per il volume striato NVMe su Linux (ad esempio, '/mnt/azure_nvme_temp'). Di default imposta '/mnt/azure_nvme_temp' quando non è specificato. | string |
| name | Il nome SKU Azure delle macchine nel pool. | stringa (obbligatorio) |
| vmSizes | Specifica le dimensioni delle VM per l'allocazione del sistema di istanze. | VmSize[] |
| windowsNvmeDrive | La lettera dell'unità per il volume a strisce NVMe su Windows (ad esempio, 'N'). Di default imposta la 'N' quando non specificato. | string |
FabricProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su 'Vmss' per il tipo VmssFabricProfile. | 'Vmss' (obbligatorio) |
GitHubOrganization
| Name | Description | Value |
|---|---|---|
| repositories | Elenco facoltativo di repository in cui creare il pool. | string[] |
| url | L'URL dell'organizzazione di GitHub in cui il pool dovrebbe essere creato. | stringa (obbligatorio) |
GitHubOrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Proprietà discriminatoria per OrganizationProfile. | 'GitHub' (richiesto) |
| organizations | L'elenco delle organizzazioni/repository GitHub in cui il pool dovrebbe essere presente. | GitHubOrganization[] (obbligatorio) |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | Tipo di identità del servizio gestito (in cui sono consentiti sia i tipi SystemAssigned che UserAssigned). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (obbligatorio) |
| userAssignedIdentities | Set di identità assegnate dall'utente associate alla risorsa. Le chiavi del dizionario userAssignedIdentities saranno ID di risorsa ARM nel modulo: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft. ManagedIdentity/userAssignedIdentities/{identityName}. I valori del dizionario possono essere oggetti vuoti ({}) nelle richieste. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ManualResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Determina il modo in cui deve essere fornito lo schema stand-by. | 'Manuale' (obbligatorio) |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| staticIpAddressCount | Numero di indirizzi IP pubblici statici per le connessioni in uscita assegnate al pool. | int |
| subnetId | ID subnet in cui inserire tutti i computer creati nel pool. | string |
Organization
| Name | Description | Value |
|---|---|---|
| alias | Un alias per fare riferimento al nome del pool Azure DevOps. | string |
| openAccess | Determina se il pool deve avere accesso aperto a tutti i progetti dell'organizzazione. | bool |
| parallelism | Numero massimo di computer che possono essere creati in questa organizzazione al di fuori della concorrenza massima del pool. | int |
| projects | Elenco facoltativo di progetti in cui creare il pool. | string[] |
| url | L'URL dell'organizzazione Azure DevOps in cui il pool dovrebbe essere creato. | stringa (obbligatorio) |
OrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su 'AzureDevOps' per il tipo AzureDevOpsOrganizationProfile. Impostato su 'GitHub' per il tipo GitHubOrganizationProfile. | 'AzureDevOps' 'GitHub' (richiesto) |
OsProfile
| Name | Description | Value |
|---|---|---|
| logonType | Determina la modalità di esecuzione del servizio. Per impostazione predefinita, questa opzione verrà impostata su Servizio. | 'Interactive' 'Service' |
| secretsManagementSettings | Impostazioni di gestione dei segreti dei computer nel pool. | SecretsManagementSettings |
PoolImage
| Name | Description | Value |
|---|---|---|
| aliases | Elenco di alias per cui fare riferimento all'immagine. | string[] |
| buffer | Percentuale del buffer da allocare a questa immagine. | string |
| ephemeralType | Tipo temporaneo dell'immagine. | 'Automatic' 'CacheDisk' 'ResourceDisk' |
| provisioningScriptEntryPoint | Il punto di ingresso dello script di provisioning per questa immagine. | string |
| provisioningScriptManagedIdentityClientId | L'ID client di identità gestita utilizzato per accedere al contenuto degli script di provisioning per questa immagine. | string |
| provisioningScriptShouldRestart | Determina se la macchina debba essere riavviata dopo aver fornito l'esecuzione dello script per questa immagine. | bool |
| provisioningScriptStorageAccountResourceId | L'ID risorsa ARM dell'account di archiviazione che ospita gli script di provisioning per questa immagine. | string |
| resourceId | ID risorsa dell'immagine. | string |
| wellKnownImageName | Immagine da usare da un set noto di immagini rese disponibili ai clienti. | string |
PoolProperties
| Name | Description | Value |
|---|---|---|
| agentProfile | Definisce la modalità di gestione del computer dopo l'esecuzione di un processo. | AgentProfile (obbligatorio) |
| devCenterProjectResourceId | L'ID della risorsa del DevCenter Project a cui appartiene il pool. | string |
| fabricProfile | Definisce il tipo di infrastruttura in cui verrà eseguito l'agente. | FabricProfile (richiesto) |
| maximumConcurrency | Definisce il numero di risorse che è possibile creare in qualsiasi momento. | int Constraints: Valore minimo = 1 Valore massimo = 10000 (obbligatorio) |
| organizationProfile | Definisce l'organizzazione in cui verrà usato il pool. | OrganizationProfile (obbligatorio) |
| provisioningState | Stato dell'operazione corrente. | 'Accepted' 'Canceled' 'Deleting' 'Failed' 'Provisioning' 'Succeeded' 'Updating' |
| runtimeConfiguration | Configurazione di runtime del pool. | Configurazione del runtime |
ResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Impostare su "Automatico" per il tipo AutomaticResourcePredictionsProfile. Impostare su 'Manual' per il tipo ManualResourcePredictionsProfile. | 'Automatic' 'Manuale' (obbligatorio) |
Configurazione del runtime
| Name | Description | Value |
|---|---|---|
| cartella di lavoro | Cartella di lavoro di destinazione dell'agente attività nel computer. | string |
SecretsManagementSettings
| Name | Description | Value |
|---|---|---|
| certificateStoreLocation | Dove archiviare i certificati nel computer. | string |
| certificateStoreName | Il nome dell'archivio certificati da usare nel computer, attualmente sono supportati "My" e "Root". | 'My' 'Root' |
| keyExportable | Definisce se la chiave dei certificati deve essere esportabile. | bool (obbligatorio) |
| observedCertificates | Elenco di certificati da installare in tutti i computer nel pool. | string[] (obbligatorio) |
Stateful
| Name | Description | Value |
|---|---|---|
| gracePeriodTimeSpan | Quanto tempo deve essere mantenuto il computer dopo l'esecuzione di un carico di lavoro quando non sono presenti agenti stand-by. Il valore massimo è una settimana. | string |
| kind | Proprietà discriminatoria per AgentProfile. | 'Stateful' (obbligatorio) |
| maxAgentLifetime | Per quanto tempo devono essere mantenute le macchine con stato. Il valore massimo è una settimana. | string |
StatelessAgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Proprietà discriminatoria per AgentProfile. | "Apolide" (obbligatorio) |
StorageProfile
| Name | Description | Value |
|---|---|---|
| dataDisks | Elenco di dischi dati vuoti da collegare. | DataDisk[] |
| osDiskStorageAccountType | Il nome SKU Azure delle macchine nel pool. | 'Premium' 'Standard' 'StandardSSD' |
TrackedResourceTags
| Name | Description | Value |
|---|
UserAssignedIdentity
| Name | Description | Value |
|---|
VmSize
| Name | Description | Value |
|---|---|---|
| name | Specifica il nome delle dimensioni della macchina virtuale. | string |
VmssFabricProfile
| Name | Description | Value |
|---|---|---|
| images | Immagini di macchine virtuali dei computer nel pool. | PoolImage[] (obbligatorio) |
| kind | Proprietà discriminatoria per FabricProfile. | 'Vmss' (obbligatorio) |
| networkProfile | Profilo di rete dei computer nel pool. | NetworkProfile |
| osProfile | Profilo del sistema operativo dei computer nel pool. | OsProfile |
| sku | Lo SKU Azure delle macchine nel pool. | DevOpsAzureSku (obbligatorio) |
| storageProfile | Profilo di archiviazione dei computer nel pool. | StorageProfile |