Skip to content

feat: run FuzeFront in-cluster on FuzeInfra (kind), first light - #8

Merged
izzywdev merged 4 commits into
masterfrom
feat/in-cluster-deploy
Jun 16, 2026
Merged

feat: run FuzeFront in-cluster on FuzeInfra (kind), first light#8
izzywdev merged 4 commits into
masterfrom
feat/in-cluster-deploy

Conversation

@izzywdev

Copy link
Copy Markdown
Owner

Brings FuzeFront up in-cluster against the k8s-migrated FuzeInfra, and gets the microfrontend platform to first light: the host shell serves, the backend connects to FuzeInfra's Postgres, and an app can self-register and load at runtime (no compile-time knowledge of the host beyond the SDK).

What's here

  • Deploy (deploy/helm/fuzefront): backend + frontend Deployments/Services/Ingress/Secret, wired to FuzeInfra via cross-namespace CoreDNS (postgres.fuzeinfra.svc). Lean FuzeInfra overlay (deploy/fuzeinfra-lean-values.yaml) brings up just Postgres+Redis. Runbook in the chart README.
  • Backend migration fixes (fresh-DB blockers): native-enum existingType, duplicate sessions(tenant_id) index, parameterized-DDL in the user migration.
  • Frontend build fixes: completed the half-done Tailwind v4 wiring, glibc build stage (oxide native binding), and restored the standalone api.ts exports ~9 components import.
  • FuzeInfra submodule bumped to the Helm/kind migration.

Verified

  • /api/health through ingress → frontend nginx → backend → Postgres: ok, connected
  • POST /api/apps/register → 201, persisted (canonical module-federation type)

Deferred (follow-ups)

Authentik (OIDC), Permit (PDP), dedicated fuzefront_user DB role, demo seeds. kind needs node image v1.34 + ingress-nginx controller-v1.11.2 on this host (noted for FuzeInfra's setup-kind.sh).

AppHub Developer and others added 4 commits June 16, 2026 10:06
Points FuzeInfra at 70c0158 (Helm chart + kind local cluster + EKS terraform).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Native enums (004/005/006) reference pre-created types via existingType:true
  (knex was calling .join on null allowed-values and crashing)
- Drop the duplicate sessions(tenant_id) index in 007 (already created in 003)
- Inline the password literal in 008 (Postgres DDL rejects bound params)
- Add backend/.dockerignore to keep host node_modules out of the build context
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Wire Tailwind v4: @tailwindcss/postcss plugin, @import 'tailwindcss',
  @theme inline token mapping (shadcn) — was half-migrated and unbuildable
- Build stage on node:20-bookworm-slim (glibc) so @tailwindcss/oxide resolves
- Re-export the standalone api functions/types components import (api.ts had
  been refactored into *API objects, breaking ~9 components)
- Add frontend/.dockerignore
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…uster (kind)

- deploy/helm/fuzefront: backend+frontend Deployments/Services/Ingress/Secret,
  wired to FuzeInfra services via cross-namespace CoreDNS (postgres.fuzeinfra.svc)
- deploy/fuzeinfra-lean-values.yaml: bring up only Postgres+Redis for first light
- README runbook; .prettierignore protects the Helm templates
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@izzywdev
izzywdev merged commit 1424c9e into master Jun 16, 2026
5 of 8 checks passed
@izzywdev
izzywdev deleted the feat/in-cluster-deploy branch June 16, 2026 07:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant