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:
@@ -0,0 +1,64 @@
|
||||
# Repo-Typen — Setup-Matrix (Code / Doku / Architektur / Konzept)
|
||||
|
||||
Die **Basis-Compliance** gilt laut DB-Vorgabe für **alle** Repo-Typen. Pipeline-/
|
||||
Runtime-Bausteine kommen je nach Typ hinzu. Diese Typisierung ist eine Empfehlung;
|
||||
die DB-Doku kennt formal nur „Code-Repos" (mit Pipeline) und „Doku-/Pages-Repos".
|
||||
|
||||
## Pflicht-Basis für JEDES Repo
|
||||
Prüft die Compliance Suite unabhängig vom Typ:
|
||||
- `scm-info.yaml` (`.yaml`, schema-valide) → Template `init-app-general`
|
||||
- `README.md`, `LICENSE`
|
||||
- Protected default branch (repräsentiert prod)
|
||||
- Korrekte Sichtbarkeit (visibility) gemäß Schutzbedarf
|
||||
- Secret-Scan (Betterleaks) — keine Klartext-Secrets
|
||||
- Dependency-/Lizenz-Scan (Syft+Grype / Grant), SBOM
|
||||
|
||||
## Vergleichsmatrix
|
||||
|
||||
| Baustein | Code | Doku | Architektur | Konzept |
|
||||
|----------|:---:|:---:|:---:|:---:|
|
||||
| scm-info / README / LICENSE | ✅ | ✅ | ✅ | ✅ |
|
||||
| Protected branch + tags (`*.*`) | ✅ | ✅ (branch) | ✅ (branch) | ✅ (branch) |
|
||||
| Compliance-Suite-Scans | ✅ | ✅ | ✅ | ✅ |
|
||||
| pipeship-Pipeline | ✅ `deploy_k8s_generic`/`release_oci_image` | ✅ `deploy_pages_generic` | ➖/✅ wenn publiziert | ➖ |
|
||||
| CDaaS Runner | ✅ eigener/Base | ✅ `cdaas-shared-agent` | ✅ shared | ➖ |
|
||||
| Kubernetes-Namespace (DBCS) | ✅ | ➖ | ➖ | ➖ |
|
||||
| Container-Build + Trivy/AquaSec | ✅ | ➖ | ➖ | ➖ |
|
||||
| CI/CD-Secrets (age/SOPS/KMS) | ✅ falls nötig | ➖ | ➖ | ➖ |
|
||||
| Container-Annotations + read-only ctx | ✅ | ➖ | ➖ | ➖ |
|
||||
| SonarQube (optional) | ✅ | ➖ | ➖ | ➖ |
|
||||
| Renovate | ✅ | ✅ | ✅ | ➖ |
|
||||
| Linkchecker | ➖ | ✅ | ✅ | ➖ |
|
||||
|
||||
Legende: ✅ empfohlen/nötig · ➖ i. d. R. nicht nötig
|
||||
|
||||
## Pro Typ konkret
|
||||
|
||||
### Code-Repo (Anwendung/Service)
|
||||
Vollständige CI/CD bis Prod, K8s, Container-Security. → vollständige Anleitung im POWER.md
|
||||
(`deploy_k8s_generic`, K8s-Namespace, CI/CD-Secrets, Trivy, Annotations, Renovate, optional SonarQube).
|
||||
|
||||
### Doku-Repo (docs-as-code)
|
||||
Markdown/Static-Site auf GitLab Pages: Produkt **`deploy_pages_generic`** mit eigenem
|
||||
`build_website`-Job (Hugo/MkDocs/Docusaurus), Tag `cdaas-shared-agent`, **Linkchecker** inklusive,
|
||||
Renovate. **Kein** K8s/Container/Trivy/Secrets.
|
||||
```yaml
|
||||
build_website:
|
||||
image: docker-hub-remote.bahnhub.tech.rz.db.de/monachus/hugo@sha256:...
|
||||
variables:
|
||||
HUGO_BASEURL: "${BW_ENV_URL}"
|
||||
script:
|
||||
- hugo # Output muss unter ${BW_OUTPUT_DIR} (Default public) liegen
|
||||
```
|
||||
|
||||
### Architektur-Repo (ADRs, arc42, C4, Diagrams-as-Code)
|
||||
Basis-Compliance + Inhalte (Markdown/PlantUML/Mermaid/Structurizr). Wenn publiziert → wie Doku-Repo
|
||||
via `deploy_pages_generic`. Sonst reicht Basis-Compliance + Markdown-Lint. Kein Container/K8s/Trivy.
|
||||
|
||||
### Konzept-Repo (Fachkonzepte, Specs)
|
||||
Nur Basis-Compliance (meist alles). Optional `deploy_pages_generic`. `confidentiality` in scm-info
|
||||
ggf. höher setzen und Repo-Sichtbarkeit anpassen (Konzepte oft vertraulicher).
|
||||
|
||||
## Minimaler Init-Vergleich
|
||||
- **Doku/Architektur (publiziert):** Basis-Compliance + `.gitlab-ci.yml` mit `deploy_pages_generic` + Renovate. Kein K8s/Secrets/Trivy.
|
||||
- **Konzept (nicht publiziert):** nur Basis-Compliance. Optional `deploy_pages_generic`.
|
||||
Reference in New Issue
Block a user