Add catalog model layers with JSON Schema based kind declarations

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
This commit is contained in:
Fredrik Adelöw
2026-03-29 22:16:59 +02:00
parent 774e641e45
commit e5fcfcb2cb
130 changed files with 10224 additions and 30 deletions
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend': minor
---
Added `ModelProcessor` that validates catalog entities against the compiled catalog model schemas, and integrated it into the `CatalogBuilder` and `CatalogPlugin`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/catalog-model': minor
---
Added a new catalog model layer system that allows plugins to declare and extend catalog entity kinds, annotations, labels, tags, and relations using JSON Schema. The new `createCatalogModelLayer` API provides a builder for composing model definitions, and a `compileCatalogModel` function validates and merges them into a unified model. Built-in entity kinds now include model layer definitions.
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-node': minor
---
Added `provideStaticCatalogModel` that helps provide a static catalog model at startup.
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-backend': patch
---
Integrated the Template kind model layer with the catalog model registry service.
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-common': minor
---
Added a Template kind model layer with JSON Schema definition, serving as an example of how plugins can declare their own catalog entity kinds.