91 lines
2.9 KiB
Python
91 lines
2.9 KiB
Python
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")
|
|
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 = "asset_proto",
|
|
srcs = [
|
|
"asset_service.proto",
|
|
"assets.proto",
|
|
],
|
|
deps = [
|
|
"//google/api:api_proto",
|
|
"//google/iam/v1:iam_proto",
|
|
"//google/longrunning:longrunning_proto",
|
|
"@com_google_protobuf//:any_proto",
|
|
"@com_google_protobuf//:struct_proto",
|
|
"@com_google_protobuf//:timestamp_proto",
|
|
],
|
|
)
|
|
|
|
proto_library_with_info(
|
|
name = "asset_proto_with_info",
|
|
deps = [":asset_proto"],
|
|
)
|
|
|
|
##############################################################################
|
|
# Java
|
|
##############################################################################
|
|
_JAVA_GRPC_DEPS = [
|
|
"@com_google_api_grpc_proto_google_common_protos//jar",
|
|
"@com_google_api_grpc_proto_google_iam_v1//jar",
|
|
]
|
|
|
|
java_proto_library(
|
|
name = "asset_java_proto",
|
|
deps = [":asset_proto"],
|
|
)
|
|
|
|
java_grpc_library(
|
|
name = "asset_java_grpc",
|
|
srcs = [":asset_proto"],
|
|
deps = [":asset_java_proto"] + _JAVA_GRPC_DEPS,
|
|
)
|
|
|
|
java_gapic_library(
|
|
name = "asset_java_gapic",
|
|
src = ":asset_proto_with_info",
|
|
gapic_yaml = "cloudasset_gapic.yaml",
|
|
service_yaml = "//google/cloud/asset:asset_v1beta1.yaml",
|
|
test_deps = [":asset_java_grpc"],
|
|
deps = [":asset_java_proto"] + _JAVA_GRPC_DEPS,
|
|
)
|
|
|
|
# TODO: configure flattened methods in AssetServiceClient so
|
|
# com.google.cloud.asset.v1beta1.AssetServiceClientTest has actual methods to test (now it is empty,
|
|
# and Bazel does not allow to run empty test classes (test classes without test methods)).
|
|
#
|
|
#[java_test(
|
|
# name = test_name,
|
|
# test_class = test_name,
|
|
# runtime_deps = [
|
|
# ":asset_java_gapic_test",
|
|
# ],
|
|
#) for test_name in [
|
|
# "com.google.cloud.asset.v1beta1.AssetServiceClientTest",
|
|
#]]
|
|
|
|
##############################################################################
|
|
# Opensource Packages
|
|
##############################################################################
|
|
java_gapic_assembly_gradle_pkg(
|
|
name = "google-cloud-asset-v1beta1-java",
|
|
client_deps = [":asset_java_gapic"],
|
|
client_group = "com.google.cloud",
|
|
client_test_deps = [":asset_java_gapic_test"],
|
|
grpc_deps = [":asset_java_grpc"],
|
|
grpc_group = "com.google.api.grpc",
|
|
proto_deps = [
|
|
":asset_java_proto",
|
|
":asset_proto",
|
|
] + _JAVA_GRPC_DEPS,
|
|
version = "0.0.0-SNAPSHOT",
|
|
)
|