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.

148 lines
4.1 KiB

load("@rules_proto//proto:defs.bzl", "proto_library")
# This is an API workspace, having public visibility by default makes perfect sense.
package(default_visibility = ["//visibility:public"])
##############################################################################
# Common
##############################################################################
load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info")
proto_library(
name = "dataproc_proto",
srcs = [
"autoscaling_policies.proto",
"clusters.proto",
"jobs.proto",
"operations.proto",
"shared.proto",
"workflow_templates.proto",
],
deps = [
"//google/api:annotations_proto",
"//google/api:client_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"//google/longrunning:operations_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:timestamp_proto",
],
)
proto_library_with_info(
name = "dataproc_proto_with_info",
deps = [
":dataproc_proto",
"//google/cloud:common_resources_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_gapic_assembly_gradle_pkg",
"java_gapic_library",
"java_gapic_test",
"java_grpc_library",
"java_proto_library",
)
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_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"],
)
java_gapic_test(
name = "dataproc_java_gapic_test_suite",
test_classes = [
"com.google.cloud.dataproc.v1.ClusterControllerClientTest",
"com.google.cloud.dataproc.v1.JobControllerClientTest",
"com.google.cloud.dataproc.v1.WorkflowTemplateServiceClientTest",
],
runtime_deps = [":dataproc_java_gapic_test"],
)
# Opensource Packages
java_gapic_assembly_gradle_pkg(
name = "google-cloud-dataproc-v1-java",
deps = [
":dataproc_java_gapic",
":dataproc_java_grpc",
":dataproc_java_proto",
":dataproc_proto",
],
)
##############################################################################
# Go
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"go_gapic_assembly_pkg",
"go_gapic_library",
"go_proto_library",
"go_test",
)
go_proto_library(
name = "dataproc_go_proto",
compilers = ["@io_bazel_rules_go//proto:go_grpc"],
importpath = "google.golang.org/genproto/googleapis/cloud/dataproc/v1",
protos = [":dataproc_proto"],
deps = [
"//google/api:annotations_go_proto",
"//google/longrunning:longrunning_go_proto",
],
)
go_gapic_library(
name = "dataproc_go_gapic",
src = ":dataproc_proto_with_info",
gapic_yaml = "dataproc_gapic.yaml",
importpath = "cloud.google.com/go/dataproc/apiv1",
service_yaml = "dataproc.yaml",
deps = [
":dataproc_go_proto",
"//google/longrunning:longrunning_go_gapic",
"//google/longrunning:longrunning_go_proto",
"@com_google_cloud_go//longrunning:go_default_library",
],
)
go_test(
name = "dataproc_go_gapic_test",
srcs = [":dataproc_go_gapic_srcjar_test"],
embed = [":dataproc_go_gapic"],
importpath = "cloud.google.com/go/dataproc/apiv1",
)
# Opensource Packages
go_gapic_assembly_pkg(
name = "gapi-cloud-dataproc-v1-go",
deps = [
":dataproc_go_gapic",
":dataproc_go_gapic_srcjar-smoke-test.srcjar",
":dataproc_go_gapic_srcjar-test.srcjar",
":dataproc_go_proto",
],
)