Public interface definitions of Google APIs. Topics (grpc依赖)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

102 lines
3.1 KiB

load("@io_grpc_grpc_java//:java_grpc_library.bzl", "java_grpc_library")
load("@com_google_api_codegen//rules_gapic:gapic.bzl", "proto_library_with_info")
load(
"@com_google_api_codegen//rules_gapic/java:java_gapic.bzl",
"java_gapic_library",
"java_resource_name_proto_library",
)
load("@com_google_api_codegen//rules_gapic/java:java_gapic_pkg.bzl", "java_gapic_assembly_gradle_pkg")
# This is an API workspace, having public visibility by default makes perfect sense.
package(default_visibility = ["//visibility:public"])
##############################################################################
# Common
##############################################################################
proto_library(
name = "dataproc_proto",
srcs = [
"clusters.proto",
"jobs.proto",
"operations.proto",
],
deps = [
"//google/api:annotations_proto",
"//google/longrunning:operations_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:timestamp_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:empty_proto",
],
)
proto_library_with_info(
name = "dataproc_proto_with_info",
deps = [":dataproc_proto"],
)
##############################################################################
# Java
##############################################################################
_JAVA_GRPC_DEPS = [
"@com_google_api_grpc_proto_google_common_protos//jar",
]
java_proto_library(
name = "dataproc_java_proto",
deps = [":dataproc_proto"],
)
java_grpc_library(
name = "dataproc_java_grpc",
srcs = [":dataproc_proto"],
deps = [":dataproc_java_proto"] + _JAVA_GRPC_DEPS,
)
java_resource_name_proto_library(
name = "dataproc_resource_name_java_proto",
gapic_yaml = "dataproc_gapic.yaml",
deps = [":dataproc_proto"],
)
java_gapic_library(
name = "dataproc_java_gapic",
src = ":dataproc_proto_with_info",
gapic_yaml = "dataproc_gapic.yaml",
service_yaml = "dataproc.yaml",
test_deps = [":dataproc_java_grpc"],
deps = [
":dataproc_java_proto",
":dataproc_resource_name_java_proto",
] + _JAVA_GRPC_DEPS,
)
[java_test(
name = test_name,
test_class = test_name,
runtime_deps = [
":dataproc_java_gapic_test",
],
) for test_name in [
"com.google.cloud.dataproc.v1.ClusterControllerClientTest",
"com.google.cloud.dataproc.v1.JobControllerClientTest",
]]
##############################################################################
# Opensource Packages
##############################################################################
java_gapic_assembly_gradle_pkg(
name = "google-cloud-dataproc-v1-java",
client_deps = [":dataproc_java_gapic"],
client_group = "com.google.cloud",
client_test_deps = [":dataproc_java_gapic_test"],
grpc_deps = [":dataproc_java_grpc"],
grpc_group = "com.google.api.grpc",
proto_deps = [
":dataproc_java_proto",
":dataproc_proto",
":dataproc_resource_name_java_proto",
] + _JAVA_GRPC_DEPS,
version = "0.0.0-SNAPSHOT",
)