Skip to content

Commit 9149f84

Browse files
committed
feat: add Backstage Software Catalog entities for platform, chart, and tenant apps
1 parent c71625c commit 9149f84

4 files changed

Lines changed: 110 additions & 0 deletions

File tree

catalog-info.yaml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
apiVersion: backstage.io/v1alpha1
2+
kind: Component
3+
metadata:
4+
name: simple-app-infra-code
5+
description: Internal Developer Platform for EKS and OpenShift
6+
annotations:
7+
github.com/project-slug: tukue/simpleAppInfraCode
8+
backstage.io/techdocs-ref: dir:.
9+
spec:
10+
type: repository
11+
lifecycle: experimental
12+
owner: platform-team
13+
system: platform
14+
providesApis:
15+
- tenant-contract
16+
dependsOn:
17+
- component:app-chart
18+
---
19+
apiVersion: backstage.io/v1alpha1
20+
kind: System
21+
metadata:
22+
name: platform
23+
description: Internal Developer Platform providing golden path, GitOps, and observability
24+
spec:
25+
owner: platform-team
26+
---
27+
apiVersion: backstage.io/v1alpha1
28+
kind: Group
29+
metadata:
30+
name: platform-team
31+
description: Platform engineering team
32+
spec:
33+
type: team
34+
profile:
35+
displayName: Platform Team
36+
children: []
37+
---
38+
apiVersion: backstage.io/v1alpha1
39+
kind: Group
40+
metadata:
41+
name: app-developers
42+
description: Application development teams
43+
spec:
44+
type: team
45+
profile:
46+
displayName: App Developers
47+
children: []
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: app-b
5+
description: Second tenant application proving contract reusability across dev/stage/prod
6+
annotations:
7+
github.com/project-slug: tukue/simpleAppInfraCode
8+
spec:
9+
type: service
10+
lifecycle: experimental
11+
owner: app-developers
12+
system: platform
13+
dependsOn:
14+
- component:app-chart
15+
providesApis:
16+
- tenant-contract
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: simple-app
5+
description: Demo tenant application deployed via the platform golden path
6+
annotations:
7+
github.com/project-slug: tukue/simpleAppInfraCode
8+
spec:
9+
type: service
10+
lifecycle: experimental
11+
owner: app-developers
12+
system: platform
13+
dependsOn:
14+
- component:app-chart
15+
providesApis:
16+
- tenant-contract
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
apiVersion: backstage.io/v1alpha1
2+
kind: Component
3+
metadata:
4+
name: app-chart
5+
description: Golden path Helm chart — the tenant contract for deploying services on the platform
6+
annotations:
7+
backstage.io/techdocs-ref: dir:.
8+
spec:
9+
type: library
10+
lifecycle: experimental
11+
owner: platform-team
12+
system: platform
13+
dependsOn:
14+
- component:simple-app-infra-code
15+
providesApis:
16+
- tenant-contract
17+
---
18+
apiVersion: backstage.io/v1alpha1
19+
kind: API
20+
metadata:
21+
name: tenant-contract
22+
description: Contract defining what app teams provide and what the platform guarantees
23+
spec:
24+
type: helm-values
25+
lifecycle: experimental
26+
owner: platform-team
27+
system: platform
28+
definition: |
29+
App Team provides: image, port, replicas, env vars, secret refs
30+
Platform guarantees: non-root, dropped capabilities, resource boundaries,
31+
network isolation, drift detection, immutable tags, cluster portability

0 commit comments

Comments
 (0)