Поделиться через


Создание файлов Bicep с помощью Visual Studio Code

В этой статье показано, как использовать Visual Studio Code для создания файлов Bicep.

Установка Visual Studio Code

Сведения о настройке среды для разработки Bicep см. в разделе Установка средств Bicep. После выполнения этих действий вы установили Visual Studio Code и расширение Bicep. У вас также есть последняя версия Azure CLI или модуля Azure PowerShell.

Команды Bicep

Visual Studio Code включает в себя несколько команд Bicep.

Откройте или создайте файл Bicep в Visual Studio Code, а затем выберите меню "Вид" и палитру команд. Вы также можете нажать клавишу F1 или сочетание клавиш CTRL+SHIFT+P , чтобы открыть палитру команд. Введите Bicep, чтобы просмотреть команды Bicep.

Снимок экрана команд Bicep в палитре команд Visual Studio Code.

В число этих команд входят следующие:

Эти команды также отображаются в контекстном меню при щелчке правой кнопкой мыши файла Bicep:

Снимок экрана с командами Bicep в Visual Studio Code в контекстном меню для файлов Bicep.

При щелчке правой кнопкой мыши на JSON-файле:

Снимок экрана: команды Bicep Visual Studio Code в контекстном меню для шаблонов ARM JSON.

Дополнительные сведения о командах, приведенных в этой статье, см. в разделе команды Bicep CLI.

Помимо команд Bicep, можно также использовать встроенные команды VS Code, например Format Documentsshift+ALT+F.

Команда "Сборка шаблона ARM"

Команда build преобразует Bicep-файл в шаблон JSON ARM. Новый шаблон хранится в той же папке с тем же именем файла. Если файл с тем же именем существует, старый файл перезаписывается. Смотрите пример сборки и дополнительные сведения.

Команда "Файл параметров сборки"

Команда build-params также преобразует файл параметров Bicep в файл параметров JSON. Новый файл параметров хранится в той же папке с тем же именем файла. Если файл с тем же именем существует, старый файл перезаписывается. См. раздел build-params для примера.

Команда «Создать конфигурационный файл Bicep»

Файл bicepconfig.json — это файл конфигурации Bicep, который может настроить возможности разработки Bicep. Вы можете добавить bicepconfig.json в несколько каталогов. Используется файл конфигурации, ближайший к файлу Bicep в иерархии каталогов. При выборе опции "Создать файл конфигурации Bicep" в Visual Studio Code расширение открывает диалоговое окно для выбора папки. Папка по умолчанию — это папка, в которой хранится файл Bicep. Если файл bicepconfig.json уже существует в папке, можно перезаписать существующий файл.

Чтобы создать файл конфигурации Bicep, выполните приведенные действия.

  1. Откройте Visual Studio Code.
  2. В меню "Вид" выберите палитру команд (или нажмите клавиши CTRL/CMD+SHIFT+P), а затем Bicep: Создать файл конфигурации Bicep.
  3. Выберите каталог файлов, в котором нужно разместить файл.
  4. Сохраните файл конфигурации после завершения.

Декомпиляция в команду Bicep

Команда decompile декомпилирует шаблон JSON ARM в файл Bicep и помещает его в тот же каталог, что и исходный шаблон ARM JSON. Новый файл имеет то же имя файла с расширением .bicep . Если файл Bicep с тем же именем файла уже существует в той же папке, Visual Studio Code предложит перезаписать существующий файл или создать копию. См. декомпиляция для примера.

Развертывание команды Bicep File

Файлы Bicep можно развертывать непосредственно из Visual Studio Code. Выберите Развернуть Bicep-файл в палитре команд или в контекстном меню. Расширение предложит войти в портал Azure, выбрать подписку, создать или выбрать группу ресурсов и ввести значения параметров.

Примечание.

Команда развертывания Bicep в Visual Studio Code использует новый встроенный API аутентификации для управления аутентификацией. Он не использует облачные профили из bicepconfig.json. Чтобы войти в пользовательское облако, выберите Управление>Параметры>Расширение>учетные записи>Microsoft Sovereign Cloud. В настоящее время поддержка нескольких аккаунтов не реализована.

Команда "Создать файл параметров"

Команда generate-params создает файл параметров в той же папке, что и файл Bicep. Вы можете создать файл параметров Bicep или файл параметров JSON. Новое имя файла параметров Bicep — <bicep-file-name>.bicepparam, а новое имя файла параметров JSON — <bicep-file-name>.parameters.json. Пример и дополнительные сведения см. в разделе "generate-params".

Команда импорта манифеста AKS (предварительная версия)

Эта команда импортирует файл манифеста AKS и создаёт модуль Bicep. Для получения дополнительной информации см. расширение Bicep Kubernetes (предварительная версия) и Краткое руководство: Развертывание кластера Службы Azure Kubernetes (AKS) с использованием расширения Bicep Kubernetes (предварительная версия).

Команда вставки ресурса

Эта команда объявляет ресурс в файле Bicep, указывая идентификатор уже существующего ресурса. Выберите "Вставить ресурс " в Visual Studio Code и введите идентификатор ресурса в палитре команд. Вставка ресурса занимает несколько секунд.

Для поиска идентификатора ресурса можно использовать один из следующих методов:


Как и в процессе экспорта шаблонов, этот процесс пытается создать доступный ресурс. Однако большинство вставленных ресурсов необходимо изменить каким-то образом, прежде чем их можно будет использовать для развертывания ресурсов Azure. Дополнительные сведения см. в разделе Декомпиляция JSON-шаблона ARM в Bicep.

Команда "Открыть визуализатор Bicep"

Визуализатор Bicep отображает ресурсы, определенные в файле Bicep, и зависимости между ними. На следующей схеме представлено визуальное представление файла Bicep для виртуальной машины Linux.

Визуализатор Bicep в Visual Studio Code

Визуализатор Bicep можно открыть параллельно с Bicep-файлом.

Вставить JSON как команду Bicep

Фрагмент JSON можно вставить из шаблона ARM в файл Bicep. Visual Studio Code автоматически декомпилирует JSON в Bicep. Эта функция доступна только с расширением Bicep версии 0.14.0 или более поздней, и она включена по умолчанию. Чтобы отключить эту функцию, см. Visual Studio Code и расширение Bicep.

Эта функция позволяет вставить следующее:

  • Полные шаблоны ARM JSON.
  • Один или несколько ресурсов.
  • Значения JSON, такие как объекты, массивы или строки. Строка с двойными кавычками преобразуется в строку с одинарными кавычками.

Например, можно начать с следующего Bicep-файла:

@description('Storage Account type')
@allowed([
  'Standard_LRS'
  'Standard_GRS'
  'Standard_ZRS'
  'Premium_LRS'
])
param storageAccountsku string = 'Standard_LRS'

@description('Location for all resources.')
param location string = resourceGroup().location

var storageAccountName = '${uniqueString(resourceGroup().id)}storage'

resource storageAccount 'Microsoft.Storage/storageAccounts@2023-04-01' = {
  name: storageAccountName
  location: location
  sku: {
    name: storageAccountsku
  }
  kind: 'StorageV2'
  tags: {
    ObjectName: storageAccountName
  }
  properties: {}
}

output storageAccountName string = storageAccountName

Вставьте следующий код JSON:

{
  "type": "Microsoft.Batch/batchAccounts",
  "apiVersion": "2024-02-01",
  "name": "[parameters('batchAccountName')]",
  "location": "[parameters('location')]",
  "tags": {
    "ObjectName": "[parameters('batchAccountName')]"
  },
  "properties": {
    "autoStorage": {
      "storageAccountId": "[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]"
    }
  }
}

Visual Studio Code автоматически преобразует JSON в Bicep. Обратите внимание, что также необходимо добавить batchAccountName параметр.

Вы можете отменить декомпиляцию, нажав клавиши CTRL+Z. Исходный json отображается в файле.

Команда "Восстановить модули Bicep"

Если файл Bicep использует модули, опубликованные в реестре, команда restore получает из реестра копии всех необходимых модулей. Эти копии помещаются в локальный кэш. Дополнительные сведения и пример см. в разделе "Восстановление".

Команда "Показать панель развертывания"

См. Панель развертывания.

Использование предложений быстрого исправления

Лампочка в VS Code представляет предложение быстрого исправления. Отображается, когда редактор обнаруживает проблему или возможность улучшения в коде. Щелкнув лампочку, отобразится меню действий, которые могут устранить проблему или улучшить код.

Снимок экрана предлагаемых быстрых исправлений в Visual Studio Code.

Команды извлечения см. в разделе "Извлечение параметров", "Переменные" и "Типы". В more Actions он предлагает добавить декораторы.

Извлечение параметров, переменных и типов

Извлечение переменных, параметров и определяемых пользователем типов данных включает изоляцию и определение этих компонентов из существующего кода для улучшения структуры кода, удобства обслуживания и ясности.

На следующем снимке экрана показано определение ресурса кластера AKS. Вы можете извлечь параметр или переменную или определяемый пользователем тип данных на основе свойства, например identity. identity Выберите строку из кода и щелкните значок желтой лампочки. В контекстных окнах показаны доступные параметры извлечения.

Снимок экрана: переменная, параметр, извлечение типов.

  • Извлечение переменной: создайте новую переменную, а также параметр для обновления имени переменной:

    Снимок экрана: извлечение переменной.

  • Извлечение параметра простого типа данных: создайте новый параметр с простым типом данных, таким как строка, int и т. д., и возможностью обновления имени параметра:

    Снимок экрана: извлечение параметра.

  • Извлеките параметр определяемого пользователем типа данных: создайте новый параметр с определяемым пользователем типом данных, а также параметром для обновления имени параметра:

    Снимок экрана: извлечение параметра с допустимыми значениями.

    Для этого требуется некоторая настройка после извлечения.

  • Создайте определяемый пользователем тип: создайте новый определяемый пользователем тип, а также параметр для обновления имени типа.

    Снимок экрана: извлечение определяемых пользователем типов данных.

    В отличие от других параметров, он не заменяет выбранный код ссылкой на новый тип. В предыдущем примере значение identity остается прежним. Чтобы использовать новый тип, необходимо включить его в код.

Просмотр параметра "Документация"

В Visual Studio Code можно открыть ссылку на шаблон для типа ресурса, в котором вы работаете. Для этого наведите указатель мыши на символическое имя ресурса и выберите "Просмотреть документацию".

Снимок экрана: параметр

Перейти к файлу

При определении модуля и независимо от типа файла, на который ссылается ссылка, — локального файла, файла реестра модулей или спецификации шаблона, можно открыть файл, выбрав или выделите путь к модулю и нажав клавишу [F12]. Если указанный файл является проверенным модулем Azure, AVM, можно переключаться между скомпилированным JSON или Bicep-файлом. Чтобы открыть Bicep-файл модуля частного реестра, убедитесь, что модуль опубликован в реестре с активированной опцией WithSource. Дополнительные сведения см. в разделе "Публикация файлов в реестре". Расширение Bicep Visual Studio Code версии 0.27.1 или более поздней версии требуется для открытия файлов Bicep из частного реестра модулей.

Панель развертывания

Область развертывания — это панель пользовательского интерфейса, которая позволяет подключаться к подписке Azure и выполнять проверку, развертывание и операции "что если", предоставляя мгновенные отзывы без выхода из редактора.

Для использования панели развертывания:

  1. Откройте файл .bicep или .bicepparam в VS Code.

  2. Открыть область развертывания можно двумя способами:

    • Нажмите кнопку "Показать область развертывания" в правом верхнем углу, как показано на следующем снимке экрана:

      Снимок экрана: кнопка открытия панели развертывания.

      По умолчанию VS Code открывает область развертывания на боковой панели. Чтобы открыть ее на новой вкладке, удерживайте клавиши ALT при нажатии кнопки.

    • Еще одним способом открыть область развертывания является палитра команд. Нажмите Ctrl+Shift+P, а затем выберите «Показать панель развертывания» или «Показать панель развертывания сбоку».

      Снимок экрана: панель развертывания в палитре команд.

    На следующем снимке экрана показано успешное развертывание с результатами проверки файла Bicep.

    Снимок экрана: область развертывания в Visual Studio Code.

  3. Выберите "Изменить область" , чтобы определить область развертывания. После проверки подлинности вы сможете выбрать подписку и группу ресурсов требуемого развертывания.

  4. Выберите файл параметров JSON , чтобы выбрать файл параметров JSON.

  5. Выберите нужное действие: развертывание, проверка или что если.

    • Развертывание: развертывание в Azure и результат, включая определенные выходные данные, отображаются в области развертывания.

    • Проверка: выполняет проверку среды выполнения файла Bicep в Azure, обеспечивая правильность ресурсов, параметров и политик в фактической среде развертывания. В отличие от linter, который проверяет только синтаксические ошибки, эта проверка взаимодействует с Azure для обнаружения потенциальных проблем развертывания. Это эквивалентно команде проверки в Azure CLI и команде Test в Azure PowerShell. Рассмотрим пример.

      az deployment group validate --resource-group <resource-group-name> --template-file <template-file-path>        
      
    • What-If: выполняет анализ What-If непосредственно из панели развертывания. На панели отображаются результаты, в которых отображаются все запланированные изменения. Это выполняет ту же функцию, что и команда what-if в Azure PowerShell и Azure CLI. Рассмотрим пример.

      az deployment group what-if --resource-group <resource-group-name> --template-file <template-file-path>        
      

    Дополнительные сведения см. в следующих статьях:

Устранение неполадок

В Problems области перечислены ошибки и предупреждения в файле Bicep:

Снимок экрана: панель

Диагностика ядра Bicep предоставляет список кодов ошибок и предупреждений.

Следующие шаги

Перейдите к краткому руководству: создание файлов Bicep с помощью Visual Studio Code, чтобы узнать, как применить сведения, изложенные в этой статье.