unplugged-vendor/external/grpc-grpc/examples/ruby
2025-10-06 13:59:42 +00:00
..
errors_and_cancellation Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
lib Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
pubsub Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
route_guide Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
without_protobuf Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
Gemfile Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
greeter_client.rb Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
greeter_server.rb Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
grpc-demo.gemspec Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
README.md Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00

gRPC in 3 minutes (Ruby)

BACKGROUND

For this sample, we've already generated the server and client stubs from helloworld.proto

PREREQUISITES

  • Ruby 2.x This requires Ruby 2.x, as the gRPC API surface uses keyword args. If you don't have that installed locally, you can use RVM to use Ruby 2.x for testing without upgrading the version of Ruby on your whole system. RVM is also useful if you don't have the necessary privileges to update your system's Ruby.

    $ # RVM installation as specified at https://rvm.io/rvm/install
    $ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
    $ \curl -sSL https://get.rvm.io | bash -s stable --ruby=ruby-2
    $
    $ # follow the instructions to ensure that your're using the latest stable version of Ruby
    $ # and that the rvm command is installed
    
  • N.B Make sure your run source $HOME/.rvm/scripts/rvm as instructed to complete the set-up of RVM.

INSTALL

  • Install gRPC Ruby

  • Use bundler to install the example package's dependencies

    $ # from this directory
    $ gem install bundler # if you don't already have bundler available
    $ bundle install
    

Try it!

  • Run the server

    $ # from this directory
    $ bundle exec ./greeter_server.rb &
    
  • Run the client

    $ # from this directory
    $ bundle exec ./greeter_client.rb
    

Tutorial

You can find a more detailed tutorial in gRPC Basics: Ruby