grpc-experiments/ruby
Tim Emiola 94e38f6b03 Corrects spelling, fixes grammar and re-word some sections 2015-02-26 08:02:23 -08:00
..
lib Adds the generated code for the route_guide example 2015-02-26 02:29:55 -08:00
route_guide Corrects spelling, fixes grammar and re-word some sections 2015-02-26 08:02:23 -08:00
.gitignore Adds a helloworld sample in ruby. 2015-02-19 11:20:58 -08:00
Gemfile Update Gemfile 2015-02-25 16:34:04 -08:00
README.md Adds a route_guide tutorial 2015-02-26 03:53:16 -08:00
greeter_client.rb Adds a helloworld sample in ruby. 2015-02-19 11:20:58 -08:00
greeter_server.rb change proto README cpp node ruby 2015-02-20 10:50:46 -08:00
grpc-demo.gemspec Updates the gemspec to treat the route_guide client and server as binaries 2015-02-26 02:29:55 -08:00

README.md

gRPC in 3 minutes (Ruby)

BACKGROUND

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

PREREQUISITES

This requires Ruby 2.1, as the gRPC API surface uses keyword args.

If you don't have that installed locally, you can use RVM to use Ruby 2.1 for testing without upgrading the version of Ruby on your whole system.

$ command curl -sSL https://rvm.io/mpapis.asc | gpg --import -
$ \curl -sSL https://get.rvm.io | bash -s stable --ruby=ruby-2.1
$
$ # follow the instructions to ensure that your're using the latest stable version of Ruby
$ # and that the rvm command is installed
  • Make sure your run source $HOME/.rvm/scripts/rvm as instructed to complete the set up of RVM

INSTALL

  • Clone this repository.
  • Follow the instructions in INSTALL to install the gRPC C core.
  • Temporary Install the full gRPC distribution from source on your local machine and update path: in Gemfile to refer src/ruby within it.
    • this is necessary until the gRPC ruby gem is published
  • Use bundler to install
$ # from this directory
$ gem install bundler && 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