You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have a composition that has multiple layers and I want to refactor it by moving some composed resources between layers, introducing new layers, or getting rid of some nested composites to have a more flattened structure.
See the following basic example:
If I just do the refactoring and apply the new composition, ManagedResource/mr-b will be deleted by XNestedComposite/bar and be recreated by XComposite/foo, resulting in a data loss when my resource is a stateful one.
I cannot think of an easy way to achieve this other than the following manual / tedious steps:
Create a new composition with different name/labels, e.g. xcomposite.v2.acme.com
On the old composition, mark all MRs to deletionPolicy: Orphan
After upgrading, use the new label to select the new composition with a controller for existing XRs. Old composites/MRs disappear without deleting any “external” resource, and newly composed MRs take ownership.
How could Crossplane help solve your problem?
Provide an easy way to do this kind of refactoring without causing the deletion of any external resources.
The text was updated successfully, but these errors were encountered:
What problem are you facing?
I have a composition that has multiple layers and I want to refactor it by moving some composed resources between layers, introducing new layers, or getting rid of some nested composites to have a more flattened structure.
See the following basic example:
If I just do the refactoring and apply the new composition,
ManagedResource/mr-b
will be deleted byXNestedComposite/bar
and be recreated byXComposite/foo
, resulting in a data loss when my resource is a stateful one.I cannot think of an easy way to achieve this other than the following manual / tedious steps:
xcomposite.v2.acme.com
deletionPolicy: Orphan
How could Crossplane help solve your problem?
Provide an easy way to do this kind of refactoring without causing the deletion of any external resources.
The text was updated successfully, but these errors were encountered: