Backstage
Integrate Knowledge Tree discovered resources into Backstage as catalog entities with full dependency tracking.
Overview
The Backstage integration publishes discovered infrastructure resources into the Backstage software catalog. Each resource becomes a catalog entity with typed relationships, health status, and metadata links back to the Knowledge Tree graph. The integration also provides a custom Backstage plugin for browsing the knowledge graph directly within the Backstage UI.
Catalog entities
Knowledge Tree resources are mapped to Backstage catalog entities using the standard Backstage entity model:
| Knowledge Tree field | Backstage entity field |
|---|---|
| Resource ID | metadata.name |
| Resource type | spec.type |
| Provider | spec.provider (custom annotation) |
| Tags | metadata.labels |
| Scope | spec.system or spec.owner |
| Relationships | spec.dependsOn, spec.dependencyOf |
Dependency graphs
The Backstage plugin adds a Knowledge Tree tab to each entity detail page, showing:
- Full dependency graph -- interactive visualization of the resource and its dependencies
- Blast radius -- which other resources would be affected if this resource fails
- Change history -- recent changes detected by Knowledge Tree
- Health status -- current health score and any active findings
- Related runbooks -- operational runbooks for the resource type
Scaffolding
Knowledge Tree resources can be used as templates in Backstage scaffolder. When creating a new service in Backstage, the scaffolder can automatically:
- Reserve cloud resources based on existing infrastructure patterns
- Apply standard tagging and naming conventions from Knowledge Tree policies
- Register the new service's infrastructure in the knowledge graph
- Generate documentation templates with known dependencies
Configuration
# app-config.yaml (Backstage)
catalog:
providers:
knowledgeTree:
module: ./plugins/kt-catalog
baseUrl: http://kt-server:8080
apiKey: ${KT_API_KEY}
schedule:
frequency: { minutes: 30 }
timeout: { minutes: 5 }