Apply the watch function to all controllers 77/3577/2
authorYao Le <le.yao@intel.com>
Wed, 17 Jun 2020 08:40:10 +0000 (08:40 +0000)
committerYao Le <le.yao@intel.com>
Thu, 18 Jun 2020 05:57:59 +0000 (05:57 +0000)
Add the necessray watch for all CRs and the associated CNFs

Signed-off-by: Yao Le <le.yao@intel.com>
Change-Id: I52e53afbdcc4034820a6db90c6dd2502b8e31692

platform/crd-ctrlr/src/config/samples/batch_v1alpha1_ipsecsite.yaml
platform/crd-ctrlr/src/controllers/firewalldnat_controller.go
platform/crd-ctrlr/src/controllers/firewallforwarding_controller.go
platform/crd-ctrlr/src/controllers/firewallrule_controller.go
platform/crd-ctrlr/src/controllers/firewallsnat_controller.go
platform/crd-ctrlr/src/controllers/firewallzone_controller.go
platform/crd-ctrlr/src/controllers/ipsechost_controller.go
platform/crd-ctrlr/src/controllers/ipsecproposal_controller.go
platform/crd-ctrlr/src/controllers/ipsecsite_controller.go
platform/crd-ctrlr/src/controllers/mwan3rule_controller.go

index 7205625..1d5535c 100644 (file)
@@ -18,7 +18,7 @@ spec:
       - ipsecproposal
     force_crypto_proposal: "0"
     connections:
-    - name: connA
+    - name: connB
       conn_type: tunnel
       mode: start
       mark: "42"
index 6303c70..f48e782 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -122,5 +124,11 @@ func (r *FirewallDNATReconciler) SetupWithManager(mgr ctrl.Manager) error {
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.FirewallDNAT{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.FirewallDNATList{})),
+                       },
+                       Filter).
                Complete(r)
 }
index 3cdaa22..70bc0fd 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -119,5 +121,11 @@ func (r *FirewallForwardingReconciler) SetupWithManager(mgr ctrl.Manager) error
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.FirewallForwarding{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.FirewallForwardingList{})),
+                       },
+                       Filter).
                Complete(r)
 }
index b3a2999..8141040 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -119,5 +121,11 @@ func (r *FirewallRuleReconciler) SetupWithManager(mgr ctrl.Manager) error {
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.FirewallRule{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.FirewallRuleList{})),
+                       },
+                       Filter).
                Complete(r)
 }
index 6538885..6489e2b 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -122,5 +124,11 @@ func (r *FirewallSNATReconciler) SetupWithManager(mgr ctrl.Manager) error {
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.FirewallSNAT{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.FirewallSNATList{})),
+                       },
+                       Filter).
                Complete(r)
 }
index bae5ca7..e6cf0d3 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -129,5 +131,11 @@ func (r *FirewallZoneReconciler) SetupWithManager(mgr ctrl.Manager) error {
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.FirewallZone{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.FirewallZoneList{})),
+                       },
+                       Filter).
                Complete(r)
 }
index 2c3fbf1..ef3187a 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -152,5 +154,11 @@ func (r *IpsecHostReconciler) SetupWithManager(mgr ctrl.Manager) error {
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.IpsecHost{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.IpsecHostList{})),
+                       },
+                       Filter).
                Complete(r)
 }
index fa205f8..7d44a9b 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -119,5 +121,11 @@ func (r *IpsecProposalReconciler) SetupWithManager(mgr ctrl.Manager) error {
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.IpsecProposal{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.IpsecProposalList{})),
+                       },
+                       Filter).
                Complete(r)
 }
index 64a2b56..40d81fb 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -152,5 +154,11 @@ func (r *IpsecSiteReconciler) SetupWithManager(mgr ctrl.Manager) error {
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.IpsecSite{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.IpsecSiteList{})),
+                       },
+                       Filter).
                Complete(r)
 }
index a89a946..bcff843 100644 (file)
@@ -25,7 +25,9 @@ import (
        ctrl "sigs.k8s.io/controller-runtime"
        "sigs.k8s.io/controller-runtime/pkg/builder"
        "sigs.k8s.io/controller-runtime/pkg/client"
+       "sigs.k8s.io/controller-runtime/pkg/handler"
        "sigs.k8s.io/controller-runtime/pkg/predicate"
+       "sigs.k8s.io/controller-runtime/pkg/source"
 
        batchv1alpha1 "sdewan.akraino.org/sdewan/api/v1alpha1"
        "sdewan.akraino.org/sdewan/openwrt"
@@ -129,5 +131,11 @@ func (r *Mwan3RuleReconciler) SetupWithManager(mgr ctrl.Manager) error {
        ps := builder.WithPredicates(predicate.GenerationChangedPredicate{})
        return ctrl.NewControllerManagedBy(mgr).
                For(&batchv1alpha1.Mwan3Rule{}, ps).
+               Watches(
+                       &source.Kind{Type: &appsv1.Deployment{}},
+                       &handler.EnqueueRequestsFromMapFunc{
+                               ToRequests: handler.ToRequestsFunc(GetToRequestsFunc(r, &batchv1alpha1.Mwan3RuleList{})),
+                       },
+                       Filter).
                Complete(r)
 }