Immutable resources means that the current patch approach cannot work, because these resource either cannot be updated or they will never sync and become ready.
Motivation
This feature is essential since many cloud resources are immutable
Proposal
The template definitions could be augmented with a updateType, which could be either patch or recreate
It needs to be considered how to handle dependent resources, e.g.:
SG --used by--> ALB
if the SG is immutable (need to investigate why Crossplane set lifecycle.prevent_destroy on SGs) and needs to be recreated, then we also need to recreate the ALB.
"error": "admission webhook \"vtargetgroupbinding.elbv2.k8s.aws\" denied the request: TargetGroupBinding update may not change these fields: spec.targetGroupARN"}
Summary
Immutable resources means that the current
patch
approach cannot work, because these resource either cannot be updated or they will never sync and become ready.Motivation
This feature is essential since many cloud resources are immutable
Proposal
The template definitions could be augmented with a
updateType
, which could be eitherpatch
orrecreate
It needs to be considered how to handle dependent resources, e.g.:
SG --used by--> ALB
if the SG is immutable (need to investigate why Crossplane set
lifecycle.prevent_destroy
on SGs) and needs to be recreated, then we also need to recreate the ALB.