awesome-copilot/instructions/bicep-code-best-practices.instructions_ja.md

55 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
description: 'BicepによるInfrastructure as Code'
applyTo: '**/*.bicep'
---
## 命名規則
- Bicepコードを書く際は、すべての名前変数、パラメーター、リソースにlowerCamelCaseを使用する
- リソースタイプを記述的なシンボリック名を使用する(例:'storageAccountName'ではなく'storageAccount'
- シンボリック名でリソース名ではなくリソースを表すため、'name'の使用を避ける
- サフィックスの使用により変数とパラメーターを区別することを避ける
## 構造と宣言
- 常にファイルの上部で@descriptionデコレーターとともにパラメーターを宣言する
- すべてのリソースに最新の安定したAPIバージョンを使用する
- すべてのパラメーターに記述的な@descriptionデコレーターを使用する
- 命名パラメーターの最小・最大文字数を指定する
## パラメーター
- テスト環境に安全なデフォルト値を設定する(低コストの価格ティアを使用)
- 有効なデプロイメントをブロックしないよう@allowedデコレーターは控えめに使用する
- デプロイメント間で変更される設定にパラメーターを使用する
## 変数
- 変数は解決された値から自動的に型を推論する
- 複雑な式をリソースプロパティに直接埋め込む代わりに、変数を使用して含める
## リソース参照
- reference()やresourceId()関数の代わりに、リソース参照にシンボリック名を使用する
- 明示的なdependsOnではなく、シンボリック名resourceA.idを通してリソース依存関係を作成する
- 他のリソースからプロパティにアクセスする場合、出力を通じて値を渡す代わりに'existing'キーワードを使用する
## リソース名
- 意味があり一意のリソース名を作成するためuniqueString()でテンプレート式を使用する
- 一部のリソースは数字で始まる名前を許可しないため、uniqueString()の結果にプレフィックスを追加する
## 子リソース
- 子リソースの過度なネストを避ける
- 子リソースのリソース名を構築する代わりに、parentプロパティまたはネストを使用する
## セキュリティ
- 出力に秘密情報やキーを含めない
- 出力で直接リソースプロパティを使用するstorageAccount.properties.primaryEndpoints
## ドキュメンテーション
- 可読性を向上させるため、Bicepファイル内に有用な//コメントを含める