Skip to content

feat(local): k8s HTTPS via cert-manager, k8s docs, legacy cleanup - #22

Merged
izzywdev merged 1 commit into
masterfrom
feat/local-k8s-https
Jun 17, 2026
Merged

feat(local): k8s HTTPS via cert-manager, k8s docs, legacy cleanup#22
izzywdev merged 1 commit into
masterfrom
feat/local-k8s-https

Conversation

@izzywdev

Copy link
Copy Markdown
Owner

Summary

Aligns the repo with the k8s reality (FuzeFront + FuzeInfra both moved to Kubernetes; local = kind fuzeinfra + Helm).

Local HTTPS (cert-manager)

  • deploy/local-tls/cert-manager-local-ca.yaml — a self-signed local CA ClusterIssuer so ingresses get cert-manager-managed TLS locally, mirroring prod's cert-manager/letsencrypt model.
  • values-local.yaml — enable ingress.tls + cert-manager.io/cluster-issuer annotation for fuzefront.dev.local.
  • Verified live: cert issued by CN=FuzeFront Local Dev CA, https://fuzefront.dev.local → 200 serving the new design system. (Import the CA once to trust it: certutil -addstore -f "ROOT" deploy/local-tls/fuzefront-local-ca.crt.)

Docs (k8s switch)

README, PRODUCTION_DEPLOYMENT, SERVICE_DISCOVERY_SOLUTION, AUTHENTICATION_SETUP, developer-guide, scripts/README rewritten around Helm / kind / ingress-nginx / cert-manager. docker-compose, Traefik, fuzeinfra-nginx, port-8008 marked legacy.

Cleanup

  • Removed docker-compose.prod.yml (superseded by values-prod.yaml + Argo CD), scripts/nginx-service-manager.ps1 and scripts/setup-hosts.ps1 (managed the old docker nginx container / port 8008).
  • .gitignore: the downloaded binaries (cloudflared, mkcert, *.deb), screenshot output, local CA cert.
  • Kept docker-compose.yml (interim Authentik) and frontend/nginx.conf (in-pod SPA server) — both still needed.

Authentik scripts (secrets via env)

Committed the setup/init/reset scripts with secrets sourced from env — README uses placeholders only; init-authentik-db.sh requires ${PG_PASS:?} (no hardcoded fallback). The previously plaintext PG_PASS/AUTHENTIK_SECRET_KEY are scrubbed.

Deliberately NOT included (need your call)

  • fuzefront-website/infrastructure/main.tf (re-enables Route53 zone + ACM cert creation)
  • scripts/cleanup-route53-*.sh / delete-remaining-zones.sh (hardcode real hosted-zone IDs + destructive ops)
  • root package.json/lock (wrangler devDep)

🤖 Generated with Claude Code

Local deployment is now Kubernetes (kind-fuzeinfra + Helm); this aligns the
repo with that reality.

Local HTTPS:
- deploy/local-tls/cert-manager-local-ca.yaml — a self-signed local CA
  ClusterIssuer (cert-manager) so ingresses get managed TLS locally, mirroring
  prod's cert-manager/letsencrypt model.
- values-local.yaml — enable ingress TLS + cert-manager.io/cluster-issuer
  annotation for fuzefront.dev.local. (CA public cert is gitignored, per-machine.)

Docs (k8s switch): README, PRODUCTION_DEPLOYMENT, SERVICE_DISCOVERY_SOLUTION,
AUTHENTICATION_SETUP, developer-guide, scripts/README rewritten around
Helm/kind/ingress-nginx/cert-manager; docker-compose/Traefik/fuzeinfra-nginx/
port-8008 marked legacy.

Cleanup: remove docker-compose.prod.yml (superseded by values-prod + Argo CD),
scripts/nginx-service-manager.ps1 and scripts/setup-hosts.ps1 (managed the old
docker nginx container / port 8008). gitignore the downloaded binaries
(cloudflared, mkcert, *.deb), screenshot output, and the local CA cert.

Authentik scripts: commit the setup/init/reset scripts (interim compose-based
auth until it moves into the chart) with secrets sourced from env — README
placeholders only, and init-authentik-db.sh requires ${PG_PASS:?} (no hardcoded
fallback).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@izzywdev
izzywdev merged commit 792eafb into master Jun 17, 2026
3 of 9 checks passed
@izzywdev
izzywdev deleted the feat/local-k8s-https branch June 17, 2026 18:24
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