xref: /aosp_15_r20/external/grpc-grpc-java/xds/BUILD.bazel (revision e07d83d3ffcef9ecfc9f7f475418ec639ff0e5fe)
1load("//:java_grpc_library.bzl", "java_grpc_library")
2
3# Mirrors the dependencies included in the artifact on Maven Central for usage
4# with maven_install's override_targets. Should only be used as a dep for
5# pre-compiled binaries on Maven Central.
6java_library(
7    name = "xds_maven",
8    visibility = ["//visibility:public"],
9    exports = [
10        ":orca",
11        ":xds",
12    ],
13)
14
15java_library(
16    name = "xds",
17    srcs = glob(
18        [
19            "src/main/java/**/*.java",
20            "third_party/zero-allocation-hashing/main/java/**/*.java",
21        ],
22        exclude = ["src/main/java/io/grpc/xds/orca/**"],
23    ),
24    resources = glob([
25        "src/main/resources/**",
26    ]),
27    visibility = ["//visibility:public"],
28    deps = [
29        ":envoy_service_discovery_v2_java_grpc",
30        ":envoy_service_discovery_v3_java_grpc",
31        ":envoy_service_load_stats_v2_java_grpc",
32        ":envoy_service_load_stats_v3_java_grpc",
33        ":envoy_service_status_v3_java_grpc",
34        ":xds_protos_java",
35        ":orca",
36        "//:auto_value_annotations",
37        "//alts",
38        "//api",
39        "//context",
40        "//core:internal",
41        "//core:util",
42        "//netty",
43        "//stub",
44        "//services:metrics",
45        "//services:metrics_internal",
46        "@com_google_code_findbugs_jsr305//jar",
47        "@com_google_code_gson_gson//jar",
48        "@com_google_errorprone_error_prone_annotations//jar",
49        "@com_google_googleapis//google/rpc:rpc_java_proto",
50        "@com_google_guava_guava//jar",
51        "@com_google_protobuf//:protobuf_java",
52        "@com_google_protobuf//:protobuf_java_util",
53        "@com_google_re2j_re2j//jar",
54        "@io_netty_netty_buffer//jar",
55        "@io_netty_netty_codec//jar",
56        "@io_netty_netty_common//jar",
57        "@io_netty_netty_handler//jar",
58        "@io_netty_netty_transport//jar",
59    ],
60)
61
62java_proto_library(
63    name = "xds_protos_java",
64    deps = [
65        "@com_github_cncf_udpa//udpa/type/v1:pkg",
66        "@com_github_cncf_xds//xds/data/orca/v3:pkg",
67        "@com_github_cncf_xds//xds/service/orca/v3:pkg",
68        "@com_github_cncf_xds//xds/type/v3:pkg",
69        "@envoy_api//envoy/admin/v3:pkg",
70        "@envoy_api//envoy/api/v2:pkg",
71        "@envoy_api//envoy/api/v2/core:pkg",
72        "@envoy_api//envoy/api/v2/endpoint:pkg",
73        "@envoy_api//envoy/config/cluster/aggregate/v2alpha:pkg",
74        "@envoy_api//envoy/config/cluster/v3:pkg",
75        "@envoy_api//envoy/config/core/v3:pkg",
76        "@envoy_api//envoy/config/endpoint/v3:pkg",
77        "@envoy_api//envoy/config/filter/http/fault/v2:pkg",
78        "@envoy_api//envoy/config/filter/http/router/v2:pkg",
79        "@envoy_api//envoy/config/filter/network/http_connection_manager/v2:pkg",
80        "@envoy_api//envoy/config/listener/v3:pkg",
81        "@envoy_api//envoy/config/rbac/v3:pkg",
82        "@envoy_api//envoy/config/route/v3:pkg",
83        "@envoy_api//envoy/extensions/clusters/aggregate/v3:pkg",
84        "@envoy_api//envoy/extensions/filters/common/fault/v3:pkg",
85        "@envoy_api//envoy/extensions/filters/http/fault/v3:pkg",
86        "@envoy_api//envoy/extensions/filters/http/rbac/v3:pkg",
87        "@envoy_api//envoy/extensions/filters/http/router/v3:pkg",
88        "@envoy_api//envoy/extensions/filters/network/http_connection_manager/v3:pkg",
89        "@envoy_api//envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3:pkg",
90        "@envoy_api//envoy/extensions/load_balancing_policies/least_request/v3:pkg",
91        "@envoy_api//envoy/extensions/load_balancing_policies/pick_first/v3:pkg",
92        "@envoy_api//envoy/extensions/load_balancing_policies/ring_hash/v3:pkg",
93        "@envoy_api//envoy/extensions/load_balancing_policies/round_robin/v3:pkg",
94        "@envoy_api//envoy/extensions/load_balancing_policies/wrr_locality/v3:pkg",
95        "@envoy_api//envoy/extensions/transport_sockets/tls/v3:pkg",
96        "@envoy_api//envoy/service/discovery/v2:pkg",
97        "@envoy_api//envoy/service/discovery/v3:pkg",
98        "@envoy_api//envoy/service/load_stats/v2:pkg",
99        "@envoy_api//envoy/service/load_stats/v3:pkg",
100        "@envoy_api//envoy/service/status/v3:pkg",
101        "@envoy_api//envoy/type/matcher/v3:pkg",
102        "@envoy_api//envoy/type/v3:pkg",
103    ],
104)
105
106java_grpc_library(
107    name = "envoy_service_discovery_v2_java_grpc",
108    srcs = ["@envoy_api//envoy/service/discovery/v2:pkg"],
109    deps = [":xds_protos_java"],
110)
111
112java_grpc_library(
113    name = "envoy_service_discovery_v3_java_grpc",
114    srcs = ["@envoy_api//envoy/service/discovery/v3:pkg"],
115    deps = [":xds_protos_java"],
116)
117
118java_grpc_library(
119    name = "envoy_service_load_stats_v2_java_grpc",
120    srcs = ["@envoy_api//envoy/service/load_stats/v2:pkg"],
121    deps = [":xds_protos_java"],
122)
123
124java_grpc_library(
125    name = "envoy_service_load_stats_v3_java_grpc",
126    srcs = ["@envoy_api//envoy/service/load_stats/v3:pkg"],
127    deps = [":xds_protos_java"],
128)
129
130java_grpc_library(
131    name = "envoy_service_status_v3_java_grpc",
132    srcs = ["@envoy_api//envoy/service/status/v3:pkg"],
133    deps = [":xds_protos_java"],
134)
135
136java_library(
137    name = "orca",
138    srcs = glob([
139        "src/main/java/io/grpc/xds/orca/*.java",
140    ]),
141    visibility = ["//visibility:public"],
142    deps = [
143        ":orca_protos_java",
144        ":xds_service_orca_v3_java_grpc",
145        "//api",
146        "//context",
147        "//core:internal",
148        "//core:util",
149        "//protobuf",
150        "//services:metrics",
151        "//services:metrics_internal",
152        "//stub",
153        "@com_google_code_findbugs_jsr305//jar",
154        "@com_google_guava_guava//jar",
155        "@com_google_protobuf//:protobuf_java_util",
156    ],
157)
158
159java_proto_library(
160    name = "orca_protos_java",
161    deps = [
162        "@com_github_cncf_xds//xds/data/orca/v3:pkg",
163        "@com_github_cncf_xds//xds/service/orca/v3:pkg",
164    ],
165)
166
167java_grpc_library(
168    name = "xds_service_orca_v3_java_grpc",
169    srcs = ["@com_github_cncf_xds//xds/service/orca/v3:pkg"],
170    deps = [":orca_protos_java"],
171)
172