1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
load("@aspect_bazel_lib//lib:write_source_files.bzl", "write_source_files")
load("@rules_proto_grpc//ruby:defs.bzl", "ruby_proto_compile")
load("//build:proto_def.bzl", "ruby_grpc_compile")
PROTO = [
"modshared",
"modserver",
"agent_tracker",
]
RPC = [
"agent_tracker",
"configuration_project",
"notifications",
]
[
ruby_proto_compile(
name = "%s_proto" % name,
protos = [
"//internal/module/%s:proto" % name,
],
tags = ["manual"],
)
for name in PROTO
]
[
ruby_proto_compile(
name = "%s_rpc_proto" % name,
protos = [
"//internal/module/%s/rpc:proto" % name,
],
tags = ["manual"],
)
for name in RPC
]
[
ruby_grpc_compile(
name = "%s_services_proto" % name,
protos = [
"//internal/module/%s/rpc:proto" % name,
],
tags = ["manual"],
)
for name in RPC
]
write_source_files(
name = "extract_generated",
diff_test = False,
files = {
"lib/internal/module/%s/%s_pb.rb" % (name, name): ":%s_proto" % name
for name in PROTO
} | {
"lib/internal/module/%s/rpc/rpc_pb.rb" % name: ":%s_rpc_proto" % name
for name in RPC
} | {
"lib/internal/module/%s/rpc/rpc_services_pb.rb" % name: ":%s_services_proto" % name
for name in RPC
},
tags = ["manual"],
visibility = ["//visibility:public"],
)
|