[capo] HeatStack suspend on pivot doesn't work

Summary

!4209 (merged) added a mechanism to suspend heatstack resource in bootstrap cluster before pivoting. However it don't seems to work properly.

related references

Exemples :

  • https://gitlab.com/sylva-projects/sylva-core/-/jobs/11379852413
  • https://gitlab.com/sylva-projects/sylva-core/-/jobs/11382356411

Details

On previous exemples, we can see:

  • suspend is not present on Heatsack dump from bootstrap cluster
  • observedGeneration is 3 or 4

On last exemple, we see that operators on both cluster are competing in order to reconcile the same stack.

On the first exemple, it seems to be harmless but we see that the operator on bootstrap restart reconciling after the resources to be suspended

2025-09-17T00:59:16Z	INFO	controllers.HeatStack	Reconciliation is suspended for this HeatStack	{"HeatStack": {"name":"heatstack-capo-cluster-resources","namespace":"sylva-system"}, "HeatStack.name": "heatstack-capo-cluster-resources"}
2025-09-17T01:00:49Z	INFO	controllers.HeatStack	Reconciliation is suspended for this HeatStack	{"HeatStack": {"name":"heatstack-capo-cluster-resources","namespace":"sylva-system"}, "HeatStack.name": "heatstack-capo-cluster-resources"}
2025-09-17T01:00:50Z	INFO	controllers.HeatStack	checkStatusAndOuput	{"HeatStack": {"name":"heatstack-capo-cluster-resources","namespace":"sylva-system"}, "HeatStack.name": "heatstack-capo-cluster-resources"}
2025-09-17T01:00:50Z	INFO	controllers.HeatStack	updateStatus	{"HeatStack": {"name":"heatstack-capo-cluster-resources","namespace":"sylva-system"}, "HeatStack.name": "heatstack-capo-cluster-resources", "HeatStack.status": "CREATE_COMPLETE", "HeatStack.message": "Stack CREATE completed successfully"}
2025-09-17T01:00:51Z	INFO	controllers.HeatStack	checkStatusAndOuput	{"HeatStack": {"name":"heatstack-capo-cluster-resources","namespace":"sylva-system"}, "HeatStack.name": "heatstack-capo-cluster-resources"}
2025-09-17T01:00:51Z	INFO	controllers.HeatStack	updateStatus	{"HeatStack": {"name":"heatstack-capo-cluster-resources","namespace":"sylva-system"}, "HeatStack.name": "heatstack-capo-cluster-resources", "HeatStack.status": "CREATE_COMPLETE", "HeatStack.message": "Stack CREATE completed successfully"}

Possible workaround

Probably the capo-cluster-resources rebuilt the heatstack without suspend. It would be worth to suspend this units on pivot.

Edited Sep 17, 2025 by Médéric de Verdilhac
Assignee Loading
Time tracking Loading