From 1756a7bccbcd358edbcfccc88374c328f9537d77 Mon Sep 17 00:00:00 2001 From: Dario Tranchitella Date: Sat, 27 Jun 2026 15:53:41 +0200 Subject: [PATCH] fix: trigger rollout upon datastore certificate rotation (#1213) Signed-off-by: Dario Tranchitella --- internal/builders/controlplane/deployment.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/internal/builders/controlplane/deployment.go b/internal/builders/controlplane/deployment.go index 5efd8d9..e198384 100644 --- a/internal/builders/controlplane/deployment.go +++ b/internal/builders/controlplane/deployment.go @@ -119,7 +119,13 @@ func (d Deployment) Build(ctx context.Context, deployment *appsv1.Deployment, te d.setLabels(deployment, utilities.MergeMaps(utilities.KamajiLabels(tenantControlPlane.GetName(), "deployment"), tenantControlPlane.Spec.ControlPlane.Deployment.AdditionalMetadata.Labels)) d.setAnnotations(deployment, utilities.MergeMaps(deployment.Annotations, tenantControlPlane.Spec.ControlPlane.Deployment.AdditionalMetadata.Annotations)) d.setTemplateLabels(&deployment.Spec.Template, utilities.MergeMaps(d.templateLabels(ctx, &tenantControlPlane), tenantControlPlane.Spec.ControlPlane.Deployment.PodAdditionalMetadata.Labels)) - d.setTemplateAnnotations(&deployment.Spec.Template, utilities.MergeMaps(tenantControlPlane.Spec.ControlPlane.Deployment.PodAdditionalMetadata.Annotations, map[string]string{"storage.kamaji.clastix.io/config": tenantControlPlane.Status.Storage.Config.Checksum})) + d.setTemplateAnnotations(&deployment.Spec.Template, utilities.MergeMaps(tenantControlPlane.Spec.ControlPlane.Deployment.PodAdditionalMetadata.Annotations, map[string]string{ + // The following annotations are used to trigger a rollout in case of any change: + // - configuration changes + // - certificate changes, or CA rotation + "storage.kamaji.clastix.io/config": tenantControlPlane.Status.Storage.Config.Checksum, + "storage.kamaji.clastix.io/certificate": tenantControlPlane.Status.Storage.Certificate.Checksum, + })) d.setNodeSelector(&deployment.Spec.Template.Spec, tenantControlPlane) d.setToleration(&deployment.Spec.Template.Spec, tenantControlPlane) d.setAffinity(&deployment.Spec.Template.Spec, tenantControlPlane)