diff --git a/pkg/util/k8s/client.go b/pkg/util/k8s/client.go index 8724e55d4..004a723a3 100644 --- a/pkg/util/k8s/client.go +++ b/pkg/util/k8s/client.go @@ -1,12 +1,23 @@ package k8s import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/client-go/kubernetes/scheme" "k8s.io/client-go/rest" "k8s.io/client-go/tools/clientcmd" "github.com/caicloud/cyclone/pkg/k8s/clientset" + cyscheme "github.com/caicloud/cyclone/pkg/k8s/clientset/scheme" ) +// Scheme consists of kubernetes and cyclone scheme. +var Scheme = runtime.NewScheme() + +func init() { + cyscheme.AddToScheme(Scheme) + _ = scheme.AddToScheme(Scheme) +} + // GetClient creates a client for k8s cluster func GetClient(kubeConfigPath string) (clientset.Interface, error) { config, err := getKubeConfig(kubeConfigPath) diff --git a/pkg/workflow/common/event_recorder.go b/pkg/workflow/common/event_recorder.go index 3b0da3183..f5780d6be 100644 --- a/pkg/workflow/common/event_recorder.go +++ b/pkg/workflow/common/event_recorder.go @@ -5,11 +5,11 @@ import ( log "github.com/sirupsen/logrus" corev1 "k8s.io/api/core/v1" - "k8s.io/client-go/kubernetes/scheme" typedcorev1 "k8s.io/client-go/kubernetes/typed/core/v1" "k8s.io/client-go/tools/record" "github.com/caicloud/cyclone/pkg/k8s/clientset" + "github.com/caicloud/cyclone/pkg/util/k8s" ) const ( @@ -30,7 +30,7 @@ func GetEventRecorder(client clientset.Interface, component string) record.Event log.Info("Creating event recorder") broadcaster := record.NewBroadcaster() broadcaster.StartRecordingToSink(&typedcorev1.EventSinkImpl{Interface: client.CoreV1().Events("")}) - eventRecorder = broadcaster.NewRecorder(scheme.Scheme, corev1.EventSource{Component: component}) + eventRecorder = broadcaster.NewRecorder(k8s.Scheme, corev1.EventSource{Component: component}) }) return eventRecorder