Condividi tramite


Regola Linter - Nessuna voce dependsOn non necessaria

Questa regola rileva quando una voce dependsOn non necessaria è stata aggiunta a una dichiarazione di risorsa o modulo.

Codice regola Linter

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

no-unnecessary-dependson

Soluzione

Per ridurre la confusione nel modello, eliminare le voci dependsOn che non sono necessarie. Bicep evince automaticamente la maggior parte delle dipendenze delle risorse, purché le espressioni modello facciano riferimento ad altre risorse tramite nomi simbolici anziché stringhe con ID o nomi hard-coded.

L'esempio seguente non supera questo test perché la voce dependsOn appServicePlan viene dedotta automaticamente da Bicep implicito nell'espressione appServicePlan.id (che fa riferimento al nome appServicePlan simbolico della risorsa) nel serverFarmId valore della proprietà.

param location string = resourceGroup().location

resource appServicePlan 'Microsoft.Web/serverfarms@2023-12-01' = {
  name: 'name'
  location: location
  sku: {
    name: 'F1'
    capacity: 1
  }
}

resource webApplication 'Microsoft.Web/sites@2023-12-01' = {
  name: 'name'
  location: location
  properties: {
    serverFarmId: appServicePlan.id
  }
  dependsOn: [
    appServicePlan
  ]
}

È possibile correggerlo rimuovendo la voce dependsOn non necessaria.

param location string = resourceGroup().location

resource appServicePlan 'Microsoft.Web/serverfarms@2023-12-01' = {
  name: 'name'
  location: location
  sku: {
    name: 'F1'
    capacity: 1
  }
}

resource webApplication 'Microsoft.Web/sites@2023-12-01' = {
  name: 'name'
  location: location
  properties: {
    serverFarmId: appServicePlan.id
  }
}

Usare Quick Fix (Correzione rapida) per rimuovere la voce dependsOn non necessaria.

Screenshot di Nessuna regola dependson linter non necessaria con correzione rapida.

Passaggi successivi

Per altre informazioni su linter, vedi Usare linter di Bicep.