Partilhar via


Projetos Microsoft.DevCenter 2024-02-01

Definição de recursos do bíceps

O tipo de recurso de projetos pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevCenter/projects, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.DevCenter/projects@2024-02-01' = {
  scope: resourceSymbolicName or scope
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    catalogSettings: {
      catalogItemSyncTypes: [
        'string'
      ]
    }
    description: 'string'
    devCenterId: 'string'
    displayName: 'string'
    maxDevBoxesPerUser: int
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores de propriedade

Microsoft.DevCenter/projects

Name Description Value
identidade Propriedades de identidade gerenciadas ManagedServiceIdentity
localização A geolocalização onde o recurso vive string (obrigatório)
name O nome do recurso string

Constraints:
Comprimento mínimo = 3
Comprimento máximo = 63
Padrão = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (obrigatório)
properties Propriedades de um projeto. ProjectProperties
âmbito Use ao criar um recurso em um escopo diferente do escopo de implantação. Defina essa propriedade como o nome simbólico de um recurso para aplicar o recurso de extensão .
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos

ManagedServiceIdentity

Name Description Value
tipo Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. UserAssignedIdentities

ProjectCatalogSettings

Name Description Value
catalogItemSyncTypes Indica os tipos de item de catálogo que podem ser sincronizados. Matriz de cadeia de caracteres contendo qualquer uma das:
'EnvironmentDefinition'

ProjectProperties

Name Description Value
catalogSettings Configurações a serem usadas ao associar um projeto a um catálogo. ProjectCatalogSettings
description Descrição do projeto. cadeia (de caracteres)
devCenterId ID do recurso de um DevCenter associado cadeia (de caracteres)
displayName O nome para exibição do projeto. cadeia (de caracteres)
maxDevBoxesPerUser Quando especificado, limita o número máximo de Caixas de Desenvolvimento que um único usuário pode criar em todos os pools do projeto. Isso não terá efeito nas Caixas de Desenvolvimento existentes quando reduzidas. int

Constraints:
Valor mínimo = 0

TrackedResourceTags

Name Description Value

UserAssignedIdentities

Name Description Value

UserAssignedIdentity

Name Description Value

Exemplos de uso

Módulos verificados do Azure

Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.

Módulo Description
Projeto Centro de Desenvolvimento Módulo de recursos do AVM para o projeto do Centro de Desenvolvimento

Exemplos de início rápido do Azure

Os seguintes modelos início rápido do Azure contêm exemplos de Bicep para implantar esse tipo de recurso.

Arquivo Bicep Description
de serviço Configurar Ambientes de Implantação Este modelo fornece uma maneira de configurar ambientes de implantação.
Configurar o serviço Caixa de Desenvolvimento Este modelo criaria todos os recursos de administração da Caixa de Desenvolvimento de acordo com o guia de início rápido da Caixa de Desenvolvimento (/azure/dev-box/quickstart-create-dev-box). Você pode visualizar todos os recursos criados ou ir diretamente para DevPortal.microsoft.com para criar sua primeira Caixa de Desenvolvimento.
Implantar o Serviço de Caixa de Desenvolvimento Este modelo fornece uma maneira de configurar todos os recursos necessários para criar uma Caixa de Desenvolvimento.
Implantar o Dev Box Service com de imagem interna Este modelo fornece uma maneira de implantar um serviço Dev Box com imagem interna.

Definição de recurso de modelo ARM

O tipo de recurso de projetos pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevCenter/projects, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.DevCenter/projects",
  "apiVersion": "2024-02-01",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "catalogSettings": {
      "catalogItemSyncTypes": [ "string" ]
    },
    "description": "string",
    "devCenterId": "string",
    "displayName": "string",
    "maxDevBoxesPerUser": "int"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores de propriedade

Microsoft.DevCenter/projects

Name Description Value
apiVersion A versão api '2024-02-01'
identidade Propriedades de identidade gerenciadas ManagedServiceIdentity
localização A geolocalização onde o recurso vive string (obrigatório)
name O nome do recurso string

Constraints:
Comprimento mínimo = 3
Comprimento máximo = 63
Padrão = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (obrigatório)
properties Propriedades de um projeto. ProjectProperties
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos
tipo O tipo de recurso 'Microsoft.DevCenter/projects'

ManagedServiceIdentity

Name Description Value
tipo Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. UserAssignedIdentities

ProjectCatalogSettings

Name Description Value
catalogItemSyncTypes Indica os tipos de item de catálogo que podem ser sincronizados. Matriz de cadeia de caracteres contendo qualquer uma das:
'EnvironmentDefinition'

ProjectProperties

Name Description Value
catalogSettings Configurações a serem usadas ao associar um projeto a um catálogo. ProjectCatalogSettings
description Descrição do projeto. cadeia (de caracteres)
devCenterId ID do recurso de um DevCenter associado cadeia (de caracteres)
displayName O nome para exibição do projeto. cadeia (de caracteres)
maxDevBoxesPerUser Quando especificado, limita o número máximo de Caixas de Desenvolvimento que um único usuário pode criar em todos os pools do projeto. Isso não terá efeito nas Caixas de Desenvolvimento existentes quando reduzidas. int

Constraints:
Valor mínimo = 0

TrackedResourceTags

Name Description Value

UserAssignedIdentities

Name Description Value

UserAssignedIdentity

Name Description Value

Exemplos de uso

Modelos de início rápido do Azure

Os seguintes modelos de início rápido do Azure implantar esse tipo de recurso.

Template Description
de serviço Configurar Ambientes de Implantação

Implantar no Azure
Este modelo fornece uma maneira de configurar ambientes de implantação.
Configurar o serviço Caixa de Desenvolvimento

Implantar no Azure
Este modelo criaria todos os recursos de administração da Caixa de Desenvolvimento de acordo com o guia de início rápido da Caixa de Desenvolvimento (/azure/dev-box/quickstart-create-dev-box). Você pode visualizar todos os recursos criados ou ir diretamente para DevPortal.microsoft.com para criar sua primeira Caixa de Desenvolvimento.
Implantar o Serviço de Caixa de Desenvolvimento

Implantar no Azure
Este modelo fornece uma maneira de configurar todos os recursos necessários para criar uma Caixa de Desenvolvimento.
Implantar o Dev Box Service com de imagem interna

Implantar no Azure
Este modelo fornece uma maneira de implantar um serviço Dev Box com imagem interna.

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso de projetos pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevCenter/projects, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DevCenter/projects@2024-02-01"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      catalogSettings = {
        catalogItemSyncTypes = [
          "string"
        ]
      }
      description = "string"
      devCenterId = "string"
      displayName = "string"
      maxDevBoxesPerUser = int
    }
  }
}

Valores de propriedade

Microsoft.DevCenter/projects

Name Description Value
identidade Propriedades de identidade gerenciadas ManagedServiceIdentity
localização A geolocalização onde o recurso vive string (obrigatório)
name O nome do recurso string

Constraints:
Comprimento mínimo = 3
Comprimento máximo = 63
Padrão = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (obrigatório)
parent_id A ID do recurso ao qual aplicar esse recurso de extensão. string (obrigatório)
properties Propriedades de um projeto. ProjectProperties
tags Etiquetas de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft.DevCenter/projects@2024-02-01"

ManagedServiceIdentity

Name Description Value
tipo Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. UserAssignedIdentities

ProjectCatalogSettings

Name Description Value
catalogItemSyncTypes Indica os tipos de item de catálogo que podem ser sincronizados. Matriz de cadeia de caracteres contendo qualquer uma das:
'EnvironmentDefinition'

ProjectProperties

Name Description Value
catalogSettings Configurações a serem usadas ao associar um projeto a um catálogo. ProjectCatalogSettings
description Descrição do projeto. cadeia (de caracteres)
devCenterId ID do recurso de um DevCenter associado cadeia (de caracteres)
displayName O nome para exibição do projeto. cadeia (de caracteres)
maxDevBoxesPerUser Quando especificado, limita o número máximo de Caixas de Desenvolvimento que um único usuário pode criar em todos os pools do projeto. Isso não terá efeito nas Caixas de Desenvolvimento existentes quando reduzidas. int

Constraints:
Valor mínimo = 0

TrackedResourceTags

Name Description Value

UserAssignedIdentities

Name Description Value

UserAssignedIdentity

Name Description Value

Exemplos de uso

Amostras Terraform

Um exemplo básico de implantação do Dev Center Project.

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

provider "azapi" {
  skip_provider_registration = false
}

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" "devCenter" {
  type      = "Microsoft.DevCenter/devCenters@2025-02-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  identity {
    type = "SystemAssigned"
  }
  body = {
    properties = {}
  }
}

resource "azapi_resource" "project" {
  type      = "Microsoft.DevCenter/projects@2025-02-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}-proj"
  location  = var.location
  body = {
    properties = {
      description        = ""
      devCenterId        = azapi_resource.devCenter.id
      maxDevBoxesPerUser = 0
    }
  }
}