google-api-client 0.47.0 → 0.52.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (605) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/release-please.yml +57 -0
  3. data/CHANGELOG.md +466 -0
  4. data/README.md +2 -2
  5. data/generated/google/apis/accessapproval_v1.rb +1 -1
  6. data/generated/google/apis/accessapproval_v1/service.rb +12 -9
  7. data/generated/google/apis/adexchangebuyer2_v2beta1.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/admin_datatransfer_v1.rb +2 -2
  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_directory_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 +323 -183
  18. data/generated/google/apis/admin_reports_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/admob_v1.rb +4 -1
  22. data/generated/google/apis/admob_v1/service.rb +4 -0
  23. data/generated/google/apis/admob_v1beta.rb +38 -0
  24. data/generated/google/apis/admob_v1beta/classes.rb +1035 -0
  25. data/generated/google/apis/admob_v1beta/representations.rb +472 -0
  26. data/generated/google/apis/admob_v1beta/service.rb +279 -0
  27. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  28. data/generated/google/apis/analytics_v3/service.rb +1 -1
  29. data/generated/google/apis/analyticsadmin_v1alpha.rb +1 -1
  30. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +11 -10
  31. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +33 -24
  32. data/generated/google/apis/analyticsdata_v1alpha.rb +2 -2
  33. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +243 -63
  34. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +52 -14
  35. data/generated/google/apis/analyticsdata_v1alpha/service.rb +43 -34
  36. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  37. data/generated/google/apis/androidenterprise_v1/classes.rb +6 -0
  38. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  39. data/generated/google/apis/androidenterprise_v1/service.rb +4 -1
  40. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  41. data/generated/google/apis/androidmanagement_v1/classes.rb +69 -4
  42. data/generated/google/apis/androidmanagement_v1/representations.rb +19 -0
  43. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  44. data/generated/google/apis/androidpublisher_v3/service.rb +4 -4
  45. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  46. data/generated/google/apis/apigateway_v1beta/classes.rb +5 -8
  47. data/generated/google/apis/apigee_v1.rb +1 -1
  48. data/generated/google/apis/apigee_v1/classes.rb +433 -84
  49. data/generated/google/apis/apigee_v1/representations.rb +150 -0
  50. data/generated/google/apis/apigee_v1/service.rb +926 -110
  51. data/generated/google/apis/appengine_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_v1beta.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/area120tables_v1alpha1.rb +4 -1
  58. data/generated/google/apis/area120tables_v1alpha1/classes.rb +58 -0
  59. data/generated/google/apis/area120tables_v1alpha1/representations.rb +31 -0
  60. data/generated/google/apis/area120tables_v1alpha1/service.rb +67 -0
  61. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  62. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +2 -9
  63. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +0 -1
  64. data/generated/google/apis/artifactregistry_v1beta1/service.rb +4 -1
  65. data/generated/google/apis/artifactregistry_v1beta2.rb +38 -0
  66. data/generated/google/apis/artifactregistry_v1beta2/classes.rb +1037 -0
  67. data/generated/google/apis/artifactregistry_v1beta2/representations.rb +443 -0
  68. data/generated/google/apis/artifactregistry_v1beta2/service.rb +947 -0
  69. data/generated/google/apis/{assuredworkloads_v1beta1.rb → assuredworkloads_v1.rb} +6 -6
  70. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/classes.rb +69 -137
  71. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/representations.rb +29 -87
  72. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/service.rb +46 -46
  73. data/generated/google/apis/bigquery_v2.rb +1 -1
  74. data/generated/google/apis/bigquery_v2/classes.rb +6 -0
  75. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  76. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  77. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -0
  78. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +1 -0
  79. data/generated/google/apis/billingbudgets_v1.rb +1 -1
  80. data/generated/google/apis/billingbudgets_v1/classes.rb +11 -0
  81. data/generated/google/apis/billingbudgets_v1/representations.rb +1 -0
  82. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  83. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +11 -0
  84. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  85. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  86. data/generated/google/apis/binaryauthorization_v1/classes.rb +0 -7
  87. data/generated/google/apis/binaryauthorization_v1/representations.rb +0 -1
  88. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  89. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +2 -8
  90. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +0 -1
  91. data/generated/google/apis/calendar_v3.rb +1 -1
  92. data/generated/google/apis/calendar_v3/classes.rb +2 -2
  93. data/generated/google/apis/chat_v1.rb +1 -1
  94. data/generated/google/apis/chat_v1/classes.rb +1 -2
  95. data/generated/google/apis/chat_v1/service.rb +176 -0
  96. data/generated/google/apis/cloudasset_v1.rb +1 -1
  97. data/generated/google/apis/cloudasset_v1/classes.rb +1125 -0
  98. data/generated/google/apis/cloudasset_v1/representations.rb +474 -0
  99. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  100. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  101. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  102. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  103. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  104. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  105. data/generated/google/apis/cloudbuild_v1/classes.rb +1 -1
  106. data/generated/google/apis/cloudbuild_v1/service.rb +1 -1
  107. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  108. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  109. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  110. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  111. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  112. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  113. data/generated/google/apis/cloudidentity_v1/classes.rb +240 -0
  114. data/generated/google/apis/cloudidentity_v1/representations.rb +125 -0
  115. data/generated/google/apis/cloudidentity_v1/service.rb +217 -9
  116. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  117. data/generated/google/apis/cloudidentity_v1beta1/service.rb +45 -23
  118. data/generated/google/apis/cloudiot_v1.rb +1 -1
  119. data/generated/google/apis/cloudiot_v1/classes.rb +0 -7
  120. data/generated/google/apis/cloudiot_v1/representations.rb +0 -1
  121. data/generated/google/apis/cloudkms_v1.rb +1 -1
  122. data/generated/google/apis/cloudkms_v1/classes.rb +0 -7
  123. data/generated/google/apis/cloudkms_v1/representations.rb +0 -1
  124. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  125. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +401 -7
  126. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +280 -1
  127. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  128. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +401 -7
  129. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +280 -1
  130. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  131. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +405 -11
  132. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +280 -1
  133. data/generated/google/apis/cloudresourcemanager_v2/service.rb +6 -6
  134. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  135. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +405 -11
  136. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +280 -1
  137. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +6 -6
  138. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  139. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +19 -0
  140. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +2 -0
  141. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +12 -2
  142. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  143. data/generated/google/apis/cloudsearch_v1/classes.rb +10 -5
  144. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  145. data/generated/google/apis/cloudtasks_v2/classes.rb +0 -7
  146. data/generated/google/apis/cloudtasks_v2/representations.rb +0 -1
  147. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  148. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +59 -7
  149. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +19 -1
  150. data/generated/google/apis/cloudtasks_v2beta2/service.rb +12 -2
  151. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  152. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +102 -7
  153. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +35 -1
  154. data/generated/google/apis/cloudtasks_v2beta3/service.rb +16 -2
  155. data/generated/google/apis/composer_v1.rb +1 -1
  156. data/generated/google/apis/composer_v1/classes.rb +123 -0
  157. data/generated/google/apis/composer_v1/representations.rb +49 -0
  158. data/generated/google/apis/composer_v1/service.rb +19 -15
  159. data/generated/google/apis/composer_v1beta1.rb +1 -1
  160. data/generated/google/apis/composer_v1beta1/classes.rb +173 -0
  161. data/generated/google/apis/composer_v1beta1/representations.rb +64 -0
  162. data/generated/google/apis/composer_v1beta1/service.rb +39 -1
  163. data/generated/google/apis/compute_alpha.rb +1 -1
  164. data/generated/google/apis/compute_alpha/classes.rb +1071 -341
  165. data/generated/google/apis/compute_alpha/representations.rb +248 -19
  166. data/generated/google/apis/compute_alpha/service.rb +291 -15
  167. data/generated/google/apis/compute_beta.rb +1 -1
  168. data/generated/google/apis/compute_beta/classes.rb +926 -283
  169. data/generated/google/apis/compute_beta/representations.rb +221 -18
  170. data/generated/google/apis/compute_beta/service.rb +24 -15
  171. data/generated/google/apis/compute_v1.rb +1 -1
  172. data/generated/google/apis/compute_v1/classes.rb +688 -176
  173. data/generated/google/apis/compute_v1/representations.rb +99 -0
  174. data/generated/google/apis/compute_v1/service.rb +704 -552
  175. data/generated/google/apis/container_v1.rb +1 -1
  176. data/generated/google/apis/container_v1/classes.rb +48 -9
  177. data/generated/google/apis/container_v1/representations.rb +17 -0
  178. data/generated/google/apis/container_v1/service.rb +4 -2
  179. data/generated/google/apis/container_v1beta1.rb +1 -1
  180. data/generated/google/apis/container_v1beta1/classes.rb +53 -13
  181. data/generated/google/apis/container_v1beta1/representations.rb +17 -0
  182. data/generated/google/apis/container_v1beta1/service.rb +6 -2
  183. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  184. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +0 -7
  185. data/generated/google/apis/containeranalysis_v1alpha1/representations.rb +0 -1
  186. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  187. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +2 -8
  188. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +0 -1
  189. data/generated/google/apis/content_v2.rb +1 -1
  190. data/generated/google/apis/content_v2/classes.rb +7 -7
  191. data/generated/google/apis/content_v2/service.rb +10 -8
  192. data/generated/google/apis/content_v2_1.rb +3 -4
  193. data/generated/google/apis/content_v2_1/classes.rb +1533 -1064
  194. data/generated/google/apis/content_v2_1/representations.rb +421 -0
  195. data/generated/google/apis/content_v2_1/service.rb +1127 -809
  196. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  197. data/generated/google/apis/datacatalog_v1beta1/classes.rb +25 -17
  198. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -1
  199. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  200. data/generated/google/apis/dataflow_v1b3/classes.rb +29 -1
  201. data/generated/google/apis/dataflow_v1b3/representations.rb +5 -0
  202. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  203. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  204. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  205. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  206. data/generated/google/apis/datamigration_v1beta1.rb +34 -0
  207. data/generated/google/apis/datamigration_v1beta1/classes.rb +1664 -0
  208. data/generated/google/apis/datamigration_v1beta1/representations.rb +677 -0
  209. data/generated/google/apis/datamigration_v1beta1/service.rb +1172 -0
  210. data/generated/google/apis/dataproc_v1.rb +1 -1
  211. data/generated/google/apis/dataproc_v1/classes.rb +80 -9
  212. data/generated/google/apis/dataproc_v1/representations.rb +22 -1
  213. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  214. data/generated/google/apis/dataproc_v1beta2/classes.rb +48 -9
  215. data/generated/google/apis/dataproc_v1beta2/representations.rb +18 -1
  216. data/generated/google/apis/datastore_v1.rb +1 -1
  217. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  218. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  219. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  220. data/generated/google/apis/deploymentmanager_alpha.rb +6 -5
  221. data/generated/google/apis/deploymentmanager_alpha/classes.rb +276 -644
  222. data/generated/google/apis/deploymentmanager_alpha/representations.rb +10 -143
  223. data/generated/google/apis/deploymentmanager_alpha/service.rb +247 -398
  224. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  225. data/generated/google/apis/deploymentmanager_v2/classes.rb +203 -558
  226. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -132
  227. data/generated/google/apis/deploymentmanager_v2/service.rb +149 -213
  228. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  229. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +247 -609
  230. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -132
  231. data/generated/google/apis/deploymentmanager_v2beta/service.rb +246 -359
  232. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  233. data/generated/google/apis/dfareporting_v3_3/classes.rb +6 -6
  234. data/generated/google/apis/dfareporting_v3_3/service.rb +12 -12
  235. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  236. data/generated/google/apis/dfareporting_v3_4/classes.rb +6 -6
  237. data/generated/google/apis/dfareporting_v3_4/service.rb +12 -12
  238. data/generated/google/apis/dialogflow_v2.rb +1 -1
  239. data/generated/google/apis/dialogflow_v2/classes.rb +62 -15
  240. data/generated/google/apis/dialogflow_v2/representations.rb +28 -12
  241. data/generated/google/apis/dialogflow_v2/service.rb +12 -4
  242. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  243. data/generated/google/apis/dialogflow_v2beta1/classes.rb +60 -18
  244. data/generated/google/apis/dialogflow_v2beta1/representations.rb +28 -12
  245. data/generated/google/apis/dialogflow_v2beta1/service.rb +508 -38
  246. data/generated/google/apis/{bigqueryreservation_v1alpha2.rb → dialogflow_v3.rb} +13 -12
  247. data/generated/google/apis/dialogflow_v3/classes.rb +8943 -0
  248. data/generated/google/apis/dialogflow_v3/representations.rb +3773 -0
  249. data/generated/google/apis/dialogflow_v3/service.rb +3006 -0
  250. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  251. data/generated/google/apis/dialogflow_v3beta1/classes.rb +180 -15
  252. data/generated/google/apis/dialogflow_v3beta1/representations.rb +65 -12
  253. data/generated/google/apis/dialogflow_v3beta1/service.rb +183 -2
  254. data/generated/google/apis/displayvideo_v1.rb +1 -1
  255. data/generated/google/apis/displayvideo_v1/classes.rb +306 -34
  256. data/generated/google/apis/displayvideo_v1/representations.rb +122 -0
  257. data/generated/google/apis/displayvideo_v1/service.rb +342 -38
  258. data/generated/google/apis/dlp_v2.rb +1 -1
  259. data/generated/google/apis/dlp_v2/classes.rb +6 -0
  260. data/generated/google/apis/dlp_v2/representations.rb +1 -0
  261. data/generated/google/apis/dlp_v2/service.rb +294 -1
  262. data/generated/google/apis/dns_v1.rb +1 -1
  263. data/generated/google/apis/dns_v1/classes.rb +71 -0
  264. data/generated/google/apis/dns_v1/representations.rb +33 -0
  265. data/generated/google/apis/dns_v1beta2.rb +1 -1
  266. data/generated/google/apis/dns_v1beta2/classes.rb +19 -0
  267. data/generated/google/apis/dns_v1beta2/representations.rb +13 -0
  268. data/generated/google/apis/dns_v1beta2/service.rb +176 -0
  269. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  270. data/generated/google/apis/documentai_v1beta2/classes.rb +220 -102
  271. data/generated/google/apis/documentai_v1beta2/representations.rb +105 -9
  272. data/generated/google/apis/documentai_v1beta3.rb +1 -1
  273. data/generated/google/apis/documentai_v1beta3/classes.rb +241 -117
  274. data/generated/google/apis/documentai_v1beta3/representations.rb +105 -9
  275. data/generated/google/apis/documentai_v1beta3/service.rb +81 -2
  276. data/generated/google/apis/domains_v1alpha2.rb +1 -1
  277. data/generated/google/apis/domains_v1beta1.rb +1 -1
  278. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  279. data/generated/google/apis/drive_v2.rb +1 -1
  280. data/generated/google/apis/drive_v2/classes.rb +24 -21
  281. data/generated/google/apis/drive_v2/service.rb +26 -58
  282. data/generated/google/apis/drive_v3.rb +1 -1
  283. data/generated/google/apis/drive_v3/classes.rb +12 -8
  284. data/generated/google/apis/drive_v3/service.rb +14 -30
  285. data/generated/google/apis/eventarc_v1beta1.rb +1 -1
  286. data/generated/google/apis/eventarc_v1beta1/classes.rb +9 -12
  287. data/generated/google/apis/eventarc_v1beta1/service.rb +25 -5
  288. data/generated/google/apis/file_v1.rb +1 -1
  289. data/generated/google/apis/file_v1/classes.rb +566 -4
  290. data/generated/google/apis/file_v1/representations.rb +222 -0
  291. data/generated/google/apis/file_v1/service.rb +229 -1
  292. data/generated/google/apis/file_v1beta1.rb +1 -1
  293. data/generated/google/apis/file_v1beta1/classes.rb +346 -6
  294. data/generated/google/apis/file_v1beta1/representations.rb +149 -0
  295. data/generated/google/apis/file_v1beta1/service.rb +6 -2
  296. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  297. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  298. data/generated/google/apis/firebasedatabase_v1beta.rb +44 -0
  299. data/generated/google/apis/firebasedatabase_v1beta/classes.rb +130 -0
  300. data/generated/google/apis/{displayvideo_v1dev → firebasedatabase_v1beta}/representations.rb +26 -16
  301. data/generated/google/apis/firebasedatabase_v1beta/service.rb +292 -0
  302. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  303. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  304. data/generated/google/apis/firestore_v1.rb +1 -1
  305. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  306. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  307. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  308. data/generated/google/apis/games_v1.rb +1 -1
  309. data/generated/google/apis/games_v1/classes.rb +353 -0
  310. data/generated/google/apis/games_v1/representations.rb +145 -0
  311. data/generated/google/apis/games_v1/service.rb +67 -0
  312. data/generated/google/apis/gameservices_v1.rb +1 -1
  313. data/generated/google/apis/gameservices_v1/classes.rb +1 -2
  314. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  315. data/generated/google/apis/gameservices_v1beta/classes.rb +1 -2
  316. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  317. data/generated/google/apis/genomics_v2alpha1/classes.rb +36 -7
  318. data/generated/google/apis/genomics_v2alpha1/representations.rb +15 -0
  319. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  320. data/generated/google/apis/gmailpostmastertools_v1beta1/classes.rb +9 -0
  321. data/generated/google/apis/gmailpostmastertools_v1beta1/representations.rb +1 -0
  322. data/generated/google/apis/healthcare_v1.rb +1 -1
  323. data/generated/google/apis/healthcare_v1/classes.rb +18 -17
  324. data/generated/google/apis/healthcare_v1/service.rb +13 -12
  325. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  326. data/generated/google/apis/healthcare_v1beta1/classes.rb +321 -70
  327. data/generated/google/apis/healthcare_v1beta1/representations.rb +121 -18
  328. data/generated/google/apis/healthcare_v1beta1/service.rb +75 -39
  329. data/generated/google/apis/iam_v1.rb +2 -5
  330. data/generated/google/apis/iam_v1/classes.rb +109 -11
  331. data/generated/google/apis/iam_v1/representations.rb +33 -1
  332. data/generated/google/apis/iam_v1/service.rb +63 -4
  333. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  334. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  335. data/generated/google/apis/iap_v1.rb +1 -1
  336. data/generated/google/apis/iap_v1/classes.rb +0 -18
  337. data/generated/google/apis/iap_v1/representations.rb +0 -2
  338. data/generated/google/apis/iap_v1beta1.rb +1 -1
  339. data/generated/google/apis/iap_v1beta1/classes.rb +0 -7
  340. data/generated/google/apis/iap_v1beta1/representations.rb +0 -1
  341. data/generated/google/apis/jobs_v3.rb +1 -1
  342. data/generated/google/apis/jobs_v3/classes.rb +9 -807
  343. data/generated/google/apis/jobs_v3/representations.rb +0 -272
  344. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  345. data/generated/google/apis/jobs_v3p1beta1/classes.rb +9 -768
  346. data/generated/google/apis/jobs_v3p1beta1/representations.rb +0 -257
  347. data/generated/google/apis/{jobs_v2.rb → jobs_v4.rb} +6 -6
  348. data/generated/google/apis/jobs_v4/classes.rb +2699 -0
  349. data/generated/google/apis/jobs_v4/representations.rb +934 -0
  350. data/generated/google/apis/jobs_v4/service.rb +903 -0
  351. data/generated/google/apis/licensing_v1.rb +1 -1
  352. data/generated/google/apis/licensing_v1/classes.rb +26 -8
  353. data/generated/google/apis/licensing_v1/representations.rb +12 -0
  354. data/generated/google/apis/licensing_v1/service.rb +32 -29
  355. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  356. data/generated/google/apis/lifesciences_v2beta/classes.rb +25 -0
  357. data/generated/google/apis/lifesciences_v2beta/representations.rb +15 -0
  358. data/generated/google/apis/logging_v2.rb +1 -1
  359. data/generated/google/apis/logging_v2/classes.rb +187 -9
  360. data/generated/google/apis/logging_v2/representations.rb +77 -0
  361. data/generated/google/apis/logging_v2/service.rb +446 -25
  362. data/generated/google/apis/managedidentities_v1.rb +1 -1
  363. data/generated/google/apis/managedidentities_v1/classes.rb +361 -16
  364. data/generated/google/apis/managedidentities_v1/representations.rb +149 -1
  365. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  366. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +363 -17
  367. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +149 -1
  368. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  369. data/generated/google/apis/managedidentities_v1beta1/classes.rb +349 -12
  370. data/generated/google/apis/managedidentities_v1beta1/representations.rb +149 -1
  371. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  372. data/generated/google/apis/memcache_v1beta2/classes.rb +345 -4
  373. data/generated/google/apis/memcache_v1beta2/representations.rb +149 -0
  374. data/generated/google/apis/metastore_v1beta.rb +35 -0
  375. data/generated/google/apis/metastore_v1beta/classes.rb +1151 -0
  376. data/generated/google/apis/metastore_v1beta/representations.rb +479 -0
  377. data/generated/google/apis/metastore_v1beta/service.rb +800 -0
  378. data/generated/google/apis/ml_v1.rb +1 -1
  379. data/generated/google/apis/ml_v1/classes.rb +85 -25
  380. data/generated/google/apis/ml_v1/representations.rb +42 -1
  381. data/generated/google/apis/ml_v1/service.rb +35 -0
  382. data/generated/google/apis/monitoring_v3.rb +1 -1
  383. data/generated/google/apis/monitoring_v3/classes.rb +13 -8
  384. data/generated/google/apis/monitoring_v3/service.rb +5 -4
  385. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  386. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -0
  387. data/generated/google/apis/networkmanagement_v1/representations.rb +1 -0
  388. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  389. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +57 -0
  390. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +31 -0
  391. data/generated/google/apis/notebooks_v1.rb +34 -0
  392. data/generated/google/apis/notebooks_v1/classes.rb +1455 -0
  393. data/generated/google/apis/notebooks_v1/representations.rb +580 -0
  394. data/generated/google/apis/notebooks_v1/service.rb +1042 -0
  395. data/generated/google/apis/osconfig_v1.rb +1 -1
  396. data/generated/google/apis/osconfig_v1/classes.rb +419 -0
  397. data/generated/google/apis/osconfig_v1/representations.rb +168 -0
  398. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  399. data/generated/google/apis/osconfig_v1beta/classes.rb +419 -0
  400. data/generated/google/apis/osconfig_v1beta/representations.rb +168 -0
  401. data/generated/google/apis/pagespeedonline_v5.rb +1 -1
  402. data/generated/google/apis/pagespeedonline_v5/service.rb +3 -3
  403. data/generated/google/apis/people_v1.rb +1 -1
  404. data/generated/google/apis/people_v1/classes.rb +10 -6
  405. data/generated/google/apis/people_v1/service.rb +21 -18
  406. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  407. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  408. data/generated/google/apis/privateca_v1beta1.rb +36 -0
  409. data/generated/google/apis/privateca_v1beta1/classes.rb +2467 -0
  410. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  411. data/generated/google/apis/privateca_v1beta1/service.rb +1437 -0
  412. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  413. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +37 -0
  414. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +18 -0
  415. data/generated/google/apis/pubsub_v1.rb +1 -1
  416. data/generated/google/apis/pubsub_v1/classes.rb +0 -7
  417. data/generated/google/apis/pubsub_v1/representations.rb +0 -1
  418. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  419. data/generated/google/apis/pubsub_v1beta2/classes.rb +0 -7
  420. data/generated/google/apis/pubsub_v1beta2/representations.rb +0 -1
  421. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  422. data/generated/google/apis/realtimebidding_v1/classes.rb +545 -0
  423. data/generated/google/apis/realtimebidding_v1/representations.rb +232 -0
  424. data/generated/google/apis/realtimebidding_v1/service.rb +450 -0
  425. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  426. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  427. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  428. data/generated/google/apis/recommender_v1.rb +1 -1
  429. data/generated/google/apis/recommender_v1/classes.rb +2 -2
  430. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  431. data/generated/google/apis/recommender_v1beta1/classes.rb +2 -2
  432. data/generated/google/apis/recommender_v1beta1/service.rb +317 -0
  433. data/generated/google/apis/redis_v1.rb +1 -1
  434. data/generated/google/apis/redis_v1/classes.rb +86 -0
  435. data/generated/google/apis/redis_v1/representations.rb +34 -0
  436. data/generated/google/apis/redis_v1/service.rb +34 -0
  437. data/generated/google/apis/redis_v1beta1.rb +1 -1
  438. data/generated/google/apis/redis_v1beta1/classes.rb +58 -0
  439. data/generated/google/apis/redis_v1beta1/representations.rb +20 -0
  440. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  441. data/generated/google/apis/remotebuildexecution_v1/classes.rb +5 -30
  442. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -16
  443. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  444. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +5 -30
  445. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -16
  446. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  447. data/generated/google/apis/remotebuildexecution_v2/classes.rb +5 -30
  448. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -16
  449. data/generated/google/apis/reseller_v1.rb +4 -4
  450. data/generated/google/apis/reseller_v1/service.rb +5 -5
  451. data/generated/google/apis/run_v1.rb +1 -1
  452. data/generated/google/apis/run_v1/classes.rb +2 -1
  453. data/generated/google/apis/run_v1alpha1.rb +1 -1
  454. data/generated/google/apis/run_v1alpha1/classes.rb +2 -1
  455. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  456. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +0 -7
  457. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +0 -1
  458. data/generated/google/apis/safebrowsing_v4.rb +35 -0
  459. data/generated/google/apis/safebrowsing_v4/classes.rb +909 -0
  460. data/generated/google/apis/safebrowsing_v4/representations.rb +445 -0
  461. data/generated/google/apis/safebrowsing_v4/service.rb +286 -0
  462. data/generated/google/apis/searchconsole_v1.rb +1 -1
  463. data/generated/google/apis/searchconsole_v1/classes.rb +7 -0
  464. data/generated/google/apis/searchconsole_v1/representations.rb +1 -0
  465. data/generated/google/apis/secretmanager_v1.rb +1 -1
  466. data/generated/google/apis/secretmanager_v1/classes.rb +0 -7
  467. data/generated/google/apis/secretmanager_v1/representations.rb +0 -1
  468. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  469. data/generated/google/apis/secretmanager_v1beta1/classes.rb +0 -7
  470. data/generated/google/apis/secretmanager_v1beta1/representations.rb +0 -1
  471. data/generated/google/apis/securitycenter_v1.rb +1 -1
  472. data/generated/google/apis/securitycenter_v1/classes.rb +91 -0
  473. data/generated/google/apis/securitycenter_v1/representations.rb +37 -0
  474. data/generated/google/apis/securitycenter_v1/service.rb +1448 -414
  475. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  476. data/generated/google/apis/securitycenter_v1beta1/classes.rb +68 -0
  477. data/generated/google/apis/securitycenter_v1beta1/representations.rb +32 -0
  478. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  479. data/generated/google/apis/securitycenter_v1beta2/classes.rb +68 -0
  480. data/generated/google/apis/securitycenter_v1beta2/representations.rb +32 -0
  481. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  482. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +1 -1
  483. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  484. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +12 -11
  485. data/generated/google/apis/servicecontrol_v1.rb +3 -3
  486. data/generated/google/apis/servicecontrol_v1/classes.rb +45 -0
  487. data/generated/google/apis/servicecontrol_v1/representations.rb +6 -0
  488. data/generated/google/apis/servicecontrol_v1/service.rb +2 -2
  489. data/generated/google/apis/servicecontrol_v2.rb +3 -3
  490. data/generated/google/apis/servicecontrol_v2/classes.rb +45 -0
  491. data/generated/google/apis/servicecontrol_v2/representations.rb +6 -0
  492. data/generated/google/apis/servicecontrol_v2/service.rb +2 -2
  493. data/generated/google/apis/servicedirectory_v1.rb +35 -0
  494. data/generated/google/apis/servicedirectory_v1/classes.rb +721 -0
  495. data/generated/google/apis/servicedirectory_v1/representations.rb +304 -0
  496. data/generated/google/apis/servicedirectory_v1/service.rb +957 -0
  497. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  498. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +26 -13
  499. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +0 -1
  500. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  501. data/generated/google/apis/servicemanagement_v1/classes.rb +2 -61
  502. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -18
  503. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  504. data/generated/google/apis/servicenetworking_v1/classes.rb +79 -5
  505. data/generated/google/apis/servicenetworking_v1/representations.rb +33 -1
  506. data/generated/google/apis/servicenetworking_v1/service.rb +80 -0
  507. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  508. data/generated/google/apis/servicenetworking_v1beta/classes.rb +38 -5
  509. data/generated/google/apis/servicenetworking_v1beta/representations.rb +17 -1
  510. data/generated/google/apis/serviceusage_v1.rb +1 -1
  511. data/generated/google/apis/serviceusage_v1/classes.rb +12 -11
  512. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  513. data/generated/google/apis/serviceusage_v1beta1/classes.rb +42 -11
  514. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -0
  515. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  516. data/generated/google/apis/sheets_v4.rb +1 -1
  517. data/generated/google/apis/sheets_v4/classes.rb +332 -7
  518. data/generated/google/apis/sheets_v4/representations.rb +102 -0
  519. data/generated/google/apis/slides_v1.rb +1 -1
  520. data/generated/google/apis/slides_v1/classes.rb +9 -3
  521. data/generated/google/apis/smartdevicemanagement_v1.rb +1 -1
  522. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +0 -34
  523. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +0 -16
  524. data/generated/google/apis/smartdevicemanagement_v1/service.rb +3 -8
  525. data/generated/google/apis/spanner_v1.rb +1 -1
  526. data/generated/google/apis/spanner_v1/classes.rb +10 -8
  527. data/generated/google/apis/spanner_v1/representations.rb +1 -1
  528. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  529. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  530. data/generated/google/apis/sqladmin_v1beta4/classes.rb +118 -11
  531. data/generated/google/apis/sqladmin_v1beta4/representations.rb +37 -0
  532. data/generated/google/apis/sqladmin_v1beta4/service.rb +1 -1
  533. data/generated/google/apis/storage_v1.rb +1 -1
  534. data/generated/google/apis/storage_v1/classes.rb +7 -0
  535. data/generated/google/apis/storage_v1/representations.rb +1 -0
  536. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  537. data/generated/google/apis/storagetransfer_v1/classes.rb +43 -21
  538. data/generated/google/apis/storagetransfer_v1/representations.rb +3 -0
  539. data/generated/google/apis/storagetransfer_v1/service.rb +3 -3
  540. data/generated/google/apis/testing_v1.rb +1 -1
  541. data/generated/google/apis/testing_v1/classes.rb +1 -1
  542. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  543. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  544. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  545. data/generated/google/apis/trafficdirector_v2.rb +2 -2
  546. data/generated/google/apis/trafficdirector_v2/service.rb +1 -1
  547. data/generated/google/apis/transcoder_v1beta1.rb +34 -0
  548. data/generated/google/apis/transcoder_v1beta1/classes.rb +1694 -0
  549. data/generated/google/apis/transcoder_v1beta1/representations.rb +757 -0
  550. data/generated/google/apis/transcoder_v1beta1/service.rb +329 -0
  551. data/generated/google/apis/translate_v3.rb +1 -1
  552. data/generated/google/apis/translate_v3/classes.rb +3 -2
  553. data/generated/google/apis/translate_v3beta1.rb +1 -1
  554. data/generated/google/apis/translate_v3beta1/classes.rb +3 -2
  555. data/generated/google/apis/vault_v1.rb +1 -1
  556. data/generated/google/apis/vault_v1/classes.rb +76 -0
  557. data/generated/google/apis/vault_v1/representations.rb +45 -0
  558. data/generated/google/apis/vectortile_v1.rb +1 -1
  559. data/generated/google/apis/vectortile_v1/classes.rb +59 -4
  560. data/generated/google/apis/vectortile_v1/representations.rb +19 -0
  561. data/generated/google/apis/videointelligence_v1.rb +1 -1
  562. data/generated/google/apis/videointelligence_v1/classes.rb +65 -0
  563. data/generated/google/apis/videointelligence_v1/representations.rb +15 -0
  564. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  565. data/generated/google/apis/videointelligence_v1beta2/classes.rb +65 -0
  566. data/generated/google/apis/videointelligence_v1beta2/representations.rb +15 -0
  567. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  568. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +65 -0
  569. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +15 -0
  570. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  571. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +65 -0
  572. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +15 -0
  573. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  574. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +65 -0
  575. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +15 -0
  576. data/generated/google/apis/vision_v1.rb +1 -1
  577. data/generated/google/apis/vision_v1/classes.rb +16 -16
  578. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  579. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  580. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  581. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  582. data/generated/google/apis/workflows_v1beta.rb +1 -1
  583. data/generated/google/apis/workflows_v1beta/classes.rb +4 -4
  584. data/generated/google/apis/youtube_v3.rb +1 -1
  585. data/generated/google/apis/youtube_v3/classes.rb +2 -2
  586. data/generated/google/apis/youtube_v3/service.rb +8 -8
  587. data/lib/google/apis/version.rb +1 -1
  588. metadata +60 -27
  589. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +0 -426
  590. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +0 -195
  591. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +0 -622
  592. data/generated/google/apis/displayvideo_v1beta.rb +0 -38
  593. data/generated/google/apis/displayvideo_v1beta/classes.rb +0 -146
  594. data/generated/google/apis/displayvideo_v1beta/representations.rb +0 -72
  595. data/generated/google/apis/displayvideo_v1beta/service.rb +0 -161
  596. data/generated/google/apis/displayvideo_v1beta2.rb +0 -38
  597. data/generated/google/apis/displayvideo_v1beta2/classes.rb +0 -146
  598. data/generated/google/apis/displayvideo_v1beta2/representations.rb +0 -72
  599. data/generated/google/apis/displayvideo_v1beta2/service.rb +0 -130
  600. data/generated/google/apis/displayvideo_v1dev.rb +0 -38
  601. data/generated/google/apis/displayvideo_v1dev/classes.rb +0 -146
  602. data/generated/google/apis/displayvideo_v1dev/service.rb +0 -130
  603. data/generated/google/apis/jobs_v2/classes.rb +0 -4012
  604. data/generated/google/apis/jobs_v2/representations.rb +0 -1396
  605. data/generated/google/apis/jobs_v2/service.rb +0 -693
@@ -0,0 +1,34 @@
1
+ # Copyright 2015 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 'google/apis/datamigration_v1beta1/service.rb'
16
+ require 'google/apis/datamigration_v1beta1/classes.rb'
17
+ require 'google/apis/datamigration_v1beta1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Database Migration API
22
+ #
23
+ # Manage Cloud Database Migration Service resources on Google Cloud Platform.
24
+ #
25
+ # @see https://cloud.google.com/datamigration/
26
+ module DatamigrationV1beta1
27
+ VERSION = 'V1beta1'
28
+ REVISION = '20201202'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,1664 @@
1
+ # Copyright 2015 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 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module DatamigrationV1beta1
24
+
25
+ # Specifies the audit configuration for a service. The configuration determines
26
+ # which permission types are logged, and what identities, if any, are exempted
27
+ # from logging. An AuditConfig must have one or more AuditLogConfigs. If there
28
+ # are AuditConfigs for both `allServices` and a specific service, the union of
29
+ # the two AuditConfigs is used for that service: the log_types specified in each
30
+ # AuditConfig are enabled, and the exempted_members in each AuditLogConfig are
31
+ # exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` "
32
+ # service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", "
33
+ # exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `,
34
+ # ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com",
35
+ # "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE"
36
+ # , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice,
37
+ # this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also
38
+ # exempts jose@example.com from DATA_READ logging, and aliya@example.com from
39
+ # DATA_WRITE logging.
40
+ class AuditConfig
41
+ include Google::Apis::Core::Hashable
42
+
43
+ # The configuration for logging of each type of permission.
44
+ # Corresponds to the JSON property `auditLogConfigs`
45
+ # @return [Array<Google::Apis::DatamigrationV1beta1::AuditLogConfig>]
46
+ attr_accessor :audit_log_configs
47
+
48
+ # Specifies a service that will be enabled for audit logging. For example, `
49
+ # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
50
+ # value that covers all services.
51
+ # Corresponds to the JSON property `service`
52
+ # @return [String]
53
+ attr_accessor :service
54
+
55
+ def initialize(**args)
56
+ update!(**args)
57
+ end
58
+
59
+ # Update properties of this object
60
+ def update!(**args)
61
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
62
+ @service = args[:service] if args.key?(:service)
63
+ end
64
+ end
65
+
66
+ # Provides the configuration for logging a type of permissions. Example: ` "
67
+ # audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user:
68
+ # jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables '
69
+ # DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from
70
+ # DATA_READ logging.
71
+ class AuditLogConfig
72
+ include Google::Apis::Core::Hashable
73
+
74
+ # Specifies the identities that do not cause logging for this type of permission.
75
+ # Follows the same format of Binding.members.
76
+ # Corresponds to the JSON property `exemptedMembers`
77
+ # @return [Array<String>]
78
+ attr_accessor :exempted_members
79
+
80
+ # The log type that this config enables.
81
+ # Corresponds to the JSON property `logType`
82
+ # @return [String]
83
+ attr_accessor :log_type
84
+
85
+ def initialize(**args)
86
+ update!(**args)
87
+ end
88
+
89
+ # Update properties of this object
90
+ def update!(**args)
91
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
92
+ @log_type = args[:log_type] if args.key?(:log_type)
93
+ end
94
+ end
95
+
96
+ # Associates `members` with a `role`.
97
+ class Binding
98
+ include Google::Apis::Core::Hashable
99
+
100
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
101
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
102
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
103
+ # "Summary size limit" description: "Determines if a summary is less than 100
104
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
105
+ # Requestor is owner" description: "Determines if requestor is the document
106
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
107
+ # Logic): title: "Public documents" description: "Determine whether the document
108
+ # should be publicly visible" expression: "document.type != 'private' &&
109
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
110
+ # string" description: "Create a notification string with a timestamp."
111
+ # expression: "'New message received at ' + string(document.create_time)" The
112
+ # exact variables and functions that may be referenced within an expression are
113
+ # determined by the service that evaluates it. See the service documentation for
114
+ # additional information.
115
+ # Corresponds to the JSON property `condition`
116
+ # @return [Google::Apis::DatamigrationV1beta1::Expr]
117
+ attr_accessor :condition
118
+
119
+ # Specifies the identities requesting access for a Cloud Platform resource. `
120
+ # members` can have the following values: * `allUsers`: A special identifier
121
+ # that represents anyone who is on the internet; with or without a Google
122
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
123
+ # anyone who is authenticated with a Google account or a service account. * `
124
+ # user:`emailid``: An email address that represents a specific Google account.
125
+ # For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
126
+ # address that represents a service account. For example, `my-other-app@appspot.
127
+ # gserviceaccount.com`. * `group:`emailid``: An email address that represents a
128
+ # Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
129
+ # `uniqueid``: An email address (plus unique identifier) representing a user
130
+ # that has been recently deleted. For example, `alice@example.com?uid=
131
+ # 123456789012345678901`. If the user is recovered, this value reverts to `user:`
132
+ # emailid`` and the recovered user retains the role in the binding. * `deleted:
133
+ # serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
134
+ # identifier) representing a service account that has been recently deleted. For
135
+ # example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
136
+ # If the service account is undeleted, this value reverts to `serviceAccount:`
137
+ # emailid`` and the undeleted service account retains the role in the binding. *
138
+ # `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
139
+ # identifier) representing a Google group that has been recently deleted. For
140
+ # example, `admins@example.com?uid=123456789012345678901`. If the group is
141
+ # recovered, this value reverts to `group:`emailid`` and the recovered group
142
+ # retains the role in the binding. * `domain:`domain``: The G Suite domain (
143
+ # primary) that represents all the users of that domain. For example, `google.
144
+ # com` or `example.com`.
145
+ # Corresponds to the JSON property `members`
146
+ # @return [Array<String>]
147
+ attr_accessor :members
148
+
149
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
150
+ # , or `roles/owner`.
151
+ # Corresponds to the JSON property `role`
152
+ # @return [String]
153
+ attr_accessor :role
154
+
155
+ def initialize(**args)
156
+ update!(**args)
157
+ end
158
+
159
+ # Update properties of this object
160
+ def update!(**args)
161
+ @condition = args[:condition] if args.key?(:condition)
162
+ @members = args[:members] if args.key?(:members)
163
+ @role = args[:role] if args.key?(:role)
164
+ end
165
+ end
166
+
167
+ # The request message for Operations.CancelOperation.
168
+ class CancelOperationRequest
169
+ include Google::Apis::Core::Hashable
170
+
171
+ def initialize(**args)
172
+ update!(**args)
173
+ end
174
+
175
+ # Update properties of this object
176
+ def update!(**args)
177
+ end
178
+ end
179
+
180
+ # Specifies required connection parameters, and, optionally, the parameters
181
+ # required to create a Cloud SQL destination database instance.
182
+ class CloudSqlConnectionProfile
183
+ include Google::Apis::Core::Hashable
184
+
185
+ # Output only. The Cloud SQL instance ID that this connection profile is
186
+ # associated with.
187
+ # Corresponds to the JSON property `cloudSqlId`
188
+ # @return [String]
189
+ attr_accessor :cloud_sql_id
190
+
191
+ # Output only. The Cloud SQL database instance's private IP.
192
+ # Corresponds to the JSON property `privateIp`
193
+ # @return [String]
194
+ attr_accessor :private_ip
195
+
196
+ # Output only. The Cloud SQL database instance's public IP.
197
+ # Corresponds to the JSON property `publicIp`
198
+ # @return [String]
199
+ attr_accessor :public_ip
200
+
201
+ # Settings for creating a Cloud SQL database instance.
202
+ # Corresponds to the JSON property `settings`
203
+ # @return [Google::Apis::DatamigrationV1beta1::CloudSqlSettings]
204
+ attr_accessor :settings
205
+
206
+ def initialize(**args)
207
+ update!(**args)
208
+ end
209
+
210
+ # Update properties of this object
211
+ def update!(**args)
212
+ @cloud_sql_id = args[:cloud_sql_id] if args.key?(:cloud_sql_id)
213
+ @private_ip = args[:private_ip] if args.key?(:private_ip)
214
+ @public_ip = args[:public_ip] if args.key?(:public_ip)
215
+ @settings = args[:settings] if args.key?(:settings)
216
+ end
217
+ end
218
+
219
+ # Settings for creating a Cloud SQL database instance.
220
+ class CloudSqlSettings
221
+ include Google::Apis::Core::Hashable
222
+
223
+ # The activation policy specifies when the instance is activated; it is
224
+ # applicable only when the instance state is 'RUNNABLE'. Valid values: 'ALWAYS':
225
+ # The instance is on, and remains so even in the absence of connection requests.
226
+ # `NEVER`: The instance is off; it is not activated, even if a connection
227
+ # request arrives.
228
+ # Corresponds to the JSON property `activationPolicy`
229
+ # @return [String]
230
+ attr_accessor :activation_policy
231
+
232
+ # [default: ON] If you enable this setting, Cloud SQL checks your available
233
+ # storage every 30 seconds. If the available storage falls below a threshold
234
+ # size, Cloud SQL automatically adds additional storage capacity. If the
235
+ # available storage repeatedly falls below the threshold size, Cloud SQL
236
+ # continues to add storage until it reaches the maximum of 30 TB.
237
+ # Corresponds to the JSON property `autoStorageIncrease`
238
+ # @return [Boolean]
239
+ attr_accessor :auto_storage_increase
240
+ alias_method :auto_storage_increase?, :auto_storage_increase
241
+
242
+ # The storage capacity available to the database, in GB. The minimum (and
243
+ # default) size is 10GB.
244
+ # Corresponds to the JSON property `dataDiskSizeGb`
245
+ # @return [Fixnum]
246
+ attr_accessor :data_disk_size_gb
247
+
248
+ # The type of storage: `PD_SSD` (default) or `PD_HDD`.
249
+ # Corresponds to the JSON property `dataDiskType`
250
+ # @return [String]
251
+ attr_accessor :data_disk_type
252
+
253
+ # The database flags passed to the Cloud SQL instance at startup. An object
254
+ # containing a list of "key": value pairs. Example: ` "name": "wrench", "mass": "
255
+ # 1.3kg", "count": "3" `.
256
+ # Corresponds to the JSON property `databaseFlags`
257
+ # @return [Hash<String,String>]
258
+ attr_accessor :database_flags
259
+
260
+ # The database engine type and version (such as `MYSQL_5_7` / `POSTGRES_9_6`).
261
+ # Corresponds to the JSON property `databaseVersion`
262
+ # @return [String]
263
+ attr_accessor :database_version
264
+
265
+ # IP Management configuration.
266
+ # Corresponds to the JSON property `ipConfig`
267
+ # @return [Google::Apis::DatamigrationV1beta1::SqlIpConfig]
268
+ attr_accessor :ip_config
269
+
270
+ # Input only. Initial root password.
271
+ # Corresponds to the JSON property `rootPassword`
272
+ # @return [String]
273
+ attr_accessor :root_password
274
+
275
+ # Output only. Indicates If this connection profile root password is stored.
276
+ # Corresponds to the JSON property `rootPasswordSet`
277
+ # @return [Boolean]
278
+ attr_accessor :root_password_set
279
+ alias_method :root_password_set?, :root_password_set
280
+
281
+ # The Database Migration Service source connection profile ID, in the format: `
282
+ # projects/my_project_name/locations/us-central1/connectionProfiles/
283
+ # connection_profile_ID`
284
+ # Corresponds to the JSON property `sourceId`
285
+ # @return [String]
286
+ attr_accessor :source_id
287
+
288
+ # The maximum size to which storage capacity can be automatically increased. The
289
+ # default value is 0, which specifies that there is no limit.
290
+ # Corresponds to the JSON property `storageAutoResizeLimit`
291
+ # @return [Fixnum]
292
+ attr_accessor :storage_auto_resize_limit
293
+
294
+ # The tier (or machine type) for this instance, for example: `db-n1-standard-1` (
295
+ # MySQL instances) or `db-custom-1-3840` (PostgreSQL instances). For more
296
+ # information, see [Cloud SQL Instance Settings](https://cloud.google.com/sql/
297
+ # docs/mysql/instance-settings).
298
+ # Corresponds to the JSON property `tier`
299
+ # @return [String]
300
+ attr_accessor :tier
301
+
302
+ # The resource labels for a Cloud SQL instance to use to annotate any related
303
+ # underlying resources such as Compute Engine VMs. An object containing a list
304
+ # of "key": "value" pairs. Example: `` "name": "wrench", "mass": "18kg", "count":
305
+ # "3" ``.
306
+ # Corresponds to the JSON property `userLabels`
307
+ # @return [Hash<String,String>]
308
+ attr_accessor :user_labels
309
+
310
+ # The Google Cloud Platform zone where your Cloud SQL datdabse instance is
311
+ # located.
312
+ # Corresponds to the JSON property `zone`
313
+ # @return [String]
314
+ attr_accessor :zone
315
+
316
+ def initialize(**args)
317
+ update!(**args)
318
+ end
319
+
320
+ # Update properties of this object
321
+ def update!(**args)
322
+ @activation_policy = args[:activation_policy] if args.key?(:activation_policy)
323
+ @auto_storage_increase = args[:auto_storage_increase] if args.key?(:auto_storage_increase)
324
+ @data_disk_size_gb = args[:data_disk_size_gb] if args.key?(:data_disk_size_gb)
325
+ @data_disk_type = args[:data_disk_type] if args.key?(:data_disk_type)
326
+ @database_flags = args[:database_flags] if args.key?(:database_flags)
327
+ @database_version = args[:database_version] if args.key?(:database_version)
328
+ @ip_config = args[:ip_config] if args.key?(:ip_config)
329
+ @root_password = args[:root_password] if args.key?(:root_password)
330
+ @root_password_set = args[:root_password_set] if args.key?(:root_password_set)
331
+ @source_id = args[:source_id] if args.key?(:source_id)
332
+ @storage_auto_resize_limit = args[:storage_auto_resize_limit] if args.key?(:storage_auto_resize_limit)
333
+ @tier = args[:tier] if args.key?(:tier)
334
+ @user_labels = args[:user_labels] if args.key?(:user_labels)
335
+ @zone = args[:zone] if args.key?(:zone)
336
+ end
337
+ end
338
+
339
+ # A connection profile definition.
340
+ class ConnectionProfile
341
+ include Google::Apis::Core::Hashable
342
+
343
+ # Specifies required connection parameters, and, optionally, the parameters
344
+ # required to create a Cloud SQL destination database instance.
345
+ # Corresponds to the JSON property `cloudsql`
346
+ # @return [Google::Apis::DatamigrationV1beta1::CloudSqlConnectionProfile]
347
+ attr_accessor :cloudsql
348
+
349
+ # Output only. The timestamp when the resource was created. A timestamp in
350
+ # RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:
351
+ # 23.045123456Z".
352
+ # Corresponds to the JSON property `createTime`
353
+ # @return [String]
354
+ attr_accessor :create_time
355
+
356
+ # The connection profile display name.
357
+ # Corresponds to the JSON property `displayName`
358
+ # @return [String]
359
+ attr_accessor :display_name
360
+
361
+ # The `Status` type defines a logical error model that is suitable for different
362
+ # programming environments, including REST APIs and RPC APIs. It is used by [
363
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
364
+ # data: error code, error message, and error details. You can find out more
365
+ # about this error model and how to work with it in the [API Design Guide](https:
366
+ # //cloud.google.com/apis/design/errors).
367
+ # Corresponds to the JSON property `error`
368
+ # @return [Google::Apis::DatamigrationV1beta1::Status]
369
+ attr_accessor :error
370
+
371
+ # The resource labels for connection profile to use to annotate any related
372
+ # underlying resources such as Compute Engine VMs. An object containing a list
373
+ # of "key": "value" pairs. Example: `` "name": "wrench", "mass": "1.3kg", "count"
374
+ # : "3" ``.
375
+ # Corresponds to the JSON property `labels`
376
+ # @return [Hash<String,String>]
377
+ attr_accessor :labels
378
+
379
+ # Specifies connection parameters required specifically for MySQL databases.
380
+ # Corresponds to the JSON property `mysql`
381
+ # @return [Google::Apis::DatamigrationV1beta1::MySqlConnectionProfile]
382
+ attr_accessor :mysql
383
+
384
+ # The name of this connection profile resource in the form of projects/`project`/
385
+ # locations/`location`/instances/`instance`.
386
+ # Corresponds to the JSON property `name`
387
+ # @return [String]
388
+ attr_accessor :name
389
+
390
+ # The database provider.
391
+ # Corresponds to the JSON property `provider`
392
+ # @return [String]
393
+ attr_accessor :provider
394
+
395
+ # The current connection profile state (e.g. DRAFT, READY, or FAILED).
396
+ # Corresponds to the JSON property `state`
397
+ # @return [String]
398
+ attr_accessor :state
399
+
400
+ # Output only. The timestamp when the resource was last updated. A timestamp in
401
+ # RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:
402
+ # 23.045123456Z".
403
+ # Corresponds to the JSON property `updateTime`
404
+ # @return [String]
405
+ attr_accessor :update_time
406
+
407
+ def initialize(**args)
408
+ update!(**args)
409
+ end
410
+
411
+ # Update properties of this object
412
+ def update!(**args)
413
+ @cloudsql = args[:cloudsql] if args.key?(:cloudsql)
414
+ @create_time = args[:create_time] if args.key?(:create_time)
415
+ @display_name = args[:display_name] if args.key?(:display_name)
416
+ @error = args[:error] if args.key?(:error)
417
+ @labels = args[:labels] if args.key?(:labels)
418
+ @mysql = args[:mysql] if args.key?(:mysql)
419
+ @name = args[:name] if args.key?(:name)
420
+ @provider = args[:provider] if args.key?(:provider)
421
+ @state = args[:state] if args.key?(:state)
422
+ @update_time = args[:update_time] if args.key?(:update_time)
423
+ end
424
+ end
425
+
426
+ # A message defining the database engine and provider.
427
+ class DatabaseType
428
+ include Google::Apis::Core::Hashable
429
+
430
+ # The database engine.
431
+ # Corresponds to the JSON property `engine`
432
+ # @return [String]
433
+ attr_accessor :engine
434
+
435
+ # The database provider.
436
+ # Corresponds to the JSON property `provider`
437
+ # @return [String]
438
+ attr_accessor :provider
439
+
440
+ def initialize(**args)
441
+ update!(**args)
442
+ end
443
+
444
+ # Update properties of this object
445
+ def update!(**args)
446
+ @engine = args[:engine] if args.key?(:engine)
447
+ @provider = args[:provider] if args.key?(:provider)
448
+ end
449
+ end
450
+
451
+ # A generic empty message that you can re-use to avoid defining duplicated empty
452
+ # messages in your APIs. A typical example is to use it as the request or the
453
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
454
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
455
+ # `Empty` is empty JSON object ````.
456
+ class Empty
457
+ include Google::Apis::Core::Hashable
458
+
459
+ def initialize(**args)
460
+ update!(**args)
461
+ end
462
+
463
+ # Update properties of this object
464
+ def update!(**args)
465
+ end
466
+ end
467
+
468
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
469
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
470
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
471
+ # "Summary size limit" description: "Determines if a summary is less than 100
472
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
473
+ # Requestor is owner" description: "Determines if requestor is the document
474
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
475
+ # Logic): title: "Public documents" description: "Determine whether the document
476
+ # should be publicly visible" expression: "document.type != 'private' &&
477
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
478
+ # string" description: "Create a notification string with a timestamp."
479
+ # expression: "'New message received at ' + string(document.create_time)" The
480
+ # exact variables and functions that may be referenced within an expression are
481
+ # determined by the service that evaluates it. See the service documentation for
482
+ # additional information.
483
+ class Expr
484
+ include Google::Apis::Core::Hashable
485
+
486
+ # Optional. Description of the expression. This is a longer text which describes
487
+ # the expression, e.g. when hovered over it in a UI.
488
+ # Corresponds to the JSON property `description`
489
+ # @return [String]
490
+ attr_accessor :description
491
+
492
+ # Textual representation of an expression in Common Expression Language syntax.
493
+ # Corresponds to the JSON property `expression`
494
+ # @return [String]
495
+ attr_accessor :expression
496
+
497
+ # Optional. String indicating the location of the expression for error reporting,
498
+ # e.g. a file name and a position in the file.
499
+ # Corresponds to the JSON property `location`
500
+ # @return [String]
501
+ attr_accessor :location
502
+
503
+ # Optional. Title for the expression, i.e. a short string describing its purpose.
504
+ # This can be used e.g. in UIs which allow to enter the expression.
505
+ # Corresponds to the JSON property `title`
506
+ # @return [String]
507
+ attr_accessor :title
508
+
509
+ def initialize(**args)
510
+ update!(**args)
511
+ end
512
+
513
+ # Update properties of this object
514
+ def update!(**args)
515
+ @description = args[:description] if args.key?(:description)
516
+ @expression = args[:expression] if args.key?(:expression)
517
+ @location = args[:location] if args.key?(:location)
518
+ @title = args[:title] if args.key?(:title)
519
+ end
520
+ end
521
+
522
+ # Request message for 'GenerateSshScript' request.
523
+ class GenerateSshScriptRequest
524
+ include Google::Apis::Core::Hashable
525
+
526
+ # Required. Bastion VM Instance name to use or to create.
527
+ # Corresponds to the JSON property `vm`
528
+ # @return [String]
529
+ attr_accessor :vm
530
+
531
+ # VM creation configuration message
532
+ # Corresponds to the JSON property `vmCreationConfig`
533
+ # @return [Google::Apis::DatamigrationV1beta1::VmCreationConfig]
534
+ attr_accessor :vm_creation_config
535
+
536
+ # The port that will be open on the bastion host
537
+ # Corresponds to the JSON property `vmPort`
538
+ # @return [Fixnum]
539
+ attr_accessor :vm_port
540
+
541
+ # VM selection configuration message
542
+ # Corresponds to the JSON property `vmSelectionConfig`
543
+ # @return [Google::Apis::DatamigrationV1beta1::VmSelectionConfig]
544
+ attr_accessor :vm_selection_config
545
+
546
+ def initialize(**args)
547
+ update!(**args)
548
+ end
549
+
550
+ # Update properties of this object
551
+ def update!(**args)
552
+ @vm = args[:vm] if args.key?(:vm)
553
+ @vm_creation_config = args[:vm_creation_config] if args.key?(:vm_creation_config)
554
+ @vm_port = args[:vm_port] if args.key?(:vm_port)
555
+ @vm_selection_config = args[:vm_selection_config] if args.key?(:vm_selection_config)
556
+ end
557
+ end
558
+
559
+ # Represents the metadata of the long-running operation.
560
+ class GoogleCloudClouddmsV1beta1OperationMetadata
561
+ include Google::Apis::Core::Hashable
562
+
563
+ # Output only. API version used to start the operation.
564
+ # Corresponds to the JSON property `apiVersion`
565
+ # @return [String]
566
+ attr_accessor :api_version
567
+
568
+ # Output only. The time the operation was created.
569
+ # Corresponds to the JSON property `createTime`
570
+ # @return [String]
571
+ attr_accessor :create_time
572
+
573
+ # Output only. The time the operation finished running.
574
+ # Corresponds to the JSON property `endTime`
575
+ # @return [String]
576
+ attr_accessor :end_time
577
+
578
+ # Output only. Identifies whether the user has requested cancellation of the
579
+ # operation. Operations that have successfully been cancelled have Operation.
580
+ # error value with a google.rpc.Status.code of 1, corresponding to `Code.
581
+ # CANCELLED`.
582
+ # Corresponds to the JSON property `requestedCancellation`
583
+ # @return [Boolean]
584
+ attr_accessor :requested_cancellation
585
+ alias_method :requested_cancellation?, :requested_cancellation
586
+
587
+ # Output only. Human-readable status of the operation, if any.
588
+ # Corresponds to the JSON property `statusMessage`
589
+ # @return [String]
590
+ attr_accessor :status_message
591
+
592
+ # Output only. Server-defined resource path for the target of the operation.
593
+ # Corresponds to the JSON property `target`
594
+ # @return [String]
595
+ attr_accessor :target
596
+
597
+ # Output only. Name of the verb executed by the operation.
598
+ # Corresponds to the JSON property `verb`
599
+ # @return [String]
600
+ attr_accessor :verb
601
+
602
+ def initialize(**args)
603
+ update!(**args)
604
+ end
605
+
606
+ # Update properties of this object
607
+ def update!(**args)
608
+ @api_version = args[:api_version] if args.key?(:api_version)
609
+ @create_time = args[:create_time] if args.key?(:create_time)
610
+ @end_time = args[:end_time] if args.key?(:end_time)
611
+ @requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
612
+ @status_message = args[:status_message] if args.key?(:status_message)
613
+ @target = args[:target] if args.key?(:target)
614
+ @verb = args[:verb] if args.key?(:verb)
615
+ end
616
+ end
617
+
618
+ # Response message for 'ListConnectionProfiles' request.
619
+ class ListConnectionProfilesResponse
620
+ include Google::Apis::Core::Hashable
621
+
622
+ # The response list of connection profiles.
623
+ # Corresponds to the JSON property `connectionProfiles`
624
+ # @return [Array<Google::Apis::DatamigrationV1beta1::ConnectionProfile>]
625
+ attr_accessor :connection_profiles
626
+
627
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
628
+ # field is omitted, there are no subsequent pages.
629
+ # Corresponds to the JSON property `nextPageToken`
630
+ # @return [String]
631
+ attr_accessor :next_page_token
632
+
633
+ # Locations that could not be reached.
634
+ # Corresponds to the JSON property `unreachable`
635
+ # @return [Array<String>]
636
+ attr_accessor :unreachable
637
+
638
+ def initialize(**args)
639
+ update!(**args)
640
+ end
641
+
642
+ # Update properties of this object
643
+ def update!(**args)
644
+ @connection_profiles = args[:connection_profiles] if args.key?(:connection_profiles)
645
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
646
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
647
+ end
648
+ end
649
+
650
+ # The response message for Locations.ListLocations.
651
+ class ListLocationsResponse
652
+ include Google::Apis::Core::Hashable
653
+
654
+ # A list of locations that matches the specified filter in the request.
655
+ # Corresponds to the JSON property `locations`
656
+ # @return [Array<Google::Apis::DatamigrationV1beta1::Location>]
657
+ attr_accessor :locations
658
+
659
+ # The standard List next-page token.
660
+ # Corresponds to the JSON property `nextPageToken`
661
+ # @return [String]
662
+ attr_accessor :next_page_token
663
+
664
+ def initialize(**args)
665
+ update!(**args)
666
+ end
667
+
668
+ # Update properties of this object
669
+ def update!(**args)
670
+ @locations = args[:locations] if args.key?(:locations)
671
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
672
+ end
673
+ end
674
+
675
+ # Response message for 'ListMigrationJobs' request.
676
+ class ListMigrationJobsResponse
677
+ include Google::Apis::Core::Hashable
678
+
679
+ # The list of migration jobs objects.
680
+ # Corresponds to the JSON property `migrationJobs`
681
+ # @return [Array<Google::Apis::DatamigrationV1beta1::MigrationJob>]
682
+ attr_accessor :migration_jobs
683
+
684
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
685
+ # field is omitted, there are no subsequent pages.
686
+ # Corresponds to the JSON property `nextPageToken`
687
+ # @return [String]
688
+ attr_accessor :next_page_token
689
+
690
+ # Locations that could not be reached.
691
+ # Corresponds to the JSON property `unreachable`
692
+ # @return [Array<String>]
693
+ attr_accessor :unreachable
694
+
695
+ def initialize(**args)
696
+ update!(**args)
697
+ end
698
+
699
+ # Update properties of this object
700
+ def update!(**args)
701
+ @migration_jobs = args[:migration_jobs] if args.key?(:migration_jobs)
702
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
703
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
704
+ end
705
+ end
706
+
707
+ # The response message for Operations.ListOperations.
708
+ class ListOperationsResponse
709
+ include Google::Apis::Core::Hashable
710
+
711
+ # The standard List next-page token.
712
+ # Corresponds to the JSON property `nextPageToken`
713
+ # @return [String]
714
+ attr_accessor :next_page_token
715
+
716
+ # A list of operations that matches the specified filter in the request.
717
+ # Corresponds to the JSON property `operations`
718
+ # @return [Array<Google::Apis::DatamigrationV1beta1::Operation>]
719
+ attr_accessor :operations
720
+
721
+ def initialize(**args)
722
+ update!(**args)
723
+ end
724
+
725
+ # Update properties of this object
726
+ def update!(**args)
727
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
728
+ @operations = args[:operations] if args.key?(:operations)
729
+ end
730
+ end
731
+
732
+ # A resource that represents Google Cloud Platform location.
733
+ class Location
734
+ include Google::Apis::Core::Hashable
735
+
736
+ # The friendly name for this location, typically a nearby city name. For example,
737
+ # "Tokyo".
738
+ # Corresponds to the JSON property `displayName`
739
+ # @return [String]
740
+ attr_accessor :display_name
741
+
742
+ # Cross-service attributes for the location. For example `"cloud.googleapis.com/
743
+ # region": "us-east1"`
744
+ # Corresponds to the JSON property `labels`
745
+ # @return [Hash<String,String>]
746
+ attr_accessor :labels
747
+
748
+ # The canonical id for this location. For example: `"us-east1"`.
749
+ # Corresponds to the JSON property `locationId`
750
+ # @return [String]
751
+ attr_accessor :location_id
752
+
753
+ # Service-specific metadata. For example the available capacity at the given
754
+ # location.
755
+ # Corresponds to the JSON property `metadata`
756
+ # @return [Hash<String,Object>]
757
+ attr_accessor :metadata
758
+
759
+ # Resource name for the location, which may vary between implementations. For
760
+ # example: `"projects/example-project/locations/us-east1"`
761
+ # Corresponds to the JSON property `name`
762
+ # @return [String]
763
+ attr_accessor :name
764
+
765
+ def initialize(**args)
766
+ update!(**args)
767
+ end
768
+
769
+ # Update properties of this object
770
+ def update!(**args)
771
+ @display_name = args[:display_name] if args.key?(:display_name)
772
+ @labels = args[:labels] if args.key?(:labels)
773
+ @location_id = args[:location_id] if args.key?(:location_id)
774
+ @metadata = args[:metadata] if args.key?(:metadata)
775
+ @name = args[:name] if args.key?(:name)
776
+ end
777
+ end
778
+
779
+ # Represents a Database Migration Service migration job object.
780
+ class MigrationJob
781
+ include Google::Apis::Core::Hashable
782
+
783
+ # Output only. The timestamp when the migration job resource was created. A
784
+ # timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "
785
+ # 2014-10-02T15:01:23.045123456Z".
786
+ # Corresponds to the JSON property `createTime`
787
+ # @return [String]
788
+ attr_accessor :create_time
789
+
790
+ # Required. The resource name (URI) of the destination connection profile.
791
+ # Corresponds to the JSON property `destination`
792
+ # @return [String]
793
+ attr_accessor :destination
794
+
795
+ # A message defining the database engine and provider.
796
+ # Corresponds to the JSON property `destinationDatabase`
797
+ # @return [Google::Apis::DatamigrationV1beta1::DatabaseType]
798
+ attr_accessor :destination_database
799
+
800
+ # The migration job display name.
801
+ # Corresponds to the JSON property `displayName`
802
+ # @return [String]
803
+ attr_accessor :display_name
804
+
805
+ # The path to the dump file in Google Cloud Storage, in the format: (gs://[
806
+ # BUCKET_NAME]/[OBJECT_NAME]).
807
+ # Corresponds to the JSON property `dumpPath`
808
+ # @return [String]
809
+ attr_accessor :dump_path
810
+
811
+ # Output only. The duration of the migration job (in seconds). A duration in
812
+ # seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
813
+ # Corresponds to the JSON property `duration`
814
+ # @return [String]
815
+ attr_accessor :duration
816
+
817
+ # Output only. If the migration job is completed, the time when it was completed.
818
+ # Corresponds to the JSON property `endTime`
819
+ # @return [String]
820
+ attr_accessor :end_time
821
+
822
+ # The `Status` type defines a logical error model that is suitable for different
823
+ # programming environments, including REST APIs and RPC APIs. It is used by [
824
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
825
+ # data: error code, error message, and error details. You can find out more
826
+ # about this error model and how to work with it in the [API Design Guide](https:
827
+ # //cloud.google.com/apis/design/errors).
828
+ # Corresponds to the JSON property `error`
829
+ # @return [Google::Apis::DatamigrationV1beta1::Status]
830
+ attr_accessor :error
831
+
832
+ # The resource labels for migration job to use to annotate any related
833
+ # underlying resources such as Compute Engine VMs. An object containing a list
834
+ # of "key": "value" pairs. Example: `` "name": "wrench", "mass": "1.3kg", "count"
835
+ # : "3" ``.
836
+ # Corresponds to the JSON property `labels`
837
+ # @return [Hash<String,String>]
838
+ attr_accessor :labels
839
+
840
+ # The name (URI) of this migration job resource, in the form of: projects/`
841
+ # project`/locations/`location`/instances/`instance`.
842
+ # Corresponds to the JSON property `name`
843
+ # @return [String]
844
+ attr_accessor :name
845
+
846
+ # Output only. The current migration job phase.
847
+ # Corresponds to the JSON property `phase`
848
+ # @return [String]
849
+ attr_accessor :phase
850
+
851
+ # The details needed to configure a reverse SSH tunnel between the source and
852
+ # destination databases. These details will be used when calling the
853
+ # generateSshScript method (see https://cloud.google.com/database-migration/docs/
854
+ # reference/rest/v1beta1/projects.locations.migrationJobs/generateSshScript) to
855
+ # produce the script that will help set up the reverse SSH tunnel, and to set up
856
+ # the VPC peering between the Cloud SQL private network and the VPC.
857
+ # Corresponds to the JSON property `reverseSshConnectivity`
858
+ # @return [Google::Apis::DatamigrationV1beta1::ReverseSshConnectivity]
859
+ attr_accessor :reverse_ssh_connectivity
860
+
861
+ # Required. The resource name (URI) of the source connection profile.
862
+ # Corresponds to the JSON property `source`
863
+ # @return [String]
864
+ attr_accessor :source
865
+
866
+ # A message defining the database engine and provider.
867
+ # Corresponds to the JSON property `sourceDatabase`
868
+ # @return [Google::Apis::DatamigrationV1beta1::DatabaseType]
869
+ attr_accessor :source_database
870
+
871
+ # The current migration job state.
872
+ # Corresponds to the JSON property `state`
873
+ # @return [String]
874
+ attr_accessor :state
875
+
876
+ # The source database will allow incoming connections from the destination
877
+ # database's public IP. You can retrieve the Cloud SQL instance's public IP from
878
+ # the Cloud SQL console or using Cloud SQL APIs. No additional configuration is
879
+ # required.
880
+ # Corresponds to the JSON property `staticIpConnectivity`
881
+ # @return [Google::Apis::DatamigrationV1beta1::StaticIpConnectivity]
882
+ attr_accessor :static_ip_connectivity
883
+
884
+ # Required. The migration job type.
885
+ # Corresponds to the JSON property `type`
886
+ # @return [String]
887
+ attr_accessor :type
888
+
889
+ # Output only. The timestamp when the migration job resource was last updated. A
890
+ # timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "
891
+ # 2014-10-02T15:01:23.045123456Z".
892
+ # Corresponds to the JSON property `updateTime`
893
+ # @return [String]
894
+ attr_accessor :update_time
895
+
896
+ # The details of the VPC where the source database is located in Google Cloud.
897
+ # We will use this information to set up the VPC peering connection between
898
+ # Cloud SQL and this VPC.
899
+ # Corresponds to the JSON property `vpcPeeringConnectivity`
900
+ # @return [Google::Apis::DatamigrationV1beta1::VpcPeeringConnectivity]
901
+ attr_accessor :vpc_peering_connectivity
902
+
903
+ def initialize(**args)
904
+ update!(**args)
905
+ end
906
+
907
+ # Update properties of this object
908
+ def update!(**args)
909
+ @create_time = args[:create_time] if args.key?(:create_time)
910
+ @destination = args[:destination] if args.key?(:destination)
911
+ @destination_database = args[:destination_database] if args.key?(:destination_database)
912
+ @display_name = args[:display_name] if args.key?(:display_name)
913
+ @dump_path = args[:dump_path] if args.key?(:dump_path)
914
+ @duration = args[:duration] if args.key?(:duration)
915
+ @end_time = args[:end_time] if args.key?(:end_time)
916
+ @error = args[:error] if args.key?(:error)
917
+ @labels = args[:labels] if args.key?(:labels)
918
+ @name = args[:name] if args.key?(:name)
919
+ @phase = args[:phase] if args.key?(:phase)
920
+ @reverse_ssh_connectivity = args[:reverse_ssh_connectivity] if args.key?(:reverse_ssh_connectivity)
921
+ @source = args[:source] if args.key?(:source)
922
+ @source_database = args[:source_database] if args.key?(:source_database)
923
+ @state = args[:state] if args.key?(:state)
924
+ @static_ip_connectivity = args[:static_ip_connectivity] if args.key?(:static_ip_connectivity)
925
+ @type = args[:type] if args.key?(:type)
926
+ @update_time = args[:update_time] if args.key?(:update_time)
927
+ @vpc_peering_connectivity = args[:vpc_peering_connectivity] if args.key?(:vpc_peering_connectivity)
928
+ end
929
+ end
930
+
931
+ # Error message of a verification Migration job.
932
+ class MigrationJobVerificationError
933
+ include Google::Apis::Core::Hashable
934
+
935
+ # Output only. An instance of ErrorCode specifying the error that occurred.
936
+ # Corresponds to the JSON property `errorCode`
937
+ # @return [String]
938
+ attr_accessor :error_code
939
+
940
+ # Output only. A specific detailed error message, if supplied by the engine.
941
+ # Corresponds to the JSON property `errorDetailMessage`
942
+ # @return [String]
943
+ attr_accessor :error_detail_message
944
+
945
+ # Output only. A formatted message with further details about the error and a
946
+ # CTA.
947
+ # Corresponds to the JSON property `errorMessage`
948
+ # @return [String]
949
+ attr_accessor :error_message
950
+
951
+ def initialize(**args)
952
+ update!(**args)
953
+ end
954
+
955
+ # Update properties of this object
956
+ def update!(**args)
957
+ @error_code = args[:error_code] if args.key?(:error_code)
958
+ @error_detail_message = args[:error_detail_message] if args.key?(:error_detail_message)
959
+ @error_message = args[:error_message] if args.key?(:error_message)
960
+ end
961
+ end
962
+
963
+ # Specifies connection parameters required specifically for MySQL databases.
964
+ class MySqlConnectionProfile
965
+ include Google::Apis::Core::Hashable
966
+
967
+ # If the source is a Cloud SQL database, use this field to provide the Cloud SQL
968
+ # instance ID of the source.
969
+ # Corresponds to the JSON property `cloudSqlId`
970
+ # @return [String]
971
+ attr_accessor :cloud_sql_id
972
+
973
+ # Required. The IP or hostname of the source MySQL database.
974
+ # Corresponds to the JSON property `host`
975
+ # @return [String]
976
+ attr_accessor :host
977
+
978
+ # Required. Input only. The password for the user that Database Migration
979
+ # Service will be using to connect to the database. This field is not returned
980
+ # on request, and the value is encrypted when stored in Database Migration
981
+ # Service.
982
+ # Corresponds to the JSON property `password`
983
+ # @return [String]
984
+ attr_accessor :password
985
+
986
+ # Output only. Indicates If this connection profile password is stored.
987
+ # Corresponds to the JSON property `passwordSet`
988
+ # @return [Boolean]
989
+ attr_accessor :password_set
990
+ alias_method :password_set?, :password_set
991
+
992
+ # Required. The network port of the source MySQL database.
993
+ # Corresponds to the JSON property `port`
994
+ # @return [Fixnum]
995
+ attr_accessor :port
996
+
997
+ # SSL configuration information.
998
+ # Corresponds to the JSON property `ssl`
999
+ # @return [Google::Apis::DatamigrationV1beta1::SslConfig]
1000
+ attr_accessor :ssl
1001
+
1002
+ # Required. The username that Database Migration Service will use to connect to
1003
+ # the database. The value is encrypted when stored in Database Migration Service.
1004
+ # Corresponds to the JSON property `username`
1005
+ # @return [String]
1006
+ attr_accessor :username
1007
+
1008
+ def initialize(**args)
1009
+ update!(**args)
1010
+ end
1011
+
1012
+ # Update properties of this object
1013
+ def update!(**args)
1014
+ @cloud_sql_id = args[:cloud_sql_id] if args.key?(:cloud_sql_id)
1015
+ @host = args[:host] if args.key?(:host)
1016
+ @password = args[:password] if args.key?(:password)
1017
+ @password_set = args[:password_set] if args.key?(:password_set)
1018
+ @port = args[:port] if args.key?(:port)
1019
+ @ssl = args[:ssl] if args.key?(:ssl)
1020
+ @username = args[:username] if args.key?(:username)
1021
+ end
1022
+ end
1023
+
1024
+ # This resource represents a long-running operation that is the result of a
1025
+ # network API call.
1026
+ class Operation
1027
+ include Google::Apis::Core::Hashable
1028
+
1029
+ # If the value is `false`, it means the operation is still in progress. If `true`
1030
+ # , the operation is completed, and either `error` or `response` is available.
1031
+ # Corresponds to the JSON property `done`
1032
+ # @return [Boolean]
1033
+ attr_accessor :done
1034
+ alias_method :done?, :done
1035
+
1036
+ # The `Status` type defines a logical error model that is suitable for different
1037
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1038
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1039
+ # data: error code, error message, and error details. You can find out more
1040
+ # about this error model and how to work with it in the [API Design Guide](https:
1041
+ # //cloud.google.com/apis/design/errors).
1042
+ # Corresponds to the JSON property `error`
1043
+ # @return [Google::Apis::DatamigrationV1beta1::Status]
1044
+ attr_accessor :error
1045
+
1046
+ # Service-specific metadata associated with the operation. It typically contains
1047
+ # progress information and common metadata such as create time. Some services
1048
+ # might not provide such metadata. Any method that returns a long-running
1049
+ # operation should document the metadata type, if any.
1050
+ # Corresponds to the JSON property `metadata`
1051
+ # @return [Hash<String,Object>]
1052
+ attr_accessor :metadata
1053
+
1054
+ # The server-assigned name, which is only unique within the same service that
1055
+ # originally returns it. If you use the default HTTP mapping, the `name` should
1056
+ # be a resource name ending with `operations/`unique_id``.
1057
+ # Corresponds to the JSON property `name`
1058
+ # @return [String]
1059
+ attr_accessor :name
1060
+
1061
+ # The normal response of the operation in case of success. If the original
1062
+ # method returns no data on success, such as `Delete`, the response is `google.
1063
+ # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
1064
+ # the response should be the resource. For other methods, the response should
1065
+ # have the type `XxxResponse`, where `Xxx` is the original method name. For
1066
+ # example, if the original method name is `TakeSnapshot()`, the inferred
1067
+ # response type is `TakeSnapshotResponse`.
1068
+ # Corresponds to the JSON property `response`
1069
+ # @return [Hash<String,Object>]
1070
+ attr_accessor :response
1071
+
1072
+ def initialize(**args)
1073
+ update!(**args)
1074
+ end
1075
+
1076
+ # Update properties of this object
1077
+ def update!(**args)
1078
+ @done = args[:done] if args.key?(:done)
1079
+ @error = args[:error] if args.key?(:error)
1080
+ @metadata = args[:metadata] if args.key?(:metadata)
1081
+ @name = args[:name] if args.key?(:name)
1082
+ @response = args[:response] if args.key?(:response)
1083
+ end
1084
+ end
1085
+
1086
+ # An Identity and Access Management (IAM) policy, which specifies access
1087
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
1088
+ # A `binding` binds one or more `members` to a single `role`. Members can be
1089
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
1090
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
1091
+ # role or a user-created custom role. For some types of Google Cloud resources,
1092
+ # a `binding` can also specify a `condition`, which is a logical expression that
1093
+ # allows access to a resource only if the expression evaluates to `true`. A
1094
+ # condition can add constraints based on attributes of the request, the resource,
1095
+ # or both. To learn which resources support conditions in their IAM policies,
1096
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
1097
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
1098
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
1099
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
1100
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
1101
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
1102
+ # title": "expirable access", "description": "Does not grant access after Sep
1103
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
1104
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
1105
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
1106
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
1107
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
1108
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
1109
+ # description: Does not grant access after Sep 2020 expression: request.time <
1110
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
1111
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
1112
+ # google.com/iam/docs/).
1113
+ class Policy
1114
+ include Google::Apis::Core::Hashable
1115
+
1116
+ # Specifies cloud audit logging configuration for this policy.
1117
+ # Corresponds to the JSON property `auditConfigs`
1118
+ # @return [Array<Google::Apis::DatamigrationV1beta1::AuditConfig>]
1119
+ attr_accessor :audit_configs
1120
+
1121
+ # Associates a list of `members` to a `role`. Optionally, may specify a `
1122
+ # condition` that determines how and when the `bindings` are applied. Each of
1123
+ # the `bindings` must contain at least one member.
1124
+ # Corresponds to the JSON property `bindings`
1125
+ # @return [Array<Google::Apis::DatamigrationV1beta1::Binding>]
1126
+ attr_accessor :bindings
1127
+
1128
+ # `etag` is used for optimistic concurrency control as a way to help prevent
1129
+ # simultaneous updates of a policy from overwriting each other. It is strongly
1130
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
1131
+ # to perform policy updates in order to avoid race conditions: An `etag` is
1132
+ # returned in the response to `getIamPolicy`, and systems are expected to put
1133
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
1134
+ # applied to the same version of the policy. **Important:** If you use IAM
1135
+ # Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
1136
+ # If you omit this field, then IAM allows you to overwrite a version `3` policy
1137
+ # with a version `1` policy, and all of the conditions in the version `3` policy
1138
+ # are lost.
1139
+ # Corresponds to the JSON property `etag`
1140
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1141
+ # @return [String]
1142
+ attr_accessor :etag
1143
+
1144
+ # Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
1145
+ # Requests that specify an invalid value are rejected. Any operation that
1146
+ # affects conditional role bindings must specify version `3`. This requirement
1147
+ # applies to the following operations: * Getting a policy that includes a
1148
+ # conditional role binding * Adding a conditional role binding to a policy *
1149
+ # Changing a conditional role binding in a policy * Removing any role binding,
1150
+ # with or without a condition, from a policy that includes conditions **
1151
+ # Important:** If you use IAM Conditions, you must include the `etag` field
1152
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
1153
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
1154
+ # conditions in the version `3` policy are lost. If a policy does not include
1155
+ # any conditions, operations on that policy may specify any valid version or
1156
+ # leave the field unset. To learn which resources support conditions in their
1157
+ # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
1158
+ # conditions/resource-policies).
1159
+ # Corresponds to the JSON property `version`
1160
+ # @return [Fixnum]
1161
+ attr_accessor :version
1162
+
1163
+ def initialize(**args)
1164
+ update!(**args)
1165
+ end
1166
+
1167
+ # Update properties of this object
1168
+ def update!(**args)
1169
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
1170
+ @bindings = args[:bindings] if args.key?(:bindings)
1171
+ @etag = args[:etag] if args.key?(:etag)
1172
+ @version = args[:version] if args.key?(:version)
1173
+ end
1174
+ end
1175
+
1176
+ # Request message for 'PromoteMigrationJob' request.
1177
+ class PromoteMigrationJobRequest
1178
+ include Google::Apis::Core::Hashable
1179
+
1180
+ def initialize(**args)
1181
+ update!(**args)
1182
+ end
1183
+
1184
+ # Update properties of this object
1185
+ def update!(**args)
1186
+ end
1187
+ end
1188
+
1189
+ # Request message for 'RestartMigrationJob' request.
1190
+ class RestartMigrationJobRequest
1191
+ include Google::Apis::Core::Hashable
1192
+
1193
+ def initialize(**args)
1194
+ update!(**args)
1195
+ end
1196
+
1197
+ # Update properties of this object
1198
+ def update!(**args)
1199
+ end
1200
+ end
1201
+
1202
+ # Request message for 'ResumeMigrationJob' request.
1203
+ class ResumeMigrationJobRequest
1204
+ include Google::Apis::Core::Hashable
1205
+
1206
+ def initialize(**args)
1207
+ update!(**args)
1208
+ end
1209
+
1210
+ # Update properties of this object
1211
+ def update!(**args)
1212
+ end
1213
+ end
1214
+
1215
+ # The details needed to configure a reverse SSH tunnel between the source and
1216
+ # destination databases. These details will be used when calling the
1217
+ # generateSshScript method (see https://cloud.google.com/database-migration/docs/
1218
+ # reference/rest/v1beta1/projects.locations.migrationJobs/generateSshScript) to
1219
+ # produce the script that will help set up the reverse SSH tunnel, and to set up
1220
+ # the VPC peering between the Cloud SQL private network and the VPC.
1221
+ class ReverseSshConnectivity
1222
+ include Google::Apis::Core::Hashable
1223
+
1224
+ # The name of the virtual machine (Compute Engine) used as the bastion server
1225
+ # for the SSH tunnel.
1226
+ # Corresponds to the JSON property `vm`
1227
+ # @return [String]
1228
+ attr_accessor :vm
1229
+
1230
+ # Required. The IP of the virtual machine (Compute Engine) used as the bastion
1231
+ # server for the SSH tunnel.
1232
+ # Corresponds to the JSON property `vmIp`
1233
+ # @return [String]
1234
+ attr_accessor :vm_ip
1235
+
1236
+ # Required. The forwarding port of the virtual machine (Compute Engine) used as
1237
+ # the bastion server for the SSH tunnel.
1238
+ # Corresponds to the JSON property `vmPort`
1239
+ # @return [Fixnum]
1240
+ attr_accessor :vm_port
1241
+
1242
+ # The name of the VPC to peer with the Cloud SQL private network.
1243
+ # Corresponds to the JSON property `vpc`
1244
+ # @return [String]
1245
+ attr_accessor :vpc
1246
+
1247
+ def initialize(**args)
1248
+ update!(**args)
1249
+ end
1250
+
1251
+ # Update properties of this object
1252
+ def update!(**args)
1253
+ @vm = args[:vm] if args.key?(:vm)
1254
+ @vm_ip = args[:vm_ip] if args.key?(:vm_ip)
1255
+ @vm_port = args[:vm_port] if args.key?(:vm_port)
1256
+ @vpc = args[:vpc] if args.key?(:vpc)
1257
+ end
1258
+ end
1259
+
1260
+ # Request message for `SetIamPolicy` method.
1261
+ class SetIamPolicyRequest
1262
+ include Google::Apis::Core::Hashable
1263
+
1264
+ # An Identity and Access Management (IAM) policy, which specifies access
1265
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
1266
+ # A `binding` binds one or more `members` to a single `role`. Members can be
1267
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
1268
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
1269
+ # role or a user-created custom role. For some types of Google Cloud resources,
1270
+ # a `binding` can also specify a `condition`, which is a logical expression that
1271
+ # allows access to a resource only if the expression evaluates to `true`. A
1272
+ # condition can add constraints based on attributes of the request, the resource,
1273
+ # or both. To learn which resources support conditions in their IAM policies,
1274
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
1275
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
1276
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
1277
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
1278
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
1279
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
1280
+ # title": "expirable access", "description": "Does not grant access after Sep
1281
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
1282
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
1283
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
1284
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
1285
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
1286
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
1287
+ # description: Does not grant access after Sep 2020 expression: request.time <
1288
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
1289
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
1290
+ # google.com/iam/docs/).
1291
+ # Corresponds to the JSON property `policy`
1292
+ # @return [Google::Apis::DatamigrationV1beta1::Policy]
1293
+ attr_accessor :policy
1294
+
1295
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
1296
+ # the fields in the mask will be modified. If no mask is provided, the following
1297
+ # default mask is used: `paths: "bindings, etag"`
1298
+ # Corresponds to the JSON property `updateMask`
1299
+ # @return [String]
1300
+ attr_accessor :update_mask
1301
+
1302
+ def initialize(**args)
1303
+ update!(**args)
1304
+ end
1305
+
1306
+ # Update properties of this object
1307
+ def update!(**args)
1308
+ @policy = args[:policy] if args.key?(:policy)
1309
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
1310
+ end
1311
+ end
1312
+
1313
+ # An entry for an Access Control list.
1314
+ class SqlAclEntry
1315
+ include Google::Apis::Core::Hashable
1316
+
1317
+ # The time when this access control entry expires in [RFC 3339](https://tools.
1318
+ # ietf.org/html/rfc3339) format, for example: `2012-11-15T16:19:00.094Z`.
1319
+ # Corresponds to the JSON property `expireTime`
1320
+ # @return [String]
1321
+ attr_accessor :expire_time
1322
+
1323
+ # A label to identify this entry.
1324
+ # Corresponds to the JSON property `label`
1325
+ # @return [String]
1326
+ attr_accessor :label
1327
+
1328
+ # Input only. The time-to-leave of this access control entry.
1329
+ # Corresponds to the JSON property `ttl`
1330
+ # @return [String]
1331
+ attr_accessor :ttl
1332
+
1333
+ # The allowlisted value for the access control list.
1334
+ # Corresponds to the JSON property `value`
1335
+ # @return [String]
1336
+ attr_accessor :value
1337
+
1338
+ def initialize(**args)
1339
+ update!(**args)
1340
+ end
1341
+
1342
+ # Update properties of this object
1343
+ def update!(**args)
1344
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
1345
+ @label = args[:label] if args.key?(:label)
1346
+ @ttl = args[:ttl] if args.key?(:ttl)
1347
+ @value = args[:value] if args.key?(:value)
1348
+ end
1349
+ end
1350
+
1351
+ # IP Management configuration.
1352
+ class SqlIpConfig
1353
+ include Google::Apis::Core::Hashable
1354
+
1355
+ # The list of external networks that are allowed to connect to the instance
1356
+ # using the IP. See https://en.wikipedia.org/wiki/CIDR_notation#CIDR_notation,
1357
+ # also known as 'slash' notation (e.g. `192.168.100.0/24`).
1358
+ # Corresponds to the JSON property `authorizedNetworks`
1359
+ # @return [Array<Google::Apis::DatamigrationV1beta1::SqlAclEntry>]
1360
+ attr_accessor :authorized_networks
1361
+
1362
+ # Whether the instance should be assigned an IPv4 address or not.
1363
+ # Corresponds to the JSON property `enableIpv4`
1364
+ # @return [Boolean]
1365
+ attr_accessor :enable_ipv4
1366
+ alias_method :enable_ipv4?, :enable_ipv4
1367
+
1368
+ # The resource link for the VPC network from which the Cloud SQL instance is
1369
+ # accessible for private IP. For example, `/projects/myProject/global/networks/
1370
+ # default`. This setting can be updated, but it cannot be removed after it is
1371
+ # set.
1372
+ # Corresponds to the JSON property `privateNetwork`
1373
+ # @return [String]
1374
+ attr_accessor :private_network
1375
+
1376
+ # Whether SSL connections over IP should be enforced or not.
1377
+ # Corresponds to the JSON property `requireSsl`
1378
+ # @return [Boolean]
1379
+ attr_accessor :require_ssl
1380
+ alias_method :require_ssl?, :require_ssl
1381
+
1382
+ def initialize(**args)
1383
+ update!(**args)
1384
+ end
1385
+
1386
+ # Update properties of this object
1387
+ def update!(**args)
1388
+ @authorized_networks = args[:authorized_networks] if args.key?(:authorized_networks)
1389
+ @enable_ipv4 = args[:enable_ipv4] if args.key?(:enable_ipv4)
1390
+ @private_network = args[:private_network] if args.key?(:private_network)
1391
+ @require_ssl = args[:require_ssl] if args.key?(:require_ssl)
1392
+ end
1393
+ end
1394
+
1395
+ # Response message for 'GenerateSshScript' request.
1396
+ class SshScript
1397
+ include Google::Apis::Core::Hashable
1398
+
1399
+ # The ssh configuration script.
1400
+ # Corresponds to the JSON property `script`
1401
+ # @return [String]
1402
+ attr_accessor :script
1403
+
1404
+ def initialize(**args)
1405
+ update!(**args)
1406
+ end
1407
+
1408
+ # Update properties of this object
1409
+ def update!(**args)
1410
+ @script = args[:script] if args.key?(:script)
1411
+ end
1412
+ end
1413
+
1414
+ # SSL configuration information.
1415
+ class SslConfig
1416
+ include Google::Apis::Core::Hashable
1417
+
1418
+ # Required. Input only. The x509 PEM-encoded certificate of the CA that signed
1419
+ # the source database server's certificate. The replica will use this
1420
+ # certificate to verify it's connecting to the right host.
1421
+ # Corresponds to the JSON property `caCertificate`
1422
+ # @return [String]
1423
+ attr_accessor :ca_certificate
1424
+
1425
+ # Input only. The x509 PEM-encoded certificate that will be used by the replica
1426
+ # to authenticate against the source database server.If this field is used then
1427
+ # the 'client_key' field is mandatory.
1428
+ # Corresponds to the JSON property `clientCertificate`
1429
+ # @return [String]
1430
+ attr_accessor :client_certificate
1431
+
1432
+ # Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key
1433
+ # associated with the Client Certificate. If this field is used then the '
1434
+ # client_certificate' field is mandatory.
1435
+ # Corresponds to the JSON property `clientKey`
1436
+ # @return [String]
1437
+ attr_accessor :client_key
1438
+
1439
+ # Output only. The ssl config type according to 'client_key', '
1440
+ # client_certificate' and 'ca_certificate'.
1441
+ # Corresponds to the JSON property `type`
1442
+ # @return [String]
1443
+ attr_accessor :type
1444
+
1445
+ def initialize(**args)
1446
+ update!(**args)
1447
+ end
1448
+
1449
+ # Update properties of this object
1450
+ def update!(**args)
1451
+ @ca_certificate = args[:ca_certificate] if args.key?(:ca_certificate)
1452
+ @client_certificate = args[:client_certificate] if args.key?(:client_certificate)
1453
+ @client_key = args[:client_key] if args.key?(:client_key)
1454
+ @type = args[:type] if args.key?(:type)
1455
+ end
1456
+ end
1457
+
1458
+ # Request message for 'StartMigrationJob' request.
1459
+ class StartMigrationJobRequest
1460
+ include Google::Apis::Core::Hashable
1461
+
1462
+ def initialize(**args)
1463
+ update!(**args)
1464
+ end
1465
+
1466
+ # Update properties of this object
1467
+ def update!(**args)
1468
+ end
1469
+ end
1470
+
1471
+ # The source database will allow incoming connections from the destination
1472
+ # database's public IP. You can retrieve the Cloud SQL instance's public IP from
1473
+ # the Cloud SQL console or using Cloud SQL APIs. No additional configuration is
1474
+ # required.
1475
+ class StaticIpConnectivity
1476
+ include Google::Apis::Core::Hashable
1477
+
1478
+ def initialize(**args)
1479
+ update!(**args)
1480
+ end
1481
+
1482
+ # Update properties of this object
1483
+ def update!(**args)
1484
+ end
1485
+ end
1486
+
1487
+ # The `Status` type defines a logical error model that is suitable for different
1488
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1489
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1490
+ # data: error code, error message, and error details. You can find out more
1491
+ # about this error model and how to work with it in the [API Design Guide](https:
1492
+ # //cloud.google.com/apis/design/errors).
1493
+ class Status
1494
+ include Google::Apis::Core::Hashable
1495
+
1496
+ # The status code, which should be an enum value of google.rpc.Code.
1497
+ # Corresponds to the JSON property `code`
1498
+ # @return [Fixnum]
1499
+ attr_accessor :code
1500
+
1501
+ # A list of messages that carry the error details. There is a common set of
1502
+ # message types for APIs to use.
1503
+ # Corresponds to the JSON property `details`
1504
+ # @return [Array<Hash<String,Object>>]
1505
+ attr_accessor :details
1506
+
1507
+ # A developer-facing error message, which should be in English. Any user-facing
1508
+ # error message should be localized and sent in the google.rpc.Status.details
1509
+ # field, or localized by the client.
1510
+ # Corresponds to the JSON property `message`
1511
+ # @return [String]
1512
+ attr_accessor :message
1513
+
1514
+ def initialize(**args)
1515
+ update!(**args)
1516
+ end
1517
+
1518
+ # Update properties of this object
1519
+ def update!(**args)
1520
+ @code = args[:code] if args.key?(:code)
1521
+ @details = args[:details] if args.key?(:details)
1522
+ @message = args[:message] if args.key?(:message)
1523
+ end
1524
+ end
1525
+
1526
+ # Request message for 'StopMigrationJob' request.
1527
+ class StopMigrationJobRequest
1528
+ include Google::Apis::Core::Hashable
1529
+
1530
+ def initialize(**args)
1531
+ update!(**args)
1532
+ end
1533
+
1534
+ # Update properties of this object
1535
+ def update!(**args)
1536
+ end
1537
+ end
1538
+
1539
+ # Request message for `TestIamPermissions` method.
1540
+ class TestIamPermissionsRequest
1541
+ include Google::Apis::Core::Hashable
1542
+
1543
+ # The set of permissions to check for the `resource`. Permissions with wildcards
1544
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
1545
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
1546
+ # Corresponds to the JSON property `permissions`
1547
+ # @return [Array<String>]
1548
+ attr_accessor :permissions
1549
+
1550
+ def initialize(**args)
1551
+ update!(**args)
1552
+ end
1553
+
1554
+ # Update properties of this object
1555
+ def update!(**args)
1556
+ @permissions = args[:permissions] if args.key?(:permissions)
1557
+ end
1558
+ end
1559
+
1560
+ # Response message for `TestIamPermissions` method.
1561
+ class TestIamPermissionsResponse
1562
+ include Google::Apis::Core::Hashable
1563
+
1564
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
1565
+ # Corresponds to the JSON property `permissions`
1566
+ # @return [Array<String>]
1567
+ attr_accessor :permissions
1568
+
1569
+ def initialize(**args)
1570
+ update!(**args)
1571
+ end
1572
+
1573
+ # Update properties of this object
1574
+ def update!(**args)
1575
+ @permissions = args[:permissions] if args.key?(:permissions)
1576
+ end
1577
+ end
1578
+
1579
+ # Request message for 'VerifyMigrationJob' request.
1580
+ class VerifyMigrationJobRequest
1581
+ include Google::Apis::Core::Hashable
1582
+
1583
+ def initialize(**args)
1584
+ update!(**args)
1585
+ end
1586
+
1587
+ # Update properties of this object
1588
+ def update!(**args)
1589
+ end
1590
+ end
1591
+
1592
+ # VM creation configuration message
1593
+ class VmCreationConfig
1594
+ include Google::Apis::Core::Hashable
1595
+
1596
+ # The subnet name the vm needs to be created in.
1597
+ # Corresponds to the JSON property `subnet`
1598
+ # @return [String]
1599
+ attr_accessor :subnet
1600
+
1601
+ # Required. VM instance machine type to create.
1602
+ # Corresponds to the JSON property `vmMachineType`
1603
+ # @return [String]
1604
+ attr_accessor :vm_machine_type
1605
+
1606
+ # The Google Cloud Platform zone to create the VM in.
1607
+ # Corresponds to the JSON property `vmZone`
1608
+ # @return [String]
1609
+ attr_accessor :vm_zone
1610
+
1611
+ def initialize(**args)
1612
+ update!(**args)
1613
+ end
1614
+
1615
+ # Update properties of this object
1616
+ def update!(**args)
1617
+ @subnet = args[:subnet] if args.key?(:subnet)
1618
+ @vm_machine_type = args[:vm_machine_type] if args.key?(:vm_machine_type)
1619
+ @vm_zone = args[:vm_zone] if args.key?(:vm_zone)
1620
+ end
1621
+ end
1622
+
1623
+ # VM selection configuration message
1624
+ class VmSelectionConfig
1625
+ include Google::Apis::Core::Hashable
1626
+
1627
+ # Required. The Google Cloud Platform zone the VM is located.
1628
+ # Corresponds to the JSON property `vmZone`
1629
+ # @return [String]
1630
+ attr_accessor :vm_zone
1631
+
1632
+ def initialize(**args)
1633
+ update!(**args)
1634
+ end
1635
+
1636
+ # Update properties of this object
1637
+ def update!(**args)
1638
+ @vm_zone = args[:vm_zone] if args.key?(:vm_zone)
1639
+ end
1640
+ end
1641
+
1642
+ # The details of the VPC where the source database is located in Google Cloud.
1643
+ # We will use this information to set up the VPC peering connection between
1644
+ # Cloud SQL and this VPC.
1645
+ class VpcPeeringConnectivity
1646
+ include Google::Apis::Core::Hashable
1647
+
1648
+ # The name of the VPC network to peer with the Cloud SQL private network.
1649
+ # Corresponds to the JSON property `vpc`
1650
+ # @return [String]
1651
+ attr_accessor :vpc
1652
+
1653
+ def initialize(**args)
1654
+ update!(**args)
1655
+ end
1656
+
1657
+ # Update properties of this object
1658
+ def update!(**args)
1659
+ @vpc = args[:vpc] if args.key?(:vpc)
1660
+ end
1661
+ end
1662
+ end
1663
+ end
1664
+ end