| load("@io_bazel_rules_go//go:def.bzl", "go_library") |
| load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library") |
| load("@rules_proto//proto:defs.bzl", "proto_library") |
| load("@rules_proto_grpc_buf//:defs.bzl", "buf_proto_lint_test") |
| |
| buf_proto_lint_test( |
| name = "api_proto_lint_test", |
| except_rules = [ |
| "PACKAGE_VERSION_SUFFIX", |
| "ENUM_ZERO_VALUE_SUFFIX", |
| "RPC_REQUEST_RESPONSE_UNIQUE", # TODO: evaluate correctness |
| "RPC_REQUEST_STANDARD_NAME", # TODO: evaluate correctness |
| "RPC_RESPONSE_STANDARD_NAME", # TODO: evaluate correctness |
| "SERVICE_SUFFIX", |
| ], |
| protos = [":api_proto"], |
| use_rules = [ |
| "DEFAULT", |
| "COMMENTS", |
| ], |
| ) |
| |
| proto_library( |
| name = "api_proto", |
| srcs = [ |
| "aaa.proto", |
| "configuration.proto", |
| "debug.proto", |
| "management.proto", |
| ], |
| visibility = ["//visibility:public"], |
| deps = [ |
| "//metropolis/proto/common:common_proto", |
| "//metropolis/proto/ext:ext_proto", |
| "//osbase/logtree/proto:proto_proto", |
| "//osbase/net/proto:proto_proto", |
| "@protobuf//:duration_proto", |
| "@protobuf//:field_mask_proto", |
| ], |
| ) |
| |
| go_proto_library( |
| name = "api_go_proto", |
| compilers = ["@io_bazel_rules_go//proto:go_grpc"], |
| importpath = "source.monogon.dev/metropolis/proto/api", |
| proto = ":api_proto", |
| visibility = ["//visibility:public"], |
| deps = [ |
| "//metropolis/proto/common", |
| "//metropolis/proto/ext", |
| "//osbase/logtree/proto", |
| "//osbase/net/proto", |
| ], |
| ) |
| |
| go_library( |
| name = "api", |
| embed = [":api_go_proto"], |
| importpath = "source.monogon.dev/metropolis/proto/api", |
| visibility = ["//visibility:public"], |
| ) |