Recursos existentes no Bicep
Para referenciar um recurso existente que não está implantado em seu arquivo Bicep atual, declare o recurso com a palavra-chave existing
. Use a palavra-chave existing
ao implantar um recurso que precisa obter um valor de um recurso existente. Você acessa as propriedades do recurso existente por meio de seu nome simbólico.
O recurso não é reimplantado quando referenciado com a palavra-chave existing
.
Mesmo escopo
O exemplo a seguir usa uma conta de armazenamento existente no mesmo grupo de recursos que a implantação atual. Observe que você fornece apenas o nome do recurso existente. As propriedades estão disponíveis por meio do nome simbólico.
resource stg 'Microsoft.Storage/storageAccounts@2023-04-01' existing = {
name: 'examplestorage'
}
output blobEndpoint string = stg.properties.primaryEndpoints.blob
Escopo diferente
Defina a propriedade scope
para acessar um recurso em um escopo diferente. O exemplo a seguir faz referência a uma conta de armazenamento existente em um grupo de recursos diferente.
resource stg 'Microsoft.Storage/storageAccounts@2023-04-01' existing = {
name: 'examplestorage'
scope: resourceGroup(exampleRG)
}
output blobEndpoint string = stg.properties.primaryEndpoints.blob
Para saber mais sobre como definir o escopo, confira Funções de escopo para Bicep.
Solução de problemas
Se você tentar referenciar um recurso que não existe, você obterá o erro NotFound
e a implantação falhará. Verifique o nome e o escopo do recurso que você está tentando referenciar.
Próximas etapas
Para obter a sintaxe para implantar um recurso, consulteDeclaração de recurso no Bicep.