google-api-client 0.46.2 → 0.51.0

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