Использование анализатора кода Bicep

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

Требования для анализатора кода

Анализатор кода интегрирован в CLI Bicep и расширение Bicep для Visual Studio Code. Для его использования нужна версия 0.4 или более поздняя.

Правила по умолчанию

Для анализатора кода используется минимальный набор правил по умолчанию, взятый из тестовых случаев arm-ttk. Расширение и CLI Bicep проверяют следующие правила, для которых установлен уровень предупреждения.

Вы можете настроить то, как именно применяются правила анализатора кода. Чтобы перезаписать параметры по умолчанию, добавьте файл bicepconfig.json и примените пользовательские параметры. Дополнительные сведения о применении этих параметров см. в разделе Добавление пользовательских параметров в файл конфигурации Bicep.

Использование в Visual Studio Code

На снимке экрана ниже показан анализатор кода в Visual Studio Code:

Bicep linter usage in Visual Studio Code.

На этом снимке экрана представлена область PROBLEMS (Проблемы), где отображаются четыре ошибки, одно предупреждение и одно информационное сообщение. В информационном сообщении есть имя файла конфигурации Bicep, который сейчас используется. Эта информация отображается, только если для параметра verbose в файле конфигурации задано значение true.

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

Bicep linter usage in Visual Studio Code - show quickfix.

Щелкните эту лампочку или ссылку Quick fix (Быстрое исправление), чтобы увидеть решение:

Bicep linter usage in Visual Studio Code - show quickfix solution.

Щелкните решение, чтобы автоматически решить проблему.

Использование в Bicep CLI

На снимке экрана ниже показан анализатор кода в командной строке. Выходные данные команды lint и команды сборки показывают нарушения правил.

Bicep linter usage in command line.

Вы можете интегрировать такие проверки в свои конвейеры CI/CD. Вы можете использовать GitHub Actions, чтобы попытаться выполнить сборку Bicep. В случае возникновения ошибок конвейер завершится сбоем.

Устранение ложноположительных результатов

Иногда правило может иметь ложноположительные результаты. Например, может потребоваться включить ссылку на хранилище BLOB-объектов напрямую, не используя функцию environment(). В этом случае можно отключить предупреждение только для одной строки, а не всего документа, добавив #disable-next-line <rule name> перед строкой с предупреждением.

#disable-next-line no-hardcoded-env-urls //Direct download link to my toolset
scriptDownloadUrl: 'https://mytools.blob.core.windows.net/...'

Лучше всего добавить комментарий с объяснением того, почему правило не применяется к этой строке.

Если вы хотите отключить правило linter, можно изменить уровень правила Off на bicepconfig.json. Например, в следующем примере no-deployments-reesources правило подавляется:

{
  "analyzers": {
    "core": {
      "rules": {
        "no-deployments-resources": {
          "level": "off"
        }
      }
    }
  }
}

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