Istniejące zasoby w aplikacji Bicep

Aby odwołać się do istniejącego zasobu, który nie został wdrożony w bieżącym pliku Bicep, zadeklaruj zasób za pomocą słowa kluczowego existing . existing Użyj słowa kluczowego podczas wdrażania zasobu, który musi uzyskać wartość z istniejącego zasobu. Dostęp do właściwości istniejącego zasobu można uzyskać za pomocą jego symbolicznej nazwy.

Zasób nie jest ponownie wdrażany podczas odwoływanie się do słowa kluczowego existing .

Ten sam zakres

Poniższy przykład pobiera istniejące konto magazynu w tej samej grupie zasobów co bieżące wdrożenie. Zwróć uwagę, że podajesz tylko nazwę istniejącego zasobu. Właściwości są dostępne za pośrednictwem nazwy symbolicznej.

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

output blobEndpoint string = stg.properties.primaryEndpoints.blob

Inny zakres

Ustaw właściwość , scope aby uzyskać dostęp do zasobu w innym zakresie. Poniższy przykład odwołuje się do istniejącego konta magazynu w innej grupie zasobów.

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

output blobEndpoint string = stg.properties.primaryEndpoints.blob

Aby uzyskać więcej informacji na temat ustawiania zakresu, zobacz Funkcje zakresu dla Bicep.

Rozwiązywanie problemów

Jeśli spróbujesz odwołać się do zasobu, który nie istnieje, zostanie wyświetlony NotFound błąd i wdrożenie zakończy się niepowodzeniem. Sprawdź nazwę i zakres zasobu, do którego próbujesz się odwołać.

Następne kroki

Składnia umożliwiająca wdrożenie zasobu można znaleźć w temacie Deklaracja zasobu w Bicep.