uber / zanzibar

A build system & configuration system to generate versioned API gateways.
MIT License
464 stars 68 forks source link

Allow proto files to have a separate configurable idl root #905

Closed kaialang closed 1 year ago

kaialang commented 1 year ago

This change allows proto files to have a separate configurable idl root in PackageHelperOptions. It adds one field of ProtoRelIdlRootDir in PackageHelperOptions. In case ProtoRelIdlRootDir is not specified, use RelIdlRootDir, if RelIDlRootDir is not set, use "./idl" as default.

Added test cases in package_test.go and client_test.go to cover the code changes. Also modified one of the examples to have protos live under "./bazel-out/idl"

It is used to create newGRPCClientSpec. This change doesn't break existing Thrift or Proto codegen, as for the existing code ProtoRelIdlRootDir is empty, it defaults to the current RelIdlRootDir.

This change will resolve issues in generating services and endpoints when deep dependencies includes both thrift and proto.

CLAassistant commented 1 year ago

CLA assistant check
All committers have signed the CLA.