Skip to content

Commit bd7b6ed

Browse files
authored
Merge pull request kubernetes-retired#148 from vincent-pli/correct-kind-setting
Correct Kind setting for MultiClusterController
2 parents fc6a391 + ac8adab commit bd7b6ed

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

virtualcluster/pkg/util/mccontroller/mccontroller.go

+8-3
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ import (
3636
clientgocache "k8s.io/client-go/tools/cache"
3737
"k8s.io/client-go/util/workqueue"
3838
"k8s.io/klog"
39+
"sigs.k8s.io/cluster-api-provider-nested/virtualcluster/pkg/syncer/util/scheme"
3940
"sigs.k8s.io/controller-runtime/pkg/cache"
4041
"sigs.k8s.io/controller-runtime/pkg/client"
4142

@@ -114,13 +115,17 @@ type ClusterInterface interface {
114115

115116
// NewMCController creates a new MultiClusterController.
116117
func NewMCController(objectType client.Object, objectListType client.ObjectList, rc reconciler.DWReconciler, opts ...OptConfig) (*MultiClusterController, error) {
117-
kind := objectType.GetObjectKind().GroupVersionKind().Kind
118+
kinds, _, err := scheme.Scheme.ObjectKinds(objectType)
119+
if err != nil || len(kinds) == 0 {
120+
return nil, fmt.Errorf("mccontroller: unknown object kind %+v", objectType)
121+
}
122+
118123
c := &MultiClusterController{
119124
objectType: objectType,
120-
objectKind: kind,
125+
objectKind: kinds[0].Kind,
121126
clusters: make(map[string]ClusterInterface),
122127
Options: Options{
123-
name: fmt.Sprintf("%s-mccontroller", strings.ToLower(kind)),
128+
name: fmt.Sprintf("%s-mccontroller", strings.ToLower(kinds[0].Kind)),
124129
JitterPeriod: 1 * time.Second,
125130
MaxConcurrentReconciles: constants.DwsControllerWorkerLow,
126131
Reconciler: rc,

0 commit comments

Comments
 (0)