ResourceScope用户界面(UI)元素允许用户选择部署的订阅、资源组和位置。 在表单视图中,用它来实现资源组的通用部署流程。
ResourceScope 是表单视图特有的。 在 createUiDefinition.json中,订阅、资源组和位置则由隐式的基础步骤提供。
UI 示例
该 ResourceScope 元素渲染部署范围的项目细节字段,包括订阅、资源组和区域。
Schema
{
"name": "resourceScope",
"type": "Microsoft.Common.ResourceScope",
"subscription": {
"resourceProviders": [
"Microsoft.KeyVault"
]
},
"resourceGroup": {
"allowExisting": true
},
"resourceName": {
"label": "Key vault name",
"toolTip": "Enter a globally unique key vault name.",
"constraints": {
"validations": [
{
"regex": "^[a-zA-Z0-9-]{3,24}$",
"message": "The name must be 3-24 characters long and contain only letters, numbers, and hyphens."
}
]
}
},
"location": {
"label": "Region",
"toolTip": "Select the Azure region for the resource.",
"resourceTypes": [
"Microsoft.KeyVault/vaults"
]
}
}
示例输出
{
"subscription": {
"displayName": "Contoso subscription",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"tenantId": "11111111-1111-1111-1111-111111111111"
},
"resourceGroup": {
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example-rg",
"name": "example-rg",
"location": "chinanorth2"
},
"location": {
"name": "chinanorth2",
"displayName": "China North 2"
},
"resourceName": "example-vault"
}
Remarks
-
subscription.resourceProviders筛选可选订阅至列出的供应商可用的订阅。 -
resourceGroup.allowExisting控制用户是否可以选择已有的资源组。 -
resourceName在范围选择器中添加资源名称字段。 用resourceName.constraints.validations来验证名称。 -
location.resourceTypes将区域筛选到支持上述资源类型的地点。 - 用 引用选定的资源组 ID
[steps('basics').resourceScope.resourceGroup.id]。 - 用 来引用选定的位置名称
[steps('basics').resourceScope.location.name]。 - 引用资源名称。
[steps('basics').resourceScope.resourceName]
对于资源组部署,请使用以下 view.outputs选定范围:
"outputs": {
"kind": "ResourceGroup",
"resourceGroupId": "[steps('basics').resourceScope.resourceGroup.id]",
"location": "[steps('basics').resourceScope.location.name]",
"parameters": {
"name": "[steps('basics').resourceScope.resourceName]",
"location": "[steps('basics').resourceScope.location.name]"
}
}