Compartir a través de


Recursos existentes en Bicep

Para hacer referencia a un recurso existente que no está implementado en el archivo Bicep actual, declare el recurso con la palabra clave existing. Use la palabra clave existing cuando implemente un recurso que necesite obtener un valor de un recurso existente. Puede acceder a las propiedades del recurso existente a través de su nombre simbólico.

El recurso no se vuelve a implementar cuando se hace referencia a él con la palabra clave existing.

Mismo ámbito

En el siguiente ejemplo se obtiene una cuenta de almacenamiento existente en el mismo grupo de recursos que la implementación actual. Tenga en cuenta que solo proporciona el nombre del recurso existente. Las propiedades están disponibles a través del nombre simbólico.

resource stg 'Microsoft.Storage/storageAccounts@2023-04-01' existing = {
  name: 'examplestorage'
}

output blobEndpoint string = stg.properties.primaryEndpoints.blob

Ámbito diferente

Establezca la propiedad scope para acceder a un recurso en otro ámbito. En el siguiente ejemplo se hace referencia a una cuenta de almacenamiento existente en otro grupo de recursos.

resource stg 'Microsoft.Storage/storageAccounts@2023-04-01' existing = {
  name: 'examplestorage'
  scope: resourceGroup(exampleRG)
}

output blobEndpoint string = stg.properties.primaryEndpoints.blob

Para obtener más información sobre cómo establecer el ámbito, consulte Funciones de ámbito para Bicep.

Solución de problemas

Si intenta hacer referencia a un recurso que no existe, se produce el error NotFound y se produce un error en la implementación. Compruebe el nombre y el ámbito del recurso al que está intentando hacer referencia.

Pasos siguientes

Para obtener la sintaxis para implementar un recurso, consulte Declaración de recursos en Bicep.