RHDH backstage
This commit is contained in:
@@ -965,21 +965,37 @@ ignore:
|
||||
- Check Gitea Actions tab for workflow run status and logs
|
||||
- Monitor Anthropic usage dashboard for token consumption
|
||||
|
||||
### Backstage (Developer Portal)
|
||||
### Backstage / RHDH (Developer Portal)
|
||||
|
||||
**Chart**: `backstage/backstage`
|
||||
**Version**: `2.6.3`
|
||||
**Chart**: `backstage` (RHDH — Red Hat Developer Hub)
|
||||
**Version**: `5.8.0`
|
||||
**Namespace**: `backstage`
|
||||
**Helm Repo**: `https://backstage.github.io/charts`
|
||||
**Helm Repo**: `https://redhat-developer.github.io/rhdh-chart`
|
||||
**Image**: `quay.io/rhdh-community/rhdh:next`
|
||||
|
||||
**Purpose**: Internal developer portal where teams register and broadcast themselves, their applications, APIs, and systems. Provides a unified catalog, templates, and documentation hub.
|
||||
|
||||
**Why RHDH over vanilla Backstage**: Ships 27+ plugins pre-bundled (ArgoCD, Kubernetes, Keycloak, GitHub, GitLab, Jira, SonarQube, Tekton, Jenkins, Quay, and more). Supports dynamic plugin installation at runtime — no image rebuilds needed.
|
||||
|
||||
**Configuration** (`infra/values/base/backstage-values.yaml`):
|
||||
- PostgreSQL subchart enabled for persistence (standalone, 2Gi)
|
||||
- OpenShift Route disabled (`route.enabled: false`) — uses Traefik ingress instead
|
||||
- PostgreSQL subchart enabled for persistence (2Gi)
|
||||
- SecurityContext configured for vanilla Kubernetes (non-OpenShift)
|
||||
- Traefik ingress with `websecure` entrypoint
|
||||
- App title: "Forte Developer Portal"
|
||||
- Dynamic plugins: loads `dynamic-plugins.default.yaml` (all 27+ bundled plugins)
|
||||
- Catalog rules: Component, System, API, Resource, Location, Template, Group, User, Domain
|
||||
|
||||
**Dynamic Plugins**:
|
||||
Add plugins at runtime via `global.dynamic.plugins` in values — no image rebuild:
|
||||
```yaml
|
||||
global:
|
||||
dynamic:
|
||||
plugins:
|
||||
- package: "@scope/my-plugin@1.0.0"
|
||||
integrity: "sha512-..."
|
||||
```
|
||||
|
||||
**Catalog Registration**:
|
||||
Teams register services by adding a `catalog-info.yaml` to their repo root:
|
||||
```yaml
|
||||
@@ -996,19 +1012,22 @@ spec:
|
||||
owner: team-name
|
||||
```
|
||||
|
||||
Then add the location to `backstage-values.yaml` under `appConfig.catalog.locations`.
|
||||
Then add the location to `backstage-values.yaml` under `upstream.backstage.appConfig.catalog.locations`.
|
||||
|
||||
**Per-cluster Configuration**:
|
||||
To set the ingress hostname, create a per-cluster overlay values file (e.g., `infra/values/upc-dev/backstage-values.yaml`) with:
|
||||
```yaml
|
||||
backstage:
|
||||
appConfig:
|
||||
app:
|
||||
baseUrl: https://backstage.example.com
|
||||
backend:
|
||||
baseUrl: https://backstage.example.com
|
||||
ingress:
|
||||
global:
|
||||
host: backstage.example.com
|
||||
upstream:
|
||||
backstage:
|
||||
appConfig:
|
||||
app:
|
||||
baseUrl: https://backstage.example.com
|
||||
backend:
|
||||
baseUrl: https://backstage.example.com
|
||||
ingress:
|
||||
host: backstage.example.com
|
||||
```
|
||||
|
||||
### Keycloak Client Registrar
|
||||
|
||||
Reference in New Issue
Block a user