google-api-client 0.46.0 → 0.49.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (557) 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 +643 -190
  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/accessapproval_v1.rb +1 -1
  12. data/generated/google/apis/accessapproval_v1/classes.rb +13 -15
  13. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  14. data/generated/google/apis/accesscontextmanager_v1/classes.rb +68 -0
  15. data/generated/google/apis/accesscontextmanager_v1/representations.rb +30 -0
  16. data/generated/google/apis/accesscontextmanager_v1/service.rb +180 -0
  17. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  18. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  19. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  20. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -0
  21. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +15 -0
  22. data/generated/google/apis/admin_directory_v1.rb +1 -1
  23. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  24. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  25. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  26. data/generated/google/apis/admin_reports_v1.rb +1 -1
  27. data/generated/google/apis/admob_v1.rb +3 -2
  28. data/generated/google/apis/admob_v1/classes.rb +29 -29
  29. data/generated/google/apis/admob_v1/service.rb +2 -1
  30. data/generated/google/apis/adsense_v1_4.rb +1 -1
  31. data/generated/google/apis/adsense_v1_4/service.rb +4 -1
  32. data/generated/google/apis/analyticsadmin_v1alpha.rb +1 -1
  33. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +19 -18
  34. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +12 -13
  35. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  36. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +201 -17
  37. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +69 -0
  38. data/generated/google/apis/analyticsdata_v1alpha/service.rb +79 -0
  39. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  40. data/generated/google/apis/androidmanagement_v1/classes.rb +29 -26
  41. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  42. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -1
  43. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  44. data/generated/google/apis/apigateway_v1beta/classes.rb +8 -5
  45. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -0
  46. data/generated/google/apis/apigee_v1.rb +1 -1
  47. data/generated/google/apis/apigee_v1/classes.rb +500 -133
  48. data/generated/google/apis/apigee_v1/representations.rb +158 -18
  49. data/generated/google/apis/apigee_v1/service.rb +504 -55
  50. data/generated/google/apis/appsmarket_v2.rb +1 -1
  51. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  52. data/generated/google/apis/area120tables_v1alpha1/classes.rb +481 -0
  53. data/generated/google/apis/area120tables_v1alpha1/representations.rb +279 -0
  54. data/generated/google/apis/area120tables_v1alpha1/service.rb +448 -0
  55. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  56. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +8 -2
  57. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  58. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  59. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +10 -2
  60. data/generated/google/apis/assuredworkloads_v1beta1/service.rb +5 -1
  61. data/generated/google/apis/bigquery_v2.rb +1 -1
  62. data/generated/google/apis/bigquery_v2/classes.rb +158 -5
  63. data/generated/google/apis/bigquery_v2/representations.rb +67 -0
  64. data/generated/google/apis/bigquery_v2/service.rb +46 -0
  65. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  66. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -0
  67. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +1 -0
  68. data/generated/google/apis/billingbudgets_v1.rb +38 -0
  69. data/generated/google/apis/billingbudgets_v1/classes.rb +373 -0
  70. data/generated/google/apis/billingbudgets_v1/representations.rb +171 -0
  71. data/generated/google/apis/billingbudgets_v1/service.rb +249 -0
  72. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  73. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +12 -1
  74. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  75. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  76. data/generated/google/apis/binaryauthorization_v1/classes.rb +3 -4
  77. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  78. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +3 -4
  79. data/generated/google/apis/books_v1.rb +1 -1
  80. data/generated/google/apis/books_v1/service.rb +52 -52
  81. data/generated/google/apis/calendar_v3.rb +1 -1
  82. data/generated/google/apis/calendar_v3/classes.rb +2 -2
  83. data/generated/google/apis/chat_v1.rb +1 -1
  84. data/generated/google/apis/chat_v1/classes.rb +7 -0
  85. data/generated/google/apis/chat_v1/representations.rb +1 -0
  86. data/generated/google/apis/civicinfo_v2.rb +1 -1
  87. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  88. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  89. data/generated/google/apis/classroom_v1.rb +1 -1
  90. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  91. data/generated/google/apis/cloudasset_v1.rb +1 -1
  92. data/generated/google/apis/cloudasset_v1/classes.rb +703 -0
  93. data/generated/google/apis/cloudasset_v1/representations.rb +305 -0
  94. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  95. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  96. data/generated/google/apis/cloudasset_v1beta1/classes.rb +6 -0
  97. data/generated/google/apis/cloudasset_v1beta1/representations.rb +1 -0
  98. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  99. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +6 -0
  100. data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +1 -0
  101. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  102. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +9 -3
  103. data/generated/google/apis/cloudasset_v1p4beta1/representations.rb +1 -0
  104. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  105. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +6 -0
  106. data/generated/google/apis/cloudasset_v1p5beta1/representations.rb +1 -0
  107. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  108. data/generated/google/apis/cloudbilling_v1/classes.rb +1 -1
  109. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  110. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -1
  111. data/generated/google/apis/cloudbuild_v1/service.rb +10 -2
  112. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  113. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  114. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  115. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  116. data/generated/google/apis/cloudidentity_v1beta1/service.rb +22 -14
  117. data/generated/google/apis/cloudiot_v1.rb +1 -1
  118. data/generated/google/apis/cloudiot_v1/classes.rb +1 -2
  119. data/generated/google/apis/cloudkms_v1.rb +1 -1
  120. data/generated/google/apis/cloudkms_v1/classes.rb +1 -2
  121. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  122. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +79 -2
  123. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +32 -0
  124. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  125. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +79 -2
  126. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +32 -0
  127. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  128. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +83 -6
  129. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +32 -0
  130. data/generated/google/apis/cloudresourcemanager_v2/service.rb +10 -10
  131. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  132. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +83 -6
  133. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +32 -0
  134. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +10 -10
  135. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  136. data/generated/google/apis/cloudsearch_v1/classes.rb +2 -1
  137. data/generated/google/apis/cloudshell_v1.rb +1 -1
  138. data/generated/google/apis/cloudshell_v1/classes.rb +342 -0
  139. data/generated/google/apis/cloudshell_v1/representations.rb +200 -0
  140. data/generated/google/apis/cloudshell_v1/service.rb +177 -0
  141. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  142. data/generated/google/apis/cloudtasks_v2/classes.rb +1 -2
  143. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  144. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +1 -2
  145. data/generated/google/apis/cloudtasks_v2beta2/service.rb +12 -2
  146. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  147. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +1 -2
  148. data/generated/google/apis/composer_v1.rb +1 -1
  149. data/generated/google/apis/composer_v1/classes.rb +2 -3
  150. data/generated/google/apis/composer_v1beta1.rb +1 -1
  151. data/generated/google/apis/composer_v1beta1/classes.rb +2 -3
  152. data/generated/google/apis/composer_v1beta1/service.rb +37 -35
  153. data/generated/google/apis/compute_alpha.rb +1 -1
  154. data/generated/google/apis/compute_alpha/classes.rb +126 -21
  155. data/generated/google/apis/compute_alpha/representations.rb +7 -0
  156. data/generated/google/apis/compute_alpha/service.rb +62 -3
  157. data/generated/google/apis/compute_beta.rb +1 -1
  158. data/generated/google/apis/compute_beta/classes.rb +83 -19
  159. data/generated/google/apis/compute_beta/representations.rb +4 -0
  160. data/generated/google/apis/compute_beta/service.rb +3 -3
  161. data/generated/google/apis/compute_v1.rb +1 -1
  162. data/generated/google/apis/compute_v1/classes.rb +278 -27
  163. data/generated/google/apis/compute_v1/representations.rb +44 -0
  164. data/generated/google/apis/compute_v1/service.rb +5 -3
  165. data/generated/google/apis/container_v1.rb +1 -1
  166. data/generated/google/apis/container_v1/classes.rb +22 -10
  167. data/generated/google/apis/container_v1beta1.rb +1 -1
  168. data/generated/google/apis/container_v1beta1/classes.rb +51 -10
  169. data/generated/google/apis/container_v1beta1/representations.rb +15 -0
  170. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  171. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +1 -2
  172. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  173. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +1 -2
  174. data/generated/google/apis/content_v2.rb +3 -4
  175. data/generated/google/apis/content_v2/classes.rb +511 -1219
  176. data/generated/google/apis/content_v2/service.rb +377 -650
  177. data/generated/google/apis/content_v2_1.rb +3 -4
  178. data/generated/google/apis/content_v2_1/classes.rb +1006 -1057
  179. data/generated/google/apis/content_v2_1/representations.rb +253 -0
  180. data/generated/google/apis/content_v2_1/service.rb +942 -801
  181. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  182. data/generated/google/apis/datacatalog_v1beta1/classes.rb +26 -12
  183. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -0
  184. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  185. data/generated/google/apis/dataflow_v1b3/classes.rb +12 -0
  186. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  187. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  188. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  189. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  190. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  191. data/generated/google/apis/datamigration_v1beta1.rb +34 -0
  192. data/generated/google/apis/datamigration_v1beta1/classes.rb +1670 -0
  193. data/generated/google/apis/datamigration_v1beta1/representations.rb +678 -0
  194. data/generated/google/apis/datamigration_v1beta1/service.rb +1172 -0
  195. data/generated/google/apis/dataproc_v1.rb +1 -1
  196. data/generated/google/apis/dataproc_v1/classes.rb +18 -7
  197. data/generated/google/apis/dataproc_v1/representations.rb +1 -0
  198. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  199. data/generated/google/apis/dataproc_v1beta2/classes.rb +18 -7
  200. data/generated/google/apis/dataproc_v1beta2/representations.rb +1 -0
  201. data/generated/google/apis/datastore_v1.rb +1 -1
  202. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  203. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  204. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  205. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  206. data/generated/google/apis/deploymentmanager_v2/classes.rb +209 -558
  207. data/generated/google/apis/deploymentmanager_v2/representations.rb +1 -132
  208. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  209. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  210. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +253 -609
  211. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +1 -132
  212. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  213. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  214. data/generated/google/apis/dfareporting_v3_3/classes.rb +6 -6
  215. data/generated/google/apis/dfareporting_v3_3/service.rb +12 -12
  216. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  217. data/generated/google/apis/dfareporting_v3_4/classes.rb +6 -6
  218. data/generated/google/apis/dfareporting_v3_4/service.rb +12 -12
  219. data/generated/google/apis/dialogflow_v2.rb +1 -1
  220. data/generated/google/apis/dialogflow_v2/classes.rb +677 -364
  221. data/generated/google/apis/dialogflow_v2/representations.rb +284 -167
  222. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  223. data/generated/google/apis/dialogflow_v2beta1/classes.rb +677 -364
  224. data/generated/google/apis/dialogflow_v2beta1/representations.rb +288 -171
  225. data/generated/google/apis/dialogflow_v2beta1/service.rb +56 -6
  226. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  227. data/generated/google/apis/dialogflow_v3beta1/classes.rb +754 -371
  228. data/generated/google/apis/dialogflow_v3beta1/representations.rb +307 -170
  229. data/generated/google/apis/dialogflow_v3beta1/service.rb +22 -9
  230. data/generated/google/apis/displayvideo_v1.rb +1 -1
  231. data/generated/google/apis/displayvideo_v1/classes.rb +241 -63
  232. data/generated/google/apis/displayvideo_v1/representations.rb +77 -0
  233. data/generated/google/apis/displayvideo_v1/service.rb +261 -18
  234. data/generated/google/apis/dlp_v2.rb +1 -1
  235. data/generated/google/apis/dlp_v2/classes.rb +33 -32
  236. data/generated/google/apis/dns_v1.rb +2 -2
  237. data/generated/google/apis/dns_v1/classes.rb +181 -0
  238. data/generated/google/apis/dns_v1/representations.rb +83 -0
  239. data/generated/google/apis/dns_v1/service.rb +11 -11
  240. data/generated/google/apis/dns_v1beta2.rb +2 -2
  241. data/generated/google/apis/dns_v1beta2/classes.rb +195 -1
  242. data/generated/google/apis/dns_v1beta2/representations.rb +95 -0
  243. data/generated/google/apis/dns_v1beta2/service.rb +187 -11
  244. data/generated/google/apis/documentai_v1beta3.rb +36 -0
  245. data/generated/google/apis/documentai_v1beta3/classes.rb +6149 -0
  246. data/generated/google/apis/documentai_v1beta3/representations.rb +2666 -0
  247. data/generated/google/apis/documentai_v1beta3/service.rb +263 -0
  248. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  249. data/generated/google/apis/domains_v1alpha2/classes.rb +1540 -0
  250. data/generated/google/apis/domains_v1alpha2/representations.rb +606 -0
  251. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  252. data/generated/google/apis/domains_v1beta1.rb +34 -0
  253. data/generated/google/apis/domains_v1beta1/classes.rb +1540 -0
  254. data/generated/google/apis/domains_v1beta1/representations.rb +606 -0
  255. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  256. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  257. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +2 -1
  258. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  259. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +4 -3
  260. data/generated/google/apis/drive_v2.rb +1 -1
  261. data/generated/google/apis/drive_v2/classes.rb +23 -20
  262. data/generated/google/apis/drive_v2/service.rb +2 -2
  263. data/generated/google/apis/drive_v3.rb +1 -1
  264. data/generated/google/apis/drive_v3/classes.rb +10 -7
  265. data/generated/google/apis/eventarc_v1beta1.rb +34 -0
  266. data/generated/google/apis/eventarc_v1beta1/classes.rb +937 -0
  267. data/generated/google/apis/eventarc_v1beta1/representations.rb +380 -0
  268. data/generated/google/apis/eventarc_v1beta1/service.rb +579 -0
  269. data/generated/google/apis/file_v1.rb +1 -1
  270. data/generated/google/apis/file_v1/classes.rb +505 -4
  271. data/generated/google/apis/file_v1/representations.rb +203 -0
  272. data/generated/google/apis/file_v1/service.rb +229 -1
  273. data/generated/google/apis/file_v1beta1.rb +1 -1
  274. data/generated/google/apis/file_v1beta1/classes.rb +346 -6
  275. data/generated/google/apis/file_v1beta1/representations.rb +149 -0
  276. data/generated/google/apis/file_v1beta1/service.rb +6 -2
  277. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  278. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  279. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  280. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  281. data/generated/google/apis/firestore_v1.rb +1 -1
  282. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  283. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  284. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  285. data/generated/google/apis/fitness_v1.rb +13 -1
  286. data/generated/google/apis/fitness_v1/service.rb +3 -1
  287. data/generated/google/apis/games_v1.rb +1 -1
  288. data/generated/google/apis/games_v1/classes.rb +300 -0
  289. data/generated/google/apis/games_v1/representations.rb +116 -0
  290. data/generated/google/apis/games_v1/service.rb +34 -0
  291. data/generated/google/apis/gameservices_v1.rb +1 -1
  292. data/generated/google/apis/gameservices_v1/classes.rb +16 -16
  293. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  294. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  295. data/generated/google/apis/gameservices_v1beta/classes.rb +16 -16
  296. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  297. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  298. data/generated/google/apis/genomics_v2alpha1/classes.rb +25 -0
  299. data/generated/google/apis/genomics_v2alpha1/representations.rb +15 -0
  300. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  301. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  302. data/generated/google/apis/healthcare_v1.rb +1 -1
  303. data/generated/google/apis/healthcare_v1/classes.rb +4 -4
  304. data/generated/google/apis/healthcare_v1/service.rb +2 -1
  305. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  306. data/generated/google/apis/healthcare_v1beta1/classes.rb +468 -295
  307. data/generated/google/apis/healthcare_v1beta1/representations.rb +202 -80
  308. data/generated/google/apis/healthcare_v1beta1/service.rb +156 -74
  309. data/generated/google/apis/iam_v1.rb +2 -5
  310. data/generated/google/apis/iam_v1/classes.rb +8 -11
  311. data/generated/google/apis/iam_v1/representations.rb +0 -1
  312. data/generated/google/apis/iam_v1/service.rb +1 -4
  313. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  314. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  315. data/generated/google/apis/iap_v1.rb +1 -1
  316. data/generated/google/apis/iap_v1/classes.rb +1 -13
  317. data/generated/google/apis/iap_v1/representations.rb +0 -1
  318. data/generated/google/apis/iap_v1beta1.rb +1 -1
  319. data/generated/google/apis/iap_v1beta1/classes.rb +1 -2
  320. data/generated/google/apis/licensing_v1.rb +1 -1
  321. data/generated/google/apis/licensing_v1/service.rb +2 -2
  322. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  323. data/generated/google/apis/lifesciences_v2beta/classes.rb +104 -0
  324. data/generated/google/apis/lifesciences_v2beta/representations.rb +47 -0
  325. data/generated/google/apis/localservices_v1.rb +1 -1
  326. data/generated/google/apis/localservices_v1/classes.rb +7 -0
  327. data/generated/google/apis/localservices_v1/representations.rb +2 -0
  328. data/generated/google/apis/localservices_v1/service.rb +20 -20
  329. data/generated/google/apis/logging_v2.rb +1 -1
  330. data/generated/google/apis/logging_v2/classes.rb +182 -8
  331. data/generated/google/apis/logging_v2/representations.rb +77 -0
  332. data/generated/google/apis/logging_v2/service.rb +426 -5
  333. data/generated/google/apis/managedidentities_v1.rb +1 -1
  334. data/generated/google/apis/managedidentities_v1/classes.rb +2 -3
  335. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  336. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  337. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +81 -11
  338. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +33 -1
  339. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  340. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  341. data/generated/google/apis/managedidentities_v1beta1/classes.rb +82 -11
  342. data/generated/google/apis/managedidentities_v1beta1/representations.rb +33 -1
  343. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  344. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  345. data/generated/google/apis/memcache_v1beta2/classes.rb +1 -1
  346. data/generated/google/apis/ml_v1.rb +1 -1
  347. data/generated/google/apis/ml_v1/classes.rb +273 -79
  348. data/generated/google/apis/ml_v1/representations.rb +43 -0
  349. data/generated/google/apis/ml_v1/service.rb +35 -0
  350. data/generated/google/apis/monitoring_v3.rb +1 -1
  351. data/generated/google/apis/monitoring_v3/classes.rb +64 -10
  352. data/generated/google/apis/monitoring_v3/representations.rb +18 -0
  353. data/generated/google/apis/monitoring_v3/service.rb +50 -1
  354. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  355. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -0
  356. data/generated/google/apis/networkmanagement_v1/representations.rb +1 -0
  357. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  358. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +57 -0
  359. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +31 -0
  360. data/generated/google/apis/oauth2_v2.rb +40 -0
  361. data/generated/google/apis/oauth2_v2/classes.rb +165 -0
  362. data/generated/google/apis/{displayvideo_v1dev → oauth2_v2}/representations.rb +22 -26
  363. data/generated/google/apis/oauth2_v2/service.rb +158 -0
  364. data/generated/google/apis/people_v1.rb +1 -1
  365. data/generated/google/apis/people_v1/classes.rb +52 -51
  366. data/generated/google/apis/people_v1/service.rb +16 -16
  367. data/generated/google/apis/playablelocations_v3.rb +1 -1
  368. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  369. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  370. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  371. data/generated/google/apis/policytroubleshooter_v1/classes.rb +6 -0
  372. data/generated/google/apis/policytroubleshooter_v1/representations.rb +1 -0
  373. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  374. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +6 -0
  375. data/generated/google/apis/policytroubleshooter_v1beta/representations.rb +1 -0
  376. data/generated/google/apis/poly_v1.rb +3 -4
  377. data/generated/google/apis/poly_v1/classes.rb +65 -79
  378. data/generated/google/apis/poly_v1/service.rb +50 -63
  379. data/generated/google/apis/privateca_v1beta1.rb +36 -0
  380. data/generated/google/apis/privateca_v1beta1/classes.rb +2472 -0
  381. data/generated/google/apis/privateca_v1beta1/representations.rb +997 -0
  382. data/generated/google/apis/privateca_v1beta1/service.rb +1489 -0
  383. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  384. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  385. data/generated/google/apis/pubsub_v1.rb +1 -1
  386. data/generated/google/apis/pubsub_v1/classes.rb +1 -2
  387. data/generated/google/apis/pubsub_v1/service.rb +2 -2
  388. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  389. data/generated/google/apis/pubsub_v1beta2/classes.rb +1 -2
  390. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  391. data/generated/google/apis/realtimebidding_v1/classes.rb +88 -127
  392. data/generated/google/apis/realtimebidding_v1/representations.rb +18 -32
  393. data/generated/google/apis/realtimebidding_v1/service.rb +4 -4
  394. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  395. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  396. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  397. data/generated/google/apis/recommender_v1.rb +1 -1
  398. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  399. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  400. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  401. data/generated/google/apis/redis_v1.rb +1 -1
  402. data/generated/google/apis/redis_v1/classes.rb +28 -0
  403. data/generated/google/apis/redis_v1/representations.rb +14 -0
  404. data/generated/google/apis/redis_v1/service.rb +34 -0
  405. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  406. data/generated/google/apis/remotebuildexecution_v1/classes.rb +6 -0
  407. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -0
  408. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  409. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +6 -0
  410. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -0
  411. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  412. data/generated/google/apis/remotebuildexecution_v2/classes.rb +6 -0
  413. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -0
  414. data/generated/google/apis/run_v1.rb +1 -1
  415. data/generated/google/apis/run_v1/classes.rb +18 -8
  416. data/generated/google/apis/run_v1/representations.rb +1 -0
  417. data/generated/google/apis/run_v1alpha1.rb +1 -1
  418. data/generated/google/apis/run_v1alpha1/classes.rb +6 -0
  419. data/generated/google/apis/run_v1alpha1/representations.rb +1 -0
  420. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  421. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +1 -2
  422. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  423. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  424. data/generated/google/apis/sasportal_v1alpha1/service.rb +109 -0
  425. data/generated/google/apis/secretmanager_v1.rb +1 -1
  426. data/generated/google/apis/secretmanager_v1/classes.rb +1 -2
  427. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  428. data/generated/google/apis/secretmanager_v1beta1/classes.rb +1 -2
  429. data/generated/google/apis/securitycenter_v1.rb +1 -1
  430. data/generated/google/apis/securitycenter_v1/classes.rb +6 -0
  431. data/generated/google/apis/securitycenter_v1/representations.rb +1 -0
  432. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  433. data/generated/google/apis/securitycenter_v1beta1/classes.rb +6 -0
  434. data/generated/google/apis/securitycenter_v1beta1/representations.rb +1 -0
  435. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  436. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +6 -64
  437. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  438. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  439. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +6 -64
  440. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  441. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  442. data/generated/google/apis/servicecontrol_v1/classes.rb +77 -2
  443. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  444. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  445. data/generated/google/apis/servicecontrol_v2/classes.rb +62 -0
  446. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  447. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  448. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +1 -2
  449. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  450. data/generated/google/apis/servicemanagement_v1/classes.rb +11 -63
  451. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -18
  452. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  453. data/generated/google/apis/servicenetworking_v1/classes.rb +207 -65
  454. data/generated/google/apis/servicenetworking_v1/representations.rb +77 -14
  455. data/generated/google/apis/servicenetworking_v1/service.rb +44 -2
  456. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  457. data/generated/google/apis/servicenetworking_v1beta/classes.rb +140 -65
  458. data/generated/google/apis/servicenetworking_v1beta/representations.rb +46 -14
  459. data/generated/google/apis/serviceusage_v1.rb +1 -1
  460. data/generated/google/apis/serviceusage_v1/classes.rb +6 -64
  461. data/generated/google/apis/serviceusage_v1/representations.rb +0 -18
  462. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  463. data/generated/google/apis/serviceusage_v1beta1/classes.rb +36 -64
  464. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -18
  465. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  466. data/generated/google/apis/sheets_v4.rb +1 -1
  467. data/generated/google/apis/sheets_v4/classes.rb +23 -7
  468. data/generated/google/apis/sheets_v4/representations.rb +3 -0
  469. data/generated/google/apis/smartdevicemanagement_v1.rb +1 -1
  470. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +4 -44
  471. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +0 -17
  472. data/generated/google/apis/smartdevicemanagement_v1/service.rb +4 -12
  473. data/generated/google/apis/spanner_v1.rb +1 -1
  474. data/generated/google/apis/spanner_v1/classes.rb +2 -3
  475. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  476. data/generated/google/apis/sqladmin_v1beta4/classes.rb +77 -9
  477. data/generated/google/apis/sqladmin_v1beta4/representations.rb +20 -0
  478. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  479. data/generated/google/apis/storagetransfer_v1/classes.rb +64 -34
  480. data/generated/google/apis/storagetransfer_v1/representations.rb +13 -0
  481. data/generated/google/apis/storagetransfer_v1/service.rb +22 -20
  482. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  483. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  484. data/generated/google/apis/sts_v1.rb +1 -1
  485. data/generated/google/apis/sts_v1/classes.rb +10 -9
  486. data/generated/google/apis/sts_v1beta.rb +1 -1
  487. data/generated/google/apis/sts_v1beta/classes.rb +67 -70
  488. data/generated/google/apis/sts_v1beta/service.rb +2 -2
  489. data/generated/google/apis/tagmanager_v2.rb +1 -1
  490. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  491. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  492. data/generated/google/apis/testing_v1.rb +1 -1
  493. data/generated/google/apis/testing_v1/classes.rb +92 -33
  494. data/generated/google/apis/testing_v1/representations.rb +21 -0
  495. data/generated/google/apis/testing_v1/service.rb +4 -4
  496. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  497. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  498. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  499. data/generated/google/apis/tpu_v1.rb +1 -1
  500. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  501. data/generated/google/apis/tpu_v1/service.rb +8 -8
  502. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  503. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  504. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  505. data/generated/google/apis/translate_v3.rb +1 -1
  506. data/generated/google/apis/translate_v3/classes.rb +2 -1
  507. data/generated/google/apis/translate_v3beta1.rb +1 -1
  508. data/generated/google/apis/translate_v3beta1/classes.rb +2 -1
  509. data/generated/google/apis/vault_v1.rb +1 -1
  510. data/generated/google/apis/vault_v1/classes.rb +333 -0
  511. data/generated/google/apis/vault_v1/representations.rb +162 -0
  512. data/generated/google/apis/vault_v1/service.rb +151 -0
  513. data/generated/google/apis/videointelligence_v1.rb +1 -1
  514. data/generated/google/apis/videointelligence_v1/classes.rb +430 -2
  515. data/generated/google/apis/videointelligence_v1/representations.rb +241 -0
  516. data/generated/google/apis/videointelligence_v1/service.rb +0 -62
  517. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  518. data/generated/google/apis/videointelligence_v1beta2/classes.rb +430 -2
  519. data/generated/google/apis/videointelligence_v1beta2/representations.rb +241 -0
  520. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  521. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +430 -2
  522. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +241 -0
  523. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  524. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +430 -2
  525. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +241 -0
  526. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  527. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +430 -2
  528. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +241 -0
  529. data/generated/google/apis/vision_v1.rb +1 -1
  530. data/generated/google/apis/vision_v1/classes.rb +16 -16
  531. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  532. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  533. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  534. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  535. data/generated/google/apis/workflows_v1beta.rb +3 -2
  536. data/generated/google/apis/workflows_v1beta/service.rb +2 -1
  537. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  538. data/generated/google/apis/youtube_v3.rb +1 -1
  539. data/generated/google/apis/youtube_v3/service.rb +2 -2
  540. data/google-api-client.gemspec +25 -25
  541. data/lib/google/apis/core/api_command.rb +1 -0
  542. data/lib/google/apis/core/http_command.rb +2 -1
  543. data/lib/google/apis/options.rb +8 -5
  544. data/lib/google/apis/version.rb +1 -1
  545. data/synth.py +40 -0
  546. metadata +47 -16
  547. data/generated/google/apis/displayvideo_v1beta.rb +0 -38
  548. data/generated/google/apis/displayvideo_v1beta/classes.rb +0 -146
  549. data/generated/google/apis/displayvideo_v1beta/representations.rb +0 -72
  550. data/generated/google/apis/displayvideo_v1beta/service.rb +0 -161
  551. data/generated/google/apis/displayvideo_v1beta2.rb +0 -38
  552. data/generated/google/apis/displayvideo_v1beta2/classes.rb +0 -146
  553. data/generated/google/apis/displayvideo_v1beta2/representations.rb +0 -72
  554. data/generated/google/apis/displayvideo_v1beta2/service.rb +0 -130
  555. data/generated/google/apis/displayvideo_v1dev.rb +0 -38
  556. data/generated/google/apis/displayvideo_v1dev/classes.rb +0 -146
  557. data/generated/google/apis/displayvideo_v1dev/service.rb +0 -130
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
@@ -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: []
@@ -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'
@@ -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 = '20200930'
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'
@@ -317,21 +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): * all * GA * App Engine * BigQuery * Cloud
321
- # Bigtable * Cloud Key Management Service * Compute Engine * Cloud Dataflow *
322
- # Cloud Identity and Access Management * Cloud Pub/Sub * Cloud Storage *
323
- # Persistent Disk Note: These values are supported as input for legacy purposes,
324
- # but will not be returned from the API. * all * ga-only * appengine.googleapis.
325
- # com * bigquery.googleapis.com * bigtable.googleapis.com * cloudkms.googleapis.
326
- # com * compute.googleapis.com * dataflow.googleapis.com * iam.googleapis.com *
327
- # pubsub.googleapis.com * storage.googleapis.com Calls to
328
- # UpdateAccessApprovalSettings using 'all', 'ga-only', or any of the XXX.
329
- # googleapis.com will be translated to the associated product name ('all', 'GA',
330
- # 'App Engine', etc.). Note: 'all' will enroll the resource in all products
331
- # supported at both 'GA' and 'Preview' levels. 'ga-only'/'GA' will only enroll
332
- # the resource in products supported at 'GA' level. More information about
333
- # levels of support is available at https://cloud.google.com/access-approval/
334
- # docs/supported-services
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
335
333
  # Corresponds to the JSON property `cloudProduct`
336
334
  # @return [String]
337
335
  attr_accessor :cloud_product
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/access-context-manager/docs/reference/rest/
26
26
  module AccesscontextmanagerV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200825'
28
+ REVISION = '20200927'
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
@@ -870,6 +870,186 @@ module Google
870
870
  command.query['quotaUser'] = quota_user unless quota_user.nil?
871
871
  execute_or_queue_command(command, &block)
872
872
  end
873
+
874
+ # Creates a GcpUserAccessBinding. If the client specifies a name, the server
875
+ # will ignore it. Fails if a resource already exists with the same group_key.
876
+ # Completion of this long-running operation does not necessarily signify that
877
+ # the new binding is deployed onto all affected users, which may take more time.
878
+ # @param [String] parent
879
+ # Required. Example: "organizations/256"
880
+ # @param [Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding] gcp_user_access_binding_object
881
+ # @param [String] fields
882
+ # Selector specifying which fields to include in a partial response.
883
+ # @param [String] quota_user
884
+ # Available to use for quota purposes for server-side applications. Can be any
885
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
886
+ # @param [Google::Apis::RequestOptions] options
887
+ # Request-specific options
888
+ #
889
+ # @yield [result, err] Result & error if block supplied
890
+ # @yieldparam result [Google::Apis::AccesscontextmanagerV1::Operation] parsed result object
891
+ # @yieldparam err [StandardError] error object if request failed
892
+ #
893
+ # @return [Google::Apis::AccesscontextmanagerV1::Operation]
894
+ #
895
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
896
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
897
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
898
+ def create_organization_gcp_user_access_binding(parent, gcp_user_access_binding_object = nil, fields: nil, quota_user: nil, options: nil, &block)
899
+ command = make_simple_command(:post, 'v1/{+parent}/gcpUserAccessBindings', options)
900
+ command.request_representation = Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding::Representation
901
+ command.request_object = gcp_user_access_binding_object
902
+ command.response_representation = Google::Apis::AccesscontextmanagerV1::Operation::Representation
903
+ command.response_class = Google::Apis::AccesscontextmanagerV1::Operation
904
+ command.params['parent'] = parent unless parent.nil?
905
+ command.query['fields'] = fields unless fields.nil?
906
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
907
+ execute_or_queue_command(command, &block)
908
+ end
909
+
910
+ # Deletes a GcpUserAccessBinding. Completion of this long-running operation does
911
+ # not necessarily signify that the binding deletion is deployed onto all
912
+ # affected users, which may take more time.
913
+ # @param [String] name
914
+ # Required. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
915
+ # @param [String] fields
916
+ # Selector specifying which fields to include in a partial response.
917
+ # @param [String] quota_user
918
+ # Available to use for quota purposes for server-side applications. Can be any
919
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
920
+ # @param [Google::Apis::RequestOptions] options
921
+ # Request-specific options
922
+ #
923
+ # @yield [result, err] Result & error if block supplied
924
+ # @yieldparam result [Google::Apis::AccesscontextmanagerV1::Operation] parsed result object
925
+ # @yieldparam err [StandardError] error object if request failed
926
+ #
927
+ # @return [Google::Apis::AccesscontextmanagerV1::Operation]
928
+ #
929
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
930
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
931
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
932
+ def delete_organization_gcp_user_access_binding(name, fields: nil, quota_user: nil, options: nil, &block)
933
+ command = make_simple_command(:delete, 'v1/{+name}', options)
934
+ command.response_representation = Google::Apis::AccesscontextmanagerV1::Operation::Representation
935
+ command.response_class = Google::Apis::AccesscontextmanagerV1::Operation
936
+ command.params['name'] = name unless name.nil?
937
+ command.query['fields'] = fields unless fields.nil?
938
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
939
+ execute_or_queue_command(command, &block)
940
+ end
941
+
942
+ # Gets the GcpUserAccessBinding with the given name.
943
+ # @param [String] name
944
+ # Required. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
945
+ # @param [String] fields
946
+ # Selector specifying which fields to include in a partial response.
947
+ # @param [String] quota_user
948
+ # Available to use for quota purposes for server-side applications. Can be any
949
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
950
+ # @param [Google::Apis::RequestOptions] options
951
+ # Request-specific options
952
+ #
953
+ # @yield [result, err] Result & error if block supplied
954
+ # @yieldparam result [Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding] parsed result object
955
+ # @yieldparam err [StandardError] error object if request failed
956
+ #
957
+ # @return [Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding]
958
+ #
959
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
960
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
961
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
962
+ def get_organization_gcp_user_access_binding(name, fields: nil, quota_user: nil, options: nil, &block)
963
+ command = make_simple_command(:get, 'v1/{+name}', options)
964
+ command.response_representation = Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding::Representation
965
+ command.response_class = Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding
966
+ command.params['name'] = name unless name.nil?
967
+ command.query['fields'] = fields unless fields.nil?
968
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
969
+ execute_or_queue_command(command, &block)
970
+ end
971
+
972
+ # Lists all GcpUserAccessBindings for a Google Cloud organization.
973
+ # @param [String] parent
974
+ # Required. Example: "organizations/256"
975
+ # @param [Fixnum] page_size
976
+ # Optional. Maximum number of items to return. The server may return fewer items.
977
+ # If left blank, the server may return any number of items.
978
+ # @param [String] page_token
979
+ # Optional. If left blank, returns the first page. To enumerate all items, use
980
+ # the next_page_token from your previous list operation.
981
+ # @param [String] fields
982
+ # Selector specifying which fields to include in a partial response.
983
+ # @param [String] quota_user
984
+ # Available to use for quota purposes for server-side applications. Can be any
985
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
986
+ # @param [Google::Apis::RequestOptions] options
987
+ # Request-specific options
988
+ #
989
+ # @yield [result, err] Result & error if block supplied
990
+ # @yieldparam result [Google::Apis::AccesscontextmanagerV1::ListGcpUserAccessBindingsResponse] parsed result object
991
+ # @yieldparam err [StandardError] error object if request failed
992
+ #
993
+ # @return [Google::Apis::AccesscontextmanagerV1::ListGcpUserAccessBindingsResponse]
994
+ #
995
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
996
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
997
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
998
+ def list_organization_gcp_user_access_bindings(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
999
+ command = make_simple_command(:get, 'v1/{+parent}/gcpUserAccessBindings', options)
1000
+ command.response_representation = Google::Apis::AccesscontextmanagerV1::ListGcpUserAccessBindingsResponse::Representation
1001
+ command.response_class = Google::Apis::AccesscontextmanagerV1::ListGcpUserAccessBindingsResponse
1002
+ command.params['parent'] = parent unless parent.nil?
1003
+ command.query['pageSize'] = page_size unless page_size.nil?
1004
+ command.query['pageToken'] = page_token unless page_token.nil?
1005
+ command.query['fields'] = fields unless fields.nil?
1006
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1007
+ execute_or_queue_command(command, &block)
1008
+ end
1009
+
1010
+ # Updates a GcpUserAccessBinding. Completion of this long-running operation does
1011
+ # not necessarily signify that the changed binding is deployed onto all affected
1012
+ # users, which may take more time.
1013
+ # @param [String] name
1014
+ # Immutable. Assigned by the server during creation. The last segment has an
1015
+ # arbitrary length and has only URI unreserved characters (as defined by [RFC
1016
+ # 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should
1017
+ # not be specified by the client during creation. Example: "organizations/256/
1018
+ # gcpUserAccessBindings/b3-BhcX_Ud5N"
1019
+ # @param [Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding] gcp_user_access_binding_object
1020
+ # @param [String] update_mask
1021
+ # Required. Only the fields specified in this mask are updated. Because name and
1022
+ # group_key cannot be changed, update_mask is required and must always be:
1023
+ # update_mask ` paths: "access_levels" `
1024
+ # @param [String] fields
1025
+ # Selector specifying which fields to include in a partial response.
1026
+ # @param [String] quota_user
1027
+ # Available to use for quota purposes for server-side applications. Can be any
1028
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1029
+ # @param [Google::Apis::RequestOptions] options
1030
+ # Request-specific options
1031
+ #
1032
+ # @yield [result, err] Result & error if block supplied
1033
+ # @yieldparam result [Google::Apis::AccesscontextmanagerV1::Operation] parsed result object
1034
+ # @yieldparam err [StandardError] error object if request failed
1035
+ #
1036
+ # @return [Google::Apis::AccesscontextmanagerV1::Operation]
1037
+ #
1038
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1039
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1040
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1041
+ def patch_organization_gcp_user_access_binding(name, gcp_user_access_binding_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1042
+ command = make_simple_command(:patch, 'v1/{+name}', options)
1043
+ command.request_representation = Google::Apis::AccesscontextmanagerV1::GcpUserAccessBinding::Representation
1044
+ command.request_object = gcp_user_access_binding_object
1045
+ command.response_representation = Google::Apis::AccesscontextmanagerV1::Operation::Representation
1046
+ command.response_class = Google::Apis::AccesscontextmanagerV1::Operation
1047
+ command.params['name'] = name unless name.nil?
1048
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1049
+ command.query['fields'] = fields unless fields.nil?
1050
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1051
+ execute_or_queue_command(command, &block)
1052
+ end
873
1053
 
874
1054
  protected
875
1055