Skip to content

Commit a2eb25d

Browse files
loujaybeeona-agent
andcommitted
Add Backstage catalog files for all components
Add backstage.yml files to enable Backstage integration: - System definition at root level - Component definitions for catalog service, frontend, and database - API definition for catalog REST endpoints - Proper component relationships and dependencies Co-authored-by: Ona <no-reply@ona.com>
1 parent c68827a commit a2eb25d

File tree

4 files changed

+110
-0
lines changed

4 files changed

+110
-0
lines changed

backend/catalog/backstage.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
apiVersion: backstage.io/v1alpha1
2+
kind: Component
3+
metadata:
4+
name: catalog-service
5+
description: Catalog service for Gitpod Flix
6+
tags:
7+
- nodejs
8+
- express
9+
- typescript
10+
- api
11+
annotations:
12+
github.com/project-slug: gitpod-samples/gitpodflix-demo
13+
spec:
14+
type: service
15+
lifecycle: production
16+
owner: team-platform
17+
system: gitpodflix
18+
providesApis:
19+
- catalog-api
20+
dependsOn:
21+
- component:database-service
22+
---
23+
apiVersion: backstage.io/v1alpha1
24+
kind: API
25+
metadata:
26+
name: catalog-api
27+
description: REST API for movie catalog operations
28+
spec:
29+
type: openapi
30+
lifecycle: production
31+
owner: team-platform
32+
system: gitpodflix
33+
definition: |
34+
openapi: 3.0.0
35+
info:
36+
title: Catalog API
37+
version: 1.0.0
38+
paths:
39+
/api/movies:
40+
get:
41+
summary: Get all movies
42+
/api/search:
43+
get:
44+
summary: Search movies with filters
45+
/api/suggestions:
46+
get:
47+
summary: Get search suggestions
48+
/health:
49+
get:
50+
summary: Service health check

backstage.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: backstage.io/v1alpha1
2+
kind: System
3+
metadata:
4+
name: gitpodflix
5+
description: Modern streaming platform demo showcasing full-stack development in Gitpod
6+
tags:
7+
- streaming
8+
- demo
9+
- full-stack
10+
annotations:
11+
github.com/project-slug: gitpod-samples/gitpodflix-demo
12+
spec:
13+
owner: team-platform
14+
domain: media
15+
---
16+
apiVersion: backstage.io/v1alpha1
17+
kind: Domain
18+
metadata:
19+
name: media
20+
description: Media and streaming services domain
21+
spec:
22+
owner: team-platform

database/backstage.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
apiVersion: backstage.io/v1alpha1
2+
kind: Component
3+
metadata:
4+
name: database-service
5+
description: PostgreSQL database with full-text search for movie catalog
6+
tags:
7+
- postgresql
8+
- database
9+
- docker
10+
annotations:
11+
github.com/project-slug: gitpod-samples/gitpodflix-demo
12+
spec:
13+
type: database
14+
lifecycle: production
15+
owner: team-platform
16+
system: gitpodflix

frontend/backstage.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: backstage.io/v1alpha1
2+
kind: Component
3+
metadata:
4+
name: frontend
5+
description: React frontend application for Gitpod Flix streaming platform
6+
tags:
7+
- react
8+
- typescript
9+
- vite
10+
- tailwindcss
11+
- frontend
12+
annotations:
13+
github.com/project-slug: gitpod-samples/gitpodflix-demo
14+
spec:
15+
type: website
16+
lifecycle: production
17+
owner: team-platform
18+
system: gitpodflix
19+
consumesApis:
20+
- catalog-api
21+
dependsOn:
22+
- component:catalog-service

0 commit comments

Comments
 (0)