Closed AObuchow closed 4 months ago
It turned out that the configmap volume defined in the pod overrides of the devworkspace was missing the defaultMode
field, which was then getting set to a default value on the cluster. When DWO was comparing the workspace deployments expected spec to the cluster spec, it saw the difference in the defaultMode
field, leading to an endless reconcile loop.
Closing as this was caused by a misconfigured devworkspace object. See https://github.com/eclipse-che/che/issues/23011#issuecomment-2197418862
Description
If a devworkspace includes an inlined configmap component that is mounted via pod & container overrides, the devworkspace-controller-manager will enter an endless reconcile loop. From my current investigation, it seems that the
basicDiffFunc()
is returning false when comparing the workspace's deployment on the cluster compared to the expected deployment spec. It seems we might have a subtle bug in thedeploymentDiffOpts
we're using that's failing for this case.How To Reproduce
Starting: Waiting for workspace deployment
phase, and the controller enters an endless reconcile loop until the workspace times out.Expected behavior
The workspace should progress to the READY phase and the controller should not enter an endless reconcile loop.
Additional context
Upstream Che issue