1############################################################################## 2# Common 3############################################################################## 4load("@rules_proto//proto:defs.bzl", "proto_library") 5load( 6 "@com_google_googleapis_imports//:imports.bzl", 7 "cc_grpc_library", 8 "cc_proto_library", 9 "csharp_gapic_assembly_pkg", 10 "csharp_gapic_library", 11 "csharp_grpc_library", 12 "csharp_proto_library", 13 "go_gapic_assembly_pkg", 14 "go_gapic_library", 15 "go_proto_library", 16 "java_gapic_assembly_gradle_pkg", 17 "java_gapic_library", 18 "java_gapic_test", 19 "java_grpc_library", 20 "java_proto_library", 21 "nodejs_gapic_assembly_pkg", 22 "nodejs_gapic_library", 23 "php_gapic_assembly_pkg", 24 "php_gapic_library", 25 "php_proto_library", 26 "proto_library_with_info", 27 "py_gapic_assembly_pkg", 28 "py_gapic_library", 29 "ruby_cloud_gapic_library", 30 "ruby_gapic_assembly_pkg", 31 "ruby_grpc_library", 32 "ruby_proto_library", 33) 34 35# This is an API workspace, having public visibility by default makes perfect sense. 36package(default_visibility = ["//visibility:public"]) 37 38proto_library( 39 name = "storage_proto", 40 srcs = [ 41 "annotations.proto", 42 "arrow.proto", 43 "avro.proto", 44 "protobuf.proto", 45 "storage.proto", 46 "stream.proto", 47 "table.proto", 48 ], 49 deps = [ 50 "//google/api:annotations_proto", 51 "//google/api:client_proto", 52 "//google/api:field_behavior_proto", 53 "//google/api:resource_proto", 54 "//google/rpc:status_proto", 55 "@com_google_protobuf//:descriptor_proto", 56 "@com_google_protobuf//:empty_proto", 57 "@com_google_protobuf//:timestamp_proto", 58 "@com_google_protobuf//:wrappers_proto", 59 ], 60) 61 62proto_library_with_info( 63 name = "storage_proto_with_info", 64 deps = [ 65 ":storage_proto", 66 "//google/cloud:common_resources_proto", 67 ], 68) 69 70java_proto_library( 71 name = "storage_java_proto", 72 deps = [":storage_proto"], 73) 74 75java_grpc_library( 76 name = "storage_java_grpc", 77 srcs = [":storage_proto"], 78 deps = [":storage_java_proto"], 79) 80 81java_gapic_library( 82 name = "storage_java_gapic", 83 srcs = [":storage_proto_with_info"], 84 gapic_yaml = "bigquerystorage_gapic.yaml", 85 grpc_service_config = "bigquerystorage_grpc_service_config.json", 86 rest_numeric_enums = False, 87 service_yaml = "bigquerystorage_v1.yaml", 88 test_deps = [ 89 ":storage_java_grpc", 90 ], 91 transport = "grpc", 92 deps = [ 93 ":storage_java_proto", 94 ], 95) 96 97java_gapic_test( 98 name = "storage_java_gapic_test_suite", 99 test_classes = [ 100 "com.google.cloud.bigquery.storage.v1.BaseBigQueryReadClientTest", 101 ], 102 runtime_deps = [":storage_java_gapic_test"], 103) 104 105# Open Source Packages 106java_gapic_assembly_gradle_pkg( 107 name = "google-cloud-bigquery-storage-v1-java", 108 include_samples = True, 109 transport = "grpc", 110 deps = [ 111 ":storage_java_gapic", 112 ":storage_java_grpc", 113 ":storage_java_proto", 114 ":storage_proto", 115 ], 116) 117 118go_proto_library( 119 name = "storage_go_proto", 120 compilers = ["@io_bazel_rules_go//proto:go_grpc"], 121 importpath = "cloud.google.com/go/bigquery/storage/apiv1/storagepb", 122 protos = [":storage_proto"], 123 deps = [ 124 "//google/api:annotations_go_proto", 125 "//google/rpc:status_go_proto", 126 ], 127) 128 129go_gapic_library( 130 name = "storage_go_gapic", 131 srcs = [":storage_proto_with_info"], 132 grpc_service_config = "bigquerystorage_grpc_service_config.json", 133 importpath = "cloud.google.com/go/bigquery/storage/apiv1;storage", 134 metadata = True, 135 release_level = "ga", 136 rest_numeric_enums = False, 137 service_yaml = "bigquerystorage_v1.yaml", 138 transport = "grpc", 139 deps = [ 140 ":storage_go_proto", 141 ], 142) 143 144# Open Source Packages 145go_gapic_assembly_pkg( 146 name = "gapi-cloud-bigquery-storage-v1-go", 147 deps = [ 148 ":storage_go_gapic", 149 ":storage_go_gapic_srcjar-snippets.srcjar", 150 ":storage_go_gapic_srcjar-test.srcjar", 151 ":storage_go_proto", 152 ], 153) 154 155############################################################################## 156# Python 157############################################################################## 158 159py_gapic_library( 160 name = "storage_py_gapic", 161 srcs = [":storage_proto"], 162 grpc_service_config = "bigquerystorage_grpc_service_config.json", 163 opt_args = [ 164 "python-gapic-namespace=google.cloud", 165 "python-gapic-name=bigquery_storage", 166 ], 167 rest_numeric_enums = False, 168 service_yaml = "bigquerystorage_v1.yaml", 169 transport = "grpc", 170) 171 172py_test( 173 name = "storage_py_gapic_test", 174 srcs = [ 175 "storage_py_gapic_pytest.py", 176 "storage_py_gapic_test.py", 177 ], 178 legacy_create_init = False, 179 deps = [":storage_py_gapic"], 180) 181 182py_gapic_assembly_pkg( 183 name = "bigquery-storage-v1-py", 184 deps = [ 185 ":storage_py_gapic", 186 ], 187) 188 189php_proto_library( 190 name = "storage_php_proto", 191 deps = [":storage_proto"], 192) 193 194php_gapic_library( 195 name = "storage_php_gapic", 196 srcs = [":storage_proto_with_info"], 197 grpc_service_config = "bigquerystorage_grpc_service_config.json", 198 migration_mode = "MIGRATING", 199 rest_numeric_enums = False, 200 service_yaml = "bigquerystorage_v1.yaml", 201 transport = "grpc+rest", 202 deps = [":storage_php_proto"], 203) 204 205# Open Source Packages 206php_gapic_assembly_pkg( 207 name = "google-cloud-bigquery-storage-v1-php", 208 deps = [ 209 ":storage_php_gapic", 210 ":storage_php_proto", 211 ], 212) 213 214nodejs_gapic_library( 215 name = "storage_nodejs_gapic", 216 package_name = "@google-cloud/bigquery-storage", 217 src = ":storage_proto_with_info", 218 extra_protoc_parameters = ["metadata"], 219 grpc_service_config = "bigquerystorage_grpc_service_config.json", 220 package = "google.cloud.bigquery.storage.v1", 221 rest_numeric_enums = False, 222 service_yaml = "bigquerystorage_v1.yaml", 223 transport = "grpc", 224 deps = [], 225) 226 227nodejs_gapic_assembly_pkg( 228 name = "bigquery-storage-v1-nodejs", 229 deps = [ 230 ":storage_nodejs_gapic", 231 ":storage_proto", 232 ], 233) 234 235############################################################################## 236# Ruby 237############################################################################## 238 239ruby_proto_library( 240 name = "storage_ruby_proto", 241 deps = [":storage_proto"], 242) 243 244ruby_grpc_library( 245 name = "storage_ruby_grpc", 246 srcs = [":storage_proto"], 247 deps = [":storage_ruby_proto"], 248) 249 250ruby_cloud_gapic_library( 251 name = "storage_ruby_gapic", 252 srcs = [":storage_proto_with_info"], 253 extra_protoc_parameters = [ 254 "ruby-cloud-gem-name=google-cloud-bigquery-storage-v1", 255 "ruby-cloud-env-prefix=BIGQUERY_STORAGE", 256 "ruby-cloud-product-url=https://cloud.google.com/bigquery/docs/reference/storage", 257 "ruby-cloud-api-id=bigquerystorage.googleapis.com", 258 "ruby-cloud-api-shortname=bigquerystorage", 259 ], 260 grpc_service_config = "bigquerystorage_grpc_service_config.json", 261 rest_numeric_enums = False, 262 ruby_cloud_description = "The BigQuery Storage API provides fast access to BigQuery managed storage.", 263 ruby_cloud_title = "BigQuery Storage V1", 264 service_yaml = "bigquerystorage_v1.yaml", 265 deps = [ 266 ":storage_ruby_grpc", 267 ":storage_ruby_proto", 268 ], 269) 270 271# Open Source Packages 272ruby_gapic_assembly_pkg( 273 name = "google-cloud-bigquery-storage-v1-ruby", 274 deps = [ 275 ":storage_ruby_gapic", 276 ":storage_ruby_grpc", 277 ":storage_ruby_proto", 278 ], 279) 280 281csharp_proto_library( 282 name = "storage_csharp_proto", 283 deps = [":storage_proto"], 284) 285 286csharp_grpc_library( 287 name = "storage_csharp_grpc", 288 srcs = [":storage_proto"], 289 deps = [":storage_csharp_proto"], 290) 291 292csharp_gapic_library( 293 name = "storage_csharp_gapic", 294 srcs = [":storage_proto_with_info"], 295 common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", 296 grpc_service_config = "bigquerystorage_grpc_service_config.json", 297 rest_numeric_enums = False, 298 service_yaml = "bigquerystorage_v1.yaml", 299 deps = [ 300 ":storage_csharp_grpc", 301 ":storage_csharp_proto", 302 ], 303) 304 305# Open Source Packages 306csharp_gapic_assembly_pkg( 307 name = "google-cloud-bigquery-storage-v1-csharp", 308 deps = [ 309 ":storage_csharp_gapic", 310 ":storage_csharp_grpc", 311 ":storage_csharp_proto", 312 ], 313) 314 315cc_proto_library( 316 name = "storage_cc_proto", 317 deps = [":storage_proto"], 318) 319 320cc_grpc_library( 321 name = "storage_cc_grpc", 322 srcs = [":storage_proto"], 323 generate_mocks = True, 324 grpc_only = True, 325 deps = [":storage_cc_proto"], 326) 327