BUILD.bazel 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781
  1. load("@rules_proto//proto:defs.bzl", "proto_library")
  2. # This is an API workspace, having public visibility by default makes perfect sense.
  3. package(default_visibility = ["//visibility:public"])
  4. ##############################################################################
  5. # Common
  6. ##############################################################################
  7. proto_library(
  8. name = "annotations_proto",
  9. srcs = ["annotations.proto"],
  10. deps = [
  11. ":http_proto",
  12. "@com_google_protobuf//:descriptor_proto",
  13. ],
  14. )
  15. proto_library(
  16. name = "auth_proto",
  17. srcs = ["auth.proto"],
  18. deps = [":annotations_proto"],
  19. )
  20. proto_library(
  21. name = "backend_proto",
  22. srcs = ["backend.proto"],
  23. visibility = ["//visibility:public"],
  24. )
  25. proto_library(
  26. name = "billing_proto",
  27. srcs = ["billing.proto"],
  28. deps = [
  29. ":annotations_proto",
  30. ":metric_proto",
  31. ],
  32. )
  33. proto_library(
  34. name = "client_proto",
  35. srcs = ["client.proto"],
  36. deps = [
  37. ":launch_stage_proto",
  38. "@com_google_protobuf//:descriptor_proto",
  39. "@com_google_protobuf//:duration_proto",
  40. ],
  41. )
  42. proto_library(
  43. name = "config_change_proto",
  44. srcs = ["config_change.proto"],
  45. visibility = ["//visibility:public"],
  46. )
  47. proto_library(
  48. name = "consumer_proto",
  49. srcs = ["consumer.proto"],
  50. visibility = ["//visibility:public"],
  51. )
  52. proto_library(
  53. name = "context_proto",
  54. srcs = ["context.proto"],
  55. visibility = ["//visibility:public"],
  56. )
  57. proto_library(
  58. name = "control_proto",
  59. srcs = ["control.proto"],
  60. visibility = ["//visibility:public"],
  61. )
  62. proto_library(
  63. name = "distribution_proto",
  64. srcs = ["distribution.proto"],
  65. deps = [
  66. ":annotations_proto",
  67. "@com_google_protobuf//:any_proto",
  68. "@com_google_protobuf//:timestamp_proto",
  69. ],
  70. )
  71. proto_library(
  72. name = "documentation_proto",
  73. srcs = ["documentation.proto"],
  74. visibility = ["//visibility:public"],
  75. )
  76. proto_library(
  77. name = "endpoint_proto",
  78. srcs = ["endpoint.proto"],
  79. deps = [":annotations_proto"],
  80. )
  81. proto_library(
  82. name = "error_reason_proto",
  83. srcs = ["error_reason.proto"],
  84. )
  85. proto_library(
  86. name = "field_behavior_proto",
  87. srcs = ["field_behavior.proto"],
  88. deps = [
  89. "@com_google_protobuf//:descriptor_proto",
  90. ],
  91. )
  92. proto_library(
  93. name = "http_proto",
  94. srcs = ["http.proto"],
  95. visibility = ["//visibility:public"],
  96. )
  97. proto_library(
  98. name = "httpbody_proto",
  99. srcs = ["httpbody.proto"],
  100. deps = ["@com_google_protobuf//:any_proto"],
  101. )
  102. proto_library(
  103. name = "label_proto",
  104. srcs = ["label.proto"],
  105. visibility = ["//visibility:public"],
  106. )
  107. proto_library(
  108. name = "launch_stage_proto",
  109. srcs = ["launch_stage.proto"],
  110. )
  111. proto_library(
  112. name = "log_proto",
  113. srcs = ["log.proto"],
  114. deps = [":label_proto"],
  115. )
  116. proto_library(
  117. name = "logging_proto",
  118. srcs = ["logging.proto"],
  119. deps = [
  120. ":annotations_proto",
  121. ":label_proto",
  122. ],
  123. )
  124. proto_library(
  125. name = "metric_proto",
  126. srcs = ["metric.proto"],
  127. deps = [
  128. ":label_proto",
  129. ":launch_stage_proto",
  130. "@com_google_protobuf//:duration_proto",
  131. ],
  132. )
  133. proto_library(
  134. name = "monitored_resource_proto",
  135. srcs = ["monitored_resource.proto"],
  136. deps = [
  137. ":label_proto",
  138. ":launch_stage_proto",
  139. "@com_google_protobuf//:struct_proto",
  140. ],
  141. )
  142. proto_library(
  143. name = "monitoring_proto",
  144. srcs = ["monitoring.proto"],
  145. deps = [":annotations_proto"],
  146. )
  147. proto_library(
  148. name = "quota_proto",
  149. srcs = ["quota.proto"],
  150. deps = [":annotations_proto"],
  151. )
  152. proto_library(
  153. name = "resource_proto",
  154. srcs = ["resource.proto"],
  155. deps = [
  156. "@com_google_protobuf//:descriptor_proto",
  157. ],
  158. )
  159. proto_library(
  160. name = "routing_proto",
  161. srcs = ["routing.proto"],
  162. deps = [
  163. "@com_google_protobuf//:descriptor_proto",
  164. ],
  165. )
  166. proto_library(
  167. name = "service_proto",
  168. srcs = ["service.proto"],
  169. deps = [
  170. ":annotations_proto",
  171. ":auth_proto",
  172. ":backend_proto",
  173. ":billing_proto",
  174. ":client_proto",
  175. ":context_proto",
  176. ":control_proto",
  177. ":documentation_proto",
  178. ":endpoint_proto",
  179. ":http_proto",
  180. ":label_proto",
  181. ":log_proto",
  182. ":logging_proto",
  183. ":metric_proto",
  184. ":monitored_resource_proto",
  185. ":monitoring_proto",
  186. ":quota_proto",
  187. ":resource_proto",
  188. ":source_info_proto",
  189. ":system_parameter_proto",
  190. ":usage_proto",
  191. "@com_google_protobuf//:any_proto",
  192. "@com_google_protobuf//:api_proto",
  193. "@com_google_protobuf//:type_proto",
  194. "@com_google_protobuf//:wrappers_proto",
  195. ],
  196. )
  197. proto_library(
  198. name = "source_info_proto",
  199. srcs = ["source_info.proto"],
  200. deps = ["@com_google_protobuf//:any_proto"],
  201. )
  202. proto_library(
  203. name = "system_parameter_proto",
  204. srcs = ["system_parameter.proto"],
  205. visibility = ["//visibility:public"],
  206. )
  207. proto_library(
  208. name = "usage_proto",
  209. srcs = ["usage.proto"],
  210. deps = [
  211. ":annotations_proto",
  212. ":visibility_proto",
  213. ],
  214. )
  215. proto_library(
  216. name = "visibility_proto",
  217. srcs = ["visibility.proto"],
  218. visibility = ["//visibility:public"],
  219. deps = ["@com_google_protobuf//:descriptor_proto"],
  220. )
  221. ##############################################################################
  222. # Java
  223. ##############################################################################
  224. load(
  225. "@com_google_googleapis_imports//:imports.bzl",
  226. "java_gapic_assembly_gradle_pkg",
  227. "java_proto_library",
  228. )
  229. java_proto_library(
  230. name = "api_java_proto",
  231. deps = [
  232. "annotations_proto",
  233. "auth_proto",
  234. "backend_proto",
  235. "billing_proto",
  236. "client_proto",
  237. "config_change_proto",
  238. "consumer_proto",
  239. "context_proto",
  240. "control_proto",
  241. "distribution_proto",
  242. "documentation_proto",
  243. "endpoint_proto",
  244. "error_reason_proto",
  245. "field_behavior_proto",
  246. "http_proto",
  247. "httpbody_proto",
  248. "label_proto",
  249. "launch_stage_proto",
  250. "log_proto",
  251. "logging_proto",
  252. "metric_proto",
  253. "monitored_resource_proto",
  254. "monitoring_proto",
  255. "quota_proto",
  256. "resource_proto",
  257. "routing_proto",
  258. "service_proto",
  259. "source_info_proto",
  260. "system_parameter_proto",
  261. "usage_proto",
  262. "visibility_proto",
  263. ],
  264. )
  265. # Please DO-NOT-REMOVE this section.
  266. # This is required to generate java files for these protos.
  267. # Open Source Packages
  268. java_gapic_assembly_gradle_pkg(
  269. name = "google-api-java",
  270. transport = "grpc+rest",
  271. deps = [
  272. "annotations_proto",
  273. "auth_proto",
  274. "backend_proto",
  275. "billing_proto",
  276. "client_proto",
  277. "config_change_proto",
  278. "consumer_proto",
  279. "context_proto",
  280. "control_proto",
  281. "distribution_proto",
  282. "documentation_proto",
  283. "endpoint_proto",
  284. "error_reason_proto",
  285. "field_behavior_proto",
  286. "http_proto",
  287. "httpbody_proto",
  288. "label_proto",
  289. "launch_stage_proto",
  290. "log_proto",
  291. "logging_proto",
  292. "metric_proto",
  293. "monitored_resource_proto",
  294. "monitoring_proto",
  295. "quota_proto",
  296. "resource_proto",
  297. "routing_proto",
  298. "service_proto",
  299. "source_info_proto",
  300. "system_parameter_proto",
  301. "usage_proto",
  302. "visibility_proto",
  303. ":api_java_proto",
  304. ],
  305. )
  306. ##############################################################################
  307. # Go
  308. ##############################################################################
  309. load("@com_google_googleapis_imports//:imports.bzl", "go_proto_library")
  310. go_proto_library(
  311. name = "annotations_go_proto",
  312. importpath = "google.golang.org/genproto/googleapis/api/annotations",
  313. protos = [
  314. ":annotations_proto",
  315. ":client_proto",
  316. ":field_behavior_proto",
  317. ":http_proto",
  318. ":resource_proto",
  319. ":routing_proto",
  320. ],
  321. deps = [":api_go_proto"],
  322. )
  323. go_proto_library(
  324. name = "client_go_proto",
  325. importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations",
  326. protos = [":client_proto"],
  327. deps = [":api_go_proto"],
  328. )
  329. go_proto_library(
  330. name = "configchange_go_proto",
  331. importpath = "google.golang.org/genproto/googleapis/api/configchange",
  332. protos = [":config_change_proto"],
  333. )
  334. go_proto_library(
  335. name = "distribution_go_proto",
  336. importpath = "google.golang.org/genproto/googleapis/api/distribution",
  337. protos = [":distribution_proto"],
  338. )
  339. go_proto_library(
  340. name = "field_behavior_go_proto",
  341. importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations",
  342. protos = [":field_behavior_proto"],
  343. )
  344. go_proto_library(
  345. name = "httpbody_go_proto",
  346. importpath = "google.golang.org/genproto/googleapis/api/httpbody",
  347. protos = [":httpbody_proto"],
  348. )
  349. go_proto_library(
  350. name = "label_go_proto",
  351. importpath = "google.golang.org/genproto/googleapis/api/label",
  352. protos = [":label_proto"],
  353. )
  354. go_proto_library(
  355. name = "api_go_proto",
  356. importpath = "google.golang.org/genproto/googleapis/api",
  357. protos = [
  358. ":launch_stage_proto",
  359. ],
  360. )
  361. go_proto_library(
  362. name = "metric_go_proto",
  363. importpath = "google.golang.org/genproto/googleapis/api/metric",
  364. protos = [":metric_proto"],
  365. deps = [
  366. ":api_go_proto",
  367. ":label_go_proto",
  368. ],
  369. )
  370. go_proto_library(
  371. name = "monitoredres_go_proto",
  372. importpath = "google.golang.org/genproto/googleapis/api/monitoredres",
  373. protos = [":monitored_resource_proto"],
  374. deps = [
  375. ":api_go_proto",
  376. ":label_go_proto",
  377. ],
  378. )
  379. go_proto_library(
  380. name = "resource_go_proto",
  381. importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations",
  382. protos = [":resource_proto"],
  383. )
  384. go_proto_library(
  385. name = "routing_go_proto",
  386. importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations",
  387. protos = [":routing_proto"],
  388. )
  389. go_proto_library(
  390. name = "serviceconfig_go_proto",
  391. importpath = "google.golang.org/genproto/googleapis/api/serviceconfig",
  392. protos = [
  393. ":auth_proto",
  394. ":backend_proto",
  395. ":billing_proto",
  396. ":context_proto",
  397. ":control_proto",
  398. ":documentation_proto",
  399. ":endpoint_proto",
  400. ":log_proto",
  401. ":logging_proto",
  402. ":monitoring_proto",
  403. ":quota_proto",
  404. ":service_proto",
  405. ":source_info_proto",
  406. ":system_parameter_proto",
  407. ":usage_proto",
  408. ],
  409. deps = [
  410. ":annotations_go_proto",
  411. ":api_go_proto",
  412. ":label_go_proto",
  413. ":metric_go_proto",
  414. ":monitoredres_go_proto",
  415. ],
  416. )
  417. go_proto_library(
  418. name = "visibility_go_proto",
  419. importpath = "google.golang.org/genproto/googleapis/api/visibility;visibility",
  420. protos = [":visibility_proto"],
  421. )
  422. ##############################################################################
  423. # C++
  424. ##############################################################################
  425. load("@com_google_googleapis_imports//:imports.bzl", "cc_proto_library")
  426. cc_proto_library(
  427. name = "annotations_cc_proto",
  428. deps = [":annotations_proto"],
  429. )
  430. cc_proto_library(
  431. name = "auth_cc_proto",
  432. deps = [":auth_proto"],
  433. )
  434. cc_proto_library(
  435. name = "backend_cc_proto",
  436. deps = [":backend_proto"],
  437. )
  438. cc_proto_library(
  439. name = "billing_cc_proto",
  440. deps = [":billing_proto"],
  441. )
  442. cc_proto_library(
  443. name = "client_cc_proto",
  444. deps = [":client_proto"],
  445. )
  446. cc_proto_library(
  447. name = "config_change_cc_proto",
  448. deps = [":config_change_proto"],
  449. )
  450. cc_proto_library(
  451. name = "consumer_cc_proto",
  452. deps = [":consumer_proto"],
  453. )
  454. cc_proto_library(
  455. name = "context_cc_proto",
  456. deps = [":context_proto"],
  457. )
  458. cc_proto_library(
  459. name = "control_cc_proto",
  460. deps = [":control_proto"],
  461. )
  462. cc_proto_library(
  463. name = "distribution_cc_proto",
  464. deps = [":distribution_proto"],
  465. )
  466. cc_proto_library(
  467. name = "documentation_cc_proto",
  468. deps = [":documentation_proto"],
  469. )
  470. cc_proto_library(
  471. name = "endpoint_cc_proto",
  472. deps = [":endpoint_proto"],
  473. )
  474. cc_proto_library(
  475. name = "field_behavior_cc_proto",
  476. deps = [":field_behavior_proto"],
  477. )
  478. cc_proto_library(
  479. name = "http_cc_proto",
  480. deps = [":http_proto"],
  481. )
  482. cc_proto_library(
  483. name = "httpbody_cc_proto",
  484. deps = [":httpbody_proto"],
  485. )
  486. cc_proto_library(
  487. name = "label_cc_proto",
  488. deps = [":label_proto"],
  489. )
  490. cc_proto_library(
  491. name = "launch_stage_cc_proto",
  492. deps = [":launch_stage_proto"],
  493. )
  494. cc_proto_library(
  495. name = "log_cc_proto",
  496. deps = [":log_proto"],
  497. )
  498. cc_proto_library(
  499. name = "logging_cc_proto",
  500. deps = [":logging_proto"],
  501. )
  502. cc_proto_library(
  503. name = "metric_cc_proto",
  504. deps = [":metric_proto"],
  505. )
  506. cc_proto_library(
  507. name = "monitored_resource_cc_proto",
  508. deps = [":monitored_resource_proto"],
  509. )
  510. cc_proto_library(
  511. name = "monitoring_cc_proto",
  512. deps = ["monitoring_proto"],
  513. )
  514. cc_proto_library(
  515. name = "quota_cc_proto",
  516. deps = ["quota_proto"],
  517. )
  518. cc_proto_library(
  519. name = "resource_cc_proto",
  520. deps = [":resource_proto"],
  521. )
  522. cc_proto_library(
  523. name = "routing_cc_proto",
  524. deps = [":routing_proto"],
  525. )
  526. cc_proto_library(
  527. name = "service_cc_proto",
  528. deps = [":service_proto"],
  529. )
  530. cc_proto_library(
  531. name = "source_info_cc_proto",
  532. deps = [":source_info_proto"],
  533. )
  534. cc_proto_library(
  535. name = "system_parameter_cc_proto",
  536. deps = [":system_parameter_proto"],
  537. )
  538. cc_proto_library(
  539. name = "usage_cc_proto",
  540. deps = [":usage_proto"],
  541. )
  542. cc_proto_library(
  543. name = "visibility_cc_proto",
  544. deps = [":visibility_proto"],
  545. )
  546. ##############################################################################
  547. # Python
  548. ##############################################################################
  549. load("@com_google_googleapis_imports//:imports.bzl", "py_proto_library")
  550. py_proto_library(
  551. name = "annotations_py_proto",
  552. deps = [":annotations_proto"],
  553. )
  554. py_proto_library(
  555. name = "auth_py_proto",
  556. deps = [":auth_proto"],
  557. )
  558. py_proto_library(
  559. name = "backend_py_proto",
  560. deps = [":backend_proto"],
  561. )
  562. py_proto_library(
  563. name = "billing_py_proto",
  564. deps = [":billing_proto"],
  565. )
  566. py_proto_library(
  567. name = "client_py_proto",
  568. deps = [":client_proto"],
  569. )
  570. py_proto_library(
  571. name = "config_change_py_proto",
  572. deps = [":config_change_proto"],
  573. )
  574. py_proto_library(
  575. name = "consumer_py_proto",
  576. deps = [":consumer_proto"],
  577. )
  578. py_proto_library(
  579. name = "context_py_proto",
  580. deps = [":context_proto"],
  581. )
  582. py_proto_library(
  583. name = "control_py_proto",
  584. deps = [":control_proto"],
  585. )
  586. py_proto_library(
  587. name = "distribution_py_proto",
  588. deps = [":distribution_proto"],
  589. )
  590. py_proto_library(
  591. name = "documentation_py_proto",
  592. deps = [":documentation_proto"],
  593. )
  594. py_proto_library(
  595. name = "endpoint_py_proto",
  596. deps = [":endpoint_proto"],
  597. )
  598. py_proto_library(
  599. name = "field_behavior_py_proto",
  600. deps = [":field_behavior_proto"],
  601. )
  602. py_proto_library(
  603. name = "http_py_proto",
  604. deps = [":http_proto"],
  605. )
  606. py_proto_library(
  607. name = "httpbody_py_proto",
  608. deps = [":httpbody_proto"],
  609. )
  610. py_proto_library(
  611. name = "label_py_proto",
  612. deps = [":label_proto"],
  613. )
  614. py_proto_library(
  615. name = "launch_stage_py_proto",
  616. deps = [":launch_stage_proto"],
  617. )
  618. py_proto_library(
  619. name = "log_py_proto",
  620. deps = [":log_proto"],
  621. )
  622. py_proto_library(
  623. name = "logging_py_proto",
  624. deps = [":logging_proto"],
  625. )
  626. py_proto_library(
  627. name = "metric_py_proto",
  628. deps = [":metric_proto"],
  629. )
  630. py_proto_library(
  631. name = "monitored_resource_py_proto",
  632. deps = [":monitored_resource_proto"],
  633. )
  634. py_proto_library(
  635. name = "monitoring_py_proto",
  636. deps = ["monitoring_proto"],
  637. )
  638. py_proto_library(
  639. name = "quota_py_proto",
  640. deps = ["quota_proto"],
  641. )
  642. py_proto_library(
  643. name = "resource_py_proto",
  644. deps = [":resource_proto"],
  645. )
  646. py_proto_library(
  647. name = "routing_py_proto",
  648. deps = [":routing_proto"],
  649. )
  650. py_proto_library(
  651. name = "service_py_proto",
  652. deps = [":service_proto"],
  653. )
  654. py_proto_library(
  655. name = "source_info_py_proto",
  656. deps = [":source_info_proto"],
  657. )
  658. py_proto_library(
  659. name = "system_parameter_py_proto",
  660. deps = [":system_parameter_proto"],
  661. )
  662. py_proto_library(
  663. name = "usage_py_proto",
  664. deps = [":usage_proto"],
  665. )
  666. py_proto_library(
  667. name = "visibility_py_proto",
  668. deps = ["visibility_proto"],
  669. )