kubernetes-sigs/cluster-api

How to surfacing runtime hook blocking cluster deletion in condition

Open

#6,807 opened on Jul 2, 2022

View on GitHub
 (10 comments) (0 reactions) (0 assignees)Go (1,532 forks)auto 404
area/runtime-sdkhelp wantedkind/cleanuppriority/important-longtermtriage/accepted

Repository metrics

Stars
 (4,267 stars)
PR merge metrics
 (PR metrics pending)

Description

Details:

This issue is to discuss how to surface that a cluster deletion is blocked when the BeforeClusterDelete hook blocks the deletion of a process with a blocking response.

We have 2 options:

  1. Use TopologyReconciled condition - Since only managed clusters are affected by BeforeClusterDelete hook we can use the TopologyReconciled condition to surface if a cluster deletion is blocked. Reason will be LifecycleHookBlocking. This will be consistent with how the other lifecycle hook blocking cases are surfaced.

  2. Use a separate condition - Since TopologyReconciled condition reflects if the underlying objects reflect the topology spec of the cluster using it for delete might be deviating from it purpose.

Some additional concerns:

  • How should the condition be updated after deletion is unblocked and the cluster is in the process of deleting the objects?
  • Which controller owns this condition?

/area runtime-sdk

Contributor guide