Вставить модуль Python grpcio в проект Bazel
Я пробовал несколько разных способов встраивания Python grpcio
модуль в мой проект Bazel, но, к сожалению, ни один из них не работает правильно.
Насколько я знаю, Bazel не поддерживает внедрение плагинов в среду Python (так что вы можете напрямую запустить import grpcio
). Обратите внимание, что Bazel не поддерживает virtual-env и другие инструменты (buildout...).
Я нашел способ включить пакеты Pypi благодаря этому доказательству концепции, но, к сожалению, он не работает для grpc.io (переменные среды отсутствуют).
Я пытаюсь отладить плагин, но мне интересно, есть ли лучший способ включить grpcio
модуль, так как код основан на Bazel?
1 ответ
Как отметил в комментариях Натаниэль, поддержка gRPC Python на базовом уровне все еще находится в стадии разработки.
Однако pubref https://github.com/pubref/rules_protobuf предлагает правила для bazel, которые поддерживают gRPC для всех языков (включая Python). Я использовал их для Java, и они работали очень хорошо.
Об этих правилах также есть запись в блоге gRPC: http://www.grpc.io/blog/bazel_rules_protobuf