Linter 规则 - 使用父属性
在父资源外部定义时,请使用斜杠将父名称包含在子资源的名称中。 不建议使用父资源名称设置完整资源名称。 属性 parent
可用于简化语法。 请参阅父级外部的完整资源名称。
Linter 规则代码
请在 Bicep 配置文件中使用以下值自定义规则设置:
use-parent-property
解决方案
由于 service
和 share
的名称值,以下示例未通过此测试:
param location string = resourceGroup().location
resource storage 'Microsoft.Storage/storageAccounts@2021-02-01' = {
name: 'examplestorage'
location: location
kind: 'StorageV2'
sku: {
name: 'Standard_LRS'
}
}
resource service 'Microsoft.Storage/storageAccounts/fileServices@2021-02-01' = {
name: 'examplestorage/default'
dependsOn: [
storage
]
}
resource share 'Microsoft.Storage/storageAccounts/fileServices/shares@2021-02-01' = {
name: 'examplestorage/default/exampleshare'
dependsOn: [
service
]
}
可通过使用 parent
属性来修复该问题:
param location string = resourceGroup().location
resource storage 'Microsoft.Storage/storageAccounts@2021-02-01' = {
name: 'examplestorage'
location: location
kind: 'StorageV2'
sku: {
name: 'Standard_LRS'
}
}
resource service 'Microsoft.Storage/storageAccounts/fileServices@2021-02-01' = {
parent: storage
name: 'default'
}
resource share 'Microsoft.Storage/storageAccounts/fileServices/shares@2021-02-01' = {
parent: service
name: 'exampleshare'
}
可通过选择“快速修复”来自动修复该问题,如以下屏幕截图所示:
后续步骤
有关 Linter 的详细信息,请参阅使用 Bicep Linter。