From acfa974c10c4618ad640c16217b02ac09300a58a Mon Sep 17 00:00:00 2001 From: Clement Peyrabere Date: Fri, 27 Mar 2020 20:48:02 +0100 Subject: [PATCH] cli: Add hook name to gRPC message (#364) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Make use of gRPC metadatas to pass on Hook-Name. Fixes #362 * Add Hook name in proto. * Pass the hook name into the hook proto instead of gRPC metadatas. Co-authored-by: Clément Peyrabère --- cmd/tusd/cli/hooks/grpc.go | 5 +++-- cmd/tusd/cli/hooks/proto/v1/hook.proto | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cmd/tusd/cli/hooks/grpc.go b/cmd/tusd/cli/hooks/grpc.go index 3bd7ec3..2e8eef4 100644 --- a/cmd/tusd/cli/hooks/grpc.go +++ b/cmd/tusd/cli/hooks/grpc.go @@ -37,7 +37,7 @@ func (g *GrpcHook) Setup() error { func (g *GrpcHook) InvokeHook(typ HookType, info handler.HookEvent, captureOutput bool) ([]byte, int, error) { ctx := context.Background() - req := &pb.SendRequest{Hook: marshal(info)} + req := &pb.SendRequest{Hook: marshal(typ, info)} resp, err := g.Client.Send(ctx, req) if err != nil { if e, ok := status.FromError(err); ok { @@ -51,7 +51,7 @@ func (g *GrpcHook) InvokeHook(typ HookType, info handler.HookEvent, captureOutpu return nil, 0, err } -func marshal(info handler.HookEvent) *pb.Hook { +func marshal(typ HookType, info handler.HookEvent) *pb.Hook { return &pb.Hook{ Upload: &pb.Upload{ Id: info.Upload.ID, @@ -69,5 +69,6 @@ func marshal(info handler.HookEvent) *pb.Hook { Uri: info.HTTPRequest.URI, RemoteAddr: info.HTTPRequest.RemoteAddr, }, + Name: string(typ), } } diff --git a/cmd/tusd/cli/hooks/proto/v1/hook.proto b/cmd/tusd/cli/hooks/proto/v1/hook.proto index 633740a..f27ff19 100644 --- a/cmd/tusd/cli/hooks/proto/v1/hook.proto +++ b/cmd/tusd/cli/hooks/proto/v1/hook.proto @@ -47,6 +47,8 @@ message Hook { // HTTPRequest contains details about the HTTP request that reached // tusd. HTTPRequest httpRequest = 2; + // The hook name + string name = 3; } // Request data to send hook