リンター ルール - parent プロパティを使用する
親リソースの外側に子リソースを定義するとき、スラッシュを使用して、その名前に親の名前を含めます。 親リソース名を含む完全なリソース名を設定することは、推奨されていません。 parent
プロパティを使用して、構文を簡略化できます。 「親の外側の完全なリソース名」を参照してください。
リンター ルールのコード
ルール設定をカスタマイズするには、Bicep 構成ファイルで次の値を使用します。
use-parent-property
解決策
次の例では、service
と share
の name 値が原因で、このテストに不合格となります。
param location string = resourceGroup().location
resource storage 'Microsoft.Storage/storageAccounts@2023-04-01' = {
name: 'examplestorage'
location: location
kind: 'StorageV2'
sku: {
name: 'Standard_LRS'
}
}
resource service 'Microsoft.Storage/storageAccounts/fileServices@2023-04-01' = {
name: 'examplestorage/default'
dependsOn: [
storage
]
}
resource share 'Microsoft.Storage/storageAccounts/fileServices/shares@2023-04-01' = {
name: 'examplestorage/default/exampleshare'
dependsOn: [
service
]
}
この問題は、parent
プロパティを使用して修正できます。
param location string = resourceGroup().location
resource storage 'Microsoft.Storage/storageAccounts@2023-04-01' = {
name: 'examplestorage'
location: location
kind: 'StorageV2'
sku: {
name: 'Standard_LRS'
}
}
resource service 'Microsoft.Storage/storageAccounts/fileServices@2023-04-01' = {
parent: storage
name: 'default'
}
resource share 'Microsoft.Storage/storageAccounts/fileServices/shares@2023-04-01' = {
parent: service
name: 'exampleshare'
}
次のスクリーンショットに示すように、"クイック修正" を選択すれば、問題を自動的に修正できます。
次のステップ
リンターの詳細については、「Bicep リンターの使用方法」を参照してください。