Hive
docs: Kura self-host / on-prem operator guide (single-host, cert-manager, ingress-nginx, upgrade migration)
GitHub issue · Open
Source
tuist/tuist #11393
Updated
Jun 19, 2026
Domains
Kura
Background
The single-host gRPC change (#11356) reshapes how the Kura controller exposes gRPC, but there is no Kura self-host / on-prem documentation today — server/priv/docs/en/guides/server/self-host/ only has server.md and telemetry.md, neither mentions Kura. Raised in review of #11356.
Goal
Write a Kura self-host / on-prem operator guide (or section) covering what an operator needs to deploy and upgrade Kura safely after single-host.
Content to cover
- Single-host model: the HTTP cache and Bazel REAPI gRPC are served from one host (
https://<host>/grpcs://<host>), path-split at the ingress — there is no separategrpc.<host>. - cert-manager requirement: the controller touches the cert-manager
Certificatekind on every reconcile; without the CRD installed it fails withNoMatchError(see #11388). Document cert-manager as a prerequisite (pending the decision in #11388). - ingress-nginx requirement: the path-split relies on
nginx.ingress.kubernetes.io/*annotations (use-regex, per-locationbackend-protocol); a non-nginx controller (Traefik/Contour/HAProxy/Cilium) silently routes gRPC to the HTTP backend. - Upgrade / migration (blast radius): bumping
@manifest_revisionre-reconciles every KuraInstance on the first server start after upgrade, rewriting the gRPC Ingress in place fromgrpc.<host>to<host>with no staged-rollout flag. Operators who run their own DNS forgrpc.<host>and have Bazel WORKSPACE files pinned togrpcs://grpc.<host>:443must retire thegrpc.<host>DNS record and update WORKSPACE configs — once the Ingress no longer claims that host, ingress-nginx returns 404.
References
- #11356 (single-host change)
- #11388 (cert-manager requirement decision)
- Review threads: pullrequestreview-4530759072 (r3440813028 migration, r3440813052 blast radius)
Investigate, reproduce, or fix this item in an isolated repository. Each Flight preserves its outcome and agent session.
New Flights are paused
Configure model inference, GitHub, and a sandbox provider to start another Flight. Existing results remain available below.
No Flights yet
Start a Flight and preserve its objective, outcome, and session here.
No GitHub comments yet.