0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WARNING: The configuration value of bicep.use_binary_from_path has been set to 'false'. ってなに?

Posted at

二種類の Bicep: Azure CLI 内蔵 vs install の違いと使い分け

背景

Azure の IaC(Infrastructure as Code)で Bicep を使って デプロイをした際に出た WARNING
なんだこれ?って思って調べた記録
実は Bicep には二種類あるって話

  1. "Azure CLI に内蔵された Bicep"
  2. "ローカルに install した bicep バイナリ"

という二つの運用パターンが

TL;DR

  • 簡単に始めたい / CI 環境で az が既に使われている → Azure CLI 内蔵で十分
  • 特定バージョンを固定したい / 詳細なビルドや新機能を試したいaz bicep install してローカルバイナリを使う
  • bicep.use_binary_from_path 設定でどちらを優先するか制御可能。警告は情報表示で通常は無視して OK

概要: CLI 内蔵 と install

  • CLI 内蔵: az(Azure CLI)が bicep のビルド/デプロイ機能を内蔵していて、追加インストール無しで .bicep ファイルを直接 az deployment に渡せる。
  • install: ローカルに bicep バイナリをインストールして利用する。bicep コマンドで bicep buildbicep --version が直接使える。

比較表

項目 CLI 内蔵 install (ローカル bicep)
セットアップコスト
(az があれば OK)

az bicep install かバイナリ配置が必要)
バージョン管理 az に依存 明示的に管理可能
(プロジェクトで固定可)
新機能の利用 az のバージョン次第 すぐに利用可能
(バイナリをアップデートすれば OK)
ローカルの詳細ビルド確認
(az が出力する情報に依存)

bicep build で細かく確認可)
CI の再現性 az のバージョン管理が必要 runner にインストールして再現性確保可
企業ネットワークでの配布 良い
(az 経由が楽)
配布先でのバイナリ承認が必要な場合あり

実際の使い分け方

  • ローカルでちょっと試す、もしくは deploy.ps1 のように az を経由してデプロイする既存ワークフローがある場合はCLI 内蔵で十分。
  • プロダクション CI でバージョン固定して再現性を確保したい場合はinstallして bicep --version を明示的に管理する方がベター。
  • 詳細なデバッグや bicep の新機能(構文やモジュール関連)を試したい時はinstallを選ぶ。

公式インストール手順(抜粋)

Azure CLI 経由(推奨)

az bicep install
az bicep upgrade # 最新化
az bicep uninstall # 削除

GitHub Releases から直接ダウンロード

公式リリースページ:

例(Windows PowerShell):

Invoke-WebRequest -Uri "https://github.com/Azure/bicep/releases/latest/download/bicep-win-x64.exe" -OutFile bicep.exe
Move-Item bicep.exe 'C:\Tools\bicep.exe' # PATH上の場所へ移動

bicep.use_binary_from_path とは?

  • 設定内容
    • az config set bicep.use_binary_from_path=true/false
  • 意味:
    • true のときは PATH にある bicep バイナリを優先して使う。
    • false のときは Azure CLI にバンドルされた Bicep を使う。
  • 警告:
    • WARNING: The configuration value of bicep.use_binary_from_path has been set to 'false'.
      • 情報表示程度の意味
  • 警告を抑えるコマンド:
    • az config unset bicep.use_binary_from_path

トラブルシュート・ヒント

  • az が古いと az bicep サブコマンドが使えない場合がある
    • az upgrade
  • bicep build がエラーを出す場合は、生成される JSON を az deployment に直接渡して原因を切り分けると良い

まとめ

  • 普段使いは Azure CLI 内蔵で問題なし。詳細やバージョン固定が必要な場合は install。
  • 警告は情報メッセージなので慌てず対応。警告が気になるなら az config unset bicep.use_binary_from_path を追加するか、スクリプトで自動クリアする。

参考リンク

  • Bicep install (Microsoft Learn):

  • Bicep overview:

  • Bicep GitHub Releases:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?