Skip to content

OpenstackServer doesn't retry when Cluster was paued #2824

@ezeriver94

Description

@ezeriver94

/kind bug

What steps did you take and what happened:
I pivoted an openstack cluster from a management cluster to another. Due to the nature of this process, the parent CAPI cluster initializes paused, all children get moved and then the cluster gets resumed.

When an OpenstackServer is linked to a paused CAPI cluster, reconciliation ends without requeue. As there are not watchers for the parent cluster in OpenstackServer reconciler, the resource will not be reconciled anymore (unless restarting CAPO or modifying the object).

What did you expect to happen:
CAPO would either detect the parent cluster of an openstack server changed (thus reconciling it again) or it would retry with Requeue in

if cluster != nil {
if annotations.IsPaused(cluster, openStackServer) {
scope.Logger().Info("OpenStackServer linked to a Cluster that is paused. Won't reconcile")
return reconcile.Result{}, nil
}
}

Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]

Environment:

  • Cluster API Provider OpenStack version (Or git rev-parse HEAD if manually built):v0.12.5
  • Cluster-API version: v1.9.11
  • OpenStack version:
  • Minikube/KIND version:
  • Kubernetes version (use kubectl version): v1.340
  • OS (e.g. from /etc/os-release):

Metadata

Metadata

Assignees

Labels

kind/bugCategorizes issue or PR as related to a bug.

Type

No type

Projects

Status

Planned

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions