BUILD.bazel 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367
  1. # This is an API workspace, having public visibility by default makes perfect sense.
  2. package(default_visibility = ["//visibility:public"])
  3. ##############################################################################
  4. # Common
  5. ##############################################################################
  6. load("@rules_proto//proto:defs.bzl", "proto_library")
  7. load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info")
  8. proto_library(
  9. name = "secretmanager_proto",
  10. srcs = [
  11. "resources.proto",
  12. "service.proto",
  13. ],
  14. deps = [
  15. "//google/api:annotations_proto",
  16. "//google/api:client_proto",
  17. "//google/api:field_behavior_proto",
  18. "//google/api:resource_proto",
  19. "//google/iam/v1:iam_policy_proto",
  20. "//google/iam/v1:policy_proto",
  21. "@com_google_protobuf//:empty_proto",
  22. "@com_google_protobuf//:field_mask_proto",
  23. "@com_google_protobuf//:timestamp_proto",
  24. ],
  25. )
  26. proto_library_with_info(
  27. name = "secretmanager_proto_with_info",
  28. deps = [
  29. ":secretmanager_proto",
  30. "//google/cloud:common_resources_proto",
  31. ],
  32. )
  33. ##############################################################################
  34. # Java
  35. ##############################################################################
  36. load(
  37. "@com_google_googleapis_imports//:imports.bzl",
  38. "java_gapic_assembly_gradle_pkg",
  39. "java_gapic_library",
  40. "java_gapic_test",
  41. "java_grpc_library",
  42. "java_proto_library",
  43. )
  44. java_proto_library(
  45. name = "secretmanager_java_proto",
  46. deps = [":secretmanager_proto"],
  47. )
  48. java_grpc_library(
  49. name = "secretmanager_java_grpc",
  50. srcs = [":secretmanager_proto"],
  51. deps = [":secretmanager_java_proto"],
  52. )
  53. java_gapic_library(
  54. name = "secretmanager_java_gapic",
  55. srcs = [":secretmanager_proto_with_info"],
  56. grpc_service_config = "secretmanager_grpc_service_config.json",
  57. rest_numeric_enums = False,
  58. test_deps = [
  59. ":secretmanager_java_grpc",
  60. "//google/iam/v1:iam_java_grpc",
  61. ],
  62. transport = "grpc+rest",
  63. deps = [
  64. ":secretmanager_java_proto",
  65. "//google/iam/v1:iam_java_proto",
  66. ],
  67. )
  68. java_gapic_test(
  69. name = "secretmanager_java_gapic_test_suite",
  70. test_classes = [
  71. "com.google.cloud.secretmanager.v1beta1.SecretManagerServiceClientHttpJsonTest",
  72. "com.google.cloud.secretmanager.v1beta1.SecretManagerServiceClientTest",
  73. ],
  74. runtime_deps = [":secretmanager_java_gapic_test"],
  75. )
  76. # Open Source Packages
  77. java_gapic_assembly_gradle_pkg(
  78. name = "google-cloud-secretmanager-v1beta1-java",
  79. include_samples = True,
  80. transport = "grpc+rest",
  81. deps = [
  82. ":secretmanager_java_gapic",
  83. ":secretmanager_java_grpc",
  84. ":secretmanager_java_proto",
  85. ":secretmanager_proto",
  86. ],
  87. )
  88. ##############################################################################
  89. # Go
  90. ##############################################################################
  91. load(
  92. "@com_google_googleapis_imports//:imports.bzl",
  93. "go_gapic_assembly_pkg",
  94. "go_gapic_library",
  95. "go_proto_library",
  96. "go_test",
  97. )
  98. go_proto_library(
  99. name = "secretmanager_go_proto",
  100. compilers = ["@io_bazel_rules_go//proto:go_grpc"],
  101. importpath = "google.golang.org/genproto/googleapis/cloud/secretmanager/v1beta1",
  102. protos = [":secretmanager_proto"],
  103. deps = [
  104. "//google/api:annotations_go_proto",
  105. "//google/iam/v1:iam_go_proto",
  106. ],
  107. )
  108. go_gapic_library(
  109. name = "secretmanager_go_gapic",
  110. srcs = [":secretmanager_proto_with_info"],
  111. grpc_service_config = "secretmanager_grpc_service_config.json",
  112. importpath = "cloud.google.com/go/secretmanager/apiv1beta1;secretmanager",
  113. rest_numeric_enums = False,
  114. service_yaml = "//google/cloud/secrets/v1beta1:secretmanager_v1beta1.yaml",
  115. transport = "grpc+rest",
  116. deps = [
  117. ":secretmanager_go_proto",
  118. "//google/iam/v1:iam_go_proto",
  119. ],
  120. )
  121. go_test(
  122. name = "secretmanager_go_gapic_test",
  123. srcs = [":secretmanager_go_gapic_srcjar_test"],
  124. embed = [":secretmanager_go_gapic"],
  125. importpath = "cloud.google.com/go/secretmanager/apiv1beta1",
  126. )
  127. # Open Source Packages
  128. go_gapic_assembly_pkg(
  129. name = "gapi-cloud-secretmanager-v1beta1-go",
  130. deps = [
  131. ":secretmanager_go_gapic",
  132. ":secretmanager_go_gapic_srcjar-test.srcjar",
  133. ":secretmanager_go_proto",
  134. ],
  135. )
  136. ##############################################################################
  137. # Python
  138. ##############################################################################
  139. load(
  140. "@com_google_googleapis_imports//:imports.bzl",
  141. "py_gapic_assembly_pkg",
  142. "py_gapic_library",
  143. "py_test",
  144. )
  145. py_gapic_library(
  146. name = "secretmanager_py_gapic",
  147. srcs = [":secretmanager_proto"],
  148. grpc_service_config = "secretmanager_grpc_service_config.json",
  149. opt_args = [
  150. "python-gapic-namespace=google.cloud",
  151. "python-gapic-name=secretmanager",
  152. ],
  153. rest_numeric_enums = False,
  154. transport = "grpc",
  155. deps = [
  156. "//google/iam/v1:iam_policy_py_proto",
  157. ],
  158. )
  159. py_test(
  160. name = "secretmanager_py_gapic_test",
  161. srcs = [
  162. "secretmanager_py_gapic_pytest.py",
  163. "secretmanager_py_gapic_test.py",
  164. ],
  165. legacy_create_init = False,
  166. deps = [":secretmanager_py_gapic"],
  167. )
  168. py_gapic_assembly_pkg(
  169. name = "secretmanager-v1beta1-py",
  170. deps = [
  171. ":secretmanager_py_gapic",
  172. ],
  173. )
  174. ##############################################################################
  175. # PHP
  176. ##############################################################################
  177. load(
  178. "@com_google_googleapis_imports//:imports.bzl",
  179. "php_gapic_assembly_pkg",
  180. "php_gapic_library",
  181. "php_grpc_library",
  182. "php_proto_library",
  183. )
  184. php_proto_library(
  185. name = "secretmanager_php_proto",
  186. deps = [":secretmanager_proto"],
  187. )
  188. php_grpc_library(
  189. name = "secretmanager_php_grpc",
  190. srcs = [":secretmanager_proto"],
  191. deps = [":secretmanager_php_proto"],
  192. )
  193. php_gapic_library(
  194. name = "secretmanager_php_gapic",
  195. srcs = [":secretmanager_proto_with_info"],
  196. grpc_service_config = "secretmanager_grpc_service_config.json",
  197. rest_numeric_enums = False,
  198. transport = "grpc+rest",
  199. deps = [
  200. ":secretmanager_php_grpc",
  201. ":secretmanager_php_proto",
  202. ],
  203. )
  204. # Open Source Packages
  205. php_gapic_assembly_pkg(
  206. name = "google-cloud-secretmanager-v1beta1-php",
  207. deps = [
  208. ":secretmanager_php_gapic",
  209. ":secretmanager_php_grpc",
  210. ":secretmanager_php_proto",
  211. ],
  212. )
  213. ##############################################################################
  214. # Node.js
  215. ##############################################################################
  216. load(
  217. "@com_google_googleapis_imports//:imports.bzl",
  218. "nodejs_gapic_assembly_pkg",
  219. "nodejs_gapic_library",
  220. )
  221. nodejs_gapic_library(
  222. name = "secretmanager_nodejs_gapic",
  223. package_name = "@google-cloud/secret-manager",
  224. src = ":secretmanager_proto_with_info",
  225. extra_protoc_parameters = ["metadata"],
  226. grpc_service_config = "secretmanager_grpc_service_config.json",
  227. package = "google.cloud.secrets.v1beta1",
  228. rest_numeric_enums = False,
  229. service_yaml = "//google/cloud/secrets/v1beta1:secretmanager_v1beta1.yaml",
  230. transport = "grpc+rest",
  231. deps = [],
  232. )
  233. nodejs_gapic_assembly_pkg(
  234. name = "secretmanager-v1beta1-nodejs",
  235. deps = [
  236. ":secretmanager_nodejs_gapic",
  237. ":secretmanager_proto",
  238. ],
  239. )
  240. ##############################################################################
  241. # Ruby
  242. ##############################################################################
  243. load(
  244. "@com_google_googleapis_imports//:imports.bzl",
  245. "ruby_cloud_gapic_library",
  246. "ruby_gapic_assembly_pkg",
  247. "ruby_grpc_library",
  248. "ruby_proto_library",
  249. )
  250. ruby_proto_library(
  251. name = "secretmanager_ruby_proto",
  252. deps = [":secretmanager_proto"],
  253. )
  254. ruby_grpc_library(
  255. name = "secretmanager_ruby_grpc",
  256. srcs = [":secretmanager_proto"],
  257. deps = [":secretmanager_ruby_proto"],
  258. )
  259. ruby_cloud_gapic_library(
  260. name = "secretmanager_ruby_gapic",
  261. srcs = [":secretmanager_proto_with_info"],
  262. extra_protoc_parameters = [
  263. "ruby-cloud-gem-name=google-cloud-secret_manager-v1beta1",
  264. "ruby-cloud-env-prefix=SECRET_MANAGER",
  265. "ruby-cloud-product-url=https://cloud.google.com/secret-manager",
  266. "ruby-cloud-api-id=secretmanager.googleapis.com",
  267. "ruby-cloud-api-shortname=secretmanager",
  268. ],
  269. grpc_service_config = "secretmanager_grpc_service_config.json",
  270. rest_numeric_enums = False,
  271. ruby_cloud_description = "Secret Manager is a secure and convenient storage system for API keys, passwords, certificates, and other sensitive data. Secret Manager provides a central place and single source of truth to manage, access, and audit secrets across Google Cloud.",
  272. ruby_cloud_title = "Secret Manager V1beta1",
  273. deps = [
  274. ":secretmanager_ruby_grpc",
  275. ":secretmanager_ruby_proto",
  276. ],
  277. )
  278. # Open Source Packages
  279. ruby_gapic_assembly_pkg(
  280. name = "google-cloud-secretmanager-v1beta1-ruby",
  281. deps = [
  282. ":secretmanager_ruby_gapic",
  283. ":secretmanager_ruby_grpc",
  284. ":secretmanager_ruby_proto",
  285. ],
  286. )
  287. ##############################################################################
  288. # C#
  289. ##############################################################################
  290. load(
  291. "@com_google_googleapis_imports//:imports.bzl",
  292. "csharp_gapic_assembly_pkg",
  293. "csharp_gapic_library",
  294. "csharp_grpc_library",
  295. "csharp_proto_library",
  296. )
  297. csharp_proto_library(
  298. name = "secretmanager_csharp_proto",
  299. deps = [":secretmanager_proto"],
  300. )
  301. csharp_grpc_library(
  302. name = "secretmanager_csharp_grpc",
  303. srcs = [":secretmanager_proto"],
  304. deps = [":secretmanager_csharp_proto"],
  305. )
  306. csharp_gapic_library(
  307. name = "secretmanager_csharp_gapic",
  308. srcs = [":secretmanager_proto_with_info"],
  309. common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json",
  310. grpc_service_config = "secretmanager_grpc_service_config.json",
  311. rest_numeric_enums = False,
  312. service_yaml = "//google/cloud/secrets/v1beta1:secretmanager_v1beta1.yaml",
  313. deps = [
  314. ":secretmanager_csharp_grpc",
  315. ":secretmanager_csharp_proto",
  316. ],
  317. )
  318. # Open Source Packages
  319. csharp_gapic_assembly_pkg(
  320. name = "google-cloud-secretmanager-v1beta1-csharp",
  321. deps = [
  322. ":secretmanager_csharp_gapic",
  323. ":secretmanager_csharp_grpc",
  324. ":secretmanager_csharp_proto",
  325. ],
  326. )
  327. ##############################################################################
  328. # C++
  329. ##############################################################################
  330. # Put your C++ rules here