Så här fungerar Bicep
Du har utvecklat en förståelse för Bicep-mallspråket och de fördelar som det ger för mallredigering. Innan du börjar skriva Bicep-mallar för att etablera dina resurser vill du lära dig mer om hur Bicep fungerar.
I den här lektionen får du lära dig mer om hur Bicep fungerar med Azure Resource Manager.
Bicep-distribution
I föregående lektion lärde du dig att Bicep är utformat för ett specifikt scenario eller en specifik domän, vilket gör det till ett domänspecifikt språk. Bicep har skapats för att göra det enkelt att distribuera och konfigurera Azure-resurser.
När du distribuerar en resurs eller serie resurser till Azure skickar du Bicep-mallen till Resource Manager, som fortfarande kräver JSON-mallar. Verktygen som är inbyggda i Bicep konverterar din Bicep-mall till en JSON-mall. Den här processen kallas transpilering, som i huvudsak behandlar ARM-mallen som ett mellanliggande språk. Konverteringen sker automatiskt när du skickar distributionen, eller så kan du göra det manuellt.
Kommentar
Transpilering är processen att konvertera källkod som skrivits på ett språk till ett annat språk.
De senaste versionerna av Azure CLI och Azure PowerShell har inbyggt Bicep-stöd. Du kan använda samma distributionskommandon för att distribuera Bicep- och JSON-mallar. Följande kommando distribuerar till exempel en Bicep-mall till en resursgrupp med namnet storage-resource-group
:
az deployment group create \
--template-file main.bicep \
--resource-group storage-resource-group
När den här distributionen har skickats tittar Resource Manager på de resurser som för närvarande distribueras i Azure. Den tittar sedan på vad du försöker distribuera och konfigurerar en sekvens med steg för att uppnå det här tillståndet. Alla dessa aktiviteter omfattar att anropa Resource Manager-API:et.
Du kan visa JSON-mallen som du skickade till Resource Manager med hjälp bicep build
av kommandot . I nästa exempel konverteras en Bicep-mall till motsvarande JSON-mall:
bicep build main.bicep
Jämföra JSON och Bicep
Bicep ger en enklare syntax att använda när du skriver mallar. Titta på följande exempel på två mallar. Mallen till vänster på skärmen är en Bicep-mall. Mallen till höger på skärmen är en JSON-mall.
Observera att Bicep-mallen innehåller mindre kod. Syntaxen är lättare att läsa och förstå, och det finns inga komplexa uttryck som i JSON-mallen till höger.
Kommentar
Information om hur du visar motsvarande JSON- och Bicep-filer sida vid sida finns i Bicep Playground.