Compartilhar via


Regra do Linter – usar a propriedade pai

Quando definido fora do recurso pai, use barras para incluir o nome pai no nome do recurso filho. Não é recomendável definir o nome completo do recurso com o nome do recurso pai. A propriedade parent pode ser usada para simplificar a sintaxe. Confira Nome completo do recurso fora do pai.

Código de regra linter

Use o seguinte valor no arquivo de configuração Bicep para personalizar as configurações de regra:

use-parent-property

Solução

O exemplo a seguir falha neste teste devido aos valores de nome para service e 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
  ]
}

Você pode corrigir o problema alterando o nome da propriedade 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'
}

Você pode corrigir o problema automaticamente selecionando Correção Rápida, conforme mostrado na captura de tela a seguir:

Captura de tela da correção rápida do uso da propriedade pai.

Próximas etapas

Para saber mais sobre o linter, confira Usar o linter do Bicep.