StefanWe 14 Geschrieben 20. September Melden Teilen Geschrieben 20. September Hallo, ich baue gerade das ein oder andere größere Bicep Deployment. In einem Fall möchte ich gerne es etwas schöner lösen, komme aber nicht weiter. Ich habe ein main.bicep Script, welches als targetscope = 'Subscription' läuft um meine Resource Gruppen zu erstellen. Alle anderen Ressourcen werden dann als Module aus dem main Script gestartet. Ich lege im ersten Modul mehrere virtuelle Netze an. In diesem Script gebe ich über output die ResourceID der erstellten virtuellen Netze zurück. Anschließend habe ich im main Script eine Variable als array erstellt var Netzids = [ VirtualNetworks.outputs.vnet2id VirtualNetworks.outputs.vnet3id VirtualNetworks.outputs.vnet4id ] ich rufe nun das Modul für meine privaten DNS Zonen und deren vnet verlinkungen auf und übergebe das array als Parameter module PrivateDNSZones 'privatedns.bicep' = { scope: resourceGroup(rg_000.name) name: 'Deployment-Private-DNS-Zones' params: { vnetlinkids: Netzids } dependsOn: [ VirtualNetworks ] } Das funktioniert soweit ohne Probleme. Allerdings nun in der for Schleife komme ich mit dem Namen nicht zurecht. Dieser muss ja eindeutig sein: resource vnetlinkblob 'Microsoft.Network/privateDnsZones/virtualNetworkLinks@2024-06-01' = [for vnet in vnetlinkids: { name: 'link-${vnet}' parent: PrivatLinkBlob location: 'global' properties: { registrationEnabled: false virtualNetwork: { id: vnet } } }] In vnet steht allerdings die ID drin und nicht der Name vom Subnet. Damit läuft das Deployment auf die Nase. Ich glaube ansonsten würde es funktionieren. Die Frage ist nun, wie komme ich an den Namen des vnets um für den Link einen eindeutigen Namen zu haben? Zitieren Link zu diesem Kommentar
StefanWe 14 Geschrieben 1. Oktober Autor Melden Teilen Geschrieben 1. Oktober (bearbeitet) Hab es übrigens recht einfach selber lösen können. In der resourceID ist ja ganz hinten der Name untergebracht. Dementsprechend kann man die Split Funktion in Verbindung mit concat verwenden. name: concat('vnetlink-', split(vnet, '/')[8]) bearbeitet 1. Oktober von StefanWe Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.