@@ -45,12 +45,11 @@ import (
45
45
"sigs.k8s.io/cluster-api/feature"
46
46
"sigs.k8s.io/cluster-api/internal/hooks"
47
47
"sigs.k8s.io/cluster-api/util"
48
- "sigs.k8s.io/cluster-api/util/annotations"
49
48
"sigs.k8s.io/cluster-api/util/collections"
50
49
"sigs.k8s.io/cluster-api/util/conditions"
51
50
"sigs.k8s.io/cluster-api/util/finalizers"
52
51
"sigs.k8s.io/cluster-api/util/patch"
53
- "sigs.k8s.io/cluster-api/util/predicates "
52
+ "sigs.k8s.io/cluster-api/util/paused "
54
53
)
55
54
56
55
const (
@@ -81,15 +80,13 @@ type Reconciler struct {
81
80
}
82
81
83
82
func (r * Reconciler ) SetupWithManager (ctx context.Context , mgr ctrl.Manager , options controller.Options ) error {
84
- predicateLog := ctrl .LoggerFrom (ctx ).WithValues ("controller" , "cluster" )
85
83
c , err := ctrl .NewControllerManagedBy (mgr ).
86
84
For (& clusterv1.Cluster {}).
87
85
Watches (
88
86
& clusterv1.Machine {},
89
87
handler .EnqueueRequestsFromMapFunc (r .controlPlaneMachineToCluster ),
90
88
).
91
89
WithOptions (options ).
92
- WithEventFilter (predicates .ResourceNotPausedAndHasFilterLabel (mgr .GetScheme (), predicateLog , r .WatchFilterValue )).
93
90
Build (r )
94
91
95
92
if err != nil {
@@ -106,8 +103,6 @@ func (r *Reconciler) SetupWithManager(ctx context.Context, mgr ctrl.Manager, opt
106
103
}
107
104
108
105
func (r * Reconciler ) Reconcile (ctx context.Context , req ctrl.Request ) (_ ctrl.Result , reterr error ) {
109
- log := ctrl .LoggerFrom (ctx )
110
-
111
106
// Fetch the Cluster instance.
112
107
cluster := & clusterv1.Cluster {}
113
108
if err := r .Client .Get (ctx , req .NamespacedName , cluster ); err != nil {
@@ -126,10 +121,8 @@ func (r *Reconciler) Reconcile(ctx context.Context, req ctrl.Request) (_ ctrl.Re
126
121
return ctrl.Result {}, err
127
122
}
128
123
129
- // Return early if the object or Cluster is paused.
130
- if annotations .IsPaused (cluster , cluster ) {
131
- log .Info ("Reconciliation is paused for this object" )
132
- return ctrl.Result {}, nil
124
+ if isPaused , conditionChanged , err := paused .EnsurePausedCondition (ctx , r .Client , cluster , cluster ); err != nil || isPaused || conditionChanged {
125
+ return ctrl.Result {}, err
133
126
}
134
127
135
128
// Initialize the patch helper.
0 commit comments