google-api-client 0.45.0 → 0.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (542) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/autoapprove.yml +49 -0
  3. data/.github/workflows/release-please.yml +77 -0
  4. data/.gitignore +2 -0
  5. data/.kokoro/trampoline.sh +0 -0
  6. data/CHANGELOG.md +664 -188
  7. data/Gemfile +1 -0
  8. data/Rakefile +31 -3
  9. data/api_list_config.yaml +8 -0
  10. data/bin/generate-api +77 -15
  11. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +7 -9
  12. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +2 -2
  13. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +1 -1
  14. data/generated/google/apis/accessapproval_v1/classes.rb +23 -16
  15. data/generated/google/apis/accessapproval_v1/service.rb +27 -27
  16. data/generated/google/apis/accessapproval_v1.rb +1 -1
  17. data/generated/google/apis/accesscontextmanager_v1/classes.rb +68 -0
  18. data/generated/google/apis/accesscontextmanager_v1/representations.rb +30 -0
  19. data/generated/google/apis/accesscontextmanager_v1/service.rb +180 -0
  20. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  21. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  22. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  23. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -0
  24. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +15 -0
  25. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  26. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  29. data/generated/google/apis/admin_directory_v1.rb +1 -1
  30. data/generated/google/apis/admin_reports_v1.rb +1 -1
  31. data/generated/google/apis/admob_v1/classes.rb +29 -29
  32. data/generated/google/apis/admob_v1/service.rb +2 -1
  33. data/generated/google/apis/admob_v1.rb +3 -2
  34. data/generated/google/apis/adsense_v1_4/service.rb +4 -1
  35. data/generated/google/apis/adsense_v1_4.rb +1 -1
  36. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +1361 -0
  37. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +610 -0
  38. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +2134 -0
  39. data/generated/google/apis/analyticsadmin_v1alpha.rb +43 -0
  40. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +56 -11
  41. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +17 -0
  42. data/generated/google/apis/analyticsdata_v1alpha/service.rb +41 -0
  43. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  44. data/generated/google/apis/androidmanagement_v1/classes.rb +29 -26
  45. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  46. data/generated/google/apis/androidpublisher_v3/classes.rb +9 -1
  47. data/generated/google/apis/androidpublisher_v3/representations.rb +1 -0
  48. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  49. data/generated/google/apis/apigee_v1/classes.rb +252 -66
  50. data/generated/google/apis/apigee_v1/representations.rb +88 -19
  51. data/generated/google/apis/apigee_v1/service.rb +244 -38
  52. data/generated/google/apis/apigee_v1.rb +1 -1
  53. data/generated/google/apis/appsmarket_v2.rb +1 -1
  54. data/generated/google/apis/area120tables_v1alpha1/classes.rb +423 -0
  55. data/generated/google/apis/{apigateway_v1alpha1 → area120tables_v1alpha1}/representations.rb +67 -69
  56. data/generated/google/apis/area120tables_v1alpha1/service.rb +381 -0
  57. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  58. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +7 -0
  59. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  60. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  61. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +264 -0
  62. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +129 -0
  63. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  64. data/generated/google/apis/bigquery_v2/classes.rb +212 -23
  65. data/generated/google/apis/bigquery_v2/representations.rb +69 -0
  66. data/generated/google/apis/bigquery_v2/service.rb +47 -1
  67. data/generated/google/apis/bigquery_v2.rb +1 -1
  68. data/generated/google/apis/billingbudgets_v1/classes.rb +373 -0
  69. data/generated/google/apis/billingbudgets_v1/representations.rb +171 -0
  70. data/generated/google/apis/billingbudgets_v1/service.rb +249 -0
  71. data/generated/google/apis/billingbudgets_v1.rb +38 -0
  72. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +12 -1
  73. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  74. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  75. data/generated/google/apis/binaryauthorization_v1/classes.rb +189 -2
  76. data/generated/google/apis/binaryauthorization_v1/representations.rb +74 -0
  77. data/generated/google/apis/binaryauthorization_v1/service.rb +35 -0
  78. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  79. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +189 -2
  80. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +74 -0
  81. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +35 -0
  82. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  83. data/generated/google/apis/books_v1/service.rb +54 -54
  84. data/generated/google/apis/books_v1.rb +1 -1
  85. data/generated/google/apis/calendar_v3/classes.rb +2 -1
  86. data/generated/google/apis/calendar_v3.rb +1 -1
  87. data/generated/google/apis/chat_v1/classes.rb +84 -2
  88. data/generated/google/apis/chat_v1/representations.rb +36 -0
  89. data/generated/google/apis/chat_v1.rb +1 -1
  90. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  91. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  92. data/generated/google/apis/civicinfo_v2.rb +1 -1
  93. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  94. data/generated/google/apis/classroom_v1.rb +1 -1
  95. data/generated/google/apis/cloudasset_v1/classes.rb +697 -0
  96. data/generated/google/apis/cloudasset_v1/representations.rb +304 -0
  97. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  98. data/generated/google/apis/cloudasset_v1.rb +1 -1
  99. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +3 -3
  100. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  101. data/generated/google/apis/cloudbilling_v1/classes.rb +1 -1
  102. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  103. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -35
  104. data/generated/google/apis/cloudbuild_v1/representations.rb +0 -15
  105. data/generated/google/apis/cloudbuild_v1/service.rb +17 -6
  106. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  107. data/generated/google/apis/cloudfunctions_v1/classes.rb +12 -1
  108. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  109. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  110. data/generated/google/apis/cloudidentity_v1/classes.rb +78 -98
  111. data/generated/google/apis/cloudidentity_v1/representations.rb +0 -17
  112. data/generated/google/apis/cloudidentity_v1/service.rb +85 -69
  113. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  114. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +188 -0
  115. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +94 -0
  116. data/generated/google/apis/cloudidentity_v1beta1/service.rb +179 -0
  117. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  118. data/generated/google/apis/cloudresourcemanager_v1/service.rb +2 -2
  119. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  120. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +2 -2
  121. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  122. data/generated/google/apis/cloudresourcemanager_v2/service.rb +7 -7
  123. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  124. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +7 -7
  125. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  126. data/generated/google/apis/cloudsearch_v1/classes.rb +2 -1
  127. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  128. data/generated/google/apis/cloudshell_v1/classes.rb +342 -0
  129. data/generated/google/apis/cloudshell_v1/representations.rb +200 -0
  130. data/generated/google/apis/cloudshell_v1/service.rb +177 -0
  131. data/generated/google/apis/cloudshell_v1.rb +1 -1
  132. data/generated/google/apis/composer_v1/classes.rb +2 -3
  133. data/generated/google/apis/composer_v1.rb +1 -1
  134. data/generated/google/apis/composer_v1beta1/classes.rb +4 -4
  135. data/generated/google/apis/composer_v1beta1/service.rb +37 -35
  136. data/generated/google/apis/composer_v1beta1.rb +1 -1
  137. data/generated/google/apis/compute_alpha/classes.rb +633 -146
  138. data/generated/google/apis/compute_alpha/representations.rb +131 -8
  139. data/generated/google/apis/compute_alpha/service.rb +1995 -1013
  140. data/generated/google/apis/compute_alpha.rb +1 -1
  141. data/generated/google/apis/compute_beta/classes.rb +566 -94
  142. data/generated/google/apis/compute_beta/representations.rb +100 -1
  143. data/generated/google/apis/compute_beta/service.rb +805 -136
  144. data/generated/google/apis/compute_beta.rb +1 -1
  145. data/generated/google/apis/compute_v1/classes.rb +586 -72
  146. data/generated/google/apis/compute_v1/representations.rb +98 -1
  147. data/generated/google/apis/compute_v1/service.rb +741 -133
  148. data/generated/google/apis/compute_v1.rb +1 -1
  149. data/generated/google/apis/container_v1/classes.rb +22 -10
  150. data/generated/google/apis/container_v1.rb +1 -1
  151. data/generated/google/apis/container_v1beta1/classes.rb +22 -10
  152. data/generated/google/apis/container_v1beta1.rb +1 -1
  153. data/generated/google/apis/content_v2/classes.rb +510 -1217
  154. data/generated/google/apis/content_v2/service.rb +377 -650
  155. data/generated/google/apis/content_v2.rb +3 -4
  156. data/generated/google/apis/content_v2_1/classes.rb +1001 -1053
  157. data/generated/google/apis/content_v2_1/representations.rb +253 -0
  158. data/generated/google/apis/content_v2_1/service.rb +943 -802
  159. data/generated/google/apis/content_v2_1.rb +3 -4
  160. data/generated/google/apis/datacatalog_v1beta1/classes.rb +25 -1
  161. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -0
  162. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  163. data/generated/google/apis/dataflow_v1b3/classes.rb +32 -8
  164. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  165. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  166. data/generated/google/apis/datafusion_v1.rb +1 -1
  167. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  168. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  169. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  170. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  171. data/generated/google/apis/dataproc_v1/classes.rb +41 -3
  172. data/generated/google/apis/dataproc_v1/representations.rb +16 -0
  173. data/generated/google/apis/dataproc_v1.rb +1 -1
  174. data/generated/google/apis/dataproc_v1beta2/classes.rb +41 -3
  175. data/generated/google/apis/dataproc_v1beta2/representations.rb +16 -0
  176. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  177. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  178. data/generated/google/apis/datastore_v1.rb +1 -1
  179. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  180. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  181. data/generated/google/apis/deploymentmanager_v2/classes.rb +203 -558
  182. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -132
  183. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  184. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  185. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +247 -609
  186. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -132
  187. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  188. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  189. data/generated/google/apis/dfareporting_v3_3/classes.rb +0 -164
  190. data/generated/google/apis/dfareporting_v3_3/representations.rb +0 -42
  191. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  192. data/generated/google/apis/dfareporting_v3_4/classes.rb +0 -164
  193. data/generated/google/apis/dfareporting_v3_4/representations.rb +0 -42
  194. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  195. data/generated/google/apis/dialogflow_v2/classes.rb +677 -204
  196. data/generated/google/apis/dialogflow_v2/representations.rb +300 -87
  197. data/generated/google/apis/dialogflow_v2.rb +1 -1
  198. data/generated/google/apis/dialogflow_v2beta1/classes.rb +684 -212
  199. data/generated/google/apis/dialogflow_v2beta1/representations.rb +300 -87
  200. data/generated/google/apis/dialogflow_v2beta1/service.rb +62 -12
  201. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  202. data/generated/google/apis/dialogflow_v3beta1/classes.rb +813 -207
  203. data/generated/google/apis/dialogflow_v3beta1/representations.rb +354 -90
  204. data/generated/google/apis/dialogflow_v3beta1/service.rb +22 -9
  205. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  206. data/generated/google/apis/displayvideo_v1/classes.rb +216 -30
  207. data/generated/google/apis/displayvideo_v1/representations.rb +78 -0
  208. data/generated/google/apis/displayvideo_v1/service.rb +261 -18
  209. data/generated/google/apis/displayvideo_v1.rb +1 -1
  210. data/generated/google/apis/dlp_v2/classes.rb +59 -32
  211. data/generated/google/apis/dlp_v2/representations.rb +16 -0
  212. data/generated/google/apis/dlp_v2/service.rb +328 -328
  213. data/generated/google/apis/dlp_v2.rb +1 -1
  214. data/generated/google/apis/dns_v1/classes.rb +181 -0
  215. data/generated/google/apis/dns_v1/representations.rb +83 -0
  216. data/generated/google/apis/dns_v1/service.rb +11 -11
  217. data/generated/google/apis/dns_v1.rb +2 -2
  218. data/generated/google/apis/dns_v1beta2/classes.rb +182 -1
  219. data/generated/google/apis/dns_v1beta2/representations.rb +83 -0
  220. data/generated/google/apis/dns_v1beta2/service.rb +11 -11
  221. data/generated/google/apis/dns_v1beta2.rb +2 -2
  222. data/generated/google/apis/documentai_v1beta3/classes.rb +6149 -0
  223. data/generated/google/apis/documentai_v1beta3/representations.rb +2666 -0
  224. data/generated/google/apis/documentai_v1beta3/service.rb +263 -0
  225. data/generated/google/apis/documentai_v1beta3.rb +36 -0
  226. data/generated/google/apis/domains_v1alpha2/classes.rb +1540 -0
  227. data/generated/google/apis/domains_v1alpha2/representations.rb +606 -0
  228. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  229. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  230. data/generated/google/apis/domains_v1beta1/classes.rb +1540 -0
  231. data/generated/google/apis/domains_v1beta1/representations.rb +606 -0
  232. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  233. data/generated/google/apis/domains_v1beta1.rb +34 -0
  234. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +2 -1
  235. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  236. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +4 -3
  237. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  238. data/generated/google/apis/drive_v2/classes.rb +4 -1
  239. data/generated/google/apis/drive_v2.rb +1 -1
  240. data/generated/google/apis/drive_v3/classes.rb +4 -2
  241. data/generated/google/apis/drive_v3.rb +1 -1
  242. data/generated/google/apis/{apigateway_v1alpha1 → eventarc_v1beta1}/classes.rb +327 -29
  243. data/generated/google/apis/eventarc_v1beta1/representations.rb +379 -0
  244. data/generated/google/apis/{apigateway_v1alpha1 → eventarc_v1beta1}/service.rb +224 -268
  245. data/generated/google/apis/{apigateway_v1alpha1.rb → eventarc_v1beta1.rb} +8 -8
  246. data/generated/google/apis/file_v1/classes.rb +1 -1
  247. data/generated/google/apis/file_v1.rb +1 -1
  248. data/generated/google/apis/file_v1beta1/classes.rb +1 -1
  249. data/generated/google/apis/file_v1beta1.rb +1 -1
  250. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  251. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  252. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  253. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  254. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  255. data/generated/google/apis/firestore_v1.rb +1 -1
  256. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  257. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  258. data/generated/google/apis/fitness_v1/service.rb +3 -1
  259. data/generated/google/apis/fitness_v1.rb +13 -1
  260. data/generated/google/apis/games_v1/classes.rb +300 -0
  261. data/generated/google/apis/games_v1/representations.rb +116 -0
  262. data/generated/google/apis/games_v1/service.rb +34 -0
  263. data/generated/google/apis/games_v1.rb +1 -1
  264. data/generated/google/apis/gameservices_v1/classes.rb +15 -14
  265. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  266. data/generated/google/apis/gameservices_v1.rb +1 -1
  267. data/generated/google/apis/gameservices_v1beta/classes.rb +15 -14
  268. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  269. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  270. data/generated/google/apis/genomics_v2alpha1/classes.rb +104 -0
  271. data/generated/google/apis/genomics_v2alpha1/representations.rb +47 -0
  272. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  273. data/generated/google/apis/gmail_v1/service.rb +1 -1
  274. data/generated/google/apis/gmail_v1.rb +1 -1
  275. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  276. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  277. data/generated/google/apis/healthcare_v1/classes.rb +7 -5
  278. data/generated/google/apis/healthcare_v1/service.rb +2 -1
  279. data/generated/google/apis/healthcare_v1.rb +1 -1
  280. data/generated/google/apis/healthcare_v1beta1/classes.rb +1190 -285
  281. data/generated/google/apis/healthcare_v1beta1/representations.rb +516 -68
  282. data/generated/google/apis/healthcare_v1beta1/service.rb +1500 -228
  283. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  284. data/generated/google/apis/iam_v1/service.rb +1 -4
  285. data/generated/google/apis/iam_v1.rb +2 -5
  286. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  287. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  288. data/generated/google/apis/jobs_v2/classes.rb +798 -0
  289. data/generated/google/apis/jobs_v2/representations.rb +272 -0
  290. data/generated/google/apis/jobs_v2.rb +1 -1
  291. data/generated/google/apis/jobs_v3/classes.rb +798 -0
  292. data/generated/google/apis/jobs_v3/representations.rb +272 -0
  293. data/generated/google/apis/jobs_v3.rb +1 -1
  294. data/generated/google/apis/jobs_v3p1beta1/classes.rb +759 -0
  295. data/generated/google/apis/jobs_v3p1beta1/representations.rb +257 -0
  296. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  297. data/generated/google/apis/licensing_v1/service.rb +2 -2
  298. data/generated/google/apis/licensing_v1.rb +1 -1
  299. data/generated/google/apis/lifesciences_v2beta/classes.rb +104 -0
  300. data/generated/google/apis/lifesciences_v2beta/representations.rb +47 -0
  301. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  302. data/generated/google/apis/localservices_v1/classes.rb +7 -0
  303. data/generated/google/apis/localservices_v1/representations.rb +2 -0
  304. data/generated/google/apis/localservices_v1/service.rb +20 -20
  305. data/generated/google/apis/localservices_v1.rb +1 -1
  306. data/generated/google/apis/logging_v2/classes.rb +174 -60
  307. data/generated/google/apis/logging_v2/representations.rb +64 -0
  308. data/generated/google/apis/logging_v2/service.rb +1422 -127
  309. data/generated/google/apis/logging_v2.rb +1 -1
  310. data/generated/google/apis/managedidentities_v1/classes.rb +8 -1
  311. data/generated/google/apis/managedidentities_v1/representations.rb +1 -0
  312. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  313. data/generated/google/apis/managedidentities_v1.rb +1 -1
  314. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +87 -9
  315. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +34 -1
  316. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  317. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  318. data/generated/google/apis/managedidentities_v1beta1/classes.rb +88 -9
  319. data/generated/google/apis/managedidentities_v1beta1/representations.rb +34 -1
  320. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  321. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  322. data/generated/google/apis/memcache_v1beta2/classes.rb +1 -1
  323. data/generated/google/apis/memcache_v1beta2/service.rb +5 -5
  324. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  325. data/generated/google/apis/ml_v1/classes.rb +238 -77
  326. data/generated/google/apis/ml_v1/representations.rb +17 -0
  327. data/generated/google/apis/ml_v1.rb +1 -1
  328. data/generated/google/apis/monitoring_v3/classes.rb +71 -17
  329. data/generated/google/apis/monitoring_v3/representations.rb +18 -0
  330. data/generated/google/apis/monitoring_v3/service.rb +55 -6
  331. data/generated/google/apis/monitoring_v3.rb +1 -1
  332. data/generated/google/apis/oauth2_v2/classes.rb +165 -0
  333. data/generated/google/apis/oauth2_v2/representations.rb +68 -0
  334. data/generated/google/apis/oauth2_v2/service.rb +158 -0
  335. data/generated/google/apis/oauth2_v2.rb +40 -0
  336. data/generated/google/apis/osconfig_v1/service.rb +4 -4
  337. data/generated/google/apis/osconfig_v1.rb +3 -3
  338. data/generated/google/apis/osconfig_v1beta/service.rb +4 -4
  339. data/generated/google/apis/osconfig_v1beta.rb +3 -3
  340. data/generated/google/apis/oslogin_v1alpha/classes.rb +2 -2
  341. data/generated/google/apis/oslogin_v1alpha/service.rb +13 -13
  342. data/generated/google/apis/oslogin_v1alpha.rb +1 -1
  343. data/generated/google/apis/people_v1/classes.rb +52 -51
  344. data/generated/google/apis/people_v1/service.rb +24 -22
  345. data/generated/google/apis/people_v1.rb +1 -1
  346. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  347. data/generated/google/apis/playablelocations_v3.rb +1 -1
  348. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  349. data/generated/google/apis/poly_v1/classes.rb +65 -79
  350. data/generated/google/apis/poly_v1/service.rb +50 -63
  351. data/generated/google/apis/poly_v1.rb +3 -4
  352. data/generated/google/apis/privateca_v1beta1/classes.rb +2466 -0
  353. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  354. data/generated/google/apis/privateca_v1beta1/service.rb +1487 -0
  355. data/generated/google/apis/{appsactivity_v1.rb → privateca_v1beta1.rb} +11 -11
  356. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  357. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  358. data/generated/google/apis/pubsub_v1/service.rb +2 -2
  359. data/generated/google/apis/pubsub_v1.rb +1 -1
  360. data/generated/google/apis/pubsublite_v1/classes.rb +2 -2
  361. data/generated/google/apis/pubsublite_v1.rb +1 -1
  362. data/generated/google/apis/realtimebidding_v1/classes.rb +84 -123
  363. data/generated/google/apis/realtimebidding_v1/representations.rb +18 -32
  364. data/generated/google/apis/realtimebidding_v1/service.rb +4 -1
  365. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  366. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  367. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  368. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  369. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  370. data/generated/google/apis/recommender_v1/service.rb +4 -2
  371. data/generated/google/apis/recommender_v1.rb +1 -1
  372. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  373. data/generated/google/apis/recommender_v1beta1/service.rb +4 -2
  374. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  375. data/generated/google/apis/redis_v1/classes.rb +5 -5
  376. data/generated/google/apis/redis_v1/service.rb +2 -2
  377. data/generated/google/apis/redis_v1.rb +1 -1
  378. data/generated/google/apis/redis_v1beta1/classes.rb +33 -5
  379. data/generated/google/apis/redis_v1beta1/representations.rb +14 -0
  380. data/generated/google/apis/redis_v1beta1/service.rb +36 -2
  381. data/generated/google/apis/redis_v1beta1.rb +1 -1
  382. data/generated/google/apis/remotebuildexecution_v1/classes.rb +6 -0
  383. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -0
  384. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  385. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +6 -0
  386. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -0
  387. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  388. data/generated/google/apis/remotebuildexecution_v2/classes.rb +6 -0
  389. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -0
  390. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  391. data/generated/google/apis/run_v1/classes.rb +12 -132
  392. data/generated/google/apis/run_v1/representations.rb +0 -61
  393. data/generated/google/apis/run_v1/service.rb +0 -342
  394. data/generated/google/apis/run_v1.rb +1 -1
  395. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +1 -2
  396. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  397. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  398. data/generated/google/apis/sasportal_v1alpha1/service.rb +109 -0
  399. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  400. data/generated/google/apis/searchconsole_v1/classes.rb +388 -0
  401. data/generated/google/apis/searchconsole_v1/representations.rb +162 -0
  402. data/generated/google/apis/searchconsole_v1/service.rb +287 -0
  403. data/generated/google/apis/searchconsole_v1.rb +7 -1
  404. data/generated/google/apis/secretmanager_v1/classes.rb +1 -2
  405. data/generated/google/apis/secretmanager_v1.rb +1 -1
  406. data/generated/google/apis/secretmanager_v1beta1/classes.rb +1 -2
  407. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  408. data/generated/google/apis/securitycenter_v1/classes.rb +5 -199
  409. data/generated/google/apis/securitycenter_v1/representations.rb +0 -72
  410. data/generated/google/apis/securitycenter_v1.rb +1 -1
  411. data/generated/google/apis/securitycenter_v1beta1/classes.rb +2 -196
  412. data/generated/google/apis/securitycenter_v1beta1/representations.rb +0 -72
  413. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  414. data/generated/google/apis/securitycenter_v1beta2/classes.rb +2 -196
  415. data/generated/google/apis/securitycenter_v1beta2/representations.rb +0 -72
  416. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  417. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +5 -63
  418. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  419. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +1 -1
  420. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  421. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +5 -63
  422. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  423. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  424. data/generated/google/apis/servicecontrol_v1/classes.rb +78 -4
  425. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  426. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  427. data/generated/google/apis/servicecontrol_v2/classes.rb +63 -2
  428. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  429. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  430. data/generated/google/apis/servicemanagement_v1/classes.rb +5 -85
  431. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -31
  432. data/generated/google/apis/servicemanagement_v1/service.rb +0 -36
  433. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  434. data/generated/google/apis/servicenetworking_v1/classes.rb +185 -64
  435. data/generated/google/apis/servicenetworking_v1/representations.rb +63 -14
  436. data/generated/google/apis/servicenetworking_v1/service.rb +2 -2
  437. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  438. data/generated/google/apis/servicenetworking_v1beta/classes.rb +139 -64
  439. data/generated/google/apis/servicenetworking_v1beta/representations.rb +46 -14
  440. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  441. data/generated/google/apis/serviceusage_v1/classes.rb +5 -63
  442. data/generated/google/apis/serviceusage_v1/representations.rb +0 -18
  443. data/generated/google/apis/serviceusage_v1.rb +1 -1
  444. data/generated/google/apis/serviceusage_v1beta1/classes.rb +35 -63
  445. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -18
  446. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  447. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  448. data/generated/google/apis/sheets_v4/classes.rb +174 -84
  449. data/generated/google/apis/sheets_v4.rb +1 -1
  450. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +273 -0
  451. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +157 -0
  452. data/generated/google/apis/smartdevicemanagement_v1/service.rb +304 -0
  453. data/generated/google/apis/smartdevicemanagement_v1.rb +35 -0
  454. data/generated/google/apis/sourcerepo_v1/classes.rb +250 -400
  455. data/generated/google/apis/sourcerepo_v1/service.rb +40 -49
  456. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  457. data/generated/google/apis/sqladmin_v1beta4/classes.rb +156 -57
  458. data/generated/google/apis/sqladmin_v1beta4/representations.rb +53 -17
  459. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  460. data/generated/google/apis/storage_v1/classes.rb +2 -10
  461. data/generated/google/apis/storage_v1/representations.rb +0 -1
  462. data/generated/google/apis/storage_v1/service.rb +3 -2
  463. data/generated/google/apis/storage_v1.rb +1 -1
  464. data/generated/google/apis/storagetransfer_v1/classes.rb +64 -34
  465. data/generated/google/apis/storagetransfer_v1/representations.rb +13 -0
  466. data/generated/google/apis/storagetransfer_v1/service.rb +22 -20
  467. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  468. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  469. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  470. data/generated/google/apis/sts_v1/classes.rb +10 -9
  471. data/generated/google/apis/sts_v1.rb +1 -1
  472. data/generated/google/apis/sts_v1beta/classes.rb +67 -67
  473. data/generated/google/apis/sts_v1beta/service.rb +2 -2
  474. data/generated/google/apis/sts_v1beta.rb +1 -1
  475. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  476. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  477. data/generated/google/apis/tagmanager_v2.rb +1 -1
  478. data/generated/google/apis/testing_v1/classes.rb +92 -33
  479. data/generated/google/apis/testing_v1/representations.rb +21 -0
  480. data/generated/google/apis/testing_v1/service.rb +4 -4
  481. data/generated/google/apis/testing_v1.rb +1 -1
  482. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  483. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  484. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  485. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  486. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  487. data/generated/google/apis/tpu_v1/service.rb +8 -8
  488. data/generated/google/apis/tpu_v1.rb +1 -1
  489. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  490. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  491. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  492. data/generated/google/apis/translate_v3/classes.rb +4 -3
  493. data/generated/google/apis/translate_v3.rb +1 -1
  494. data/generated/google/apis/translate_v3beta1/classes.rb +2 -1
  495. data/generated/google/apis/translate_v3beta1.rb +1 -1
  496. data/generated/google/apis/vault_v1/classes.rb +333 -0
  497. data/generated/google/apis/vault_v1/representations.rb +162 -0
  498. data/generated/google/apis/vault_v1/service.rb +151 -0
  499. data/generated/google/apis/vault_v1.rb +1 -1
  500. data/generated/google/apis/videointelligence_v1/classes.rb +751 -28
  501. data/generated/google/apis/videointelligence_v1/representations.rb +402 -2
  502. data/generated/google/apis/videointelligence_v1/service.rb +0 -62
  503. data/generated/google/apis/videointelligence_v1.rb +1 -1
  504. data/generated/google/apis/videointelligence_v1beta2/classes.rb +751 -28
  505. data/generated/google/apis/videointelligence_v1beta2/representations.rb +402 -2
  506. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  507. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +749 -26
  508. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +402 -2
  509. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  510. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +734 -11
  511. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +402 -2
  512. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  513. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +667 -28
  514. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +368 -2
  515. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  516. data/generated/google/apis/vision_v1/classes.rb +16 -16
  517. data/generated/google/apis/vision_v1.rb +1 -1
  518. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  519. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  520. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  521. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  522. data/generated/google/apis/websecurityscanner_v1.rb +1 -1
  523. data/generated/google/apis/websecurityscanner_v1beta.rb +1 -1
  524. data/generated/google/apis/workflowexecutions_v1beta/service.rb +1 -1
  525. data/generated/google/apis/workflowexecutions_v1beta.rb +2 -2
  526. data/generated/google/apis/workflows_v1beta/service.rb +2 -1
  527. data/generated/google/apis/workflows_v1beta.rb +3 -2
  528. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  529. data/generated/google/apis/youtube_v3/classes.rb +0 -134
  530. data/generated/google/apis/youtube_v3/representations.rb +0 -55
  531. data/generated/google/apis/youtube_v3/service.rb +1 -1
  532. data/generated/google/apis/youtube_v3.rb +1 -1
  533. data/google-api-client.gemspec +25 -25
  534. data/lib/google/apis/core/api_command.rb +1 -0
  535. data/lib/google/apis/core/http_command.rb +2 -1
  536. data/lib/google/apis/options.rb +8 -5
  537. data/lib/google/apis/version.rb +1 -1
  538. data/synth.py +40 -0
  539. metadata +51 -12
  540. data/generated/google/apis/appsactivity_v1/classes.rb +0 -415
  541. data/generated/google/apis/appsactivity_v1/representations.rb +0 -209
  542. data/generated/google/apis/appsactivity_v1/service.rb +0 -126
data/Gemfile CHANGED
@@ -23,6 +23,7 @@ group :development do
23
23
  gem 'logging', '~> 2.2'
24
24
  gem 'opencensus', '~> 0.4'
25
25
  gem 'httparty'
26
+ gem 'gems', '~> 1.2'
26
27
  end
27
28
 
28
29
  platforms :jruby do
data/Rakefile CHANGED
@@ -79,10 +79,28 @@ namespace :kokoro do
79
79
  end
80
80
 
81
81
  task :release do
82
- # Until code generation process is updated and release-please is set up, just publish docs
83
- require_relative "rakelib/devsite/devsite_builder.rb"
82
+ Rake::Task["kokoro:publish_gem"].invoke
83
+ Rake::Task["kokoro:publish_docs"].invoke
84
+ end
85
+
86
+ task :publish_gem do
87
+ require "gems"
88
+
89
+ load_env_vars if ENV["KOKORO_GFILE_DIR"]
90
+ api_token = ENV["RUBYGEMS_API_TOKEN"]
91
+ if api_token
92
+ ::Gems.configure do |config|
93
+ config.key = api_token
94
+ end
95
+ end
96
+
97
+ rm_rf "pkg"
98
+ Rake::Task["build"].invoke
99
+ built_gem_path = Dir.glob("pkg/google-api-client-*.gem").last
84
100
 
85
- DevsiteBuilder.new.publish_if_missing ENV["DOCS_BUILD_TAG"]
101
+ response = ::Gems.push File.new built_gem_path
102
+ puts response
103
+ raise "Failed to release gem" unless response.include? "Successfully registered gem:"
86
104
  end
87
105
 
88
106
  desc "Publish docs for the latest git tag"
@@ -93,6 +111,16 @@ namespace :kokoro do
93
111
  end
94
112
  end
95
113
 
114
+ def load_env_vars
115
+ service_account = "#{ENV['KOKORO_GFILE_DIR']}/service-account.json"
116
+ raise "#{service_account} is not a file" unless File.file? service_account
117
+ ENV["GOOGLE_APPLICATION_CREDENTIALS"] = service_account
118
+ filename = "#{ENV['KOKORO_GFILE_DIR']}/ruby_env_vars.json"
119
+ raise "#{filename} is not a file" unless File.file? filename
120
+ env_vars = JSON.parse File.read(filename)
121
+ env_vars.each { |k, v| ENV[k] ||= v }
122
+ end
123
+
96
124
  def header str, token = "#"
97
125
  line_length = str.length + 8
98
126
  puts
data/api_list_config.yaml CHANGED
@@ -1 +1,9 @@
1
+ include:
2
+ - name: appsmarket
3
+ version: v2
4
+ discovery_rest_url: https://content.googleapis.com/discovery/v1/apis/appsmarket/v2/rest
5
+ - name: youtubePartner
6
+ version: v1
7
+ discovery_rest_url: https://content.googleapis.com/discovery/v1/apis/youtubePartner/v1/rest
1
8
  exclude: []
9
+ pause: []
data/bin/generate-api CHANGED
@@ -28,32 +28,34 @@ module Google
28
28
 
29
29
  desc 'gen OUTDIR', 'Generate ruby API from an API description'
30
30
  method_options url: :array, file: :array, from_discovery: :boolean, preferred_only: :boolean,
31
- verbose: :boolean, names: :string, names_out: :string
31
+ verbose: :boolean, names: :string, names_out: :string, api: :string, clean: :boolean
32
32
  def gen(dir)
33
33
  ensure_active_support
34
34
  require 'google/apis/generator'
35
35
 
36
36
  self.destination_root = dir
37
37
  Google::Apis.logger.level = Logger::DEBUG if options[:verbose]
38
- generate_from_url(options[:url]) if options[:url]
39
- generate_from_file(options[:file]) if options[:file]
40
- generate_from_discovery(preferred_only: options[:preferred_only]) if options[:from_discovery]
41
- create_file(options[:names_out]) { |*| generator.dump_api_names } if options[:names_out]
38
+ count = 0
39
+ count += generate_from_url(options[:url]) if options[:url]
40
+ count += generate_from_file(options[:file]) if options[:file]
41
+ count += generate_specific_apis(options[:api]) if options[:api]
42
+ count += generate_from_discovery(preferred_only: options[:preferred_only]) if options[:from_discovery]
43
+ count += clean_from_discovery if options[:clean]
44
+ create_file(options[:names_out]) { |*| generator.dump_api_names } if count > 0 && options[:names_out]
42
45
  end
43
46
 
44
47
  desc 'list', 'List public APIs'
45
48
  method_options verbose: :boolean, preferred_only: :boolean
46
49
  def list
47
50
  Google::Apis.logger.level = Logger::DEBUG if options[:verbose]
48
- discovery = Discovery::DiscoveryService.new
49
- apis = discovery.list_apis
50
- apis.items.each do |api|
51
+ discovery_api_list.each do |api|
51
52
  say sprintf('%s - %s', api.id, api.description).strip unless options[:preferred_only] && !api.preferred?
52
53
  end
53
54
  end
54
55
 
55
56
  no_commands do
56
- def generate_from_url(urls)
57
+ def generate_from_url(urls, first_only: false)
58
+ count = 0
57
59
  Array(urls).each do |url|
58
60
  begin
59
61
  json = discovery.http(:get, url)
@@ -62,7 +64,10 @@ module Google
62
64
  next
63
65
  end
64
66
  generate_api(json)
67
+ return 1 if first_only
68
+ count += 1
65
69
  end
70
+ count
66
71
  end
67
72
 
68
73
  def generate_from_file(files)
@@ -71,15 +76,38 @@ module Google
71
76
  generate_api(f.read)
72
77
  end
73
78
  end
79
+ Array(files).size
80
+ end
81
+
82
+ def generate_specific_apis(apis)
83
+ discovery_apis = discovery_api_list.each_with_object({}) do |api, hash|
84
+ hash["#{api.name}.#{api.version}"] = api
85
+ end
86
+ paused_apis = Array(api_list_config["pause"])
87
+ count = 0
88
+ Array(apis).each do |name_version|
89
+ api = discovery_apis[name_version]
90
+ if api.nil?
91
+ say "API #{api} is not in the discovery list."
92
+ elsif paused_apis.include? name_version
93
+ say "Ignoring paused API #{api.name} #{api.version}"
94
+ else
95
+ discovery_rest_url = "https://raw.githubusercontent.com/googleapis/discovery-artifact-manager/master/discoveries/#{api.name}.#{api.version}.json"
96
+ say sprintf('Loading %s, version %s from %s', api.name, api.version, discovery_rest_url)
97
+ generate_from_url([discovery_rest_url, api.discovery_rest_url], first_only: true)
98
+ count += 1
99
+ end
100
+ end
101
+ count
74
102
  end
75
103
 
76
104
  def generate_from_discovery(preferred_only: false)
77
105
  say 'Fetching API list'
78
- apis = discovery.list_apis
79
- exclude_apis = api_list_config["exclude"] || []
80
- apis.items.each do |api|
81
- if exclude_apis.include? "#{api.name}.#{api.version}"
82
- say "Ignoring excluded API #{api.name} #{api.version}"
106
+ paused_apis = Array(api_list_config["pause"])
107
+ count = 0
108
+ discovery_api_list.each do |api|
109
+ if paused_apis.include? "#{api.name}.#{api.version}"
110
+ say "Ignoring paused API #{api.name} #{api.version}"
83
111
  elsif (preferred_only && !api.preferred?)
84
112
  say sprintf('Ignoring disoverable API %s', api.id)
85
113
  else
@@ -91,9 +119,27 @@ module Google
91
119
  # by the Discovery index.
92
120
  discovery_rest_url = "https://raw.githubusercontent.com/googleapis/discovery-artifact-manager/master/discoveries/#{api.name}.#{api.version}.json"
93
121
  say sprintf('Loading %s, version %s from %s', api.name, api.version, discovery_rest_url)
94
- generate_from_url(discovery_rest_url)
122
+ generate_from_url([discovery_rest_url, api.discovery_rest_url], first_only: true)
123
+ count += 1
95
124
  end
96
125
  end
126
+ count
127
+ end
128
+
129
+ def clean_from_discovery
130
+ count = 0
131
+ apis = discovery_api_list.map { |api| "#{api.name.underscore}_#{api.version.tr '.', '_'}" }
132
+ Dir.chdir("#{destination_root}/google/apis") do
133
+ Dir.glob("*.rb").each do |filename|
134
+ filename = File.basename(filename, ".rb")
135
+ unless apis.include? filename
136
+ FileUtils.rm_r filename
137
+ FileUtils.rm "#{filename}.rb"
138
+ count += 1
139
+ end
140
+ end
141
+ end
142
+ count
97
143
  end
98
144
 
99
145
  def generate_api(json)
@@ -107,6 +153,20 @@ module Google
107
153
  @discovery ||= Discovery::DiscoveryService.new
108
154
  end
109
155
 
156
+ def discovery_api_list
157
+ @discovery_api_list ||= begin
158
+ items = discovery.list_apis.items
159
+ excluded = Array(api_list_config["exclude"])
160
+ items.delete_if { |item| excluded.include? "#{item.name}.#{item.version}" }
161
+ Array(api_list_config["include"]).each do |include_hash|
162
+ include_hash.symbolize_keys!
163
+ include_item = Discovery::DirectoryList::Item.new(**include_hash)
164
+ items << include_item unless items.any? { |item| item.name == include_item.name && item.version == include_item.version }
165
+ end
166
+ items
167
+ end
168
+ end
169
+
110
170
  def generator
111
171
  @generator ||= Google::Apis::Generator.new(api_names: options[:names], api_names_out: options[:names_out])
112
172
  end
@@ -117,7 +177,9 @@ module Google
117
177
 
118
178
  def ensure_active_support
119
179
  begin
180
+ require 'active_support'
120
181
  require 'active_support/inflector'
182
+ require 'active_support/core_ext'
121
183
  rescue LoadError => e
122
184
  error 'ActiveSupport is required, please run:'
123
185
  error 'gem install activesupport'
@@ -31,8 +31,8 @@ module Google
31
31
  # @return [String]
32
32
  attr_accessor :amp_url
33
33
 
34
- # The [AMP Cache URL](/amp/cache/overview#amp-cache-url-format) pointing to
35
- # the cached document in the Google AMP Cache.
34
+ # The [AMP Cache URL](/amp/cache/overview#amp-cache-url-format) pointing to the
35
+ # cached document in the Google AMP Cache.
36
36
  # Corresponds to the JSON property `cdnAmpUrl`
37
37
  # @return [String]
38
38
  attr_accessor :cdn_amp_url
@@ -94,9 +94,8 @@ module Google
94
94
  # @return [String]
95
95
  attr_accessor :lookup_strategy
96
96
 
97
- # List of URLs to look up for the paired AMP URLs.
98
- # The URLs are case-sensitive. Up to 50 URLs per lookup
99
- # (see [Usage Limits](/amp/cache/reference/limits)).
97
+ # List of URLs to look up for the paired AMP URLs. The URLs are case-sensitive.
98
+ # Up to 50 URLs per lookup (see [Usage Limits](/amp/cache/reference/limits)).
100
99
  # Corresponds to the JSON property `urls`
101
100
  # @return [Array<String>]
102
101
  attr_accessor :urls
@@ -116,10 +115,9 @@ module Google
116
115
  class BatchGetAmpUrlsResponse
117
116
  include Google::Apis::Core::Hashable
118
117
 
119
- # For each URL in BatchAmpUrlsRequest, the URL response. The response might
120
- # not be in the same order as URLs in the batch request.
121
- # If BatchAmpUrlsRequest contains duplicate URLs, AmpUrl is generated
122
- # only once.
118
+ # For each URL in BatchAmpUrlsRequest, the URL response. The response might not
119
+ # be in the same order as URLs in the batch request. If BatchAmpUrlsRequest
120
+ # contains duplicate URLs, AmpUrl is generated only once.
123
121
  # Corresponds to the JSON property `ampUrls`
124
122
  # @return [Array<Google::Apis::AcceleratedmobilepageurlV1::AmpUrl>]
125
123
  attr_accessor :amp_urls
@@ -48,8 +48,8 @@ module Google
48
48
  @batch_path = 'batch'
49
49
  end
50
50
 
51
- # Returns AMP URL(s) and equivalent
52
- # [AMP Cache URL(s)](/amp/cache/overview#amp-cache-url-format).
51
+ # Returns AMP URL(s) and equivalent [AMP Cache URL(s)](/amp/cache/overview#amp-
52
+ # cache-url-format).
53
53
  # @param [Google::Apis::AcceleratedmobilepageurlV1::BatchGetAmpUrlsRequest] batch_get_amp_urls_request_object
54
54
  # @param [String] fields
55
55
  # Selector specifying which fields to include in a partial response.
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/amp/cache/
27
27
  module AcceleratedmobilepageurlV1
28
28
  VERSION = 'V1'
29
- REVISION = '20200215'
29
+ REVISION = '20200916'
30
30
  end
31
31
  end
32
32
  end
@@ -49,9 +49,9 @@ module Google
49
49
  # @return [Array<Google::Apis::AccessapprovalV1::EnrolledService>]
50
50
  attr_accessor :enrolled_services
51
51
 
52
- # The resource name of the settings. Format is one of: 1. "projects/`project_id`/
53
- # accessApprovalSettings" 2. "folders/`folder_id`/accessApprovalSettings" 3. "
54
- # organizations/`organization_id`/accessApprovalSettings"
52
+ # The resource name of the settings. Format is one of: * "projects/`project`/
53
+ # accessApprovalSettings" * "folders/`folder`/accessApprovalSettings" * "
54
+ # organizations/`organization`/accessApprovalSettings"
55
55
  # Corresponds to the JSON property `name`
56
56
  # @return [String]
57
57
  attr_accessor :name
@@ -84,9 +84,9 @@ module Google
84
84
  # The "home office" location of the principal. A two-letter country code (ISO
85
85
  # 3166-1 alpha-2), such as "US", "DE" or "GB" or a region code. In some limited
86
86
  # situations Google systems may refer refer to a region code instead of a
87
- # country code. Possible Region Codes: 1. ASI: Asia 2. EUR: Europe 3. OCE:
88
- # Oceania 4. AFR: Africa 5. NAM: North America 6. SAM: South America 7. ANT:
89
- # Antarctica 8. ANY: Any location
87
+ # country code. Possible Region Codes: * ASI: Asia * EUR: Europe * OCE: Oceania *
88
+ # AFR: Africa * NAM: North America * SAM: South America * ANT: Antarctica * ANY:
89
+ # Any location
90
90
  # Corresponds to the JSON property `principalOfficeCountry`
91
91
  # @return [String]
92
92
  attr_accessor :principal_office_country
@@ -94,9 +94,9 @@ module Google
94
94
  # Physical location of the principal at the time of the access. A two-letter
95
95
  # country code (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or a region code.
96
96
  # In some limited situations Google systems may refer refer to a region code
97
- # instead of a country code. Possible Region Codes: 1. ASI: Asia 2. EUR: Europe
98
- # 3. OCE: Oceania 4. AFR: Africa 5. NAM: North America 6. SAM: South America 7.
99
- # ANT: Antarctica 8. ANY: Any location
97
+ # instead of a country code. Possible Region Codes: * ASI: Asia * EUR: Europe *
98
+ # OCE: Oceania * AFR: Africa * NAM: North America * SAM: South America * ANT:
99
+ # Antarctica * ANY: Any location
100
100
  # Corresponds to the JSON property `principalPhysicalLocationCountry`
101
101
  # @return [String]
102
102
  attr_accessor :principal_physical_location_country
@@ -152,7 +152,7 @@ module Google
152
152
  attr_accessor :dismiss
153
153
 
154
154
  # The resource name of the request. Format is "`projects|folders|organizations`/`
155
- # id`/approvalRequests/`approval_request_id`".
155
+ # id`/approvalRequests/`approval_request`".
156
156
  # Corresponds to the JSON property `name`
157
157
  # @return [String]
158
158
  attr_accessor :name
@@ -317,12 +317,19 @@ module Google
317
317
  include Google::Apis::Core::Hashable
318
318
 
319
319
  # The product for which Access Approval will be enrolled. Allowed values are
320
- # listed below (case-sensitive): 1. all 2. ga-only 3. appengine.googleapis.com 4.
321
- # bigquery.googleapis.com 5. bigtable.googleapis.com 6. cloudkms.googleapis.com
322
- # 7. compute.googleapis.com 8. dataflow.googleapis.com 9. iam.googleapis.com 10.
323
- # pubsub.googleapis.com 11. storage.googleapis.com Note: 'all' will enroll the
324
- # resource in all products supported at both 'GA' and 'Preview' levels. 'ga-only'
325
- # will only enroll the resource in products supported at 'GA' level.
320
+ # listed below (case-sensitive): * all * App Engine * BigQuery * Cloud Bigtable *
321
+ # Cloud Key Management Service * Compute Engine * Cloud Dataflow * Cloud
322
+ # Identity and Access Management * Cloud Pub/Sub * Cloud Storage * Persistent
323
+ # Disk Note: These values are supported as input for legacy purposes, but will
324
+ # not be returned from the API. * all * appengine.googleapis.com * bigquery.
325
+ # googleapis.com * bigtable.googleapis.com * cloudkms.googleapis.com * compute.
326
+ # googleapis.com * dataflow.googleapis.com * iam.googleapis.com * pubsub.
327
+ # googleapis.com * storage.googleapis.com Calls to UpdateAccessApprovalSettings
328
+ # using 'all' or any of the XXX.googleapis.com will be translated to the
329
+ # associated product name ('all', 'App Engine', etc.). Note: 'all' will enroll
330
+ # the resource in all products supported at both 'GA' and 'Preview' levels. More
331
+ # information about levels of support is available at https://cloud.google.com/
332
+ # access-approval/docs/supported-services
326
333
  # Corresponds to the JSON property `cloudProduct`
327
334
  # @return [String]
328
335
  attr_accessor :cloud_product
@@ -114,9 +114,9 @@ module Google
114
114
  # Updates the settings associated with a project, folder, or organization.
115
115
  # Settings to update are determined by the value of field_mask.
116
116
  # @param [String] name
117
- # The resource name of the settings. Format is one of: 1. "projects/`project_id`/
118
- # accessApprovalSettings" 2. "folders/`folder_id`/accessApprovalSettings" 3. "
119
- # organizations/`organization_id`/accessApprovalSettings"
117
+ # The resource name of the settings. Format is one of: * "projects/`project`/
118
+ # accessApprovalSettings" * "folders/`folder`/accessApprovalSettings" * "
119
+ # organizations/`organization`/accessApprovalSettings"
120
120
  # @param [Google::Apis::AccessapprovalV1::AccessApprovalSettings] access_approval_settings_object
121
121
  # @param [String] update_mask
122
122
  # The update mask applies to the settings. Only the top level fields of
@@ -262,14 +262,14 @@ module Google
262
262
  # Approval requests can be filtered by state (pending, active, dismissed). The
263
263
  # order is reverse chronological.
264
264
  # @param [String] parent
265
- # The parent resource. This may be "projects/`project_id`", "folders/`folder_id`"
266
- # , or "organizations/`organization_id`".
265
+ # The parent resource. This may be "projects/`project`", "folders/`folder`", or "
266
+ # organizations/`organization`".
267
267
  # @param [String] filter
268
268
  # A filter on the type of approval requests to retrieve. Must be one of the
269
- # following values: 1. [not set]: Requests that are pending or have active
270
- # approvals. 2. ALL: All requests. 3. PENDING: Only pending requests. 4. ACTIVE:
271
- # Only active (i.e. currently approved) requests. 5. DISMISSED: Only dismissed (
272
- # including expired) requests. 6. HISTORY: Active and dismissed (including
269
+ # following values: * [not set]: Requests that are pending or have active
270
+ # approvals. * ALL: All requests. * PENDING: Only pending requests. * ACTIVE:
271
+ # Only active (i.e. currently approved) requests. * DISMISSED: Only dismissed (
272
+ # including expired) requests. * HISTORY: Active and dismissed (including
273
273
  # expired) requests.
274
274
  # @param [Fixnum] page_size
275
275
  # Requested page size.
@@ -372,9 +372,9 @@ module Google
372
372
  # Updates the settings associated with a project, folder, or organization.
373
373
  # Settings to update are determined by the value of field_mask.
374
374
  # @param [String] name
375
- # The resource name of the settings. Format is one of: 1. "projects/`project_id`/
376
- # accessApprovalSettings" 2. "folders/`folder_id`/accessApprovalSettings" 3. "
377
- # organizations/`organization_id`/accessApprovalSettings"
375
+ # The resource name of the settings. Format is one of: * "projects/`project`/
376
+ # accessApprovalSettings" * "folders/`folder`/accessApprovalSettings" * "
377
+ # organizations/`organization`/accessApprovalSettings"
378
378
  # @param [Google::Apis::AccessapprovalV1::AccessApprovalSettings] access_approval_settings_object
379
379
  # @param [String] update_mask
380
380
  # The update mask applies to the settings. Only the top level fields of
@@ -520,14 +520,14 @@ module Google
520
520
  # Approval requests can be filtered by state (pending, active, dismissed). The
521
521
  # order is reverse chronological.
522
522
  # @param [String] parent
523
- # The parent resource. This may be "projects/`project_id`", "folders/`folder_id`"
524
- # , or "organizations/`organization_id`".
523
+ # The parent resource. This may be "projects/`project`", "folders/`folder`", or "
524
+ # organizations/`organization`".
525
525
  # @param [String] filter
526
526
  # A filter on the type of approval requests to retrieve. Must be one of the
527
- # following values: 1. [not set]: Requests that are pending or have active
528
- # approvals. 2. ALL: All requests. 3. PENDING: Only pending requests. 4. ACTIVE:
529
- # Only active (i.e. currently approved) requests. 5. DISMISSED: Only dismissed (
530
- # including expired) requests. 6. HISTORY: Active and dismissed (including
527
+ # following values: * [not set]: Requests that are pending or have active
528
+ # approvals. * ALL: All requests. * PENDING: Only pending requests. * ACTIVE:
529
+ # Only active (i.e. currently approved) requests. * DISMISSED: Only dismissed (
530
+ # including expired) requests. * HISTORY: Active and dismissed (including
531
531
  # expired) requests.
532
532
  # @param [Fixnum] page_size
533
533
  # Requested page size.
@@ -630,9 +630,9 @@ module Google
630
630
  # Updates the settings associated with a project, folder, or organization.
631
631
  # Settings to update are determined by the value of field_mask.
632
632
  # @param [String] name
633
- # The resource name of the settings. Format is one of: 1. "projects/`project_id`/
634
- # accessApprovalSettings" 2. "folders/`folder_id`/accessApprovalSettings" 3. "
635
- # organizations/`organization_id`/accessApprovalSettings"
633
+ # The resource name of the settings. Format is one of: * "projects/`project`/
634
+ # accessApprovalSettings" * "folders/`folder`/accessApprovalSettings" * "
635
+ # organizations/`organization`/accessApprovalSettings"
636
636
  # @param [Google::Apis::AccessapprovalV1::AccessApprovalSettings] access_approval_settings_object
637
637
  # @param [String] update_mask
638
638
  # The update mask applies to the settings. Only the top level fields of
@@ -778,14 +778,14 @@ module Google
778
778
  # Approval requests can be filtered by state (pending, active, dismissed). The
779
779
  # order is reverse chronological.
780
780
  # @param [String] parent
781
- # The parent resource. This may be "projects/`project_id`", "folders/`folder_id`"
782
- # , or "organizations/`organization_id`".
781
+ # The parent resource. This may be "projects/`project`", "folders/`folder`", or "
782
+ # organizations/`organization`".
783
783
  # @param [String] filter
784
784
  # A filter on the type of approval requests to retrieve. Must be one of the
785
- # following values: 1. [not set]: Requests that are pending or have active
786
- # approvals. 2. ALL: All requests. 3. PENDING: Only pending requests. 4. ACTIVE:
787
- # Only active (i.e. currently approved) requests. 5. DISMISSED: Only dismissed (
788
- # including expired) requests. 6. HISTORY: Active and dismissed (including
785
+ # following values: * [not set]: Requests that are pending or have active
786
+ # approvals. * ALL: All requests. * PENDING: Only pending requests. * ACTIVE:
787
+ # Only active (i.e. currently approved) requests. * DISMISSED: Only dismissed (
788
+ # including expired) requests. * HISTORY: Active and dismissed (including
789
789
  # expired) requests.
790
790
  # @param [Fixnum] page_size
791
791
  # Requested page size.
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/access-approval/docs
26
26
  module AccessapprovalV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200903'
28
+ REVISION = '20201014'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -446,6 +446,49 @@ module Google
446
446
  end
447
447
  end
448
448
 
449
+ # Restricts access to Cloud Console and Google Cloud APIs for a set of users
450
+ # using Context-Aware Access.
451
+ class GcpUserAccessBinding
452
+ include Google::Apis::Core::Hashable
453
+
454
+ # Required. Access level that a user must have to be granted access. Only one
455
+ # access level is supported, not multiple. This repeated field must have exactly
456
+ # one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
457
+ # Corresponds to the JSON property `accessLevels`
458
+ # @return [Array<String>]
459
+ attr_accessor :access_levels
460
+
461
+ # Required. Immutable. Google Group id whose members are subject to this binding'
462
+ # s restrictions. See "id" in the [G Suite Directory API's Groups resource] (
463
+ # https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource)
464
+ # . If a group's email address/alias is changed, this resource will continue to
465
+ # point at the changed group. This field does not accept group email addresses
466
+ # or aliases. Example: "01d520gv4vjcrht"
467
+ # Corresponds to the JSON property `groupKey`
468
+ # @return [String]
469
+ attr_accessor :group_key
470
+
471
+ # Immutable. Assigned by the server during creation. The last segment has an
472
+ # arbitrary length and has only URI unreserved characters (as defined by [RFC
473
+ # 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should
474
+ # not be specified by the client during creation. Example: "organizations/256/
475
+ # gcpUserAccessBindings/b3-BhcX_Ud5N"
476
+ # Corresponds to the JSON property `name`
477
+ # @return [String]
478
+ attr_accessor :name
479
+
480
+ def initialize(**args)
481
+ update!(**args)
482
+ end
483
+
484
+ # Update properties of this object
485
+ def update!(**args)
486
+ @access_levels = args[:access_levels] if args.key?(:access_levels)
487
+ @group_key = args[:group_key] if args.key?(:group_key)
488
+ @name = args[:name] if args.key?(:name)
489
+ end
490
+ end
491
+
449
492
  # A response to `ListAccessLevelsRequest`.
450
493
  class ListAccessLevelsResponse
451
494
  include Google::Apis::Core::Hashable
@@ -498,6 +541,31 @@ module Google
498
541
  end
499
542
  end
500
543
 
544
+ # Response of ListGcpUserAccessBindings.
545
+ class ListGcpUserAccessBindingsResponse
546
+ include Google::Apis::Core::Hashable
547
+
548
+ # GcpUserAccessBinding
549
+ # Corresponds to the JSON property `gcpUserAccessBindings`
550
+ # @return [Array<Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding>]
551
+ attr_accessor :gcp_user_access_bindings
552
+
553
+ # Token to get the next page of items. If blank, there are no more items.
554
+ # Corresponds to the JSON property `nextPageToken`
555
+ # @return [String]
556
+ attr_accessor :next_page_token
557
+
558
+ def initialize(**args)
559
+ update!(**args)
560
+ end
561
+
562
+ # Update properties of this object
563
+ def update!(**args)
564
+ @gcp_user_access_bindings = args[:gcp_user_access_bindings] if args.key?(:gcp_user_access_bindings)
565
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
566
+ end
567
+ end
568
+
501
569
  # The response message for Operations.ListOperations.
502
570
  class ListOperationsResponse
503
571
  include Google::Apis::Core::Hashable
@@ -88,6 +88,12 @@ module Google
88
88
  include Google::Apis::Core::JsonObjectSupport
89
89
  end
90
90
 
91
+ class GcpUserAccessBinding
92
+ class Representation < Google::Apis::Core::JsonRepresentation; end
93
+
94
+ include Google::Apis::Core::JsonObjectSupport
95
+ end
96
+
91
97
  class ListAccessLevelsResponse
92
98
  class Representation < Google::Apis::Core::JsonRepresentation; end
93
99
 
@@ -100,6 +106,12 @@ module Google
100
106
  include Google::Apis::Core::JsonObjectSupport
101
107
  end
102
108
 
109
+ class ListGcpUserAccessBindingsResponse
110
+ class Representation < Google::Apis::Core::JsonRepresentation; end
111
+
112
+ include Google::Apis::Core::JsonObjectSupport
113
+ end
114
+
103
115
  class ListOperationsResponse
104
116
  class Representation < Google::Apis::Core::JsonRepresentation; end
105
117
 
@@ -275,6 +287,15 @@ module Google
275
287
  end
276
288
  end
277
289
 
290
+ class GcpUserAccessBinding
291
+ # @private
292
+ class Representation < Google::Apis::Core::JsonRepresentation
293
+ collection :access_levels, as: 'accessLevels'
294
+ property :group_key, as: 'groupKey'
295
+ property :name, as: 'name'
296
+ end
297
+ end
298
+
278
299
  class ListAccessLevelsResponse
279
300
  # @private
280
301
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -293,6 +314,15 @@ module Google
293
314
  end
294
315
  end
295
316
 
317
+ class ListGcpUserAccessBindingsResponse
318
+ # @private
319
+ class Representation < Google::Apis::Core::JsonRepresentation
320
+ collection :gcp_user_access_bindings, as: 'gcpUserAccessBindings', class: Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding, decorator: Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding::Representation
321
+
322
+ property :next_page_token, as: 'nextPageToken'
323
+ end
324
+ end
325
+
296
326
  class ListOperationsResponse
297
327
  # @private
298
328
  class Representation < Google::Apis::Core::JsonRepresentation