[Azure]ARM TemplateファイルはBOM付きのUTF-8で書くこと

超まとめ

Azure Resource Manager テンプレート(ARMテンプレート)はJSON形式で書く設定ファイルです。

このARMテンプレートファイルの記述(例えばコメントとか)に日本語を含む場合、文字エンコードはBOM付きUTF-8を使いましょう。
※俗に言うUTF-8Nです

Windowsで作業していて何も考えずにshift_jis(cp932)で保存していたりすると、正常にデプロイできないことがあります。

経緯

  • Shift_JISでいくつかテンプレートを書いてデプロイしていたら、そのうちの1つが原因不明のエラーでデプロイできなかった。
    →文字エンコードをUTF-8に変換したらデプロイできるようになった。
  • いままでデプロイしていたものもUTF-8に変換してデプロイし直したら、エラーになるものがあった。
    →UTF-8(BOM付き)に変換したらデプロイできるようになった。
  • 結論:
    UTF-8(BOM付き)なら問題発生しない。

コメントを残す