workspace(name = "rules_python_py_proto_library_example") # The following local_path_override is only needed to run this example as part of our CI. local_repository( name = "rules_python", path = "../..", ) # When not using this example in the rules_python git repo you would load the python # rules using http_archive(), as documented in the release notes. load("@rules_python//python:repositories.bzl", "py_repositories", "python_register_toolchains") # We install the rules_python dependencies using the function below. py_repositories() python_register_toolchains( name = "python39", python_version = "3.9", ) # Then we need to setup dependencies in order to use py_proto_library load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "rules_proto", sha256 = "dc3fb206a2cb3441b485eb1e423165b231235a1ea9b031b4433cf7bc1fa460dd", strip_prefix = "rules_proto-5.3.0-21.7", urls = [ "https://github.com/bazelbuild/rules_proto/archive/refs/tags/5.3.0-21.7.tar.gz", ], ) http_archive( name = "com_google_protobuf", sha256 = "75be42bd736f4df6d702a0e4e4d30de9ee40eac024c4b845d17ae4cc831fe4ae", strip_prefix = "protobuf-21.7", urls = [ "https://mirror.bazel.build/github.com/protocolbuffers/protobuf/archive/v21.7.tar.gz", "https://github.com/protocolbuffers/protobuf/archive/v21.7.tar.gz", ], ) load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains") rules_proto_dependencies() rules_proto_toolchains()