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


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

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

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

Анализатор кода интегрирован в CLI Bicep и расширение Bicep для Visual Studio Code. Чтобы использовать его, необходимо использовать Bicep CLI версии 0.4 или более поздней.

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

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

Правило Linter Уровень по умолчанию
adminusername-не-должен-быть-дословным предупреждение
артефакты-параметры предупреждение
decompiler-cleanup предупреждение
явные значения для loc-params выключено
max-asserts ошибка
max-outputs ошибка
max-params ошибка
max-resources ошибка
макс-переменные ошибка
вложенный параметр deployment-template-scoping ошибка
без конфликтующих метаданных предупреждение
нет-ресурсов-развертываний предупреждение
no-explicit-any (избегать явного использования 'any') предупреждение
no-hardcoded-env-urls предупреждение
нет жестко заданного местоположения выключено
no-loc-expr-outside-params выключено
нет ненужных зависимостей предупреждение
неиспользуемые существующие ресурсы предупреждение
no-unused-import предупреждение
no-unused-params предупреждение
no-unused-vars предупреждение
выходы-не-должны-содержать-секреты предупреждение
предпочитать интерполяцию предупреждение
prefer-unquoted-property-name предупреждение
protect-commandtoexecute-secret предупреждение
стандартное значение защищенного параметра предупреждение
secure-params-in-nested-deploy предупреждение
secure-secret-in-params предупреждение
упрощение интерполяции предупреждение
упрощение "json-null" предупреждение
use-parent-property предупреждение
используйте-новые-версии-api выключено
используйте-новую-версию-az-powershell предупреждение
используйте-новейшие-версии-модулей выключено
use-resource-id-functions выключено
использовать ссылку на символ ресурса предупреждение
использование безопасного доступа предупреждение
используйте-безопасное-значение-для-безопасного-ввода предупреждение
идентификаторы ресурсов use-stable-resource-identifiers предупреждение
use-stable-vm-image (использовать стабильное изображение ВМ) предупреждение
что-если-блокировка выключено

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

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

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

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

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

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

Использование анализатора кода Bicep в Visual Studio Code — быстрое исправление.

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

Использование анализатора кода Bicep в Visual Studio Code — быстрое решение.

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

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

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

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

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

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

Иногда правило имеет ложные срабатывания. Например, может потребоваться включить ссылку на хранилище BLOB-объектов напрямую, не используя функцию environment().

Вы можете отключить правила Bicep linter с помощью disable-next-line и disable-diagnostics. См. директивы. Если вы хотите отключить правило linter, измените уровень правила Off на bicepconfig.json. В следующем примере правило no-deployments-resources отключается.

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

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