blob: 15d649f176e9547dd9d08c7fc86d76e8fc28f7cc [file] [log] [blame]
Serge Bazanski4abeb132022-10-11 11:32:19 +02001load("@io_bazel_rules_go//go:def.bzl", "go_library")
2load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library")
Tim Windelschmidt156248b2025-01-10 00:27:45 +01003load("@rules_proto//proto:defs.bzl", "proto_library")
Tim Windelschmidt3b624072025-01-11 07:16:35 +01004load("@rules_proto_grpc_buf//:defs.bzl", "buf_proto_lint_test")
5
6buf_proto_lint_test(
7 name = "api_proto_lint_test",
8 except_rules = [
9 "PACKAGE_VERSION_SUFFIX",
10 "RPC_REQUEST_STANDARD_NAME", # TODO: evaluate correctness
11 "RPC_RESPONSE_STANDARD_NAME", # TODO: evaluate correctness
Tim Windelschmidtf525fa72025-01-28 15:31:42 +010012 "SERVICE_SUFFIX",
Tim Windelschmidt3b624072025-01-11 07:16:35 +010013 ],
14 protos = [":api_proto"],
15 use_rules = [
16 "DEFAULT",
17 "COMMENTS",
18 ],
19)
Serge Bazanski4abeb132022-10-11 11:32:19 +020020
21proto_library(
22 name = "api_proto",
23 srcs = ["agent.proto"],
24 visibility = ["//visibility:public"],
Lorenz Brun4bbd8b32023-03-27 15:43:28 +020025 deps = [
26 "//cloud/agent/api:api_proto",
27 "//metropolis/proto/api:api_proto",
28 ],
Serge Bazanski4abeb132022-10-11 11:32:19 +020029)
30
31go_proto_library(
32 name = "api_go_proto",
33 compilers = ["@io_bazel_rules_go//proto:go_grpc"],
34 importpath = "source.monogon.dev/cloud/bmaas/server/api",
35 proto = ":api_proto",
36 visibility = ["//visibility:public"],
Lorenz Brun4bbd8b32023-03-27 15:43:28 +020037 deps = [
38 "//cloud/agent/api",
39 "//metropolis/proto/api",
40 ],
Serge Bazanski4abeb132022-10-11 11:32:19 +020041)
42
43go_library(
44 name = "api",
45 embed = [":api_go_proto"],
46 importpath = "source.monogon.dev/cloud/bmaas/server/api",
47 visibility = ["//visibility:public"],
48)