BUILD.bazel 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337
  1. # This file was automatically generated by BuildFileGenerator
  2. ##############################################################################
  3. # Common
  4. ##############################################################################
  5. load("@rules_proto//proto:defs.bzl", "proto_library")
  6. load(
  7. "@com_google_googleapis_imports//:imports.bzl",
  8. "cc_grpc_library",
  9. "cc_proto_library",
  10. "csharp_gapic_assembly_pkg",
  11. "csharp_gapic_library",
  12. "csharp_grpc_library",
  13. "csharp_proto_library",
  14. "go_gapic_assembly_pkg",
  15. "go_gapic_library",
  16. "go_proto_library",
  17. "go_test",
  18. "java_gapic_assembly_gradle_pkg",
  19. "java_gapic_library",
  20. "java_gapic_test",
  21. "java_grpc_library",
  22. "java_proto_library",
  23. "nodejs_gapic_assembly_pkg",
  24. "nodejs_gapic_library",
  25. "php_gapic_assembly_pkg",
  26. "php_gapic_library",
  27. "php_grpc_library",
  28. "php_proto_library",
  29. "proto_library_with_info",
  30. "py_gapic_assembly_pkg",
  31. "py_gapic_library",
  32. "py_test",
  33. "ruby_cloud_gapic_library",
  34. "ruby_gapic_assembly_pkg",
  35. "ruby_grpc_library",
  36. "ruby_proto_library",
  37. )
  38. # This is an API workspace, having public visibility by default makes perfect sense.
  39. package(default_visibility = ["//visibility:public"])
  40. proto_library(
  41. name = "spanner_proto",
  42. srcs = [
  43. "commit_response.proto",
  44. "keys.proto",
  45. "mutation.proto",
  46. "query_plan.proto",
  47. "result_set.proto",
  48. "spanner.proto",
  49. "transaction.proto",
  50. "type.proto",
  51. ],
  52. deps = [
  53. "//google/api:annotations_proto",
  54. "//google/api:client_proto",
  55. "//google/api:field_behavior_proto",
  56. "//google/api:resource_proto",
  57. "//google/rpc:status_proto",
  58. "@com_google_protobuf//:duration_proto",
  59. "@com_google_protobuf//:empty_proto",
  60. "@com_google_protobuf//:struct_proto",
  61. "@com_google_protobuf//:timestamp_proto",
  62. ],
  63. )
  64. proto_library_with_info(
  65. name = "spanner_proto_with_info",
  66. deps = [
  67. ":spanner_proto",
  68. "//google/cloud:common_resources_proto",
  69. ],
  70. )
  71. java_proto_library(
  72. name = "spanner_java_proto",
  73. deps = [":spanner_proto"],
  74. )
  75. java_grpc_library(
  76. name = "spanner_java_grpc",
  77. srcs = [":spanner_proto"],
  78. deps = [":spanner_java_proto"],
  79. )
  80. java_gapic_library(
  81. name = "spanner_java_gapic",
  82. srcs = [":spanner_proto_with_info"],
  83. gapic_yaml = "spanner_gapic.yaml",
  84. grpc_service_config = "spanner_grpc_service_config.json",
  85. rest_numeric_enums = False,
  86. test_deps = [
  87. ":spanner_java_grpc",
  88. ],
  89. transport = "grpc+rest",
  90. deps = [
  91. ":spanner_java_proto",
  92. ],
  93. )
  94. java_gapic_test(
  95. name = "spanner_java_gapic_test_suite",
  96. test_classes = [
  97. "com.google.cloud.spanner.v1.SpannerClientHttpJsonTest",
  98. "com.google.cloud.spanner.v1.SpannerClientTest",
  99. ],
  100. runtime_deps = [":spanner_java_gapic_test"],
  101. )
  102. # Open Source Packages
  103. java_gapic_assembly_gradle_pkg(
  104. name = "google-cloud-spanner-v1-java",
  105. include_samples = True,
  106. transport = "grpc+rest",
  107. deps = [
  108. ":spanner_java_gapic",
  109. ":spanner_java_grpc",
  110. ":spanner_java_proto",
  111. ":spanner_proto",
  112. ],
  113. )
  114. go_proto_library(
  115. name = "spanner_go_proto",
  116. compilers = ["@io_bazel_rules_go//proto:go_grpc"],
  117. importpath = "google.golang.org/genproto/googleapis/spanner/v1",
  118. protos = [":spanner_proto"],
  119. deps = [
  120. "//google/api:annotations_go_proto",
  121. "//google/rpc:status_go_proto",
  122. ],
  123. )
  124. go_gapic_library(
  125. name = "spanner_go_gapic",
  126. srcs = [":spanner_proto_with_info"],
  127. grpc_service_config = "spanner_grpc_service_config.json",
  128. importpath = "cloud.google.com/go/spanner/apiv1;spanner",
  129. rest_numeric_enums = False,
  130. service_yaml = "spanner.yaml",
  131. transport = "grpc+rest",
  132. deps = [
  133. ":spanner_go_proto",
  134. "@io_bazel_rules_go//proto/wkt:duration_go_proto",
  135. ],
  136. )
  137. go_test(
  138. name = "spanner_go_gapic_test",
  139. srcs = [":spanner_go_gapic_srcjar_test"],
  140. embed = [":spanner_go_gapic"],
  141. importpath = "cloud.google.com/go/spanner/apiv1",
  142. )
  143. # Open Source Packages
  144. go_gapic_assembly_pkg(
  145. name = "gapi-cloud-spanner-v1-go",
  146. deps = [
  147. ":spanner_go_gapic",
  148. ":spanner_go_gapic_srcjar-test.srcjar",
  149. ":spanner_go_proto",
  150. ],
  151. )
  152. py_gapic_library(
  153. name = "spanner_py_gapic",
  154. srcs = [":spanner_proto"],
  155. grpc_service_config = "spanner_grpc_service_config.json",
  156. opt_args = ["python-gapic-namespace=google.cloud"],
  157. rest_numeric_enums = False,
  158. transport = "grpc",
  159. )
  160. py_test(
  161. name = "spanner_py_gapic_test",
  162. srcs = [
  163. "spanner_py_gapic_pytest.py",
  164. "spanner_py_gapic_test.py",
  165. ],
  166. legacy_create_init = False,
  167. deps = [":spanner_py_gapic"],
  168. )
  169. py_gapic_assembly_pkg(
  170. name = "spanner-v1-py",
  171. deps = [
  172. ":spanner_py_gapic",
  173. ],
  174. )
  175. php_proto_library(
  176. name = "spanner_php_proto",
  177. deps = [":spanner_proto"],
  178. )
  179. php_grpc_library(
  180. name = "spanner_php_grpc",
  181. srcs = [":spanner_proto"],
  182. deps = [":spanner_php_proto"],
  183. )
  184. php_gapic_library(
  185. name = "spanner_php_gapic",
  186. srcs = [":spanner_proto_with_info"],
  187. grpc_service_config = "spanner_grpc_service_config.json",
  188. rest_numeric_enums = False,
  189. service_yaml = "spanner.yaml",
  190. transport = "grpc+rest",
  191. deps = [
  192. ":spanner_php_grpc",
  193. ":spanner_php_proto",
  194. ],
  195. )
  196. # Open Source Packages
  197. php_gapic_assembly_pkg(
  198. name = "google-cloud-spanner-v1-php",
  199. deps = [
  200. ":spanner_php_gapic",
  201. ":spanner_php_grpc",
  202. ":spanner_php_proto",
  203. ],
  204. )
  205. nodejs_gapic_library(
  206. name = "spanner_nodejs_gapic",
  207. package_name = "@google-cloud/spanner",
  208. src = ":spanner_proto_with_info",
  209. extra_protoc_parameters = [
  210. "metadata",
  211. "template=typescript_gapic",
  212. ],
  213. grpc_service_config = "spanner_grpc_service_config.json",
  214. handwritten_layer = True,
  215. main_service = "spanner",
  216. package = "google.spanner.v1",
  217. rest_numeric_enums = False,
  218. service_yaml = "spanner.yaml",
  219. transport = "grpc+rest",
  220. deps = [],
  221. )
  222. nodejs_gapic_assembly_pkg(
  223. name = "spanner-v1-nodejs",
  224. deps = [
  225. ":spanner_nodejs_gapic",
  226. ":spanner_proto",
  227. ],
  228. )
  229. ruby_proto_library(
  230. name = "spanner_ruby_proto",
  231. deps = [":spanner_proto"],
  232. )
  233. ruby_grpc_library(
  234. name = "spanner_ruby_grpc",
  235. srcs = [":spanner_proto"],
  236. deps = [":spanner_ruby_proto"],
  237. )
  238. ruby_cloud_gapic_library(
  239. name = "spanner_ruby_gapic",
  240. srcs = [":spanner_proto_with_info"],
  241. extra_protoc_parameters = [
  242. "ruby-cloud-gem-name=google-cloud-spanner-v1",
  243. "ruby-cloud-env-prefix=SPANNER",
  244. "ruby-cloud-product-url=https://cloud.google.com/spanner",
  245. "ruby-cloud-api-id=spanner.googleapis.com",
  246. "ruby-cloud-api-shortname=spanner",
  247. ],
  248. grpc_service_config = "spanner_grpc_service_config.json",
  249. rest_numeric_enums = False,
  250. ruby_cloud_description = "Cloud Spanner is a managed, mission-critical, globally consistent and scalable relational database service.",
  251. ruby_cloud_title = "Cloud Spanner V1",
  252. deps = [
  253. ":spanner_ruby_grpc",
  254. ":spanner_ruby_proto",
  255. ],
  256. )
  257. # Open Source Packages
  258. ruby_gapic_assembly_pkg(
  259. name = "google-cloud-spanner-v1-ruby",
  260. deps = [
  261. ":spanner_ruby_gapic",
  262. ":spanner_ruby_grpc",
  263. ":spanner_ruby_proto",
  264. ],
  265. )
  266. csharp_proto_library(
  267. name = "spanner_csharp_proto",
  268. deps = [":spanner_proto"],
  269. )
  270. csharp_grpc_library(
  271. name = "spanner_csharp_grpc",
  272. srcs = [":spanner_proto"],
  273. deps = [":spanner_csharp_proto"],
  274. )
  275. csharp_gapic_library(
  276. name = "spanner_csharp_gapic",
  277. srcs = [":spanner_proto_with_info"],
  278. common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json",
  279. grpc_service_config = "spanner_grpc_service_config.json",
  280. rest_numeric_enums = False,
  281. service_yaml = "spanner.yaml",
  282. deps = [
  283. ":spanner_csharp_grpc",
  284. ":spanner_csharp_proto",
  285. ],
  286. )
  287. # Open Source Packages
  288. csharp_gapic_assembly_pkg(
  289. name = "google-cloud-spanner-v1-csharp",
  290. deps = [
  291. ":spanner_csharp_gapic",
  292. ":spanner_csharp_grpc",
  293. ":spanner_csharp_proto",
  294. ],
  295. )
  296. cc_proto_library(
  297. name = "spanner_cc_proto",
  298. deps = [":spanner_proto"],
  299. )
  300. cc_grpc_library(
  301. name = "spanner_cc_grpc",
  302. srcs = [":spanner_proto"],
  303. grpc_only = True,
  304. deps = [":spanner_cc_proto"],
  305. )