Migrate all repos into monorepo context folders

Bahn: aisupport, Analyse-O2C-C2S, awesome-bahn-mcp-servers, beam-mcp,
      Confluence_Bot, db-planet-mcp-server, O2C-Harness, project-audit,
      Projekt-KIQ-HP, teamlandkarte-mcp
Dhive: Jury-Voting
Privat: CV, NoteGraph (NOTE: NoteGraph needs complete redo after consolidation)
Shared: AI-Orchestrator, OrgMyLife, power_skills_and_more
Shared/references: symphony (read-only)

Bahn repos remain available as independent remotes - this monorepo
pulls them in via subtree, the originals are untouched.
This commit is contained in:
2026-06-30 20:39:52 +02:00
parent 2f2b295531
commit a5f8fb49ab
1717 changed files with 447332 additions and 0 deletions
@@ -0,0 +1,100 @@
---
name: "db-dxp-platform"
displayName: "DB DXP Platform Guide"
description: "Nachschlagewerk zum DB Developer Experience Platform (DXP) Ökosystem: pipeship, CDaaS GitLab Runner, Developer Portal (Tenants, GitOps/Flux, Crossplane), Compliance Suite und DBCS/Kubernetes-Integration. Erklärt, was die Bausteine sind und wie sie zusammenspielen."
keywords: ["dxp", "developer portal", "pipeship", "cdaas", "compliance suite", "dbcs", "backstage", "crossplane", "flux gitops", "tenant"]
author: "einfachbahn-lab"
---
# DB DXP Platform Guide
## Overview
Diese Knowledge-Base-Power erklärt das Ökosystem der **Developer Experience Platform (DXP)**
der DB Systel (Teil von *build IT*). Sie beantwortet Fragen wie „Was ist pipeship/CDaaS?",
„Wofür brauche ich einen Tenant?", „Wie hängen Developer Portal, GitOps und Crossplane
zusammen?". Für die konkrete Repo-Initialisierung mit pipeship siehe die Power
**DB pipeship Onboarding**.
## Die Bausteine
| Produkt | Zweck |
|---------|-------|
| **pipeship** | Pipeline-as-a-Service: fertige, DB-konforme GitLab-CI/CD-Pipeline-Module (per `include` aus Artifactory) |
| **CDaaS** | Continuous-Delivery-as-a-Service: gehärtete GitLab Runner (Shared, Base/Multi-Tenant, selfhosted für AWS/k8s/OpenShift) |
| **Developer Portal** | Self-Service-Oberfläche (Backstage) für Tenants, Templates, Integrationen, Status, Compliance |
| **Compliance Suite** | Scannt Repos auf Secrets, Schwachstellen, Lizenzen; erstellt SBOMs |
| **DBCS** | DB Container Services: OpenShift-Cluster + KAS (Kubernetes-as-a-Service) |
Gemeinsame Tool-Basis: **GitLab, Artifactory, CDaaS, OpenShift (DBCS)**.
## Zentrale URLs
- Developer Portal: https://db.de/dxp · https://dp.dxc.comp.db.de
- pipeship: https://db.de/pipeship
- CDaaS: https://db.de/cdaas
- DBCS: https://db.de/dbcs
- Compliance Findings: https://dp.dxc.comp.db.de/compliance/repositories
- Kubernetes-UI Headlamp: https://headlamp.dxc.comp.db.de
- GitLab: https://git.tech.rz.db.de · Artifactory: https://bahnhub.tech.rz.db.de
- Digitalshop: https://dbdigitalshop.service-now.com/digitalshop
## Kernkonzepte
### DXP Mandant (Tenant)
Logische Einheit im Developer Portal, die alle Ressourcen einer **Anwendung** bündelt
(nicht teamorientiert). Verwaltet Rollen, Kostenstellen, Integrationen zentral; Repos erben
die Konfiguration. Jeder Tenant erhält den K8s-Namespace `p-{tenant-name}-tenant` mit
AGE-Key, Metadata/Environment-Ressourcen, ServiceAccount/RoleBinding und Crossplane-XRs.
Bestellung einmalig kostenfrei im Digitalshop (kostenpflichtig nur deployte Ressourcen).
### Provisionierung: Crossplane + FluxCD (GitOps)
- Zielzustand liegt als YAML im **GitOps-Repo** (`tenant-information`).
- **Flux** reconciled asynchron (kein direkter Effekt beim Push wie bei Pipelines).
- **Crossplane** provisioniert die Ressourcen (DBMC-Datenbanken, DBCS-Namespaces, Artifactory).
- **Software-Templates** (Backstage Scaffolder) scaffolden komplette App-Repos inkl.
pipeship-Pipeline, K8s-Namespace, DB und CDaaS-Runner.
```mermaid
flowchart TB
DP[Developer Portal<br/>Backstage] -->|Tenant + Templates| GR[GitOps-Repo<br/>tenant-information]
GR -->|Flux reconcile| CP[Crossplane]
CP --> NS[K8s-Namespace DBCS]
CP --> DB[(DBMC-Datenbank)]
CP --> AF[Artifactory-Registries]
```
### Rollen (Least Privilege)
`managers` (fachlich, entscheiden über Zugriff/Metadata), `owners` (technisch, Integrationen),
`developers` (i. d. R. Lese-, je Integration Schreibrechte), `readers` (nur einsehen).
Pro Rolle wird automatisch eine **ACAT-Gruppe im BKU AD** erzeugt. Besteller wird Manager.
### CDaaS Runner-Varianten
- **Shared Agent**: geteilte GitLab Shared Runner (Fair-Use, nur kleine Pipelines), Tag `cdaas-shared-agent`.
- **Base Runner (Beta)**: zentral, mandantenfähig, Pay-per-Use; Tags z. B. `build-base-runner`, `prod-base-runner`. Sicherheit über **Cred&Gator** (Berechtigung an Pipeline gebunden, nicht an Runner).
- **Selfhosted Agents**: Helm (k8s/OpenShift) oder CDK-Library (AWS), im eigenen Namespace/Account.
### Compliance Suite (Scanner)
- **Secrets (Betterleaks)**, **Dependencies (Syft+Grype)**, **DB Compliance** (Projekteinstellungen, README/LICENSE/scm-info.yaml), **Licenses (Grant)**.
- Wöchentliche Scans (Di/Do/Sa 18:00), Dependency-Checks alle 12 h. SBOM bei jedem Scan.
- Basisscans kostenlos; Ergebnisse im Developer Portal.
### DBCS/Kubernetes-Integration
- Namespaces (OpenShift „Projects") werden als `Project`-Ressource (`kas.dp.db.de/v1alpha1`) im GitOps-Repo beschrieben.
- `pipeshipSupport: true` legt automatisch Secrets an (`artifactory-stage/-read/-release`, `docker-pull-secret`, `gitlab-user`/`gitlab-test-user`).
- **OpenShift unterstützt keine Wildcards** in docker-pull-secrets → Registries explizit in `customDockerRepos` deklarieren.
- Cluster-Inspektion für Advanced User über **Headlamp** (SSO) oder das Kubernetes-Plugin im Portal.
## Häufige Fragen
- **„pipeship oder CDaaS?"** — pipeship liefert die Pipeline-Logik (Jobs/Module), CDaaS die Runner, auf denen sie läuft. pipeship baut auf CDaaS auf.
- **„Brauche ich einen Tenant?"** — Für GitOps-Provisionierung (DBMC/DBCS) und pipeship-Onboarding ja. Nur um Compliance-Findings zu sehen: nein.
- **„Wo liegt was?"** — Grundkonfiguration im Portal-UI; Infrastruktur-YAML im GitOps-Repo; Schnellstart über Software-Templates.
## Best Practices
- Updates zeitnah (Empfehlung ≤ 14 Tage), automatisiert via **Renovate** → bleibt compliant.
- Gruppennamen GitLab = Artifactory-Team-Name, nur Kleinbuchstaben/Zahlen.
- Vor `pipeshipSupport: true` vorhandene Secrets (`pipeship-secrets`, age/GPG-Keys) sichern — werden überschrieben.
## Weiterführend
Vollständige Wissensbasis im Repo `einfachbahn-lab/doku/deployment-doku`, Datei
`docs/08-dxp-plattform.md`. Doku-Quellen (DB-Login nötig): `git.tech.rz.db.de/pipeship/docs/docs-as-code`,
`.../devex-core/buildit-docu`, `.../cdaas/documentation`.