Commit c20cfcb0 authored by Andrew Newdigate's avatar Andrew Newdigate
Browse files

Adds GRPCServerInterceptor for Ruby GRPC Servers

parent 14077bf2
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
.test_template: &test_definition
  stage: test
  script:
    - gem install bundler
    - bundle install
    - bundle exec rake verify build install

+6 −0
Original line number Diff line number Diff line
@@ -34,6 +34,12 @@ namespace :rufo do
  end
end

desc "Generate test protobuf stubs"
task :gen_test_proto do
  system "grpc_tools_ruby_protoc --ruby_out=. --grpc_out=. spec/support/grpc_service/test.proto"
  Rufo::Command.run(["spec/support/grpc_service/test_pb.rb", "spec/support/grpc_service/test_services_pb.rb"])
end

task :fix => %w[rufo:run rubocop:auto_correct]

task :verify => %w[spec rufo:check rubocop]
+4 −1
Original line number Diff line number Diff line
@@ -17,12 +17,15 @@ Gem::Specification.new do |spec|
  spec.require_paths = ["lib"]
  spec.required_ruby_version = ">= 2.4.0"

  # Please maintain alphabetical order for dependencies
  spec.add_runtime_dependency "actionpack", "~> 5"
  spec.add_runtime_dependency "activesupport", "~> 5"
  spec.add_runtime_dependency "grpc", "~> 1.15"
  spec.add_runtime_dependency "grpc", "~> 1.19.0" # Be sure to update the "grpc-tools" dev_depenency too
  spec.add_runtime_dependency "jaeger-client", "~> 0.10"
  spec.add_runtime_dependency "opentracing", "~> 0.4"

  # Please maintain alphabetical order for dev dependencies
  spec.add_development_dependency "grpc-tools", "~> 1.19.0"
  spec.add_development_dependency "rack", "~> 2.0"
  spec.add_development_dependency "rake", "~> 12.3"
  spec.add_development_dependency "rspec", "~> 3.6.0"
+2 −1
Original line number Diff line number Diff line
@@ -6,7 +6,8 @@ module Labkit
  # Tracing provides distributed tracing functionality
  module Tracing
    autoload :Factory, "labkit/tracing/factory"
    autoload :GRPCInterceptor, "labkit/tracing/grpc_interceptor"
    autoload :GRPC, "labkit/tracing/grpc"
    autoload :GRPCInterceptor, "labkit/tracing/grpc_interceptor" # Deprecated
    autoload :JaegerFactory, "labkit/tracing/jaeger_factory"
    autoload :RackMiddleware, "labkit/tracing/rack_middleware"
    autoload :Rails, "labkit/tracing/rails"
+11 −0
Original line number Diff line number Diff line
# frozen_string_literal: true

module Labkit
  module Tracing
    # The GRPC module contains functionality for instrumenting GRPC calls
    module GRPC
      autoload :ClientInterceptor, "labkit/tracing/grpc/client_interceptor"
      autoload :ServerInterceptor, "labkit/tracing/grpc/server_interceptor"
    end
  end
end
Loading