@@ -29,10 +29,9 @@ import (
2929 "time"
3030
3131 "github.com/rs/zerolog"
32- "k8s.io/api/core/v1"
3332 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3433 "k8s.io/client-go/kubernetes"
35- corev1 "k8s.io/client-go/kubernetes/typed/core/v1 "
34+ "k8s.io/client-go/tools/record "
3635
3736 "github.com/arangodb/arangosync/client"
3837 api "github.com/arangodb/kube-arangodb/pkg/apis/replication/v1alpha"
@@ -49,9 +48,10 @@ type Config struct {
4948
5049// Dependencies holds dependent services for a DeploymentReplication
5150type Dependencies struct {
52- Log zerolog.Logger
53- KubeCli kubernetes.Interface
54- CRCli versioned.Interface
51+ Log zerolog.Logger
52+ KubeCli kubernetes.Interface
53+ CRCli versioned.Interface
54+ EventRecorder record.EventRecorder
5555}
5656
5757// deploymentReplicationEvent strongly typed type of event
@@ -84,8 +84,6 @@ type DeploymentReplication struct {
8484 stopCh chan struct {}
8585 stopped int32
8686
87- eventsCli corev1.EventInterface
88-
8987 inspectTrigger trigger.Trigger
9088 recentInspectionErrors int
9189 clientCache client.ClientCache
@@ -103,7 +101,6 @@ func New(config Config, deps Dependencies, apiObject *api.ArangoDeploymentReplic
103101 deps : deps ,
104102 eventCh : make (chan * deploymentReplicationEvent , deploymentReplicationEventQueueSize ),
105103 stopCh : make (chan struct {}),
106- eventsCli : deps .KubeCli .Core ().Events (apiObject .GetNamespace ()),
107104 }
108105
109106 go dr .run ()
@@ -241,10 +238,8 @@ func (dr *DeploymentReplication) handleArangoDeploymentReplicationUpdatedEvent(e
241238
242239// createEvent creates a given event.
243240// On error, the error is logged.
244- func (dr * DeploymentReplication ) createEvent (evt * v1.Event ) {
245- if _ , err := dr .eventsCli .Create (evt ); err != nil {
246- dr .deps .Log .Error ().Err (err ).Interface ("event" , * evt ).Msg ("Failed to record event" )
247- }
241+ func (dr * DeploymentReplication ) createEvent (evt * k8sutil.Event ) {
242+ dr .deps .EventRecorder .Event (evt .InvolvedObject , evt .Type , evt .Reason , evt .Message )
248243}
249244
250245// Update the status of the API object from the internal status
0 commit comments