Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tsloughter/grpcbox_plugin

Rebar3 plugin for generating grpcbox behaviours
https://github.com/tsloughter/grpcbox_plugin

erlang grpc grpc-gateway rebar3 rebar3-plugin

Last synced: 3 months ago
JSON representation

Rebar3 plugin for generating grpcbox behaviours

Awesome Lists containing this project

README

        

grpcbox Plugin
=====

A rebar3 plugin for generating a behaviour per grpc service, for use with [grpcbox](https://github.com/tsloughter/grpcbox).

Build
-----

```
$ rebar3 compile
```

Use
---

Add the plugin to your rebar config:

```
{deps, [grpcbox]}.

{grpc, [{protos, "proto"},
{gpb_opts, [{module_name_suffix, "_pb"}]}]}.

{plugins, [grpcbox_plugin]}.
```

Currently `grpcbox` and this plugin are a bit picky and the `gpb` options will always include `[use_packages, maps, type_specs, strings_as_binaries, {i, "."}, {o, "src"}]`.

Assuming the `proto` directory of your application has the `route_guide.proto` found in this repo, `test/grpcbox_SUITE_data/route_guide.proto`, the output from running the plugin will be:

```
$ rebar3 grpc gen
===> Writing src/route_guide_pb.erl
===> Writing src/grpcbox_route_guide_behaviour.erl
```