Udostępnij za pośrednictwem


Microsoft.DevCenter devcenters/galerie

Definicja zasobu Bicep

Typ zasobu devcenters/gallerys 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.DevCenter/devcenters/gallerys, dodaj następujący kod Bicep do szablonu.

resource symbolicname 'Microsoft.DevCenter/devcenters/galleries@2026-01-01-preview' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    galleryResourceId: 'string'
  }
}

Wartości właściwości

Microsoft.DevCenter/devcenters/galleries

Name Description Value
name Nazwa zasobu string

Constraints:
Minimalna długość = 3
Maksymalna długość = 63
Wzorzec = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (wymagane)
nadrzędny W Bicep można określić zasób nadrzędny dla zasobu podrzędnego. Tę właściwość należy dodać tylko wtedy, gdy zasób podrzędny jest zadeklarowany poza zasobem nadrzędnym.

Aby uzyskać więcej informacji, zobacz Zasób podrzędny poza zasobem nadrzędnym.
Nazwa symboliczna zasobu typu: centrów deweloperskich
properties Właściwości galerii. GalleryProperties

GalleryProperties

Name Description Value
galleryResourceId Identyfikator zasobu galerii obliczeniowej platformy Azure. ciąg (wymagany)

Przykłady użycia

Przykłady szybkiego startu platformy Azure

Poniższe szablony szybkiego startu platformy Azure zawierają przykłady Bicep na potrzeby wdrażania tego typu zasobu.

Plik Bicep Description
Konfigurowanie usługi Dev Box Ten szablon umożliwia utworzenie wszystkich zasobów administracyjnych usługi Dev Box zgodnie z przewodnikiem Szybki start dotyczącym usługi Dev Box (/azure/dev-box/quickstart-create-dev-box). Możesz wyświetlić wszystkie utworzone zasoby lub bezpośrednio przejść do DevPortal.microsoft.com, aby utworzyć pierwsze rozwiązanie Dev Box.

Definicja zasobu szablonu usługi ARM

Typ zasobu devcenters/gallerys 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.DevCenter/devcenters/gallerys, dodaj następujący kod JSON do szablonu.

{
  "type": "Microsoft.DevCenter/devcenters/galleries",
  "apiVersion": "2026-01-01-preview",
  "name": "string",
  "properties": {
    "galleryResourceId": "string"
  }
}

Wartości właściwości

Microsoft.DevCenter/devcenters/galleries

Name Description Value
apiVersion Wersja interfejsu API 'Zapowiedź 2026-01-01'
name Nazwa zasobu string

Constraints:
Minimalna długość = 3
Maksymalna długość = 63
Wzorzec = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (wymagane)
properties Właściwości galerii. GalleryProperties
typ Typ zasobu 'Microsoft.DevCenter/devcenters/galleries'

GalleryProperties

Name Description Value
galleryResourceId Identyfikator zasobu galerii obliczeniowej platformy Azure. ciąg (wymagany)

Przykłady użycia

Szablony szybkiego startu platformy Azure

Następujące szablony szybkiego startu platformy Azure wdrożyć ten typ zasobu.

Template Description
Konfigurowanie usługi Dev Box

wdrażanie w usłudze Azure
Ten szablon umożliwia utworzenie wszystkich zasobów administracyjnych usługi Dev Box zgodnie z przewodnikiem Szybki start dotyczącym usługi Dev Box (/azure/dev-box/quickstart-create-dev-box). Możesz wyświetlić wszystkie utworzone zasoby lub bezpośrednio przejść do DevPortal.microsoft.com, aby utworzyć pierwsze rozwiązanie Dev Box.

Definicja zasobu narzędzia Terraform (dostawcy AzAPI)

Typ zasobu devcenters/gallerys 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.DevCenter/devcenters/gallerys, dodaj następujący program Terraform do szablonu.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DevCenter/devcenters/galleries@2026-01-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      galleryResourceId = "string"
    }
  }
}

Wartości właściwości

Microsoft.DevCenter/devcenters/galleries

Name Description Value
name Nazwa zasobu string

Constraints:
Minimalna długość = 3
Maksymalna długość = 63
Wzorzec = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (wymagane)
parent_id Identyfikator zasobu, który jest elementem nadrzędnym dla tego zasobu. Identyfikator zasobu typu: centrów deweloperskich
properties Właściwości galerii. GalleryProperties
typ Typ zasobu "Microsoft.DevCenter/devcenters/galleries@2026-01-01-preview"

GalleryProperties

Name Description Value
galleryResourceId Identyfikator zasobu galerii obliczeniowej platformy Azure. ciąg (wymagany)

Przykłady użycia

Przykłady programu Terraform

Podstawowy przykład wdrażania galerii Centrum deweloperów.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

data "azapi_client_config" "current" {}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westus"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "gallery" {
  type      = "Microsoft.Compute/galleries@2022-03-03"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}sig"
  location  = var.location
  body = {
    properties = {
      description = ""
    }
  }
}

resource "azapi_resource" "userAssignedIdentity" {
  type      = "Microsoft.ManagedIdentity/userAssignedIdentities@2023-01-31"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}uai"
  location  = var.location
}

resource "azapi_resource" "devCenter" {
  type      = "Microsoft.DevCenter/devCenters@2025-02-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}dc"
  location  = var.location
  identity {
    type         = "UserAssigned"
    identity_ids = [azapi_resource.userAssignedIdentity.id]
  }
  body = {
    properties = {}
  }
}

# Assign Reader role on the gallery to the Dev Center's user-assigned identity
locals {
  reader_role_id = "acdd72a7-3385-48ef-bd42-f606fba81ae7"
}

resource "azapi_resource" "roleAssignment" {
  type      = "Microsoft.Authorization/roleAssignments@2022-04-01"
  name      = uuidv5("url", "${azapi_resource.gallery.id}/roleAssignments/${azapi_resource.userAssignedIdentity.output.properties.principalId}")
  parent_id = azapi_resource.gallery.id
  body = {
    properties = {
      roleDefinitionId = "/subscriptions/${data.azapi_client_config.current.subscription_id}/providers/Microsoft.Authorization/roleDefinitions/${local.reader_role_id}"
      principalId      = azapi_resource.userAssignedIdentity.output.properties.principalId
      principalType    = "ServicePrincipal"
    }
  }
  depends_on = [azapi_resource.userAssignedIdentity, azapi_resource.gallery]
}

resource "azapi_resource" "gallery_1" {
  type      = "Microsoft.DevCenter/devCenters/galleries@2025-02-01"
  parent_id = azapi_resource.devCenter.id
  name      = "${var.resource_name}dcg"
  body = {
    properties = {
      galleryResourceId = azapi_resource.gallery.id
    }
  }
  depends_on = [azapi_resource.roleAssignment]
}