@@ -22,23 +22,19 @@ import (
2222 appsv1 "k8s.io/api/apps/v1"
2323 corev1 "k8s.io/api/core/v1"
2424 _ "k8s.io/client-go/plugin/pkg/client/auth/gcp"
25- "sigs.k8s.io/controller-runtime/pkg/builder"
25+
26+ ctrl "sigs.k8s.io/controller-runtime"
2627 "sigs.k8s.io/controller-runtime/pkg/client/config"
27- "sigs.k8s.io/controller-runtime/pkg/controller"
2828 "sigs.k8s.io/controller-runtime/pkg/handler"
29- "sigs.k8s.io/controller-runtime/pkg/log"
3029 "sigs.k8s.io/controller-runtime/pkg/log/zap"
3130 "sigs.k8s.io/controller-runtime/pkg/manager"
3231 "sigs.k8s.io/controller-runtime/pkg/manager/signals"
3332 "sigs.k8s.io/controller-runtime/pkg/source"
3433)
3534
36- func init () {
37- log .SetLogger (zap .New ())
38- }
39-
4035func main () {
41- entryLog := log .Log .WithName ("entrypoint" )
36+ ctrl .SetLogger (zap .New ())
37+ entryLog := ctrl .Log .WithName ("entrypoint" )
4238
4339 // Setup a Manager
4440 entryLog .Info ("setting up manager" )
@@ -50,28 +46,21 @@ func main() {
5046
5147 // Setup a new controller to reconcile ReplicaSets
5248 entryLog .Info ("Setting up controller" )
53- c , err := controller .New ("foo-controller" , mgr , controller.Options {
54- Reconciler : & reconcileReplicaSet {client : mgr .GetClient ()},
55- })
56- if err != nil {
57- entryLog .Error (err , "unable to set up individual controller" )
58- os .Exit (1 )
59- }
6049
61- // Watch ReplicaSets and enqueue ReplicaSet object key
62- if err := c . Watch ( source . Kind ( mgr . GetCache (), & appsv1. ReplicaSet {}, & handler. TypedEnqueueRequestForObject [ * appsv1. ReplicaSet ]{})); err != nil {
63- entryLog . Error ( err , "unable to watch ReplicaSets" )
64- os . Exit ( 1 )
65- }
66-
67- // Watch Pods and enqueue owning ReplicaSet key
68- if err := c . Watch ( source . Kind ( mgr .GetCache (), & corev1. Pod {},
69- handler . TypedEnqueueRequestForOwner [ * corev1. Pod ]( mgr . GetScheme (), mgr . GetRESTMapper (), & appsv1. ReplicaSet {}, handler . OnlyControllerOwner ()))); err != nil {
70- entryLog .Error (err , "unable to watch Pods " )
50+ err = ctrl .
51+ NewControllerManagedBy ( mgr ).
52+ Named ( "foo-controller" ).
53+ WatchesRawSource ( source . Kind ( mgr . GetCache (), & appsv1. ReplicaSet {},
54+ & handler. TypedEnqueueRequestForObject [ * appsv1. ReplicaSet ]{})).
55+ WatchesRawSource ( source . Kind ( mgr . GetCache (), & corev1. Pod {},
56+ handler . TypedEnqueueRequestForOwner [ * corev1. Pod ]( mgr . GetScheme (), mgr . GetRESTMapper (), & appsv1. ReplicaSet {}, handler . OnlyControllerOwner ()))).
57+ Complete ( & reconcileReplicaSet { client : mgr .GetClient ()})
58+ if err != nil {
59+ entryLog .Error (err , "could not create controller " )
7160 os .Exit (1 )
7261 }
7362
74- if err := builder . WebhookManagedBy (mgr ).
63+ if err := ctrl . NewWebhookManagedBy (mgr ).
7564 For (& corev1.Pod {}).
7665 WithDefaulter (& podAnnotator {}).
7766 WithValidator (& podValidator {}).
0 commit comments