Правило Linter — использование родительского свойства
При определении вне родительского ресурса используется косая черта для включения родительского имени в имя дочернего ресурса. Определение полного имени ресурса с родительским именем ресурса не рекомендуется. Свойство parent
можно использовать для упрощения синтаксиса. См . полное имя ресурса за пределами родительского элемента.
Код правила анализатора кода
Для настройки параметров правил укажите в файле конфигурации Bicep следующее значение:
use-parent-property
Решение
В следующем примере этот тест завершается ошибкой из-за значений имени и service
share
:
param location string = resourceGroup().location
resource storage 'Microsoft.Storage/storageAccounts@2023-05-01' = {
name: 'examplestorage'
location: location
kind: 'StorageV2'
sku: {
name: 'Standard_LRS'
}
}
resource service 'Microsoft.Storage/storageAccounts/fileServices@2023-05-01' = {
name: 'examplestorage/default'
dependsOn: [
storage
]
}
resource share 'Microsoft.Storage/storageAccounts/fileServices/shares@2023-05-01' = {
name: 'examplestorage/default/exampleshare'
dependsOn: [
service
]
}
Проблему можно устранить с помощью parent
свойства:
param location string = resourceGroup().location
resource storage 'Microsoft.Storage/storageAccounts@2023-05-01' = {
name: 'examplestorage'
location: location
kind: 'StorageV2'
sku: {
name: 'Standard_LRS'
}
}
resource service 'Microsoft.Storage/storageAccounts/fileServices@2023-05-01' = {
parent: storage
name: 'default'
}
resource share 'Microsoft.Storage/storageAccounts/fileServices/shares@2023-05-01' = {
parent: service
name: 'exampleshare'
}
Чтобы упростить синтаксис, воспользуйтесь кратким исправлением :
Следующие шаги
Дополнительные сведения об анализаторе кода Bicep см. в разделе Использование анализатора кода Bicep.