blob: 80460d4d330d8c01698f5066b37f10c614517da3 [file]
load("//python:python_grpclib_compile.bzl", "python_grpclib_compile")
load("@rules_python//python:defs.bzl", "py_library")
def python_grpclib_library(**kwargs):
# Compile protos
name_pb = kwargs.get("name") + "_pb"
python_grpclib_compile(
name = name_pb,
**{k: v for (k, v) in kwargs.items() if k in ("deps", "verbose")} # Forward args
)
# Create python library
py_library(
name = kwargs.get("name"),
srcs = [name_pb],
deps = [
"@com_google_protobuf//:protobuf_python",
] + GRPC_DEPS,
imports = [name_pb],
visibility = kwargs.get("visibility"),
tags = kwargs.get("tags"),
)
GRPC_DEPS = [
# Don't use requirement(), since rules_proto_grpc_py3_deps doesn't necessarily exist when
# imported by defs.bzl
"@rules_proto_grpc_py3_deps//pypi__grpclib",
]