No description
Find a file
Bram Buijs 45c4cfd90c fix(zitadel-proxy): h2c end-to-end for v4 gRPC trailers (console missing-trailer)
Cilium-Envoy praatte h1 met de proxy → v4-gRPC-status-trailers vielen weg op
het h1-chunked-trailer-pad. appProtocol h2c op de proxy-svc + http2 on op de
nginx-listener → Envoy↔nginx↔zitadel h2 end-to-end, trailers native.
2026-06-25 09:09:26 +02:00
base fix(zitadel-proxy): h2c end-to-end for v4 gRPC trailers (console missing-trailer) 2026-06-25 09:09:26 +02:00
README.md feat: initial scaffold — Zitadel base/ + README (ADR-0042 Fase B) 2026-05-21 11:56:43 +02:00

bb-zitadel

Zitadel identity-provider blueprint voor bb-open-platform. Singleton platform-service — geen tier-overlays. Aangestuurd via Flux Kustomization in bb-open-platform-v2/clusters/proxy-nbg2-prod/platform-zitadel.yaml.

ADR-0042 Fase B — zie bb-open-platform-v2/docs/decisions/0042-mail-identity-stack-architectuur.md.

Layout

base/
├── namespace.yaml           # PSS=restricted
├── cnpg-cluster.yaml        # zitadel-db (CNPG, 3 instances, longhorn-default 20Gi)
├── scheduledbackup.yaml     # daily 02:30 → s3 bbopen-backups/_platform/zitadel/
├── helmrepository.yaml      # https://charts.zitadel.com
├── helmrelease.yaml         # chart 8.x, replicas 3
├── ingress.yaml             # id.bb-open.com cilium + DNS-01
└── kustomization.yaml

Pre-conditions

Item Bron
Pass-item zitadel-masterkey proton-pass-sync mapping → Secret zitadel-masterkey in ns zitadel
Pass-item hetzner-bbopen-backups-nbg1 proton-pass-sync mapping → Secret in ns zitadel (WAL-archive)
DNS A id.bb-open.com ClouDNS → 167.235.104.23 (cluster-LB)
CNPG operator bb-open-platform-v2/platform/cnpg-operator/ (Flux KS platform)
cert-manager letsencrypt-dns01 bb-open-platform-v2/platform/cert-manager-issuers/
Kyverno polex (geen UID-0 voor Zitadel) Niet nodig — Zitadel chart draait non-root

Smoke-test einde Fase B

  • curl https://id.bb-open.com/.well-known/openid-configuration → valid JSON
  • Login admin (initial creds via Zitadel-bootstrap-Job log)
  • OAuth Authorization Code flow via test-client → token