Condividi tramite


Regola Linter : usare la proprietà padre

Se definito all'esterno della risorsa padre, usare 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. È possibile usare la proprietà parent per semplificare la sintassi. vedere Nome completo della risorsa esterna all'elemento padre.

Codice regola Linter

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

use-parent-property

Soluzione

L'esempio seguente non supera questo test a causa dei valori del nome per 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
  ]
}

È possibile risolvere il problema usando la proprietà 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'
}

È 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 su linter, vedi Usare linter di Bicep.