Regola Linter : usare la proprietà padre

Se definito all'esterno della risorsa padre, si usano le barre per includere il nome padre nel nome della risorsa figlio. Non è consigliabile impostare il nome completo della risorsa con il nome della risorsa padre. La parent proprietà può essere utilizzata per semplificare la sintassi. Vedere Nome completo della risorsa all'esterno dell'elemento padre.

Codice regola Linter

Usare il valore seguente nel file di configurazione Bicep per personalizzare le impostazioni delle regole:

use-parent-property

Soluzione

Nell'esempio seguente questo test ha esito negativo a causa dei valori del nome per service e 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
  ]
}

È possibile risolvere il problema usando la parent proprietà :

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'
}

È possibile risolvere automaticamente il problema selezionando Correzione rapida , come illustrato nello screenshot seguente:

Screenshot della correzione rapida dell'uso della proprietà padre.

Passaggi successivi

Per altre informazioni sull'linter, vedere Usare linter Bicep.