Pass betterproto option using custom_opt instead of environment variable
This commit is contained in:
parent
d31f90be6b
commit
f7769a19d1
10
README.md
10
README.md
@ -360,13 +360,17 @@ $ pipenv run test
|
|||||||
Betterproto includes compiled versions for Google's well-known types at [betterproto/lib/google](betterproto/lib/google).
|
Betterproto includes compiled versions for Google's well-known types at [betterproto/lib/google](betterproto/lib/google).
|
||||||
Be sure to regenerate these files when modifying the plugin output format, and validate by running the tests.
|
Be sure to regenerate these files when modifying the plugin output format, and validate by running the tests.
|
||||||
|
|
||||||
Normally, the plugin does not compile any references to `google.protobuf`, since they are pre-compiled. To force compilation of `google.protobuf`, set this environment variable: `BETTERPROTO_OPTS=INCLUDE_GOOGLE`.
|
Normally, the plugin does not compile any references to `google.protobuf`, since they are pre-compiled. To force compilation of `google.protobuf`, use the option `--custom_opt=INCLUDE_GOOGLE`.
|
||||||
|
|
||||||
Assuming your `google.protobuf` source files (included with all releases of `protoc`) are located in `/usr/local/include`, you can regenerate them as follows:
|
Assuming your `google.protobuf` source files (included with all releases of `protoc`) are located in `/usr/local/include`, you can regenerate them as follows:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
export BETTERPROTO_OPTS=INCLUDE_GOOGLE
|
protoc \
|
||||||
protoc --plugin=protoc-gen-custom=betterproto/plugin.py --custom_out=betterproto/lib -I/usr/local/include/ /usr/local/include/google/protobuf/*.proto
|
--plugin=protoc-gen-custom=betterproto/plugin.py \
|
||||||
|
--custom_opt=INCLUDE_GOOGLE \
|
||||||
|
--custom_out=betterproto/lib \
|
||||||
|
-I /usr/local/include/ \
|
||||||
|
/usr/local/include/google/protobuf/*.proto
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -120,8 +120,7 @@ def get_comment(proto_file, path: List[int], indent: int = 4) -> str:
|
|||||||
|
|
||||||
|
|
||||||
def generate_code(request, response):
|
def generate_code(request, response):
|
||||||
plugin_options = os.environ.get("BETTERPROTO_OPTS")
|
plugin_options = request.parameter.split(",") if request.parameter else []
|
||||||
plugin_options = plugin_options.split(" ") if plugin_options else []
|
|
||||||
|
|
||||||
env = jinja2.Environment(
|
env = jinja2.Environment(
|
||||||
trim_blocks=True,
|
trim_blocks=True,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user