feat(kube): replace broken kube/ with working Kustomize manifests - #278
Open
dnplkndll wants to merge 4 commits into
Open
feat(kube): replace broken kube/ with working Kustomize manifests#278dnplkndll wants to merge 4 commits into
dnplkndll wants to merge 4 commits into
Conversation
|
Connected to Huly®: SELFH-277 |
11 tasks
Member
|
Hi @dnplkndll |
The front service needs the GitHub App Client ID to build the OAuth authorization URL. Without it, the redirect has client_id= (empty) and GitHub returns 404. Signed-off-by: Daniel Kendall <dkendall@ledoweb.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Don Kendall <kendall@donkendall.com>
The front service needs GITHUB_APP (app slug) to build the GitHub App installation URL. Without it, the URL becomes /apps//installations/new which returns 404. Signed-off-by: Daniel Kendall <dkendall@ledoweb.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Don Kendall <kendall@donkendall.com>
Replace the existing flat kube/ manifests (broken for v7, see hcengineering#181) with a battle-tested Kustomize-based deployment structure. Structure: kube/base/ - config, infra, app, ingress layers kube/overlays/ - example overlay users copy & customize kube/deploy.sh - one-liner deploy script Key design decisions: - Path-based routing (/_accounts, /_transactor, etc.) matching compose.yml - Elasticsearch 7.14.2 (not OpenSearch) - Huly's elasticsearch-js rejects non-ES backends - Explicit env vars on backend services (no bulk envFrom leaking external URLs) - Init containers for startup ordering (busybox wait loops) - Readiness probes on all services (TCP for WS/POST-only, HTTP for REST) - Imperative secret creation (no secret YAML in repo) - huly.example placeholder domain - users must customize via overlay Tested on K3s with v0.7.382. Renders 34 resources: 12 Deployments, 11 Services, 6 Ingresses, 4 PVCs, 1 ConfigMap. Closes hcengineering#181 Addresses hcengineering#20 Supersedes hcengineering#215 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add KVS service (deployment + service, pinned to s0.7.392 since hulykvs does not publish a :latest tag) - Add liveness probes to all services, align readiness initialDelaySeconds with Helm defaults - Fix CI workflow: use kubectl apply -k, correct deployment names, path-based routing, namespaced commands - Add optional auth env vars to account (GitHub OAuth, OIDC, DISABLE_SIGNUP) - Add SERVER_CURSOR_MAXTIMEMS to transactor - Add DESKTOP_UPDATES_CHANNEL to configmap - Align Redpanda args with Helm (pandaproxy, schema-registry, external listeners), fix superuser username, use init container for data dir - Align Elasticsearch with Helm (1024m heap, exec readiness probe, BITNAMI_DEBUG, remove sysctl init container) - Add MinIO liveness probe, increase PVC to 50Gi - Fix CockroachDB: use root user for --insecure mode (no password auth) - Fix deploy.sh and README secret creation to match Tested on Hetzner cluster: 13/13 pods running, 0 restarts, all endpoints verified including account creation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Don Kendall <kendall@donkendall.com>
dnplkndll
force-pushed
the
feat/kustomize-kube
branch
from
March 22, 2026 16:13
662ca3b to
81b22b9
Compare
Member
|
Could you please verify that changes in |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Replaces the existing broken
kube/manifests (see #181) with a Kustomize-based deployment structure, aligned with the merged Helm chart (#280, #286).What changed
Services (13 pods total)
Key design decisions
/_accounts,/_transactor, etc.) — matches compose.yml nginx configelasticsearch-jsrejects non-ES backendsnc -zwait loopskubectl create secrethuly.exampleplaceholder — users customize via overlay--insecuremode withrootuser (no password) — matches Helm chartAlignment with Helm chart
The second commit brings Kustomize manifests to parity with the merged Helm chart:
s0.7.392—hulykvsdoes not publish a:latesttag)initialDelaySecondsaligned with Helmkubectl apply -k, correct deployment names, namespaced commandsSERVER_CURSOR_MAXTIMEMSDESKTOP_UPDATES_CHANNELBITNAMI_DEBUG, removed sysctl init containerrootuser for--insecuremode (COCKROACH_USER/PASSWORD removed — they have no effect in insecure mode)Renders
kubectl kustomize kube/overlays/example/produces 36 resources:Testing
kubectl kustomize kube/overlays/example/renders valid YAML (36 resources)createAccountRPC returns tokenlatestin base excepthulykvs(pinned, no:latestpublished)🤖 Generated with Claude Code