Partager via


Règle linter - aucune entrée dependsOn inutile

Cette règle recherche quand une entrée dependsOn inutile a été ajoutée à une déclaration de ressource ou de module.

Code de règle de linter

Utilisez la valeur suivante dans le fichier config Bicep pour personnaliser les paramètres de règle :

no-unnecessary-dependson

Solution

Pour éviter toute confusion dans votre modèle, supprimez toutes les entrées dependsOn qui ne sont pas nécessaires. Bicep infère automatiquement la plupart des dépendances de ressources tant que les expressions de modèle font référence à d’autres ressources via des noms symboliques plutôt que des chaînes avec des ID ou des noms codés en dur.

L’exemple suivant fait échouer ce test, car l’entrée dependsOn appServicePlan est automatiquement inférée par le Bicep sous-entendu de l’expression appServicePlan.id (qui fait référence au nom symbolique de la ressource appServicePlan) dans la valeur serverFarmId de la propriété.

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

Vous pouvez résoudre ce problème en supprimant l’entrée dependsOn inutile.

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

Utilisez le correctif rapide pour supprimer l’entrée dependsOn inutile.

Capture d’écran de règle de linter No unnecessary dependson avec un correctif rapide.

Étapes suivantes

Pour plus d’informations sur le linter, consultez Utiliser le linter Bicep.