Linterregel – inga onödiga dependsOn-poster
Den här regeln hittar när en onödig dependsOn-post har lagts till i en resurs- eller moduldeklaration.
Linterregelkod
Använd följande värde i Bicep-konfigurationsfilen för att anpassa regelinställningar:
no-unnecessary-dependson
Lösning
För att minska förvirringen i mallen tar du bort eventuella dependsOn-poster som inte behövs. Bicep härleder automatiskt de flesta resursberoenden så länge malluttryck refererar till andra resurser via symboliska namn i stället för strängar med hårdkodade ID:er eller namn.
Följande exempel misslyckas med det här testet eftersom posten appServicePlan
dependsOn automatiskt härleds av Bicep underförstått av uttrycket appServicePlan.id
(som refererar till resursens serverFarmId
symboliska namn appServicePlan
) i egenskapens värde.
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
]
}
Du kan åtgärda det genom att ta bort den onödiga dependsOn-posten:
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
}
}
Använd Snabbkorrigering för att ta bort den onödiga dependsOn-posten:
Nästa steg
Mer information om linter finns i Använda Bicep-linter.