Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Bicep-Ressourcendefinition
Der Ressourcentyp "Pools" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:
Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie unter Änderungsprotokoll.
Format der Ressource
Um eine Microsoft.DevOpsInfrastructure/pools-Ressource zu erstellen, fügen Sie der Vorlage die folgende Bicep hinzu.
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'
}
}
OrganizationProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für AzureDevOps Folgendes:
{
alias: 'string'
kind: 'AzureDevOps'
organizations: [
{
alias: 'string'
openAccess: bool
parallelism: int
projects: [
'string'
]
url: 'string'
}
]
permissionProfile: {
groups: [
'string'
]
kind: 'string'
users: [
'string'
]
}
}
Verwenden Sie für GitHub Folgendes:
{
kind: 'GitHub'
organizations: [
{
repositories: [
'string'
]
url: 'string'
}
]
}
AgentProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Stateful Folgendes:
{
gracePeriodTimeSpan: 'string'
kind: 'Stateful'
maxAgentLifetime: 'string'
}
Verwenden Sie für Stateless Folgendes:
{
kind: 'Stateless'
}
ResourcePredictionsProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Automatik:
{
kind: 'Automatic'
predictionPreference: 'string'
}
Verwenden Sie für das manuelle Steuerelement:
{
kind: 'Manual'
}
FabricProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Vmss:
{
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'
}
}
Eigenschaftswerte
Microsoft.DevOpsInfrastructure/pools
| Name | Description | Value |
|---|---|---|
| identity | Die verwalteten Dienstidentitäten, die dieser Ressource zugewiesen sind. | ManagedServiceIdentity |
| location | Der geografische Standort, an dem sich die Ressource befindet | Zeichenfolge (erforderlich) |
| name | Der Ressourcenname | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (erforderlich) |
| properties | Die ressourcenspezifischen Eigenschaften für diese Ressource. | PoolProperties |
| scope | Verwenden Sie diese Verwendung beim Erstellen einer Ressource in einem Bereich, der sich von dem Bereitstellungsbereich unterscheidet. | Legen Sie diese Eigenschaft auf den symbolischen Namen einer Ressource fest, um die Erweiterungsressourceanzuwenden. |
| tags | Ressourcenetiketten | Wörterbuch der Tagnamen und -werte. Siehe Tags in Vorlagen |
AgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie den Wert auf "Stateful" für den Typ "Stateful" fest. Legen Sie den Wert auf 'Stateless' für den Typ StatelessAgentProfile fest. | 'Stateful' "Staatenlos" (erforderlich) |
| resourcePredictions | Definiert Poolpuffer/Stand-by-Agents. | any |
| resourcePredictionsProfile | Definiert, wie der Poolpuffer/stand-by-Agents bereitgestellt wird. | ResourcePredictionsProfile |
AutomaticResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Bestimmt, wie das stand-by-Schema bereitgestellt werden soll. | 'Automatisch' (erforderlich) |
| predictionPreference | Bestimmt das Gleichgewicht zwischen Kosten und Leistung. | 'Balanced' 'BestPerformance' 'MoreCostEffective' 'MorePerformance' 'MostCostEffective' |
AzureDevOpsOrganizationProfile
| Name | Description | Value |
|---|---|---|
| alias | Ein Alias, um auf den Namen des Azure DevOps-Pools zu verweisen. | string |
| kind | Diskriminator-Eigenschaft für OrganizationProfile. | 'AzureDevOps' (erforderlich) |
| organizations | Die Liste der Azure DevOps-Organisationen, in der der Pool vorhanden sein sollte. | Organisation[] (erforderlich) |
| permissionProfile | Der Berechtigungstyp, der bestimmt, welche Konten Administratoren im Azure DevOps-Pool sind. | AzureDevOpsPermissionProfile |
AzureDevOpsPermissionProfile
| Name | Description | Value |
|---|---|---|
| groups | Gruppen-E-Mail-Adressen | string[] |
| kind | Bestimmt, wer über Administratorberechtigungen für den Azure DevOps-Pool verfügt. | 'CreatorOnly' 'Inherit' 'SpecificAccounts' (erforderlich) |
| users | E-Mail-Adressen des Benutzers | string[] |
DataDisk
| Name | Description | Value |
|---|---|---|
| caching | Der Typ der Zwischenspeicherung, die für die Datenträger aktiviert werden soll. Der Standardwert für die Zwischenspeicherung ist "readwrite". Informationen zu den Zwischenspeicherungsoptionen finden Sie unter: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. | 'None' 'ReadOnly' 'ReadWrite' |
| diskSizeGiB | Die anfängliche Datenträgergröße in Gigabyte. | int |
| driveLetter | Der Laufwerkbuchstaben für den leeren Datenträger. Wenn nicht angegeben, ist es der erste verfügbare Buchstabe. | string |
| storageAccountType | Der Speicherkontotyp, der für den Datenträger verwendet werden soll. Wenn nicht angegeben, lautet der Standardwert "standard_lrs". | 'Premium_LRS' 'Premium_ZRS' 'StandardSSD_LRS' 'StandardSSD_ZRS' 'Standard_LRS' |
DevOpsAzureSku
| Name | Description | Value |
|---|---|---|
| name | Der Azure-SKU-Name der Computer im Pool. | Zeichenfolge (erforderlich) |
FabricProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie den Wert auf 'Vmss' für den Typ VmssFabricProfile fest. | 'Vmss' (erforderlich) |
GitHubOrganization
| Name | Description | Value |
|---|---|---|
| repositories | Optionale Liste der Repositorys, in denen der Pool erstellt werden soll. | string[] |
| url | Die GitHub-Organisations-URL, in der der Pool erstellt werden soll. | Zeichenfolge (erforderlich) |
GitHubOrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Diskriminator-Eigenschaft für OrganizationProfile. | 'GitHub' (erforderlich) |
| organizations | Die Liste der GitHub-Organisationen/Repositorys, in der der Pool vorhanden sein sollte. | GitHubOrganization[] (erforderlich) |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | Typ der verwalteten Dienstidentität (wobei systemAssigned- und UserAssigned-Typen zulässig sind). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (erforderlich) |
| userAssignedIdentities | Die Gruppe der benutzerzuweisungen Identitäten, die der Ressource zugeordnet sind. Die Wörterbuchschlüssel "userAssignedIdentities" sind ARM-Ressourcen-IDs im Formular: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Die Wörterbuchwerte können leere Objekte ({}) in Anforderungen sein. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ManualResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Bestimmt, wie das stand-by-Schema bereitgestellt werden soll. | 'Manuell' (erforderlich) |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| staticIpAddressCount | Die Anzahl der statischen öffentlichen IP-Adressen für ausgehende Verbindungen, die dem Pool zugewiesen sind. | int |
| subnetId | Die Subnetz-ID, auf der alle Computer im Pool erstellt werden sollen. | string |
Organization
| Name | Description | Value |
|---|---|---|
| alias | Ein Alias, um auf den Namen des Azure DevOps-Pools zu verweisen. | string |
| openAccess | Bestimmt, ob der Pool offenen Zugriff auf alle Projekte in dieser Organisation haben soll. | bool |
| parallelism | Anzahl der Computer, die maximal in dieser Organisation erstellt werden können, aus der maximalen Anzahl der Pools. | int |
| projects | Optionale Liste der Projekte, in denen der Pool erstellt werden soll. | string[] |
| url | Die Azure DevOps-Organisations-URL, in der der Pool erstellt werden soll. | Zeichenfolge (erforderlich) |
OrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie "AzureDevOps" für den Typ AzureDevOpsOrganizationProfile fest. Legen Sie den Wert auf "GitHub" für den Typ GitHubOrganizationProfile fest. | 'AzureDevOps' 'GitHub' (erforderlich) |
OsProfile
| Name | Description | Value |
|---|---|---|
| logonType | Bestimmt, wie der Dienst ausgeführt werden soll. Standardmäßig wird dies auf "Dienst" festgelegt. | 'Interactive' 'Service' |
| secretsManagementSettings | Die Einstellungen für die geheime Verwaltung der Computer im Pool. | SecretsManagementSettings |
PoolImage
| Name | Description | Value |
|---|---|---|
| aliases | Liste der Aliase, nach der auf das Bild verwiesen werden soll. | string[] |
| buffer | Der Prozentsatz des Puffers, der diesem Bild zugeordnet werden soll. | string |
| ephemeralType | Der kurzlebige Typ des Bilds. | 'Automatic' 'CacheDisk' 'ResourceDisk' |
| resourceId | Die Ressourcen-ID des Bilds. | string |
| wellKnownImageName | Das Bild, das von einer bekannten Gruppe von Bildern verwendet werden soll, die Kunden zur Verfügung gestellt werden. | string |
PoolProperties
| Name | Description | Value |
|---|---|---|
| agentProfile | Definiert, wie der Computer verarbeitet wird, nachdem er einen Auftrag ausgeführt hat. | AgentProfile (erforderlich) |
| devCenterProjectResourceId | Die Ressourcen-ID des DevCenter-Projekts, zu dem der Pool gehört. | Zeichenfolge (erforderlich) |
| fabricProfile | Definiert den Typ der Fabric, auf der der Agent ausgeführt wird. | FabricProfile (erforderlich) |
| maximumConcurrency | Definiert, wie viele Ressourcen zu einem bestimmten Zeitpunkt erstellt werden können. | int Constraints: Min.-Wert = 1 Maximalwert = 10000 (erforderlich) |
| organizationProfile | Definiert die Organisation, in der der Pool verwendet wird. | OrganizationProfile (erforderlich) |
| provisioningState | Der Status des aktuellen Vorgangs. | 'Accepted' 'Canceled' 'Deleting' 'Failed' 'Provisioning' 'Succeeded' 'Updating' |
| runtimeConfiguration | Die Laufzeitkonfiguration des Pools. | RuntimeConfiguration |
ResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie für den Typ AutomaticResourcePredictionsProfile den Wert "Automatic" fest. Legen Sie für den Typ ManualResourcePredictionsProfile auf 'Manual' fest. | 'Automatic' 'Manuell' (erforderlich) |
RuntimeConfiguration
| Name | Description | Value |
|---|---|---|
| workFolder (englisch) | Der Zielarbeitsordner des Task-Agenten auf dem Computer. | string |
SecretsManagementSettings
| Name | Description | Value |
|---|---|---|
| certificateStoreLocation | Speicherort für Zertifikate auf dem Computer. | string |
| certificateStoreName | Der Name des Zertifikatspeichers, der auf dem Computer verwendet werden soll, werden derzeit "My" und "Root" unterstützt. | 'My' 'Root' |
| keyExportable | Definiert, ob der Schlüssel der Zertifikate exportierbar sein soll. | bool (erforderlich) |
| observedCertificates | Die Liste der Zertifikate, die auf allen Computern im Pool installiert werden sollen. | string[] (erforderlich) |
Stateful
| Name | Description | Value |
|---|---|---|
| gracePeriodTimeSpan | Wie lange sollte der Computer beibehalten werden, nachdem er eine Workload ausgeführt hat, wenn keine eigenständigen Agents vorhanden sind. Das Maximum beträgt eine Woche. | string |
| kind | Diskriminator-Eigenschaft für AgentProfile. | "Stateful" (erforderlich) |
| maxAgentLifetime | Wie lange zustandsbehaftete Computer beibehalten werden sollen. Das Maximum beträgt eine Woche. | string |
StatelessAgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Diskriminator-Eigenschaft für AgentProfile. | "Staatenlos" (erforderlich) |
StorageProfile
| Name | Description | Value |
|---|---|---|
| dataDisks | Eine Liste leerer Datenträger, die angefügt werden sollen. | DataDisk[] |
| osDiskStorageAccountType | Der Azure-SKU-Name der Computer im Pool. | 'Premium' 'Standard' 'StandardSSD' |
TrackedResourceTags
| Name | Description | Value |
|---|
UserAssignedIdentity
| Name | Description | Value |
|---|
VmssFabricProfile
| Name | Description | Value |
|---|---|---|
| images | Die VM-Images der Computer im Pool. | PoolImage[] (erforderlich) |
| kind | Diskriminator-Eigenschaft für FabricProfile. | 'Vmss' (erforderlich) |
| networkProfile | Das Netzwerkprofil der Computer im Pool. | NetworkProfile |
| osProfile | Das Betriebssystemprofil der Computer im Pool. | OsProfile |
| sku | Die Azure-SKU der Computer im Pool. | DevOpsAzureSku (erforderlich) |
| storageProfile | Das Speicherprofil der Computer im Pool. | StorageProfile |
Verwendungsbeispiele
Von Azure verifizierte Module
Die folgenden Azure Verified Modules können verwendet werden, um diesen Ressourcentyp bereitzustellen.
| Module | Description |
|---|---|
| DevOps-Infrastrukturpool | AVM-Ressourcenmodul für DevOps-Infrastrukturpool |
ARM-Vorlagenressourcendefinition
Der Ressourcentyp "Pools" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:
Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie unter Änderungsprotokoll.
Format der Ressource
Um eine Microsoft.DevOpsInfrastructure/pools-Ressource zu erstellen, fügen Sie der Vorlage den folgenden JSON-Code hinzu.
{
"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"
}
}
OrganizationProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für AzureDevOps Folgendes:
{
"alias": "string",
"kind": "AzureDevOps",
"organizations": [
{
"alias": "string",
"openAccess": "bool",
"parallelism": "int",
"projects": [ "string" ],
"url": "string"
}
],
"permissionProfile": {
"groups": [ "string" ],
"kind": "string",
"users": [ "string" ]
}
}
Verwenden Sie für GitHub Folgendes:
{
"kind": "GitHub",
"organizations": [
{
"repositories": [ "string" ],
"url": "string"
}
]
}
AgentProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Stateful Folgendes:
{
"gracePeriodTimeSpan": "string",
"kind": "Stateful",
"maxAgentLifetime": "string"
}
Verwenden Sie für Stateless Folgendes:
{
"kind": "Stateless"
}
ResourcePredictionsProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Automatik:
{
"kind": "Automatic",
"predictionPreference": "string"
}
Verwenden Sie für das manuelle Steuerelement:
{
"kind": "Manual"
}
FabricProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Vmss:
{
"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"
}
}
Eigenschaftswerte
Microsoft.DevOpsInfrastructure/pools
| Name | Description | Value |
|---|---|---|
| apiVersion | Die API-Version | '2025-09-20' |
| identity | Die verwalteten Dienstidentitäten, die dieser Ressource zugewiesen sind. | ManagedServiceIdentity |
| location | Der geografische Standort, an dem sich die Ressource befindet | Zeichenfolge (erforderlich) |
| name | Der Ressourcenname | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (erforderlich) |
| properties | Die ressourcenspezifischen Eigenschaften für diese Ressource. | PoolProperties |
| tags | Ressourcenetiketten | Wörterbuch der Tagnamen und -werte. Siehe Tags in Vorlagen |
| type | Der Ressourcentyp | 'Microsoft.DevOpsInfrastructure/pools' |
AgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie den Wert auf "Stateful" für den Typ "Stateful" fest. Legen Sie den Wert auf 'Stateless' für den Typ StatelessAgentProfile fest. | 'Stateful' "Staatenlos" (erforderlich) |
| resourcePredictions | Definiert Poolpuffer/Stand-by-Agents. | any |
| resourcePredictionsProfile | Definiert, wie der Poolpuffer/stand-by-Agents bereitgestellt wird. | ResourcePredictionsProfile |
AutomaticResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Bestimmt, wie das stand-by-Schema bereitgestellt werden soll. | 'Automatisch' (erforderlich) |
| predictionPreference | Bestimmt das Gleichgewicht zwischen Kosten und Leistung. | 'Balanced' 'BestPerformance' 'MoreCostEffective' 'MorePerformance' 'MostCostEffective' |
AzureDevOpsOrganizationProfile
| Name | Description | Value |
|---|---|---|
| alias | Ein Alias, um auf den Namen des Azure DevOps-Pools zu verweisen. | string |
| kind | Diskriminator-Eigenschaft für OrganizationProfile. | 'AzureDevOps' (erforderlich) |
| organizations | Die Liste der Azure DevOps-Organisationen, in der der Pool vorhanden sein sollte. | Organisation[] (erforderlich) |
| permissionProfile | Der Berechtigungstyp, der bestimmt, welche Konten Administratoren im Azure DevOps-Pool sind. | AzureDevOpsPermissionProfile |
AzureDevOpsPermissionProfile
| Name | Description | Value |
|---|---|---|
| groups | Gruppen-E-Mail-Adressen | string[] |
| kind | Bestimmt, wer über Administratorberechtigungen für den Azure DevOps-Pool verfügt. | 'CreatorOnly' 'Inherit' 'SpecificAccounts' (erforderlich) |
| users | E-Mail-Adressen des Benutzers | string[] |
DataDisk
| Name | Description | Value |
|---|---|---|
| caching | Der Typ der Zwischenspeicherung, die für die Datenträger aktiviert werden soll. Der Standardwert für die Zwischenspeicherung ist "readwrite". Informationen zu den Zwischenspeicherungsoptionen finden Sie unter: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. | 'None' 'ReadOnly' 'ReadWrite' |
| diskSizeGiB | Die anfängliche Datenträgergröße in Gigabyte. | int |
| driveLetter | Der Laufwerkbuchstaben für den leeren Datenträger. Wenn nicht angegeben, ist es der erste verfügbare Buchstabe. | string |
| storageAccountType | Der Speicherkontotyp, der für den Datenträger verwendet werden soll. Wenn nicht angegeben, lautet der Standardwert "standard_lrs". | 'Premium_LRS' 'Premium_ZRS' 'StandardSSD_LRS' 'StandardSSD_ZRS' 'Standard_LRS' |
DevOpsAzureSku
| Name | Description | Value |
|---|---|---|
| name | Der Azure-SKU-Name der Computer im Pool. | Zeichenfolge (erforderlich) |
FabricProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie den Wert auf 'Vmss' für den Typ VmssFabricProfile fest. | 'Vmss' (erforderlich) |
GitHubOrganization
| Name | Description | Value |
|---|---|---|
| repositories | Optionale Liste der Repositorys, in denen der Pool erstellt werden soll. | string[] |
| url | Die GitHub-Organisations-URL, in der der Pool erstellt werden soll. | Zeichenfolge (erforderlich) |
GitHubOrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Diskriminator-Eigenschaft für OrganizationProfile. | 'GitHub' (erforderlich) |
| organizations | Die Liste der GitHub-Organisationen/Repositorys, in der der Pool vorhanden sein sollte. | GitHubOrganization[] (erforderlich) |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | Typ der verwalteten Dienstidentität (wobei systemAssigned- und UserAssigned-Typen zulässig sind). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (erforderlich) |
| userAssignedIdentities | Die Gruppe der benutzerzuweisungen Identitäten, die der Ressource zugeordnet sind. Die Wörterbuchschlüssel "userAssignedIdentities" sind ARM-Ressourcen-IDs im Formular: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Die Wörterbuchwerte können leere Objekte ({}) in Anforderungen sein. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ManualResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Bestimmt, wie das stand-by-Schema bereitgestellt werden soll. | 'Manuell' (erforderlich) |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| staticIpAddressCount | Die Anzahl der statischen öffentlichen IP-Adressen für ausgehende Verbindungen, die dem Pool zugewiesen sind. | int |
| subnetId | Die Subnetz-ID, auf der alle Computer im Pool erstellt werden sollen. | string |
Organization
| Name | Description | Value |
|---|---|---|
| alias | Ein Alias, um auf den Namen des Azure DevOps-Pools zu verweisen. | string |
| openAccess | Bestimmt, ob der Pool offenen Zugriff auf alle Projekte in dieser Organisation haben soll. | bool |
| parallelism | Anzahl der Computer, die maximal in dieser Organisation erstellt werden können, aus der maximalen Anzahl der Pools. | int |
| projects | Optionale Liste der Projekte, in denen der Pool erstellt werden soll. | string[] |
| url | Die Azure DevOps-Organisations-URL, in der der Pool erstellt werden soll. | Zeichenfolge (erforderlich) |
OrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie "AzureDevOps" für den Typ AzureDevOpsOrganizationProfile fest. Legen Sie den Wert auf "GitHub" für den Typ GitHubOrganizationProfile fest. | 'AzureDevOps' 'GitHub' (erforderlich) |
OsProfile
| Name | Description | Value |
|---|---|---|
| logonType | Bestimmt, wie der Dienst ausgeführt werden soll. Standardmäßig wird dies auf "Dienst" festgelegt. | 'Interactive' 'Service' |
| secretsManagementSettings | Die Einstellungen für die geheime Verwaltung der Computer im Pool. | SecretsManagementSettings |
PoolImage
| Name | Description | Value |
|---|---|---|
| aliases | Liste der Aliase, nach der auf das Bild verwiesen werden soll. | string[] |
| buffer | Der Prozentsatz des Puffers, der diesem Bild zugeordnet werden soll. | string |
| ephemeralType | Der kurzlebige Typ des Bilds. | 'Automatic' 'CacheDisk' 'ResourceDisk' |
| resourceId | Die Ressourcen-ID des Bilds. | string |
| wellKnownImageName | Das Bild, das von einer bekannten Gruppe von Bildern verwendet werden soll, die Kunden zur Verfügung gestellt werden. | string |
PoolProperties
| Name | Description | Value |
|---|---|---|
| agentProfile | Definiert, wie der Computer verarbeitet wird, nachdem er einen Auftrag ausgeführt hat. | AgentProfile (erforderlich) |
| devCenterProjectResourceId | Die Ressourcen-ID des DevCenter-Projekts, zu dem der Pool gehört. | Zeichenfolge (erforderlich) |
| fabricProfile | Definiert den Typ der Fabric, auf der der Agent ausgeführt wird. | FabricProfile (erforderlich) |
| maximumConcurrency | Definiert, wie viele Ressourcen zu einem bestimmten Zeitpunkt erstellt werden können. | int Constraints: Min.-Wert = 1 Maximalwert = 10000 (erforderlich) |
| organizationProfile | Definiert die Organisation, in der der Pool verwendet wird. | OrganizationProfile (erforderlich) |
| provisioningState | Der Status des aktuellen Vorgangs. | 'Accepted' 'Canceled' 'Deleting' 'Failed' 'Provisioning' 'Succeeded' 'Updating' |
| runtimeConfiguration | Die Laufzeitkonfiguration des Pools. | RuntimeConfiguration |
ResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie für den Typ AutomaticResourcePredictionsProfile den Wert "Automatic" fest. Legen Sie für den Typ ManualResourcePredictionsProfile auf 'Manual' fest. | 'Automatic' 'Manuell' (erforderlich) |
RuntimeConfiguration
| Name | Description | Value |
|---|---|---|
| workFolder (englisch) | Der Zielarbeitsordner des Task-Agenten auf dem Computer. | string |
SecretsManagementSettings
| Name | Description | Value |
|---|---|---|
| certificateStoreLocation | Speicherort für Zertifikate auf dem Computer. | string |
| certificateStoreName | Der Name des Zertifikatspeichers, der auf dem Computer verwendet werden soll, werden derzeit "My" und "Root" unterstützt. | 'My' 'Root' |
| keyExportable | Definiert, ob der Schlüssel der Zertifikate exportierbar sein soll. | bool (erforderlich) |
| observedCertificates | Die Liste der Zertifikate, die auf allen Computern im Pool installiert werden sollen. | string[] (erforderlich) |
Stateful
| Name | Description | Value |
|---|---|---|
| gracePeriodTimeSpan | Wie lange sollte der Computer beibehalten werden, nachdem er eine Workload ausgeführt hat, wenn keine eigenständigen Agents vorhanden sind. Das Maximum beträgt eine Woche. | string |
| kind | Diskriminator-Eigenschaft für AgentProfile. | "Stateful" (erforderlich) |
| maxAgentLifetime | Wie lange zustandsbehaftete Computer beibehalten werden sollen. Das Maximum beträgt eine Woche. | string |
StatelessAgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Diskriminator-Eigenschaft für AgentProfile. | "Staatenlos" (erforderlich) |
StorageProfile
| Name | Description | Value |
|---|---|---|
| dataDisks | Eine Liste leerer Datenträger, die angefügt werden sollen. | DataDisk[] |
| osDiskStorageAccountType | Der Azure-SKU-Name der Computer im Pool. | 'Premium' 'Standard' 'StandardSSD' |
TrackedResourceTags
| Name | Description | Value |
|---|
UserAssignedIdentity
| Name | Description | Value |
|---|
VmssFabricProfile
| Name | Description | Value |
|---|---|---|
| images | Die VM-Images der Computer im Pool. | PoolImage[] (erforderlich) |
| kind | Diskriminator-Eigenschaft für FabricProfile. | 'Vmss' (erforderlich) |
| networkProfile | Das Netzwerkprofil der Computer im Pool. | NetworkProfile |
| osProfile | Das Betriebssystemprofil der Computer im Pool. | OsProfile |
| sku | Die Azure-SKU der Computer im Pool. | DevOpsAzureSku (erforderlich) |
| storageProfile | Das Speicherprofil der Computer im Pool. | StorageProfile |
Verwendungsbeispiele
Terraform -Ressourcendefinition (AzAPI-Anbieter)
Der Ressourcentyp "Pools" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:
Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie unter Änderungsprotokoll.
Format der Ressource
Um eine Microsoft.DevOpsInfrastructure/pools-Ressource zu erstellen, fügen Sie Ihrer Vorlage die folgende Terraform hinzu.
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"
}
}
}
}
OrganizationProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für AzureDevOps Folgendes:
{
alias = "string"
kind = "AzureDevOps"
organizations = [
{
alias = "string"
openAccess = bool
parallelism = int
projects = [
"string"
]
url = "string"
}
]
permissionProfile = {
groups = [
"string"
]
kind = "string"
users = [
"string"
]
}
}
Verwenden Sie für GitHub Folgendes:
{
kind = "GitHub"
organizations = [
{
repositories = [
"string"
]
url = "string"
}
]
}
AgentProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Stateful Folgendes:
{
gracePeriodTimeSpan = "string"
kind = "Stateful"
maxAgentLifetime = "string"
}
Verwenden Sie für Stateless Folgendes:
{
kind = "Stateless"
}
ResourcePredictionsProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Automatik:
{
kind = "Automatic"
predictionPreference = "string"
}
Verwenden Sie für das manuelle Steuerelement:
{
kind = "Manual"
}
FabricProfile-Objekte
Legen Sie die kind-Eigenschaft fest, um den Typ des Objekts anzugeben.
Verwenden Sie für Vmss:
{
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"
}
}
Eigenschaftswerte
Microsoft.DevOpsInfrastructure/pools
| Name | Description | Value |
|---|---|---|
| identity | Die verwalteten Dienstidentitäten, die dieser Ressource zugewiesen sind. | ManagedServiceIdentity |
| location | Der geografische Standort, an dem sich die Ressource befindet | Zeichenfolge (erforderlich) |
| name | Der Ressourcenname | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-.]*$ (erforderlich) |
| parent_id | Die ID der Ressource, auf die diese Erweiterungsressource angewendet werden soll. | Zeichenfolge (erforderlich) |
| properties | Die ressourcenspezifischen Eigenschaften für diese Ressource. | PoolProperties |
| tags | Ressourcenetiketten | Wörterbuch der Tagnamen und -werte. |
| type | Der Ressourcentyp | "Microsoft.DevOpsInfrastructure/pools@2025-09-20" |
AgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie den Wert auf "Stateful" für den Typ "Stateful" fest. Legen Sie den Wert auf 'Stateless' für den Typ StatelessAgentProfile fest. | 'Stateful' "Staatenlos" (erforderlich) |
| resourcePredictions | Definiert Poolpuffer/Stand-by-Agents. | any |
| resourcePredictionsProfile | Definiert, wie der Poolpuffer/stand-by-Agents bereitgestellt wird. | ResourcePredictionsProfile |
AutomaticResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Bestimmt, wie das stand-by-Schema bereitgestellt werden soll. | 'Automatisch' (erforderlich) |
| predictionPreference | Bestimmt das Gleichgewicht zwischen Kosten und Leistung. | 'Balanced' 'BestPerformance' 'MoreCostEffective' 'MorePerformance' 'MostCostEffective' |
AzureDevOpsOrganizationProfile
| Name | Description | Value |
|---|---|---|
| alias | Ein Alias, um auf den Namen des Azure DevOps-Pools zu verweisen. | string |
| kind | Diskriminator-Eigenschaft für OrganizationProfile. | 'AzureDevOps' (erforderlich) |
| organizations | Die Liste der Azure DevOps-Organisationen, in der der Pool vorhanden sein sollte. | Organisation[] (erforderlich) |
| permissionProfile | Der Berechtigungstyp, der bestimmt, welche Konten Administratoren im Azure DevOps-Pool sind. | AzureDevOpsPermissionProfile |
AzureDevOpsPermissionProfile
| Name | Description | Value |
|---|---|---|
| groups | Gruppen-E-Mail-Adressen | string[] |
| kind | Bestimmt, wer über Administratorberechtigungen für den Azure DevOps-Pool verfügt. | 'CreatorOnly' 'Inherit' 'SpecificAccounts' (erforderlich) |
| users | E-Mail-Adressen des Benutzers | string[] |
DataDisk
| Name | Description | Value |
|---|---|---|
| caching | Der Typ der Zwischenspeicherung, die für die Datenträger aktiviert werden soll. Der Standardwert für die Zwischenspeicherung ist "readwrite". Informationen zu den Zwischenspeicherungsoptionen finden Sie unter: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. | 'None' 'ReadOnly' 'ReadWrite' |
| diskSizeGiB | Die anfängliche Datenträgergröße in Gigabyte. | int |
| driveLetter | Der Laufwerkbuchstaben für den leeren Datenträger. Wenn nicht angegeben, ist es der erste verfügbare Buchstabe. | string |
| storageAccountType | Der Speicherkontotyp, der für den Datenträger verwendet werden soll. Wenn nicht angegeben, lautet der Standardwert "standard_lrs". | 'Premium_LRS' 'Premium_ZRS' 'StandardSSD_LRS' 'StandardSSD_ZRS' 'Standard_LRS' |
DevOpsAzureSku
| Name | Description | Value |
|---|---|---|
| name | Der Azure-SKU-Name der Computer im Pool. | Zeichenfolge (erforderlich) |
FabricProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie den Wert auf 'Vmss' für den Typ VmssFabricProfile fest. | 'Vmss' (erforderlich) |
GitHubOrganization
| Name | Description | Value |
|---|---|---|
| repositories | Optionale Liste der Repositorys, in denen der Pool erstellt werden soll. | string[] |
| url | Die GitHub-Organisations-URL, in der der Pool erstellt werden soll. | Zeichenfolge (erforderlich) |
GitHubOrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Diskriminator-Eigenschaft für OrganizationProfile. | 'GitHub' (erforderlich) |
| organizations | Die Liste der GitHub-Organisationen/Repositorys, in der der Pool vorhanden sein sollte. | GitHubOrganization[] (erforderlich) |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | Typ der verwalteten Dienstidentität (wobei systemAssigned- und UserAssigned-Typen zulässig sind). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (erforderlich) |
| userAssignedIdentities | Die Gruppe der benutzerzuweisungen Identitäten, die der Ressource zugeordnet sind. Die Wörterbuchschlüssel "userAssignedIdentities" sind ARM-Ressourcen-IDs im Formular: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Die Wörterbuchwerte können leere Objekte ({}) in Anforderungen sein. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ManualResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Bestimmt, wie das stand-by-Schema bereitgestellt werden soll. | 'Manuell' (erforderlich) |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| staticIpAddressCount | Die Anzahl der statischen öffentlichen IP-Adressen für ausgehende Verbindungen, die dem Pool zugewiesen sind. | int |
| subnetId | Die Subnetz-ID, auf der alle Computer im Pool erstellt werden sollen. | string |
Organization
| Name | Description | Value |
|---|---|---|
| alias | Ein Alias, um auf den Namen des Azure DevOps-Pools zu verweisen. | string |
| openAccess | Bestimmt, ob der Pool offenen Zugriff auf alle Projekte in dieser Organisation haben soll. | bool |
| parallelism | Anzahl der Computer, die maximal in dieser Organisation erstellt werden können, aus der maximalen Anzahl der Pools. | int |
| projects | Optionale Liste der Projekte, in denen der Pool erstellt werden soll. | string[] |
| url | Die Azure DevOps-Organisations-URL, in der der Pool erstellt werden soll. | Zeichenfolge (erforderlich) |
OrganizationProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie "AzureDevOps" für den Typ AzureDevOpsOrganizationProfile fest. Legen Sie den Wert auf "GitHub" für den Typ GitHubOrganizationProfile fest. | 'AzureDevOps' 'GitHub' (erforderlich) |
OsProfile
| Name | Description | Value |
|---|---|---|
| logonType | Bestimmt, wie der Dienst ausgeführt werden soll. Standardmäßig wird dies auf "Dienst" festgelegt. | 'Interactive' 'Service' |
| secretsManagementSettings | Die Einstellungen für die geheime Verwaltung der Computer im Pool. | SecretsManagementSettings |
PoolImage
| Name | Description | Value |
|---|---|---|
| aliases | Liste der Aliase, nach der auf das Bild verwiesen werden soll. | string[] |
| buffer | Der Prozentsatz des Puffers, der diesem Bild zugeordnet werden soll. | string |
| ephemeralType | Der kurzlebige Typ des Bilds. | 'Automatic' 'CacheDisk' 'ResourceDisk' |
| resourceId | Die Ressourcen-ID des Bilds. | string |
| wellKnownImageName | Das Bild, das von einer bekannten Gruppe von Bildern verwendet werden soll, die Kunden zur Verfügung gestellt werden. | string |
PoolProperties
| Name | Description | Value |
|---|---|---|
| agentProfile | Definiert, wie der Computer verarbeitet wird, nachdem er einen Auftrag ausgeführt hat. | AgentProfile (erforderlich) |
| devCenterProjectResourceId | Die Ressourcen-ID des DevCenter-Projekts, zu dem der Pool gehört. | Zeichenfolge (erforderlich) |
| fabricProfile | Definiert den Typ der Fabric, auf der der Agent ausgeführt wird. | FabricProfile (erforderlich) |
| maximumConcurrency | Definiert, wie viele Ressourcen zu einem bestimmten Zeitpunkt erstellt werden können. | int Constraints: Min.-Wert = 1 Maximalwert = 10000 (erforderlich) |
| organizationProfile | Definiert die Organisation, in der der Pool verwendet wird. | OrganizationProfile (erforderlich) |
| provisioningState | Der Status des aktuellen Vorgangs. | 'Accepted' 'Canceled' 'Deleting' 'Failed' 'Provisioning' 'Succeeded' 'Updating' |
| runtimeConfiguration | Die Laufzeitkonfiguration des Pools. | RuntimeConfiguration |
ResourcePredictionsProfile
| Name | Description | Value |
|---|---|---|
| kind | Legen Sie für den Typ AutomaticResourcePredictionsProfile den Wert "Automatic" fest. Legen Sie für den Typ ManualResourcePredictionsProfile auf 'Manual' fest. | 'Automatic' 'Manuell' (erforderlich) |
RuntimeConfiguration
| Name | Description | Value |
|---|---|---|
| workFolder (englisch) | Der Zielarbeitsordner des Task-Agenten auf dem Computer. | string |
SecretsManagementSettings
| Name | Description | Value |
|---|---|---|
| certificateStoreLocation | Speicherort für Zertifikate auf dem Computer. | string |
| certificateStoreName | Der Name des Zertifikatspeichers, der auf dem Computer verwendet werden soll, werden derzeit "My" und "Root" unterstützt. | 'My' 'Root' |
| keyExportable | Definiert, ob der Schlüssel der Zertifikate exportierbar sein soll. | bool (erforderlich) |
| observedCertificates | Die Liste der Zertifikate, die auf allen Computern im Pool installiert werden sollen. | string[] (erforderlich) |
Stateful
| Name | Description | Value |
|---|---|---|
| gracePeriodTimeSpan | Wie lange sollte der Computer beibehalten werden, nachdem er eine Workload ausgeführt hat, wenn keine eigenständigen Agents vorhanden sind. Das Maximum beträgt eine Woche. | string |
| kind | Diskriminator-Eigenschaft für AgentProfile. | "Stateful" (erforderlich) |
| maxAgentLifetime | Wie lange zustandsbehaftete Computer beibehalten werden sollen. Das Maximum beträgt eine Woche. | string |
StatelessAgentProfile
| Name | Description | Value |
|---|---|---|
| kind | Diskriminator-Eigenschaft für AgentProfile. | "Staatenlos" (erforderlich) |
StorageProfile
| Name | Description | Value |
|---|---|---|
| dataDisks | Eine Liste leerer Datenträger, die angefügt werden sollen. | DataDisk[] |
| osDiskStorageAccountType | Der Azure-SKU-Name der Computer im Pool. | 'Premium' 'Standard' 'StandardSSD' |
TrackedResourceTags
| Name | Description | Value |
|---|
UserAssignedIdentity
| Name | Description | Value |
|---|
VmssFabricProfile
| Name | Description | Value |
|---|---|---|
| images | Die VM-Images der Computer im Pool. | PoolImage[] (erforderlich) |
| kind | Diskriminator-Eigenschaft für FabricProfile. | 'Vmss' (erforderlich) |
| networkProfile | Das Netzwerkprofil der Computer im Pool. | NetworkProfile |
| osProfile | Das Betriebssystemprofil der Computer im Pool. | OsProfile |
| sku | Die Azure-SKU der Computer im Pool. | DevOpsAzureSku (erforderlich) |
| storageProfile | Das Speicherprofil der Computer im Pool. | StorageProfile |
Verwendungsbeispiele
Von Azure verifizierte Module
Die folgenden Azure Verified Modules können verwendet werden, um diesen Ressourcentyp bereitzustellen.
| Module | Description |
|---|---|
| DevOps-Pools | AVM-Ressourcenmodul für DevOps-Pools |