first commit

This commit is contained in:
Stéphane Tailland
2026-08-23 14:42:26 +02:00
parent 7b7257379f
commit 9c2dd3f8db
8 changed files with 151 additions and 22 deletions
+41 -6
View File
@@ -1,10 +1,45 @@
# dataplane-customers
Layer 2 (Gateway infrastructure) for the **customers** bounded context
(domain team: customers). `DataPlane`, `KonnectExtension`, certs (cert-manager),
secrets (External Secrets Operator) — one Control Plane per environment,
referenced by ID (created by `../konnect-platform`, never recreated here).
(domain team: customers) — one Control Plane per environment, referenced by
ID (created manually in Konnect for now, never recreated here).
Content is generated and PR'd automatically when the matching Control
Plane is created via the self-service flow in `../konnect-platform` —
never hand-edited directly.
**This repo does NOT hold `KonnectAPIAuthConfiguration`/`GatewayConfiguration`/
`Gateway`/`Certificate` YAML directly.** The actual resource template (one
copy, covering every domain/environment) lives in
`../k8s-platform/dataplane-template/`, `${VAR}`-parameterized. This repo
only holds what's specific to one `<env>/<gateway-type>/` — same
`gateway-kustomization.yaml` / `externalsecret.yaml` / `policies-kustomization.yaml`
three-file pattern as `dataplane-catalog` (see that repo's README for the
full explanation of each file's role — identical here, not repeated).
**IdP**: the `openid-connect` policy's `OIDC_ISSUER` (in
`dev/api-gateway/policies-kustomization.yaml`) points at the **local
in-cluster Keycloak** (`ns keycloak`, `https://keycloak.sttlab.local/realms/classic-models`,
deployed 2026-08-23 — config-as-code source in the separate `infra-keycloak`
repo). Not a `customers`-specific choice: `catalog`/`classic-models-api`/
`librechat` were migrated to the same local Keycloak the same day (see
`../STATUS.md` section 15) — the old VPS Keycloak (`keycloak.sttlab.eu`) is
being phased out platform-wide, `customers` was just built against the
local one from the start rather than migrated later. The
`dataplane-template-defaults` ConfigMap's cluster-wide `OIDC_ISSUER` default
still hasn't been updated to match (still the stale VPS value) — every
domain currently overrides past it individually; see `../STATUS.md`
section 16 for that gap.
**Only `dev/` is real.** `staging/api-gateway/` and `prod/api-gateway/`
still hold the original TODO placeholder files (`dataplane.yaml`,
`konnectextension.yaml`) from before this pattern existed — not converted,
not deployed, no Control Plane created for them yet.
**This is Layer 2 (Gateway infrastructure) only — no API is actually
reachable through it yet.** The Layer 3 repo (`../customers-api`, the
`KongService`/`KongRoute`/plugin definitions that would route real traffic
to the backend, same role as `../catalog-api` plays for `catalog`) is
still just two `# TODO` placeholder files, not deployed — `kubectl get
kongservice,kongroute -n customers` returns nothing. A request to
`customers-dev.sttlab.local` would 404, not route anywhere.
**Self-service pipeline (`../konnect-platform` generating this content
automatically) does not exist yet** — still a stub per `../STATUS.md`.
Everything here is hand-maintained, same as `dataplane-catalog`.