Reguła lintera — brak niepotrzebnych wpisów dependsOn
Ta reguła znajduje się, gdy do deklaracji zasobu lub modułu dodano niepotrzebny wpis dependsOn.
Kod reguły Linter
Użyj następującej wartości w pliku konfiguracji Bicep, aby dostosować ustawienia reguły:
no-unnecessary-dependson
Rozwiązanie
Aby zmniejszyć zamieszanie w szablonie, usuń wszystkie wpisy dependsOn, które nie są niezbędne. Bicep automatycznie wywnioskuje większość zależności zasobów, o ile wyrażenia szablonu odwołują się do innych zasobów za pomocą nazw symbolicznych, a nie ciągów z zakodowanymi identyfikatorami lub nazwami.
Poniższy przykład kończy się niepowodzeniem tego testu, ponieważ wpis appServicePlan
dependsOn jest automatycznie wnioskowany przez wyrażenie ( appServicePlan.id
które odwołuje się do nazwy appServicePlan
symbolicznej zasobu ) w serverFarmId
wartości właściwości.
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
]
}
Można go naprawić, usuwając niepotrzebny wpis dependsOn:
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
}
}
Użyj szybkiej poprawki , aby usunąć niepotrzebny wpis dependsOn:
Następne kroki
Aby uzyskać więcej informacji na temat lintera, zobacz Use Bicep linter (Używanie lintera Bicep).