blob: 911dbb970182e25b282aac2ede24e1264338ed14 [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
12 "SERVICE_SUFFIX", # TODO: evaluate correctness
13 ],
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)