Home | History | Annotate | only in /external/grpc-grpc/src/ruby
Up to higher level directory
NameDateSize
.rubocop.yml22-Oct-2020381
.rubocop_todo.yml22-Oct-202015.6K
bin/22-Oct-2020
CHANGELOG.md22-Oct-2020348
end2end/22-Oct-2020
ext/22-Oct-2020
lib/22-Oct-2020
pb/22-Oct-2020
qps/22-Oct-2020
README.md22-Oct-20202.1K
spec/22-Oct-2020
stress/22-Oct-2020
tools/22-Oct-2020

README.md

      1 [![Gem](https://img.shields.io/gem/v/grpc.svg)](https://rubygems.org/gems/grpc/)
      2 gRPC Ruby
      3 =========
      4 
      5 A Ruby implementation of gRPC.
      6 
      7 PREREQUISITES
      8 -------------
      9 
     10 - Ruby 2.x. The gRPC API uses keyword args.
     11 
     12 INSTALLATION
     13 ---------------
     14 
     15 **Linux and Mac OS X:**
     16 
     17 ```sh
     18 gem install grpc
     19 ```
     20 
     21 BUILD FROM SOURCE
     22 ---------------------
     23 - Clone this repository
     24 
     25 - Init submodules
     26 
     27 ```sh
     28 git submodule update --init
     29 ```
     30 
     31 - Install Ruby 2.x. Consider doing this with [RVM](http://rvm.io), it's a nice way of controlling
     32   the exact ruby version that's used.
     33 ```sh
     34 $ command curl -sSL https://rvm.io/mpapis.asc | gpg --import -
     35 $ \curl -sSL https://get.rvm.io | bash -s stable --ruby=ruby-2
     36 $
     37 $ # follow the instructions to ensure that your're using the latest stable version of Ruby
     38 $ # and that the rvm command is installed
     39 ```
     40 - Make sure your run `source $HOME/.rvm/scripts/rvm` as instructed to complete the set up of RVM
     41 
     42 - Install [bundler](http://bundler.io/)
     43 ```
     44 $ gem install bundler
     45 ```
     46 
     47 - Finally,  build and install the gRPC gem locally.
     48 ```sh
     49 $ # from this directory
     50 $ bundle install  # creates the ruby bundle, including building the grpc extension
     51 $ rake  # runs the unit tests, see rake -T for other options
     52 ```
     53 
     54 DOCUMENTATION
     55 -------------
     56 - rubydoc for the gRPC gem is available online at [rubydoc][].
     57 - the gRPC Ruby reference documentation is available online at [grpc.io][]
     58 
     59 CONTENTS
     60 --------
     61 Directory structure is the layout for [ruby extensions][]
     62 - ext: the gRPC ruby extension
     63 - lib: the entrypoint gRPC ruby library to be used in a 'require' statement
     64 - spec: Rspec unittests
     65 - bin: example gRPC clients and servers, e.g,
     66 
     67   ```ruby
     68   stub = Math::Math::Stub.new('my.test.math.server.com:8080', :this_channel_is_insecure)
     69   req = Math::DivArgs.new(dividend: 7, divisor: 3)
     70   GRPC.logger.info("div(7/3): req=#{req.inspect}")
     71   resp = stub.div(req)
     72   GRPC.logger.info("Answer: #{resp.inspect}")
     73   ```
     74 
     75 [ruby extensions]:http://guides.rubygems.org/gems-with-extensions/
     76 [rubydoc]: http://www.rubydoc.info/gems/grpc
     77 [grpc.io]: https://grpc.io/docs/quickstart/ruby.html
     78 [Debian jessie-backports]:http://backports.debian.org/Instructions/
     79