Как работает Bicep
Вы разработали представление о языке шаблона Bicep и преимуществах, предоставляемых для разработки шаблонов. Прежде чем начинать процесс написания шаблонов Bicep для подготовки ресурсов, необходимо больше узнать о том, как работает Bicep.
В этом уроке вы узнаете, как Bicep работает с Azure Resource Manager.
Развертывание Bicep
В предыдущем уроке вы узнали, что Bicep предназначен для определенного сценария или домена, что делает его языком для конкретного домена. Bicep создан для упрощения развертывания и настройки ресурсов Azure.
При развертывании ресурса или ряда ресурсов в Azure вы отправляете шаблон Bicep в службу Resource Manager, которая все еще требует шаблоны JSON. Инструмент, встроенный в Bicep, преобразует шаблон Bicep в шаблон JSON. Этот процесс, при котором шаблон ARM обрабатывается как промежуточный язык, называется транспиляцией. Преобразование происходит автоматически при отправке развертывания или его можно выполнить вручную.
Примечание.
Транспиляция — это процесс преобразования исходного кода, написанного на одном языке, в другой язык.
Последние версии Azure CLI и Azure PowerShell поддерживают встроенную поддержку Bicep. Для развертывания шаблонов Bicep и JSON можно использовать те же команды развертывания. Например, следующая команда развертывает шаблон Bicep в группе ресурсов под названием storage-resource-group
.
az deployment group create \
--template-file main.bicep \
--resource-group storage-resource-group
После отправки этого развертывания Resource Manager просматривает ресурсы, развернутые в Настоящее время в Azure. Затем она просматривает, что вы пытаетесь развернуть, и настраивает последовательность действий для достижения этого состояния. Все эти действия подразумевают вызов API Resource Manager.
Шаблон JSON, отправленный в Resource Manager, можно просмотреть с помощью bicep build
команды. В следующем примере шаблон Bicep преобразуется в соответствующий шаблон JSON:
bicep build main.bicep
Сравнение JSON и Bicep
Bicep предоставляет более простой синтаксис, используемый при написании шаблонов. Взгляните на следующие примеры двух шаблонов. Шаблон слева от экрана — это шаблон Bicep. Шаблон справа от экрана — это шаблон JSON.
Обратите внимание, что шаблон Bicep содержит меньше кода. Синтаксис легко читать и понимать, также здесь нет сложных выражений, как в шаблоне JSON (справа).
Примечание.
Одновременный просмотр эквивалентных файлов JSON и Bicep см. на тестовой площадке Bicep.