A generator for protocol buffer described APIs for and in Python 3.
This is a generator for API client libraries for APIs specified by protocol buffers, such as those inside Google. It takes a protocol buffer (with particular annotations) and uses it to generate a client library.
This library replaces the monolithic generator with some improvements:
- An explicit normalized format for specifying APIs.
- Light weight, in-language code generators.
This generator can be called from Bazel, which is a recommended way of using it inside a continuous integration build or any other automated pipeline.
Clone the googleapis repository $ git clone https://github.com/googleapis/googleapis.git
You need to add the following targets to your BUILD.bazel file.
load(
"@gapic_generator_python//rules_python_gapic:py_gapic.bzl",
"py_gapic_library"
)
load(
"@gapic_generator_python//rules_python_gapic:py_gapic_pkg.bzl",
"py_gapic_assembly_pkg"
)
py_gapic_library(
name = "documentai_py_gapic",
srcs = [":documentai_proto"],
)
py_gapic_assembly_pkg(
name = "documentai-v1beta2-py",
deps = [
":documentai_py_gapic",
],
)
Using Bazel:
bazel build //google/cloud/documentai/v1beta2:documentai-v1beta2-py
Using Protoc:
# This is assumed to be in the `googleapis` project root.
$ protoc google/cloud/vision/v1/*.proto \
--python_gapic_out=/dest/
If you are looking to contribute to the project, please see Contributing for guidlines.
See the documentation.