@@ -4,56 +4,17 @@ import (
44 "fmt"
55 "strings"
66
7- "k8s.io/apimachinery/pkg/api/meta"
8- "k8s.io/apimachinery/pkg/runtime"
9- utilruntime "k8s.io/apimachinery/pkg/util/runtime"
107 "k8s.io/apimachinery/pkg/util/sets"
11- "k8s.io/client-go/tools/cache"
12- "k8s.io/klog/v2"
138 addonv1alpha1 "open-cluster-management.io/api/addon/v1alpha1"
14- addoninformerv1alpha1 "open-cluster-management.io/api/client/addon/informers/externalversions/addon/v1alpha1"
15- clusterv1beta1 "open-cluster-management.io/api/cluster/v1beta1"
169 workapiv1 "open-cluster-management.io/api/work/v1"
1710
1811 "open-cluster-management.io/addon-framework/pkg/addonmanager/constants"
1912)
2013
2114const (
22- ClusterManagementAddonByPlacement = "clusterManagementAddonByPlacement"
23- ManagedClusterAddonByName = "managedClusterAddonByName"
24- ManagedClusterAddonByNamespace = "managedClusterAddonByNamespace"
15+ ManagedClusterAddonByNamespace = "managedClusterAddonByNamespace"
2516)
2617
27- func IndexClusterManagementAddonByPlacement (obj interface {}) ([]string , error ) {
28- cma , ok := obj .(* addonv1alpha1.ClusterManagementAddOn )
29-
30- if ! ok {
31- return []string {}, fmt .Errorf ("obj %T is not a ClusterManagementAddon" , obj )
32- }
33-
34- var keys []string
35- if cma .Spec .InstallStrategy .Type == "" || cma .Spec .InstallStrategy .Type == addonv1alpha1 .AddonInstallStrategyManual {
36- return keys , nil
37- }
38-
39- for _ , placement := range cma .Spec .InstallStrategy .Placements {
40- key := fmt .Sprintf ("%s/%s" , placement .PlacementRef .Namespace , placement .PlacementRef .Name )
41- keys = append (keys , key )
42- }
43-
44- return keys , nil
45- }
46-
47- func IndexManagedClusterAddonByName (obj interface {}) ([]string , error ) {
48- mca , ok := obj .(* addonv1alpha1.ManagedClusterAddOn )
49-
50- if ! ok {
51- return []string {}, fmt .Errorf ("obj %T is not a ManagedClusterAddon" , obj )
52- }
53-
54- return []string {mca .Name }, nil
55- }
56-
5718func IndexManagedClusterAddonByNamespace (obj interface {}) ([]string , error ) {
5819 mca , ok := obj .(* addonv1alpha1.ManagedClusterAddOn )
5920
@@ -64,60 +25,6 @@ func IndexManagedClusterAddonByNamespace(obj interface{}) ([]string, error) {
6425 return []string {mca .Namespace }, nil
6526}
6627
67- func ClusterManagementAddonByPlacementQueueKey (
68- cmai addoninformerv1alpha1.ClusterManagementAddOnInformer ) func (obj runtime.Object ) []string {
69- return func (obj runtime.Object ) []string {
70- key , err := cache .DeletionHandlingMetaNamespaceKeyFunc (obj )
71- if err != nil {
72- utilruntime .HandleError (err )
73- return []string {}
74- }
75-
76- objs , err := cmai .Informer ().GetIndexer ().ByIndex (ClusterManagementAddonByPlacement , key )
77- if err != nil {
78- utilruntime .HandleError (err )
79- return []string {}
80- }
81-
82- var keys []string
83- for _ , o := range objs {
84- cma := o .(* addonv1alpha1.ClusterManagementAddOn )
85- klog .V (4 ).Infof ("enqueue ClusterManagementAddon %s, because of placement %s" , cma .Name , key )
86- keys = append (keys , cma .Name )
87- }
88-
89- return keys
90- }
91- }
92-
93- func ClusterManagementAddonByPlacementDecisionQueueKey (
94- cmai addoninformerv1alpha1.ClusterManagementAddOnInformer ) func (obj runtime.Object ) []string {
95- return func (obj runtime.Object ) []string {
96- accessor , _ := meta .Accessor (obj )
97- placementName , ok := accessor .GetLabels ()[clusterv1beta1 .PlacementLabel ]
98- if ! ok {
99- return []string {}
100- }
101-
102- objs , err := cmai .Informer ().GetIndexer ().ByIndex (ClusterManagementAddonByPlacement ,
103- fmt .Sprintf ("%s/%s" , accessor .GetNamespace (), placementName ))
104- if err != nil {
105- utilruntime .HandleError (err )
106- return []string {}
107- }
108-
109- var keys []string
110- for _ , o := range objs {
111- cma := o .(* addonv1alpha1.ClusterManagementAddOn )
112- klog .V (4 ).Infof ("enqueue ClusterManagementAddon %s, because of placementDecision %s/%s" ,
113- cma .Name , accessor .GetNamespace (), accessor .GetName ())
114- keys = append (keys , cma .Name )
115- }
116-
117- return keys
118- }
119- }
120-
12128const (
12229 ManifestWorkByAddon = "manifestWorkByAddon"
12330 ManifestWorkByHostedAddon = "manifestWorkByHostedAddon"
0 commit comments