Files
home-server/clusters/noble/wip/eclipse-che/README.md

2.5 KiB
Raw Blame History

Eclipse Che (optional — Argo CD)

Three Application resources (sync waves 0 → 1 → 2):

Wave Application Purpose
0 eclipse-che-devworkspace DevWorkspace operator v0.33.0 (devworkspace/kustomization.yaml → remote combined.yaml)
1 eclipse-che-operator Eclipse Che Helm chart 7.116.0 (operator in eclipse-che)
2 eclipse-che-cluster CheCluster (checluster.yaml) — Traefik + cert-manager TLS

Prerequisites (cluster): cert-manager + Traefik (noble bootstrap). DNS: che.apps.noble.lab.pcenicni.dev → Traefik LB (edit checluster.yaml if your domain differs).

First sync: Wave ordering applies to Application CRs under noble-root; if the operator starts before DevWorkspace is ready, Refresh/Sync the child apps once. See Eclipse Che on Kubernetes.

URL: kubectl get checluster eclipse-che -n eclipse-che -o jsonpath='{.status.cheURL}{"\n"}' after Phase is **Active`.

Troubleshooting — “no available server” (or similar)

1. Eclipse Che / dashboard

  • DevWorkspace routing: On Kubernetes you must set routing.clusterHostSuffix in DevWorkspaceOperatorConfig devworkspace-operator-config (devworkspace/dwoc.yaml). If it was missing, sync eclipse-che-devworkspace again, then eclipse-che-operator / eclipse-che-cluster.
  • Status: kubectl get checluster eclipse-che -n eclipse-che -o jsonpath='{.status.chePhase}{"\n"}' → expect Active.
  • Pods: kubectl get pods -n eclipse-che — wait for Running (Keycloak / gateway / server can take many minutes).
  • Ingress + DNS: kubectl get ingress -n eclipse-che — host che.apps.noble.lab.pcenicni.dev must resolve to your Traefik LB (same as Grafana/Homepage).
  • TLS: kubectl describe certificate -n eclipse-che (if present) — Lets Encrypt must succeed before the browser trusts the URL.

2. Argo CD UI / repo

If the message appears in Argo CD (not Che), check in-cluster components: kubectl get pods -n argocd, kubectl logs -n argocd deploy/argocd-repo-server --tail=80, and that Applications use destination.server: https://kubernetes.default.svc (in-cluster), not a missing external API.