Definicja zasobu Bicep
Typ zasobu projects/environmentTypes 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.
Aby utworzyć zasób Microsoft.DevCenter/projects/environmentTypes, dodaj następujący kod Bicep do szablonu.
resource symbolicname 'Microsoft.DevCenter/projects/environmentTypes@2022-08-01-preview' = {
parent: resourceSymbolicName
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
properties: {
creatorRoleAssignment: {
roles: {
{customized property}: {}
}
}
deploymentTargetId: 'string'
status: 'string'
userRoleAssignments: {
{customized property}: {
roles: {
{customized property}: {}
}
}
}
}
tags: {
{customized property}: 'string'
}
}
Wartości właściwości
Microsoft.DevCenter/projects/environmentTypes
| Name |
Description |
Value |
| tożsamość |
Właściwości tożsamości zarządzanej |
ManagedServiceIdentity |
| lokalizacja |
Lokalizacja geograficzna typu środowiska |
ciąg |
| name |
Nazwa zasobu |
ciąg (wymagany) |
| 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: projektów |
| properties |
Właściwości typu środowiska. |
ProjectEnvironmentTypeProperties |
| tags |
Tagi zasobów |
Słownik nazw tagów i wartości. Zobacz tagi w szablonach |
EnvironmentRole
ManagedServiceIdentity
| Name |
Description |
Value |
| typ |
Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). |
'None' 'SystemAssigned' "SystemAssigned, UserAssigned" "UserAssigned" (wymagane) |
| userAssignedIdentities |
Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. |
UserAssignedIdentities |
ProjectEnvironmentTypeProperties
| Name |
Description |
Value |
| creatorRoleAssignment |
Definicja roli przypisana twórcy środowiska do zasobów zapasowych. |
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment |
| deploymentTargetId |
Identyfikator subskrypcji, do którego zostanie zamapowany typ środowiska. Zasoby środowiska zostaną wdrożone w tej subskrypcji. |
ciąg |
| stan |
Określa, czy ten typ środowiska może być używany w tym projekcie. |
'Disabled' 'Enabled' |
| userRoleAssignments |
Przypisania ról utworzone w zasobach kopii zapasowych środowiska. Jest to mapowanie z identyfikatora obiektu użytkownika na obiekt identyfikatorów definicji roli. |
ProjectEnvironmentTypeUpdatePropertiesUserRoleAssignments |
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignmentRoles
ProjectEnvironmentTypeUpdatePropertiesUserRoleAssignments
UserAssignedIdentities
UserAssignedIdentity
UserRoleAssignmentRoles
UserRoleAssignmentValue
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.
Definicja zasobu szablonu usługi ARM
Typ zasobu projects/environmentTypes 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.
Aby utworzyć zasób Microsoft.DevCenter/projects/environmentTypes, dodaj następujący kod JSON do szablonu.
{
"type": "Microsoft.DevCenter/projects/environmentTypes",
"apiVersion": "2022-08-01-preview",
"name": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"properties": {
"creatorRoleAssignment": {
"roles": {
"{customized property}": {
}
}
},
"deploymentTargetId": "string",
"status": "string",
"userRoleAssignments": {
"{customized property}": {
"roles": {
"{customized property}": {
}
}
}
}
},
"tags": {
"{customized property}": "string"
}
}
Wartości właściwości
Microsoft.DevCenter/projects/environmentTypes
| Name |
Description |
Value |
| apiVersion |
Wersja interfejsu API |
'2022-08-01-preview' |
| tożsamość |
Właściwości tożsamości zarządzanej |
ManagedServiceIdentity |
| lokalizacja |
Lokalizacja geograficzna typu środowiska |
ciąg |
| name |
Nazwa zasobu |
ciąg (wymagany) |
| properties |
Właściwości typu środowiska. |
ProjectEnvironmentTypeProperties |
| tags |
Tagi zasobów |
Słownik nazw tagów i wartości. Zobacz tagi w szablonach |
| typ |
Typ zasobu |
'Microsoft.DevCenter/projects/environmentTypes' |
EnvironmentRole
ManagedServiceIdentity
| Name |
Description |
Value |
| typ |
Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). |
'None' 'SystemAssigned' "SystemAssigned, UserAssigned" "UserAssigned" (wymagane) |
| userAssignedIdentities |
Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. |
UserAssignedIdentities |
ProjectEnvironmentTypeProperties
| Name |
Description |
Value |
| creatorRoleAssignment |
Definicja roli przypisana twórcy środowiska do zasobów zapasowych. |
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment |
| deploymentTargetId |
Identyfikator subskrypcji, do którego zostanie zamapowany typ środowiska. Zasoby środowiska zostaną wdrożone w tej subskrypcji. |
ciąg |
| stan |
Określa, czy ten typ środowiska może być używany w tym projekcie. |
'Disabled' 'Enabled' |
| userRoleAssignments |
Przypisania ról utworzone w zasobach kopii zapasowych środowiska. Jest to mapowanie z identyfikatora obiektu użytkownika na obiekt identyfikatorów definicji roli. |
ProjectEnvironmentTypeUpdatePropertiesUserRoleAssignments |
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignmentRoles
ProjectEnvironmentTypeUpdatePropertiesUserRoleAssignments
UserAssignedIdentities
UserAssignedIdentity
UserRoleAssignmentRoles
UserRoleAssignmentValue
Przykłady użycia
Szablony szybkiego startu platformy Azure
Następujące szablony szybkiego startu platformy Azure wdrożyć ten typ zasobu.
Typ zasobu projects/environmentTypes 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.
Aby utworzyć zasób Microsoft.DevCenter/projects/environmentTypes, dodaj następujący program Terraform do szablonu.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DevCenter/projects/environmentTypes@2022-08-01-preview"
name = "string"
parent_id = "string"
identity {
type = "string"
identity_ids = [
"string"
]
}
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
creatorRoleAssignment = {
roles = {
{customized property} = {
}
}
}
deploymentTargetId = "string"
status = "string"
userRoleAssignments = {
{customized property} = {
roles = {
{customized property} = {
}
}
}
}
}
}
}
Wartości właściwości
Microsoft.DevCenter/projects/environmentTypes
| Name |
Description |
Value |
| tożsamość |
Właściwości tożsamości zarządzanej |
ManagedServiceIdentity |
| lokalizacja |
Lokalizacja geograficzna typu środowiska |
ciąg |
| name |
Nazwa zasobu |
ciąg (wymagany) |
| parent_id |
Identyfikator zasobu, który jest elementem nadrzędnym dla tego zasobu. |
Identyfikator zasobu typu: projekty |
| properties |
Właściwości typu środowiska. |
ProjectEnvironmentTypeProperties |
| tags |
Tagi zasobów |
Słownik nazw tagów i wartości. |
| typ |
Typ zasobu |
"Microsoft.DevCenter/projects/environmentTypes@2022-08-01-preview" |
EnvironmentRole
ManagedServiceIdentity
| Name |
Description |
Value |
| typ |
Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). |
'None' 'SystemAssigned' "SystemAssigned, UserAssigned" "UserAssigned" (wymagane) |
| userAssignedIdentities |
Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. |
UserAssignedIdentities |
ProjectEnvironmentTypeProperties
| Name |
Description |
Value |
| creatorRoleAssignment |
Definicja roli przypisana twórcy środowiska do zasobów zapasowych. |
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment |
| deploymentTargetId |
Identyfikator subskrypcji, do którego zostanie zamapowany typ środowiska. Zasoby środowiska zostaną wdrożone w tej subskrypcji. |
ciąg |
| stan |
Określa, czy ten typ środowiska może być używany w tym projekcie. |
'Disabled' 'Enabled' |
| userRoleAssignments |
Przypisania ról utworzone w zasobach kopii zapasowych środowiska. Jest to mapowanie z identyfikatora obiektu użytkownika na obiekt identyfikatorów definicji roli. |
ProjectEnvironmentTypeUpdatePropertiesUserRoleAssignments |
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment
ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignmentRoles
ProjectEnvironmentTypeUpdatePropertiesUserRoleAssignments
UserAssignedIdentities
UserAssignedIdentity
UserRoleAssignmentRoles
UserRoleAssignmentValue
Przykłady użycia
Podstawowy przykład wdrażania typu środowiska projektu 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
}
variable "location" {
type = string
}
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" "environmentType" {
type = "Microsoft.DevCenter/devCenters/environmentTypes@2025-02-01"
parent_id = azapi_resource.devCenter.id
name = "${var.resource_name}-envtype"
}
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
}
}
}
resource "azapi_resource" "environmentType_1" {
type = "Microsoft.DevCenter/projects/environmentTypes@2025-02-01"
parent_id = azapi_resource.project.id
name = azapi_resource.environmentType.name
body = {
properties = {
deploymentTargetId = "/subscriptions/${data.azapi_client_config.current.subscription_id}"
status = "Enabled"
}
}
}