Sdílet prostřednictvím


Pravidlo Linteru – žádné nepotřebné položky dependsOn

Toto pravidlo zjistí, kdy byla do deklarace prostředku nebo modulu přidána nepotřebná položka dependsOn.

Kód pravidla Linteru

K přizpůsobení nastavení pravidel použijte v konfiguračním souboru Bicep následující hodnotu:

no-unnecessary-dependson

Řešení

Abyste snížili nejasnost v šabloně, odstraňte všechny položky dependsOn, které nejsou potřeba. Bicep automaticky odvodí většinu závislostí prostředků, pokud výrazy šablon odkazují na jiné prostředky prostřednictvím symbolických názvů, nikoli řetězců s pevně zakódovanými ID nebo názvy.

Následující příklad tento test selže, protože položka appServicePlan dependsOn je automaticky odvozena bicep implicitně výrazem appServicePlan.id (který odkazuje na symbolický název appServicePlanprostředku) v serverFarmId hodnotě vlastnosti.

param location string = resourceGroup().location

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

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

Můžete ho vyřešit odebráním nepotřebné položky dependsOn.

param location string = resourceGroup().location

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

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

Pomocí rychlé opravy odeberte nepotřebnou položku dependsOn.

Snímek obrazovky s pravidlem linter bez zbytečného závislosti s rychlou opravou

Další kroky

Další informace o linteru naleznete v tématu Použití linter Bicep.