Remove Eclipse Che application configurations and related documentation from the repository. This includes the deletion of application-checluster.yaml, application-devworkspace.yaml, application-operator.yaml, checluster.yaml, dwoc.yaml, kustomization.yaml, and README.md, streamlining the project by eliminating outdated resources.

This commit is contained in:
Nikholas Pcenicni
2026-04-01 01:21:32 -04:00
parent c15bf4d708
commit c312ceeb56
7 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
# Eclipse Che (optional — Argo CD)
Three **Application** resources (sync waves **0 → 1 → 2**):
| Wave | Application | Purpose |
|------|-------------|---------|
| 0 | `eclipse-che-devworkspace` | [DevWorkspace operator](https://github.com/devfile/devworkspace-operator) **v0.33.0** (`devworkspace/kustomization.yaml` → remote `combined.yaml`) |
| 1 | `eclipse-che-operator` | [Eclipse Che Helm chart](https://artifacthub.io/packages/helm/eclipse-che/eclipse-che) **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](https://eclipse.dev/che/docs/stable/administration-guide/installing-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.

View File

@@ -0,0 +1,27 @@
# CheCluster CR — sync wave 2 (operator must be Ready to reconcile).
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: eclipse-che-cluster
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: "2"
finalizers:
- resources-finalizer.argocd.argoproj.io/background
spec:
project: default
source:
repoURL: https://gitea.pcenicni.ca/gsdavidp/home-server.git
targetRevision: HEAD
path: clusters/noble/apps/eclipse-che
directory:
include: checluster.yaml
destination:
server: https://kubernetes.default.svc
namespace: eclipse-che
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- ServerSideApply=true

View File

@@ -0,0 +1,26 @@
# DevWorkspace operator — must sync before Eclipse Che Helm (sync wave 0).
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: eclipse-che-devworkspace
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: "0"
finalizers:
- resources-finalizer.argocd.argoproj.io/background
spec:
project: default
source:
repoURL: https://gitea.pcenicni.ca/gsdavidp/home-server.git
targetRevision: HEAD
path: clusters/noble/apps/eclipse-che/devworkspace
destination:
server: https://kubernetes.default.svc
namespace: devworkspace-controller
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
- ServerSideApply=true

View File

@@ -0,0 +1,28 @@
# Eclipse Che operator (Helm) — sync wave 1 (after DevWorkspace CRDs/controller).
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: eclipse-che-operator
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: "1"
finalizers:
- resources-finalizer.argocd.argoproj.io/background
spec:
project: default
source:
repoURL: https://eclipse-che.github.io/che-operator/charts
chart: eclipse-che
targetRevision: 7.116.0
helm:
releaseName: eclipse-che
destination:
server: https://kubernetes.default.svc
namespace: eclipse-che
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
- ServerSideApply=true

View File

@@ -0,0 +1,24 @@
# Eclipse Che instance — applied after **che-operator** is running (sync wave 2).
# Edit **hostname** / **domain** if your ingress DNS differs from the noble lab pattern.
#
# **devEnvironments.networking.externalTLSConfig** — required with cert-manager for **workspace** subdomains.
# Without it, Che creates secure workspace Ingresses with TLS hosts but **no secretName**, so cert-manager
# never issues certs and the dashboard often shows **no available server** when opening a workspace.
apiVersion: org.eclipse.che/v2
kind: CheCluster
metadata:
name: eclipse-che
namespace: eclipse-che
spec:
devEnvironments:
networking:
externalTLSConfig:
enabled: true
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
networking:
domain: apps.noble.lab.pcenicni.dev
hostname: che.apps.noble.lab.pcenicni.dev
ingressClassName: traefik
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod

View File

@@ -0,0 +1,14 @@
# Required on **Kubernetes** (OpenShift discovers this automatically). See DevWorkspaceOperatorConfig CRD:
# **routing.clusterHostSuffix** — hostname suffix for DevWorkspace routes. Without this, Che / workspaces
# often fail with errors like **no available server** or broken routing.
# Must be named **devworkspace-operator-config** in **devworkspace-controller**.
# v1alpha1 uses a root-level **config** key (not spec.config); see combined.yaml CRD for devworkspaceoperatorconfigs.
# Edit if your ingress base domain differs from the noble lab pattern.
apiVersion: controller.devfile.io/v1alpha1
kind: DevWorkspaceOperatorConfig
metadata:
name: devworkspace-operator-config
namespace: devworkspace-controller
config:
routing:
clusterHostSuffix: apps.noble.lab.pcenicni.dev

View File

@@ -0,0 +1,7 @@
# DevWorkspace operator — prerequisite for Eclipse Che (pinned tag).
# https://github.com/devfile/devworkspace-operator
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- https://raw.githubusercontent.com/devfile/devworkspace-operator/v0.33.0/deploy/deployment/kubernetes/combined.yaml
- dwoc.yaml