Removing a Composable object, doesn't remove its created objects
Closed this issue · 1 comments
The relation between a Composable object and its underlying object is done with Kubernetes GC owners and dependents. The underlying object points to the Composable object
ownerReferences:
- apiVersion: ibmcloud.ibm.com/v1alpha1
blockOwnerDeletion: true
controller: true
kind: Composable
name: copy-values
uid: f9ea9e3a-cfb0-11e9-b729-06b1ea803013
If both objects are in the same namespace, everything works fine. If they are in a different namespaces, the situation is more complicated.
According to K8s documentation, and the ownerReferences definition, "Cross-namespace owner references are disallowed by design." However, when I tested it on my ICP cluster (v 1.13), it does remove the underlying object.
Probably it is a result of issue 65200. When I run e2e tests, the underlying object is not removed ;-).
We discussed the issue and agreed that the Composable controller will enforce namespace collocation of composable object and its underlying object(s).
The fix is implemented in #21