Linter 規則 - 使用父代屬性
在父代資源外部定義時,您會使用斜線在子系資源中包括父代名稱。 不建議使用父代資源名稱設定完整資源名稱。 parent
屬性可用來簡化語法。 請參閱父代外部的完整資源名稱 (部分機器翻譯)。
Linter 規則程式碼
使用 Bicep 設定檔中的下列值來自訂規則設定:
use-parent-property
解決方案
由於 service
和 share
的名稱值,下列範例會導致此測試失敗:
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'
}
您可以選取快速修正來自動修正問題,如下列螢幕擷取畫面所示:
下一步
如需 Linter 的詳細資訊,請參閱使用 Bicep Linter。