google-api-client 0.50.0 → 0.53.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 (608) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +0 -14
  3. data/CHANGELOG.md +233 -0
  4. data/OVERVIEW.md +36 -27
  5. data/generated/google/apis/accesscontextmanager_v1/classes.rb +326 -0
  6. data/generated/google/apis/accesscontextmanager_v1/representations.rb +139 -0
  7. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +50 -6
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +18 -0
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +3 -1
  11. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  12. data/generated/google/apis/admin_datatransfer_v1/classes.rb +6 -16
  13. data/generated/google/apis/admin_datatransfer_v1/service.rb +3 -3
  14. data/generated/google/apis/admin_datatransfer_v1.rb +2 -2
  15. data/generated/google/apis/admin_directory_v1/classes.rb +453 -321
  16. data/generated/google/apis/admin_directory_v1/representations.rb +15 -15
  17. data/generated/google/apis/admin_directory_v1/service.rb +325 -185
  18. data/generated/google/apis/admin_directory_v1.rb +2 -2
  19. data/generated/google/apis/admin_reports_v1/classes.rb +48 -43
  20. data/generated/google/apis/admin_reports_v1/service.rb +198 -179
  21. data/generated/google/apis/admin_reports_v1.rb +2 -2
  22. data/generated/google/apis/admob_v1.rb +1 -1
  23. data/generated/google/apis/admob_v1beta.rb +1 -1
  24. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  25. data/generated/google/apis/analytics_v3/service.rb +1 -1
  26. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +10 -2
  27. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +1 -0
  28. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +41 -21
  29. data/generated/google/apis/analyticsadmin_v1alpha.rb +2 -2
  30. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +93 -28
  31. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +2 -0
  32. data/generated/google/apis/analyticsdata_v1alpha/service.rb +5 -5
  33. data/generated/google/apis/analyticsdata_v1alpha.rb +2 -2
  34. data/generated/google/apis/androidenterprise_v1/service.rb +4 -1
  35. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  36. data/generated/google/apis/androidmanagement_v1/classes.rb +69 -4
  37. data/generated/google/apis/androidmanagement_v1/representations.rb +19 -0
  38. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  39. data/generated/google/apis/androidpublisher_v3/service.rb +4 -4
  40. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  41. data/generated/google/apis/apigateway_v1/classes.rb +1116 -0
  42. data/generated/google/apis/apigateway_v1/representations.rb +442 -0
  43. data/generated/google/apis/apigateway_v1/service.rb +1172 -0
  44. data/{lib/google/apis/core/logging.rb → generated/google/apis/apigateway_v1.rb} +14 -10
  45. data/generated/google/apis/apigateway_v1beta/classes.rb +22 -17
  46. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -1
  47. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  48. data/generated/google/apis/apigee_v1/classes.rb +102 -29
  49. data/generated/google/apis/apigee_v1/representations.rb +42 -0
  50. data/generated/google/apis/apigee_v1/service.rb +264 -55
  51. data/generated/google/apis/apigee_v1.rb +1 -1
  52. data/generated/google/apis/appengine_v1/classes.rb +7 -0
  53. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  54. data/generated/google/apis/appengine_v1.rb +1 -1
  55. data/generated/google/apis/appengine_v1beta/classes.rb +8 -0
  56. data/generated/google/apis/appengine_v1beta/representations.rb +1 -0
  57. data/generated/google/apis/appengine_v1beta.rb +1 -1
  58. data/generated/google/apis/area120tables_v1alpha1.rb +4 -1
  59. data/generated/google/apis/artifactregistry_v1/classes.rb +242 -0
  60. data/generated/google/apis/artifactregistry_v1/representations.rb +116 -0
  61. data/generated/google/apis/artifactregistry_v1/service.rb +210 -0
  62. data/generated/google/apis/artifactregistry_v1.rb +38 -0
  63. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +0 -120
  64. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +0 -62
  65. data/generated/google/apis/artifactregistry_v1beta1/service.rb +4 -1
  66. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  67. data/generated/google/apis/artifactregistry_v1beta2/classes.rb +917 -0
  68. data/generated/google/apis/artifactregistry_v1beta2/representations.rb +381 -0
  69. data/generated/google/apis/artifactregistry_v1beta2/service.rb +947 -0
  70. data/generated/google/apis/artifactregistry_v1beta2.rb +38 -0
  71. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/classes.rb +49 -137
  72. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/representations.rb +27 -87
  73. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/service.rb +46 -46
  74. data/generated/google/apis/{assuredworkloads_v1beta1.rb → assuredworkloads_v1.rb} +6 -6
  75. data/generated/google/apis/binaryauthorization_v1/classes.rb +0 -6
  76. data/generated/google/apis/binaryauthorization_v1/representations.rb +0 -1
  77. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  78. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +2 -7
  79. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +0 -1
  80. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  81. data/generated/google/apis/chat_v1/service.rb +308 -0
  82. data/generated/google/apis/chat_v1.rb +1 -1
  83. data/generated/google/apis/cloudasset_v1/classes.rb +332 -3
  84. data/generated/google/apis/cloudasset_v1/representations.rb +139 -0
  85. data/generated/google/apis/cloudasset_v1.rb +1 -1
  86. data/generated/google/apis/cloudasset_v1beta1/classes.rb +326 -0
  87. data/generated/google/apis/cloudasset_v1beta1/representations.rb +139 -0
  88. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  89. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +326 -0
  90. data/generated/google/apis/cloudasset_v1p5beta1/representations.rb +139 -0
  91. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  92. data/generated/google/apis/cloudbuild_v1/classes.rb +4 -4
  93. data/generated/google/apis/cloudbuild_v1/service.rb +1 -1
  94. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  95. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +3 -3
  96. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  97. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +3 -3
  98. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  99. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  100. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  101. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  102. data/generated/google/apis/cloudidentity_v1/classes.rb +240 -0
  103. data/generated/google/apis/cloudidentity_v1/representations.rb +125 -0
  104. data/generated/google/apis/cloudidentity_v1/service.rb +210 -6
  105. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  106. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1 -1
  107. data/generated/google/apis/cloudidentity_v1beta1/service.rb +16 -6
  108. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  109. data/generated/google/apis/cloudiot_v1/classes.rb +0 -6
  110. data/generated/google/apis/cloudiot_v1/representations.rb +0 -1
  111. data/generated/google/apis/cloudiot_v1.rb +1 -1
  112. data/generated/google/apis/cloudkms_v1/classes.rb +0 -6
  113. data/generated/google/apis/cloudkms_v1/representations.rb +0 -1
  114. data/generated/google/apis/cloudkms_v1.rb +1 -1
  115. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +0 -26
  116. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +0 -24
  117. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  118. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +0 -26
  119. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +0 -24
  120. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  121. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +0 -26
  122. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +0 -24
  123. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  124. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +0 -26
  125. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +0 -24
  126. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  127. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +19 -0
  128. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +2 -0
  129. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +12 -2
  130. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  131. data/generated/google/apis/cloudsearch_v1/classes.rb +10 -5
  132. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  133. data/generated/google/apis/cloudtasks_v2/classes.rb +0 -6
  134. data/generated/google/apis/cloudtasks_v2/representations.rb +0 -1
  135. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  136. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +59 -6
  137. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +19 -1
  138. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  139. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +102 -6
  140. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +35 -1
  141. data/generated/google/apis/cloudtasks_v2beta3/service.rb +16 -2
  142. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  143. data/generated/google/apis/composer_v1/classes.rb +123 -0
  144. data/generated/google/apis/composer_v1/representations.rb +49 -0
  145. data/generated/google/apis/composer_v1/service.rb +19 -15
  146. data/generated/google/apis/composer_v1.rb +1 -1
  147. data/generated/google/apis/composer_v1beta1/classes.rb +173 -0
  148. data/generated/google/apis/composer_v1beta1/representations.rb +64 -0
  149. data/generated/google/apis/composer_v1beta1/service.rb +39 -1
  150. data/generated/google/apis/composer_v1beta1.rb +1 -1
  151. data/generated/google/apis/compute_alpha/classes.rb +1071 -341
  152. data/generated/google/apis/compute_alpha/representations.rb +248 -19
  153. data/generated/google/apis/compute_alpha/service.rb +291 -15
  154. data/generated/google/apis/compute_alpha.rb +1 -1
  155. data/generated/google/apis/compute_beta/classes.rb +926 -283
  156. data/generated/google/apis/compute_beta/representations.rb +221 -18
  157. data/generated/google/apis/compute_beta/service.rb +24 -15
  158. data/generated/google/apis/compute_beta.rb +1 -1
  159. data/generated/google/apis/compute_v1/classes.rb +426 -160
  160. data/generated/google/apis/compute_v1/representations.rb +56 -0
  161. data/generated/google/apis/compute_v1/service.rb +700 -551
  162. data/generated/google/apis/compute_v1.rb +1 -1
  163. data/generated/google/apis/container_v1/classes.rb +55 -16
  164. data/generated/google/apis/container_v1/representations.rb +17 -0
  165. data/generated/google/apis/container_v1/service.rb +4 -2
  166. data/generated/google/apis/container_v1.rb +1 -1
  167. data/generated/google/apis/container_v1beta1/classes.rb +31 -20
  168. data/generated/google/apis/container_v1beta1/representations.rb +2 -0
  169. data/generated/google/apis/container_v1beta1/service.rb +6 -2
  170. data/generated/google/apis/container_v1beta1.rb +1 -1
  171. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +0 -6
  172. data/generated/google/apis/containeranalysis_v1alpha1/representations.rb +0 -1
  173. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  174. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +2 -7
  175. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +0 -1
  176. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  177. data/generated/google/apis/content_v2/classes.rb +4 -4
  178. data/generated/google/apis/content_v2.rb +1 -1
  179. data/generated/google/apis/content_v2_1/classes.rb +625 -11
  180. data/generated/google/apis/content_v2_1/representations.rb +266 -0
  181. data/generated/google/apis/content_v2_1/service.rb +295 -0
  182. data/generated/google/apis/content_v2_1.rb +1 -1
  183. data/generated/google/apis/datacatalog_v1beta1/classes.rb +6 -6
  184. data/generated/google/apis/datacatalog_v1beta1/representations.rb +1 -1
  185. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  186. data/generated/google/apis/dataflow_v1b3/classes.rb +17 -1
  187. data/generated/google/apis/dataflow_v1b3/representations.rb +2 -0
  188. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  189. data/generated/google/apis/datalabeling_v1beta1.rb +1 -1
  190. data/generated/google/apis/datamigration_v1beta1/classes.rb +0 -6
  191. data/generated/google/apis/datamigration_v1beta1/representations.rb +0 -1
  192. data/generated/google/apis/datamigration_v1beta1.rb +1 -1
  193. data/generated/google/apis/dataproc_v1/classes.rb +107 -7
  194. data/generated/google/apis/dataproc_v1/representations.rb +36 -1
  195. data/generated/google/apis/dataproc_v1/service.rb +42 -0
  196. data/generated/google/apis/dataproc_v1.rb +1 -1
  197. data/generated/google/apis/dataproc_v1beta2/classes.rb +75 -7
  198. data/generated/google/apis/dataproc_v1beta2/representations.rb +32 -1
  199. data/generated/google/apis/dataproc_v1beta2/service.rb +42 -0
  200. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  201. data/generated/google/apis/deploymentmanager_alpha/classes.rb +276 -644
  202. data/generated/google/apis/deploymentmanager_alpha/representations.rb +10 -143
  203. data/generated/google/apis/deploymentmanager_alpha/service.rb +247 -398
  204. data/generated/google/apis/deploymentmanager_alpha.rb +6 -5
  205. data/generated/google/apis/deploymentmanager_v2/classes.rb +0 -6
  206. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -1
  207. data/generated/google/apis/deploymentmanager_v2/service.rb +5 -25
  208. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  209. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +0 -6
  210. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -1
  211. data/generated/google/apis/deploymentmanager_v2beta/service.rb +8 -40
  212. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  213. data/generated/google/apis/dialogflow_v2/classes.rb +3930 -507
  214. data/generated/google/apis/dialogflow_v2/representations.rb +1866 -285
  215. data/generated/google/apis/dialogflow_v2/service.rb +12 -4
  216. data/generated/google/apis/dialogflow_v2.rb +1 -1
  217. data/generated/google/apis/dialogflow_v2beta1/classes.rb +4100 -682
  218. data/generated/google/apis/dialogflow_v2beta1/representations.rb +1877 -296
  219. data/generated/google/apis/dialogflow_v2beta1/service.rb +496 -32
  220. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  221. data/generated/google/apis/dialogflow_v3/classes.rb +11752 -0
  222. data/generated/google/apis/dialogflow_v3/representations.rb +5158 -0
  223. data/generated/google/apis/dialogflow_v3/service.rb +3414 -0
  224. data/generated/google/apis/{bigqueryreservation_v1alpha2.rb → dialogflow_v3.rb} +13 -12
  225. data/generated/google/apis/dialogflow_v3beta1/classes.rb +5190 -2229
  226. data/generated/google/apis/dialogflow_v3beta1/representations.rb +1789 -342
  227. data/generated/google/apis/dialogflow_v3beta1/service.rb +591 -2
  228. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  229. data/generated/google/apis/displayvideo_v1/classes.rb +97 -3
  230. data/generated/google/apis/displayvideo_v1/representations.rb +45 -0
  231. data/generated/google/apis/displayvideo_v1/service.rb +103 -39
  232. data/generated/google/apis/displayvideo_v1.rb +1 -1
  233. data/generated/google/apis/dlp_v2/service.rb +297 -10
  234. data/generated/google/apis/dlp_v2.rb +1 -1
  235. data/generated/google/apis/dns_v1/classes.rb +71 -0
  236. data/generated/google/apis/dns_v1/representations.rb +33 -0
  237. data/generated/google/apis/dns_v1.rb +1 -1
  238. data/generated/google/apis/dns_v1beta2/classes.rb +6 -0
  239. data/generated/google/apis/dns_v1beta2/representations.rb +1 -0
  240. data/generated/google/apis/dns_v1beta2.rb +1 -1
  241. data/generated/google/apis/documentai_v1beta2/classes.rb +217 -186
  242. data/generated/google/apis/documentai_v1beta2/representations.rb +107 -24
  243. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  244. data/generated/google/apis/documentai_v1beta3/classes.rb +238 -201
  245. data/generated/google/apis/documentai_v1beta3/representations.rb +107 -24
  246. data/generated/google/apis/documentai_v1beta3/service.rb +81 -2
  247. data/generated/google/apis/documentai_v1beta3.rb +1 -1
  248. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  249. data/generated/google/apis/drive_v2/classes.rb +4 -1
  250. data/generated/google/apis/drive_v2/service.rb +24 -56
  251. data/generated/google/apis/drive_v2.rb +1 -1
  252. data/generated/google/apis/drive_v3/classes.rb +4 -1
  253. data/generated/google/apis/drive_v3/service.rb +14 -30
  254. data/generated/google/apis/drive_v3.rb +1 -1
  255. data/generated/google/apis/eventarc_v1beta1/classes.rb +8 -15
  256. data/generated/google/apis/eventarc_v1beta1/representations.rb +0 -1
  257. data/generated/google/apis/eventarc_v1beta1/service.rb +25 -5
  258. data/generated/google/apis/eventarc_v1beta1.rb +1 -1
  259. data/generated/google/apis/file_v1/classes.rb +61 -0
  260. data/generated/google/apis/file_v1/representations.rb +19 -0
  261. data/generated/google/apis/file_v1.rb +1 -1
  262. data/generated/google/apis/firebasedatabase_v1beta/classes.rb +130 -0
  263. data/generated/google/apis/firebasedatabase_v1beta/representations.rb +82 -0
  264. data/generated/google/apis/firebasedatabase_v1beta/service.rb +292 -0
  265. data/generated/google/apis/firebasedatabase_v1beta.rb +44 -0
  266. data/generated/google/apis/games_v1/classes.rb +67 -14
  267. data/generated/google/apis/games_v1/representations.rb +31 -2
  268. data/generated/google/apis/games_v1/service.rb +33 -0
  269. data/generated/google/apis/games_v1.rb +1 -1
  270. data/generated/google/apis/gameservices_v1/service.rb +14 -14
  271. data/generated/google/apis/gameservices_v1.rb +1 -1
  272. data/generated/google/apis/gameservices_v1beta/service.rb +14 -14
  273. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  274. data/generated/google/apis/genomics_v2alpha1/classes.rb +11 -7
  275. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  276. data/generated/google/apis/gmailpostmastertools_v1beta1/classes.rb +9 -0
  277. data/generated/google/apis/gmailpostmastertools_v1beta1/representations.rb +1 -0
  278. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  279. data/generated/google/apis/healthcare_v1/classes.rb +18 -23
  280. data/generated/google/apis/healthcare_v1/representations.rb +0 -1
  281. data/generated/google/apis/healthcare_v1/service.rb +13 -12
  282. data/generated/google/apis/healthcare_v1.rb +1 -1
  283. data/generated/google/apis/healthcare_v1beta1/classes.rb +63 -36
  284. data/generated/google/apis/healthcare_v1beta1/representations.rb +3 -1
  285. data/generated/google/apis/healthcare_v1beta1/service.rb +37 -37
  286. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  287. data/generated/google/apis/iam_v1/classes.rb +101 -0
  288. data/generated/google/apis/iam_v1/representations.rb +33 -0
  289. data/generated/google/apis/iam_v1/service.rb +62 -0
  290. data/generated/google/apis/iam_v1.rb +1 -1
  291. data/generated/google/apis/iap_v1/classes.rb +0 -6
  292. data/generated/google/apis/iap_v1/representations.rb +0 -1
  293. data/generated/google/apis/iap_v1.rb +1 -1
  294. data/generated/google/apis/iap_v1beta1/classes.rb +0 -6
  295. data/generated/google/apis/iap_v1beta1/representations.rb +0 -1
  296. data/generated/google/apis/iap_v1beta1.rb +1 -1
  297. data/generated/google/apis/jobs_v3/classes.rb +9 -807
  298. data/generated/google/apis/jobs_v3/representations.rb +0 -272
  299. data/generated/google/apis/jobs_v3.rb +1 -1
  300. data/generated/google/apis/jobs_v3p1beta1/classes.rb +9 -768
  301. data/generated/google/apis/jobs_v3p1beta1/representations.rb +0 -257
  302. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  303. data/generated/google/apis/jobs_v4/classes.rb +2699 -0
  304. data/generated/google/apis/jobs_v4/representations.rb +934 -0
  305. data/generated/google/apis/jobs_v4/service.rb +903 -0
  306. data/generated/google/apis/{jobs_v2.rb → jobs_v4.rb} +6 -6
  307. data/generated/google/apis/licensing_v1/classes.rb +26 -8
  308. data/generated/google/apis/licensing_v1/representations.rb +12 -0
  309. data/generated/google/apis/licensing_v1/service.rb +32 -29
  310. data/generated/google/apis/licensing_v1.rb +1 -1
  311. data/generated/google/apis/lifesciences_v2beta/classes.rb +25 -0
  312. data/generated/google/apis/lifesciences_v2beta/representations.rb +15 -0
  313. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  314. data/generated/google/apis/localservices_v1.rb +4 -1
  315. data/generated/google/apis/logging_v2/classes.rb +5 -4
  316. data/generated/google/apis/logging_v2.rb +1 -1
  317. data/generated/google/apis/managedidentities_v1/classes.rb +16 -11
  318. data/generated/google/apis/managedidentities_v1/representations.rb +0 -1
  319. data/generated/google/apis/managedidentities_v1.rb +1 -1
  320. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +18 -12
  321. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +0 -1
  322. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  323. data/generated/google/apis/managedidentities_v1beta1/classes.rb +4 -7
  324. data/generated/google/apis/managedidentities_v1beta1/representations.rb +0 -1
  325. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  326. data/generated/google/apis/manufacturers_v1/classes.rb +2 -2
  327. data/generated/google/apis/manufacturers_v1.rb +1 -1
  328. data/generated/google/apis/metastore_v1beta/classes.rb +1151 -0
  329. data/generated/google/apis/metastore_v1beta/representations.rb +479 -0
  330. data/generated/google/apis/metastore_v1beta/service.rb +800 -0
  331. data/generated/google/apis/metastore_v1beta.rb +35 -0
  332. data/generated/google/apis/ml_v1/classes.rb +51 -24
  333. data/generated/google/apis/ml_v1/representations.rb +16 -1
  334. data/generated/google/apis/ml_v1.rb +1 -1
  335. data/generated/google/apis/monitoring_v3/classes.rb +15 -10
  336. data/generated/google/apis/monitoring_v3/service.rb +5 -4
  337. data/generated/google/apis/monitoring_v3.rb +1 -1
  338. data/generated/google/apis/notebooks_v1/classes.rb +13 -6
  339. data/generated/google/apis/notebooks_v1/representations.rb +12 -1
  340. data/generated/google/apis/notebooks_v1/service.rb +34 -0
  341. data/generated/google/apis/notebooks_v1.rb +1 -1
  342. data/generated/google/apis/osconfig_v1/classes.rb +419 -0
  343. data/generated/google/apis/osconfig_v1/representations.rb +168 -0
  344. data/generated/google/apis/osconfig_v1.rb +1 -1
  345. data/generated/google/apis/osconfig_v1beta/classes.rb +419 -0
  346. data/generated/google/apis/osconfig_v1beta/representations.rb +168 -0
  347. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  348. data/generated/google/apis/pagespeedonline_v5/service.rb +3 -3
  349. data/generated/google/apis/pagespeedonline_v5.rb +1 -1
  350. data/generated/google/apis/people_v1/classes.rb +6 -2
  351. data/generated/google/apis/people_v1.rb +1 -1
  352. data/generated/google/apis/privateca_v1beta1/classes.rb +2 -1
  353. data/generated/google/apis/privateca_v1beta1.rb +1 -1
  354. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  355. data/generated/google/apis/pubsub_v1/classes.rb +0 -6
  356. data/generated/google/apis/pubsub_v1/representations.rb +0 -1
  357. data/generated/google/apis/pubsub_v1.rb +1 -1
  358. data/generated/google/apis/pubsub_v1beta2/classes.rb +0 -6
  359. data/generated/google/apis/pubsub_v1beta2/representations.rb +0 -1
  360. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  361. data/generated/google/apis/recommendationengine_v1beta1/service.rb +2 -1
  362. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  363. data/generated/google/apis/recommender_v1/classes.rb +2 -2
  364. data/generated/google/apis/recommender_v1.rb +1 -1
  365. data/generated/google/apis/recommender_v1beta1/classes.rb +2 -2
  366. data/generated/google/apis/recommender_v1beta1/service.rb +317 -0
  367. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  368. data/generated/google/apis/redis_v1/classes.rb +2 -2
  369. data/generated/google/apis/redis_v1.rb +1 -1
  370. data/generated/google/apis/redis_v1beta1/classes.rb +2 -2
  371. data/generated/google/apis/redis_v1beta1.rb +1 -1
  372. data/generated/google/apis/remotebuildexecution_v1/classes.rb +5 -30
  373. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -16
  374. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  375. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +5 -30
  376. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -16
  377. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  378. data/generated/google/apis/remotebuildexecution_v2/classes.rb +5 -30
  379. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -16
  380. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  381. data/generated/google/apis/reseller_v1/service.rb +5 -5
  382. data/generated/google/apis/reseller_v1.rb +4 -4
  383. data/generated/google/apis/run_v1/classes.rb +2 -1
  384. data/generated/google/apis/run_v1.rb +1 -1
  385. data/generated/google/apis/run_v1alpha1/classes.rb +2 -1
  386. data/generated/google/apis/run_v1alpha1.rb +1 -1
  387. data/generated/google/apis/safebrowsing_v4/classes.rb +277 -277
  388. data/generated/google/apis/safebrowsing_v4/representations.rb +128 -128
  389. data/generated/google/apis/safebrowsing_v4/service.rb +44 -44
  390. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  391. data/generated/google/apis/searchconsole_v1/classes.rb +7 -0
  392. data/generated/google/apis/searchconsole_v1/representations.rb +1 -0
  393. data/generated/google/apis/searchconsole_v1.rb +1 -1
  394. data/generated/google/apis/securitycenter_v1/classes.rb +109 -10
  395. data/generated/google/apis/securitycenter_v1/representations.rb +38 -0
  396. data/generated/google/apis/securitycenter_v1/service.rb +1464 -430
  397. data/generated/google/apis/securitycenter_v1.rb +1 -1
  398. data/generated/google/apis/securitycenter_v1beta1/classes.rb +75 -0
  399. data/generated/google/apis/securitycenter_v1beta1/representations.rb +33 -0
  400. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  401. data/generated/google/apis/securitycenter_v1beta2/classes.rb +75 -0
  402. data/generated/google/apis/securitycenter_v1beta2/representations.rb +33 -0
  403. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  404. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +11 -10
  405. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  406. data/generated/google/apis/servicecontrol_v1/service.rb +2 -2
  407. data/generated/google/apis/servicecontrol_v1.rb +3 -3
  408. data/generated/google/apis/servicecontrol_v2/service.rb +2 -2
  409. data/generated/google/apis/servicecontrol_v2.rb +3 -3
  410. data/generated/google/apis/servicedirectory_v1/classes.rb +721 -0
  411. data/generated/google/apis/servicedirectory_v1/representations.rb +304 -0
  412. data/generated/google/apis/servicedirectory_v1/service.rb +957 -0
  413. data/generated/google/apis/servicedirectory_v1.rb +35 -0
  414. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +0 -6
  415. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +0 -1
  416. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  417. data/generated/google/apis/servicemanagement_v1/classes.rb +11 -10
  418. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  419. data/generated/google/apis/servicenetworking_v1/classes.rb +57 -4
  420. data/generated/google/apis/servicenetworking_v1/representations.rb +19 -1
  421. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  422. data/generated/google/apis/servicenetworking_v1beta/classes.rb +37 -4
  423. data/generated/google/apis/servicenetworking_v1beta/representations.rb +17 -1
  424. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  425. data/generated/google/apis/serviceusage_v1/classes.rb +11 -10
  426. data/generated/google/apis/serviceusage_v1.rb +1 -1
  427. data/generated/google/apis/serviceusage_v1beta1/classes.rb +11 -10
  428. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  429. data/generated/google/apis/sheets_v4/classes.rb +309 -0
  430. data/generated/google/apis/sheets_v4/representations.rb +99 -0
  431. data/generated/google/apis/sheets_v4.rb +1 -1
  432. data/generated/google/apis/slides_v1/classes.rb +9 -3
  433. data/generated/google/apis/slides_v1.rb +1 -1
  434. data/generated/google/apis/spanner_v1/classes.rb +9 -6
  435. data/generated/google/apis/spanner_v1/representations.rb +1 -1
  436. data/generated/google/apis/spanner_v1.rb +1 -1
  437. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  438. data/generated/google/apis/sqladmin_v1beta4/classes.rb +97 -14
  439. data/generated/google/apis/sqladmin_v1beta4/representations.rb +34 -0
  440. data/generated/google/apis/sqladmin_v1beta4/service.rb +5 -2
  441. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  442. data/generated/google/apis/storage_v1/classes.rb +7 -0
  443. data/generated/google/apis/storage_v1/representations.rb +1 -0
  444. data/generated/google/apis/storage_v1.rb +1 -1
  445. data/generated/google/apis/storagetransfer_v1/classes.rb +39 -16
  446. data/generated/google/apis/storagetransfer_v1/representations.rb +3 -0
  447. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  448. data/generated/google/apis/testing_v1/classes.rb +1 -1
  449. data/generated/google/apis/testing_v1.rb +1 -1
  450. data/generated/google/apis/trafficdirector_v2/service.rb +1 -1
  451. data/generated/google/apis/trafficdirector_v2.rb +2 -2
  452. data/generated/google/apis/transcoder_v1beta1/classes.rb +12 -2
  453. data/generated/google/apis/transcoder_v1beta1/representations.rb +1 -0
  454. data/generated/google/apis/transcoder_v1beta1.rb +1 -1
  455. data/generated/google/apis/translate_v3/classes.rb +1 -1
  456. data/generated/google/apis/translate_v3.rb +1 -1
  457. data/generated/google/apis/translate_v3beta1/classes.rb +1 -1
  458. data/generated/google/apis/translate_v3beta1.rb +1 -1
  459. data/generated/google/apis/vault_v1/classes.rb +76 -0
  460. data/generated/google/apis/vault_v1/representations.rb +45 -0
  461. data/generated/google/apis/vault_v1.rb +1 -1
  462. data/generated/google/apis/vectortile_v1/classes.rb +59 -4
  463. data/generated/google/apis/vectortile_v1/representations.rb +19 -0
  464. data/generated/google/apis/vectortile_v1.rb +1 -1
  465. data/generated/google/apis/videointelligence_v1/classes.rb +65 -0
  466. data/generated/google/apis/videointelligence_v1/representations.rb +15 -0
  467. data/generated/google/apis/videointelligence_v1.rb +1 -1
  468. data/generated/google/apis/videointelligence_v1beta2/classes.rb +65 -0
  469. data/generated/google/apis/videointelligence_v1beta2/representations.rb +15 -0
  470. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  471. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +65 -0
  472. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +15 -0
  473. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  474. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +65 -0
  475. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +15 -0
  476. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  477. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +65 -0
  478. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +15 -0
  479. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  480. data/generated/google/apis/webmasters_v3/classes.rb +8 -0
  481. data/generated/google/apis/webmasters_v3/representations.rb +1 -0
  482. data/generated/google/apis/workflows_v1beta/classes.rb +4 -4
  483. data/generated/google/apis/workflows_v1beta.rb +1 -1
  484. data/generated/google/apis/youtube_v3/classes.rb +20 -145
  485. data/generated/google/apis/youtube_v3/representations.rb +0 -57
  486. data/generated/google/apis/youtube_v3/service.rb +0 -43
  487. data/generated/google/apis/youtube_v3.rb +1 -1
  488. data/lib/google/apis/version.rb +1 -23
  489. metadata +55 -275
  490. data/.github/CONTRIBUTING.md +0 -31
  491. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -36
  492. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -21
  493. data/.github/ISSUE_TEMPLATE/support_request.md +0 -7
  494. data/.github/workflows/autoapprove.yml +0 -49
  495. data/.github/workflows/release-please.yml +0 -77
  496. data/.gitignore +0 -23
  497. data/.kokoro/build.bat +0 -11
  498. data/.kokoro/build.sh +0 -4
  499. data/.kokoro/continuous/common.cfg +0 -25
  500. data/.kokoro/continuous/linux.cfg +0 -25
  501. data/.kokoro/continuous/osx.cfg +0 -8
  502. data/.kokoro/continuous/post.cfg +0 -30
  503. data/.kokoro/continuous/windows.cfg +0 -29
  504. data/.kokoro/osx.sh +0 -4
  505. data/.kokoro/presubmit/common.cfg +0 -24
  506. data/.kokoro/presubmit/linux.cfg +0 -24
  507. data/.kokoro/presubmit/osx.cfg +0 -8
  508. data/.kokoro/presubmit/windows.cfg +0 -29
  509. data/.kokoro/release.cfg +0 -94
  510. data/.kokoro/trampoline.bat +0 -10
  511. data/.kokoro/trampoline.sh +0 -4
  512. data/.repo-metadata.json +0 -5
  513. data/.rspec +0 -2
  514. data/.rubocop.yml +0 -12
  515. data/.rubocop_todo.yml +0 -63
  516. data/CODE_OF_CONDUCT.md +0 -43
  517. data/Gemfile +0 -55
  518. data/MIGRATING.md +0 -215
  519. data/README.md +0 -402
  520. data/Rakefile +0 -131
  521. data/api_list_config.yaml +0 -9
  522. data/api_names.yaml +0 -1082
  523. data/bin/generate-api +0 -194
  524. data/docs/api-keys.md +0 -20
  525. data/docs/auth.md +0 -53
  526. data/docs/client-secrets.md +0 -69
  527. data/docs/getting-started.md +0 -340
  528. data/docs/installation.md +0 -0
  529. data/docs/logging.md +0 -34
  530. data/docs/media-upload.md +0 -25
  531. data/docs/oauth-installed.md +0 -191
  532. data/docs/oauth-server.md +0 -133
  533. data/docs/oauth-web.md +0 -280
  534. data/docs/oauth.md +0 -268
  535. data/docs/pagination.md +0 -29
  536. data/docs/performance.md +0 -25
  537. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +0 -426
  538. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +0 -195
  539. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +0 -622
  540. data/generated/google/apis/jobs_v2/classes.rb +0 -4012
  541. data/generated/google/apis/jobs_v2/representations.rb +0 -1396
  542. data/generated/google/apis/jobs_v2/service.rb +0 -693
  543. data/google-api-client.gemspec +0 -36
  544. data/lib/google/api_client/auth/installed_app.rb +0 -143
  545. data/lib/google/api_client/auth/key_utils.rb +0 -94
  546. data/lib/google/api_client/auth/storage.rb +0 -104
  547. data/lib/google/api_client/auth/storages/file_store.rb +0 -57
  548. data/lib/google/api_client/auth/storages/redis_store.rb +0 -59
  549. data/lib/google/api_client/client_secrets.rb +0 -176
  550. data/lib/google/apis/core/api_command.rb +0 -209
  551. data/lib/google/apis/core/base_service.rb +0 -447
  552. data/lib/google/apis/core/batch.rb +0 -236
  553. data/lib/google/apis/core/composite_io.rb +0 -97
  554. data/lib/google/apis/core/download.rb +0 -118
  555. data/lib/google/apis/core/hashable.rb +0 -44
  556. data/lib/google/apis/core/http_command.rb +0 -447
  557. data/lib/google/apis/core/json_representation.rb +0 -153
  558. data/lib/google/apis/core/multipart.rb +0 -135
  559. data/lib/google/apis/core/upload.rb +0 -273
  560. data/lib/google/apis/errors.rb +0 -89
  561. data/lib/google/apis/generator/annotator.rb +0 -339
  562. data/lib/google/apis/generator/helpers.rb +0 -76
  563. data/lib/google/apis/generator/model.rb +0 -187
  564. data/lib/google/apis/generator/template.rb +0 -124
  565. data/lib/google/apis/generator/templates/_class.tmpl +0 -43
  566. data/lib/google/apis/generator/templates/_method.tmpl +0 -92
  567. data/lib/google/apis/generator/templates/_representation.tmpl +0 -51
  568. data/lib/google/apis/generator/templates/_representation_stub.tmpl +0 -17
  569. data/lib/google/apis/generator/templates/_representation_type.tmpl +0 -10
  570. data/lib/google/apis/generator/templates/classes.rb.tmpl +0 -29
  571. data/lib/google/apis/generator/templates/module.rb.tmpl +0 -40
  572. data/lib/google/apis/generator/templates/representations.rb.tmpl +0 -32
  573. data/lib/google/apis/generator/templates/service.rb.tmpl +0 -61
  574. data/lib/google/apis/generator.rb +0 -71
  575. data/lib/google/apis/options.rb +0 -116
  576. data/lib/google/apis.rb +0 -58
  577. data/rakelib/devsite/devsite_builder.rb +0 -126
  578. data/rakelib/devsite/link_checker.rb +0 -64
  579. data/rakelib/devsite/repo_metadata.rb +0 -56
  580. data/rakelib/metrics.rake +0 -22
  581. data/rakelib/rubocop.rake +0 -10
  582. data/rakelib/spec.rake +0 -11
  583. data/rakelib/yard.rake +0 -11
  584. data/samples/cli/.env +0 -4
  585. data/samples/cli/Gemfile +0 -7
  586. data/samples/cli/README.md +0 -51
  587. data/samples/cli/google-api-samples +0 -32
  588. data/samples/cli/lib/base_cli.rb +0 -95
  589. data/samples/cli/lib/samples/adsense.rb +0 -99
  590. data/samples/cli/lib/samples/analytics.rb +0 -80
  591. data/samples/cli/lib/samples/androidpublisher.rb +0 -47
  592. data/samples/cli/lib/samples/bigquery.rb +0 -101
  593. data/samples/cli/lib/samples/calendar.rb +0 -83
  594. data/samples/cli/lib/samples/drive.rb +0 -82
  595. data/samples/cli/lib/samples/gmail.rb +0 -157
  596. data/samples/cli/lib/samples/pubsub.rb +0 -114
  597. data/samples/cli/lib/samples/sheets.rb +0 -61
  598. data/samples/cli/lib/samples/translate.rb +0 -44
  599. data/samples/cli/lib/samples/vision.rb +0 -69
  600. data/samples/cli/lib/samples/you_tube.rb +0 -47
  601. data/samples/web/Gemfile +0 -9
  602. data/samples/web/README.md +0 -44
  603. data/samples/web/app.rb +0 -120
  604. data/samples/web/views/calendar.erb +0 -34
  605. data/samples/web/views/drive.erb +0 -33
  606. data/samples/web/views/home.erb +0 -34
  607. data/samples/web/views/layout.erb +0 -40
  608. data/synth.py +0 -40
@@ -1,36 +0,0 @@
1
- lib = File.expand_path('../lib', __FILE__)
2
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require 'google/apis/version'
4
-
5
- Gem::Specification.new do |gem|
6
- gem.name = 'google-api-client'
7
- gem.version = Google::Apis::VERSION
8
- gem.authors = ['Steven Bazyl', 'Tim Emiola', 'Sergio Gomes', 'Bob Aman']
9
- gem.email = ['sbazyl@google.com']
10
- gem.summary = 'Client for accessing Google APIs'
11
- gem.homepage = 'https://github.com/google/google-api-ruby-client'
12
- gem.license = 'Apache-2.0'
13
- gem.metadata = {
14
- "documentation_uri" => "https://googleapis.dev/ruby/google-api-client/v#{Google::Apis::VERSION}"
15
- }
16
-
17
- gem.files = `git ls-files -z`
18
- .split("\x0")
19
- .reject { |f| f.match(%r{^(spec|script)/|^api_names_out|synth\.metadata}) }
20
-
21
- gem.executables = gem.files.grep(%r{^bin/}) { |f| File.basename(f) }
22
- gem.require_paths = %w[lib generated]
23
-
24
- gem.required_ruby_version = '>= 2.4'
25
-
26
- gem.add_runtime_dependency 'representable', '~> 3.0'
27
- gem.add_runtime_dependency 'retriable', '>= 2.0', '< 4.0'
28
- gem.add_runtime_dependency 'addressable', '~> 2.5', '>= 2.5.1'
29
- gem.add_runtime_dependency 'mini_mime', '~> 1.0'
30
- gem.add_runtime_dependency 'signet', '~> 0.12'
31
- gem.add_runtime_dependency 'googleauth', '~> 0.9'
32
- gem.add_runtime_dependency 'httpclient', '>= 2.8.1', '< 3.0'
33
- gem.add_runtime_dependency 'rexml'
34
- gem.add_development_dependency 'thor', '~> 0.19'
35
- gem.add_development_dependency 'activesupport', '>= 4.2', '< 5.1'
36
- end
@@ -1,143 +0,0 @@
1
- # Copyright 2010 Google Inc.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- require 'webrick'
16
-
17
- launchy_available =
18
- begin
19
- require 'launchy'
20
- true
21
- rescue LoadError
22
- warn "Attempted to require google/api_client/auth/installed_app.rb when" \
23
- " launchy is not available. The InstalledAppFlow class is disabled."
24
- false
25
- end
26
-
27
- module Google
28
- class APIClient
29
-
30
- # Small helper for the sample apps for performing OAuth 2.0 flows from the command
31
- # line or in any other installed app environment.
32
- #
33
- # This class is used in some sample apps and tests but is not really part
34
- # of the client libraries, and probably does not belong here. As such, it
35
- # is deprecated. If you do choose to use it, note that you must include the
36
- # `launchy` gem in your bundle, as it is required by this class but not
37
- # listed in the google-api-client gem's requirements.
38
- #
39
- # @example
40
- #
41
- # flow = Google::APIClient::InstalledAppFlow.new(
42
- # :client_id => '691380668085.apps.googleusercontent.com',
43
- # :client_secret => '...',
44
- # :scope => 'https://www.googleapis.com/auth/drive'
45
- # )
46
- # authorization = flow.authorize
47
- # Drive = Google::Apis::DriveV2
48
- # drive = Drive::DriveService.new
49
- # drive.authorization = authorization
50
- #
51
- # @deprecated Use google-auth-library-ruby instead
52
- class InstalledAppFlow
53
-
54
- RESPONSE_BODY = <<-HTML
55
- <html>
56
- <head>
57
- <script>
58
- function closeWindow() {
59
- window.open('', '_self', '');
60
- window.close();
61
- }
62
- setTimeout(closeWindow, 10);
63
- </script>
64
- </head>
65
- <body>You may close this window.</body>
66
- </html>
67
- HTML
68
-
69
- ##
70
- # Configure the flow
71
- #
72
- # @param [Hash] options The configuration parameters for the client.
73
- # @option options [Fixnum] :port
74
- # Port to run the embedded server on. Defaults to 9292
75
- # @option options [String] :client_id
76
- # A unique identifier issued to the client to identify itself to the
77
- # authorization server.
78
- # @option options [String] :client_secret
79
- # A shared symmetric secret issued by the authorization server,
80
- # which is used to authenticate the client.
81
- # @option options [String] :scope
82
- # The scope of the access request, expressed either as an Array
83
- # or as a space-delimited String.
84
- #
85
- # @see Signet::OAuth2::Client
86
- def initialize(options)
87
- @port = options[:port] || 9292
88
- @authorization = Signet::OAuth2::Client.new({
89
- :authorization_uri => 'https://accounts.google.com/o/oauth2/auth',
90
- :token_credential_uri => 'https://accounts.google.com/o/oauth2/token',
91
- :redirect_uri => "http://localhost:#{@port}/"}.update(options)
92
- )
93
- end
94
-
95
- ##
96
- # Request authorization. Opens a browser and waits for response.
97
- #
98
- # @param [Google::APIClient::Storage] storage
99
- # Optional object that responds to :write_credentials, used to serialize
100
- # the OAuth 2 credentials after completing the flow.
101
- #
102
- # @return [Signet::OAuth2::Client]
103
- # Authorization instance, nil if user cancelled.
104
- def authorize(storage=nil, options={})
105
- auth = @authorization
106
-
107
- server = WEBrick::HTTPServer.new(
108
- :Port => @port,
109
- :BindAddress =>"localhost",
110
- :Logger => WEBrick::Log.new(STDOUT, 0),
111
- :AccessLog => []
112
- )
113
- begin
114
- trap("INT") { server.shutdown }
115
-
116
- server.mount_proc '/' do |req, res|
117
- auth.code = req.query['code']
118
- if auth.code
119
- auth.fetch_access_token!
120
- end
121
- res.status = WEBrick::HTTPStatus::RC_ACCEPTED
122
- res.body = RESPONSE_BODY
123
- server.stop
124
- end
125
-
126
- Launchy.open(auth.authorization_uri(options).to_s)
127
- server.start
128
- ensure
129
- server.shutdown
130
- end
131
- if @authorization.access_token
132
- if storage.respond_to?(:write_credentials)
133
- storage.write_credentials(@authorization)
134
- end
135
- return @authorization
136
- else
137
- return nil
138
- end
139
- end
140
- end
141
-
142
- end
143
- end if launchy_available
@@ -1,94 +0,0 @@
1
- # Copyright 2010 Google Inc.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- module Google
16
- class APIClient
17
- ##
18
- # Helper for loading keys from the PKCS12 files downloaded when
19
- # setting up service accounts at the APIs Console.
20
- #
21
- # @deprecated Use google-auth-library-ruby instead
22
- module KeyUtils
23
- ##
24
- # Loads a key from PKCS12 file, assuming a single private key
25
- # is present.
26
- #
27
- # @param [String] keyfile
28
- # Path of the PKCS12 file to load. If not a path to an actual file,
29
- # assumes the string is the content of the file itself.
30
- # @param [String] passphrase
31
- # Passphrase for unlocking the private key
32
- #
33
- # @return [OpenSSL::PKey] The private key for signing assertions.
34
- def self.load_from_pkcs12(keyfile, passphrase)
35
- load_key(keyfile, passphrase) do |content, pass_phrase|
36
- OpenSSL::PKCS12.new(content, pass_phrase).key
37
- end
38
- end
39
-
40
-
41
- ##
42
- # Loads a key from a PEM file.
43
- #
44
- # @param [String] keyfile
45
- # Path of the PEM file to load. If not a path to an actual file,
46
- # assumes the string is the content of the file itself.
47
- # @param [String] passphrase
48
- # Passphrase for unlocking the private key
49
- #
50
- # @return [OpenSSL::PKey] The private key for signing assertions.
51
- #
52
- def self.load_from_pem(keyfile, passphrase)
53
- load_key(keyfile, passphrase) do | content, pass_phrase|
54
- OpenSSL::PKey::RSA.new(content, pass_phrase)
55
- end
56
- end
57
-
58
- private
59
-
60
- ##
61
- # Helper for loading keys from file or memory. Accepts a block
62
- # to handle the specific file format.
63
- #
64
- # @param [String] keyfile
65
- # Path of thefile to load. If not a path to an actual file,
66
- # assumes the string is the content of the file itself.
67
- # @param [String] passphrase
68
- # Passphrase for unlocking the private key
69
- #
70
- # @yield [String, String]
71
- # Key file & passphrase to extract key from
72
- # @yieldparam [String] keyfile
73
- # Contents of the file
74
- # @yieldparam [String] passphrase
75
- # Passphrase to unlock key
76
- # @yieldreturn [OpenSSL::PKey]
77
- # Private key
78
- #
79
- # @return [OpenSSL::PKey] The private key for signing assertions.
80
- def self.load_key(keyfile, passphrase, &block)
81
- begin
82
- begin
83
- content = File.open(keyfile, 'rb') { |io| io.read }
84
- rescue
85
- content = keyfile
86
- end
87
- block.call(content, passphrase)
88
- rescue OpenSSL::OpenSSLError
89
- raise ArgumentError.new("Invalid keyfile or passphrase")
90
- end
91
- end
92
- end
93
- end
94
- end
@@ -1,104 +0,0 @@
1
- # Copyright 2013 Google Inc.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- require 'signet/oauth_2/client'
16
-
17
- module Google
18
- class APIClient
19
- ##
20
- # Represents cached OAuth 2 tokens stored on local disk in a
21
- # JSON serialized file. Meant to resemble the serialized format
22
- # http://google-api-python-client.googlecode.com/hg/docs/epy/oauth2client.file.Storage-class.html
23
- #
24
- # @deprecated Use google-auth-library-ruby instead
25
- class Storage
26
-
27
- AUTHORIZATION_URI = 'https://accounts.google.com/o/oauth2/auth'
28
- TOKEN_CREDENTIAL_URI = 'https://accounts.google.com/o/oauth2/token'
29
-
30
- # @return [Object] Storage object.
31
- attr_accessor :store
32
-
33
- # @return [Signet::OAuth2::Client]
34
- attr_reader :authorization
35
-
36
- ##
37
- # Initializes the Storage object.
38
- #
39
- # @param [Object] store
40
- # Storage object
41
- def initialize(store)
42
- @store= store
43
- @authorization = nil
44
- end
45
-
46
- ##
47
- # Write the credentials to the specified store.
48
- #
49
- # @param [Signet::OAuth2::Client] authorization
50
- # Optional authorization instance. If not provided, the authorization
51
- # already associated with this instance will be written.
52
- def write_credentials(authorization=nil)
53
- @authorization = authorization if authorization
54
- if @authorization.respond_to?(:refresh_token) && @authorization.refresh_token
55
- store.write_credentials(credentials_hash)
56
- end
57
- end
58
-
59
- ##
60
- # Loads credentials and authorizes an client.
61
- # @return [Object] Signet::OAuth2::Client or NIL
62
- def authorize
63
- @authorization = nil
64
- cached_credentials = load_credentials
65
- if cached_credentials && cached_credentials.size > 0
66
- @authorization = Signet::OAuth2::Client.new(cached_credentials)
67
- @authorization.issued_at = Time.at(cached_credentials['issued_at'].to_i)
68
- self.refresh_authorization if @authorization.expired?
69
- end
70
- return @authorization
71
- end
72
-
73
- ##
74
- # refresh credentials and save them to store
75
- def refresh_authorization
76
- authorization.refresh!
77
- self.write_credentials
78
- end
79
-
80
- private
81
-
82
- ##
83
- # Attempt to read in credentials from the specified store.
84
- def load_credentials
85
- store.load_credentials
86
- end
87
-
88
- ##
89
- # @return [Hash] with credentials
90
- def credentials_hash
91
- {
92
- :access_token => authorization.access_token,
93
- :authorization_uri => AUTHORIZATION_URI,
94
- :client_id => authorization.client_id,
95
- :client_secret => authorization.client_secret,
96
- :expires_in => authorization.expires_in,
97
- :refresh_token => authorization.refresh_token,
98
- :token_credential_uri => TOKEN_CREDENTIAL_URI,
99
- :issued_at => authorization.issued_at.to_i
100
- }
101
- end
102
- end
103
- end
104
- end
@@ -1,57 +0,0 @@
1
- # Copyright 2013 Google Inc.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- require 'json'
16
-
17
- module Google
18
- class APIClient
19
- ##
20
- # Represents cached OAuth 2 tokens stored on local disk in a
21
- # JSON serialized file. Meant to resemble the serialized format
22
- # http://google-api-python-client.googlecode.com/hg/docs/epy/oauth2client.file.Storage-class.html
23
- #
24
- # @deprecated Use google-auth-library-ruby instead
25
- class FileStore
26
-
27
- attr_accessor :path
28
-
29
- ##
30
- # Initializes the FileStorage object.
31
- #
32
- # @param [String] path
33
- # Path to the credentials file.
34
- def initialize(path)
35
- @path= path
36
- end
37
-
38
- ##
39
- # Attempt to read in credentials from the specified file.
40
- def load_credentials
41
- open(path, 'r') { |f| JSON.parse(f.read) }
42
- rescue
43
- nil
44
- end
45
-
46
- ##
47
- # Write the credentials to the specified file.
48
- #
49
- # @param [Hash] credentials_hash
50
- def write_credentials(credentials_hash)
51
- open(self.path, 'w+') do |f|
52
- f.write(credentials_hash.to_json)
53
- end
54
- end
55
- end
56
- end
57
- end
@@ -1,59 +0,0 @@
1
- # Copyright 2013 Google Inc.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- require 'json'
16
-
17
- module Google
18
- class APIClient
19
- # @deprecated Use google-auth-library-ruby instead
20
- class RedisStore
21
-
22
- DEFAULT_REDIS_CREDENTIALS_KEY = "google_api_credentials"
23
-
24
- attr_accessor :redis
25
-
26
- ##
27
- # Initializes the RedisStore object.
28
- #
29
- # @param [Object] redis
30
- # Redis instance
31
- # @param [Object] key
32
- # Optional key to store credentials under. Defaults to 'google_api_credentials'
33
- def initialize(redis, key = nil)
34
- @redis= redis
35
- @redis_credentials_key = key
36
- end
37
-
38
- ##
39
- # Attempt to read in credentials from redis.
40
- # @return [Hash]
41
- def load_credentials
42
- credentials = redis.get redis_credentials_key
43
- JSON.parse(credentials) if credentials
44
- end
45
-
46
- def redis_credentials_key
47
- @redis_credentials_key || DEFAULT_REDIS_CREDENTIALS_KEY
48
- end
49
-
50
- ##
51
- # Write the credentials to redis.
52
- #
53
- # @param [Hash] credentials_hash
54
- def write_credentials(credentials_hash)
55
- redis.set(redis_credentials_key, credentials_hash.to_json)
56
- end
57
- end
58
- end
59
- end
@@ -1,176 +0,0 @@
1
- # Copyright 2010 Google Inc.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- require 'json'
16
- require 'googleauth'
17
-
18
-
19
- module Google
20
- class APIClient
21
- ##
22
- # Manages the persistence of client configuration data and secrets. Format
23
- # inspired by the Google API Python client.
24
- #
25
- # @see https://developers.google.com/api-client-library/python/guide/aaa_client_secrets
26
- # @deprecated Use google-auth-library-ruby instead
27
- # @example
28
- # {
29
- # "web": {
30
- # "client_id": "asdfjasdljfasdkjf",
31
- # "client_secret": "1912308409123890",
32
- # "redirect_uris": ["https://www.example.com/oauth2callback"],
33
- # "auth_uri": "https://accounts.google.com/o/oauth2/auth",
34
- # "token_uri": "https://accounts.google.com/o/oauth2/token"
35
- # }
36
- # }
37
- #
38
- # @example
39
- # {
40
- # "installed": {
41
- # "client_id": "837647042410-75ifg...usercontent.com",
42
- # "client_secret":"asdlkfjaskd",
43
- # "redirect_uris": ["http://localhost", "urn:ietf:oauth:2.0:oob"],
44
- # "auth_uri": "https://accounts.google.com/o/oauth2/auth",
45
- # "token_uri": "https://accounts.google.com/o/oauth2/token"
46
- # }
47
- # }
48
- class ClientSecrets
49
- ##
50
- # Reads client configuration from a file
51
- #
52
- # @param [String] filename
53
- # Path to file to load
54
- #
55
- # @return [Google::APIClient::ClientSecrets]
56
- # OAuth client settings
57
- def self.load(filename=nil)
58
- if filename && File.directory?(filename)
59
- search_path = File.expand_path(filename)
60
- filename = nil
61
- end
62
- while filename == nil
63
- search_path ||= File.expand_path('.')
64
- if File.exists?(File.join(search_path, 'client_secrets.json'))
65
- filename = File.join(search_path, 'client_secrets.json')
66
- elsif search_path == File.expand_path('..', search_path)
67
- raise ArgumentError,
68
- 'No client_secrets.json filename supplied ' +
69
- 'and/or could not be found in search path.'
70
- else
71
- search_path = File.expand_path(File.join(search_path, '..'))
72
- end
73
- end
74
- data = File.open(filename, 'r') { |file| JSON.load(file.read) }
75
- return self.new(data)
76
- end
77
-
78
- ##
79
- # Initialize OAuth client settings.
80
- #
81
- # @param [Hash] options
82
- # Parsed client secrets files
83
- def initialize(options={})
84
- # Client auth configuration
85
- @flow = options[:flow] || options.keys.first.to_s || 'web'
86
- fdata = options[@flow.to_sym] || options[@flow]
87
- @client_id = fdata[:client_id] || fdata["client_id"]
88
- @client_secret = fdata[:client_secret] || fdata["client_secret"]
89
- @redirect_uris = fdata[:redirect_uris] || fdata["redirect_uris"]
90
- @redirect_uris ||= [fdata[:redirect_uri] || fdata["redirect_uri"]].compact
91
- @javascript_origins = (
92
- fdata[:javascript_origins] ||
93
- fdata["javascript_origins"]
94
- )
95
- @javascript_origins ||= [fdata[:javascript_origin] || fdata["javascript_origin"]].compact
96
- @authorization_uri = fdata[:auth_uri] || fdata["auth_uri"]
97
- @authorization_uri ||= fdata[:authorization_uri]
98
- @token_credential_uri = fdata[:token_uri] || fdata["token_uri"]
99
- @token_credential_uri ||= fdata[:token_credential_uri]
100
-
101
- # Associated token info
102
- @access_token = fdata[:access_token] || fdata["access_token"]
103
- @refresh_token = fdata[:refresh_token] || fdata["refresh_token"]
104
- @id_token = fdata[:id_token] || fdata["id_token"]
105
- @expires_in = fdata[:expires_in] || fdata["expires_in"]
106
- @expires_at = fdata[:expires_at] || fdata["expires_at"]
107
- @issued_at = fdata[:issued_at] || fdata["issued_at"]
108
- end
109
-
110
- attr_reader(
111
- :flow, :client_id, :client_secret, :redirect_uris, :javascript_origins,
112
- :authorization_uri, :token_credential_uri, :access_token,
113
- :refresh_token, :id_token, :expires_in, :expires_at, :issued_at
114
- )
115
-
116
- ##
117
- # Serialize back to the original JSON form
118
- #
119
- # @return [String]
120
- # JSON
121
- def to_json
122
- return Json.dump(to_hash)
123
- end
124
-
125
- def to_hash
126
- {
127
- self.flow => ({
128
- 'client_id' => self.client_id,
129
- 'client_secret' => self.client_secret,
130
- 'redirect_uris' => self.redirect_uris,
131
- 'javascript_origins' => self.javascript_origins,
132
- 'auth_uri' => self.authorization_uri,
133
- 'token_uri' => self.token_credential_uri,
134
- 'access_token' => self.access_token,
135
- 'refresh_token' => self.refresh_token,
136
- 'id_token' => self.id_token,
137
- 'expires_in' => self.expires_in,
138
- 'expires_at' => self.expires_at,
139
- 'issued_at' => self.issued_at
140
- }).inject({}) do |accu, (k, v)|
141
- # Prunes empty values from JSON output.
142
- unless v == nil || (v.respond_to?(:empty?) && v.empty?)
143
- accu[k] = v
144
- end
145
- accu
146
- end
147
- }
148
- end
149
-
150
- def to_authorization
151
- # NOTE: Do not rely on this default value, as it may change
152
- new_authorization = Signet::OAuth2::Client.new
153
- new_authorization.client_id = self.client_id
154
- new_authorization.client_secret = self.client_secret
155
- new_authorization.authorization_uri = (
156
- self.authorization_uri ||
157
- 'https://accounts.google.com/o/oauth2/auth'
158
- )
159
- new_authorization.token_credential_uri = (
160
- self.token_credential_uri ||
161
- 'https://accounts.google.com/o/oauth2/token'
162
- )
163
- new_authorization.redirect_uri = self.redirect_uris.first
164
-
165
- # These are supported, but unlikely.
166
- new_authorization.access_token = self.access_token
167
- new_authorization.refresh_token = self.refresh_token
168
- new_authorization.id_token = self.id_token
169
- new_authorization.expires_in = self.expires_in
170
- new_authorization.issued_at = self.issued_at if self.issued_at
171
- new_authorization.expires_at = self.expires_at if self.expires_at
172
- return new_authorization
173
- end
174
- end
175
- end
176
- end