Konfigurace prostředí Bicep
Bicep podporuje volitelný konfigurační soubor s názvem bicepconfig.json. V tomto souboru můžete přidat hodnoty, které přizpůsobí vývojové prostředí Bicep. Tento soubor se sloučí s výchozím konfiguračním souborem. Další informace najdete v tématu Vysvětlení procesu sloučení. Chcete-li přizpůsobit konfiguraci, vytvořte konfigurační soubor ve stejném adresáři nebo nadřazený adresář souborů Bicep. Pokud obsahuje více nadřazených adresářů obsahujících bicepconfig.json soubory, použije Bicep konfiguraci z nejbližšího adresáře. Další informace najdete v tématu Vysvětlení procesu řešení souborů.
Pokud chcete nakonfigurovat nastavení rozšíření Bicep, přečtěte si téma Visual Studio Code a rozšíření Bicep.
Vytvoření konfiguračního souboru v editoru Visual Studio Code
Konfigurační soubor můžete vytvořit pomocí libovolného textového editoru.
Pokud chcete vytvořit soubor bicepconfig.json v editoru Visual Studio Code, otevřete paletu příkazů ([CTRL/CMD]+[SHIFT]+P) a pak vyberte Bicep: Vytvořit konfigurační soubor Bicep. Další informace najdete v tématu Vytvoření konfiguračního souboru Bicep.
Rozšíření Bicep pro Visual Studio Code podporuje Technologii IntelliSense pro bicepconfig.json soubory. Pomocí technologie IntelliSense můžete zjišťovat dostupné vlastnosti a hodnoty.
Vysvětlení procesu sloučení
Soubor bicepconfig.json prochází rekurzivním procesem sloučení dolů s výchozím konfiguračním souborem. Během procesu sloučení prozkoumá Bicep každou cestu v obou konfiguracích. Pokud cesta není ve výchozí konfiguraci, cesta a její přidružená hodnota se přidají do konečného výsledku. Naopak pokud cesta existuje ve výchozí konfiguraci s jinou hodnotou, má hodnota z bicepconfig.json přednost ve sloučeném výsledku.
Představte si scénář, ve kterém je výchozí konfigurace definována takto:
{
"cloud": {
...
"credentialPrecedence": [
"AzureCLI",
"AzurePowerShell"
]
},
"moduleAliases": {
"ts": {},
"br": {
"public": {
"registry": "mcr.microsoft.com",
"modulePath": "bicep"
}
}
},
...
}
A bicepconfig.json je definován takto:
{
"cloud": {
"credentialPrecedence": [
"AzurePowerShell",
"AzureCLI"
]
},
"moduleAliases": {
"br": {
"ContosoRegistry": {
"registry": "contosoregistry.azurecr.io"
},
"CoreModules": {
"registry": "contosoregistry.azurecr.io",
"modulePath": "bicep/modules/core"
}
}
}
}
Výsledná sloučená konfigurace by byla:
{
"cloud": {
...
"credentialPrecedence": [
"AzurePowerShell",
"AzureCLI"
]
},
"moduleAliases": {
"ts": {},
"br": {
"public": {
"registry": "mcr.microsoft.com",
"modulePath": "bicep"
},
"ContosoRegistry": {
"registry": "contosoregistry.azurecr.io"
},
"CoreModules": {
"registry": "contosoregistry.azurecr.io",
"modulePath": "bicep/modules/core"
}
}
},
...
}
V předchozím příkladu je hodnota cloud.credentialPrecedence
nahrazena, zatímco hodnoty cloud.moduleAliases.ContosoRegistry
a cloud.moduleAliases.CoreModules
jsou připojeny ve sloučené konfiguraci.
Vysvětlení procesu řešení souborů
Soubor bicepconfig.json lze umístit do stejného adresáře nebo nadřazeného adresáře vašich souborů Bicep. Pokud obsahuje více nadřazených adresářů obsahujících bicepconfig.json soubory, použije Bicep konfigurační soubor z nejbližšího adresáře. Například v dané struktuře složek, kde má každá složka bicepconfig.json soubor:
Pokud zkompilujete main.bicep ve child
složce, použije se bicepconfig.json soubor ve child
složce. Konfigurační soubory ve parent
složce a root
složka se ignorují. child
Pokud složka neobsahuje konfigurační soubor, Bicep vyhledá konfiguraci ve parent
složce a pak složkuroot
. Pokud se konfigurační soubor nenajde v žádné ze složek, použije bicep výchozí hodnoty.
V kontextu souboru Bicep, který vyvolává více modulů, prochází každý modul kompilací pomocí nejbližšího bicepconfig.json. Potom se hlavní soubor Bicep zkompiluje s odpovídajícím bicepconfig.json. V následujícím scénáři modA.bicep
je zkompilován pomocí bicepconfig.json umístěné ve A
složce, modB.bicep
je zkompilován s bicepconfig.json ve B
složce a nakonec se main.bicep zkompiluje pomocí bicepconfig.json ve root
složce.
Pokud v souborech A
a B
složkách chybí bicepconfig.json, všechny tři soubory Bicep se kompilují pomocí bicepconfig.json nalezených root
ve složce. Pokud bicepconfig.json v žádné ze složek není, použije se výchozí hodnota kompilace s použitím výchozích hodnot.
Konfigurace modulů Bicep
Při práci s moduly můžete přidat aliasy pro cesty k modulům. Tyto aliasy zjednodušují váš soubor Bicep, protože nemusíte opakovat složité cesty. Můžete také nakonfigurovat prioritu cloudového profilu a přihlašovacích údajů pro ověřování v Azure z rozhraní příkazového řádku Bicep a editoru Visual Studio Code. Přihlašovací údaje slouží k publikování modulů do registrů a k obnovení externích modulů do místní mezipaměti při použití funkce vložení prostředku. Další informace najdete v tématu Přidání nastavení modulu do konfigurace Bicep.
Konfigurace pravidel Linter
Nástroj Bicep linter kontroluje chyby syntaxe a porušení osvědčených postupů v souborech Bicep. Můžete upravit soubor bicepconfig.json tak, aby přepsaly výchozí nastavení způsobu ověření souboru Bicep. Další informace naleznete v tématu Přidání nastavení linter do konfigurace Bicep.
Povolení experimentálních funkcí
Experimentální funkce můžete povolit přidáním následující části do souboru bicepconfig.json . Použití experimentálních funkcí automaticky umožňuje generování kódu verze 2.0 jazyka.
Tady je příklad povolení funkcí kontrolních výrazů a testFramework.
{
"experimentalFeaturesEnabled": {
"assertions": true,
"testFramework": true
}
}
Další informace o experimentálních funkcích Bicep najdete v tématu Experimentální funkce .