`odo dev` not handling changes to the Devfile after removing a Kubernetes resource
/kind bug /area binding
What versions of software are you using?
Operating System: Fedora 36
Output of odo version:
odo v3.0.0-rc1 (897f5f3e0)
How did you run odo exactly?
Reproduction steps:
- New project, but you can use any other project:
odo init --name my-sample-go --devfile go --starter go-starter - Run
odo dev, and wait until the Dev session is up and running - Add a new binding, e.g.:
odo add binding --name my-sample-go-postgresql-binding --service postgresql=> Changes to the Devfile are automatically handled, and the pod is recreated and binding information injected, which is fine. - Wait until the Dev session is ok again. Now, if I remove the previous binding from the Devfile with
odo remove binding --name my-sample-go-postgresql-binding, the runningodo devsession will just display "Updating component...", but it looks like nothing is actually happening in the cluster.
Actual behavior
The pod is not recreated and the binding information is still there in the pod.
Expected behavior
Similar to how odo add binding affects the currently running Dev pod, I would expect odo remove binding to cause the Dev pod to be recreated with no binding data injected in it.
Any logs, error output, etc?
Please check with #5923, this bug might be a regression.
FYI, this regression was caused by this commit: 6d82a577a29206ce0693bf67d1a050f8103fcff3 (#6029):
/triage ready
This issue holds true for all the resources that are created by odo dev. It does not check if the resources in devfile and cluster match. Although that is not a regression, it was just something we never implemented.
I tested with 27f9dff19c1152ab2afd5ced481dd17b18aecee1.