google-api-client 0.42.1 → 0.44.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (960) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +550 -0
  3. data/api_names.yaml +1 -0
  4. data/docs/oauth-server.md +4 -6
  5. data/generated/google/apis/abusiveexperiencereport_v1.rb +1 -1
  6. data/generated/google/apis/abusiveexperiencereport_v1/classes.rb +8 -13
  7. data/generated/google/apis/abusiveexperiencereport_v1/service.rb +2 -3
  8. data/generated/google/apis/accessapproval_v1.rb +1 -1
  9. data/generated/google/apis/accessapproval_v1/classes.rb +59 -83
  10. data/generated/google/apis/accessapproval_v1/representations.rb +1 -0
  11. data/generated/google/apis/accessapproval_v1/service.rb +93 -132
  12. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  13. data/generated/google/apis/accesscontextmanager_v1/classes.rb +198 -236
  14. data/generated/google/apis/accesscontextmanager_v1/service.rb +128 -171
  15. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  16. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +153 -184
  17. data/generated/google/apis/accesscontextmanager_v1beta/service.rb +82 -111
  18. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  19. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +532 -651
  20. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  21. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +467 -631
  22. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  23. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +47 -2
  24. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +18 -0
  25. data/generated/google/apis/adexperiencereport_v1.rb +1 -1
  26. data/generated/google/apis/adexperiencereport_v1/classes.rb +11 -18
  27. data/generated/google/apis/adexperiencereport_v1/service.rb +2 -3
  28. data/generated/google/apis/admin_datatransfer_v1.rb +6 -4
  29. data/generated/google/apis/admin_datatransfer_v1/classes.rb +16 -4
  30. data/generated/google/apis/admin_datatransfer_v1/service.rb +30 -48
  31. data/generated/google/apis/admin_directory_v1.rb +6 -8
  32. data/generated/google/apis/admin_directory_v1/classes.rb +209 -242
  33. data/generated/google/apis/admin_directory_v1/representations.rb +0 -39
  34. data/generated/google/apis/admin_directory_v1/service.rb +535 -998
  35. data/generated/google/apis/admin_reports_v1.rb +6 -5
  36. data/generated/google/apis/admin_reports_v1/classes.rb +31 -33
  37. data/generated/google/apis/admin_reports_v1/service.rb +131 -187
  38. data/generated/google/apis/admob_v1.rb +1 -1
  39. data/generated/google/apis/admob_v1/classes.rb +139 -268
  40. data/generated/google/apis/admob_v1/service.rb +11 -13
  41. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  42. data/generated/google/apis/alertcenter_v1beta1/classes.rb +107 -138
  43. data/generated/google/apis/alertcenter_v1beta1/service.rb +50 -55
  44. data/generated/google/apis/analyticsdata_v1alpha.rb +37 -0
  45. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +1610 -0
  46. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +789 -0
  47. data/generated/google/apis/analyticsdata_v1alpha/service.rb +220 -0
  48. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  49. data/generated/google/apis/analyticsreporting_v4/classes.rb +315 -399
  50. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  51. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +193 -220
  52. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +55 -61
  53. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  54. data/generated/google/apis/androidenterprise_v1/classes.rb +452 -557
  55. data/generated/google/apis/androidenterprise_v1/service.rb +181 -240
  56. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  57. data/generated/google/apis/androidmanagement_v1/classes.rb +98 -61
  58. data/generated/google/apis/androidmanagement_v1/representations.rb +17 -0
  59. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  60. data/generated/google/apis/androidpublisher_v3/classes.rb +281 -342
  61. data/generated/google/apis/androidpublisher_v3/service.rb +127 -155
  62. data/generated/google/apis/{accessapproval_v1beta1.rb → apigateway_v1alpha1.rb} +9 -9
  63. data/generated/google/apis/apigateway_v1alpha1/classes.rb +633 -0
  64. data/generated/google/apis/apigateway_v1alpha1/representations.rb +250 -0
  65. data/generated/google/apis/apigateway_v1alpha1/service.rb +623 -0
  66. data/generated/google/apis/{cloudfunctions_v1beta2.rb → apigateway_v1beta.rb} +9 -9
  67. data/generated/google/apis/apigateway_v1beta/classes.rb +1162 -0
  68. data/generated/google/apis/apigateway_v1beta/representations.rb +470 -0
  69. data/generated/google/apis/apigateway_v1beta/service.rb +1172 -0
  70. data/generated/google/apis/apigee_v1.rb +6 -8
  71. data/generated/google/apis/apigee_v1/classes.rb +925 -1226
  72. data/generated/google/apis/apigee_v1/representations.rb +66 -2
  73. data/generated/google/apis/apigee_v1/service.rb +1000 -1142
  74. data/generated/google/apis/appengine_v1.rb +1 -1
  75. data/generated/google/apis/appengine_v1/classes.rb +96 -59
  76. data/generated/google/apis/appengine_v1/representations.rb +17 -0
  77. data/generated/google/apis/appengine_v1/service.rb +38 -44
  78. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  79. data/generated/google/apis/appengine_v1alpha/classes.rb +9 -11
  80. data/generated/google/apis/appengine_v1beta.rb +1 -1
  81. data/generated/google/apis/appengine_v1beta/classes.rb +103 -59
  82. data/generated/google/apis/appengine_v1beta/representations.rb +18 -0
  83. data/generated/google/apis/appengine_v1beta/service.rb +37 -43
  84. data/generated/google/apis/appsmarket_v2.rb +1 -1
  85. data/generated/google/apis/appsmarket_v2/classes.rb +14 -16
  86. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  87. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +235 -337
  88. data/generated/google/apis/artifactregistry_v1beta1/service.rb +44 -57
  89. data/generated/google/apis/bigquery_v2.rb +1 -1
  90. data/generated/google/apis/bigquery_v2/classes.rb +564 -541
  91. data/generated/google/apis/bigquery_v2/representations.rb +86 -0
  92. data/generated/google/apis/bigquery_v2/service.rb +32 -40
  93. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  94. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +192 -337
  95. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +29 -32
  96. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  97. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +132 -158
  98. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +232 -282
  99. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  100. data/generated/google/apis/bigqueryreservation_v1/classes.rb +116 -123
  101. data/generated/google/apis/bigqueryreservation_v1/representations.rb +2 -0
  102. data/generated/google/apis/bigqueryreservation_v1/service.rb +137 -183
  103. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  104. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +88 -100
  105. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +77 -100
  106. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  107. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +93 -98
  108. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +2 -0
  109. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +114 -151
  110. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  111. data/generated/google/apis/bigtableadmin_v1/classes.rb +350 -65
  112. data/generated/google/apis/bigtableadmin_v1/representations.rb +129 -0
  113. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  114. data/generated/google/apis/bigtableadmin_v2/classes.rb +746 -543
  115. data/generated/google/apis/bigtableadmin_v2/representations.rb +175 -0
  116. data/generated/google/apis/bigtableadmin_v2/service.rb +386 -141
  117. data/generated/google/apis/billingbudgets_v1beta1.rb +4 -1
  118. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +97 -118
  119. data/generated/google/apis/billingbudgets_v1beta1/service.rb +30 -33
  120. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  121. data/generated/google/apis/binaryauthorization_v1/classes.rb +246 -354
  122. data/generated/google/apis/binaryauthorization_v1/representations.rb +1 -0
  123. data/generated/google/apis/binaryauthorization_v1/service.rb +74 -89
  124. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  125. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +246 -354
  126. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +1 -0
  127. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +74 -89
  128. data/generated/google/apis/blogger_v2.rb +2 -3
  129. data/generated/google/apis/blogger_v2/classes.rb +1 -2
  130. data/generated/google/apis/blogger_v2/service.rb +1 -2
  131. data/generated/google/apis/blogger_v3.rb +2 -3
  132. data/generated/google/apis/blogger_v3/classes.rb +1 -2
  133. data/generated/google/apis/blogger_v3/service.rb +1 -2
  134. data/generated/google/apis/books_v1.rb +1 -1
  135. data/generated/google/apis/books_v1/classes.rb +140 -159
  136. data/generated/google/apis/books_v1/service.rb +47 -49
  137. data/generated/google/apis/calendar_v3.rb +1 -1
  138. data/generated/google/apis/calendar_v3/classes.rb +11 -9
  139. data/generated/google/apis/chat_v1.rb +1 -1
  140. data/generated/google/apis/chat_v1/classes.rb +109 -115
  141. data/generated/google/apis/chat_v1/representations.rb +13 -0
  142. data/generated/google/apis/chat_v1/service.rb +65 -38
  143. data/generated/google/apis/chromeuxreport_v1.rb +1 -1
  144. data/generated/google/apis/chromeuxreport_v1/classes.rb +68 -57
  145. data/generated/google/apis/chromeuxreport_v1/representations.rb +2 -0
  146. data/generated/google/apis/civicinfo_v2.rb +1 -1
  147. data/generated/google/apis/civicinfo_v2/classes.rb +18 -8
  148. data/generated/google/apis/civicinfo_v2/representations.rb +2 -0
  149. data/generated/google/apis/classroom_v1.rb +1 -1
  150. data/generated/google/apis/classroom_v1/classes.rb +250 -365
  151. data/generated/google/apis/classroom_v1/service.rb +643 -902
  152. data/generated/google/apis/cloudasset_v1.rb +1 -1
  153. data/generated/google/apis/cloudasset_v1/classes.rb +713 -1036
  154. data/generated/google/apis/cloudasset_v1/service.rb +131 -156
  155. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  156. data/generated/google/apis/cloudasset_v1beta1/classes.rb +531 -775
  157. data/generated/google/apis/cloudasset_v1beta1/service.rb +59 -75
  158. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  159. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +204 -349
  160. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +35 -47
  161. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  162. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +220 -276
  163. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +75 -93
  164. data/generated/google/apis/cloudasset_v1p5beta1.rb +34 -0
  165. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +1300 -0
  166. data/generated/google/apis/cloudasset_v1p5beta1/representations.rb +399 -0
  167. data/generated/google/apis/cloudasset_v1p5beta1/service.rb +126 -0
  168. data/generated/google/apis/cloudbilling_v1.rb +7 -1
  169. data/generated/google/apis/cloudbilling_v1/classes.rb +284 -445
  170. data/generated/google/apis/cloudbilling_v1/service.rb +104 -124
  171. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  172. data/generated/google/apis/cloudbuild_v1/classes.rb +371 -343
  173. data/generated/google/apis/cloudbuild_v1/representations.rb +23 -0
  174. data/generated/google/apis/cloudbuild_v1/service.rb +265 -66
  175. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  176. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +291 -329
  177. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +2 -0
  178. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +15 -18
  179. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  180. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +277 -313
  181. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +2 -0
  182. data/generated/google/apis/cloudbuild_v1alpha2/service.rb +22 -28
  183. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  184. data/generated/google/apis/clouddebugger_v2/classes.rb +185 -252
  185. data/generated/google/apis/clouddebugger_v2/service.rb +53 -59
  186. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  187. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +132 -154
  188. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +1 -0
  189. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +53 -69
  190. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  191. data/generated/google/apis/cloudfunctions_v1/classes.rb +323 -538
  192. data/generated/google/apis/cloudfunctions_v1/representations.rb +0 -17
  193. data/generated/google/apis/cloudfunctions_v1/service.rb +79 -93
  194. data/generated/google/apis/cloudidentity_v1.rb +4 -1
  195. data/generated/google/apis/cloudidentity_v1/classes.rb +893 -75
  196. data/generated/google/apis/cloudidentity_v1/representations.rb +342 -0
  197. data/generated/google/apis/cloudidentity_v1/service.rb +802 -61
  198. data/generated/google/apis/cloudidentity_v1beta1.rb +4 -1
  199. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1059 -318
  200. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +331 -22
  201. data/generated/google/apis/cloudidentity_v1beta1/service.rb +742 -96
  202. data/generated/google/apis/cloudiot_v1.rb +1 -1
  203. data/generated/google/apis/cloudiot_v1/classes.rb +270 -373
  204. data/generated/google/apis/cloudiot_v1/representations.rb +1 -0
  205. data/generated/google/apis/cloudiot_v1/service.rb +147 -154
  206. data/generated/google/apis/cloudkms_v1.rb +1 -1
  207. data/generated/google/apis/cloudkms_v1/classes.rb +502 -692
  208. data/generated/google/apis/cloudkms_v1/representations.rb +17 -0
  209. data/generated/google/apis/cloudkms_v1/service.rb +170 -216
  210. data/generated/google/apis/cloudprofiler_v2.rb +1 -1
  211. data/generated/google/apis/cloudprofiler_v2/classes.rb +28 -33
  212. data/generated/google/apis/cloudprofiler_v2/service.rb +17 -19
  213. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  214. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +510 -754
  215. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +1 -0
  216. data/generated/google/apis/cloudresourcemanager_v1/service.rb +197 -246
  217. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  218. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +265 -429
  219. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +1 -0
  220. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +134 -175
  221. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  222. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +265 -414
  223. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +1 -0
  224. data/generated/google/apis/cloudresourcemanager_v2/service.rb +96 -129
  225. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  226. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +265 -414
  227. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +1 -0
  228. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +96 -129
  229. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  230. data/generated/google/apis/cloudscheduler_v1/classes.rb +280 -380
  231. data/generated/google/apis/cloudscheduler_v1/representations.rb +1 -0
  232. data/generated/google/apis/cloudscheduler_v1/service.rb +45 -62
  233. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  234. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +281 -381
  235. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +1 -0
  236. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +45 -62
  237. data/generated/google/apis/cloudsearch_v1.rb +2 -2
  238. data/generated/google/apis/cloudsearch_v1/classes.rb +650 -782
  239. data/generated/google/apis/cloudsearch_v1/representations.rb +15 -0
  240. data/generated/google/apis/cloudsearch_v1/service.rb +286 -326
  241. data/generated/google/apis/cloudshell_v1.rb +1 -1
  242. data/generated/google/apis/cloudshell_v1/classes.rb +36 -227
  243. data/generated/google/apis/cloudshell_v1/representations.rb +0 -67
  244. data/generated/google/apis/cloudshell_v1/service.rb +21 -25
  245. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  246. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +66 -72
  247. data/generated/google/apis/cloudshell_v1alpha1/service.rb +20 -24
  248. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  249. data/generated/google/apis/cloudtasks_v2/classes.rb +605 -933
  250. data/generated/google/apis/cloudtasks_v2/service.rb +146 -217
  251. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  252. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +602 -964
  253. data/generated/google/apis/cloudtasks_v2beta2/service.rb +178 -270
  254. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  255. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +609 -938
  256. data/generated/google/apis/cloudtasks_v2beta3/service.rb +146 -217
  257. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  258. data/generated/google/apis/cloudtrace_v1/classes.rb +39 -61
  259. data/generated/google/apis/cloudtrace_v1/service.rb +37 -51
  260. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  261. data/generated/google/apis/cloudtrace_v2/classes.rb +92 -107
  262. data/generated/google/apis/cloudtrace_v2/service.rb +8 -11
  263. data/generated/google/apis/cloudtrace_v2beta1.rb +1 -1
  264. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +23 -33
  265. data/generated/google/apis/cloudtrace_v2beta1/service.rb +30 -37
  266. data/generated/google/apis/composer_v1.rb +1 -1
  267. data/generated/google/apis/composer_v1/classes.rb +190 -242
  268. data/generated/google/apis/composer_v1/service.rb +79 -150
  269. data/generated/google/apis/composer_v1beta1.rb +1 -1
  270. data/generated/google/apis/composer_v1beta1/classes.rb +203 -262
  271. data/generated/google/apis/composer_v1beta1/service.rb +92 -179
  272. data/generated/google/apis/compute_alpha.rb +1 -1
  273. data/generated/google/apis/compute_alpha/classes.rb +1021 -137
  274. data/generated/google/apis/compute_alpha/representations.rb +208 -4
  275. data/generated/google/apis/compute_alpha/service.rb +710 -699
  276. data/generated/google/apis/compute_beta.rb +1 -1
  277. data/generated/google/apis/compute_beta/classes.rb +607 -82
  278. data/generated/google/apis/compute_beta/representations.rb +114 -1
  279. data/generated/google/apis/compute_beta/service.rb +623 -612
  280. data/generated/google/apis/compute_v1.rb +1 -1
  281. data/generated/google/apis/compute_v1/classes.rb +1014 -99
  282. data/generated/google/apis/compute_v1/representations.rb +390 -15
  283. data/generated/google/apis/compute_v1/service.rb +809 -33
  284. data/generated/google/apis/container_v1.rb +1 -1
  285. data/generated/google/apis/container_v1/classes.rb +996 -965
  286. data/generated/google/apis/container_v1/representations.rb +75 -0
  287. data/generated/google/apis/container_v1/service.rb +435 -502
  288. data/generated/google/apis/container_v1beta1.rb +1 -1
  289. data/generated/google/apis/container_v1beta1/classes.rb +1066 -1044
  290. data/generated/google/apis/container_v1beta1/representations.rb +76 -0
  291. data/generated/google/apis/container_v1beta1/service.rb +403 -466
  292. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  293. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +463 -596
  294. data/generated/google/apis/containeranalysis_v1alpha1/representations.rb +1 -0
  295. data/generated/google/apis/containeranalysis_v1alpha1/service.rb +149 -169
  296. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  297. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +461 -613
  298. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +1 -0
  299. data/generated/google/apis/containeranalysis_v1beta1/service.rb +75 -90
  300. data/generated/google/apis/content_v2.rb +1 -1
  301. data/generated/google/apis/content_v2/classes.rb +20 -2
  302. data/generated/google/apis/content_v2/representations.rb +1 -0
  303. data/generated/google/apis/content_v2_1.rb +1 -1
  304. data/generated/google/apis/content_v2_1/classes.rb +122 -5
  305. data/generated/google/apis/content_v2_1/representations.rb +36 -0
  306. data/generated/google/apis/content_v2_1/service.rb +53 -2
  307. data/generated/google/apis/customsearch_v1.rb +1 -1
  308. data/generated/google/apis/customsearch_v1/classes.rb +303 -488
  309. data/generated/google/apis/customsearch_v1/service.rb +186 -343
  310. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  311. data/generated/google/apis/datacatalog_v1beta1/classes.rb +389 -570
  312. data/generated/google/apis/datacatalog_v1beta1/representations.rb +1 -0
  313. data/generated/google/apis/datacatalog_v1beta1/service.rb +319 -440
  314. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  315. data/generated/google/apis/dataflow_v1b3/classes.rb +1015 -972
  316. data/generated/google/apis/dataflow_v1b3/representations.rb +115 -0
  317. data/generated/google/apis/dataflow_v1b3/service.rb +299 -257
  318. data/generated/google/apis/datafusion_v1.rb +40 -0
  319. data/generated/google/apis/datafusion_v1/classes.rb +1040 -0
  320. data/generated/google/apis/{cloudfunctions_v1beta2 → datafusion_v1}/representations.rb +143 -94
  321. data/generated/google/apis/datafusion_v1/service.rb +667 -0
  322. data/generated/google/apis/datafusion_v1beta1.rb +5 -8
  323. data/generated/google/apis/datafusion_v1beta1/classes.rb +283 -397
  324. data/generated/google/apis/datafusion_v1beta1/representations.rb +5 -0
  325. data/generated/google/apis/datafusion_v1beta1/service.rb +81 -95
  326. data/generated/google/apis/dataproc_v1.rb +1 -1
  327. data/generated/google/apis/dataproc_v1/classes.rb +249 -327
  328. data/generated/google/apis/dataproc_v1/representations.rb +18 -0
  329. data/generated/google/apis/dataproc_v1/service.rb +134 -168
  330. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  331. data/generated/google/apis/dataproc_v1beta2/classes.rb +272 -322
  332. data/generated/google/apis/dataproc_v1beta2/representations.rb +33 -0
  333. data/generated/google/apis/dataproc_v1beta2/service.rb +137 -192
  334. data/generated/google/apis/datastore_v1.rb +1 -1
  335. data/generated/google/apis/datastore_v1/classes.rb +330 -472
  336. data/generated/google/apis/datastore_v1/service.rb +52 -63
  337. data/generated/google/apis/datastore_v1beta1.rb +1 -1
  338. data/generated/google/apis/datastore_v1beta1/classes.rb +150 -217
  339. data/generated/google/apis/datastore_v1beta1/service.rb +11 -12
  340. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  341. data/generated/google/apis/datastore_v1beta3/classes.rb +255 -371
  342. data/generated/google/apis/datastore_v1beta3/service.rb +1 -2
  343. data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
  344. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  345. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  346. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  347. data/generated/google/apis/dfareporting_v3_3/classes.rb +326 -339
  348. data/generated/google/apis/dfareporting_v3_3/representations.rb +42 -0
  349. data/generated/google/apis/dfareporting_v3_3/service.rb +673 -1286
  350. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  351. data/generated/google/apis/dfareporting_v3_4/classes.rb +769 -350
  352. data/generated/google/apis/dfareporting_v3_4/representations.rb +225 -0
  353. data/generated/google/apis/dfareporting_v3_4/service.rb +708 -1285
  354. data/generated/google/apis/dialogflow_v2.rb +1 -1
  355. data/generated/google/apis/dialogflow_v2/classes.rb +1381 -1563
  356. data/generated/google/apis/dialogflow_v2/representations.rb +68 -15
  357. data/generated/google/apis/dialogflow_v2/service.rb +324 -444
  358. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  359. data/generated/google/apis/dialogflow_v2beta1/classes.rb +1462 -1643
  360. data/generated/google/apis/dialogflow_v2beta1/representations.rb +68 -15
  361. data/generated/google/apis/dialogflow_v2beta1/service.rb +915 -988
  362. data/generated/google/apis/dialogflow_v3beta1.rb +38 -0
  363. data/generated/google/apis/dialogflow_v3beta1/classes.rb +8192 -0
  364. data/generated/google/apis/dialogflow_v3beta1/representations.rb +3459 -0
  365. data/generated/google/apis/dialogflow_v3beta1/service.rb +2812 -0
  366. data/generated/google/apis/digitalassetlinks_v1.rb +1 -1
  367. data/generated/google/apis/digitalassetlinks_v1/classes.rb +66 -92
  368. data/generated/google/apis/digitalassetlinks_v1/service.rb +131 -188
  369. data/generated/google/apis/displayvideo_v1.rb +7 -1
  370. data/generated/google/apis/displayvideo_v1/classes.rb +1817 -1726
  371. data/generated/google/apis/displayvideo_v1/representations.rb +305 -0
  372. data/generated/google/apis/displayvideo_v1/service.rb +1287 -924
  373. data/generated/google/apis/displayvideo_v1beta.rb +38 -0
  374. data/generated/google/apis/displayvideo_v1beta/classes.rb +146 -0
  375. data/generated/google/apis/displayvideo_v1beta/representations.rb +72 -0
  376. data/generated/google/apis/displayvideo_v1beta/service.rb +161 -0
  377. data/generated/google/apis/displayvideo_v1beta2.rb +38 -0
  378. data/generated/google/apis/displayvideo_v1beta2/classes.rb +146 -0
  379. data/generated/google/apis/displayvideo_v1beta2/representations.rb +72 -0
  380. data/generated/google/apis/displayvideo_v1beta2/service.rb +130 -0
  381. data/generated/google/apis/displayvideo_v1dev.rb +38 -0
  382. data/generated/google/apis/displayvideo_v1dev/classes.rb +146 -0
  383. data/generated/google/apis/displayvideo_v1dev/representations.rb +72 -0
  384. data/generated/google/apis/displayvideo_v1dev/service.rb +130 -0
  385. data/generated/google/apis/dlp_v2.rb +1 -1
  386. data/generated/google/apis/dlp_v2/classes.rb +1076 -1301
  387. data/generated/google/apis/dlp_v2/service.rb +962 -905
  388. data/generated/google/apis/dns_v1.rb +1 -1
  389. data/generated/google/apis/dns_v1/classes.rb +175 -198
  390. data/generated/google/apis/dns_v1/service.rb +82 -97
  391. data/generated/google/apis/dns_v1beta2.rb +1 -1
  392. data/generated/google/apis/dns_v1beta2/classes.rb +180 -205
  393. data/generated/google/apis/dns_v1beta2/service.rb +82 -97
  394. data/generated/google/apis/docs_v1.rb +1 -1
  395. data/generated/google/apis/docs_v1/classes.rb +894 -1229
  396. data/generated/google/apis/docs_v1/service.rb +17 -22
  397. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  398. data/generated/google/apis/documentai_v1beta2/classes.rb +2253 -824
  399. data/generated/google/apis/documentai_v1beta2/representations.rb +701 -0
  400. data/generated/google/apis/documentai_v1beta2/service.rb +22 -24
  401. data/generated/google/apis/domainsrdap_v1.rb +1 -1
  402. data/generated/google/apis/domainsrdap_v1/classes.rb +42 -69
  403. data/generated/google/apis/domainsrdap_v1/service.rb +16 -16
  404. data/generated/google/apis/doubleclickbidmanager_v1.rb +3 -2
  405. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +8 -15
  406. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +37 -66
  407. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +3 -2
  408. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +202 -15
  409. data/generated/google/apis/doubleclickbidmanager_v1_1/representations.rb +107 -0
  410. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +37 -66
  411. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  412. data/generated/google/apis/doubleclicksearch_v2/classes.rb +109 -126
  413. data/generated/google/apis/doubleclicksearch_v2/service.rb +5 -6
  414. data/generated/google/apis/drive_v2.rb +1 -1
  415. data/generated/google/apis/drive_v2/classes.rb +17 -7
  416. data/generated/google/apis/drive_v2/representations.rb +1 -0
  417. data/generated/google/apis/drive_v2/service.rb +79 -15
  418. data/generated/google/apis/drive_v3.rb +1 -1
  419. data/generated/google/apis/drive_v3/classes.rb +23 -7
  420. data/generated/google/apis/drive_v3/representations.rb +2 -0
  421. data/generated/google/apis/drive_v3/service.rb +59 -11
  422. data/generated/google/apis/driveactivity_v2.rb +1 -1
  423. data/generated/google/apis/driveactivity_v2/classes.rb +55 -68
  424. data/generated/google/apis/factchecktools_v1alpha1.rb +1 -1
  425. data/generated/google/apis/factchecktools_v1alpha1/classes.rb +46 -56
  426. data/generated/google/apis/factchecktools_v1alpha1/service.rb +30 -33
  427. data/generated/google/apis/fcm_v1.rb +1 -1
  428. data/generated/google/apis/fcm_v1/classes.rb +245 -393
  429. data/generated/google/apis/fcm_v1/service.rb +5 -6
  430. data/generated/google/apis/file_v1.rb +1 -1
  431. data/generated/google/apis/file_v1/classes.rb +154 -173
  432. data/generated/google/apis/file_v1/service.rb +43 -52
  433. data/generated/google/apis/file_v1beta1.rb +1 -1
  434. data/generated/google/apis/file_v1beta1/classes.rb +334 -193
  435. data/generated/google/apis/file_v1beta1/representations.rb +55 -0
  436. data/generated/google/apis/file_v1beta1/service.rb +267 -55
  437. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  438. data/generated/google/apis/firebase_v1beta1/classes.rb +325 -381
  439. data/generated/google/apis/firebase_v1beta1/representations.rb +3 -16
  440. data/generated/google/apis/firebase_v1beta1/service.rb +364 -421
  441. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  442. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +89 -112
  443. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +18 -21
  444. data/generated/google/apis/firebasehosting_v1.rb +1 -1
  445. data/generated/google/apis/firebasehosting_v1/classes.rb +36 -40
  446. data/generated/google/apis/firebasehosting_v1/service.rb +19 -22
  447. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  448. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +334 -177
  449. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +83 -0
  450. data/generated/google/apis/firebasehosting_v1beta1/service.rb +526 -145
  451. data/generated/google/apis/firebaseml_v1.rb +1 -1
  452. data/generated/google/apis/firebaseml_v1/classes.rb +39 -44
  453. data/generated/google/apis/firebaseml_v1/service.rb +19 -22
  454. data/generated/google/apis/firebaseml_v1beta2.rb +1 -1
  455. data/generated/google/apis/firebaseml_v1beta2/classes.rb +67 -68
  456. data/generated/google/apis/firebaseml_v1beta2/representations.rb +1 -0
  457. data/generated/google/apis/firebaseml_v1beta2/service.rb +16 -18
  458. data/generated/google/apis/firebaserules_v1.rb +1 -1
  459. data/generated/google/apis/firebaserules_v1/classes.rb +102 -137
  460. data/generated/google/apis/firebaserules_v1/service.rb +87 -110
  461. data/generated/google/apis/firestore_v1.rb +1 -1
  462. data/generated/google/apis/firestore_v1/classes.rb +402 -498
  463. data/generated/google/apis/firestore_v1/service.rb +165 -201
  464. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  465. data/generated/google/apis/firestore_v1beta1/classes.rb +334 -409
  466. data/generated/google/apis/firestore_v1beta1/service.rb +106 -122
  467. data/generated/google/apis/firestore_v1beta2.rb +1 -1
  468. data/generated/google/apis/firestore_v1beta2/classes.rb +135 -165
  469. data/generated/google/apis/firestore_v1beta2/service.rb +65 -86
  470. data/generated/google/apis/fitness_v1.rb +3 -3
  471. data/generated/google/apis/fitness_v1/classes.rb +172 -210
  472. data/generated/google/apis/fitness_v1/service.rb +125 -146
  473. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  474. data/generated/google/apis/games_configuration_v1configuration/classes.rb +2 -3
  475. data/generated/google/apis/games_configuration_v1configuration/service.rb +8 -8
  476. data/generated/google/apis/games_management_v1management.rb +2 -3
  477. data/generated/google/apis/games_management_v1management/classes.rb +14 -20
  478. data/generated/google/apis/games_management_v1management/service.rb +37 -38
  479. data/generated/google/apis/games_v1.rb +2 -3
  480. data/generated/google/apis/games_v1/classes.rb +77 -84
  481. data/generated/google/apis/games_v1/representations.rb +2 -0
  482. data/generated/google/apis/games_v1/service.rb +86 -92
  483. data/generated/google/apis/gameservices_v1.rb +1 -1
  484. data/generated/google/apis/gameservices_v1/classes.rb +351 -523
  485. data/generated/google/apis/gameservices_v1/representations.rb +1 -0
  486. data/generated/google/apis/gameservices_v1/service.rb +167 -207
  487. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  488. data/generated/google/apis/gameservices_v1beta/classes.rb +351 -523
  489. data/generated/google/apis/gameservices_v1beta/representations.rb +1 -0
  490. data/generated/google/apis/gameservices_v1beta/service.rb +167 -207
  491. data/generated/google/apis/genomics_v1.rb +1 -1
  492. data/generated/google/apis/genomics_v1/classes.rb +70 -76
  493. data/generated/google/apis/genomics_v1/service.rb +28 -43
  494. data/generated/google/apis/genomics_v1alpha2.rb +1 -1
  495. data/generated/google/apis/genomics_v1alpha2/classes.rb +223 -290
  496. data/generated/google/apis/genomics_v1alpha2/service.rb +54 -76
  497. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  498. data/generated/google/apis/genomics_v2alpha1/classes.rb +252 -347
  499. data/generated/google/apis/genomics_v2alpha1/representations.rb +1 -27
  500. data/generated/google/apis/genomics_v2alpha1/service.rb +47 -100
  501. data/generated/google/apis/gmail_v1.rb +3 -3
  502. data/generated/google/apis/gmail_v1/classes.rb +207 -266
  503. data/generated/google/apis/gmail_v1/service.rb +260 -287
  504. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +5 -2
  505. data/generated/google/apis/gmailpostmastertools_v1beta1/classes.rb +37 -42
  506. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +35 -41
  507. data/generated/google/apis/groupsmigration_v1.rb +35 -0
  508. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  509. data/generated/google/apis/groupsmigration_v1/representations.rb +40 -0
  510. data/generated/google/apis/groupsmigration_v1/service.rb +100 -0
  511. data/generated/google/apis/healthcare_v1.rb +1 -1
  512. data/generated/google/apis/healthcare_v1/classes.rb +635 -826
  513. data/generated/google/apis/healthcare_v1/representations.rb +32 -0
  514. data/generated/google/apis/healthcare_v1/service.rb +843 -843
  515. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  516. data/generated/google/apis/healthcare_v1beta1/classes.rb +880 -1086
  517. data/generated/google/apis/healthcare_v1beta1/representations.rb +59 -0
  518. data/generated/google/apis/healthcare_v1beta1/service.rb +1150 -1108
  519. data/generated/google/apis/homegraph_v1.rb +4 -1
  520. data/generated/google/apis/homegraph_v1/classes.rb +76 -164
  521. data/generated/google/apis/homegraph_v1/service.rb +23 -35
  522. data/generated/google/apis/iam_v1.rb +5 -2
  523. data/generated/google/apis/iam_v1/classes.rb +395 -592
  524. data/generated/google/apis/iam_v1/representations.rb +1 -0
  525. data/generated/google/apis/iam_v1/service.rb +429 -555
  526. data/generated/google/apis/iamcredentials_v1.rb +4 -2
  527. data/generated/google/apis/iamcredentials_v1/classes.rb +75 -85
  528. data/generated/google/apis/iamcredentials_v1/service.rb +15 -13
  529. data/generated/google/apis/iap_v1.rb +1 -1
  530. data/generated/google/apis/iap_v1/classes.rb +253 -355
  531. data/generated/google/apis/iap_v1/representations.rb +1 -0
  532. data/generated/google/apis/iap_v1/service.rb +61 -71
  533. data/generated/google/apis/iap_v1beta1.rb +1 -1
  534. data/generated/google/apis/iap_v1beta1/classes.rb +164 -254
  535. data/generated/google/apis/iap_v1beta1/representations.rb +1 -0
  536. data/generated/google/apis/iap_v1beta1/service.rb +17 -19
  537. data/generated/google/apis/indexing_v3.rb +1 -1
  538. data/generated/google/apis/indexing_v3/classes.rb +11 -11
  539. data/generated/google/apis/jobs_v2.rb +1 -1
  540. data/generated/google/apis/jobs_v2/classes.rb +786 -1086
  541. data/generated/google/apis/jobs_v2/service.rb +85 -126
  542. data/generated/google/apis/jobs_v3.rb +1 -1
  543. data/generated/google/apis/jobs_v3/classes.rb +637 -856
  544. data/generated/google/apis/jobs_v3/service.rb +101 -139
  545. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  546. data/generated/google/apis/jobs_v3p1beta1/classes.rb +762 -1023
  547. data/generated/google/apis/jobs_v3p1beta1/service.rb +103 -142
  548. data/generated/google/apis/kgsearch_v1.rb +1 -1
  549. data/generated/google/apis/kgsearch_v1/classes.rb +4 -4
  550. data/generated/google/apis/kgsearch_v1/service.rb +11 -11
  551. data/generated/google/apis/language_v1.rb +1 -1
  552. data/generated/google/apis/language_v1/classes.rb +93 -111
  553. data/generated/google/apis/language_v1/service.rb +4 -4
  554. data/generated/google/apis/language_v1beta1.rb +1 -1
  555. data/generated/google/apis/language_v1beta1/classes.rb +78 -90
  556. data/generated/google/apis/language_v1beta1/service.rb +2 -2
  557. data/generated/google/apis/language_v1beta2.rb +1 -1
  558. data/generated/google/apis/language_v1beta2/classes.rb +95 -112
  559. data/generated/google/apis/language_v1beta2/service.rb +4 -4
  560. data/generated/google/apis/libraryagent_v1.rb +1 -1
  561. data/generated/google/apis/libraryagent_v1/classes.rb +10 -16
  562. data/generated/google/apis/libraryagent_v1/service.rb +13 -16
  563. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  564. data/generated/google/apis/lifesciences_v2beta/classes.rb +262 -290
  565. data/generated/google/apis/lifesciences_v2beta/service.rb +30 -42
  566. data/generated/google/apis/localservices_v1.rb +31 -0
  567. data/generated/google/apis/localservices_v1/classes.rb +419 -0
  568. data/generated/google/apis/localservices_v1/representations.rb +172 -0
  569. data/generated/google/apis/localservices_v1/service.rb +199 -0
  570. data/generated/google/apis/logging_v2.rb +1 -1
  571. data/generated/google/apis/logging_v2/classes.rb +174 -214
  572. data/generated/google/apis/logging_v2/representations.rb +15 -0
  573. data/generated/google/apis/logging_v2/service.rb +1017 -584
  574. data/generated/google/apis/managedidentities_v1.rb +1 -1
  575. data/generated/google/apis/managedidentities_v1/classes.rb +326 -452
  576. data/generated/google/apis/managedidentities_v1/service.rb +78 -99
  577. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  578. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +344 -457
  579. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +1 -0
  580. data/generated/google/apis/managedidentities_v1alpha1/service.rb +88 -112
  581. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  582. data/generated/google/apis/managedidentities_v1beta1/classes.rb +340 -456
  583. data/generated/google/apis/managedidentities_v1beta1/representations.rb +1 -0
  584. data/generated/google/apis/managedidentities_v1beta1/service.rb +76 -96
  585. data/generated/google/apis/manufacturers_v1.rb +1 -1
  586. data/generated/google/apis/manufacturers_v1/classes.rb +99 -109
  587. data/generated/google/apis/manufacturers_v1/service.rb +44 -55
  588. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  589. data/generated/google/apis/memcache_v1beta2/classes.rb +170 -710
  590. data/generated/google/apis/memcache_v1beta2/representations.rb +0 -120
  591. data/generated/google/apis/memcache_v1beta2/service.rb +58 -190
  592. data/generated/google/apis/ml_v1.rb +1 -1
  593. data/generated/google/apis/ml_v1/classes.rb +956 -1144
  594. data/generated/google/apis/ml_v1/representations.rb +65 -0
  595. data/generated/google/apis/ml_v1/service.rb +194 -253
  596. data/generated/google/apis/monitoring_v1.rb +1 -1
  597. data/generated/google/apis/monitoring_v1/classes.rb +121 -38
  598. data/generated/google/apis/monitoring_v1/representations.rb +35 -0
  599. data/generated/google/apis/monitoring_v1/service.rb +10 -11
  600. data/generated/google/apis/monitoring_v3.rb +1 -1
  601. data/generated/google/apis/monitoring_v3/classes.rb +253 -337
  602. data/generated/google/apis/monitoring_v3/representations.rb +2 -0
  603. data/generated/google/apis/monitoring_v3/service.rb +126 -144
  604. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  605. data/generated/google/apis/networkmanagement_v1/classes.rb +273 -429
  606. data/generated/google/apis/networkmanagement_v1/service.rb +97 -120
  607. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  608. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +388 -429
  609. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +40 -0
  610. data/generated/google/apis/networkmanagement_v1beta1/service.rb +97 -120
  611. data/generated/google/apis/osconfig_v1.rb +1 -1
  612. data/generated/google/apis/osconfig_v1/classes.rb +227 -179
  613. data/generated/google/apis/osconfig_v1/representations.rb +35 -0
  614. data/generated/google/apis/osconfig_v1/service.rb +22 -27
  615. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  616. data/generated/google/apis/osconfig_v1beta/classes.rb +400 -409
  617. data/generated/google/apis/osconfig_v1beta/representations.rb +35 -0
  618. data/generated/google/apis/osconfig_v1beta/service.rb +39 -52
  619. data/generated/google/apis/oslogin_v1.rb +1 -1
  620. data/generated/google/apis/oslogin_v1/classes.rb +14 -12
  621. data/generated/google/apis/oslogin_v1/representations.rb +1 -0
  622. data/generated/google/apis/oslogin_v1/service.rb +12 -16
  623. data/generated/google/apis/oslogin_v1alpha.rb +1 -1
  624. data/generated/google/apis/oslogin_v1alpha/classes.rb +14 -12
  625. data/generated/google/apis/oslogin_v1alpha/representations.rb +1 -0
  626. data/generated/google/apis/oslogin_v1alpha/service.rb +14 -14
  627. data/generated/google/apis/oslogin_v1beta.rb +1 -1
  628. data/generated/google/apis/oslogin_v1beta/classes.rb +14 -12
  629. data/generated/google/apis/oslogin_v1beta/representations.rb +1 -0
  630. data/generated/google/apis/oslogin_v1beta/service.rb +12 -16
  631. data/generated/google/apis/pagespeedonline_v5.rb +2 -2
  632. data/generated/google/apis/pagespeedonline_v5/classes.rb +18 -24
  633. data/generated/google/apis/pagespeedonline_v5/service.rb +3 -4
  634. data/generated/google/apis/people_v1.rb +1 -1
  635. data/generated/google/apis/people_v1/classes.rb +493 -403
  636. data/generated/google/apis/people_v1/representations.rb +98 -0
  637. data/generated/google/apis/people_v1/service.rb +169 -385
  638. data/generated/google/apis/playablelocations_v3.rb +1 -1
  639. data/generated/google/apis/playablelocations_v3/classes.rb +108 -155
  640. data/generated/google/apis/playablelocations_v3/service.rb +10 -10
  641. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  642. data/generated/google/apis/playcustomapp_v1/classes.rb +2 -2
  643. data/generated/google/apis/playcustomapp_v1/service.rb +2 -2
  644. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  645. data/generated/google/apis/policytroubleshooter_v1/classes.rb +232 -394
  646. data/generated/google/apis/policytroubleshooter_v1/service.rb +2 -2
  647. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  648. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +232 -393
  649. data/generated/google/apis/policytroubleshooter_v1beta/service.rb +2 -2
  650. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  651. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +148 -219
  652. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +11 -29
  653. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +304 -313
  654. data/generated/google/apis/pubsub_v1.rb +1 -1
  655. data/generated/google/apis/pubsub_v1/classes.rb +407 -512
  656. data/generated/google/apis/pubsub_v1/representations.rb +3 -0
  657. data/generated/google/apis/pubsub_v1/service.rb +220 -246
  658. data/generated/google/apis/pubsub_v1beta1a.rb +1 -1
  659. data/generated/google/apis/pubsub_v1beta1a/classes.rb +71 -86
  660. data/generated/google/apis/pubsub_v1beta1a/service.rb +31 -38
  661. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  662. data/generated/google/apis/pubsub_v1beta2/classes.rb +244 -354
  663. data/generated/google/apis/pubsub_v1beta2/service.rb +96 -108
  664. data/generated/google/apis/pubsublite_v1.rb +34 -0
  665. data/generated/google/apis/pubsublite_v1/classes.rb +389 -0
  666. data/generated/google/apis/{accessapproval_v1beta1 → pubsublite_v1}/representations.rb +78 -53
  667. data/generated/google/apis/pubsublite_v1/service.rb +525 -0
  668. data/generated/google/apis/realtimebidding_v1.rb +1 -4
  669. data/generated/google/apis/realtimebidding_v1/classes.rb +198 -291
  670. data/generated/google/apis/realtimebidding_v1/service.rb +98 -135
  671. data/generated/google/apis/recommendationengine_v1beta1.rb +2 -2
  672. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +337 -456
  673. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +0 -16
  674. data/generated/google/apis/recommendationengine_v1beta1/service.rb +141 -207
  675. data/generated/google/apis/recommender_v1.rb +1 -1
  676. data/generated/google/apis/recommender_v1/classes.rb +76 -100
  677. data/generated/google/apis/recommender_v1/service.rb +43 -58
  678. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  679. data/generated/google/apis/recommender_v1beta1/classes.rb +75 -99
  680. data/generated/google/apis/recommender_v1beta1/service.rb +43 -58
  681. data/generated/google/apis/redis_v1.rb +1 -1
  682. data/generated/google/apis/redis_v1/classes.rb +477 -116
  683. data/generated/google/apis/redis_v1/representations.rb +139 -0
  684. data/generated/google/apis/redis_v1/service.rb +93 -110
  685. data/generated/google/apis/redis_v1beta1.rb +1 -1
  686. data/generated/google/apis/redis_v1beta1/classes.rb +481 -120
  687. data/generated/google/apis/redis_v1beta1/representations.rb +139 -0
  688. data/generated/google/apis/redis_v1beta1/service.rb +93 -110
  689. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  690. data/generated/google/apis/remotebuildexecution_v1/classes.rb +951 -1078
  691. data/generated/google/apis/remotebuildexecution_v1/representations.rb +61 -0
  692. data/generated/google/apis/remotebuildexecution_v1/service.rb +26 -33
  693. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  694. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +946 -1071
  695. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +61 -0
  696. data/generated/google/apis/remotebuildexecution_v1alpha/service.rb +103 -65
  697. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  698. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1099 -1250
  699. data/generated/google/apis/remotebuildexecution_v2/representations.rb +61 -0
  700. data/generated/google/apis/remotebuildexecution_v2/service.rb +147 -206
  701. data/generated/google/apis/run_v1.rb +1 -1
  702. data/generated/google/apis/run_v1/classes.rb +837 -1249
  703. data/generated/google/apis/run_v1/representations.rb +1 -1
  704. data/generated/google/apis/run_v1/service.rb +233 -247
  705. data/generated/google/apis/run_v1alpha1.rb +1 -1
  706. data/generated/google/apis/run_v1alpha1/classes.rb +935 -1332
  707. data/generated/google/apis/run_v1alpha1/representations.rb +1 -1
  708. data/generated/google/apis/run_v1alpha1/service.rb +321 -377
  709. data/generated/google/apis/run_v1beta1.rb +1 -1
  710. data/generated/google/apis/run_v1beta1/classes.rb +210 -276
  711. data/generated/google/apis/run_v1beta1/service.rb +16 -18
  712. data/generated/google/apis/runtimeconfig_v1.rb +1 -1
  713. data/generated/google/apis/runtimeconfig_v1/classes.rb +36 -40
  714. data/generated/google/apis/runtimeconfig_v1/service.rb +19 -22
  715. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  716. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +302 -412
  717. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +1 -0
  718. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +135 -159
  719. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  720. data/generated/google/apis/safebrowsing_v4/classes.rb +55 -64
  721. data/generated/google/apis/safebrowsing_v4/service.rb +4 -4
  722. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  723. data/generated/google/apis/sasportal_v1alpha1/classes.rb +128 -219
  724. data/generated/google/apis/sasportal_v1alpha1/representations.rb +1 -32
  725. data/generated/google/apis/sasportal_v1alpha1/service.rb +38 -526
  726. data/generated/google/apis/script_v1.rb +1 -1
  727. data/generated/google/apis/script_v1/classes.rb +88 -111
  728. data/generated/google/apis/script_v1/service.rb +63 -69
  729. data/generated/google/apis/searchconsole_v1.rb +1 -1
  730. data/generated/google/apis/searchconsole_v1/classes.rb +2 -2
  731. data/generated/google/apis/secretmanager_v1.rb +1 -1
  732. data/generated/google/apis/secretmanager_v1/classes.rb +379 -365
  733. data/generated/google/apis/secretmanager_v1/representations.rb +92 -0
  734. data/generated/google/apis/secretmanager_v1/service.rb +66 -82
  735. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  736. data/generated/google/apis/secretmanager_v1beta1/classes.rb +218 -363
  737. data/generated/google/apis/secretmanager_v1beta1/representations.rb +1 -0
  738. data/generated/google/apis/secretmanager_v1beta1/service.rb +66 -82
  739. data/generated/google/apis/securitycenter_v1.rb +1 -1
  740. data/generated/google/apis/securitycenter_v1/classes.rb +584 -826
  741. data/generated/google/apis/securitycenter_v1/representations.rb +1 -0
  742. data/generated/google/apis/securitycenter_v1/service.rb +250 -332
  743. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  744. data/generated/google/apis/securitycenter_v1beta1/classes.rb +533 -746
  745. data/generated/google/apis/securitycenter_v1beta1/representations.rb +1 -0
  746. data/generated/google/apis/securitycenter_v1beta1/service.rb +160 -202
  747. data/generated/google/apis/{securitycenter_v1p1beta1.rb → securitycenter_v1beta2.rb} +6 -6
  748. data/generated/google/apis/{securitycenter_v1p1alpha1 → securitycenter_v1beta2}/classes.rb +415 -269
  749. data/generated/google/apis/{securitycenter_v1p1alpha1 → securitycenter_v1beta2}/representations.rb +101 -30
  750. data/generated/google/apis/securitycenter_v1beta2/service.rb +1494 -0
  751. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  752. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +1120 -1784
  753. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +114 -141
  754. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  755. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +1107 -1774
  756. data/generated/google/apis/serviceconsumermanagement_v1beta1/service.rb +52 -66
  757. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  758. data/generated/google/apis/servicecontrol_v1/classes.rb +523 -641
  759. data/generated/google/apis/servicecontrol_v1/service.rb +36 -46
  760. data/generated/google/apis/servicecontrol_v2.rb +38 -0
  761. data/generated/google/apis/servicecontrol_v2/classes.rb +1075 -0
  762. data/generated/google/apis/servicecontrol_v2/representations.rb +405 -0
  763. data/generated/google/apis/servicecontrol_v2/service.rb +155 -0
  764. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  765. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +221 -333
  766. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +1 -0
  767. data/generated/google/apis/servicedirectory_v1beta1/service.rb +94 -129
  768. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  769. data/generated/google/apis/servicemanagement_v1/classes.rb +1288 -2090
  770. data/generated/google/apis/servicemanagement_v1/representations.rb +14 -0
  771. data/generated/google/apis/servicemanagement_v1/service.rb +144 -195
  772. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  773. data/generated/google/apis/servicenetworking_v1/classes.rb +1160 -1763
  774. data/generated/google/apis/servicenetworking_v1/representations.rb +52 -1
  775. data/generated/google/apis/servicenetworking_v1/service.rb +210 -114
  776. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  777. data/generated/google/apis/servicenetworking_v1beta/classes.rb +1091 -1684
  778. data/generated/google/apis/servicenetworking_v1beta/representations.rb +38 -0
  779. data/generated/google/apis/servicenetworking_v1beta/service.rb +52 -63
  780. data/generated/google/apis/serviceusage_v1.rb +1 -1
  781. data/generated/google/apis/serviceusage_v1/classes.rb +1144 -1823
  782. data/generated/google/apis/serviceusage_v1/representations.rb +4 -0
  783. data/generated/google/apis/serviceusage_v1/service.rb +67 -80
  784. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  785. data/generated/google/apis/serviceusage_v1beta1/classes.rb +1273 -1986
  786. data/generated/google/apis/serviceusage_v1beta1/representations.rb +8 -0
  787. data/generated/google/apis/serviceusage_v1beta1/service.rb +130 -162
  788. data/generated/google/apis/sheets_v4.rb +1 -1
  789. data/generated/google/apis/sheets_v4/classes.rb +3932 -5007
  790. data/generated/google/apis/sheets_v4/representations.rb +625 -0
  791. data/generated/google/apis/sheets_v4/service.rb +113 -149
  792. data/generated/google/apis/site_verification_v1.rb +1 -1
  793. data/generated/google/apis/slides_v1.rb +1 -1
  794. data/generated/google/apis/slides_v1/classes.rb +841 -1114
  795. data/generated/google/apis/slides_v1/service.rb +23 -30
  796. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  797. data/generated/google/apis/sourcerepo_v1/classes.rb +6 -6
  798. data/generated/google/apis/spanner_v1.rb +1 -1
  799. data/generated/google/apis/spanner_v1/classes.rb +1546 -2156
  800. data/generated/google/apis/spanner_v1/service.rb +443 -618
  801. data/generated/google/apis/speech_v1.rb +1 -1
  802. data/generated/google/apis/speech_v1/classes.rb +174 -220
  803. data/generated/google/apis/speech_v1/service.rb +27 -32
  804. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  805. data/generated/google/apis/speech_v1p1beta1/classes.rb +253 -306
  806. data/generated/google/apis/speech_v1p1beta1/service.rb +27 -32
  807. data/generated/google/apis/speech_v2beta1.rb +1 -1
  808. data/generated/google/apis/speech_v2beta1/classes.rb +66 -76
  809. data/generated/google/apis/speech_v2beta1/service.rb +10 -12
  810. data/generated/google/apis/sql_v1beta4.rb +1 -1
  811. data/generated/google/apis/sql_v1beta4/classes.rb +322 -374
  812. data/generated/google/apis/sql_v1beta4/representations.rb +3 -0
  813. data/generated/google/apis/sql_v1beta4/service.rb +49 -54
  814. data/generated/google/apis/storage_v1.rb +1 -1
  815. data/generated/google/apis/storage_v1/classes.rb +8 -7
  816. data/generated/google/apis/storage_v1/representations.rb +2 -2
  817. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  818. data/generated/google/apis/storagetransfer_v1/classes.rb +263 -343
  819. data/generated/google/apis/storagetransfer_v1/service.rb +43 -40
  820. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  821. data/generated/google/apis/streetviewpublish_v1/classes.rb +106 -148
  822. data/generated/google/apis/streetviewpublish_v1/service.rb +94 -177
  823. data/generated/google/apis/sts_v1.rb +32 -0
  824. data/generated/google/apis/sts_v1/classes.rb +120 -0
  825. data/generated/google/apis/sts_v1/representations.rb +59 -0
  826. data/generated/google/apis/sts_v1/service.rb +90 -0
  827. data/generated/google/apis/sts_v1beta.rb +32 -0
  828. data/generated/google/apis/sts_v1beta/classes.rb +191 -0
  829. data/generated/google/apis/{oauth2_v2 → sts_v1beta}/representations.rb +14 -21
  830. data/generated/google/apis/sts_v1beta/service.rb +92 -0
  831. data/generated/google/apis/tagmanager_v1.rb +2 -3
  832. data/generated/google/apis/tagmanager_v1/classes.rb +225 -288
  833. data/generated/google/apis/tagmanager_v1/service.rb +22 -23
  834. data/generated/google/apis/tagmanager_v2.rb +2 -3
  835. data/generated/google/apis/tagmanager_v2/classes.rb +240 -280
  836. data/generated/google/apis/tagmanager_v2/representations.rb +1 -0
  837. data/generated/google/apis/tagmanager_v2/service.rb +189 -285
  838. data/generated/google/apis/tasks_v1.rb +1 -1
  839. data/generated/google/apis/tasks_v1/classes.rb +20 -21
  840. data/generated/google/apis/tasks_v1/service.rb +16 -17
  841. data/generated/google/apis/testing_v1.rb +1 -1
  842. data/generated/google/apis/testing_v1/classes.rb +374 -376
  843. data/generated/google/apis/testing_v1/representations.rb +34 -0
  844. data/generated/google/apis/testing_v1/service.rb +22 -28
  845. data/generated/google/apis/texttospeech_v1.rb +1 -1
  846. data/generated/google/apis/texttospeech_v1/classes.rb +51 -57
  847. data/generated/google/apis/texttospeech_v1/service.rb +9 -10
  848. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  849. data/generated/google/apis/texttospeech_v1beta1/classes.rb +96 -57
  850. data/generated/google/apis/texttospeech_v1beta1/representations.rb +19 -0
  851. data/generated/google/apis/texttospeech_v1beta1/service.rb +9 -10
  852. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  853. data/generated/google/apis/toolresults_v1beta3/classes.rb +678 -928
  854. data/generated/google/apis/toolresults_v1beta3/representations.rb +2 -0
  855. data/generated/google/apis/toolresults_v1beta3/service.rb +522 -640
  856. data/generated/google/apis/tpu_v1.rb +1 -1
  857. data/generated/google/apis/tpu_v1/classes.rb +122 -78
  858. data/generated/google/apis/tpu_v1/representations.rb +19 -0
  859. data/generated/google/apis/tpu_v1/service.rb +21 -25
  860. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  861. data/generated/google/apis/tpu_v1alpha1/classes.rb +122 -78
  862. data/generated/google/apis/tpu_v1alpha1/representations.rb +19 -0
  863. data/generated/google/apis/tpu_v1alpha1/service.rb +21 -25
  864. data/generated/google/apis/trafficdirector_v2.rb +34 -0
  865. data/generated/google/apis/trafficdirector_v2/classes.rb +1347 -0
  866. data/generated/google/apis/trafficdirector_v2/representations.rb +620 -0
  867. data/generated/google/apis/trafficdirector_v2/service.rb +89 -0
  868. data/generated/google/apis/translate_v3.rb +1 -1
  869. data/generated/google/apis/translate_v3/classes.rb +148 -175
  870. data/generated/google/apis/translate_v3/service.rb +122 -138
  871. data/generated/google/apis/translate_v3beta1.rb +1 -1
  872. data/generated/google/apis/translate_v3beta1/classes.rb +149 -170
  873. data/generated/google/apis/translate_v3beta1/service.rb +122 -138
  874. data/generated/google/apis/vault_v1.rb +1 -1
  875. data/generated/google/apis/vault_v1/classes.rb +80 -103
  876. data/generated/google/apis/vault_v1/service.rb +31 -37
  877. data/generated/google/apis/vectortile_v1.rb +1 -1
  878. data/generated/google/apis/vectortile_v1/classes.rb +185 -267
  879. data/generated/google/apis/vectortile_v1/service.rb +75 -88
  880. data/generated/google/apis/verifiedaccess_v1.rb +1 -1
  881. data/generated/google/apis/verifiedaccess_v1/classes.rb +20 -27
  882. data/generated/google/apis/videointelligence_v1.rb +1 -1
  883. data/generated/google/apis/videointelligence_v1/classes.rb +753 -918
  884. data/generated/google/apis/videointelligence_v1/service.rb +71 -48
  885. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  886. data/generated/google/apis/videointelligence_v1beta2/classes.rb +748 -911
  887. data/generated/google/apis/videointelligence_v1beta2/service.rb +4 -4
  888. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  889. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +748 -911
  890. data/generated/google/apis/videointelligence_v1p1beta1/service.rb +4 -4
  891. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  892. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +748 -911
  893. data/generated/google/apis/videointelligence_v1p2beta1/service.rb +4 -4
  894. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  895. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +754 -920
  896. data/generated/google/apis/videointelligence_v1p3beta1/service.rb +4 -4
  897. data/generated/google/apis/vision_v1.rb +1 -1
  898. data/generated/google/apis/vision_v1/classes.rb +1304 -1870
  899. data/generated/google/apis/vision_v1/service.rb +254 -340
  900. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  901. data/generated/google/apis/vision_v1p1beta1/classes.rb +1246 -1790
  902. data/generated/google/apis/vision_v1p1beta1/service.rb +91 -121
  903. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  904. data/generated/google/apis/vision_v1p2beta1/classes.rb +1246 -1790
  905. data/generated/google/apis/vision_v1p2beta1/service.rb +91 -121
  906. data/generated/google/apis/webfonts_v1.rb +2 -3
  907. data/generated/google/apis/webfonts_v1/classes.rb +1 -2
  908. data/generated/google/apis/webfonts_v1/service.rb +4 -6
  909. data/generated/google/apis/websecurityscanner_v1.rb +1 -1
  910. data/generated/google/apis/websecurityscanner_v1/classes.rb +71 -95
  911. data/generated/google/apis/websecurityscanner_v1/service.rb +46 -65
  912. data/generated/google/apis/websecurityscanner_v1alpha.rb +1 -1
  913. data/generated/google/apis/websecurityscanner_v1alpha/classes.rb +55 -63
  914. data/generated/google/apis/websecurityscanner_v1alpha/service.rb +46 -65
  915. data/generated/google/apis/websecurityscanner_v1beta.rb +1 -1
  916. data/generated/google/apis/websecurityscanner_v1beta/classes.rb +77 -92
  917. data/generated/google/apis/websecurityscanner_v1beta/service.rb +46 -65
  918. data/generated/google/apis/{securitycenter_v1p1alpha1.rb → workflowexecutions_v1beta.rb} +9 -10
  919. data/generated/google/apis/workflowexecutions_v1beta/classes.rb +155 -0
  920. data/generated/google/apis/workflowexecutions_v1beta/representations.rb +88 -0
  921. data/generated/google/apis/{securitycenter_v1p1alpha1 → workflowexecutions_v1beta}/service.rb +73 -73
  922. data/generated/google/apis/workflows_v1beta.rb +34 -0
  923. data/generated/google/apis/workflows_v1beta/classes.rb +406 -0
  924. data/generated/google/apis/workflows_v1beta/representations.rb +173 -0
  925. data/generated/google/apis/workflows_v1beta/service.rb +437 -0
  926. data/generated/google/apis/youtube_analytics_v2.rb +1 -1
  927. data/generated/google/apis/youtube_analytics_v2/classes.rb +77 -104
  928. data/generated/google/apis/youtube_analytics_v2/service.rb +106 -126
  929. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  930. data/generated/google/apis/youtube_partner_v1/classes.rb +637 -761
  931. data/generated/google/apis/youtube_partner_v1/service.rb +521 -661
  932. data/generated/google/apis/youtube_v3.rb +1 -1
  933. data/generated/google/apis/youtube_v3/classes.rb +1290 -1175
  934. data/generated/google/apis/youtube_v3/representations.rb +177 -0
  935. data/generated/google/apis/youtube_v3/service.rb +1159 -1390
  936. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  937. data/generated/google/apis/youtubereporting_v1/classes.rb +20 -29
  938. data/generated/google/apis/youtubereporting_v1/service.rb +40 -43
  939. data/google-api-client.gemspec +2 -1
  940. data/lib/google/apis/core/base_service.rb +7 -1
  941. data/lib/google/apis/version.rb +1 -1
  942. metadata +94 -32
  943. data/generated/google/apis/accessapproval_v1beta1/classes.rb +0 -417
  944. data/generated/google/apis/accessapproval_v1beta1/service.rb +0 -857
  945. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +0 -848
  946. data/generated/google/apis/cloudfunctions_v1beta2/service.rb +0 -486
  947. data/generated/google/apis/dns_v2beta1.rb +0 -43
  948. data/generated/google/apis/dns_v2beta1/classes.rb +0 -1447
  949. data/generated/google/apis/dns_v2beta1/representations.rb +0 -588
  950. data/generated/google/apis/dns_v2beta1/service.rb +0 -928
  951. data/generated/google/apis/oauth2_v2.rb +0 -40
  952. data/generated/google/apis/oauth2_v2/classes.rb +0 -165
  953. data/generated/google/apis/oauth2_v2/service.rb +0 -158
  954. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +0 -2305
  955. data/generated/google/apis/securitycenter_v1p1beta1/representations.rb +0 -789
  956. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +0 -1326
  957. data/generated/google/apis/storage_v1beta2.rb +0 -40
  958. data/generated/google/apis/storage_v1beta2/classes.rb +0 -1047
  959. data/generated/google/apis/storage_v1beta2/representations.rb +0 -425
  960. data/generated/google/apis/storage_v1beta2/service.rb +0 -1667
@@ -49,8 +49,7 @@ module Google
49
49
 
50
50
  # Create a new environment.
51
51
  # @param [String] parent
52
- # The parent must be of the form
53
- # "projects/`projectId`/locations/`locationId`".
52
+ # The parent must be of the form "projects/`projectId`/locations/`locationId`".
54
53
  # @param [Google::Apis::ComposerV1beta1::Environment] environment_object
55
54
  # @param [String] fields
56
55
  # Selector specifying which fields to include in a partial response.
@@ -83,8 +82,8 @@ module Google
83
82
 
84
83
  # Delete an environment.
85
84
  # @param [String] name
86
- # The environment to delete, in the form:
87
- # "projects/`projectId`/locations/`locationId`/environments/`environmentId`"
85
+ # The environment to delete, in the form: "projects/`projectId`/locations/`
86
+ # locationId`/environments/`environmentId`"
88
87
  # @param [String] fields
89
88
  # Selector specifying which fields to include in a partial response.
90
89
  # @param [String] quota_user
@@ -114,8 +113,8 @@ module Google
114
113
 
115
114
  # Get an existing environment.
116
115
  # @param [String] name
117
- # The resource name of the environment to get, in the form:
118
- # "projects/`projectId`/locations/`locationId`/environments/`environmentId`"
116
+ # The resource name of the environment to get, in the form: "projects/`projectId`
117
+ # /locations/`locationId`/environments/`environmentId`"
119
118
  # @param [String] fields
120
119
  # Selector specifying which fields to include in a partial response.
121
120
  # @param [String] quota_user
@@ -145,8 +144,8 @@ module Google
145
144
 
146
145
  # List environments.
147
146
  # @param [String] parent
148
- # List environments in the given project and location, in the form:
149
- # "projects/`projectId`/locations/`locationId`"
147
+ # List environments in the given project and location, in the form: "projects/`
148
+ # projectId`/locations/`locationId`"
150
149
  # @param [Fixnum] page_size
151
150
  # The maximum number of environments to return.
152
151
  # @param [String] page_token
@@ -182,162 +181,78 @@ module Google
182
181
 
183
182
  # Update an environment.
184
183
  # @param [String] name
185
- # The relative resource name of the environment to update, in the form:
186
- # "projects/`projectId`/locations/`locationId`/environments/`environmentId`"
184
+ # The relative resource name of the environment to update, in the form: "
185
+ # projects/`projectId`/locations/`locationId`/environments/`environmentId`"
187
186
  # @param [Google::Apis::ComposerV1beta1::Environment] environment_object
188
187
  # @param [String] update_mask
189
188
  # Required. A comma-separated list of paths, relative to `Environment`, of
190
- # fields to update.
191
- # For example, to set the version of scikit-learn to install in the
192
- # environment to 0.19.0 and to remove an existing installation of
193
- # argparse, the `updateMask` parameter would include the following two
194
- # `paths` values: "config.softwareConfig.pypiPackages.scikit-learn" and
195
- # "config.softwareConfig.pypiPackages.argparse". The included patch
196
- # environment would specify the scikit-learn version as follows:
197
- # `
198
- # "config":`
199
- # "softwareConfig":`
200
- # "pypiPackages":`
201
- # "scikit-learn":"==0.19.0"
202
- # `
203
- # `
204
- # `
205
- # `
206
- # Note that in the above example, any existing PyPI packages
207
- # other than scikit-learn and argparse will be unaffected.
208
- # Only one update type may be included in a single request's `updateMask`.
209
- # For example, one cannot update both the PyPI packages and
210
- # labels in the same request. However, it is possible to update multiple
211
- # members of a map field simultaneously in the same request. For example,
212
- # to set the labels "label1" and "label2" while clearing "label3" (assuming
213
- # it already exists), one can
214
- # provide the paths "labels.label1", "labels.label2", and "labels.label3"
215
- # and populate the patch environment as follows:
216
- # `
217
- # "labels":`
218
- # "label1":"new-label1-value"
219
- # "label2":"new-label2-value"
220
- # `
221
- # `
222
- # Note that in the above example, any existing labels that are not
223
- # included in the `updateMask` will be unaffected.
224
- # It is also possible to replace an entire map field by providing the
225
- # map field's path in the `updateMask`. The new value of the field will
226
- # be that which is provided in the patch environment. For example, to
227
- # delete all pre-existing user-specified PyPI packages and
228
- # install botocore at version 1.7.14, the `updateMask` would contain
229
- # the path "config.softwareConfig.pypiPackages", and
230
- # the patch environment would be the following:
231
- # `
232
- # "config":`
233
- # "softwareConfig":`
234
- # "pypiPackages":`
235
- # "botocore":"==1.7.14"
236
- # `
237
- # `
238
- # `
239
- # `
240
- # <strong>Note:</strong> Only the following fields can be updated:
241
- # <table>
242
- # <tbody>
243
- # <tr>
244
- # <td><strong>Mask</strong></td>
245
- # <td><strong>Purpose</strong></td>
246
- # </tr>
247
- # <tr>
248
- # <td>config.softwareConfig.pypiPackages
249
- # </td>
250
- # <td>Replace all custom custom PyPI packages. If a replacement
251
- # package map is not included in `environment`, all custom
252
- # PyPI packages are cleared. It is an error to provide both this mask and a
253
- # mask specifying an individual package.</td>
254
- # </tr>
255
- # <tr>
256
- # <td>config.softwareConfig.pypiPackages.<var>packagename</var></td>
257
- # <td>Update the custom PyPI package <var>packagename</var>,
258
- # preserving other packages. To delete the package, include it in
259
- # `updateMask`, and omit the mapping for it in
260
- # `environment.config.softwareConfig.pypiPackages`. It is an error
261
- # to provide both a mask of this form and the
262
- # "config.softwareConfig.pypiPackages" mask.</td>
263
- # </tr>
264
- # <tr>
265
- # <td>labels</td>
266
- # <td>Replace all environment labels. If a replacement labels map is not
267
- # included in `environment`, all labels are cleared. It is an error to
268
- # provide both this mask and a mask specifying one or more individual
269
- # labels.</td>
270
- # </tr>
271
- # <tr>
272
- # <td>labels.<var>labelName</var></td>
273
- # <td>Set the label named <var>labelName</var>, while preserving other
274
- # labels. To delete the label, include it in `updateMask` and omit its
275
- # mapping in `environment.labels`. It is an error to provide both a
276
- # mask of this form and the "labels" mask.</td>
277
- # </tr>
278
- # <tr>
279
- # <td>config.nodeCount</td>
280
- # <td>Horizontally scale the number of nodes in the environment. An integer
281
- # greater than or equal to 3 must be provided in the `config.nodeCount`
282
- # field.
283
- # </td>
284
- # </tr>
285
- # <tr>
286
- # <td>config.webServerNetworkAccessControl</td>
287
- # <td>Replace the environment's current WebServerNetworkAccessControl.
288
- # </td>
289
- # </tr>
290
- # <tr>
291
- # <td>config.softwareConfig.airflowConfigOverrides</td>
292
- # <td>Replace all Apache Airflow config overrides. If a replacement config
293
- # overrides map is not included in `environment`, all config overrides
294
- # are cleared.
295
- # It is an error to provide both this mask and a mask specifying one or
296
- # more individual config overrides.</td>
297
- # </tr>
298
- # <tr>
299
- # <td>config.softwareConfig.airflowConfigOverrides.<var>section</var>-<var>name
300
- # </var></td>
301
- # <td>Override the Apache Airflow config property <var>name</var> in the
302
- # section named <var>section</var>, preserving other properties. To delete
303
- # the property override, include it in `updateMask` and omit its mapping
304
- # in `environment.config.softwareConfig.airflowConfigOverrides`.
305
- # It is an error to provide both a mask of this form and the
306
- # "config.softwareConfig.airflowConfigOverrides" mask.</td>
307
- # </tr>
308
- # <tr>
309
- # <td>config.softwareConfig.envVariables</td>
310
- # <td>Replace all environment variables. If a replacement environment
311
- # variable map is not included in `environment`, all custom environment
312
- # variables are cleared.
313
- # It is an error to provide both this mask and a mask specifying one or
314
- # more individual environment variables.</td>
315
- # </tr>
316
- # <tr>
317
- # <td>config.softwareConfig.imageVersion</td>
318
- # <td>Upgrade the version of the environment in-place. Refer to
319
- # `SoftwareConfig.image_version` for information on how to format the new
320
- # image version. Additionally, the new image version cannot effect a version
321
- # downgrade and must match the current image version's Composer major
322
- # version and Airflow major and minor versions. Consult the
323
- # <a href="/composer/docs/concepts/versioning/composer-versions">Cloud
324
- # Composer Version List</a> for valid values.</td>
325
- # </tr>
326
- # <tr>
327
- # <td>config.databaseConfig.machineType</td>
328
- # <td>Cloud SQL machine type used by Airflow database.
329
- # It has to be one of: db-n1-standard-2, db-n1-standard-4, db-n1-standard-8
330
- # or db-n1-standard-16.</td>
331
- # </tr>
332
- # <tr>
333
- # <td>config.webServerConfig.machineType</td>
334
- # <td>Machine type on which Airflow web server is running.
335
- # It has to be one of: composer-n1-webserver-2, composer-n1-webserver-4 or
336
- # composer-n1-webserver-8.
337
- # </td>
338
- # </tr>
339
- # </tbody>
340
- # </table>
189
+ # fields to update. For example, to set the version of scikit-learn to install
190
+ # in the environment to 0.19.0 and to remove an existing installation of
191
+ # argparse, the `updateMask` parameter would include the following two `paths`
192
+ # values: "config.softwareConfig.pypiPackages.scikit-learn" and "config.
193
+ # softwareConfig.pypiPackages.argparse". The included patch environment would
194
+ # specify the scikit-learn version as follows: ` "config":` "softwareConfig":` "
195
+ # pypiPackages":` "scikit-learn":"==0.19.0" ` ` ` ` Note that in the above
196
+ # example, any existing PyPI packages other than scikit-learn and argparse will
197
+ # be unaffected. Only one update type may be included in a single request's `
198
+ # updateMask`. For example, one cannot update both the PyPI packages and labels
199
+ # in the same request. However, it is possible to update multiple members of a
200
+ # map field simultaneously in the same request. For example, to set the labels "
201
+ # label1" and "label2" while clearing "label3" (assuming it already exists), one
202
+ # can provide the paths "labels.label1", "labels.label2", and "labels.label3"
203
+ # and populate the patch environment as follows: ` "labels":` "label1":"new-
204
+ # label1-value" "label2":"new-label2-value" ` ` Note that in the above example,
205
+ # any existing labels that are not included in the `updateMask` will be
206
+ # unaffected. It is also possible to replace an entire map field by providing
207
+ # the map field's path in the `updateMask`. The new value of the field will be
208
+ # that which is provided in the patch environment. For example, to delete all
209
+ # pre-existing user-specified PyPI packages and install botocore at version 1.7.
210
+ # 14, the `updateMask` would contain the path "config.softwareConfig.
211
+ # pypiPackages", and the patch environment would be the following: ` "config":` "
212
+ # softwareConfig":` "pypiPackages":` "botocore":"==1.7.14" ` ` ` ` *Note:* Only
213
+ # the following fields can be updated: *Mask* *Purpose* config.softwareConfig.
214
+ # pypiPackages Replace all custom custom PyPI packages. If a replacement package
215
+ # map is not included in `environment`, all custom PyPI packages are cleared. It
216
+ # is an error to provide both this mask and a mask specifying an individual
217
+ # package. config.softwareConfig.pypiPackages.packagename Update the custom PyPI
218
+ # package packagename, preserving other packages. To delete the package, include
219
+ # it in `updateMask`, and omit the mapping for it in `environment.config.
220
+ # softwareConfig.pypiPackages`. It is an error to provide both a mask of this
221
+ # form and the "config.softwareConfig.pypiPackages" mask. labels Replace all
222
+ # environment labels. If a replacement labels map is not included in `
223
+ # environment`, all labels are cleared. It is an error to provide both this mask
224
+ # and a mask specifying one or more individual labels. labels.labelName Set the
225
+ # label named labelName, while preserving other labels. To delete the label,
226
+ # include it in `updateMask` and omit its mapping in `environment.labels`. It is
227
+ # an error to provide both a mask of this form and the "labels" mask. config.
228
+ # nodeCount Horizontally scale the number of nodes in the environment. An
229
+ # integer greater than or equal to 3 must be provided in the `config.nodeCount`
230
+ # field. config.webServerNetworkAccessControl Replace the environment's current
231
+ # WebServerNetworkAccessControl. config.softwareConfig.airflowConfigOverrides
232
+ # Replace all Apache Airflow config overrides. If a replacement config overrides
233
+ # map is not included in `environment`, all config overrides are cleared. It is
234
+ # an error to provide both this mask and a mask specifying one or more
235
+ # individual config overrides. config.softwareConfig.airflowConfigOverrides.
236
+ # section-name Override the Apache Airflow config property name in the section
237
+ # named section, preserving other properties. To delete the property override,
238
+ # include it in `updateMask` and omit its mapping in `environment.config.
239
+ # softwareConfig.airflowConfigOverrides`. It is an error to provide both a mask
240
+ # of this form and the "config.softwareConfig.airflowConfigOverrides" mask.
241
+ # config.softwareConfig.envVariables Replace all environment variables. If a
242
+ # replacement environment variable map is not included in `environment`, all
243
+ # custom environment variables are cleared. It is an error to provide both this
244
+ # mask and a mask specifying one or more individual environment variables.
245
+ # config.softwareConfig.imageVersion Upgrade the version of the environment in-
246
+ # place. Refer to `SoftwareConfig.image_version` for information on how to
247
+ # format the new image version. Additionally, the new image version cannot
248
+ # effect a version downgrade and must match the current image version's Composer
249
+ # major version and Airflow major and minor versions. Consult the Cloud Composer
250
+ # Version List for valid values. config.databaseConfig.machineType Cloud SQL
251
+ # machine type used by Airflow database. It has to be one of: db-n1-standard-2,
252
+ # db-n1-standard-4, db-n1-standard-8 or db-n1-standard-16. config.
253
+ # webServerConfig.machineType Machine type on which Airflow web server is
254
+ # running. It has to be one of: composer-n1-webserver-2, composer-n1-webserver-4
255
+ # or composer-n1-webserver-8.
341
256
  # @param [String] fields
342
257
  # Selector specifying which fields to include in a partial response.
343
258
  # @param [String] quota_user
@@ -370,8 +285,8 @@ module Google
370
285
 
371
286
  # List ImageVersions for provided location.
372
287
  # @param [String] parent
373
- # List ImageVersions in the given project and location, in the form:
374
- # "projects/`projectId`/locations/`locationId`"
288
+ # List ImageVersions in the given project and location, in the form: "projects/`
289
+ # projectId`/locations/`locationId`"
375
290
  # @param [Fixnum] page_size
376
291
  # The maximum number of image_versions to return.
377
292
  # @param [String] page_token
@@ -405,10 +320,10 @@ module Google
405
320
  execute_or_queue_command(command, &block)
406
321
  end
407
322
 
408
- # Deletes a long-running operation. This method indicates that the client is
409
- # no longer interested in the operation result. It does not cancel the
410
- # operation. If the server doesn't support this method, it returns
411
- # `google.rpc.Code.UNIMPLEMENTED`.
323
+ # Deletes a long-running operation. This method indicates that the client is no
324
+ # longer interested in the operation result. It does not cancel the operation.
325
+ # If the server doesn't support this method, it returns `google.rpc.Code.
326
+ # UNIMPLEMENTED`.
412
327
  # @param [String] name
413
328
  # The name of the operation resource to be deleted.
414
329
  # @param [String] fields
@@ -438,9 +353,8 @@ module Google
438
353
  execute_or_queue_command(command, &block)
439
354
  end
440
355
 
441
- # Gets the latest state of a long-running operation. Clients can use this
442
- # method to poll the operation result at intervals as recommended by the API
443
- # service.
356
+ # Gets the latest state of a long-running operation. Clients can use this method
357
+ # to poll the operation result at intervals as recommended by the API service.
444
358
  # @param [String] name
445
359
  # The name of the operation resource.
446
360
  # @param [String] fields
@@ -470,15 +384,14 @@ module Google
470
384
  execute_or_queue_command(command, &block)
471
385
  end
472
386
 
473
- # Lists operations that match the specified filter in the request. If the
474
- # server doesn't support this method, it returns `UNIMPLEMENTED`.
475
- # NOTE: the `name` binding allows API services to override the binding
476
- # to use different resource name schemes, such as `users/*/operations`. To
477
- # override the binding, API services can add a binding such as
478
- # `"/v1/`name=users/*`/operations"` to their service configuration.
479
- # For backwards compatibility, the default name includes the operations
480
- # collection id, however overriding users must ensure the name binding
481
- # is the parent resource, without the operations collection id.
387
+ # Lists operations that match the specified filter in the request. If the server
388
+ # doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name`
389
+ # binding allows API services to override the binding to use different resource
390
+ # name schemes, such as `users/*/operations`. To override the binding, API
391
+ # services can add a binding such as `"/v1/`name=users/*`/operations"` to their
392
+ # service configuration. For backwards compatibility, the default name includes
393
+ # the operations collection id, however overriding users must ensure the name
394
+ # binding is the parent resource, without the operations collection id.
482
395
  # @param [String] name
483
396
  # The name of the operation's parent resource.
484
397
  # @param [String] filter
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeAlpha
27
27
  VERSION = 'Alpha'
28
- REVISION = '20200612'
28
+ REVISION = '20200811'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -1072,6 +1072,38 @@ module Google
1072
1072
  end
1073
1073
  end
1074
1074
 
1075
+ # Specifies options for controlling advanced machine features. Options that
1076
+ # would traditionally be configured in a BIOS belong here. Features that require
1077
+ # operating system support may have corresponding entries in the GuestOsFeatures
1078
+ # of an Image (e.g., whether or not the OS in the Image supports nested
1079
+ # virtualization being enabled or disabled).
1080
+ class AdvancedMachineFeatures
1081
+ include Google::Apis::Core::Hashable
1082
+
1083
+ # Whether to enable nested virtualization or not (default is false).
1084
+ # Corresponds to the JSON property `enableNestedVirtualization`
1085
+ # @return [Boolean]
1086
+ attr_accessor :enable_nested_virtualization
1087
+ alias_method :enable_nested_virtualization?, :enable_nested_virtualization
1088
+
1089
+ # The number of threads per physical core. To disable simultaneous
1090
+ # multithreading (SMT) set this to 1. If unset, the maximum number of threads
1091
+ # supported per core by the underlying processor is assumed.
1092
+ # Corresponds to the JSON property `threadsPerCore`
1093
+ # @return [Fixnum]
1094
+ attr_accessor :threads_per_core
1095
+
1096
+ def initialize(**args)
1097
+ update!(**args)
1098
+ end
1099
+
1100
+ # Update properties of this object
1101
+ def update!(**args)
1102
+ @enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization)
1103
+ @threads_per_core = args[:threads_per_core] if args.key?(:threads_per_core)
1104
+ end
1105
+ end
1106
+
1075
1107
  # An alias IP range attached to an instance's network interface.
1076
1108
  class AliasIpRange
1077
1109
  include Google::Apis::Core::Hashable
@@ -1150,18 +1182,6 @@ module Google
1150
1182
  # @return [String]
1151
1183
  attr_accessor :location_hint
1152
1184
 
1153
- # DEPRECATED, please use maintenance_freeze_duration_hours. TODO(b/154158138):
1154
- # Remove this field. Compute Engine Long Term Release. When specified, VMs that
1155
- # have this policy become long term release (internal: stable fleet) VMs.
1156
- # For all VM shapes, this should result in fewer disruptions due to software
1157
- # updates and greater predictability via 1 week extended notifications.
1158
- # For GPU VMs, this should also result in an 2 week uptime guarantee. See go/
1159
- # stable-fleet-gpus-design for more details.
1160
- # Corresponds to the JSON property `longTermRelease`
1161
- # @return [Boolean]
1162
- attr_accessor :long_term_release
1163
- alias_method :long_term_release?, :long_term_release
1164
-
1165
1185
  # Specifies type of machine (name only) which has fixed number of vCPUs and
1166
1186
  # fixed amount of memory. This also includes specifying custom machine type
1167
1187
  # following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
@@ -1196,7 +1216,6 @@ module Google
1196
1216
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
1197
1217
  @local_ssds = args[:local_ssds] if args.key?(:local_ssds)
1198
1218
  @location_hint = args[:location_hint] if args.key?(:location_hint)
1199
- @long_term_release = args[:long_term_release] if args.key?(:long_term_release)
1200
1219
  @machine_type = args[:machine_type] if args.key?(:machine_type)
1201
1220
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
1202
1221
  @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
@@ -1264,7 +1283,20 @@ module Google
1264
1283
  # @return [String]
1265
1284
  attr_accessor :device_name
1266
1285
 
1267
- # Represents a customer-supplied encryption key
1286
+ # Encrypts or decrypts a disk using a customer-supplied encryption key.
1287
+ # If you are creating a new disk, this field encrypts the new disk using an
1288
+ # encryption key that you provide. If you are attaching an existing disk that is
1289
+ # already encrypted, this field decrypts the disk using the customer-supplied
1290
+ # encryption key.
1291
+ # If you encrypt a disk using a customer-supplied key, you must provide the same
1292
+ # key again when you attempt to use this resource at a later time. For example,
1293
+ # you must provide the key when you create a snapshot or an image from the disk
1294
+ # or when you attach the disk to a virtual machine instance.
1295
+ # If you do not provide an encryption key, then the disk will be encrypted using
1296
+ # an automatically generated key and you do not need to provide a key to use the
1297
+ # disk later.
1298
+ # Instance templates do not store customer-supplied encryption keys, so you
1299
+ # cannot use your own keys to encrypt disks in a managed instance group.
1268
1300
  # Corresponds to the JSON property `diskEncryptionKey`
1269
1301
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
1270
1302
  attr_accessor :disk_encryption_key
@@ -1453,6 +1485,11 @@ module Google
1453
1485
  # @return [String]
1454
1486
  attr_accessor :on_update_action
1455
1487
 
1488
+ # Indicates how many IOPS must be provisioned for the disk.
1489
+ # Corresponds to the JSON property `provisionedIops`
1490
+ # @return [Fixnum]
1491
+ attr_accessor :provisioned_iops
1492
+
1456
1493
  # URLs of the zones where the disk should be replicated to. Only applicable for
1457
1494
  # regional resources.
1458
1495
  # Corresponds to the JSON property `replicaZones`
@@ -1487,7 +1524,11 @@ module Google
1487
1524
  # @return [String]
1488
1525
  attr_accessor :source_image
1489
1526
 
1490
- # Represents a customer-supplied encryption key
1527
+ # The customer-supplied encryption key of the source image. Required if the
1528
+ # source image is protected by a customer-supplied encryption key.
1529
+ # Instance templates do not store customer-supplied encryption keys, so you
1530
+ # cannot create disks for instances in a managed instance group if the source
1531
+ # images are encrypted with your own keys.
1491
1532
  # Corresponds to the JSON property `sourceImageEncryptionKey`
1492
1533
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
1493
1534
  attr_accessor :source_image_encryption_key
@@ -1503,7 +1544,7 @@ module Google
1503
1544
  # @return [String]
1504
1545
  attr_accessor :source_snapshot
1505
1546
 
1506
- # Represents a customer-supplied encryption key
1547
+ # The customer-supplied encryption key of the source snapshot.
1507
1548
  # Corresponds to the JSON property `sourceSnapshotEncryptionKey`
1508
1549
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
1509
1550
  attr_accessor :source_snapshot_encryption_key
@@ -1522,6 +1563,7 @@ module Google
1522
1563
  @labels = args[:labels] if args.key?(:labels)
1523
1564
  @multi_writer = args[:multi_writer] if args.key?(:multi_writer)
1524
1565
  @on_update_action = args[:on_update_action] if args.key?(:on_update_action)
1566
+ @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
1525
1567
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
1526
1568
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
1527
1569
  @source_image = args[:source_image] if args.key?(:source_image)
@@ -1775,6 +1817,11 @@ module Google
1775
1817
  # @return [String]
1776
1818
  attr_accessor :region
1777
1819
 
1820
+ # [Output Only] Status information of existing scaling schedules.
1821
+ # Corresponds to the JSON property `scalingScheduleStatus`
1822
+ # @return [Hash<String,Google::Apis::ComputeAlpha::ScalingScheduleStatus>]
1823
+ attr_accessor :scaling_schedule_status
1824
+
1778
1825
  # [Output Only] Server-defined URL for the resource.
1779
1826
  # Corresponds to the JSON property `selfLink`
1780
1827
  # @return [String]
@@ -1829,6 +1876,7 @@ module Google
1829
1876
  @name = args[:name] if args.key?(:name)
1830
1877
  @recommended_size = args[:recommended_size] if args.key?(:recommended_size)
1831
1878
  @region = args[:region] if args.key?(:region)
1879
+ @scaling_schedule_status = args[:scaling_schedule_status] if args.key?(:scaling_schedule_status)
1832
1880
  @self_link = args[:self_link] if args.key?(:self_link)
1833
1881
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
1834
1882
  @status = args[:status] if args.key?(:status)
@@ -2298,6 +2346,14 @@ module Google
2298
2346
  # @return [Google::Apis::ComputeAlpha::AutoscalingPolicyScaleInControl]
2299
2347
  attr_accessor :scale_in_control
2300
2348
 
2349
+ # Scaling schedules defined for an autoscaler. Multiple schedules can be set on
2350
+ # an autoscaler and they can overlap. During overlapping periods the greatest
2351
+ # min_required_replicas of all scaling schedules will be applied. Up to 128
2352
+ # scaling schedules are allowed.
2353
+ # Corresponds to the JSON property `scalingSchedules`
2354
+ # @return [Hash<String,Google::Apis::ComputeAlpha::AutoscalingPolicyScalingSchedule>]
2355
+ attr_accessor :scaling_schedules
2356
+
2301
2357
  def initialize(**args)
2302
2358
  update!(**args)
2303
2359
  end
@@ -2313,6 +2369,7 @@ module Google
2313
2369
  @mode = args[:mode] if args.key?(:mode)
2314
2370
  @scale_down_control = args[:scale_down_control] if args.key?(:scale_down_control)
2315
2371
  @scale_in_control = args[:scale_in_control] if args.key?(:scale_in_control)
2372
+ @scaling_schedules = args[:scaling_schedules] if args.key?(:scaling_schedules)
2316
2373
  end
2317
2374
  end
2318
2375
 
@@ -2518,6 +2575,71 @@ module Google
2518
2575
  end
2519
2576
  end
2520
2577
 
2578
+ # Scaling based on user-defined schedule. The message describes a single scaling
2579
+ # schedule. A scaling schedule changes the minimum number of VM instances an
2580
+ # autoscaler can recommend, which can trigger scaling out.
2581
+ class AutoscalingPolicyScalingSchedule
2582
+ include Google::Apis::Core::Hashable
2583
+
2584
+ # A description of a scaling schedule.
2585
+ # Corresponds to the JSON property `description`
2586
+ # @return [String]
2587
+ attr_accessor :description
2588
+
2589
+ # A boolean value that specifies if a scaling schedule can influence autoscaler
2590
+ # recommendations. If set to true, then a scaling schedule has no effect. This
2591
+ # field is optional and its value is false by default.
2592
+ # Corresponds to the JSON property `disabled`
2593
+ # @return [Boolean]
2594
+ attr_accessor :disabled
2595
+ alias_method :disabled?, :disabled
2596
+
2597
+ # The duration of time intervals (in seconds) for which this scaling schedule
2598
+ # will be running. The minimum allowed value is 300. This field is required.
2599
+ # Corresponds to the JSON property `durationSec`
2600
+ # @return [Fixnum]
2601
+ attr_accessor :duration_sec
2602
+
2603
+ # Minimum number of VM instances that autoscaler will recommend in time
2604
+ # intervals starting according to schedule. This field is required.
2605
+ # Corresponds to the JSON property `minRequiredReplicas`
2606
+ # @return [Fixnum]
2607
+ attr_accessor :min_required_replicas
2608
+
2609
+ # The start timestamps of time intervals when this scaling schedule should
2610
+ # provide a scaling signal. This field uses the extended cron format (with an
2611
+ # optional year field). The expression may describe a single timestamp if the
2612
+ # optional year is set, in which case a scaling schedule will run once. schedule
2613
+ # is interpreted with respect to time_zone. This field is required. NOTE: these
2614
+ # timestamps only describe when autoscaler will start providing the scaling
2615
+ # signal. The VMs will need additional time to become serving.
2616
+ # Corresponds to the JSON property `schedule`
2617
+ # @return [String]
2618
+ attr_accessor :schedule
2619
+
2620
+ # The time zone to be used when interpreting the schedule. The value of this
2621
+ # field must be a time zone name from the tz database: http://en.wikipedia.org/
2622
+ # wiki/Tz_database. This field will be assigned a default value of ?UTC? if left
2623
+ # empty.
2624
+ # Corresponds to the JSON property `timeZone`
2625
+ # @return [String]
2626
+ attr_accessor :time_zone
2627
+
2628
+ def initialize(**args)
2629
+ update!(**args)
2630
+ end
2631
+
2632
+ # Update properties of this object
2633
+ def update!(**args)
2634
+ @description = args[:description] if args.key?(:description)
2635
+ @disabled = args[:disabled] if args.key?(:disabled)
2636
+ @duration_sec = args[:duration_sec] if args.key?(:duration_sec)
2637
+ @min_required_replicas = args[:min_required_replicas] if args.key?(:min_required_replicas)
2638
+ @schedule = args[:schedule] if args.key?(:schedule)
2639
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
2640
+ end
2641
+ end
2642
+
2521
2643
  # Message containing information of one individual backend.
2522
2644
  class Backend
2523
2645
  include Google::Apis::Core::Hashable
@@ -2727,6 +2849,11 @@ module Google
2727
2849
  # @return [String]
2728
2850
  attr_accessor :creation_timestamp
2729
2851
 
2852
+ # Headers that the HTTP/S load balancer should add to proxied responses.
2853
+ # Corresponds to the JSON property `customResponseHeaders`
2854
+ # @return [Array<String>]
2855
+ attr_accessor :custom_response_headers
2856
+
2730
2857
  # An optional textual description of the resource; provided by the client when
2731
2858
  # the resource is created.
2732
2859
  # Corresponds to the JSON property `description`
@@ -2778,6 +2905,7 @@ module Google
2778
2905
  @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
2779
2906
  @cdn_policy = args[:cdn_policy] if args.key?(:cdn_policy)
2780
2907
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
2908
+ @custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
2781
2909
  @description = args[:description] if args.key?(:description)
2782
2910
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
2783
2911
  @id = args[:id] if args.key?(:id)
@@ -2792,6 +2920,92 @@ module Google
2792
2920
  class BackendBucketCdnPolicy
2793
2921
  include Google::Apis::Core::Hashable
2794
2922
 
2923
+ # Bypass the cache when the specified request headers are matched - e.g. Pragma
2924
+ # or Authorization headers. Up to 5 headers can be specified. The cache is
2925
+ # bypassed for all cdnPolicy.cacheMode settings.
2926
+ # Corresponds to the JSON property `bypassCacheOnRequestHeaders`
2927
+ # @return [Array<Google::Apis::ComputeAlpha::BackendBucketCdnPolicyBypassCacheOnRequestHeader>]
2928
+ attr_accessor :bypass_cache_on_request_headers
2929
+
2930
+ #
2931
+ # Corresponds to the JSON property `cacheMode`
2932
+ # @return [String]
2933
+ attr_accessor :cache_mode
2934
+
2935
+ # Specifies a separate client (e.g. browser client) TTL, separate from the TTL
2936
+ # for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL
2937
+ # for both Cloud CDN and the client-facing response. The maximum allowed value
2938
+ # is 86400s (1 day).
2939
+ # Corresponds to the JSON property `clientTtl`
2940
+ # @return [Fixnum]
2941
+ attr_accessor :client_ttl
2942
+
2943
+ # Specifies the default TTL for cached content served by this origin for
2944
+ # responses that do not have an existing valid TTL (max-age or s-max-age).
2945
+ # Setting a TTL of "0" means "always revalidate" and a value of "-1" disables
2946
+ # caching for that status code. The value of defaultTTL cannot be set to a value
2947
+ # greater than that of maxTTL, but can be equal. When the cacheMode is set to
2948
+ # FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses.
2949
+ # The maximum allowed value is 31,622,400s (1 year), noting that infrequently
2950
+ # accessed objects may be evicted from the cache before the defined TTL.
2951
+ # Corresponds to the JSON property `defaultTtl`
2952
+ # @return [Fixnum]
2953
+ attr_accessor :default_ttl
2954
+
2955
+ # Specifies the maximum allowed TTL for cached content served by this origin.
2956
+ # Cache directives that attempt to set a max-age or s-maxage higher than this,
2957
+ # or an Expires header more than maxTTL seconds in the future will be capped at
2958
+ # the value of maxTTL, as if it were the value of an s-maxage Cache-Control
2959
+ # directive. Setting a TTL of "0" means "always revalidate" and a value of "-1"
2960
+ # disables caching for that status code. The maximum allowed value is 31,622,
2961
+ # 400s (1 year), noting that infrequently accessed objects may be evicted from
2962
+ # the cache before the defined TTL.
2963
+ # Corresponds to the JSON property `maxTtl`
2964
+ # @return [Fixnum]
2965
+ attr_accessor :max_ttl
2966
+
2967
+ # Negative caching allows per-status code TTLs to be set, in order to apply fine-
2968
+ # grained caching for common errors or redirects. This can reduce the load on
2969
+ # your origin and improve end-user experience by reducing response latency. By
2970
+ # default, Cloud CDN will apply the following default TTLs to these status codes:
2971
+ # HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not
2972
+ # Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method
2973
+ # Not Found), 414 (URI Too Long), 501 (Not Implemented): 60s These defaults can
2974
+ # be overridden in negative_caching_policy
2975
+ # Corresponds to the JSON property `negativeCaching`
2976
+ # @return [Boolean]
2977
+ attr_accessor :negative_caching
2978
+ alias_method :negative_caching?, :negative_caching
2979
+
2980
+ # Sets a cache TTL for the specified HTTP status code. negative_caching must be
2981
+ # enabled to configure negative_caching_policy. Omitting the policy and leaving
2982
+ # negative_caching enabled will use Cloud CDN's default cache TTLs. Note that
2983
+ # when specifying an explicit negative_caching_policy, you should take care to
2984
+ # specify a cache TTL for all response codes that you wish to cache. Cloud CDN
2985
+ # will not apply any default negative caching when a policy exists.
2986
+ # Corresponds to the JSON property `negativeCachingPolicy`
2987
+ # @return [Array<Google::Apis::ComputeAlpha::BackendBucketCdnPolicyNegativeCachingPolicy>]
2988
+ attr_accessor :negative_caching_policy
2989
+
2990
+ # If true then Cloud CDN will combine multiple concurrent cache fill requests
2991
+ # into a small number of requests to the origin.
2992
+ # Corresponds to the JSON property `requestCoalescing`
2993
+ # @return [Boolean]
2994
+ attr_accessor :request_coalescing
2995
+ alias_method :request_coalescing?, :request_coalescing
2996
+
2997
+ # Serve existing content from the cache (if available) when revalidating content
2998
+ # with the origin, or when an error is encountered when refreshing the cache.
2999
+ # This setting defines the default "max-stale" duration for any cached responses
3000
+ # that do not specify a max-stale directive. Stale responses that exceed the TTL
3001
+ # configured here will not be served. The default limit (max-stale) is 86400s (1
3002
+ # day), which will allow stale content to be served up to this limit beyond the
3003
+ # max-age (or s-max-age) of a cached response. The maximum allowed value is
3004
+ # 604800(1 week). Set this to zero (0) to disable serve-while-stale.
3005
+ # Corresponds to the JSON property `serveWhileStale`
3006
+ # @return [Fixnum]
3007
+ attr_accessor :serve_while_stale
3008
+
2795
3009
  # Maximum number of seconds the response to a signed URL request will be
2796
3010
  # considered fresh. After this time period, the response will be revalidated
2797
3011
  # before being served. Defaults to 1hr (3600s). When serving responses to signed
@@ -2814,11 +3028,73 @@ module Google
2814
3028
 
2815
3029
  # Update properties of this object
2816
3030
  def update!(**args)
3031
+ @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
3032
+ @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
3033
+ @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
3034
+ @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
3035
+ @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
3036
+ @negative_caching = args[:negative_caching] if args.key?(:negative_caching)
3037
+ @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy)
3038
+ @request_coalescing = args[:request_coalescing] if args.key?(:request_coalescing)
3039
+ @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale)
2817
3040
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
2818
3041
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
2819
3042
  end
2820
3043
  end
2821
3044
 
3045
+ # Bypass the cache when the specified request headers are present, e.g. Pragma
3046
+ # or Authorization headers. Values are case insensitive. The presence of such a
3047
+ # header overrides the cache_mode setting.
3048
+ class BackendBucketCdnPolicyBypassCacheOnRequestHeader
3049
+ include Google::Apis::Core::Hashable
3050
+
3051
+ # The header field name to match on when bypassing cache. Values are case-
3052
+ # insensitive.
3053
+ # Corresponds to the JSON property `headerName`
3054
+ # @return [String]
3055
+ attr_accessor :header_name
3056
+
3057
+ def initialize(**args)
3058
+ update!(**args)
3059
+ end
3060
+
3061
+ # Update properties of this object
3062
+ def update!(**args)
3063
+ @header_name = args[:header_name] if args.key?(:header_name)
3064
+ end
3065
+ end
3066
+
3067
+ # Specify CDN TTLs for response error codes.
3068
+ class BackendBucketCdnPolicyNegativeCachingPolicy
3069
+ include Google::Apis::Core::Hashable
3070
+
3071
+ # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
3072
+ # 308, 404, 405, 410, 414, 451 and 501 are can be specified as values, and you
3073
+ # cannot specify a status code more than once.
3074
+ # Corresponds to the JSON property `code`
3075
+ # @return [Fixnum]
3076
+ attr_accessor :code
3077
+
3078
+ # The TTL (in seconds) to cache responses with the corresponding status code for.
3079
+ # A TTL of "0" means "always revalidate" and a value of "-1" disables caching
3080
+ # for that status code. The maximum allowed value is 1800s (30 minutes), noting
3081
+ # that infrequently accessed objects may be evicted from the cache before the
3082
+ # defined TTL.
3083
+ # Corresponds to the JSON property `ttl`
3084
+ # @return [Fixnum]
3085
+ attr_accessor :ttl
3086
+
3087
+ def initialize(**args)
3088
+ update!(**args)
3089
+ end
3090
+
3091
+ # Update properties of this object
3092
+ def update!(**args)
3093
+ @code = args[:code] if args.key?(:code)
3094
+ @ttl = args[:ttl] if args.key?(:ttl)
3095
+ end
3096
+ end
3097
+
2822
3098
  # Contains a list of BackendBucket resources.
2823
3099
  class BackendBucketList
2824
3100
  include Google::Apis::Core::Hashable
@@ -2954,6 +3230,8 @@ module Google
2954
3230
 
2955
3231
  # If set to 0, the cookie is non-persistent and lasts only until the end of the
2956
3232
  # browser session (or equivalent). The maximum allowed value is one day (86,400).
3233
+ # Not supported when the backend service is referenced by a URL map that is
3234
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
2957
3235
  # Corresponds to the JSON property `affinityCookieTtlSec`
2958
3236
  # @return [Fixnum]
2959
3237
  attr_accessor :affinity_cookie_ttl_sec
@@ -2993,6 +3271,11 @@ module Google
2993
3271
  # @return [Array<String>]
2994
3272
  attr_accessor :custom_request_headers
2995
3273
 
3274
+ # Headers that the HTTP/S load balancer should add to proxied responses.
3275
+ # Corresponds to the JSON property `customResponseHeaders`
3276
+ # @return [Array<String>]
3277
+ attr_accessor :custom_response_headers
3278
+
2996
3279
  # An optional description of this resource. Provide this property when you
2997
3280
  # create the resource.
2998
3281
  # Corresponds to the JSON property `description`
@@ -3032,10 +3315,10 @@ module Google
3032
3315
  # The list of URLs to the healthChecks, httpHealthChecks (legacy), or
3033
3316
  # httpsHealthChecks (legacy) resource for health checking this backend service.
3034
3317
  # Not all backend services support legacy health checks. See Load balancer
3035
- # guide. Currently at most one health check can be specified. Backend services
3036
- # with instance group or zonal NEG backends must have a health check. Backend
3037
- # services with internet NEG backends must not have a health check. A health
3038
- # check must
3318
+ # guide. Currently, at most one health check can be specified for each backend
3319
+ # service. Backend services with instance group or zonal NEG backends must have
3320
+ # a health check. Backend services with internet or serverless NEG backends must
3321
+ # not have a health check.
3039
3322
  # Corresponds to the JSON property `healthChecks`
3040
3323
  # @return [Array<String>]
3041
3324
  attr_accessor :health_checks
@@ -3090,8 +3373,11 @@ module Google
3090
3373
  # HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED.
3091
3374
  # - A global backend service with the load_balancing_scheme set to
3092
3375
  # INTERNAL_SELF_MANAGED.
3093
- # If sessionAffinity is not NONE, and this field is not set to >MAGLEV or
3376
+ # If sessionAffinity is not NONE, and this field is not set to MAGLEV or
3094
3377
  # RING_HASH, session affinity settings will not take effect.
3378
+ # Only the default ROUND_ROBIN policy is supported when the backend service is
3379
+ # referenced by a URL map that is bound to target gRPC proxy that has
3380
+ # validateForProxyless field set to true.
3095
3381
  # Corresponds to the JSON property `localityLbPolicy`
3096
3382
  # @return [String]
3097
3383
  attr_accessor :locality_lb_policy
@@ -3144,10 +3430,12 @@ module Google
3144
3430
  attr_accessor :port_name
3145
3431
 
3146
3432
  # The protocol this BackendService uses to communicate with backends.
3147
- # Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, or UDP. depending on the
3148
- # chosen load balancer or Traffic Director configuration. Refer to the
3433
+ # Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on
3434
+ # the chosen load balancer or Traffic Director configuration. Refer to the
3149
3435
  # documentation for the load balancer or for Traffic Director for more
3150
3436
  # information.
3437
+ # Must be set to GRPC when the backend service is referenced by a URL map that
3438
+ # is bound to target gRPC proxy.
3151
3439
  # Corresponds to the JSON property `protocol`
3152
3440
  # @return [String]
3153
3441
  attr_accessor :protocol
@@ -3191,6 +3479,8 @@ module Google
3191
3479
  # When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED,
3192
3480
  # possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or
3193
3481
  # HTTP_COOKIE.
3482
+ # Not supported when the backend service is referenced by a URL map that is
3483
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
3194
3484
  # Corresponds to the JSON property `sessionAffinity`
3195
3485
  # @return [String]
3196
3486
  attr_accessor :session_affinity
@@ -3216,6 +3506,7 @@ module Google
3216
3506
  @consistent_hash = args[:consistent_hash] if args.key?(:consistent_hash)
3217
3507
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
3218
3508
  @custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers)
3509
+ @custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
3219
3510
  @description = args[:description] if args.key?(:description)
3220
3511
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
3221
3512
  @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
@@ -3370,12 +3661,98 @@ module Google
3370
3661
  class BackendServiceCdnPolicy
3371
3662
  include Google::Apis::Core::Hashable
3372
3663
 
3664
+ # Bypass the cache when the specified request headers are matched - e.g. Pragma
3665
+ # or Authorization headers. Up to 5 headers can be specified. The cache is
3666
+ # bypassed for all cdnPolicy.cacheMode settings.
3667
+ # Corresponds to the JSON property `bypassCacheOnRequestHeaders`
3668
+ # @return [Array<Google::Apis::ComputeAlpha::BackendServiceCdnPolicyBypassCacheOnRequestHeader>]
3669
+ attr_accessor :bypass_cache_on_request_headers
3670
+
3373
3671
  # Message containing what to include in the cache key for a request for Cloud
3374
3672
  # CDN.
3375
3673
  # Corresponds to the JSON property `cacheKeyPolicy`
3376
3674
  # @return [Google::Apis::ComputeAlpha::CacheKeyPolicy]
3377
3675
  attr_accessor :cache_key_policy
3378
3676
 
3677
+ #
3678
+ # Corresponds to the JSON property `cacheMode`
3679
+ # @return [String]
3680
+ attr_accessor :cache_mode
3681
+
3682
+ # Specifies a separate client (e.g. browser client) TTL, separate from the TTL
3683
+ # for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL
3684
+ # for both Cloud CDN and the client-facing response. The maximum allowed value
3685
+ # is 86400s (1 day).
3686
+ # Corresponds to the JSON property `clientTtl`
3687
+ # @return [Fixnum]
3688
+ attr_accessor :client_ttl
3689
+
3690
+ # Specifies the default TTL for cached content served by this origin for
3691
+ # responses that do not have an existing valid TTL (max-age or s-max-age).
3692
+ # Setting a TTL of "0" means "always revalidate" and a value of "-1" disables
3693
+ # caching for that status code. The value of defaultTTL cannot be set to a value
3694
+ # greater than that of maxTTL, but can be equal. When the cacheMode is set to
3695
+ # FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses.
3696
+ # The maximum allowed value is 31,622,400s (1 year), noting that infrequently
3697
+ # accessed objects may be evicted from the cache before the defined TTL.
3698
+ # Corresponds to the JSON property `defaultTtl`
3699
+ # @return [Fixnum]
3700
+ attr_accessor :default_ttl
3701
+
3702
+ # Specifies the maximum allowed TTL for cached content served by this origin.
3703
+ # Cache directives that attempt to set a max-age or s-maxage higher than this,
3704
+ # or an Expires header more than maxTTL seconds in the future will be capped at
3705
+ # the value of maxTTL, as if it were the value of an s-maxage Cache-Control
3706
+ # directive. Setting a TTL of "0" means "always revalidate" and a value of "-1"
3707
+ # disables caching for that status code. The maximum allowed value is 31,622,
3708
+ # 400s (1 year), noting that infrequently accessed objects may be evicted from
3709
+ # the cache before the defined TTL.
3710
+ # Corresponds to the JSON property `maxTtl`
3711
+ # @return [Fixnum]
3712
+ attr_accessor :max_ttl
3713
+
3714
+ # Negative caching allows per-status code TTLs to be set, in order to apply fine-
3715
+ # grained caching for common errors or redirects. This can reduce the load on
3716
+ # your origin and improve end-user experience by reducing response latency. By
3717
+ # default, Cloud CDN will apply the following default TTLs to these status codes:
3718
+ # HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not
3719
+ # Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method
3720
+ # Not Found), 414 (URI Too Long), 501 (Not Implemented): 60s These defaults can
3721
+ # be overridden in negative_caching_policy
3722
+ # Corresponds to the JSON property `negativeCaching`
3723
+ # @return [Boolean]
3724
+ attr_accessor :negative_caching
3725
+ alias_method :negative_caching?, :negative_caching
3726
+
3727
+ # Sets a cache TTL for the specified HTTP status code. negative_caching must be
3728
+ # enabled to configure negative_caching_policy. Omitting the policy and leaving
3729
+ # negative_caching enabled will use Cloud CDN's default cache TTLs. Note that
3730
+ # when specifying an explicit negative_caching_policy, you should take care to
3731
+ # specify a cache TTL for all response codes that you wish to cache. Cloud CDN
3732
+ # will not apply any default negative caching when a policy exists.
3733
+ # Corresponds to the JSON property `negativeCachingPolicy`
3734
+ # @return [Array<Google::Apis::ComputeAlpha::BackendServiceCdnPolicyNegativeCachingPolicy>]
3735
+ attr_accessor :negative_caching_policy
3736
+
3737
+ # If true then Cloud CDN will combine multiple concurrent cache fill requests
3738
+ # into a small number of requests to the origin.
3739
+ # Corresponds to the JSON property `requestCoalescing`
3740
+ # @return [Boolean]
3741
+ attr_accessor :request_coalescing
3742
+ alias_method :request_coalescing?, :request_coalescing
3743
+
3744
+ # Serve existing content from the cache (if available) when revalidating content
3745
+ # with the origin, or when an error is encountered when refreshing the cache.
3746
+ # This setting defines the default "max-stale" duration for any cached responses
3747
+ # that do not specify a max-stale directive. Stale responses that exceed the TTL
3748
+ # configured here will not be served. The default limit (max-stale) is 86400s (1
3749
+ # day), which will allow stale content to be served up to this limit beyond the
3750
+ # max-age (or s-max-age) of a cached response. The maximum allowed value is
3751
+ # 604800(1 week). Set this to zero (0) to disable serve-while-stale.
3752
+ # Corresponds to the JSON property `serveWhileStale`
3753
+ # @return [Fixnum]
3754
+ attr_accessor :serve_while_stale
3755
+
3379
3756
  # Maximum number of seconds the response to a signed URL request will be
3380
3757
  # considered fresh. After this time period, the response will be revalidated
3381
3758
  # before being served. Defaults to 1hr (3600s). When serving responses to signed
@@ -3398,12 +3775,74 @@ module Google
3398
3775
 
3399
3776
  # Update properties of this object
3400
3777
  def update!(**args)
3778
+ @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
3401
3779
  @cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy)
3780
+ @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
3781
+ @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
3782
+ @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
3783
+ @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
3784
+ @negative_caching = args[:negative_caching] if args.key?(:negative_caching)
3785
+ @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy)
3786
+ @request_coalescing = args[:request_coalescing] if args.key?(:request_coalescing)
3787
+ @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale)
3402
3788
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
3403
3789
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
3404
3790
  end
3405
3791
  end
3406
3792
 
3793
+ # Bypass the cache when the specified request headers are present, e.g. Pragma
3794
+ # or Authorization headers. Values are case insensitive. The presence of such a
3795
+ # header overrides the cache_mode setting.
3796
+ class BackendServiceCdnPolicyBypassCacheOnRequestHeader
3797
+ include Google::Apis::Core::Hashable
3798
+
3799
+ # The header field name to match on when bypassing cache. Values are case-
3800
+ # insensitive.
3801
+ # Corresponds to the JSON property `headerName`
3802
+ # @return [String]
3803
+ attr_accessor :header_name
3804
+
3805
+ def initialize(**args)
3806
+ update!(**args)
3807
+ end
3808
+
3809
+ # Update properties of this object
3810
+ def update!(**args)
3811
+ @header_name = args[:header_name] if args.key?(:header_name)
3812
+ end
3813
+ end
3814
+
3815
+ # Specify CDN TTLs for response error codes.
3816
+ class BackendServiceCdnPolicyNegativeCachingPolicy
3817
+ include Google::Apis::Core::Hashable
3818
+
3819
+ # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
3820
+ # 308, 404, 405, 410, 414, 451 and 501 are can be specified as values, and you
3821
+ # cannot specify a status code more than once.
3822
+ # Corresponds to the JSON property `code`
3823
+ # @return [Fixnum]
3824
+ attr_accessor :code
3825
+
3826
+ # The TTL (in seconds) to cache responses with the corresponding status code for.
3827
+ # A TTL of "0" means "always revalidate" and a value of "-1" disables caching
3828
+ # for that status code. The maximum allowed value is 1800s (30 minutes), noting
3829
+ # that infrequently accessed objects may be evicted from the cache before the
3830
+ # defined TTL.
3831
+ # Corresponds to the JSON property `ttl`
3832
+ # @return [Fixnum]
3833
+ attr_accessor :ttl
3834
+
3835
+ def initialize(**args)
3836
+ update!(**args)
3837
+ end
3838
+
3839
+ # Update properties of this object
3840
+ def update!(**args)
3841
+ @code = args[:code] if args.key?(:code)
3842
+ @ttl = args[:ttl] if args.key?(:ttl)
3843
+ end
3844
+ end
3845
+
3407
3846
  # Applicable only to Failover for Internal TCP/UDP Load Balancing. On failover
3408
3847
  # or failback, this field indicates whether connection draining will be honored.
3409
3848
  # GCP has a fixed connection draining timeout of 10 minutes. A setting of true
@@ -4198,6 +4637,11 @@ module Google
4198
4637
  # @return [Google::Apis::ComputeAlpha::Instance]
4199
4638
  attr_accessor :instance
4200
4639
 
4640
+ #
4641
+ # Corresponds to the JSON property `instanceProperties`
4642
+ # @return [Google::Apis::ComputeAlpha::InstanceProperties]
4643
+ attr_accessor :instance_properties
4644
+
4201
4645
  # The minimum number of instances to create. If no min_count is specified then
4202
4646
  # count is used as the default value. If min_count instances cannot be created,
4203
4647
  # then no instances will be created.
@@ -4210,13 +4654,17 @@ module Google
4210
4654
  # @return [Array<String>]
4211
4655
  attr_accessor :predefined_names
4212
4656
 
4213
- # Specifies the instance template from which to create the instance. This field
4214
- # is optional. This field is optional. It can be a full or partial URL. For
4215
- # example, the following are all valid URLs to an instance template:
4657
+ # Specifies the instance template from which to create instances. You may
4658
+ # combine sourceInstanceTemplate with instanceProperties to override specific
4659
+ # values from an existing instance template. Bulk API follows the semantics of
4660
+ # JSON Merge Patch described by RFC 7396.
4661
+ # It can be a full or partial URL. For example, the following are all valid URLs
4662
+ # to an instance template:
4216
4663
  # - https://www.googleapis.com/compute/v1/projects/project/global/
4217
4664
  # instanceTemplates/instanceTemplate
4218
4665
  # - projects/project/global/instanceTemplates/instanceTemplate
4219
4666
  # - global/instanceTemplates/instanceTemplate
4667
+ # This field is optional.
4220
4668
  # Corresponds to the JSON property `sourceInstanceTemplate`
4221
4669
  # @return [String]
4222
4670
  attr_accessor :source_instance_template
@@ -4229,6 +4677,7 @@ module Google
4229
4677
  def update!(**args)
4230
4678
  @count = args[:count] if args.key?(:count)
4231
4679
  @instance = args[:instance] if args.key?(:instance)
4680
+ @instance_properties = args[:instance_properties] if args.key?(:instance_properties)
4232
4681
  @min_count = args[:min_count] if args.key?(:min_count)
4233
4682
  @predefined_names = args[:predefined_names] if args.key?(:predefined_names)
4234
4683
  @source_instance_template = args[:source_instance_template] if args.key?(:source_instance_template)
@@ -4597,7 +5046,8 @@ module Google
4597
5046
 
4598
5047
  # The type of commitment, which affects the discount rate and the eligible
4599
5048
  # resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply
4600
- # to memory optimized machines.
5049
+ # to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a
5050
+ # commitment that will only apply to accelerator optimized machines.
4601
5051
  # Corresponds to the JSON property `type`
4602
5052
  # @return [String]
4603
5053
  attr_accessor :type
@@ -5193,7 +5643,7 @@ module Google
5193
5643
  end
5194
5644
  end
5195
5645
 
5196
- # Represents a customer-supplied encryption key
5646
+ #
5197
5647
  class CustomerEncryptionKey
5198
5648
  include Google::Apis::Core::Hashable
5199
5649
 
@@ -5250,7 +5700,7 @@ module Google
5250
5700
  class CustomerEncryptionKeyProtectedDisk
5251
5701
  include Google::Apis::Core::Hashable
5252
5702
 
5253
- # Represents a customer-supplied encryption key
5703
+ # Decrypts data associated with the disk with a customer-supplied encryption key.
5254
5704
  # Corresponds to the JSON property `diskEncryptionKey`
5255
5705
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5256
5706
  attr_accessor :disk_encryption_key
@@ -5354,7 +5804,16 @@ module Google
5354
5804
  # @return [String]
5355
5805
  attr_accessor :description
5356
5806
 
5357
- # Represents a customer-supplied encryption key
5807
+ # Encrypts the disk using a customer-supplied encryption key.
5808
+ # After you encrypt a disk with a customer-supplied key, you must provide the
5809
+ # same key if you use the disk later (e.g. to create a disk snapshot, to create
5810
+ # a disk image, to create a machine image, or to attach the disk to a virtual
5811
+ # machine).
5812
+ # Customer-supplied encryption keys do not protect access to metadata of the
5813
+ # disk.
5814
+ # If you do not provide an encryption key when creating the disk, then the disk
5815
+ # will be encrypted using an automatically generated key and you do not need to
5816
+ # provide a key to use the disk later.
5358
5817
  # Corresponds to the JSON property `diskEncryptionKey`
5359
5818
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5360
5819
  attr_accessor :disk_encryption_key
@@ -5458,6 +5917,11 @@ module Google
5458
5917
  # @return [Fixnum]
5459
5918
  attr_accessor :physical_block_size_bytes
5460
5919
 
5920
+ # Indicates how many IOPS must be provisioned for the disk.
5921
+ # Corresponds to the JSON property `provisionedIops`
5922
+ # @return [Fixnum]
5923
+ attr_accessor :provisioned_iops
5924
+
5461
5925
  # [Output Only] URL of the region where the disk resides. Only applicable for
5462
5926
  # regional resources. You must specify this field as part of the HTTP request
5463
5927
  # URL. It is not settable as a field in the request body.
@@ -5476,6 +5940,12 @@ module Google
5476
5940
  # @return [Array<String>]
5477
5941
  attr_accessor :resource_policies
5478
5942
 
5943
+ # [Output Only] Specifies whether this disk satisfies zone separation.
5944
+ # Corresponds to the JSON property `satisfiesPhysicalZoneSeparation`
5945
+ # @return [Boolean]
5946
+ attr_accessor :satisfies_physical_zone_separation
5947
+ alias_method :satisfies_physical_zone_separation?, :satisfies_physical_zone_separation
5948
+
5479
5949
  # [Output Only] Server-defined fully-qualified URL for this resource.
5480
5950
  # Corresponds to the JSON property `selfLink`
5481
5951
  # @return [String]
@@ -5486,12 +5956,11 @@ module Google
5486
5956
  # @return [String]
5487
5957
  attr_accessor :self_link_with_id
5488
5958
 
5489
- # Size of the persistent disk, specified in GB. You can specify this field when
5490
- # creating a persistent disk using the sourceImage or sourceSnapshot parameter,
5491
- # or specify it alone to create an empty persistent disk.
5492
- # If you specify this field along with sourceImage or sourceSnapshot, the value
5493
- # of sizeGb must not be less than the size of the sourceImage or the size of the
5494
- # snapshot. Acceptable values are 1 to 65536, inclusive.
5959
+ # Size, in GB, of the persistent disk. You can specify this field when creating
5960
+ # a persistent disk using the sourceImage, sourceSnapshot, or sourceDisk
5961
+ # parameter, or specify it alone to create an empty persistent disk.
5962
+ # If you specify this field along with a source, the value of sizeGb must not be
5963
+ # less than the size of the source. Acceptable values are 1 to 65536, inclusive.
5495
5964
  # Corresponds to the JSON property `sizeGb`
5496
5965
  # @return [Fixnum]
5497
5966
  attr_accessor :size_gb
@@ -5533,7 +6002,8 @@ module Google
5533
6002
  # @return [String]
5534
6003
  attr_accessor :source_image
5535
6004
 
5536
- # Represents a customer-supplied encryption key
6005
+ # The customer-supplied encryption key of the source image. Required if the
6006
+ # source image is protected by a customer-supplied encryption key.
5537
6007
  # Corresponds to the JSON property `sourceImageEncryptionKey`
5538
6008
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5539
6009
  attr_accessor :source_image_encryption_key
@@ -5547,9 +6017,9 @@ module Google
5547
6017
  # @return [String]
5548
6018
  attr_accessor :source_image_id
5549
6019
 
5550
- # The source in-place snapshot used to create this disk. You can provide this as
5551
- # a partial or full URL to the resource. For example, the following are valid
5552
- # values:
6020
+ # [Deprecated] The source in-place snapshot used to create this disk. You can
6021
+ # provide this as a partial or full URL to the resource. For example, the
6022
+ # following are valid values:
5553
6023
  # - https://www.googleapis.com/compute/v1/projects/project/global/
5554
6024
  # inPlaceSnapshots/inPlaceSnapshots
5555
6025
  # - projects/project/global/inPlaceSnapshots/inPlaceSnapshots
@@ -5558,16 +6028,37 @@ module Google
5558
6028
  # @return [String]
5559
6029
  attr_accessor :source_in_place_snapshot
5560
6030
 
5561
- # [Output Only] The unique ID of the in-place snapshot used to create this disk.
5562
- # This value identifies the exact in-place snapshot that was used to create this
5563
- # persistent disk. For example, if you created the persistent disk from an in-
5564
- # place snapshot that was later deleted and recreated under the same name, the
5565
- # source in-place snapshot ID would identify the exact version of the in-place
5566
- # snapshot that was used.
6031
+ # [Deprecated] [Output Only] The unique ID of the in-place snapshot used to
6032
+ # create this disk. This value identifies the exact in-place snapshot that was
6033
+ # used to create this persistent disk. For example, if you created the
6034
+ # persistent disk from an in-place snapshot that was later deleted and recreated
6035
+ # under the same name, the source in-place snapshot ID would identify the exact
6036
+ # version of the in-place snapshot that was used.
5567
6037
  # Corresponds to the JSON property `sourceInPlaceSnapshotId`
5568
6038
  # @return [String]
5569
6039
  attr_accessor :source_in_place_snapshot_id
5570
6040
 
6041
+ # The source instant snapshot used to create this disk. You can provide this as
6042
+ # a partial or full URL to the resource. For example, the following are valid
6043
+ # values:
6044
+ # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/
6045
+ # instantSnapshots/instantSnapshot
6046
+ # - projects/project/zones/zone/instantSnapshots/instantSnapshot
6047
+ # - zones/zone/instantSnapshots/instantSnapshot
6048
+ # Corresponds to the JSON property `sourceInstantSnapshot`
6049
+ # @return [String]
6050
+ attr_accessor :source_instant_snapshot
6051
+
6052
+ # [Output Only] The unique ID of the instant snapshot used to create this disk.
6053
+ # This value identifies the exact instant snapshot that was used to create this
6054
+ # persistent disk. For example, if you created the persistent disk from an
6055
+ # instant snapshot that was later deleted and recreated under the same name, the
6056
+ # source instant snapshot ID would identify the exact version of the instant
6057
+ # snapshot that was used.
6058
+ # Corresponds to the JSON property `sourceInstantSnapshotId`
6059
+ # @return [String]
6060
+ attr_accessor :source_instant_snapshot_id
6061
+
5571
6062
  # The source snapshot used to create this disk. You can provide this as a
5572
6063
  # partial or full URL to the resource. For example, the following are valid
5573
6064
  # values:
@@ -5579,7 +6070,8 @@ module Google
5579
6070
  # @return [String]
5580
6071
  attr_accessor :source_snapshot
5581
6072
 
5582
- # Represents a customer-supplied encryption key
6073
+ # The customer-supplied encryption key of the source snapshot. Required if the
6074
+ # source snapshot is protected by a customer-supplied encryption key.
5583
6075
  # Corresponds to the JSON property `sourceSnapshotEncryptionKey`
5584
6076
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5585
6077
  attr_accessor :source_snapshot_encryption_key
@@ -5657,9 +6149,11 @@ module Google
5657
6149
  @name = args[:name] if args.key?(:name)
5658
6150
  @options = args[:options] if args.key?(:options)
5659
6151
  @physical_block_size_bytes = args[:physical_block_size_bytes] if args.key?(:physical_block_size_bytes)
6152
+ @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
5660
6153
  @region = args[:region] if args.key?(:region)
5661
6154
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
5662
6155
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
6156
+ @satisfies_physical_zone_separation = args[:satisfies_physical_zone_separation] if args.key?(:satisfies_physical_zone_separation)
5663
6157
  @self_link = args[:self_link] if args.key?(:self_link)
5664
6158
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
5665
6159
  @size_gb = args[:size_gb] if args.key?(:size_gb)
@@ -5670,6 +6164,8 @@ module Google
5670
6164
  @source_image_id = args[:source_image_id] if args.key?(:source_image_id)
5671
6165
  @source_in_place_snapshot = args[:source_in_place_snapshot] if args.key?(:source_in_place_snapshot)
5672
6166
  @source_in_place_snapshot_id = args[:source_in_place_snapshot_id] if args.key?(:source_in_place_snapshot_id)
6167
+ @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
6168
+ @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id)
5673
6169
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
5674
6170
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
5675
6171
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
@@ -7979,7 +8475,8 @@ module Google
7979
8475
  class FirewallPolicyRuleMatcher
7980
8476
  include Google::Apis::Core::Hashable
7981
8477
 
7982
- # CIDR IP address range.
8478
+ # CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is
8479
+ # 256.
7983
8480
  # Corresponds to the JSON property `destIpRanges`
7984
8481
  # @return [Array<String>]
7985
8482
  attr_accessor :dest_ip_ranges
@@ -7989,7 +8486,7 @@ module Google
7989
8486
  # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyRuleMatcherLayer4Config>]
7990
8487
  attr_accessor :layer4_configs
7991
8488
 
7992
- # CIDR IP address range.
8489
+ # CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 256.
7993
8490
  # Corresponds to the JSON property `srcIpRanges`
7994
8491
  # @return [Array<String>]
7995
8492
  attr_accessor :src_ip_ranges
@@ -8107,6 +8604,8 @@ module Google
8107
8604
  # IP address that you can use. For detailed information, refer to [IP address
8108
8605
  # specifications](/load-balancing/docs/forwarding-rule-concepts#
8109
8606
  # ip_address_specifications).
8607
+ # Must be set to `0.0.0.0` when the target is targetGrpcProxy that has
8608
+ # validateForProxyless field set to true.
8110
8609
  # Corresponds to the JSON property `IPAddress`
8111
8610
  # @return [String]
8112
8611
  attr_accessor :ip_address
@@ -8245,7 +8744,7 @@ module Google
8245
8744
 
8246
8745
  # Opaque filter criteria used by Loadbalancer to restrict routing configuration
8247
8746
  # to a limited set of xDS compliant clients. In their xDS requests to
8248
- # Loadbalancer, xDS clients present node metadata. If a match takes place, the
8747
+ # Loadbalancer, xDS clients present node metadata. When there is a match, the
8249
8748
  # relevant configuration is made available to those proxies. Otherwise, all the
8250
8749
  # resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule will
8251
8750
  # not be visible to those proxies.
@@ -8253,7 +8752,8 @@ module Google
8253
8752
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
8254
8753
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
8255
8754
  # all of its filterLabels must match with corresponding labels provided in the
8256
- # metadata.
8755
+ # metadata. If multiple metadataFilters are specified, all of them need to be
8756
+ # satisfied in order to be considered a match.
8257
8757
  # metadataFilters specified here will be applifed before those specified in the
8258
8758
  # UrlMap that this ForwardingRule references.
8259
8759
  # metadataFilters only applies to Loadbalancers that have their
@@ -8295,13 +8795,14 @@ module Google
8295
8795
  # that points to a target proxy or a target pool. Do not use with a forwarding
8296
8796
  # rule that points to a backend service. This field is used along with the
8297
8797
  # target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy,
8298
- # TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.
8798
+ # TargetTcpProxy, TargetGrpcProxy, TargetVpnGateway, TargetPool, TargetInstance.
8299
8799
  # Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed
8300
8800
  # to ports in the specified range will be forwarded to target. Forwarding rules
8301
8801
  # with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.
8302
8802
  # Some types of forwarding target have constraints on the acceptable ports:
8303
8803
  # - TargetHttpProxy: 80, 8080
8304
8804
  # - TargetHttpsProxy: 443
8805
+ # - TargetGrpcProxy: Any ports
8305
8806
  # - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
8306
8807
  # 1883, 5222
8307
8808
  # - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
@@ -8343,6 +8844,12 @@ module Google
8343
8844
  # @return [String]
8344
8845
  attr_accessor :self_link_with_id
8345
8846
 
8847
+ # Service Directory resources to register this forwarding rule with. Currently,
8848
+ # only supports a single Service Directory resource.
8849
+ # Corresponds to the JSON property `serviceDirectoryRegistrations`
8850
+ # @return [Array<Google::Apis::ComputeAlpha::ForwardingRuleServiceDirectoryRegistration>]
8851
+ attr_accessor :service_directory_registrations
8852
+
8346
8853
  # An optional prefix to the service name for this Forwarding Rule. If specified,
8347
8854
  # the prefix is the first label of the fully qualified service name.
8348
8855
  # The label must be 1-63 characters long, and comply with RFC1035. Specifically,
@@ -8376,8 +8883,8 @@ module Google
8376
8883
  # forwarding rules, this target must live in the same region as the forwarding
8377
8884
  # rule. For global forwarding rules, this target must be a global load balancing
8378
8885
  # resource. The forwarded traffic must be of a type appropriate to the target
8379
- # object. For INTERNAL_SELF_MANAGED load balancing, only targetHttpProxy is
8380
- # valid, not targetHttpsProxy.
8886
+ # object. For INTERNAL_SELF_MANAGED load balancing, only targetHttpProxy and
8887
+ # targetGrpcProxy are valid, not targetHttpsProxy.
8381
8888
  # Corresponds to the JSON property `target`
8382
8889
  # @return [String]
8383
8890
  attr_accessor :target
@@ -8412,6 +8919,7 @@ module Google
8412
8919
  @region = args[:region] if args.key?(:region)
8413
8920
  @self_link = args[:self_link] if args.key?(:self_link)
8414
8921
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
8922
+ @service_directory_registrations = args[:service_directory_registrations] if args.key?(:service_directory_registrations)
8415
8923
  @service_label = args[:service_label] if args.key?(:service_label)
8416
8924
  @service_name = args[:service_name] if args.key?(:service_name)
8417
8925
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
@@ -8679,6 +9187,33 @@ module Google
8679
9187
  end
8680
9188
  end
8681
9189
 
9190
+ # Describes the auto-registration of the Forwarding Rule to Service Directory.
9191
+ # The region and project of the Service Directory resource generated from this
9192
+ # registration will be the same as this Forwarding Rule.
9193
+ class ForwardingRuleServiceDirectoryRegistration
9194
+ include Google::Apis::Core::Hashable
9195
+
9196
+ # Service Directory namespace to register the forwarding rule under.
9197
+ # Corresponds to the JSON property `namespace`
9198
+ # @return [String]
9199
+ attr_accessor :namespace
9200
+
9201
+ # Service Directory service to register the forwarding rule under.
9202
+ # Corresponds to the JSON property `service`
9203
+ # @return [String]
9204
+ attr_accessor :service
9205
+
9206
+ def initialize(**args)
9207
+ update!(**args)
9208
+ end
9209
+
9210
+ # Update properties of this object
9211
+ def update!(**args)
9212
+ @namespace = args[:namespace] if args.key?(:namespace)
9213
+ @service = args[:service] if args.key?(:service)
9214
+ end
9215
+ end
9216
+
8682
9217
  #
8683
9218
  class ForwardingRulesScopedList
8684
9219
  include Google::Apis::Core::Hashable
@@ -9350,9 +9885,10 @@ module Google
9350
9885
  # Google Compute Engine has two Health Check resources:
9351
9886
  # * [Global](/compute/docs/reference/rest/`$api_version`/healthChecks) * [
9352
9887
  # Regional](/compute/docs/reference/rest/`$api_version`/regionHealthChecks)
9353
- # Internal HTTP(S) load balancers use regional health checks. All other types of
9354
- # GCP load balancers and managed instance group auto-healing use global health
9355
- # checks. For more information, read Health Check Concepts.
9888
+ # Internal HTTP(S) load balancers must use regional health checks. Internal TCP/
9889
+ # UDP load balancers can use either regional or global health checks. All other
9890
+ # types of GCP load balancers and managed instance group auto-healing must use
9891
+ # global health checks. For more information, read Health Check Concepts.
9356
9892
  # To perform health checks on network load balancers, you must use either
9357
9893
  # httpHealthChecks or httpsHealthChecks.
9358
9894
  class HealthCheck
@@ -10284,6 +10820,8 @@ module Google
10284
10820
  # port numbers in the format host:port. * matches any string of ([a-z0-9-.]*).
10285
10821
  # In that case, * must be the first character and must be followed in the
10286
10822
  # pattern by either - or ..
10823
+ # * based matching is not supported when the URL map is bound to target gRPC
10824
+ # proxy that has validateForProxyless field set to true.
10287
10825
  # Corresponds to the JSON property `hosts`
10288
10826
  # @return [Array<String>]
10289
10827
  attr_accessor :hosts
@@ -11124,7 +11662,11 @@ module Google
11124
11662
  # @return [Array<Google::Apis::ComputeAlpha::HttpFilterConfig>]
11125
11663
  attr_accessor :http_filter_metadata
11126
11664
 
11127
- #
11665
+ # The list of criteria for matching attributes of a request to this routeRule.
11666
+ # This list has OR semantics: the request matches this routeRule when any of the
11667
+ # matchRules are satisfied. However predicates within a given matchRule have AND
11668
+ # semantics. All predicates within a matchRule must match for the request to
11669
+ # match the rule.
11128
11670
  # Corresponds to the JSON property `matchRules`
11129
11671
  # @return [Array<Google::Apis::ComputeAlpha::HttpRouteRuleMatch>]
11130
11672
  attr_accessor :match_rules
@@ -11152,6 +11694,8 @@ module Google
11152
11694
  # routeAction cannot contain any weightedBackendServices.
11153
11695
  # Only one of urlRedirect, service or routeAction.weightedBackendService must be
11154
11696
  # set.
11697
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
11698
+ # within a routeRule's routeAction.
11155
11699
  # Corresponds to the JSON property `routeAction`
11156
11700
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
11157
11701
  attr_accessor :route_action
@@ -11221,13 +11765,14 @@ module Google
11221
11765
 
11222
11766
  # Opaque filter criteria used by Loadbalancer to restrict routing configuration
11223
11767
  # to a limited set of xDS compliant clients. In their xDS requests to
11224
- # Loadbalancer, xDS clients present node metadata. If a match takes place, the
11768
+ # Loadbalancer, xDS clients present node metadata. When there is a match, the
11225
11769
  # relevant routing configuration is made available to those proxies.
11226
11770
  # For each metadataFilter in this list, if its filterMatchCriteria is set to
11227
11771
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
11228
11772
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
11229
11773
  # all of its filterLabels must match with corresponding labels provided in the
11230
- # metadata.
11774
+ # metadata. If multiple metadataFilters are specified, all of them need to be
11775
+ # satisfied in order to be considered a match.
11231
11776
  # metadataFilters specified here will be applied after those specified in
11232
11777
  # ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to.
11233
11778
  # metadataFilters only applies to Loadbalancers that have their
@@ -11560,7 +12105,14 @@ module Google
11560
12105
  # @return [Fixnum]
11561
12106
  attr_accessor :id
11562
12107
 
11563
- # Represents a customer-supplied encryption key
12108
+ # Encrypts the image using a customer-supplied encryption key.
12109
+ # After you encrypt an image with a customer-supplied key, you must provide the
12110
+ # same key if you use the image later (e.g. to create a disk from the image).
12111
+ # Customer-supplied encryption keys do not protect access to metadata of the
12112
+ # disk.
12113
+ # If you do not provide an encryption key when creating the image, then the disk
12114
+ # will be encrypted using an automatically generated key and you do not need to
12115
+ # provide a key to use the image later.
11564
12116
  # Corresponds to the JSON property `imageEncryptionKey`
11565
12117
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11566
12118
  attr_accessor :image_encryption_key
@@ -11640,7 +12192,8 @@ module Google
11640
12192
  # @return [String]
11641
12193
  attr_accessor :source_disk
11642
12194
 
11643
- # Represents a customer-supplied encryption key
12195
+ # The customer-supplied encryption key of the source disk. Required if the
12196
+ # source disk is protected by a customer-supplied encryption key.
11644
12197
  # Corresponds to the JSON property `sourceDiskEncryptionKey`
11645
12198
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11646
12199
  attr_accessor :source_disk_encryption_key
@@ -11663,7 +12216,8 @@ module Google
11663
12216
  # @return [String]
11664
12217
  attr_accessor :source_image
11665
12218
 
11666
- # Represents a customer-supplied encryption key
12219
+ # The customer-supplied encryption key of the source image. Required if the
12220
+ # source image is protected by a customer-supplied encryption key.
11667
12221
  # Corresponds to the JSON property `sourceImageEncryptionKey`
11668
12222
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11669
12223
  attr_accessor :source_image_encryption_key
@@ -11687,7 +12241,8 @@ module Google
11687
12241
  # @return [String]
11688
12242
  attr_accessor :source_snapshot
11689
12243
 
11690
- # Represents a customer-supplied encryption key
12244
+ # The customer-supplied encryption key of the source snapshot. Required if the
12245
+ # source snapshot is protected by a customer-supplied encryption key.
11691
12246
  # Corresponds to the JSON property `sourceSnapshotEncryptionKey`
11692
12247
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11693
12248
  attr_accessor :source_snapshot_encryption_key
@@ -12217,6 +12772,15 @@ module Google
12217
12772
  class Instance
12218
12773
  include Google::Apis::Core::Hashable
12219
12774
 
12775
+ # Specifies options for controlling advanced machine features. Options that
12776
+ # would traditionally be configured in a BIOS belong here. Features that require
12777
+ # operating system support may have corresponding entries in the GuestOsFeatures
12778
+ # of an Image (e.g., whether or not the OS in the Image supports nested
12779
+ # virtualization being enabled or disabled).
12780
+ # Corresponds to the JSON property `advancedMachineFeatures`
12781
+ # @return [Google::Apis::ComputeAlpha::AdvancedMachineFeatures]
12782
+ attr_accessor :advanced_machine_features
12783
+
12220
12784
  # Allows this instance to send and receive packets with non-matching destination
12221
12785
  # or source IPs. This is required if you plan to use this instance to forward
12222
12786
  # routes. For more information, see Enabling IP Forwarding.
@@ -12300,7 +12864,19 @@ module Google
12300
12864
  # @return [Fixnum]
12301
12865
  attr_accessor :id
12302
12866
 
12303
- # Represents a customer-supplied encryption key
12867
+ # Encrypts or decrypts data for an instance with a customer-supplied encryption
12868
+ # key.
12869
+ # If you are creating a new instance, this field encrypts the local SSD and in-
12870
+ # memory contents of the instance using a key that you provide.
12871
+ # If you are restarting an instance protected with a customer-supplied
12872
+ # encryption key, you must provide the correct key in order to successfully
12873
+ # restart the instance.
12874
+ # If you do not provide an encryption key when creating the instance, then the
12875
+ # local SSD and in-memory contents will be encrypted using an automatically
12876
+ # generated key and you do not need to provide a key to start the instance later.
12877
+ # Instance templates do not store customer-supplied encryption keys, so you
12878
+ # cannot use your own keys to encrypt local SSDs and in-memory content in a
12879
+ # managed instance group.
12304
12880
  # Corresponds to the JSON property `instanceEncryptionKey`
12305
12881
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
12306
12882
  attr_accessor :instance_encryption_key
@@ -12415,6 +12991,12 @@ module Google
12415
12991
  # @return [Array<String>]
12416
12992
  attr_accessor :resource_policies
12417
12993
 
12994
+ # [Output Only] Specifies whether this instance satisfies zone separation.
12995
+ # Corresponds to the JSON property `satisfiesPhysicalZoneSeparation`
12996
+ # @return [Boolean]
12997
+ attr_accessor :satisfies_physical_zone_separation
12998
+ alias_method :satisfies_physical_zone_separation?, :satisfies_physical_zone_separation
12999
+
12418
13000
  # Sets the scheduling options for an Instance. NextID: 12
12419
13001
  # Corresponds to the JSON property `scheduling`
12420
13002
  # @return [Google::Apis::ComputeAlpha::Scheduling]
@@ -12466,7 +13048,7 @@ module Google
12466
13048
  # @return [String]
12467
13049
  attr_accessor :source_machine_image
12468
13050
 
12469
- # Represents a customer-supplied encryption key
13051
+ # Source GMI encryption key when creating an instance from GMI.
12470
13052
  # Corresponds to the JSON property `sourceMachineImageEncryptionKey`
12471
13053
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
12472
13054
  attr_accessor :source_machine_image_encryption_key
@@ -12513,6 +13095,7 @@ module Google
12513
13095
 
12514
13096
  # Update properties of this object
12515
13097
  def update!(**args)
13098
+ @advanced_machine_features = args[:advanced_machine_features] if args.key?(:advanced_machine_features)
12516
13099
  @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
12517
13100
  @confidential_instance_config = args[:confidential_instance_config] if args.key?(:confidential_instance_config)
12518
13101
  @cpu_platform = args[:cpu_platform] if args.key?(:cpu_platform)
@@ -12543,6 +13126,7 @@ module Google
12543
13126
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
12544
13127
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
12545
13128
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
13129
+ @satisfies_physical_zone_separation = args[:satisfies_physical_zone_separation] if args.key?(:satisfies_physical_zone_separation)
12546
13130
  @scheduling = args[:scheduling] if args.key?(:scheduling)
12547
13131
  @self_link = args[:self_link] if args.key?(:self_link)
12548
13132
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -15165,6 +15749,15 @@ module Google
15165
15749
  class InstanceProperties
15166
15750
  include Google::Apis::Core::Hashable
15167
15751
 
15752
+ # Specifies options for controlling advanced machine features. Options that
15753
+ # would traditionally be configured in a BIOS belong here. Features that require
15754
+ # operating system support may have corresponding entries in the GuestOsFeatures
15755
+ # of an Image (e.g., whether or not the OS in the Image supports nested
15756
+ # virtualization being enabled or disabled).
15757
+ # Corresponds to the JSON property `advancedMachineFeatures`
15758
+ # @return [Google::Apis::ComputeAlpha::AdvancedMachineFeatures]
15759
+ attr_accessor :advanced_machine_features
15760
+
15168
15761
  # Enables instances created based on these properties to send packets with
15169
15762
  # source IP addresses other than their own and receive packets with destination
15170
15763
  # IP addresses other than their own. If these instances will be used as an IP
@@ -15289,6 +15882,7 @@ module Google
15289
15882
 
15290
15883
  # Update properties of this object
15291
15884
  def update!(**args)
15885
+ @advanced_machine_features = args[:advanced_machine_features] if args.key?(:advanced_machine_features)
15292
15886
  @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
15293
15887
  @confidential_instance_config = args[:confidential_instance_config] if args.key?(:confidential_instance_config)
15294
15888
  @description = args[:description] if args.key?(:description)
@@ -15674,7 +16268,11 @@ module Google
15674
16268
  # @return [Array<Google::Apis::ComputeAlpha::CustomerEncryptionKeyProtectedDisk>]
15675
16269
  attr_accessor :disks
15676
16270
 
15677
- # Represents a customer-supplied encryption key
16271
+ # Decrypts data associated with an instance that is protected with a customer-
16272
+ # supplied encryption key.
16273
+ # If the instance you are starting is protected with a customer-supplied
16274
+ # encryption key, the correct key must be provided otherwise the instance resume
16275
+ # will not succeed.
15678
16276
  # Corresponds to the JSON property `instanceEncryptionKey`
15679
16277
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
15680
16278
  attr_accessor :instance_encryption_key
@@ -15933,7 +16531,11 @@ module Google
15933
16531
  # @return [Array<Google::Apis::ComputeAlpha::CustomerEncryptionKeyProtectedDisk>]
15934
16532
  attr_accessor :disks
15935
16533
 
15936
- # Represents a customer-supplied encryption key
16534
+ # Decrypts data associated with an instance that is protected with a customer-
16535
+ # supplied encryption key.
16536
+ # If the instance you are starting is protected with a customer-supplied
16537
+ # encryption key, the correct key must be provided otherwise the instance start
16538
+ # will not succeed.
15937
16539
  # Corresponds to the JSON property `instanceEncryptionKey`
15938
16540
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
15939
16541
  attr_accessor :instance_encryption_key
@@ -16279,6 +16881,11 @@ module Google
16279
16881
  # @return [String]
16280
16882
  attr_accessor :edge_availability_domain
16281
16883
 
16884
+ # Indicates the user-supplied encryption option of this interconnect attachment.
16885
+ # Corresponds to the JSON property `encryption`
16886
+ # @return [String]
16887
+ attr_accessor :encryption
16888
+
16282
16889
  # [Output Only] Google reference ID, to be used when raising support tickets
16283
16890
  # with Google or otherwise to debug backend connectivity issues. [Deprecated]
16284
16891
  # This field is not used.
@@ -16298,6 +16905,22 @@ module Google
16298
16905
  # @return [String]
16299
16906
  attr_accessor :interconnect
16300
16907
 
16908
+ # URL of addresses that have been reserved for the interconnect attachment, Used
16909
+ # only for interconnect attachment that has the encryption option as IPSEC. The
16910
+ # addresses must be RFC 1918 IP address ranges. When creating HA VPN gateway
16911
+ # over the interconnect attachment, if the attachment is configured to use an
16912
+ # RFC 1918 IP address, then the VPN gateway?s IP address will be allocated from
16913
+ # the IP address range specified here. For example, if the HA VPN gateway?s
16914
+ # interface 0 is paired to this interconnect attachment, then an RFC 1918 IP
16915
+ # address for the VPN gateway interface 0 will be allocated from the IP address
16916
+ # specified for this interconnect attachment. If this field is not specified for
16917
+ # interconnect attachment that has encryption option as IPSEC, later on when
16918
+ # creating HA VPN gateway on this interconnect attachment, the HA VPN gateway's
16919
+ # IP address will be allocated from regional external IP address pool.
16920
+ # Corresponds to the JSON property `ipsecInternalAddresses`
16921
+ # @return [Array<String>]
16922
+ attr_accessor :ipsec_internal_addresses
16923
+
16301
16924
  # [Output Only] Type of the resource. Always compute#interconnectAttachment for
16302
16925
  # interconnect attachments.
16303
16926
  # Corresponds to the JSON property `kind`
@@ -16456,9 +17079,11 @@ module Google
16456
17079
  @customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address)
16457
17080
  @description = args[:description] if args.key?(:description)
16458
17081
  @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
17082
+ @encryption = args[:encryption] if args.key?(:encryption)
16459
17083
  @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id)
16460
17084
  @id = args[:id] if args.key?(:id)
16461
17085
  @interconnect = args[:interconnect] if args.key?(:interconnect)
17086
+ @ipsec_internal_addresses = args[:ipsec_internal_addresses] if args.key?(:ipsec_internal_addresses)
16462
17087
  @kind = args[:kind] if args.key?(:kind)
16463
17088
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
16464
17089
  @labels = args[:labels] if args.key?(:labels)
@@ -18575,7 +19200,16 @@ module Google
18575
19200
  # @return [String]
18576
19201
  attr_accessor :kind
18577
19202
 
18578
- # Represents a customer-supplied encryption key
19203
+ # Encrypts the machine image using a customer-supplied encryption key.
19204
+ # After you encrypt a machine image using a customer-supplied key, you must
19205
+ # provide the same key if you use the machine image later. For example, you must
19206
+ # provide the encryption key when you create an instance from the encrypted
19207
+ # machine image in a future request.
19208
+ # Customer-supplied encryption keys do not protect access to metadata of the
19209
+ # machine image.
19210
+ # If you do not provide an encryption key when creating the machine image, then
19211
+ # the machine image will be encrypted using an automatically generated key and
19212
+ # you do not need to provide a key to use the machine image later.
18579
19213
  # Corresponds to the JSON property `machineImageEncryptionKey`
18580
19214
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
18581
19215
  attr_accessor :machine_image_encryption_key
@@ -19723,6 +20357,7 @@ module Google
19723
20357
  # @return [String]
19724
20358
  attr_accessor :i_pv4_range
19725
20359
 
20360
+ # Must be set to create a VPC network. If not set, a legacy network is created.
19726
20361
  # When set to true, the VPC network is created in auto mode. When set to false,
19727
20362
  # the VPC network is created in custom mode.
19728
20363
  # An auto mode VPC network starts with one subnet per region. Each subnet has a
@@ -19891,9 +20526,11 @@ module Google
19891
20526
  # Represents a collection of network endpoints.
19892
20527
  # A network endpoint group (NEG) defines how a set of endpoints should be
19893
20528
  # reached, whether they are reachable, and where they are located. For more
19894
- # information about using NEGs, see Setting up internet NEGs or Setting up
19895
- # zonal NEGs. (== resource_for `$api_version`.networkEndpointGroups ==) (==
19896
- # resource_for `$api_version`.globalNetworkEndpointGroups ==)
20529
+ # information about using NEGs, see Setting up internet NEGs, Setting up zonal
20530
+ # NEGs, or Setting up serverless NEGs. (== resource_for `$api_version`.
20531
+ # networkEndpointGroups ==) (== resource_for `$api_version`.
20532
+ # globalNetworkEndpointGroups ==) (== resource_for `$api_version`.
20533
+ # regionNetworkEndpointGroups ==)
19897
20534
  class NetworkEndpointGroup
19898
20535
  include Google::Apis::Core::Hashable
19899
20536
 
@@ -19979,7 +20616,9 @@ module Google
19979
20616
  # @return [String]
19980
20617
  attr_accessor :network
19981
20618
 
19982
- # Type of network endpoints in this network endpoint group.
20619
+ # Type of network endpoints in this network endpoint group. Can be one of
20620
+ # GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT,
20621
+ # or SERVERLESS.
19983
20622
  # Corresponds to the JSON property `networkEndpointType`
19984
20623
  # @return [String]
19985
20624
  attr_accessor :network_endpoint_type
@@ -21338,7 +21977,9 @@ module Google
21338
21977
  attr_accessor :location_hint
21339
21978
 
21340
21979
  # Specifies how to handle instances when a node in the group undergoes
21341
- # maintenance.
21980
+ # maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or
21981
+ # MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information,
21982
+ # see Maintenance policies.
21342
21983
  # Corresponds to the JSON property `maintenancePolicy`
21343
21984
  # @return [String]
21344
21985
  attr_accessor :maintenance_policy
@@ -21554,7 +22195,8 @@ module Google
21554
22195
  # @return [Fixnum]
21555
22196
  attr_accessor :min_nodes
21556
22197
 
21557
- # The autoscaling mode.
22198
+ # The autoscaling mode. Set to one of: ON, OFF, or ONLY_SCALE_OUT. For more
22199
+ # information, see Autoscaler modes.
21558
22200
  # Corresponds to the JSON property `mode`
21559
22201
  # @return [String]
21560
22202
  attr_accessor :mode
@@ -21752,6 +22394,12 @@ module Google
21752
22394
  # @return [String]
21753
22395
  attr_accessor :node_type
21754
22396
 
22397
+ # [Output Only] Specifies whether this node satisfies zone separation.
22398
+ # Corresponds to the JSON property `satisfiesPhysicalZoneSeparation`
22399
+ # @return [Boolean]
22400
+ attr_accessor :satisfies_physical_zone_separation
22401
+ alias_method :satisfies_physical_zone_separation?, :satisfies_physical_zone_separation
22402
+
21755
22403
  # Binding properties for the physical server.
21756
22404
  # Corresponds to the JSON property `serverBinding`
21757
22405
  # @return [Google::Apis::ComputeAlpha::ServerBinding]
@@ -21779,6 +22427,7 @@ module Google
21779
22427
  @instances = args[:instances] if args.key?(:instances)
21780
22428
  @name = args[:name] if args.key?(:name)
21781
22429
  @node_type = args[:node_type] if args.key?(:node_type)
22430
+ @satisfies_physical_zone_separation = args[:satisfies_physical_zone_separation] if args.key?(:satisfies_physical_zone_separation)
21782
22431
  @server_binding = args[:server_binding] if args.key?(:server_binding)
21783
22432
  @server_id = args[:server_id] if args.key?(:server_id)
21784
22433
  @status = args[:status] if args.key?(:status)
@@ -24350,6 +24999,12 @@ module Google
24350
24999
  # @return [Array<String>]
24351
25000
  attr_accessor :cidr_ranges
24352
25001
 
25002
+ # Direction of traffic to mirror, either INGRESS, EGRESS, or BOTH. The default
25003
+ # is BOTH.
25004
+ # Corresponds to the JSON property `direction`
25005
+ # @return [String]
25006
+ attr_accessor :direction
25007
+
24353
25008
  def initialize(**args)
24354
25009
  update!(**args)
24355
25010
  end
@@ -24358,6 +25013,7 @@ module Google
24358
25013
  def update!(**args)
24359
25014
  @ip_protocols = args[:ip_protocols] if args.key?(:ip_protocols)
24360
25015
  @cidr_ranges = args[:cidr_ranges] if args.key?(:cidr_ranges)
25016
+ @direction = args[:direction] if args.key?(:direction)
24361
25017
  end
24362
25018
  end
24363
25019
 
@@ -24725,6 +25381,8 @@ module Google
24725
25381
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
24726
25382
  # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
24727
25383
  # within a pathMatcher's defaultRouteAction.
25384
+ # Not supported when the backend service is referenced by a URL map that is
25385
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
24728
25386
  # Corresponds to the JSON property `defaultRouteAction`
24729
25387
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
24730
25388
  attr_accessor :default_route_action
@@ -24747,6 +25405,8 @@ module Google
24747
25405
  # the specified resource default_service:
24748
25406
  # - compute.backendBuckets.use
24749
25407
  # - compute.backendServices.use
25408
+ # pathMatchers[].defaultService is the only option available when the URL map is
25409
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
24750
25410
  # Corresponds to the JSON property `defaultService`
24751
25411
  # @return [String]
24752
25412
  attr_accessor :default_service
@@ -24780,6 +25440,8 @@ module Google
24780
25440
  # For example: a pathRule with a path /a/b/c/* will match before /a/b/*
24781
25441
  # irrespective of the order in which those paths appear in this list.
24782
25442
  # Within a given pathMatcher, only one of pathRules or routeRules must be set.
25443
+ # Not supported when the backend service is referenced by a URL map that is
25444
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
24783
25445
  # Corresponds to the JSON property `pathRules`
24784
25446
  # @return [Array<Google::Apis::ComputeAlpha::PathRule>]
24785
25447
  attr_accessor :path_rules
@@ -24788,6 +25450,8 @@ module Google
24788
25450
  # route matching and routing actions are desired. routeRules are evaluated in
24789
25451
  # order of priority, from the lowest to highest number.
24790
25452
  # Within a given pathMatcher, you can set only one of pathRules or routeRules.
25453
+ # Not supported when the backend service is referenced by a URL map that is
25454
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
24791
25455
  # Corresponds to the JSON property `routeRules`
24792
25456
  # @return [Array<Google::Apis::ComputeAlpha::HttpRouteRule>]
24793
25457
  attr_accessor :route_rules
@@ -25375,7 +26039,8 @@ module Google
25375
26039
  attr_accessor :usage_export_location
25376
26040
 
25377
26041
  # [Output Only] The role this project has in a shared VPC configuration.
25378
- # Currently only HOST projects are differentiated.
26042
+ # Currently, only projects with the host role, which is specified by the value
26043
+ # HOST, are differentiated.
25379
26044
  # Corresponds to the JSON property `xpnProjectStatus`
25380
26045
  # @return [String]
25381
26046
  attr_accessor :xpn_project_status
@@ -25768,20 +26433,30 @@ module Google
25768
26433
  class PublicAdvertisedPrefixPublicDelegatedPrefix
25769
26434
  include Google::Apis::Core::Hashable
25770
26435
 
26436
+ # The IP address range of the public delegated prefix
26437
+ # Corresponds to the JSON property `ipRange`
26438
+ # @return [String]
26439
+ attr_accessor :ip_range
26440
+
25771
26441
  # The name of the public delegated prefix
25772
26442
  # Corresponds to the JSON property `name`
25773
26443
  # @return [String]
25774
26444
  attr_accessor :name
25775
26445
 
26446
+ # The project number of the public delegated prefix
26447
+ # Corresponds to the JSON property `project`
26448
+ # @return [String]
26449
+ attr_accessor :project
26450
+
25776
26451
  # The region of the public delegated prefix if it is regional. If absent, the
25777
26452
  # prefix is global.
25778
26453
  # Corresponds to the JSON property `region`
25779
26454
  # @return [String]
25780
26455
  attr_accessor :region
25781
26456
 
25782
- # The status of the public delegated prefix. Possible values are: ACTIVE: The
25783
- # public delegated prefix is active DRAINED: The public delegated prefix is
25784
- # drained.
26457
+ # The status of the public delegated prefix. Possible values are: INITIALIZING:
26458
+ # The public delegated prefix is being initialized and addresses cannot be
26459
+ # created yet. ANNOUNCED: The public delegated prefix is active.
25785
26460
  # Corresponds to the JSON property `status`
25786
26461
  # @return [String]
25787
26462
  attr_accessor :status
@@ -25792,7 +26467,9 @@ module Google
25792
26467
 
25793
26468
  # Update properties of this object
25794
26469
  def update!(**args)
26470
+ @ip_range = args[:ip_range] if args.key?(:ip_range)
25795
26471
  @name = args[:name] if args.key?(:name)
26472
+ @project = args[:project] if args.key?(:project)
25796
26473
  @region = args[:region] if args.key?(:region)
25797
26474
  @status = args[:status] if args.key?(:status)
25798
26475
  end
@@ -26474,6 +27151,12 @@ module Google
26474
27151
  # @return [String]
26475
27152
  attr_accessor :status
26476
27153
 
27154
+ # [Output Only] Specifies whether this region supports physical zone separation.
27155
+ # Corresponds to the JSON property `supportsPhysicalZoneSeparation`
27156
+ # @return [Boolean]
27157
+ attr_accessor :supports_physical_zone_separation
27158
+ alias_method :supports_physical_zone_separation?, :supports_physical_zone_separation
27159
+
26477
27160
  # [Output Only] A list of zones available in this region, in the form of
26478
27161
  # resource URLs.
26479
27162
  # Corresponds to the JSON property `zones`
@@ -26496,6 +27179,7 @@ module Google
26496
27179
  @self_link = args[:self_link] if args.key?(:self_link)
26497
27180
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
26498
27181
  @status = args[:status] if args.key?(:status)
27182
+ @supports_physical_zone_separation = args[:supports_physical_zone_separation] if args.key?(:supports_physical_zone_separation)
26499
27183
  @zones = args[:zones] if args.key?(:zones)
26500
27184
  end
26501
27185
  end
@@ -27127,7 +27811,7 @@ module Google
27127
27811
  end
27128
27812
  end
27129
27813
 
27130
- # InstanceGroupManagers.applyUpdatesToInstances
27814
+ # RegionInstanceGroupManagers.applyUpdatesToInstances
27131
27815
  class RegionInstanceGroupManagersApplyUpdatesRequest
27132
27816
  include Google::Apis::Core::Hashable
27133
27817
 
@@ -27892,6 +28576,10 @@ module Google
27892
28576
  # Traffic Director.
27893
28577
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
27894
28578
  # regionUrlMaps are used by internal HTTP(S) load balancers.
28579
+ # For a list of supported URL map features by load balancer type, see the Load
28580
+ # balancing features: Routing and traffic management table.
28581
+ # For a list of supported URL map features for Traffic Director, see the
28582
+ # Traffic Director features: Routing and traffic management table.
27895
28583
  # This resource defines mappings from host names and URL paths to either a
27896
28584
  # backend service or a backend bucket.
27897
28585
  # To use the global urlMaps resource, the backend service must have a
@@ -28864,6 +29552,11 @@ module Google
28864
29552
  # @return [String]
28865
29553
  attr_accessor :locality
28866
29554
 
29555
+ # Scope specifies the availability domain to which the VMs should be spread.
29556
+ # Corresponds to the JSON property `scope`
29557
+ # @return [String]
29558
+ attr_accessor :scope
29559
+
28867
29560
  # Specifies instances to hosts placement relationship
28868
29561
  # Corresponds to the JSON property `style`
28869
29562
  # @return [String]
@@ -28883,6 +29576,7 @@ module Google
28883
29576
  @availability_domain_count = args[:availability_domain_count] if args.key?(:availability_domain_count)
28884
29577
  @collocation = args[:collocation] if args.key?(:collocation)
28885
29578
  @locality = args[:locality] if args.key?(:locality)
29579
+ @scope = args[:scope] if args.key?(:scope)
28886
29580
  @style = args[:style] if args.key?(:style)
28887
29581
  @vm_count = args[:vm_count] if args.key?(:vm_count)
28888
29582
  end
@@ -28927,12 +29621,19 @@ module Google
28927
29621
  class ResourcePolicyInstanceSchedulePolicy
28928
29622
  include Google::Apis::Core::Hashable
28929
29623
 
28930
- # Schedule for the instance operation.
29624
+ # Specifies the time zone to be used in interpreting Schedule.schedule. The
29625
+ # value of this field must be a time zone name from the tz database: http://en.
29626
+ # wikipedia.org/wiki/Tz_database.
29627
+ # Corresponds to the JSON property `timeZone`
29628
+ # @return [String]
29629
+ attr_accessor :time_zone
29630
+
29631
+ # Schedule for an instance operation.
28931
29632
  # Corresponds to the JSON property `vmStartSchedule`
28932
29633
  # @return [Google::Apis::ComputeAlpha::ResourcePolicyInstanceSchedulePolicySchedule]
28933
29634
  attr_accessor :vm_start_schedule
28934
29635
 
28935
- # Schedule for the instance operation.
29636
+ # Schedule for an instance operation.
28936
29637
  # Corresponds to the JSON property `vmStopSchedule`
28937
29638
  # @return [Google::Apis::ComputeAlpha::ResourcePolicyInstanceSchedulePolicySchedule]
28938
29639
  attr_accessor :vm_stop_schedule
@@ -28943,12 +29644,13 @@ module Google
28943
29644
 
28944
29645
  # Update properties of this object
28945
29646
  def update!(**args)
29647
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
28946
29648
  @vm_start_schedule = args[:vm_start_schedule] if args.key?(:vm_start_schedule)
28947
29649
  @vm_stop_schedule = args[:vm_stop_schedule] if args.key?(:vm_stop_schedule)
28948
29650
  end
28949
29651
  end
28950
29652
 
28951
- # Schedule for the instance operation.
29653
+ # Schedule for an instance operation.
28952
29654
  class ResourcePolicyInstanceSchedulePolicySchedule
28953
29655
  include Google::Apis::Core::Hashable
28954
29656
 
@@ -28957,13 +29659,6 @@ module Google
28957
29659
  # @return [String]
28958
29660
  attr_accessor :schedule
28959
29661
 
28960
- # Specifies the time zone to be used in interpreting Schedule.schedule. The
28961
- # value of this field must be a time zone name from the tz database: http://en.
28962
- # wikipedia.org/wiki/Tz_database.
28963
- # Corresponds to the JSON property `timeZone`
28964
- # @return [String]
28965
- attr_accessor :time_zone
28966
-
28967
29662
  def initialize(**args)
28968
29663
  update!(**args)
28969
29664
  end
@@ -28971,7 +29666,6 @@ module Google
28971
29666
  # Update properties of this object
28972
29667
  def update!(**args)
28973
29668
  @schedule = args[:schedule] if args.key?(:schedule)
28974
- @time_zone = args[:time_zone] if args.key?(:time_zone)
28975
29669
  end
28976
29670
  end
28977
29671
 
@@ -30598,12 +31292,12 @@ module Google
30598
31292
  # @return [String]
30599
31293
  attr_accessor :match
30600
31294
 
30601
- # An integer indicating the priority of a rule in the list. The priority must be
30602
- # a positive value between 0 and 65000. The priority must be unique among rules
30603
- # within a NAT.
30604
- # Corresponds to the JSON property `priority`
31295
+ # An integer uniquely identifying a rule in the list. The rule number must be a
31296
+ # positive value between 0 and 65000, and must be unique among rules within a
31297
+ # NAT.
31298
+ # Corresponds to the JSON property `ruleNumber`
30605
31299
  # @return [Fixnum]
30606
- attr_accessor :priority
31300
+ attr_accessor :rule_number
30607
31301
 
30608
31302
  def initialize(**args)
30609
31303
  update!(**args)
@@ -30614,7 +31308,7 @@ module Google
30614
31308
  @action = args[:action] if args.key?(:action)
30615
31309
  @description = args[:description] if args.key?(:description)
30616
31310
  @match = args[:match] if args.key?(:match)
30617
- @priority = args[:priority] if args.key?(:priority)
31311
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
30618
31312
  end
30619
31313
  end
30620
31314
 
@@ -30843,6 +31537,11 @@ module Google
30843
31537
  # @return [Fixnum]
30844
31538
  attr_accessor :num_vm_endpoints_with_nat_mappings
30845
31539
 
31540
+ # Status of rules in this NAT.
31541
+ # Corresponds to the JSON property `ruleStatus`
31542
+ # @return [Array<Google::Apis::ComputeAlpha::RouterStatusNatStatusNatRuleStatus>]
31543
+ attr_accessor :rule_status
31544
+
30846
31545
  # A list of fully qualified URLs of reserved IP address resources.
30847
31546
  # Corresponds to the JSON property `userAllocatedNatIpResources`
30848
31547
  # @return [Array<String>]
@@ -30866,11 +31565,58 @@ module Google
30866
31565
  @min_extra_nat_ips_needed = args[:min_extra_nat_ips_needed] if args.key?(:min_extra_nat_ips_needed)
30867
31566
  @name = args[:name] if args.key?(:name)
30868
31567
  @num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
31568
+ @rule_status = args[:rule_status] if args.key?(:rule_status)
30869
31569
  @user_allocated_nat_ip_resources = args[:user_allocated_nat_ip_resources] if args.key?(:user_allocated_nat_ip_resources)
30870
31570
  @user_allocated_nat_ips = args[:user_allocated_nat_ips] if args.key?(:user_allocated_nat_ips)
30871
31571
  end
30872
31572
  end
30873
31573
 
31574
+ # Status of a NAT Rule contained in this NAT.
31575
+ class RouterStatusNatStatusNatRuleStatus
31576
+ include Google::Apis::Core::Hashable
31577
+
31578
+ # A list of active IPs for NAT. Example: ["1.1.1.1", "179.12.26.133"].
31579
+ # Corresponds to the JSON property `activeNatIps`
31580
+ # @return [Array<String>]
31581
+ attr_accessor :active_nat_ips
31582
+
31583
+ # A list of IPs for NAT that are in drain mode. Example: ["1.1.1.1", "179.12.26.
31584
+ # 133"].
31585
+ # Corresponds to the JSON property `drainNatIps`
31586
+ # @return [Array<String>]
31587
+ attr_accessor :drain_nat_ips
31588
+
31589
+ # The number of extra IPs to allocate. This will be greater than 0 only if the
31590
+ # existing IPs in this NAT Rule are NOT enough to allow all configured VMs to
31591
+ # use NAT.
31592
+ # Corresponds to the JSON property `minExtraIpsNeeded`
31593
+ # @return [Fixnum]
31594
+ attr_accessor :min_extra_ips_needed
31595
+
31596
+ # Number of VM endpoints (i.e., NICs) that have NAT Mappings from this NAT Rule.
31597
+ # Corresponds to the JSON property `numVmEndpointsWithNatMappings`
31598
+ # @return [Fixnum]
31599
+ attr_accessor :num_vm_endpoints_with_nat_mappings
31600
+
31601
+ # Rule number of the rule.
31602
+ # Corresponds to the JSON property `ruleNumber`
31603
+ # @return [Fixnum]
31604
+ attr_accessor :rule_number
31605
+
31606
+ def initialize(**args)
31607
+ update!(**args)
31608
+ end
31609
+
31610
+ # Update properties of this object
31611
+ def update!(**args)
31612
+ @active_nat_ips = args[:active_nat_ips] if args.key?(:active_nat_ips)
31613
+ @drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
31614
+ @min_extra_ips_needed = args[:min_extra_ips_needed] if args.key?(:min_extra_ips_needed)
31615
+ @num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
31616
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
31617
+ end
31618
+ end
31619
+
30874
31620
  #
30875
31621
  class RouterStatusResponse
30876
31622
  include Google::Apis::Core::Hashable
@@ -31156,7 +31902,7 @@ module Google
31156
31902
  # @return [String]
31157
31903
  attr_accessor :device_name
31158
31904
 
31159
- # Represents a customer-supplied encryption key
31905
+ # The encryption key for the disk.
31160
31906
  # Corresponds to the JSON property `diskEncryptionKey`
31161
31907
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
31162
31908
  attr_accessor :disk_encryption_key
@@ -31256,6 +32002,42 @@ module Google
31256
32002
  end
31257
32003
  end
31258
32004
 
32005
+ #
32006
+ class ScalingScheduleStatus
32007
+ include Google::Apis::Core::Hashable
32008
+
32009
+ # [Output Only] The last time the scaling schedule became active. Note: this is
32010
+ # a timestamp when a schedule actually became active, not when it was planned to
32011
+ # do so. The timestamp is an RFC3339 string in RFC3339 text format.
32012
+ # Corresponds to the JSON property `lastStartTime`
32013
+ # @return [String]
32014
+ attr_accessor :last_start_time
32015
+
32016
+ # [Output Only] The next time the scaling schedule will become active. Note:
32017
+ # this is a timestamp when a schedule is planned to run, but the actual time
32018
+ # might be slightly different. The timestamp is an RFC3339 string in RFC3339
32019
+ # text format.
32020
+ # Corresponds to the JSON property `nextStartTime`
32021
+ # @return [String]
32022
+ attr_accessor :next_start_time
32023
+
32024
+ # [Output Only] The current state of a scaling schedule.
32025
+ # Corresponds to the JSON property `state`
32026
+ # @return [String]
32027
+ attr_accessor :state
32028
+
32029
+ def initialize(**args)
32030
+ update!(**args)
32031
+ end
32032
+
32033
+ # Update properties of this object
32034
+ def update!(**args)
32035
+ @last_start_time = args[:last_start_time] if args.key?(:last_start_time)
32036
+ @next_start_time = args[:next_start_time] if args.key?(:next_start_time)
32037
+ @state = args[:state] if args.key?(:state)
32038
+ end
32039
+ end
32040
+
31259
32041
  # Sets the scheduling options for an Instance. NextID: 12
31260
32042
  class Scheduling
31261
32043
  include Google::Apis::Core::Hashable
@@ -31285,18 +32067,6 @@ module Google
31285
32067
  # @return [String]
31286
32068
  attr_accessor :location_hint
31287
32069
 
31288
- # DEPRECATED, please use maintenance_freeze_duration_hours. TODO(b/154158138):
31289
- # Remove this field. Compute Engine Long Term Release. When specified, VMs that
31290
- # have this policy become long term release (internal: stable fleet) VMs.
31291
- # For all VM shapes, this should result in fewer disruptions due to software
31292
- # updates and greater predictability via 1 week extended notifications.
31293
- # For GPU VMs, this should also result in an 2 week uptime guarantee. See go/
31294
- # stable-fleet-gpus-design for more details.
31295
- # Corresponds to the JSON property `longTermRelease`
31296
- # @return [Boolean]
31297
- attr_accessor :long_term_release
31298
- alias_method :long_term_release?, :long_term_release
31299
-
31300
32070
  # Specifies the number of hours after instance creation where the instance won't
31301
32071
  # be scheduled for maintenance.
31302
32072
  # Corresponds to the JSON property `maintenanceFreezeDurationHours`
@@ -31341,7 +32111,6 @@ module Google
31341
32111
  @automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
31342
32112
  @latency_tolerant = args[:latency_tolerant] if args.key?(:latency_tolerant)
31343
32113
  @location_hint = args[:location_hint] if args.key?(:location_hint)
31344
- @long_term_release = args[:long_term_release] if args.key?(:long_term_release)
31345
32114
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
31346
32115
  @min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
31347
32116
  @node_affinities = args[:node_affinities] if args.key?(:node_affinities)
@@ -31994,7 +32763,7 @@ module Google
31994
32763
  # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfigLayer4Config>]
31995
32764
  attr_accessor :layer4_configs
31996
32765
 
31997
- # CIDR IP address range.
32766
+ # CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
31998
32767
  # Corresponds to the JSON property `srcIpRanges`
31999
32768
  # @return [Array<String>]
32000
32769
  attr_accessor :src_ip_ranges
@@ -32080,7 +32849,7 @@ module Google
32080
32849
  class SecurityPolicyRuleRateLimitOptions
32081
32850
  include Google::Apis::Core::Hashable
32082
32851
 
32083
- # Can only be specifed if the action for the rule is "rate_based_blacklist" If
32852
+ # Can only be specified if the action for the rule is "rate_based_blacklist" If
32084
32853
  # specified, determines the time (in seconds) the traffic will continue to be
32085
32854
  # blocked by the rate limit after the rate falls below the threshold. The
32086
32855
  # default value is 0 seconds.
@@ -32153,6 +32922,7 @@ module Google
32153
32922
  # clientTlsPolicy only applies to a global BackendService with the
32154
32923
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
32155
32924
  # If left blank, communications are not encrypted.
32925
+ # Note: This field currently has no impact.
32156
32926
  # Corresponds to the JSON property `clientTlsPolicy`
32157
32927
  # @return [String]
32158
32928
  attr_accessor :client_tls_policy
@@ -32175,6 +32945,7 @@ module Google
32175
32945
  # Only applies to a global BackendService with loadBalancingScheme set to
32176
32946
  # INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached
32177
32947
  # clientTlsPolicy with clientCertificate (mTLS mode).
32948
+ # Note: This field currently has no impact.
32178
32949
  # Corresponds to the JSON property `subjectAltNames`
32179
32950
  # @return [Array<String>]
32180
32951
  attr_accessor :subject_alt_names
@@ -32209,8 +32980,9 @@ module Google
32209
32980
  # @return [String]
32210
32981
  attr_accessor :kind
32211
32982
 
32212
- # [Output Only] The position of the next byte of content from the serial console
32213
- # output. Use this value in the next request as the start parameter.
32983
+ # [Output Only] The position of the next byte of content, regardless of whether
32984
+ # the content exists, following the output returned in the `contents` property.
32985
+ # Use this value in the next request as the start parameter.
32214
32986
  # Corresponds to the JSON property `next`
32215
32987
  # @return [Fixnum]
32216
32988
  attr_accessor :next
@@ -32222,8 +32994,10 @@ module Google
32222
32994
 
32223
32995
  # The starting byte position of the output that was returned. This should match
32224
32996
  # the start parameter sent with the request. If the serial console output
32225
- # exceeds the size of the buffer, older output will be overwritten by newer
32226
- # content and the start values will be mismatched.
32997
+ # exceeds the size of the buffer (1 MB), older output is overwritten by newer
32998
+ # content. The output start value will indicate the byte position of the output
32999
+ # that was returned, which might be different than the `start` value that was
33000
+ # specified in the request.
32227
33001
  # Corresponds to the JSON property `start`
32228
33002
  # @return [Fixnum]
32229
33003
  attr_accessor :start
@@ -32922,6 +33696,12 @@ module Google
32922
33696
  # @return [String]
32923
33697
  attr_accessor :name
32924
33698
 
33699
+ # [Output Only] Specifies whether this snapshot satisfies zone separation.
33700
+ # Corresponds to the JSON property `satisfiesPhysicalZoneSeparation`
33701
+ # @return [Boolean]
33702
+ attr_accessor :satisfies_physical_zone_separation
33703
+ alias_method :satisfies_physical_zone_separation?, :satisfies_physical_zone_separation
33704
+
32925
33705
  # [Output Only] Server-defined URL for the resource.
32926
33706
  # Corresponds to the JSON property `selfLink`
32927
33707
  # @return [String]
@@ -32932,7 +33712,16 @@ module Google
32932
33712
  # @return [String]
32933
33713
  attr_accessor :self_link_with_id
32934
33714
 
32935
- # Represents a customer-supplied encryption key
33715
+ # Encrypts the snapshot using a customer-supplied encryption key.
33716
+ # After you encrypt a snapshot using a customer-supplied key, you must provide
33717
+ # the same key if you use the snapshot later. For example, you must provide the
33718
+ # encryption key when you create a disk from the encrypted snapshot in a future
33719
+ # request.
33720
+ # Customer-supplied encryption keys do not protect access to metadata of the
33721
+ # snapshot.
33722
+ # If you do not provide an encryption key when creating the snapshot, then the
33723
+ # snapshot will be encrypted using an automatically generated key and you do not
33724
+ # need to provide a key to use the snapshot later.
32936
33725
  # Corresponds to the JSON property `snapshotEncryptionKey`
32937
33726
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
32938
33727
  attr_accessor :snapshot_encryption_key
@@ -32942,7 +33731,8 @@ module Google
32942
33731
  # @return [String]
32943
33732
  attr_accessor :source_disk
32944
33733
 
32945
- # Represents a customer-supplied encryption key
33734
+ # The customer-supplied encryption key of the source disk. Required if the
33735
+ # source disk is protected by a customer-supplied encryption key.
32946
33736
  # Corresponds to the JSON property `sourceDiskEncryptionKey`
32947
33737
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
32948
33738
  attr_accessor :source_disk_encryption_key
@@ -33000,6 +33790,7 @@ module Google
33000
33790
  @license_codes = args[:license_codes] if args.key?(:license_codes)
33001
33791
  @licenses = args[:licenses] if args.key?(:licenses)
33002
33792
  @name = args[:name] if args.key?(:name)
33793
+ @satisfies_physical_zone_separation = args[:satisfies_physical_zone_separation] if args.key?(:satisfies_physical_zone_separation)
33003
33794
  @self_link = args[:self_link] if args.key?(:self_link)
33004
33795
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
33005
33796
  @snapshot_encryption_key = args[:snapshot_encryption_key] if args.key?(:snapshot_encryption_key)
@@ -33134,7 +33925,8 @@ module Google
33134
33925
  class SourceDiskEncryptionKey
33135
33926
  include Google::Apis::Core::Hashable
33136
33927
 
33137
- # Represents a customer-supplied encryption key
33928
+ # The customer-supplied encryption key of the source disk. Required if the
33929
+ # source disk is protected by a customer-supplied encryption key.
33138
33930
  # Corresponds to the JSON property `diskEncryptionKey`
33139
33931
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
33140
33932
  attr_accessor :disk_encryption_key
@@ -34315,10 +35107,11 @@ module Google
34315
35107
  attr_accessor :id
34316
35108
 
34317
35109
  # The range of internal addresses that are owned by this subnetwork. Provide
34318
- # this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.
34319
- # 168.0.0/16. Ranges must be unique and non-overlapping within a network. Only
34320
- # IPv4 is supported. This field is set at resource creation time. The range can
34321
- # be expanded after creation using expandIpCidrRange.
35110
+ # this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.
35111
+ # 64.0.0/10. Ranges must be unique and non-overlapping within a network. Only
35112
+ # IPv4 is supported. This field is set at resource creation time. This may be a
35113
+ # RFC 1918 IP range, or a privately routed, non-RFC 1918 IP range, not belonging
35114
+ # to Google. The range can be expanded after creation using expandIpCidrRange.
34322
35115
  # Corresponds to the JSON property `ipCidrRange`
34323
35116
  # @return [String]
34324
35117
  attr_accessor :ip_cidr_range
@@ -34342,7 +35135,8 @@ module Google
34342
35135
 
34343
35136
  # Can only be specified if VPC flow logging for this subnetwork is enabled.
34344
35137
  # Configures whether metadata fields should be added to the reported VPC flow
34345
- # logs. Default is INCLUDE_ALL_METADATA.
35138
+ # logs. Options are INCLUDE_ALL_METADATA, EXCLUDE_ALL_METADATA, and
35139
+ # CUSTOM_METADATA. Default is INCLUDE_ALL_METADATA.
34346
35140
  # Corresponds to the JSON property `metadata`
34347
35141
  # @return [String]
34348
35142
  attr_accessor :metadata
@@ -34793,7 +35587,8 @@ module Google
34793
35587
  # The range of IP addresses belonging to this subnetwork secondary range.
34794
35588
  # Provide this property when you create the subnetwork. Ranges must be unique
34795
35589
  # and non-overlapping with all primary and secondary IP ranges within a network.
34796
- # Only IPv4 is supported.
35590
+ # Only IPv4 is supported. This may be a RFC 1918 IP range, or a privately, non-
35591
+ # RFC 1918 IP range, not belonging to Google.
34797
35592
  # Corresponds to the JSON property `ipCidrRange`
34798
35593
  # @return [String]
34799
35594
  attr_accessor :ip_cidr_range
@@ -35048,7 +35843,7 @@ module Google
35048
35843
  # A target gRPC proxy is a component of load balancers intended for load
35049
35844
  # balancing gRPC traffic. Global forwarding rules reference a target gRPC proxy.
35050
35845
  # The Target gRPC Proxy references a URL map which specifies how traffic routes
35051
- # to gRPC backend services.
35846
+ # to gRPC backend services. (== resource_for `$api_version`.targetGrpcProxies ==)
35052
35847
  class TargetGrpcProxy
35053
35848
  include Google::Apis::Core::Hashable
35054
35849
 
@@ -35115,12 +35910,11 @@ module Google
35115
35910
  # If true, indicates that the BackendServices referenced by the urlMap may be
35116
35911
  # accessed by gRPC applications without using a sidecar proxy. This will enable
35117
35912
  # configuration checks on urlMap and its referenced BackendServices to not allow
35118
- # unsupported features. A gRPC application must use "xds-experimental:///"
35119
- # scheme in the target URI of the service it is connecting to. If false,
35120
- # indicates that the BackendServices referenced by the urlMap will be accessed
35121
- # by gRPC applications via a sidecar proxy. In this case, a gRPC application
35122
- # must not use "xds-experimental:///" scheme in the target URI of the service it
35123
- # is connecting to
35913
+ # unsupported features. A gRPC application must use "xds:///" scheme in the
35914
+ # target URI of the service it is connecting to. If false, indicates that the
35915
+ # BackendServices referenced by the urlMap will be accessed by gRPC applications
35916
+ # via a sidecar proxy. In this case, a gRPC application must not use "xds:///"
35917
+ # scheme in the target URI of the service it is connecting to
35124
35918
  # Corresponds to the JSON property `validateForProxyless`
35125
35919
  # @return [Boolean]
35126
35920
  attr_accessor :validate_for_proxyless
@@ -35888,6 +36682,7 @@ module Google
35888
36682
  # authorizationPolicy only applies to a global TargetHttpsProxy attached to
35889
36683
  # globalForwardingRules with the loadBalancingScheme set to
35890
36684
  # INTERNAL_SELF_MANAGED.
36685
+ # Note: This field currently has no impact.
35891
36686
  # Corresponds to the JSON property `authorizationPolicy`
35892
36687
  # @return [String]
35893
36688
  attr_accessor :authorization_policy
@@ -35975,6 +36770,7 @@ module Google
35975
36770
  # globalForwardingRules with the loadBalancingScheme set to
35976
36771
  # INTERNAL_SELF_MANAGED.
35977
36772
  # If left blank, communications are not encrypted.
36773
+ # Note: This field currently has no impact.
35978
36774
  # Corresponds to the JSON property `serverTlsPolicy`
35979
36775
  # @return [String]
35980
36776
  attr_accessor :server_tls_policy
@@ -36758,7 +37554,7 @@ module Google
36758
37554
 
36759
37555
  # The URL of the HttpHealthCheck resource. A member instance in this pool is
36760
37556
  # considered healthy if and only if the health checks pass. An empty list means
36761
- # all member instances will be considered healthy at all times. Only
37557
+ # all member instances will be considered healthy at all times. Only legacy
36762
37558
  # HttpHealthChecks are supported. Only one health check may be specified.
36763
37559
  # Corresponds to the JSON property `healthChecks`
36764
37560
  # @return [Array<String>]
@@ -38523,13 +39319,13 @@ module Google
38523
39319
  include Google::Apis::Core::Hashable
38524
39320
 
38525
39321
  # [Output Only] The date when the maintenance will take place. This value is in
38526
- # RFC3339 text format.
39322
+ # RFC3339 text format. DEPRECATED: Use start_time_window instead.
38527
39323
  # Corresponds to the JSON property `date`
38528
39324
  # @return [String]
38529
39325
  attr_accessor :date
38530
39326
 
38531
39327
  # [Output Only] The time when the maintenance will take place. This value is in
38532
- # RFC3339 text format.
39328
+ # RFC3339 text format. DEPRECATED: Use start_time_window instead.
38533
39329
  # Corresponds to the JSON property `time`
38534
39330
  # @return [String]
38535
39331
  attr_accessor :time
@@ -38559,6 +39355,10 @@ module Google
38559
39355
  # Traffic Director.
38560
39356
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
38561
39357
  # regionUrlMaps are used by internal HTTP(S) load balancers.
39358
+ # For a list of supported URL map features by load balancer type, see the Load
39359
+ # balancing features: Routing and traffic management table.
39360
+ # For a list of supported URL map features for Traffic Director, see the
39361
+ # Traffic Director features: Routing and traffic management table.
38562
39362
  # This resource defines mappings from host names and URL paths to either a
38563
39363
  # backend service or a backend bucket.
38564
39364
  # To use the global urlMaps resource, the backend service must have a
@@ -38582,6 +39382,9 @@ module Google
38582
39382
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
38583
39383
  # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
38584
39384
  # within defaultRouteAction.
39385
+ # defaultRouteAction has no effect when the backend service is referenced by a
39386
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
39387
+ # set to true.
38585
39388
  # Corresponds to the JSON property `defaultRouteAction`
38586
39389
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
38587
39390
  attr_accessor :default_route_action
@@ -38595,6 +39398,9 @@ module Google
38595
39398
  # specified.
38596
39399
  # Only one of defaultService, defaultUrlRedirect or defaultRouteAction.
38597
39400
  # weightedBackendService must be set.
39401
+ # defaultService has no effect when the backend service is referenced by a URL
39402
+ # map that is bound to target gRPC proxy that has validateForProxyless field set
39403
+ # to true.
38598
39404
  # Corresponds to the JSON property `defaultService`
38599
39405
  # @return [String]
38600
39406
  attr_accessor :default_service
@@ -38673,6 +39479,8 @@ module Google
38673
39479
  # The list of expected URL mapping tests. Request to update this UrlMap will
38674
39480
  # succeed only if all of the test cases pass. You can specify a maximum of 100
38675
39481
  # tests per UrlMap.
39482
+ # Not supported when the backend service is referenced by a URL map that is
39483
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
38676
39484
  # Corresponds to the JSON property `tests`
38677
39485
  # @return [Array<Google::Apis::ComputeAlpha::UrlMapTest>]
38678
39486
  attr_accessor :tests
@@ -39155,6 +39963,10 @@ module Google
39155
39963
  # Traffic Director.
39156
39964
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
39157
39965
  # regionUrlMaps are used by internal HTTP(S) load balancers.
39966
+ # For a list of supported URL map features by load balancer type, see the Load
39967
+ # balancing features: Routing and traffic management table.
39968
+ # For a list of supported URL map features for Traffic Director, see the
39969
+ # Traffic Director features: Routing and traffic management table.
39158
39970
  # This resource defines mappings from host names and URL paths to either a
39159
39971
  # backend service or a backend bucket.
39160
39972
  # To use the global urlMaps resource, the backend service must have a
@@ -39496,6 +40308,11 @@ module Google
39496
40308
  # @return [Fixnum]
39497
40309
  attr_accessor :num_total_nat_ports
39498
40310
 
40311
+ # Information about mappings provided by rules in this NAT.
40312
+ # Corresponds to the JSON property `ruleMappings`
40313
+ # @return [Array<Google::Apis::ComputeAlpha::VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings>]
40314
+ attr_accessor :rule_mappings
40315
+
39499
40316
  # Alias IP range for this interface endpoint. It will be a private (RFC 1918) IP
39500
40317
  # range. Examples: "10.33.4.55/32", or "192.168.5.0/24".
39501
40318
  # Corresponds to the JSON property `sourceAliasIpRange`
@@ -39517,11 +40334,62 @@ module Google
39517
40334
  @nat_ip_port_ranges = args[:nat_ip_port_ranges] if args.key?(:nat_ip_port_ranges)
39518
40335
  @num_total_drain_nat_ports = args[:num_total_drain_nat_ports] if args.key?(:num_total_drain_nat_ports)
39519
40336
  @num_total_nat_ports = args[:num_total_nat_ports] if args.key?(:num_total_nat_ports)
40337
+ @rule_mappings = args[:rule_mappings] if args.key?(:rule_mappings)
39520
40338
  @source_alias_ip_range = args[:source_alias_ip_range] if args.key?(:source_alias_ip_range)
39521
40339
  @source_virtual_ip = args[:source_virtual_ip] if args.key?(:source_virtual_ip)
39522
40340
  end
39523
40341
  end
39524
40342
 
40343
+ # Contains information of NAT Mappings provided by a NAT Rule.
40344
+ class VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings
40345
+ include Google::Apis::Core::Hashable
40346
+
40347
+ # List of all drain IP:port-range mappings assigned to this interface by this
40348
+ # rule. These ranges are inclusive, that is, both the first and the last ports
40349
+ # can be used for NAT. Example: ["2.2.2.2:12345-12355", "1.1.1.1:2234-2234"].
40350
+ # Corresponds to the JSON property `drainNatIpPortRanges`
40351
+ # @return [Array<String>]
40352
+ attr_accessor :drain_nat_ip_port_ranges
40353
+
40354
+ # A list of all IP:port-range mappings assigned to this interface by this rule.
40355
+ # These ranges are inclusive, that is, both the first and the last ports can be
40356
+ # used for NAT. Example: ["2.2.2.2:12345-12355", "1.1.1.1:2234-2234"].
40357
+ # Corresponds to the JSON property `natIpPortRanges`
40358
+ # @return [Array<String>]
40359
+ attr_accessor :nat_ip_port_ranges
40360
+
40361
+ # Total number of drain ports across all NAT IPs allocated to this interface by
40362
+ # this rule. It equals the aggregated port number in the field
40363
+ # drain_nat_ip_port_ranges.
40364
+ # Corresponds to the JSON property `numTotalDrainNatPorts`
40365
+ # @return [Fixnum]
40366
+ attr_accessor :num_total_drain_nat_ports
40367
+
40368
+ # Total number of ports across all NAT IPs allocated to this interface by this
40369
+ # rule. It equals the aggregated port number in the field nat_ip_port_ranges.
40370
+ # Corresponds to the JSON property `numTotalNatPorts`
40371
+ # @return [Fixnum]
40372
+ attr_accessor :num_total_nat_ports
40373
+
40374
+ # Rule number of the NAT Rule.
40375
+ # Corresponds to the JSON property `ruleNumber`
40376
+ # @return [Fixnum]
40377
+ attr_accessor :rule_number
40378
+
40379
+ def initialize(**args)
40380
+ update!(**args)
40381
+ end
40382
+
40383
+ # Update properties of this object
40384
+ def update!(**args)
40385
+ @drain_nat_ip_port_ranges = args[:drain_nat_ip_port_ranges] if args.key?(:drain_nat_ip_port_ranges)
40386
+ @nat_ip_port_ranges = args[:nat_ip_port_ranges] if args.key?(:nat_ip_port_ranges)
40387
+ @num_total_drain_nat_ports = args[:num_total_drain_nat_ports] if args.key?(:num_total_drain_nat_ports)
40388
+ @num_total_nat_ports = args[:num_total_nat_ports] if args.key?(:num_total_nat_ports)
40389
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
40390
+ end
40391
+ end
40392
+
39525
40393
  # Contains a list of VmEndpointNatMappings.
39526
40394
  class VmEndpointNatMappingsList
39527
40395
  include Google::Apis::Core::Hashable
@@ -40115,6 +40983,14 @@ module Google
40115
40983
  # @return [Fixnum]
40116
40984
  attr_accessor :id
40117
40985
 
40986
+ # URL of the interconnect attachment resource. When the value of this field is
40987
+ # present, the VPN Gateway will be used for IPsec over Interconnect; all Egress
40988
+ # or Ingress traffic for this VPN Gateway interface will go through the
40989
+ # specified interconnect attachment resource.
40990
+ # Corresponds to the JSON property `interconnectAttachment`
40991
+ # @return [String]
40992
+ attr_accessor :interconnect_attachment
40993
+
40118
40994
  # [Output Only] The external IP address for this VPN gateway interface.
40119
40995
  # Corresponds to the JSON property `ipAddress`
40120
40996
  # @return [String]
@@ -40127,6 +41003,7 @@ module Google
40127
41003
  # Update properties of this object
40128
41004
  def update!(**args)
40129
41005
  @id = args[:id] if args.key?(:id)
41006
+ @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment)
40130
41007
  @ip_address = args[:ip_address] if args.key?(:ip_address)
40131
41008
  end
40132
41009
  end
@@ -40242,7 +41119,7 @@ module Google
40242
41119
  end
40243
41120
 
40244
41121
  # Represents a Cloud VPN Tunnel resource.
40245
- # For more information about VPN, read the the Cloud VPN Overview. (==
41122
+ # For more information about VPN, read the the Cloud VPN Overview. (==
40246
41123
  # resource_for `$api_version`.vpnTunnels ==)
40247
41124
  class VpnTunnel
40248
41125
  include Google::Apis::Core::Hashable
@@ -41091,6 +41968,12 @@ module Google
41091
41968
  # @return [String]
41092
41969
  attr_accessor :status
41093
41970
 
41971
+ # [Output Only] Specifies whether this zone supports physical zone separation.
41972
+ # Corresponds to the JSON property `supportsPhysicalZoneSeparation`
41973
+ # @return [Boolean]
41974
+ attr_accessor :supports_physical_zone_separation
41975
+ alias_method :supports_physical_zone_separation?, :supports_physical_zone_separation
41976
+
41094
41977
  def initialize(**args)
41095
41978
  update!(**args)
41096
41979
  end
@@ -41107,6 +41990,7 @@ module Google
41107
41990
  @region = args[:region] if args.key?(:region)
41108
41991
  @self_link = args[:self_link] if args.key?(:self_link)
41109
41992
  @status = args[:status] if args.key?(:status)
41993
+ @supports_physical_zone_separation = args[:supports_physical_zone_separation] if args.key?(:supports_physical_zone_separation)
41110
41994
  end
41111
41995
  end
41112
41996