Microsoft. Elemento de interfaz Common.ResourceScope

El ResourceScope elemento de interfaz de usuario (UI) permite a los usuarios seleccionar la suscripción, el grupo de recursos y la ubicación para un despliegue. Úsalo para el flujo común de despliegue de grupos de recursos en una vista de formularios.

ResourceScope es específico de la vista de Formularios. En createUiDefinition.json, la suscripción, el grupo de recursos y la ubicación se proporcionan mediante el paso implícito de Básicos.

Ejemplo de interfaz de usuario

El ResourceScope elemento muestra los campos de detalles del proyecto para el alcance del despliegue, incluyendo suscripción, grupo de recursos y región.

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"
    ]
  }
}

Salida de ejemplo

{
  "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": "westus2"
  },
  "location": {
    "name": "westus2",
    "displayName": "West US 2"
  },
  "resourceName": "example-vault"
}

Remarks

  • subscription.resourceProviders Filtra las suscripciones seleccionables a las suscripciones donde estén disponibles los proveedores listados.
  • resourceGroup.allowExisting Controla si los usuarios pueden seleccionar un grupo de recursos existente.
  • resourceName añade un campo de nombre de recurso al selector de ámbito. Úsalo resourceName.constraints.validations para validar el nombre.
  • location.resourceTypes Filtra las regiones a ubicaciones que soportan los tipos de recursos listados.
  • Referencia el ID del grupo de recursos seleccionado con [steps('basics').resourceScope.resourceGroup.id].
  • Referencia el nombre de la ubicación seleccionada con [steps('basics').resourceScope.location.name].
  • Referencia el nombre del recurso con [steps('basics').resourceScope.resourceName].

Para despliegues de grupos de recursos, utilice el alcance seleccionado en 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]"
  }
}

Pasos siguientes