google-api-client 0.43.0 → 0.48.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (964) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/autoapprove.yml +49 -0
  3. data/.github/workflows/release-please.yml +77 -0
  4. data/.gitignore +2 -0
  5. data/.kokoro/trampoline.sh +0 -0
  6. data/CHANGELOG.md +1066 -184
  7. data/Gemfile +1 -0
  8. data/Rakefile +31 -3
  9. data/api_list_config.yaml +8 -0
  10. data/api_names.yaml +1 -0
  11. data/bin/generate-api +77 -15
  12. data/docs/oauth-server.md +4 -6
  13. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +7 -9
  14. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +2 -2
  15. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +1 -1
  16. data/generated/google/apis/accessapproval_v1/classes.rb +60 -86
  17. data/generated/google/apis/accessapproval_v1/service.rb +93 -132
  18. data/generated/google/apis/accessapproval_v1.rb +1 -1
  19. data/generated/google/apis/accesscontextmanager_v1/classes.rb +266 -236
  20. data/generated/google/apis/accesscontextmanager_v1/representations.rb +30 -0
  21. data/generated/google/apis/accesscontextmanager_v1/service.rb +308 -171
  22. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  23. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +153 -184
  24. data/generated/google/apis/accesscontextmanager_v1beta/service.rb +82 -111
  25. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  26. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +47 -36
  27. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  28. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  29. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +72 -2
  30. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +33 -0
  31. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  32. data/generated/google/apis/adexperiencereport_v1.rb +1 -1
  33. data/generated/google/apis/admin_datatransfer_v1/classes.rb +16 -4
  34. data/generated/google/apis/admin_datatransfer_v1/service.rb +30 -48
  35. data/generated/google/apis/admin_datatransfer_v1.rb +6 -4
  36. data/generated/google/apis/admin_directory_v1/classes.rb +344 -242
  37. data/generated/google/apis/admin_directory_v1/representations.rb +62 -39
  38. data/generated/google/apis/admin_directory_v1/service.rb +607 -998
  39. data/generated/google/apis/admin_directory_v1.rb +6 -8
  40. data/generated/google/apis/admin_reports_v1/classes.rb +31 -33
  41. data/generated/google/apis/admin_reports_v1/service.rb +131 -187
  42. data/generated/google/apis/admin_reports_v1.rb +6 -5
  43. data/generated/google/apis/admob_v1/classes.rb +31 -31
  44. data/generated/google/apis/admob_v1/service.rb +2 -1
  45. data/generated/google/apis/admob_v1.rb +6 -2
  46. data/generated/google/apis/adsense_v1_4/service.rb +4 -1
  47. data/generated/google/apis/adsense_v1_4.rb +1 -1
  48. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  49. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +1361 -0
  50. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +610 -0
  51. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +2134 -0
  52. data/generated/google/apis/analyticsadmin_v1alpha.rb +43 -0
  53. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +1655 -0
  54. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +806 -0
  55. data/generated/google/apis/analyticsdata_v1alpha/service.rb +261 -0
  56. data/generated/google/apis/analyticsdata_v1alpha.rb +37 -0
  57. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  58. data/generated/google/apis/androidenterprise_v1/service.rb +2 -2
  59. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  60. data/generated/google/apis/androidmanagement_v1/classes.rb +115 -75
  61. data/generated/google/apis/androidmanagement_v1/representations.rb +17 -0
  62. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  63. data/generated/google/apis/androidpublisher_v3/classes.rb +9 -1
  64. data/generated/google/apis/androidpublisher_v3/representations.rb +1 -0
  65. data/generated/google/apis/androidpublisher_v3/service.rb +2 -2
  66. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  67. data/generated/google/apis/apigateway_v1beta/classes.rb +1162 -0
  68. data/generated/google/apis/{memcache_v1 → apigateway_v1beta}/representations.rb +156 -157
  69. data/generated/google/apis/apigateway_v1beta/service.rb +1172 -0
  70. data/generated/google/apis/apigateway_v1beta.rb +34 -0
  71. data/generated/google/apis/apigee_v1/classes.rb +630 -88
  72. data/generated/google/apis/apigee_v1/representations.rb +209 -1
  73. data/generated/google/apis/apigee_v1/service.rb +401 -74
  74. data/generated/google/apis/apigee_v1.rb +6 -7
  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 -47
  78. data/generated/google/apis/appengine_v1.rb +1 -1
  79. data/generated/google/apis/appengine_v1alpha/classes.rb +9 -11
  80. data/generated/google/apis/appengine_v1alpha.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 -47
  84. data/generated/google/apis/appengine_v1beta.rb +1 -1
  85. data/generated/google/apis/appsmarket_v2/classes.rb +14 -16
  86. data/generated/google/apis/appsmarket_v2.rb +1 -1
  87. data/generated/google/apis/area120tables_v1alpha1/classes.rb +423 -0
  88. data/generated/google/apis/area120tables_v1alpha1/representations.rb +248 -0
  89. data/generated/google/apis/area120tables_v1alpha1/service.rb +381 -0
  90. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  91. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +249 -337
  92. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +2 -0
  93. data/generated/google/apis/artifactregistry_v1beta1/service.rb +44 -57
  94. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  95. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +722 -0
  96. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +359 -0
  97. data/generated/google/apis/assuredworkloads_v1beta1/service.rb +328 -0
  98. data/generated/google/apis/{accessapproval_v1beta1.rb → assuredworkloads_v1beta1.rb} +8 -8
  99. data/generated/google/apis/bigquery_v2/classes.rb +593 -576
  100. data/generated/google/apis/bigquery_v2/representations.rb +85 -0
  101. data/generated/google/apis/bigquery_v2/service.rb +79 -41
  102. data/generated/google/apis/bigquery_v2.rb +1 -1
  103. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +192 -337
  104. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +29 -32
  105. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  106. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +132 -158
  107. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +232 -282
  108. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  109. data/generated/google/apis/bigqueryreservation_v1/classes.rb +116 -123
  110. data/generated/google/apis/bigqueryreservation_v1/representations.rb +2 -0
  111. data/generated/google/apis/bigqueryreservation_v1/service.rb +137 -183
  112. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  113. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +88 -100
  114. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +77 -100
  115. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  116. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +93 -98
  117. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +2 -0
  118. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +114 -151
  119. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  120. data/generated/google/apis/bigtableadmin_v1/classes.rb +137 -119
  121. data/generated/google/apis/bigtableadmin_v1/representations.rb +29 -0
  122. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  123. data/generated/google/apis/bigtableadmin_v2/classes.rb +455 -607
  124. data/generated/google/apis/bigtableadmin_v2/representations.rb +29 -0
  125. data/generated/google/apis/bigtableadmin_v2/service.rb +194 -247
  126. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  127. data/generated/google/apis/billingbudgets_v1/classes.rb +373 -0
  128. data/generated/google/apis/billingbudgets_v1/representations.rb +171 -0
  129. data/generated/google/apis/billingbudgets_v1/service.rb +249 -0
  130. data/generated/google/apis/billingbudgets_v1.rb +38 -0
  131. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +27 -6
  132. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +2 -0
  133. data/generated/google/apis/billingbudgets_v1beta1.rb +4 -1
  134. data/generated/google/apis/binaryauthorization_v1/classes.rb +434 -355
  135. data/generated/google/apis/binaryauthorization_v1/representations.rb +75 -0
  136. data/generated/google/apis/binaryauthorization_v1/service.rb +109 -89
  137. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  138. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +434 -355
  139. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +75 -0
  140. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +109 -89
  141. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  142. data/generated/google/apis/books_v1/service.rb +54 -54
  143. data/generated/google/apis/books_v1.rb +1 -1
  144. data/generated/google/apis/calendar_v3/classes.rb +13 -10
  145. data/generated/google/apis/calendar_v3.rb +1 -1
  146. data/generated/google/apis/chat_v1/classes.rb +173 -116
  147. data/generated/google/apis/chat_v1/representations.rb +36 -0
  148. data/generated/google/apis/chat_v1/service.rb +30 -42
  149. data/generated/google/apis/chat_v1.rb +1 -1
  150. data/generated/google/apis/civicinfo_v2/classes.rb +18 -32
  151. data/generated/google/apis/civicinfo_v2/representations.rb +2 -3
  152. data/generated/google/apis/civicinfo_v2.rb +1 -1
  153. data/generated/google/apis/classroom_v1/classes.rb +153 -21
  154. data/generated/google/apis/classroom_v1/representations.rb +43 -0
  155. data/generated/google/apis/classroom_v1/service.rb +240 -0
  156. data/generated/google/apis/classroom_v1.rb +7 -1
  157. data/generated/google/apis/cloudasset_v1/classes.rb +1461 -1039
  158. data/generated/google/apis/cloudasset_v1/representations.rb +320 -0
  159. data/generated/google/apis/cloudasset_v1/service.rb +296 -167
  160. data/generated/google/apis/cloudasset_v1.rb +1 -1
  161. data/generated/google/apis/cloudasset_v1beta1/classes.rb +531 -777
  162. data/generated/google/apis/cloudasset_v1beta1/service.rb +59 -75
  163. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  164. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +204 -349
  165. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +35 -47
  166. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  167. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +222 -276
  168. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +75 -93
  169. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  170. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +481 -720
  171. data/generated/google/apis/cloudasset_v1p5beta1/service.rb +25 -28
  172. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  173. data/generated/google/apis/cloudbilling_v1/classes.rb +285 -446
  174. data/generated/google/apis/cloudbilling_v1/service.rb +104 -124
  175. data/generated/google/apis/cloudbilling_v1.rb +7 -1
  176. data/generated/google/apis/cloudbuild_v1/classes.rb +339 -344
  177. data/generated/google/apis/cloudbuild_v1/representations.rb +8 -0
  178. data/generated/google/apis/cloudbuild_v1/service.rb +277 -67
  179. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  180. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +291 -329
  181. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +2 -0
  182. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +15 -18
  183. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  184. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +277 -313
  185. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +2 -0
  186. data/generated/google/apis/cloudbuild_v1alpha2/service.rb +22 -28
  187. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  188. data/generated/google/apis/clouddebugger_v2/classes.rb +185 -252
  189. data/generated/google/apis/clouddebugger_v2/service.rb +53 -59
  190. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  191. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +127 -156
  192. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +53 -69
  193. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  194. data/generated/google/apis/cloudfunctions_v1/classes.rb +335 -494
  195. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  196. data/generated/google/apis/cloudfunctions_v1/service.rb +79 -93
  197. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  198. data/generated/google/apis/cloudidentity_v1/classes.rb +989 -107
  199. data/generated/google/apis/cloudidentity_v1/representations.rb +371 -0
  200. data/generated/google/apis/cloudidentity_v1/service.rb +883 -88
  201. data/generated/google/apis/cloudidentity_v1.rb +4 -1
  202. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1236 -307
  203. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +424 -21
  204. data/generated/google/apis/cloudidentity_v1beta1/service.rb +921 -96
  205. data/generated/google/apis/cloudidentity_v1beta1.rb +4 -1
  206. data/generated/google/apis/cloudiot_v1/classes.rb +270 -373
  207. data/generated/google/apis/cloudiot_v1/representations.rb +1 -0
  208. data/generated/google/apis/cloudiot_v1/service.rb +147 -154
  209. data/generated/google/apis/cloudiot_v1.rb +1 -1
  210. data/generated/google/apis/cloudkms_v1/classes.rb +509 -692
  211. data/generated/google/apis/cloudkms_v1/representations.rb +18 -0
  212. data/generated/google/apis/cloudkms_v1/service.rb +170 -216
  213. data/generated/google/apis/cloudkms_v1.rb +1 -1
  214. data/generated/google/apis/cloudprofiler_v2/classes.rb +28 -33
  215. data/generated/google/apis/cloudprofiler_v2/service.rb +17 -19
  216. data/generated/google/apis/cloudprofiler_v2.rb +1 -1
  217. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +14 -7
  218. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +1 -0
  219. data/generated/google/apis/cloudresourcemanager_v1/service.rb +62 -60
  220. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  221. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +11 -4
  222. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +1 -0
  223. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +26 -25
  224. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  225. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +7 -0
  226. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +1 -0
  227. data/generated/google/apis/cloudresourcemanager_v2/service.rb +7 -7
  228. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  229. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +7 -0
  230. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +1 -0
  231. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +7 -7
  232. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  233. data/generated/google/apis/cloudscheduler_v1/classes.rb +272 -383
  234. data/generated/google/apis/cloudscheduler_v1/service.rb +45 -62
  235. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  236. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +273 -384
  237. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +45 -62
  238. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  239. data/generated/google/apis/cloudsearch_v1/classes.rb +651 -781
  240. data/generated/google/apis/cloudsearch_v1/representations.rb +15 -0
  241. data/generated/google/apis/cloudsearch_v1/service.rb +286 -326
  242. data/generated/google/apis/cloudsearch_v1.rb +2 -2
  243. data/generated/google/apis/cloudshell_v1/classes.rb +256 -105
  244. data/generated/google/apis/cloudshell_v1/representations.rb +143 -10
  245. data/generated/google/apis/cloudshell_v1/service.rb +198 -25
  246. data/generated/google/apis/cloudshell_v1.rb +1 -1
  247. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +69 -78
  248. data/generated/google/apis/cloudshell_v1alpha1/service.rb +20 -24
  249. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  250. data/generated/google/apis/cloudtasks_v2/classes.rb +612 -933
  251. data/generated/google/apis/cloudtasks_v2/representations.rb +1 -0
  252. data/generated/google/apis/cloudtasks_v2/service.rb +146 -217
  253. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  254. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +608 -964
  255. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +1 -0
  256. data/generated/google/apis/cloudtasks_v2beta2/service.rb +178 -270
  257. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  258. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +616 -938
  259. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +1 -0
  260. data/generated/google/apis/cloudtasks_v2beta3/service.rb +146 -217
  261. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  262. data/generated/google/apis/cloudtrace_v1/classes.rb +39 -61
  263. data/generated/google/apis/cloudtrace_v1/service.rb +37 -51
  264. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  265. data/generated/google/apis/cloudtrace_v2/classes.rb +92 -107
  266. data/generated/google/apis/cloudtrace_v2/service.rb +8 -11
  267. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  268. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +23 -33
  269. data/generated/google/apis/cloudtrace_v2beta1/service.rb +30 -37
  270. data/generated/google/apis/cloudtrace_v2beta1.rb +1 -1
  271. data/generated/google/apis/composer_v1/classes.rb +189 -242
  272. data/generated/google/apis/composer_v1/service.rb +79 -150
  273. data/generated/google/apis/composer_v1.rb +1 -1
  274. data/generated/google/apis/composer_v1beta1/classes.rb +203 -262
  275. data/generated/google/apis/composer_v1beta1/service.rb +94 -179
  276. data/generated/google/apis/composer_v1beta1.rb +1 -1
  277. data/generated/google/apis/compute_alpha/classes.rb +1227 -186
  278. data/generated/google/apis/compute_alpha/representations.rb +235 -8
  279. data/generated/google/apis/compute_alpha/service.rb +2009 -1024
  280. data/generated/google/apis/compute_alpha.rb +1 -1
  281. data/generated/google/apis/compute_beta/classes.rb +1080 -108
  282. data/generated/google/apis/compute_beta/representations.rb +212 -2
  283. data/generated/google/apis/compute_beta/service.rb +1413 -741
  284. data/generated/google/apis/compute_beta.rb +1 -1
  285. data/generated/google/apis/compute_v1/classes.rb +1512 -106
  286. data/generated/google/apis/compute_v1/representations.rb +470 -1
  287. data/generated/google/apis/compute_v1/service.rb +1625 -285
  288. data/generated/google/apis/compute_v1.rb +1 -1
  289. data/generated/google/apis/container_v1/classes.rb +982 -965
  290. data/generated/google/apis/container_v1/representations.rb +60 -0
  291. data/generated/google/apis/container_v1/service.rb +435 -502
  292. data/generated/google/apis/container_v1.rb +1 -1
  293. data/generated/google/apis/container_v1beta1/classes.rb +1106 -1044
  294. data/generated/google/apis/container_v1beta1/representations.rb +91 -0
  295. data/generated/google/apis/container_v1beta1/service.rb +403 -466
  296. data/generated/google/apis/container_v1beta1.rb +1 -1
  297. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +463 -596
  298. data/generated/google/apis/containeranalysis_v1alpha1/representations.rb +1 -0
  299. data/generated/google/apis/containeranalysis_v1alpha1/service.rb +149 -169
  300. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  301. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +461 -613
  302. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +1 -0
  303. data/generated/google/apis/containeranalysis_v1beta1/service.rb +75 -90
  304. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  305. data/generated/google/apis/content_v2/classes.rb +515 -1219
  306. data/generated/google/apis/content_v2/service.rb +377 -650
  307. data/generated/google/apis/content_v2.rb +3 -4
  308. data/generated/google/apis/content_v2_1/classes.rb +1108 -1058
  309. data/generated/google/apis/content_v2_1/representations.rb +288 -0
  310. data/generated/google/apis/content_v2_1/service.rb +987 -795
  311. data/generated/google/apis/content_v2_1.rb +3 -4
  312. data/generated/google/apis/customsearch_v1/service.rb +2 -2
  313. data/generated/google/apis/customsearch_v1.rb +1 -1
  314. data/generated/google/apis/datacatalog_v1beta1/classes.rb +413 -573
  315. data/generated/google/apis/datacatalog_v1beta1/representations.rb +6 -0
  316. data/generated/google/apis/datacatalog_v1beta1/service.rb +319 -440
  317. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  318. data/generated/google/apis/dataflow_v1b3/classes.rb +1174 -973
  319. data/generated/google/apis/dataflow_v1b3/representations.rb +148 -0
  320. data/generated/google/apis/dataflow_v1b3/service.rb +308 -257
  321. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  322. data/generated/google/apis/datafusion_v1/classes.rb +283 -397
  323. data/generated/google/apis/datafusion_v1/representations.rb +5 -0
  324. data/generated/google/apis/datafusion_v1/service.rb +76 -89
  325. data/generated/google/apis/datafusion_v1.rb +5 -8
  326. data/generated/google/apis/datafusion_v1beta1/classes.rb +283 -397
  327. data/generated/google/apis/datafusion_v1beta1/representations.rb +5 -0
  328. data/generated/google/apis/datafusion_v1beta1/service.rb +81 -95
  329. data/generated/google/apis/datafusion_v1beta1.rb +5 -8
  330. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  331. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  332. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  333. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  334. data/generated/google/apis/dataproc_v1/classes.rb +97 -13
  335. data/generated/google/apis/dataproc_v1/representations.rb +34 -0
  336. data/generated/google/apis/dataproc_v1.rb +1 -1
  337. data/generated/google/apis/dataproc_v1beta2/classes.rb +117 -9
  338. data/generated/google/apis/dataproc_v1beta2/representations.rb +49 -0
  339. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  340. data/generated/google/apis/datastore_v1/classes.rb +334 -476
  341. data/generated/google/apis/datastore_v1/service.rb +52 -63
  342. data/generated/google/apis/datastore_v1.rb +1 -1
  343. data/generated/google/apis/datastore_v1beta1/classes.rb +150 -217
  344. data/generated/google/apis/datastore_v1beta1/service.rb +11 -12
  345. data/generated/google/apis/datastore_v1beta1.rb +1 -1
  346. data/generated/google/apis/datastore_v1beta3/classes.rb +259 -375
  347. data/generated/google/apis/datastore_v1beta3/service.rb +1 -2
  348. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  349. data/generated/google/apis/deploymentmanager_v2/classes.rb +203 -558
  350. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -132
  351. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  352. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  353. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +247 -609
  354. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -132
  355. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  356. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  357. data/generated/google/apis/dfareporting_v3_3/classes.rb +162 -339
  358. data/generated/google/apis/dfareporting_v3_3/service.rb +646 -1262
  359. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  360. data/generated/google/apis/dfareporting_v3_4/classes.rb +184 -350
  361. data/generated/google/apis/dfareporting_v3_4/representations.rb +1 -0
  362. data/generated/google/apis/dfareporting_v3_4/service.rb +681 -1261
  363. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  364. data/generated/google/apis/dialogflow_v2/classes.rb +746 -217
  365. data/generated/google/apis/dialogflow_v2/representations.rb +318 -67
  366. data/generated/google/apis/dialogflow_v2.rb +1 -1
  367. data/generated/google/apis/dialogflow_v2beta1/classes.rb +764 -233
  368. data/generated/google/apis/dialogflow_v2beta1/representations.rb +318 -67
  369. data/generated/google/apis/dialogflow_v2beta1/service.rb +556 -331
  370. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  371. data/generated/google/apis/dialogflow_v3beta1/classes.rb +8816 -0
  372. data/generated/google/apis/dialogflow_v3beta1/representations.rb +3725 -0
  373. data/generated/google/apis/dialogflow_v3beta1/service.rb +2825 -0
  374. data/generated/google/apis/dialogflow_v3beta1.rb +38 -0
  375. data/generated/google/apis/digitalassetlinks_v1/classes.rb +66 -92
  376. data/generated/google/apis/digitalassetlinks_v1/service.rb +131 -188
  377. data/generated/google/apis/digitalassetlinks_v1.rb +1 -1
  378. data/generated/google/apis/displayvideo_v1/classes.rb +271 -38
  379. data/generated/google/apis/displayvideo_v1/representations.rb +83 -0
  380. data/generated/google/apis/displayvideo_v1/service.rb +287 -32
  381. data/generated/google/apis/displayvideo_v1.rb +1 -1
  382. data/generated/google/apis/displayvideo_v1beta/classes.rb +146 -0
  383. data/generated/google/apis/displayvideo_v1beta/representations.rb +72 -0
  384. data/generated/google/apis/displayvideo_v1beta/service.rb +161 -0
  385. data/generated/google/apis/displayvideo_v1beta.rb +38 -0
  386. data/generated/google/apis/displayvideo_v1beta2/classes.rb +146 -0
  387. data/generated/google/apis/displayvideo_v1beta2/representations.rb +72 -0
  388. data/generated/google/apis/displayvideo_v1beta2/service.rb +130 -0
  389. data/generated/google/apis/displayvideo_v1beta2.rb +38 -0
  390. data/generated/google/apis/displayvideo_v1dev/classes.rb +146 -0
  391. data/generated/google/apis/displayvideo_v1dev/representations.rb +72 -0
  392. data/generated/google/apis/displayvideo_v1dev/service.rb +130 -0
  393. data/generated/google/apis/displayvideo_v1dev.rb +38 -0
  394. data/generated/google/apis/dlp_v2/classes.rb +1111 -1310
  395. data/generated/google/apis/dlp_v2/representations.rb +16 -0
  396. data/generated/google/apis/dlp_v2/service.rb +962 -905
  397. data/generated/google/apis/dlp_v2.rb +1 -1
  398. data/generated/google/apis/dns_v1/classes.rb +356 -198
  399. data/generated/google/apis/dns_v1/representations.rb +83 -0
  400. data/generated/google/apis/dns_v1/service.rb +83 -98
  401. data/generated/google/apis/dns_v1.rb +2 -2
  402. data/generated/google/apis/dns_v1beta2/classes.rb +362 -206
  403. data/generated/google/apis/dns_v1beta2/representations.rb +83 -0
  404. data/generated/google/apis/dns_v1beta2/service.rb +83 -98
  405. data/generated/google/apis/dns_v1beta2.rb +2 -2
  406. data/generated/google/apis/docs_v1/classes.rb +894 -1229
  407. data/generated/google/apis/docs_v1/service.rb +17 -22
  408. data/generated/google/apis/docs_v1.rb +1 -1
  409. data/generated/google/apis/documentai_v1beta2/classes.rb +2253 -824
  410. data/generated/google/apis/documentai_v1beta2/representations.rb +701 -0
  411. data/generated/google/apis/documentai_v1beta2/service.rb +22 -24
  412. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  413. data/generated/google/apis/documentai_v1beta3/classes.rb +6149 -0
  414. data/generated/google/apis/documentai_v1beta3/representations.rb +2666 -0
  415. data/generated/google/apis/documentai_v1beta3/service.rb +263 -0
  416. data/generated/google/apis/{securitycenter_v1p1alpha1.rb → documentai_v1beta3.rb} +11 -10
  417. data/generated/google/apis/domains_v1alpha2/classes.rb +1540 -0
  418. data/generated/google/apis/domains_v1alpha2/representations.rb +606 -0
  419. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  420. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  421. data/generated/google/apis/domains_v1beta1/classes.rb +1540 -0
  422. data/generated/google/apis/domains_v1beta1/representations.rb +606 -0
  423. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  424. data/generated/google/apis/domains_v1beta1.rb +34 -0
  425. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +6 -12
  426. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +33 -64
  427. data/generated/google/apis/doubleclickbidmanager_v1.rb +3 -2
  428. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +13 -20
  429. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +33 -64
  430. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +3 -2
  431. data/generated/google/apis/doubleclicksearch_v2/service.rb +2 -2
  432. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  433. data/generated/google/apis/drive_v2/classes.rb +18 -7
  434. data/generated/google/apis/drive_v2/representations.rb +1 -0
  435. data/generated/google/apis/drive_v2/service.rb +79 -15
  436. data/generated/google/apis/drive_v2.rb +1 -1
  437. data/generated/google/apis/drive_v3/classes.rb +18 -8
  438. data/generated/google/apis/drive_v3/representations.rb +1 -0
  439. data/generated/google/apis/drive_v3/service.rb +59 -11
  440. data/generated/google/apis/drive_v3.rb +1 -1
  441. data/generated/google/apis/eventarc_v1beta1/classes.rb +931 -0
  442. data/generated/google/apis/eventarc_v1beta1/representations.rb +379 -0
  443. data/generated/google/apis/{memcache_v1 → eventarc_v1beta1}/service.rb +236 -215
  444. data/generated/google/apis/eventarc_v1beta1.rb +34 -0
  445. data/generated/google/apis/file_v1/classes.rb +155 -174
  446. data/generated/google/apis/file_v1/service.rb +43 -52
  447. data/generated/google/apis/file_v1.rb +1 -1
  448. data/generated/google/apis/file_v1beta1/classes.rb +335 -194
  449. data/generated/google/apis/file_v1beta1/representations.rb +55 -0
  450. data/generated/google/apis/file_v1beta1/service.rb +267 -55
  451. data/generated/google/apis/file_v1beta1.rb +1 -1
  452. data/generated/google/apis/firebase_v1beta1/classes.rb +33 -51
  453. data/generated/google/apis/firebase_v1beta1/representations.rb +2 -16
  454. data/generated/google/apis/firebase_v1beta1/service.rb +21 -1
  455. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  456. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  457. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +188 -0
  458. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +83 -0
  459. data/generated/google/apis/firebasehosting_v1beta1/service.rb +418 -4
  460. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  461. data/generated/google/apis/firebaseml_v1beta2/classes.rb +8 -8
  462. data/generated/google/apis/firebaseml_v1beta2/representations.rb +1 -1
  463. data/generated/google/apis/firebaseml_v1beta2.rb +1 -1
  464. data/generated/google/apis/firebaserules_v1/classes.rb +102 -137
  465. data/generated/google/apis/firebaserules_v1/service.rb +87 -110
  466. data/generated/google/apis/firebaserules_v1.rb +1 -1
  467. data/generated/google/apis/firestore_v1/classes.rb +406 -502
  468. data/generated/google/apis/firestore_v1/service.rb +165 -201
  469. data/generated/google/apis/firestore_v1.rb +1 -1
  470. data/generated/google/apis/firestore_v1beta1/classes.rb +338 -413
  471. data/generated/google/apis/firestore_v1beta1/service.rb +106 -122
  472. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  473. data/generated/google/apis/firestore_v1beta2/classes.rb +135 -165
  474. data/generated/google/apis/firestore_v1beta2/service.rb +65 -86
  475. data/generated/google/apis/firestore_v1beta2.rb +1 -1
  476. data/generated/google/apis/fitness_v1/classes.rb +982 -0
  477. data/generated/google/apis/fitness_v1/representations.rb +398 -0
  478. data/generated/google/apis/fitness_v1/service.rb +628 -0
  479. data/generated/google/apis/fitness_v1.rb +97 -0
  480. data/generated/google/apis/games_configuration_v1configuration/classes.rb +2 -3
  481. data/generated/google/apis/games_configuration_v1configuration/service.rb +6 -6
  482. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  483. data/generated/google/apis/games_management_v1management/classes.rb +14 -20
  484. data/generated/google/apis/games_management_v1management/service.rb +35 -36
  485. data/generated/google/apis/games_management_v1management.rb +2 -3
  486. data/generated/google/apis/games_v1/classes.rb +376 -83
  487. data/generated/google/apis/games_v1/representations.rb +118 -0
  488. data/generated/google/apis/games_v1/service.rb +118 -90
  489. data/generated/google/apis/games_v1.rb +2 -3
  490. data/generated/google/apis/gameservices_v1/classes.rb +22 -14
  491. data/generated/google/apis/gameservices_v1/representations.rb +1 -0
  492. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  493. data/generated/google/apis/gameservices_v1.rb +1 -1
  494. data/generated/google/apis/gameservices_v1beta/classes.rb +22 -14
  495. data/generated/google/apis/gameservices_v1beta/representations.rb +1 -0
  496. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  497. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  498. data/generated/google/apis/genomics_v1/classes.rb +70 -76
  499. data/generated/google/apis/genomics_v1/service.rb +28 -43
  500. data/generated/google/apis/genomics_v1.rb +1 -1
  501. data/generated/google/apis/genomics_v1alpha2/classes.rb +223 -290
  502. data/generated/google/apis/genomics_v1alpha2/service.rb +54 -76
  503. data/generated/google/apis/genomics_v1alpha2.rb +1 -1
  504. data/generated/google/apis/genomics_v2alpha1/classes.rb +356 -275
  505. data/generated/google/apis/genomics_v2alpha1/representations.rb +48 -0
  506. data/generated/google/apis/genomics_v2alpha1/service.rb +47 -66
  507. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  508. data/generated/google/apis/gmail_v1/classes.rb +37 -43
  509. data/generated/google/apis/gmail_v1/service.rb +5 -4
  510. data/generated/google/apis/gmail_v1.rb +1 -1
  511. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +11 -11
  512. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +2 -2
  513. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  514. data/generated/google/apis/groupsmigration_v1/representations.rb +40 -0
  515. data/generated/google/apis/groupsmigration_v1/service.rb +100 -0
  516. data/generated/google/apis/groupsmigration_v1.rb +35 -0
  517. data/generated/google/apis/healthcare_v1/classes.rb +637 -826
  518. data/generated/google/apis/healthcare_v1/representations.rb +32 -0
  519. data/generated/google/apis/healthcare_v1/service.rb +842 -855
  520. data/generated/google/apis/healthcare_v1.rb +1 -1
  521. data/generated/google/apis/healthcare_v1beta1/classes.rb +1937 -1299
  522. data/generated/google/apis/healthcare_v1beta1/representations.rb +534 -65
  523. data/generated/google/apis/healthcare_v1beta1/service.rb +2534 -1293
  524. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  525. data/generated/google/apis/homegraph_v1/classes.rb +76 -164
  526. data/generated/google/apis/homegraph_v1/service.rb +23 -35
  527. data/generated/google/apis/homegraph_v1.rb +4 -1
  528. data/generated/google/apis/iam_v1/classes.rb +395 -592
  529. data/generated/google/apis/iam_v1/representations.rb +1 -0
  530. data/generated/google/apis/iam_v1/service.rb +427 -555
  531. data/generated/google/apis/iam_v1.rb +1 -1
  532. data/generated/google/apis/iamcredentials_v1/classes.rb +75 -85
  533. data/generated/google/apis/iamcredentials_v1/service.rb +14 -13
  534. data/generated/google/apis/iamcredentials_v1.rb +3 -2
  535. data/generated/google/apis/iap_v1/classes.rb +253 -355
  536. data/generated/google/apis/iap_v1/representations.rb +1 -0
  537. data/generated/google/apis/iap_v1/service.rb +61 -71
  538. data/generated/google/apis/iap_v1.rb +1 -1
  539. data/generated/google/apis/iap_v1beta1/classes.rb +164 -254
  540. data/generated/google/apis/iap_v1beta1/representations.rb +1 -0
  541. data/generated/google/apis/iap_v1beta1/service.rb +17 -19
  542. data/generated/google/apis/iap_v1beta1.rb +1 -1
  543. data/generated/google/apis/indexing_v3/classes.rb +11 -11
  544. data/generated/google/apis/indexing_v3.rb +1 -1
  545. data/generated/google/apis/jobs_v2/classes.rb +1584 -1086
  546. data/generated/google/apis/jobs_v2/representations.rb +272 -0
  547. data/generated/google/apis/jobs_v2/service.rb +85 -126
  548. data/generated/google/apis/jobs_v2.rb +1 -1
  549. data/generated/google/apis/jobs_v3/classes.rb +1559 -980
  550. data/generated/google/apis/jobs_v3/representations.rb +272 -0
  551. data/generated/google/apis/jobs_v3/service.rb +101 -139
  552. data/generated/google/apis/jobs_v3.rb +1 -1
  553. data/generated/google/apis/jobs_v3p1beta1/classes.rb +1521 -1023
  554. data/generated/google/apis/jobs_v3p1beta1/representations.rb +257 -0
  555. data/generated/google/apis/jobs_v3p1beta1/service.rb +103 -142
  556. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  557. data/generated/google/apis/kgsearch_v1/classes.rb +4 -4
  558. data/generated/google/apis/kgsearch_v1/service.rb +11 -11
  559. data/generated/google/apis/kgsearch_v1.rb +1 -1
  560. data/generated/google/apis/licensing_v1/classes.rb +1 -1
  561. data/generated/google/apis/licensing_v1/service.rb +56 -86
  562. data/generated/google/apis/licensing_v1.rb +4 -3
  563. data/generated/google/apis/lifesciences_v2beta/classes.rb +366 -290
  564. data/generated/google/apis/lifesciences_v2beta/representations.rb +47 -0
  565. data/generated/google/apis/lifesciences_v2beta/service.rb +30 -42
  566. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  567. data/generated/google/apis/localservices_v1/classes.rb +426 -0
  568. data/generated/google/apis/localservices_v1/representations.rb +174 -0
  569. data/generated/google/apis/localservices_v1/service.rb +199 -0
  570. data/generated/google/apis/{appsactivity_v1.rb → localservices_v1.rb} +8 -11
  571. data/generated/google/apis/logging_v2/classes.rb +306 -232
  572. data/generated/google/apis/logging_v2/representations.rb +79 -0
  573. data/generated/google/apis/logging_v2/service.rb +3307 -1579
  574. data/generated/google/apis/logging_v2.rb +1 -1
  575. data/generated/google/apis/managedidentities_v1/classes.rb +8 -1
  576. data/generated/google/apis/managedidentities_v1/representations.rb +1 -0
  577. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  578. data/generated/google/apis/managedidentities_v1.rb +1 -1
  579. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +87 -1
  580. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +34 -0
  581. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  582. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  583. data/generated/google/apis/managedidentities_v1beta1/classes.rb +88 -1
  584. data/generated/google/apis/managedidentities_v1beta1/representations.rb +34 -0
  585. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  586. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  587. data/generated/google/apis/manufacturers_v1/classes.rb +99 -109
  588. data/generated/google/apis/manufacturers_v1/service.rb +44 -55
  589. data/generated/google/apis/manufacturers_v1.rb +1 -1
  590. data/generated/google/apis/memcache_v1beta2/classes.rb +171 -250
  591. data/generated/google/apis/memcache_v1beta2/representations.rb +0 -19
  592. data/generated/google/apis/memcache_v1beta2/service.rb +60 -73
  593. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  594. data/generated/google/apis/ml_v1/classes.rb +1122 -1149
  595. data/generated/google/apis/ml_v1/representations.rb +82 -0
  596. data/generated/google/apis/ml_v1/service.rb +194 -253
  597. data/generated/google/apis/ml_v1.rb +1 -1
  598. data/generated/google/apis/monitoring_v1/classes.rb +107 -26
  599. data/generated/google/apis/monitoring_v1/representations.rb +35 -0
  600. data/generated/google/apis/monitoring_v1/service.rb +10 -11
  601. data/generated/google/apis/monitoring_v1.rb +1 -1
  602. data/generated/google/apis/monitoring_v3/classes.rb +303 -345
  603. data/generated/google/apis/monitoring_v3/representations.rb +18 -0
  604. data/generated/google/apis/monitoring_v3/service.rb +176 -146
  605. data/generated/google/apis/monitoring_v3.rb +1 -1
  606. data/generated/google/apis/networkmanagement_v1/classes.rb +273 -429
  607. data/generated/google/apis/networkmanagement_v1/service.rb +97 -120
  608. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  609. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +456 -429
  610. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +63 -0
  611. data/generated/google/apis/networkmanagement_v1beta1/service.rb +97 -120
  612. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  613. data/generated/google/apis/osconfig_v1/classes.rb +154 -902
  614. data/generated/google/apis/osconfig_v1/representations.rb +0 -337
  615. data/generated/google/apis/osconfig_v1/service.rb +26 -31
  616. data/generated/google/apis/osconfig_v1.rb +3 -3
  617. data/generated/google/apis/osconfig_v1beta/classes.rb +327 -411
  618. data/generated/google/apis/osconfig_v1beta/service.rb +43 -56
  619. data/generated/google/apis/osconfig_v1beta.rb +3 -3
  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_v1.rb +1 -1
  624. data/generated/google/apis/oslogin_v1alpha/classes.rb +16 -14
  625. data/generated/google/apis/oslogin_v1alpha/representations.rb +1 -0
  626. data/generated/google/apis/oslogin_v1alpha/service.rb +17 -17
  627. data/generated/google/apis/oslogin_v1alpha.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/oslogin_v1beta.rb +1 -1
  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/pagespeedonline_v5.rb +2 -2
  635. data/generated/google/apis/people_v1/classes.rb +173 -63
  636. data/generated/google/apis/people_v1/representations.rb +41 -0
  637. data/generated/google/apis/people_v1/service.rb +63 -61
  638. data/generated/google/apis/people_v1.rb +1 -1
  639. data/generated/google/apis/playablelocations_v3/classes.rb +114 -161
  640. data/generated/google/apis/playablelocations_v3/service.rb +10 -10
  641. data/generated/google/apis/playablelocations_v3.rb +1 -1
  642. data/generated/google/apis/playcustomapp_v1/service.rb +2 -2
  643. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  644. data/generated/google/apis/poly_v1/classes.rb +65 -79
  645. data/generated/google/apis/poly_v1/service.rb +50 -63
  646. data/generated/google/apis/poly_v1.rb +3 -4
  647. data/generated/google/apis/privateca_v1beta1/classes.rb +2466 -0
  648. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  649. data/generated/google/apis/privateca_v1beta1/service.rb +1487 -0
  650. data/generated/google/apis/privateca_v1beta1.rb +34 -0
  651. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +26 -0
  652. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +14 -0
  653. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +644 -56
  654. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  655. data/generated/google/apis/pubsub_v1/classes.rb +399 -518
  656. data/generated/google/apis/pubsub_v1/representations.rb +2 -0
  657. data/generated/google/apis/pubsub_v1/service.rb +221 -247
  658. data/generated/google/apis/pubsub_v1.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_v1beta1a.rb +1 -1
  662. data/generated/google/apis/pubsub_v1beta2/classes.rb +251 -354
  663. data/generated/google/apis/pubsub_v1beta2/representations.rb +1 -0
  664. data/generated/google/apis/pubsub_v1beta2/service.rb +96 -108
  665. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  666. data/generated/google/apis/pubsublite_v1/classes.rb +461 -0
  667. data/generated/google/apis/pubsublite_v1/representations.rb +261 -0
  668. data/generated/google/apis/pubsublite_v1/service.rb +558 -0
  669. data/generated/google/apis/{memcache_v1.rb → pubsublite_v1.rb} +8 -9
  670. data/generated/google/apis/realtimebidding_v1/classes.rb +84 -123
  671. data/generated/google/apis/realtimebidding_v1/representations.rb +18 -32
  672. data/generated/google/apis/realtimebidding_v1/service.rb +4 -1
  673. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  674. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +367 -456
  675. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -16
  676. data/generated/google/apis/recommendationengine_v1beta1/service.rb +140 -206
  677. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  678. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  679. data/generated/google/apis/recommender_v1/service.rb +4 -2
  680. data/generated/google/apis/recommender_v1.rb +1 -1
  681. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  682. data/generated/google/apis/recommender_v1beta1/service.rb +4 -2
  683. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  684. data/generated/google/apis/redis_v1/classes.rb +91 -513
  685. data/generated/google/apis/redis_v1/representations.rb +0 -139
  686. data/generated/google/apis/redis_v1/service.rb +92 -109
  687. data/generated/google/apis/redis_v1.rb +1 -1
  688. data/generated/google/apis/redis_v1beta1/classes.rb +123 -517
  689. data/generated/google/apis/redis_v1beta1/representations.rb +12 -137
  690. data/generated/google/apis/redis_v1beta1/service.rb +126 -109
  691. data/generated/google/apis/redis_v1beta1.rb +1 -1
  692. data/generated/google/apis/remotebuildexecution_v1/classes.rb +957 -1078
  693. data/generated/google/apis/remotebuildexecution_v1/representations.rb +62 -0
  694. data/generated/google/apis/remotebuildexecution_v1/service.rb +26 -33
  695. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  696. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +952 -1071
  697. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +62 -0
  698. data/generated/google/apis/remotebuildexecution_v1alpha/service.rb +103 -65
  699. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  700. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1105 -1250
  701. data/generated/google/apis/remotebuildexecution_v2/representations.rb +62 -0
  702. data/generated/google/apis/remotebuildexecution_v2/service.rb +147 -206
  703. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  704. data/generated/google/apis/reseller_v1/classes.rb +151 -219
  705. data/generated/google/apis/reseller_v1/service.rb +122 -173
  706. data/generated/google/apis/reseller_v1.rb +2 -2
  707. data/generated/google/apis/run_v1/classes.rb +19 -138
  708. data/generated/google/apis/run_v1/representations.rb +1 -62
  709. data/generated/google/apis/run_v1/service.rb +0 -342
  710. data/generated/google/apis/run_v1.rb +1 -1
  711. data/generated/google/apis/run_v1alpha1/classes.rb +1 -1
  712. data/generated/google/apis/run_v1alpha1/representations.rb +1 -1
  713. data/generated/google/apis/run_v1alpha1.rb +1 -1
  714. data/generated/google/apis/run_v1beta1/classes.rb +3 -2
  715. data/generated/google/apis/run_v1beta1.rb +1 -1
  716. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +301 -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/runtimeconfig_v1beta1.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/safebrowsing_v4.rb +1 -1
  723. data/generated/google/apis/sasportal_v1alpha1/classes.rb +26 -0
  724. data/generated/google/apis/sasportal_v1alpha1/representations.rb +14 -0
  725. data/generated/google/apis/sasportal_v1alpha1/service.rb +644 -56
  726. data/generated/google/apis/sasportal_v1alpha1.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/script_v1.rb +1 -1
  730. data/generated/google/apis/searchconsole_v1/classes.rb +388 -0
  731. data/generated/google/apis/searchconsole_v1/representations.rb +162 -0
  732. data/generated/google/apis/searchconsole_v1/service.rb +287 -0
  733. data/generated/google/apis/searchconsole_v1.rb +7 -1
  734. data/generated/google/apis/secretmanager_v1/classes.rb +378 -365
  735. data/generated/google/apis/secretmanager_v1/representations.rb +92 -0
  736. data/generated/google/apis/secretmanager_v1/service.rb +66 -82
  737. data/generated/google/apis/secretmanager_v1.rb +1 -1
  738. data/generated/google/apis/secretmanager_v1beta1/classes.rb +217 -363
  739. data/generated/google/apis/secretmanager_v1beta1/representations.rb +1 -0
  740. data/generated/google/apis/secretmanager_v1beta1/service.rb +66 -82
  741. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  742. data/generated/google/apis/securitycenter_v1/classes.rb +20 -204
  743. data/generated/google/apis/securitycenter_v1/representations.rb +1 -72
  744. data/generated/google/apis/securitycenter_v1.rb +1 -1
  745. data/generated/google/apis/securitycenter_v1beta1/classes.rb +22 -204
  746. data/generated/google/apis/securitycenter_v1beta1/representations.rb +1 -72
  747. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  748. data/generated/google/apis/{securitycenter_v1p1alpha1 → securitycenter_v1beta2}/classes.rb +275 -291
  749. data/generated/google/apis/{securitycenter_v1p1alpha1 → securitycenter_v1beta2}/representations.rb +83 -84
  750. data/generated/google/apis/securitycenter_v1beta2/service.rb +1494 -0
  751. data/generated/google/apis/{securitycenter_v1p1beta1.rb → securitycenter_v1beta2.rb} +6 -6
  752. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +35 -123
  753. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  754. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +32 -30
  755. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  756. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +24 -112
  757. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  758. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  759. data/generated/google/apis/servicecontrol_v1/classes.rb +601 -642
  760. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  761. data/generated/google/apis/servicecontrol_v1/service.rb +36 -46
  762. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  763. data/generated/google/apis/servicecontrol_v2/classes.rb +343 -325
  764. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  765. data/generated/google/apis/servicecontrol_v2/service.rb +33 -43
  766. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  767. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +221 -333
  768. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +1 -0
  769. data/generated/google/apis/servicedirectory_v1beta1/service.rb +94 -129
  770. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  771. data/generated/google/apis/servicemanagement_v1/classes.rb +1244 -2174
  772. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -31
  773. data/generated/google/apis/servicemanagement_v1/service.rb +141 -228
  774. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  775. data/generated/google/apis/servicenetworking_v1/classes.rb +278 -121
  776. data/generated/google/apis/servicenetworking_v1/representations.rb +115 -15
  777. data/generated/google/apis/servicenetworking_v1/service.rb +118 -2
  778. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  779. data/generated/google/apis/servicenetworking_v1beta/classes.rb +213 -112
  780. data/generated/google/apis/servicenetworking_v1beta/representations.rb +84 -14
  781. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  782. data/generated/google/apis/serviceusage_v1/classes.rb +57 -111
  783. data/generated/google/apis/serviceusage_v1/representations.rb +4 -18
  784. data/generated/google/apis/serviceusage_v1/service.rb +5 -1
  785. data/generated/google/apis/serviceusage_v1.rb +1 -1
  786. data/generated/google/apis/serviceusage_v1beta1/classes.rb +122 -112
  787. data/generated/google/apis/serviceusage_v1beta1/representations.rb +23 -18
  788. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  789. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  790. data/generated/google/apis/sheets_v4/classes.rb +4029 -5014
  791. data/generated/google/apis/sheets_v4/representations.rb +625 -0
  792. data/generated/google/apis/sheets_v4/service.rb +113 -149
  793. data/generated/google/apis/sheets_v4.rb +1 -1
  794. data/generated/google/apis/site_verification_v1.rb +1 -1
  795. data/generated/google/apis/slides_v1/classes.rb +841 -1114
  796. data/generated/google/apis/slides_v1/service.rb +23 -30
  797. data/generated/google/apis/slides_v1.rb +1 -1
  798. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +273 -0
  799. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +157 -0
  800. data/generated/google/apis/smartdevicemanagement_v1/service.rb +304 -0
  801. data/generated/google/apis/smartdevicemanagement_v1.rb +35 -0
  802. data/generated/google/apis/sourcerepo_v1/classes.rb +250 -400
  803. data/generated/google/apis/sourcerepo_v1/service.rb +40 -49
  804. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  805. data/generated/google/apis/spanner_v1/classes.rb +1553 -2157
  806. data/generated/google/apis/spanner_v1/representations.rb +1 -0
  807. data/generated/google/apis/spanner_v1/service.rb +443 -618
  808. data/generated/google/apis/spanner_v1.rb +1 -1
  809. data/generated/google/apis/speech_v1/classes.rb +174 -220
  810. data/generated/google/apis/speech_v1/service.rb +27 -32
  811. data/generated/google/apis/speech_v1.rb +1 -1
  812. data/generated/google/apis/speech_v1p1beta1/classes.rb +253 -306
  813. data/generated/google/apis/speech_v1p1beta1/service.rb +27 -32
  814. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  815. data/generated/google/apis/speech_v2beta1/classes.rb +66 -76
  816. data/generated/google/apis/speech_v2beta1/service.rb +10 -12
  817. data/generated/google/apis/speech_v2beta1.rb +1 -1
  818. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/classes.rb +537 -452
  819. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/representations.rb +142 -87
  820. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/service.rb +295 -300
  821. data/generated/google/apis/{sql_v1beta4.rb → sqladmin_v1beta4.rb} +5 -5
  822. data/generated/google/apis/storage_v1/classes.rb +10 -17
  823. data/generated/google/apis/storage_v1/representations.rb +2 -3
  824. data/generated/google/apis/storage_v1/service.rb +3 -2
  825. data/generated/google/apis/storage_v1.rb +1 -1
  826. data/generated/google/apis/storagetransfer_v1/classes.rb +301 -349
  827. data/generated/google/apis/storagetransfer_v1/representations.rb +13 -0
  828. data/generated/google/apis/storagetransfer_v1/service.rb +53 -72
  829. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  830. data/generated/google/apis/streetviewpublish_v1/classes.rb +110 -152
  831. data/generated/google/apis/streetviewpublish_v1/service.rb +94 -177
  832. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  833. data/generated/google/apis/sts_v1/classes.rb +121 -0
  834. data/generated/google/apis/sts_v1/representations.rb +59 -0
  835. data/generated/google/apis/sts_v1/service.rb +90 -0
  836. data/generated/google/apis/sts_v1.rb +32 -0
  837. data/generated/google/apis/sts_v1beta/classes.rb +191 -0
  838. data/generated/google/apis/sts_v1beta/representations.rb +61 -0
  839. data/generated/google/apis/sts_v1beta/service.rb +92 -0
  840. data/generated/google/apis/sts_v1beta.rb +32 -0
  841. data/generated/google/apis/tagmanager_v1/service.rb +2 -2
  842. data/generated/google/apis/tagmanager_v1.rb +1 -1
  843. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  844. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  845. data/generated/google/apis/tagmanager_v2/service.rb +2 -2
  846. data/generated/google/apis/tagmanager_v2.rb +1 -1
  847. data/generated/google/apis/tasks_v1/classes.rb +21 -22
  848. data/generated/google/apis/tasks_v1/service.rb +19 -19
  849. data/generated/google/apis/tasks_v1.rb +1 -1
  850. data/generated/google/apis/testing_v1/classes.rb +384 -390
  851. data/generated/google/apis/testing_v1/representations.rb +23 -0
  852. data/generated/google/apis/testing_v1/service.rb +22 -28
  853. data/generated/google/apis/testing_v1.rb +1 -1
  854. data/generated/google/apis/texttospeech_v1/classes.rb +51 -57
  855. data/generated/google/apis/texttospeech_v1/service.rb +9 -10
  856. data/generated/google/apis/texttospeech_v1.rb +1 -1
  857. data/generated/google/apis/texttospeech_v1beta1/classes.rb +96 -57
  858. data/generated/google/apis/texttospeech_v1beta1/representations.rb +19 -0
  859. data/generated/google/apis/texttospeech_v1beta1/service.rb +9 -10
  860. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  861. data/generated/google/apis/toolresults_v1beta3/classes.rb +20 -0
  862. data/generated/google/apis/toolresults_v1beta3/representations.rb +13 -0
  863. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  864. data/generated/google/apis/tpu_v1/classes.rb +57 -3
  865. data/generated/google/apis/tpu_v1/representations.rb +19 -0
  866. data/generated/google/apis/tpu_v1/service.rb +8 -8
  867. data/generated/google/apis/tpu_v1.rb +1 -1
  868. data/generated/google/apis/tpu_v1alpha1/classes.rb +57 -3
  869. data/generated/google/apis/tpu_v1alpha1/representations.rb +19 -0
  870. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  871. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  872. data/generated/google/apis/trafficdirector_v2/classes.rb +1347 -0
  873. data/generated/google/apis/trafficdirector_v2/representations.rb +620 -0
  874. data/generated/google/apis/trafficdirector_v2/service.rb +89 -0
  875. data/generated/google/apis/trafficdirector_v2.rb +34 -0
  876. data/generated/google/apis/translate_v3/classes.rb +151 -177
  877. data/generated/google/apis/translate_v3/service.rb +122 -151
  878. data/generated/google/apis/translate_v3.rb +1 -1
  879. data/generated/google/apis/translate_v3beta1/classes.rb +150 -170
  880. data/generated/google/apis/translate_v3beta1/service.rb +122 -151
  881. data/generated/google/apis/translate_v3beta1.rb +1 -1
  882. data/generated/google/apis/vault_v1/classes.rb +413 -103
  883. data/generated/google/apis/vault_v1/representations.rb +162 -0
  884. data/generated/google/apis/vault_v1/service.rb +182 -37
  885. data/generated/google/apis/vault_v1.rb +1 -1
  886. data/generated/google/apis/vectortile_v1/classes.rb +185 -267
  887. data/generated/google/apis/vectortile_v1/service.rb +75 -88
  888. data/generated/google/apis/vectortile_v1.rb +1 -1
  889. data/generated/google/apis/verifiedaccess_v1/classes.rb +20 -27
  890. data/generated/google/apis/verifiedaccess_v1.rb +1 -1
  891. data/generated/google/apis/videointelligence_v1/classes.rb +1493 -935
  892. data/generated/google/apis/videointelligence_v1/representations.rb +402 -2
  893. data/generated/google/apis/videointelligence_v1/service.rb +38 -77
  894. data/generated/google/apis/videointelligence_v1.rb +1 -1
  895. data/generated/google/apis/videointelligence_v1beta2/classes.rb +1488 -928
  896. data/generated/google/apis/videointelligence_v1beta2/representations.rb +402 -2
  897. data/generated/google/apis/videointelligence_v1beta2/service.rb +4 -4
  898. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  899. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +1482 -922
  900. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +402 -2
  901. data/generated/google/apis/videointelligence_v1p1beta1/service.rb +4 -4
  902. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  903. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +1485 -925
  904. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +402 -2
  905. data/generated/google/apis/videointelligence_v1p2beta1/service.rb +4 -4
  906. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  907. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +1410 -937
  908. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +368 -2
  909. data/generated/google/apis/videointelligence_v1p3beta1/service.rb +4 -4
  910. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  911. data/generated/google/apis/vision_v1/classes.rb +16 -16
  912. data/generated/google/apis/vision_v1.rb +1 -1
  913. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  914. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  915. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  916. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  917. data/generated/google/apis/webfonts_v1/classes.rb +1 -2
  918. data/generated/google/apis/webfonts_v1/service.rb +2 -4
  919. data/generated/google/apis/webfonts_v1.rb +2 -3
  920. data/generated/google/apis/websecurityscanner_v1.rb +1 -1
  921. data/generated/google/apis/websecurityscanner_v1alpha.rb +1 -1
  922. data/generated/google/apis/websecurityscanner_v1beta.rb +1 -1
  923. data/generated/google/apis/workflowexecutions_v1beta/classes.rb +155 -0
  924. data/generated/google/apis/workflowexecutions_v1beta/representations.rb +88 -0
  925. data/generated/google/apis/{securitycenter_v1p1alpha1 → workflowexecutions_v1beta}/service.rb +73 -69
  926. data/generated/google/apis/workflowexecutions_v1beta.rb +34 -0
  927. data/generated/google/apis/workflows_v1beta/classes.rb +406 -0
  928. data/generated/google/apis/workflows_v1beta/representations.rb +173 -0
  929. data/generated/google/apis/workflows_v1beta/service.rb +438 -0
  930. data/generated/google/apis/workflows_v1beta.rb +35 -0
  931. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  932. data/generated/google/apis/youtube_v3/classes.rb +0 -586
  933. data/generated/google/apis/youtube_v3/representations.rb +0 -269
  934. data/generated/google/apis/youtube_v3/service.rb +3 -120
  935. data/generated/google/apis/youtube_v3.rb +1 -1
  936. data/google-api-client.gemspec +25 -24
  937. data/lib/google/apis/core/api_command.rb +1 -0
  938. data/lib/google/apis/core/http_command.rb +2 -1
  939. data/lib/google/apis/options.rb +8 -5
  940. data/lib/google/apis/version.rb +1 -1
  941. data/synth.py +40 -0
  942. metadata +134 -41
  943. data/generated/google/apis/accessapproval_v1beta1/classes.rb +0 -417
  944. data/generated/google/apis/accessapproval_v1beta1/representations.rb +0 -203
  945. data/generated/google/apis/accessapproval_v1beta1/service.rb +0 -857
  946. data/generated/google/apis/appsactivity_v1/classes.rb +0 -415
  947. data/generated/google/apis/appsactivity_v1/representations.rb +0 -209
  948. data/generated/google/apis/appsactivity_v1/service.rb +0 -126
  949. data/generated/google/apis/dns_v2beta1/classes.rb +0 -1447
  950. data/generated/google/apis/dns_v2beta1/representations.rb +0 -588
  951. data/generated/google/apis/dns_v2beta1/service.rb +0 -928
  952. data/generated/google/apis/dns_v2beta1.rb +0 -43
  953. data/generated/google/apis/memcache_v1/classes.rb +0 -1157
  954. data/generated/google/apis/plus_v1/classes.rb +0 -2094
  955. data/generated/google/apis/plus_v1/representations.rb +0 -907
  956. data/generated/google/apis/plus_v1/service.rb +0 -451
  957. data/generated/google/apis/plus_v1.rb +0 -43
  958. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +0 -2059
  959. data/generated/google/apis/securitycenter_v1p1beta1/representations.rb +0 -789
  960. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +0 -1243
  961. data/generated/google/apis/storage_v1beta2/classes.rb +0 -1047
  962. data/generated/google/apis/storage_v1beta2/representations.rb +0 -425
  963. data/generated/google/apis/storage_v1beta2/service.rb +0 -1667
  964. data/generated/google/apis/storage_v1beta2.rb +0 -40
@@ -1086,6 +1086,13 @@ module Google
1086
1086
  attr_accessor :enable_nested_virtualization
1087
1087
  alias_method :enable_nested_virtualization?, :enable_nested_virtualization
1088
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
+
1089
1096
  def initialize(**args)
1090
1097
  update!(**args)
1091
1098
  end
@@ -1093,6 +1100,7 @@ module Google
1093
1100
  # Update properties of this object
1094
1101
  def update!(**args)
1095
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)
1096
1104
  end
1097
1105
  end
1098
1106
 
@@ -1174,18 +1182,6 @@ module Google
1174
1182
  # @return [String]
1175
1183
  attr_accessor :location_hint
1176
1184
 
1177
- # DEPRECATED, please use maintenance_freeze_duration_hours. TODO(b/154158138):
1178
- # Remove this field. Compute Engine Long Term Release. When specified, VMs that
1179
- # have this policy become long term release (internal: stable fleet) VMs.
1180
- # For all VM shapes, this should result in fewer disruptions due to software
1181
- # updates and greater predictability via 1 week extended notifications.
1182
- # For GPU VMs, this should also result in an 2 week uptime guarantee. See go/
1183
- # stable-fleet-gpus-design for more details.
1184
- # Corresponds to the JSON property `longTermRelease`
1185
- # @return [Boolean]
1186
- attr_accessor :long_term_release
1187
- alias_method :long_term_release?, :long_term_release
1188
-
1189
1185
  # Specifies type of machine (name only) which has fixed number of vCPUs and
1190
1186
  # fixed amount of memory. This also includes specifying custom machine type
1191
1187
  # following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
@@ -1199,13 +1195,6 @@ module Google
1199
1195
  # @return [Fixnum]
1200
1196
  attr_accessor :maintenance_freeze_duration_hours
1201
1197
 
1202
- # Specifies whether this VM may be a stable fleet VM. Setting this to "Periodic"
1203
- # designates this VM as a Stable Fleet VM.
1204
- # See go/stable-fleet-ug for more details.
1205
- # Corresponds to the JSON property `maintenanceInterval`
1206
- # @return [String]
1207
- attr_accessor :maintenance_interval
1208
-
1209
1198
  # Minimum cpu platform the reservation.
1210
1199
  # Corresponds to the JSON property `minCpuPlatform`
1211
1200
  # @return [String]
@@ -1220,10 +1209,8 @@ module Google
1220
1209
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
1221
1210
  @local_ssds = args[:local_ssds] if args.key?(:local_ssds)
1222
1211
  @location_hint = args[:location_hint] if args.key?(:location_hint)
1223
- @long_term_release = args[:long_term_release] if args.key?(:long_term_release)
1224
1212
  @machine_type = args[:machine_type] if args.key?(:machine_type)
1225
1213
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
1226
- @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
1227
1214
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
1228
1215
  end
1229
1216
  end
@@ -1288,7 +1275,20 @@ module Google
1288
1275
  # @return [String]
1289
1276
  attr_accessor :device_name
1290
1277
 
1291
- # Represents a customer-supplied encryption key
1278
+ # Encrypts or decrypts a disk using a customer-supplied encryption key.
1279
+ # If you are creating a new disk, this field encrypts the new disk using an
1280
+ # encryption key that you provide. If you are attaching an existing disk that is
1281
+ # already encrypted, this field decrypts the disk using the customer-supplied
1282
+ # encryption key.
1283
+ # If you encrypt a disk using a customer-supplied key, you must provide the same
1284
+ # key again when you attempt to use this resource at a later time. For example,
1285
+ # you must provide the key when you create a snapshot or an image from the disk
1286
+ # or when you attach the disk to a virtual machine instance.
1287
+ # If you do not provide an encryption key, then the disk will be encrypted using
1288
+ # an automatically generated key and you do not need to provide a key to use the
1289
+ # disk later.
1290
+ # Instance templates do not store customer-supplied encryption keys, so you
1291
+ # cannot use your own keys to encrypt disks in a managed instance group.
1292
1292
  # Corresponds to the JSON property `diskEncryptionKey`
1293
1293
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
1294
1294
  attr_accessor :disk_encryption_key
@@ -1379,6 +1379,13 @@ module Google
1379
1379
  # @return [String]
1380
1380
  attr_accessor :type
1381
1381
 
1382
+ # [Output Only] A list of user provided licenses. It represents a list of URLs
1383
+ # to the license resource. Unlike regular licenses, user provided licenses can
1384
+ # be modified after the disk is created.
1385
+ # Corresponds to the JSON property `userLicenses`
1386
+ # @return [Array<String>]
1387
+ attr_accessor :user_licenses
1388
+
1382
1389
  def initialize(**args)
1383
1390
  update!(**args)
1384
1391
  end
@@ -1401,6 +1408,7 @@ module Google
1401
1408
  @shielded_instance_initial_state = args[:shielded_instance_initial_state] if args.key?(:shielded_instance_initial_state)
1402
1409
  @source = args[:source] if args.key?(:source)
1403
1410
  @type = args[:type] if args.key?(:type)
1411
+ @user_licenses = args[:user_licenses] if args.key?(:user_licenses)
1404
1412
  end
1405
1413
  end
1406
1414
 
@@ -1516,7 +1524,11 @@ module Google
1516
1524
  # @return [String]
1517
1525
  attr_accessor :source_image
1518
1526
 
1519
- # 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.
1520
1532
  # Corresponds to the JSON property `sourceImageEncryptionKey`
1521
1533
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
1522
1534
  attr_accessor :source_image_encryption_key
@@ -1532,7 +1544,7 @@ module Google
1532
1544
  # @return [String]
1533
1545
  attr_accessor :source_snapshot
1534
1546
 
1535
- # Represents a customer-supplied encryption key
1547
+ # The customer-supplied encryption key of the source snapshot.
1536
1548
  # Corresponds to the JSON property `sourceSnapshotEncryptionKey`
1537
1549
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
1538
1550
  attr_accessor :source_snapshot_encryption_key
@@ -2365,13 +2377,13 @@ module Google
2365
2377
  class AutoscalingPolicyCpuUtilization
2366
2378
  include Google::Apis::Core::Hashable
2367
2379
 
2368
- # Indicates which method of prediction is used for CPU utilization metric, if
2369
- # any. Current set of possible values: * NONE: No predictions are made based on
2370
- # the scaling metric when calculating the number of VM instances. * STANDARD:
2371
- # Standard predictive autoscaling predicts the future values of the scaling
2372
- # metric and then scales a MIG to ensure that new VM instances are ready in time
2373
- # to cover the predicted peak. New values might be added in the future. Some of
2374
- # the values might not be available in all API versions.
2380
+ # Indicates whether predictive autoscaling based on CPU metric is enabled. Valid
2381
+ # values are:
2382
+ # * NONE (default). No predictive method is used. The autoscaler scales the
2383
+ # group to meet current demand based on real-time metrics. *
2384
+ # OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by
2385
+ # monitoring daily and weekly load patterns and scaling out ahead of anticipated
2386
+ # demand.
2375
2387
  # Corresponds to the JSON property `predictiveMethod`
2376
2388
  # @return [String]
2377
2389
  attr_accessor :predictive_method
@@ -2459,9 +2471,9 @@ module Google
2459
2471
  # The target value of the metric that autoscaler should maintain. This must be a
2460
2472
  # positive value. A utilization metric scales number of virtual machines
2461
2473
  # handling requests to increase or decrease proportionally to the metric.
2462
- # For example, a good metric to use as a utilization_target is compute.
2463
- # googleapis.com/instance/network/received_bytes_count. The autoscaler will work
2464
- # to keep this value constant for each of the instances.
2474
+ # For example, a good metric to use as a utilization_target is https://www.
2475
+ # googleapis.com/compute/v1/instance/network/received_bytes_count. The
2476
+ # autoscaler will work to keep this value constant for each of the instances.
2465
2477
  # Corresponds to the JSON property `utilizationTarget`
2466
2478
  # @return [Float]
2467
2479
  attr_accessor :utilization_target
@@ -2837,6 +2849,11 @@ module Google
2837
2849
  # @return [String]
2838
2850
  attr_accessor :creation_timestamp
2839
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
+
2840
2857
  # An optional textual description of the resource; provided by the client when
2841
2858
  # the resource is created.
2842
2859
  # Corresponds to the JSON property `description`
@@ -2888,6 +2905,7 @@ module Google
2888
2905
  @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
2889
2906
  @cdn_policy = args[:cdn_policy] if args.key?(:cdn_policy)
2890
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)
2891
2909
  @description = args[:description] if args.key?(:description)
2892
2910
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
2893
2911
  @id = args[:id] if args.key?(:id)
@@ -2902,6 +2920,85 @@ module Google
2902
2920
  class BackendBucketCdnPolicy
2903
2921
  include Google::Apis::Core::Hashable
2904
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
+ # Specifies the cache setting for all responses from this backend. The possible
2931
+ # values are:
2932
+ # USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache
2933
+ # content. Responses without these headers will not be cached at Google's edge,
2934
+ # and will require a full trip to the origin on every request, potentially
2935
+ # impacting performance and increasing load on the origin server.
2936
+ # FORCE_CACHE_ALL Cache all content, ignoring any "private", "no-store" or "no-
2937
+ # cache" directives in Cache-Control response headers. Warning: this may result
2938
+ # in Cloud CDN caching private, per-user (user identifiable) content.
2939
+ # CACHE_ALL_STATIC Automatically cache static content, including common image
2940
+ # formats, media (video and audio), and web assets (JavaScript and CSS).
2941
+ # Requests and responses that are marked as uncacheable, as well as dynamic
2942
+ # content (including HTML), will not be cached.
2943
+ # Corresponds to the JSON property `cacheMode`
2944
+ # @return [String]
2945
+ attr_accessor :cache_mode
2946
+
2947
+ # Specifies a separate client (e.g. browser client) TTL, separate from the TTL
2948
+ # for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL
2949
+ # for both Cloud CDN and the client-facing response. The maximum allowed value
2950
+ # is 86400s (1 day).
2951
+ # Corresponds to the JSON property `clientTtl`
2952
+ # @return [Fixnum]
2953
+ attr_accessor :client_ttl
2954
+
2955
+ # Specifies the default TTL for cached content served by this origin for
2956
+ # responses that do not have an existing valid TTL (max-age or s-max-age).
2957
+ # Setting a TTL of "0" means "always revalidate". The value of defaultTTL cannot
2958
+ # be set to a value greater than that of maxTTL, but can be equal. When the
2959
+ # cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set
2960
+ # in all responses. The maximum allowed value is 31,622,400s (1 year), noting
2961
+ # that infrequently accessed objects may be evicted from the cache before the
2962
+ # defined TTL.
2963
+ # Corresponds to the JSON property `defaultTtl`
2964
+ # @return [Fixnum]
2965
+ attr_accessor :default_ttl
2966
+
2967
+ # Specifies the maximum allowed TTL for cached content served by this origin.
2968
+ # Cache directives that attempt to set a max-age or s-maxage higher than this,
2969
+ # or an Expires header more than maxTTL seconds in the future will be capped at
2970
+ # the value of maxTTL, as if it were the value of an s-maxage Cache-Control
2971
+ # directive. Headers sent to the client will not be modified. Setting a TTL of "
2972
+ # 0" means "always revalidate". The maximum allowed value is 31,622,400s (1 year)
2973
+ # , noting that infrequently accessed objects may be evicted from the cache
2974
+ # before the defined TTL.
2975
+ # Corresponds to the JSON property `maxTtl`
2976
+ # @return [Fixnum]
2977
+ attr_accessor :max_ttl
2978
+
2979
+ # Negative caching allows per-status code TTLs to be set, in order to apply fine-
2980
+ # grained caching for common errors or redirects. This can reduce the load on
2981
+ # your origin and improve end-user experience by reducing response latency. By
2982
+ # default, Cloud CDN will apply the following default TTLs to these status codes:
2983
+ # HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not
2984
+ # Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method
2985
+ # Not Found), 421 (Misdirected Request), 501 (Not Implemented): 60s These
2986
+ # defaults can be overridden in negative_caching_policy
2987
+ # Corresponds to the JSON property `negativeCaching`
2988
+ # @return [Boolean]
2989
+ attr_accessor :negative_caching
2990
+ alias_method :negative_caching?, :negative_caching
2991
+
2992
+ # Sets a cache TTL for the specified HTTP status code. negative_caching must be
2993
+ # enabled to configure negative_caching_policy. Omitting the policy and leaving
2994
+ # negative_caching enabled will use Cloud CDN's default cache TTLs. Note that
2995
+ # when specifying an explicit negative_caching_policy, you should take care to
2996
+ # specify a cache TTL for all response codes that you wish to cache. Cloud CDN
2997
+ # will not apply any default negative caching when a policy exists.
2998
+ # Corresponds to the JSON property `negativeCachingPolicy`
2999
+ # @return [Array<Google::Apis::ComputeAlpha::BackendBucketCdnPolicyNegativeCachingPolicy>]
3000
+ attr_accessor :negative_caching_policy
3001
+
2905
3002
  # If true then Cloud CDN will combine multiple concurrent cache fill requests
2906
3003
  # into a small number of requests to the origin.
2907
3004
  # Corresponds to the JSON property `requestCoalescing`
@@ -2909,6 +3006,18 @@ module Google
2909
3006
  attr_accessor :request_coalescing
2910
3007
  alias_method :request_coalescing?, :request_coalescing
2911
3008
 
3009
+ # Serve existing content from the cache (if available) when revalidating content
3010
+ # with the origin, or when an error is encountered when refreshing the cache.
3011
+ # This setting defines the default "max-stale" duration for any cached responses
3012
+ # that do not specify a max-stale directive. Stale responses that exceed the TTL
3013
+ # configured here will not be served. The default limit (max-stale) is 86400s (1
3014
+ # day), which will allow stale content to be served up to this limit beyond the
3015
+ # max-age (or s-max-age) of a cached response. The maximum allowed value is
3016
+ # 604800 (1 week). Set this to zero (0) to disable serve-while-stale.
3017
+ # Corresponds to the JSON property `serveWhileStale`
3018
+ # @return [Fixnum]
3019
+ attr_accessor :serve_while_stale
3020
+
2912
3021
  # Maximum number of seconds the response to a signed URL request will be
2913
3022
  # considered fresh. After this time period, the response will be revalidated
2914
3023
  # before being served. Defaults to 1hr (3600s). When serving responses to signed
@@ -2931,12 +3040,71 @@ module Google
2931
3040
 
2932
3041
  # Update properties of this object
2933
3042
  def update!(**args)
3043
+ @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
3044
+ @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
3045
+ @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
3046
+ @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
3047
+ @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
3048
+ @negative_caching = args[:negative_caching] if args.key?(:negative_caching)
3049
+ @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy)
2934
3050
  @request_coalescing = args[:request_coalescing] if args.key?(:request_coalescing)
3051
+ @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale)
2935
3052
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
2936
3053
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
2937
3054
  end
2938
3055
  end
2939
3056
 
3057
+ # Bypass the cache when the specified request headers are present, e.g. Pragma
3058
+ # or Authorization headers. Values are case insensitive. The presence of such a
3059
+ # header overrides the cache_mode setting.
3060
+ class BackendBucketCdnPolicyBypassCacheOnRequestHeader
3061
+ include Google::Apis::Core::Hashable
3062
+
3063
+ # The header field name to match on when bypassing cache. Values are case-
3064
+ # insensitive.
3065
+ # Corresponds to the JSON property `headerName`
3066
+ # @return [String]
3067
+ attr_accessor :header_name
3068
+
3069
+ def initialize(**args)
3070
+ update!(**args)
3071
+ end
3072
+
3073
+ # Update properties of this object
3074
+ def update!(**args)
3075
+ @header_name = args[:header_name] if args.key?(:header_name)
3076
+ end
3077
+ end
3078
+
3079
+ # Specify CDN TTLs for response error codes.
3080
+ class BackendBucketCdnPolicyNegativeCachingPolicy
3081
+ include Google::Apis::Core::Hashable
3082
+
3083
+ # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
3084
+ # 308, 404, 405, 410, 421, 451 and 501 are can be specified as values, and you
3085
+ # cannot specify a status code more than once.
3086
+ # Corresponds to the JSON property `code`
3087
+ # @return [Fixnum]
3088
+ attr_accessor :code
3089
+
3090
+ # The TTL (in seconds) to cache responses with the corresponding status code for.
3091
+ # The maximum allowed value is 1800s (30 minutes), noting that infrequently
3092
+ # accessed objects may be evicted from the cache before the defined TTL.
3093
+ # Corresponds to the JSON property `ttl`
3094
+ # @return [Fixnum]
3095
+ attr_accessor :ttl
3096
+
3097
+ def initialize(**args)
3098
+ update!(**args)
3099
+ end
3100
+
3101
+ # Update properties of this object
3102
+ def update!(**args)
3103
+ @code = args[:code] if args.key?(:code)
3104
+ @ttl = args[:ttl] if args.key?(:ttl)
3105
+ end
3106
+ end
3107
+
2940
3108
  # Contains a list of BackendBucket resources.
2941
3109
  class BackendBucketList
2942
3110
  include Google::Apis::Core::Hashable
@@ -3070,8 +3238,13 @@ module Google
3070
3238
  class BackendService
3071
3239
  include Google::Apis::Core::Hashable
3072
3240
 
3241
+ # Lifetime of cookies in seconds. Only applicable if the loadBalancingScheme is
3242
+ # EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, the protocol is HTTP or
3243
+ # HTTPS, and the sessionAffinity is GENERATED_COOKIE, or HTTP_COOKIE.
3073
3244
  # If set to 0, the cookie is non-persistent and lasts only until the end of the
3074
3245
  # browser session (or equivalent). The maximum allowed value is one day (86,400).
3246
+ # Not supported when the backend service is referenced by a URL map that is
3247
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
3075
3248
  # Corresponds to the JSON property `affinityCookieTtlSec`
3076
3249
  # @return [Fixnum]
3077
3250
  attr_accessor :affinity_cookie_ttl_sec
@@ -3111,6 +3284,11 @@ module Google
3111
3284
  # @return [Array<String>]
3112
3285
  attr_accessor :custom_request_headers
3113
3286
 
3287
+ # Headers that the HTTP/S load balancer should add to proxied responses.
3288
+ # Corresponds to the JSON property `customResponseHeaders`
3289
+ # @return [Array<String>]
3290
+ attr_accessor :custom_response_headers
3291
+
3114
3292
  # An optional description of this resource. Provide this property when you
3115
3293
  # create the resource.
3116
3294
  # Corresponds to the JSON property `description`
@@ -3150,10 +3328,10 @@ module Google
3150
3328
  # The list of URLs to the healthChecks, httpHealthChecks (legacy), or
3151
3329
  # httpsHealthChecks (legacy) resource for health checking this backend service.
3152
3330
  # Not all backend services support legacy health checks. See Load balancer
3153
- # guide. Currently at most one health check can be specified. Backend services
3154
- # with instance group or zonal NEG backends must have a health check. Backend
3155
- # services with internet NEG backends must not have a health check. A health
3156
- # check must
3331
+ # guide. Currently, at most one health check can be specified for each backend
3332
+ # service. Backend services with instance group or zonal NEG backends must have
3333
+ # a health check. Backend services with internet or serverless NEG backends must
3334
+ # not have a health check.
3157
3335
  # Corresponds to the JSON property `healthChecks`
3158
3336
  # @return [Array<String>]
3159
3337
  attr_accessor :health_checks
@@ -3208,8 +3386,11 @@ module Google
3208
3386
  # HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED.
3209
3387
  # - A global backend service with the load_balancing_scheme set to
3210
3388
  # INTERNAL_SELF_MANAGED.
3211
- # If sessionAffinity is not NONE, and this field is not set to >MAGLEV or
3389
+ # If sessionAffinity is not NONE, and this field is not set to MAGLEV or
3212
3390
  # RING_HASH, session affinity settings will not take effect.
3391
+ # Only the default ROUND_ROBIN policy is supported when the backend service is
3392
+ # referenced by a URL map that is bound to target gRPC proxy that has
3393
+ # validateForProxyless field set to true.
3213
3394
  # Corresponds to the JSON property `localityLbPolicy`
3214
3395
  # @return [String]
3215
3396
  attr_accessor :locality_lb_policy
@@ -3262,10 +3443,12 @@ module Google
3262
3443
  attr_accessor :port_name
3263
3444
 
3264
3445
  # The protocol this BackendService uses to communicate with backends.
3265
- # Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, or UDP. depending on the
3266
- # chosen load balancer or Traffic Director configuration. Refer to the
3446
+ # Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on
3447
+ # the chosen load balancer or Traffic Director configuration. Refer to the
3267
3448
  # documentation for the load balancer or for Traffic Director for more
3268
3449
  # information.
3450
+ # Must be set to GRPC when the backend service is referenced by a URL map that
3451
+ # is bound to target gRPC proxy.
3269
3452
  # Corresponds to the JSON property `protocol`
3270
3453
  # @return [String]
3271
3454
  attr_accessor :protocol
@@ -3309,10 +3492,17 @@ module Google
3309
3492
  # When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED,
3310
3493
  # possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or
3311
3494
  # HTTP_COOKIE.
3495
+ # Not supported when the backend service is referenced by a URL map that is
3496
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
3312
3497
  # Corresponds to the JSON property `sessionAffinity`
3313
3498
  # @return [String]
3314
3499
  attr_accessor :session_affinity
3315
3500
 
3501
+ # Subsetting options to make L4 ILB support any number of backend instances
3502
+ # Corresponds to the JSON property `subsetting`
3503
+ # @return [Google::Apis::ComputeAlpha::Subsetting]
3504
+ attr_accessor :subsetting
3505
+
3316
3506
  # The backend service timeout has a different meaning depending on the type of
3317
3507
  # load balancer. For more information see, Backend service settings The default
3318
3508
  # is 30 seconds.
@@ -3334,6 +3524,7 @@ module Google
3334
3524
  @consistent_hash = args[:consistent_hash] if args.key?(:consistent_hash)
3335
3525
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
3336
3526
  @custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers)
3527
+ @custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
3337
3528
  @description = args[:description] if args.key?(:description)
3338
3529
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
3339
3530
  @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
@@ -3357,6 +3548,7 @@ module Google
3357
3548
  @self_link = args[:self_link] if args.key?(:self_link)
3358
3549
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
3359
3550
  @session_affinity = args[:session_affinity] if args.key?(:session_affinity)
3551
+ @subsetting = args[:subsetting] if args.key?(:subsetting)
3360
3552
  @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
3361
3553
  end
3362
3554
  end
@@ -3488,12 +3680,91 @@ module Google
3488
3680
  class BackendServiceCdnPolicy
3489
3681
  include Google::Apis::Core::Hashable
3490
3682
 
3683
+ # Bypass the cache when the specified request headers are matched - e.g. Pragma
3684
+ # or Authorization headers. Up to 5 headers can be specified. The cache is
3685
+ # bypassed for all cdnPolicy.cacheMode settings.
3686
+ # Corresponds to the JSON property `bypassCacheOnRequestHeaders`
3687
+ # @return [Array<Google::Apis::ComputeAlpha::BackendServiceCdnPolicyBypassCacheOnRequestHeader>]
3688
+ attr_accessor :bypass_cache_on_request_headers
3689
+
3491
3690
  # Message containing what to include in the cache key for a request for Cloud
3492
3691
  # CDN.
3493
3692
  # Corresponds to the JSON property `cacheKeyPolicy`
3494
3693
  # @return [Google::Apis::ComputeAlpha::CacheKeyPolicy]
3495
3694
  attr_accessor :cache_key_policy
3496
3695
 
3696
+ # Specifies the cache setting for all responses from this backend. The possible
3697
+ # values are:
3698
+ # USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache
3699
+ # content. Responses without these headers will not be cached at Google's edge,
3700
+ # and will require a full trip to the origin on every request, potentially
3701
+ # impacting performance and increasing load on the origin server.
3702
+ # FORCE_CACHE_ALL Cache all content, ignoring any "private", "no-store" or "no-
3703
+ # cache" directives in Cache-Control response headers. Warning: this may result
3704
+ # in Cloud CDN caching private, per-user (user identifiable) content.
3705
+ # CACHE_ALL_STATIC Automatically cache static content, including common image
3706
+ # formats, media (video and audio), and web assets (JavaScript and CSS).
3707
+ # Requests and responses that are marked as uncacheable, as well as dynamic
3708
+ # content (including HTML), will not be cached.
3709
+ # Corresponds to the JSON property `cacheMode`
3710
+ # @return [String]
3711
+ attr_accessor :cache_mode
3712
+
3713
+ # Specifies a separate client (e.g. browser client) TTL, separate from the TTL
3714
+ # for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL
3715
+ # for both Cloud CDN and the client-facing response. The maximum allowed value
3716
+ # is 86400s (1 day).
3717
+ # Corresponds to the JSON property `clientTtl`
3718
+ # @return [Fixnum]
3719
+ attr_accessor :client_ttl
3720
+
3721
+ # Specifies the default TTL for cached content served by this origin for
3722
+ # responses that do not have an existing valid TTL (max-age or s-max-age).
3723
+ # Setting a TTL of "0" means "always revalidate". The value of defaultTTL cannot
3724
+ # be set to a value greater than that of maxTTL, but can be equal. When the
3725
+ # cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set
3726
+ # in all responses. The maximum allowed value is 31,622,400s (1 year), noting
3727
+ # that infrequently accessed objects may be evicted from the cache before the
3728
+ # defined TTL.
3729
+ # Corresponds to the JSON property `defaultTtl`
3730
+ # @return [Fixnum]
3731
+ attr_accessor :default_ttl
3732
+
3733
+ # Specifies the maximum allowed TTL for cached content served by this origin.
3734
+ # Cache directives that attempt to set a max-age or s-maxage higher than this,
3735
+ # or an Expires header more than maxTTL seconds in the future will be capped at
3736
+ # the value of maxTTL, as if it were the value of an s-maxage Cache-Control
3737
+ # directive. Headers sent to the client will not be modified. Setting a TTL of "
3738
+ # 0" means "always revalidate". The maximum allowed value is 31,622,400s (1 year)
3739
+ # , noting that infrequently accessed objects may be evicted from the cache
3740
+ # before the defined TTL.
3741
+ # Corresponds to the JSON property `maxTtl`
3742
+ # @return [Fixnum]
3743
+ attr_accessor :max_ttl
3744
+
3745
+ # Negative caching allows per-status code TTLs to be set, in order to apply fine-
3746
+ # grained caching for common errors or redirects. This can reduce the load on
3747
+ # your origin and improve end-user experience by reducing response latency. By
3748
+ # default, Cloud CDN will apply the following default TTLs to these status codes:
3749
+ # HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not
3750
+ # Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method
3751
+ # Not Found), 421 (Misdirected Request), 501 (Not Implemented): 60s These
3752
+ # defaults can be overridden in negative_caching_policy
3753
+ # Corresponds to the JSON property `negativeCaching`
3754
+ # @return [Boolean]
3755
+ attr_accessor :negative_caching
3756
+ alias_method :negative_caching?, :negative_caching
3757
+
3758
+ # Sets a cache TTL for the specified HTTP status code. negative_caching must be
3759
+ # enabled to configure negative_caching_policy. Omitting the policy and leaving
3760
+ # negative_caching enabled will use Cloud CDN's default cache TTLs. Note that
3761
+ # when specifying an explicit negative_caching_policy, you should take care to
3762
+ # specify a cache TTL for all response codes that you wish to cache. Cloud CDN
3763
+ # will not apply any default negative caching when a policy exists.
3764
+ # Corresponds to the JSON property `negativeCachingPolicy`
3765
+ # @return [Array<Google::Apis::ComputeAlpha::BackendServiceCdnPolicyNegativeCachingPolicy>]
3766
+ attr_accessor :negative_caching_policy
3767
+
3497
3768
  # If true then Cloud CDN will combine multiple concurrent cache fill requests
3498
3769
  # into a small number of requests to the origin.
3499
3770
  # Corresponds to the JSON property `requestCoalescing`
@@ -3501,6 +3772,18 @@ module Google
3501
3772
  attr_accessor :request_coalescing
3502
3773
  alias_method :request_coalescing?, :request_coalescing
3503
3774
 
3775
+ # Serve existing content from the cache (if available) when revalidating content
3776
+ # with the origin, or when an error is encountered when refreshing the cache.
3777
+ # This setting defines the default "max-stale" duration for any cached responses
3778
+ # that do not specify a max-stale directive. Stale responses that exceed the TTL
3779
+ # configured here will not be served. The default limit (max-stale) is 86400s (1
3780
+ # day), which will allow stale content to be served up to this limit beyond the
3781
+ # max-age (or s-max-age) of a cached response. The maximum allowed value is
3782
+ # 604800 (1 week). Set this to zero (0) to disable serve-while-stale.
3783
+ # Corresponds to the JSON property `serveWhileStale`
3784
+ # @return [Fixnum]
3785
+ attr_accessor :serve_while_stale
3786
+
3504
3787
  # Maximum number of seconds the response to a signed URL request will be
3505
3788
  # considered fresh. After this time period, the response will be revalidated
3506
3789
  # before being served. Defaults to 1hr (3600s). When serving responses to signed
@@ -3523,13 +3806,72 @@ module Google
3523
3806
 
3524
3807
  # Update properties of this object
3525
3808
  def update!(**args)
3809
+ @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
3526
3810
  @cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy)
3811
+ @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
3812
+ @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
3813
+ @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
3814
+ @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
3815
+ @negative_caching = args[:negative_caching] if args.key?(:negative_caching)
3816
+ @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy)
3527
3817
  @request_coalescing = args[:request_coalescing] if args.key?(:request_coalescing)
3818
+ @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale)
3528
3819
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
3529
3820
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
3530
3821
  end
3531
3822
  end
3532
3823
 
3824
+ # Bypass the cache when the specified request headers are present, e.g. Pragma
3825
+ # or Authorization headers. Values are case insensitive. The presence of such a
3826
+ # header overrides the cache_mode setting.
3827
+ class BackendServiceCdnPolicyBypassCacheOnRequestHeader
3828
+ include Google::Apis::Core::Hashable
3829
+
3830
+ # The header field name to match on when bypassing cache. Values are case-
3831
+ # insensitive.
3832
+ # Corresponds to the JSON property `headerName`
3833
+ # @return [String]
3834
+ attr_accessor :header_name
3835
+
3836
+ def initialize(**args)
3837
+ update!(**args)
3838
+ end
3839
+
3840
+ # Update properties of this object
3841
+ def update!(**args)
3842
+ @header_name = args[:header_name] if args.key?(:header_name)
3843
+ end
3844
+ end
3845
+
3846
+ # Specify CDN TTLs for response error codes.
3847
+ class BackendServiceCdnPolicyNegativeCachingPolicy
3848
+ include Google::Apis::Core::Hashable
3849
+
3850
+ # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
3851
+ # 308, 404, 405, 410, 421, 451 and 501 are can be specified as values, and you
3852
+ # cannot specify a status code more than once.
3853
+ # Corresponds to the JSON property `code`
3854
+ # @return [Fixnum]
3855
+ attr_accessor :code
3856
+
3857
+ # The TTL (in seconds) to cache responses with the corresponding status code for.
3858
+ # The maximum allowed value is 1800s (30 minutes), noting that infrequently
3859
+ # accessed objects may be evicted from the cache before the defined TTL.
3860
+ # Corresponds to the JSON property `ttl`
3861
+ # @return [Fixnum]
3862
+ attr_accessor :ttl
3863
+
3864
+ def initialize(**args)
3865
+ update!(**args)
3866
+ end
3867
+
3868
+ # Update properties of this object
3869
+ def update!(**args)
3870
+ @code = args[:code] if args.key?(:code)
3871
+ @ttl = args[:ttl] if args.key?(:ttl)
3872
+ end
3873
+ end
3874
+
3533
3875
  # Applicable only to Failover for Internal TCP/UDP Load Balancing. On failover
3534
3876
  # or failback, this field indicates whether connection draining will be honored.
3535
3877
  # GCP has a fixed connection draining timeout of 10 minutes. A setting of true
@@ -4231,6 +4573,12 @@ module Google
4231
4573
  class Binding
4232
4574
  include Google::Apis::Core::Hashable
4233
4575
 
4576
+ # A client-specified ID for this binding. Expected to be globally unique to
4577
+ # support the internal bindings-by-ID API.
4578
+ # Corresponds to the JSON property `bindingId`
4579
+ # @return [String]
4580
+ attr_accessor :binding_id
4581
+
4234
4582
  # Represents a textual expression in the Common Expression Language (CEL) syntax.
4235
4583
  # CEL is a C-like expression language. The syntax and semantics of CEL are
4236
4584
  # documented at https://github.com/google/cel-spec.
@@ -4301,6 +4649,7 @@ module Google
4301
4649
 
4302
4650
  # Update properties of this object
4303
4651
  def update!(**args)
4652
+ @binding_id = args[:binding_id] if args.key?(:binding_id)
4304
4653
  @condition = args[:condition] if args.key?(:condition)
4305
4654
  @members = args[:members] if args.key?(:members)
4306
4655
  @role = args[:role] if args.key?(:role)
@@ -5330,7 +5679,7 @@ module Google
5330
5679
  end
5331
5680
  end
5332
5681
 
5333
- # Represents a customer-supplied encryption key
5682
+ #
5334
5683
  class CustomerEncryptionKey
5335
5684
  include Google::Apis::Core::Hashable
5336
5685
 
@@ -5387,7 +5736,7 @@ module Google
5387
5736
  class CustomerEncryptionKeyProtectedDisk
5388
5737
  include Google::Apis::Core::Hashable
5389
5738
 
5390
- # Represents a customer-supplied encryption key
5739
+ # Decrypts data associated with the disk with a customer-supplied encryption key.
5391
5740
  # Corresponds to the JSON property `diskEncryptionKey`
5392
5741
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5393
5742
  attr_accessor :disk_encryption_key
@@ -5491,7 +5840,16 @@ module Google
5491
5840
  # @return [String]
5492
5841
  attr_accessor :description
5493
5842
 
5494
- # Represents a customer-supplied encryption key
5843
+ # Encrypts the disk using a customer-supplied encryption key.
5844
+ # After you encrypt a disk with a customer-supplied key, you must provide the
5845
+ # same key if you use the disk later (e.g. to create a disk snapshot, to create
5846
+ # a disk image, to create a machine image, or to attach the disk to a virtual
5847
+ # machine).
5848
+ # Customer-supplied encryption keys do not protect access to metadata of the
5849
+ # disk.
5850
+ # If you do not provide an encryption key when creating the disk, then the disk
5851
+ # will be encrypted using an automatically generated key and you do not need to
5852
+ # provide a key to use the disk later.
5495
5853
  # Corresponds to the JSON property `diskEncryptionKey`
5496
5854
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5497
5855
  attr_accessor :disk_encryption_key
@@ -5618,6 +5976,12 @@ module Google
5618
5976
  # @return [Array<String>]
5619
5977
  attr_accessor :resource_policies
5620
5978
 
5979
+ # [Output Only] Reserved for future use.
5980
+ # Corresponds to the JSON property `satisfiesPzs`
5981
+ # @return [Boolean]
5982
+ attr_accessor :satisfies_pzs
5983
+ alias_method :satisfies_pzs?, :satisfies_pzs
5984
+
5621
5985
  # [Output Only] Server-defined fully-qualified URL for this resource.
5622
5986
  # Corresponds to the JSON property `selfLink`
5623
5987
  # @return [String]
@@ -5628,12 +5992,11 @@ module Google
5628
5992
  # @return [String]
5629
5993
  attr_accessor :self_link_with_id
5630
5994
 
5631
- # Size of the persistent disk, specified in GB. You can specify this field when
5632
- # creating a persistent disk using the sourceImage or sourceSnapshot parameter,
5633
- # or specify it alone to create an empty persistent disk.
5634
- # If you specify this field along with sourceImage or sourceSnapshot, the value
5635
- # of sizeGb must not be less than the size of the sourceImage or the size of the
5636
- # snapshot. Acceptable values are 1 to 65536, inclusive.
5995
+ # Size, in GB, of the persistent disk. You can specify this field when creating
5996
+ # a persistent disk using the sourceImage, sourceSnapshot, or sourceDisk
5997
+ # parameter, or specify it alone to create an empty persistent disk.
5998
+ # If you specify this field along with a source, the value of sizeGb must not be
5999
+ # less than the size of the source. Acceptable values are 1 to 65536, inclusive.
5637
6000
  # Corresponds to the JSON property `sizeGb`
5638
6001
  # @return [Fixnum]
5639
6002
  attr_accessor :size_gb
@@ -5675,7 +6038,8 @@ module Google
5675
6038
  # @return [String]
5676
6039
  attr_accessor :source_image
5677
6040
 
5678
- # Represents a customer-supplied encryption key
6041
+ # The customer-supplied encryption key of the source image. Required if the
6042
+ # source image is protected by a customer-supplied encryption key.
5679
6043
  # Corresponds to the JSON property `sourceImageEncryptionKey`
5680
6044
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5681
6045
  attr_accessor :source_image_encryption_key
@@ -5689,9 +6053,9 @@ module Google
5689
6053
  # @return [String]
5690
6054
  attr_accessor :source_image_id
5691
6055
 
5692
- # The source in-place snapshot used to create this disk. You can provide this as
5693
- # a partial or full URL to the resource. For example, the following are valid
5694
- # values:
6056
+ # [Deprecated] The source in-place snapshot used to create this disk. You can
6057
+ # provide this as a partial or full URL to the resource. For example, the
6058
+ # following are valid values:
5695
6059
  # - https://www.googleapis.com/compute/v1/projects/project/global/
5696
6060
  # inPlaceSnapshots/inPlaceSnapshots
5697
6061
  # - projects/project/global/inPlaceSnapshots/inPlaceSnapshots
@@ -5700,16 +6064,37 @@ module Google
5700
6064
  # @return [String]
5701
6065
  attr_accessor :source_in_place_snapshot
5702
6066
 
5703
- # [Output Only] The unique ID of the in-place snapshot used to create this disk.
5704
- # This value identifies the exact in-place snapshot that was used to create this
5705
- # persistent disk. For example, if you created the persistent disk from an in-
5706
- # place snapshot that was later deleted and recreated under the same name, the
5707
- # source in-place snapshot ID would identify the exact version of the in-place
5708
- # snapshot that was used.
6067
+ # [Deprecated] [Output Only] The unique ID of the in-place snapshot used to
6068
+ # create this disk. This value identifies the exact in-place snapshot that was
6069
+ # used to create this persistent disk. For example, if you created the
6070
+ # persistent disk from an in-place snapshot that was later deleted and recreated
6071
+ # under the same name, the source in-place snapshot ID would identify the exact
6072
+ # version of the in-place snapshot that was used.
5709
6073
  # Corresponds to the JSON property `sourceInPlaceSnapshotId`
5710
6074
  # @return [String]
5711
6075
  attr_accessor :source_in_place_snapshot_id
5712
6076
 
6077
+ # The source instant snapshot used to create this disk. You can provide this as
6078
+ # a partial or full URL to the resource. For example, the following are valid
6079
+ # values:
6080
+ # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/
6081
+ # instantSnapshots/instantSnapshot
6082
+ # - projects/project/zones/zone/instantSnapshots/instantSnapshot
6083
+ # - zones/zone/instantSnapshots/instantSnapshot
6084
+ # Corresponds to the JSON property `sourceInstantSnapshot`
6085
+ # @return [String]
6086
+ attr_accessor :source_instant_snapshot
6087
+
6088
+ # [Output Only] The unique ID of the instant snapshot used to create this disk.
6089
+ # This value identifies the exact instant snapshot that was used to create this
6090
+ # persistent disk. For example, if you created the persistent disk from an
6091
+ # instant snapshot that was later deleted and recreated under the same name, the
6092
+ # source instant snapshot ID would identify the exact version of the instant
6093
+ # snapshot that was used.
6094
+ # Corresponds to the JSON property `sourceInstantSnapshotId`
6095
+ # @return [String]
6096
+ attr_accessor :source_instant_snapshot_id
6097
+
5713
6098
  # The source snapshot used to create this disk. You can provide this as a
5714
6099
  # partial or full URL to the resource. For example, the following are valid
5715
6100
  # values:
@@ -5721,7 +6106,8 @@ module Google
5721
6106
  # @return [String]
5722
6107
  attr_accessor :source_snapshot
5723
6108
 
5724
- # Represents a customer-supplied encryption key
6109
+ # The customer-supplied encryption key of the source snapshot. Required if the
6110
+ # source snapshot is protected by a customer-supplied encryption key.
5725
6111
  # Corresponds to the JSON property `sourceSnapshotEncryptionKey`
5726
6112
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5727
6113
  attr_accessor :source_snapshot_encryption_key
@@ -5762,6 +6148,15 @@ module Google
5762
6148
  # @return [String]
5763
6149
  attr_accessor :type
5764
6150
 
6151
+ # A list of publicly visible user-licenses. Unlike regular licenses, user
6152
+ # provided licenses can be modified after the disk is created. This includes a
6153
+ # list of URLs to the license resource. For example, to provide a debian license:
6154
+ # https://www.googleapis.com/compute/v1/projects/debian-cloud/global/licenses/
6155
+ # debian-9-stretch
6156
+ # Corresponds to the JSON property `userLicenses`
6157
+ # @return [Array<String>]
6158
+ attr_accessor :user_licenses
6159
+
5765
6160
  # [Output Only] Links to the users of the disk (attached instances) in form:
5766
6161
  # projects/project/zones/zone/instances/instance
5767
6162
  # Corresponds to the JSON property `users`
@@ -5803,6 +6198,7 @@ module Google
5803
6198
  @region = args[:region] if args.key?(:region)
5804
6199
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
5805
6200
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
6201
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
5806
6202
  @self_link = args[:self_link] if args.key?(:self_link)
5807
6203
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
5808
6204
  @size_gb = args[:size_gb] if args.key?(:size_gb)
@@ -5813,6 +6209,8 @@ module Google
5813
6209
  @source_image_id = args[:source_image_id] if args.key?(:source_image_id)
5814
6210
  @source_in_place_snapshot = args[:source_in_place_snapshot] if args.key?(:source_in_place_snapshot)
5815
6211
  @source_in_place_snapshot_id = args[:source_in_place_snapshot_id] if args.key?(:source_in_place_snapshot_id)
6212
+ @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
6213
+ @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id)
5816
6214
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
5817
6215
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
5818
6216
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
@@ -5820,6 +6218,7 @@ module Google
5820
6218
  @status = args[:status] if args.key?(:status)
5821
6219
  @storage_type = args[:storage_type] if args.key?(:storage_type)
5822
6220
  @type = args[:type] if args.key?(:type)
6221
+ @user_licenses = args[:user_licenses] if args.key?(:user_licenses)
5823
6222
  @users = args[:users] if args.key?(:users)
5824
6223
  @zone = args[:zone] if args.key?(:zone)
5825
6224
  end
@@ -8251,6 +8650,8 @@ module Google
8251
8650
  # IP address that you can use. For detailed information, refer to [IP address
8252
8651
  # specifications](/load-balancing/docs/forwarding-rule-concepts#
8253
8652
  # ip_address_specifications).
8653
+ # Must be set to `0.0.0.0` when the target is targetGrpcProxy that has
8654
+ # validateForProxyless field set to true.
8254
8655
  # Corresponds to the JSON property `IPAddress`
8255
8656
  # @return [String]
8256
8657
  attr_accessor :ip_address
@@ -8389,7 +8790,7 @@ module Google
8389
8790
 
8390
8791
  # Opaque filter criteria used by Loadbalancer to restrict routing configuration
8391
8792
  # to a limited set of xDS compliant clients. In their xDS requests to
8392
- # Loadbalancer, xDS clients present node metadata. If a match takes place, the
8793
+ # Loadbalancer, xDS clients present node metadata. When there is a match, the
8393
8794
  # relevant configuration is made available to those proxies. Otherwise, all the
8394
8795
  # resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule will
8395
8796
  # not be visible to those proxies.
@@ -8397,7 +8798,8 @@ module Google
8397
8798
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
8398
8799
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
8399
8800
  # all of its filterLabels must match with corresponding labels provided in the
8400
- # metadata.
8801
+ # metadata. If multiple metadataFilters are specified, all of them need to be
8802
+ # satisfied in order to be considered a match.
8401
8803
  # metadataFilters specified here will be applifed before those specified in the
8402
8804
  # UrlMap that this ForwardingRule references.
8403
8805
  # metadataFilters only applies to Loadbalancers that have their
@@ -8417,9 +8819,9 @@ module Google
8417
8819
  attr_accessor :name
8418
8820
 
8419
8821
  # This field is not used for external load balancing.
8420
- # For INTERNAL and INTERNAL_SELF_MANAGED load balancing, this field identifies
8421
- # the network that the load balanced IP should belong to for this Forwarding
8422
- # Rule. If this field is not specified, the default network will be used.
8822
+ # For internal load balancing, this field identifies the network that the load
8823
+ # balanced IP should belong to for this Forwarding Rule. If this field is not
8824
+ # specified, the default network will be used.
8423
8825
  # Corresponds to the JSON property `network`
8424
8826
  # @return [String]
8425
8827
  attr_accessor :network
@@ -8439,13 +8841,14 @@ module Google
8439
8841
  # that points to a target proxy or a target pool. Do not use with a forwarding
8440
8842
  # rule that points to a backend service. This field is used along with the
8441
8843
  # target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy,
8442
- # TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.
8844
+ # TargetTcpProxy, TargetGrpcProxy, TargetVpnGateway, TargetPool, TargetInstance.
8443
8845
  # Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed
8444
8846
  # to ports in the specified range will be forwarded to target. Forwarding rules
8445
8847
  # with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.
8446
8848
  # Some types of forwarding target have constraints on the acceptable ports:
8447
8849
  # - TargetHttpProxy: 80, 8080
8448
8850
  # - TargetHttpsProxy: 443
8851
+ # - TargetGrpcProxy: Any ports
8449
8852
  # - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
8450
8853
  # 1883, 5222
8451
8854
  # - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
@@ -8487,6 +8890,12 @@ module Google
8487
8890
  # @return [String]
8488
8891
  attr_accessor :self_link_with_id
8489
8892
 
8893
+ # Service Directory resources to register this forwarding rule with. Currently,
8894
+ # only supports a single Service Directory resource.
8895
+ # Corresponds to the JSON property `serviceDirectoryRegistrations`
8896
+ # @return [Array<Google::Apis::ComputeAlpha::ForwardingRuleServiceDirectoryRegistration>]
8897
+ attr_accessor :service_directory_registrations
8898
+
8490
8899
  # An optional prefix to the service name for this Forwarding Rule. If specified,
8491
8900
  # the prefix is the first label of the fully qualified service name.
8492
8901
  # The label must be 1-63 characters long, and comply with RFC1035. Specifically,
@@ -8506,7 +8915,7 @@ module Google
8506
8915
  # @return [String]
8507
8916
  attr_accessor :service_name
8508
8917
 
8509
- # This field is only used for INTERNAL load balancing.
8918
+ # This field is only used for internal load balancing.
8510
8919
  # For internal load balancing, this field identifies the subnetwork that the
8511
8920
  # load balanced IP should belong to for this Forwarding Rule.
8512
8921
  # If the network specified is in auto subnet mode, this field is optional.
@@ -8517,11 +8926,11 @@ module Google
8517
8926
  attr_accessor :subnetwork
8518
8927
 
8519
8928
  # The URL of the target resource to receive the matched traffic. For regional
8520
- # forwarding rules, this target must live in the same region as the forwarding
8929
+ # forwarding rules, this target must be in the same region as the forwarding
8521
8930
  # rule. For global forwarding rules, this target must be a global load balancing
8522
8931
  # resource. The forwarded traffic must be of a type appropriate to the target
8523
- # object. For INTERNAL_SELF_MANAGED load balancing, only targetHttpProxy is
8524
- # valid, not targetHttpsProxy.
8932
+ # object. For more information, see the "Target" column in [Port specifications](
8933
+ # /load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).
8525
8934
  # Corresponds to the JSON property `target`
8526
8935
  # @return [String]
8527
8936
  attr_accessor :target
@@ -8556,6 +8965,7 @@ module Google
8556
8965
  @region = args[:region] if args.key?(:region)
8557
8966
  @self_link = args[:self_link] if args.key?(:self_link)
8558
8967
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
8968
+ @service_directory_registrations = args[:service_directory_registrations] if args.key?(:service_directory_registrations)
8559
8969
  @service_label = args[:service_label] if args.key?(:service_label)
8560
8970
  @service_name = args[:service_name] if args.key?(:service_name)
8561
8971
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
@@ -8823,6 +9233,33 @@ module Google
8823
9233
  end
8824
9234
  end
8825
9235
 
9236
+ # Describes the auto-registration of the Forwarding Rule to Service Directory.
9237
+ # The region and project of the Service Directory resource generated from this
9238
+ # registration will be the same as this Forwarding Rule.
9239
+ class ForwardingRuleServiceDirectoryRegistration
9240
+ include Google::Apis::Core::Hashable
9241
+
9242
+ # Service Directory namespace to register the forwarding rule under.
9243
+ # Corresponds to the JSON property `namespace`
9244
+ # @return [String]
9245
+ attr_accessor :namespace
9246
+
9247
+ # Service Directory service to register the forwarding rule under.
9248
+ # Corresponds to the JSON property `service`
9249
+ # @return [String]
9250
+ attr_accessor :service
9251
+
9252
+ def initialize(**args)
9253
+ update!(**args)
9254
+ end
9255
+
9256
+ # Update properties of this object
9257
+ def update!(**args)
9258
+ @namespace = args[:namespace] if args.key?(:namespace)
9259
+ @service = args[:service] if args.key?(:service)
9260
+ end
9261
+ end
9262
+
8826
9263
  #
8827
9264
  class ForwardingRulesScopedList
8828
9265
  include Google::Apis::Core::Hashable
@@ -10429,6 +10866,8 @@ module Google
10429
10866
  # port numbers in the format host:port. * matches any string of ([a-z0-9-.]*).
10430
10867
  # In that case, * must be the first character and must be followed in the
10431
10868
  # pattern by either - or ..
10869
+ # * based matching is not supported when the URL map is bound to target gRPC
10870
+ # proxy that has validateForProxyless field set to true.
10432
10871
  # Corresponds to the JSON property `hosts`
10433
10872
  # @return [Array<String>]
10434
10873
  attr_accessor :hosts
@@ -10634,6 +11073,13 @@ module Google
10634
11073
  # For matching against the HTTP request's authority, use a headerMatch with the
10635
11074
  # header name ":authority".
10636
11075
  # For matching a request's method, use the headerName ":method".
11076
+ # When the URL map is bound to target gRPC proxy that has validateForProxyless
11077
+ # field set to true, only non-binary user-specified custom metadata and the `
11078
+ # content-type` header are supported. The following transport-level headers
11079
+ # cannot be used in header matching rules: `:authority`, `:method`, `:path`, `:
11080
+ # scheme`, `user-agent`, `accept-encoding`, `content-encoding`, `grpc-accept-
11081
+ # encoding`, `grpc-encoding`, `grpc-previous-rpc-attempts`, `grpc-tags-bin`, `
11082
+ # grpc-timeout` and `grpc-trace-bin.
10637
11083
  # Corresponds to the JSON property `headerName`
10638
11084
  # @return [String]
10639
11085
  attr_accessor :header_name
@@ -11209,10 +11655,10 @@ module Google
11209
11655
  # A list of weighted backend services to send traffic to when a route match
11210
11656
  # occurs. The weights determine the fraction of traffic that flows to their
11211
11657
  # corresponding backend service. If all traffic needs to go to a single backend
11212
- # service, there must be one weightedBackendService with weight set to a non 0
11213
- # number.
11658
+ # service, there must be one weightedBackendService with weight set to a non-
11659
+ # zero number.
11214
11660
  # Once a backendService is identified and before forwarding the request to the
11215
- # backend service, advanced routing actions like Url rewrites and header
11661
+ # backend service, advanced routing actions such as URL rewrites and header
11216
11662
  # transformations are applied depending on additional settings specified in this
11217
11663
  # HttpRouteAction.
11218
11664
  # Corresponds to the JSON property `weightedBackendServices`
@@ -11256,6 +11702,8 @@ module Google
11256
11702
  # enabled by Traffic Director. httpFilterConfigs only applies for Loadbalancers
11257
11703
  # with loadBalancingScheme set to INTERNAL_SELF_MANAGED. See ForwardingRule for
11258
11704
  # more details.
11705
+ # Not supported when the URL map is bound to target gRPC proxy that has
11706
+ # validateForProxyless field set to true.
11259
11707
  # Corresponds to the JSON property `httpFilterConfigs`
11260
11708
  # @return [Array<Google::Apis::ComputeAlpha::HttpFilterConfig>]
11261
11709
  attr_accessor :http_filter_configs
@@ -11265,11 +11713,17 @@ module Google
11265
11713
  # Loadbalancers with loadBalancingScheme set to INTERNAL_SELF_MANAGED. See
11266
11714
  # ForwardingRule for more details.
11267
11715
  # The only configTypeUrl supported is type.googleapis.com/google.protobuf.Struct
11716
+ # Not supported when the URL map is bound to target gRPC proxy that has
11717
+ # validateForProxyless field set to true.
11268
11718
  # Corresponds to the JSON property `httpFilterMetadata`
11269
11719
  # @return [Array<Google::Apis::ComputeAlpha::HttpFilterConfig>]
11270
11720
  attr_accessor :http_filter_metadata
11271
11721
 
11272
- #
11722
+ # The list of criteria for matching attributes of a request to this routeRule.
11723
+ # This list has OR semantics: the request matches this routeRule when any of the
11724
+ # matchRules are satisfied. However predicates within a given matchRule have AND
11725
+ # semantics. All predicates within a matchRule must match for the request to
11726
+ # match the rule.
11273
11727
  # Corresponds to the JSON property `matchRules`
11274
11728
  # @return [Array<Google::Apis::ComputeAlpha::HttpRouteRuleMatch>]
11275
11729
  attr_accessor :match_rules
@@ -11297,6 +11751,8 @@ module Google
11297
11751
  # routeAction cannot contain any weightedBackendServices.
11298
11752
  # Only one of urlRedirect, service or routeAction.weightedBackendService must be
11299
11753
  # set.
11754
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
11755
+ # within a routeRule's routeAction.
11300
11756
  # Corresponds to the JSON property `routeAction`
11301
11757
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
11302
11758
  attr_accessor :route_action
@@ -11359,6 +11815,7 @@ module Google
11359
11815
  # Specifies that prefixMatch and fullPathMatch matches are case sensitive.
11360
11816
  # The default value is false.
11361
11817
  # ignoreCase must not be used with regexMatch.
11818
+ # Not supported when the URL map is bound to target gRPC proxy.
11362
11819
  # Corresponds to the JSON property `ignoreCase`
11363
11820
  # @return [Boolean]
11364
11821
  attr_accessor :ignore_case
@@ -11366,17 +11823,20 @@ module Google
11366
11823
 
11367
11824
  # Opaque filter criteria used by Loadbalancer to restrict routing configuration
11368
11825
  # to a limited set of xDS compliant clients. In their xDS requests to
11369
- # Loadbalancer, xDS clients present node metadata. If a match takes place, the
11826
+ # Loadbalancer, xDS clients present node metadata. When there is a match, the
11370
11827
  # relevant routing configuration is made available to those proxies.
11371
11828
  # For each metadataFilter in this list, if its filterMatchCriteria is set to
11372
11829
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
11373
11830
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
11374
11831
  # all of its filterLabels must match with corresponding labels provided in the
11375
- # metadata.
11832
+ # metadata. If multiple metadataFilters are specified, all of them need to be
11833
+ # satisfied in order to be considered a match.
11376
11834
  # metadataFilters specified here will be applied after those specified in
11377
11835
  # ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to.
11378
11836
  # metadataFilters only applies to Loadbalancers that have their
11379
11837
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
11838
+ # Not supported when the URL map is bound to target gRPC proxy that has
11839
+ # validateForProxyless field set to true.
11380
11840
  # Corresponds to the JSON property `metadataFilters`
11381
11841
  # @return [Array<Google::Apis::ComputeAlpha::MetadataFilter>]
11382
11842
  attr_accessor :metadata_filters
@@ -11391,6 +11851,7 @@ module Google
11391
11851
 
11392
11852
  # Specifies a list of query parameter match criteria, all of which must match
11393
11853
  # corresponding query parameters in the request.
11854
+ # Not supported when the URL map is bound to target gRPC proxy.
11394
11855
  # Corresponds to the JSON property `queryParameterMatches`
11395
11856
  # @return [Array<Google::Apis::ComputeAlpha::HttpQueryParameterMatch>]
11396
11857
  attr_accessor :query_parameter_matches
@@ -11705,7 +12166,14 @@ module Google
11705
12166
  # @return [Fixnum]
11706
12167
  attr_accessor :id
11707
12168
 
11708
- # Represents a customer-supplied encryption key
12169
+ # Encrypts the image using a customer-supplied encryption key.
12170
+ # After you encrypt an image with a customer-supplied key, you must provide the
12171
+ # same key if you use the image later (e.g. to create a disk from the image).
12172
+ # Customer-supplied encryption keys do not protect access to metadata of the
12173
+ # disk.
12174
+ # If you do not provide an encryption key when creating the image, then the disk
12175
+ # will be encrypted using an automatically generated key and you do not need to
12176
+ # provide a key to use the image later.
11709
12177
  # Corresponds to the JSON property `imageEncryptionKey`
11710
12178
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11711
12179
  attr_accessor :image_encryption_key
@@ -11785,7 +12253,8 @@ module Google
11785
12253
  # @return [String]
11786
12254
  attr_accessor :source_disk
11787
12255
 
11788
- # Represents a customer-supplied encryption key
12256
+ # The customer-supplied encryption key of the source disk. Required if the
12257
+ # source disk is protected by a customer-supplied encryption key.
11789
12258
  # Corresponds to the JSON property `sourceDiskEncryptionKey`
11790
12259
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11791
12260
  attr_accessor :source_disk_encryption_key
@@ -11808,7 +12277,8 @@ module Google
11808
12277
  # @return [String]
11809
12278
  attr_accessor :source_image
11810
12279
 
11811
- # Represents a customer-supplied encryption key
12280
+ # The customer-supplied encryption key of the source image. Required if the
12281
+ # source image is protected by a customer-supplied encryption key.
11812
12282
  # Corresponds to the JSON property `sourceImageEncryptionKey`
11813
12283
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11814
12284
  attr_accessor :source_image_encryption_key
@@ -11832,7 +12302,8 @@ module Google
11832
12302
  # @return [String]
11833
12303
  attr_accessor :source_snapshot
11834
12304
 
11835
- # Represents a customer-supplied encryption key
12305
+ # The customer-supplied encryption key of the source snapshot. Required if the
12306
+ # source snapshot is protected by a customer-supplied encryption key.
11836
12307
  # Corresponds to the JSON property `sourceSnapshotEncryptionKey`
11837
12308
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11838
12309
  attr_accessor :source_snapshot_encryption_key
@@ -12454,7 +12925,19 @@ module Google
12454
12925
  # @return [Fixnum]
12455
12926
  attr_accessor :id
12456
12927
 
12457
- # Represents a customer-supplied encryption key
12928
+ # Encrypts or decrypts data for an instance with a customer-supplied encryption
12929
+ # key.
12930
+ # If you are creating a new instance, this field encrypts the local SSD and in-
12931
+ # memory contents of the instance using a key that you provide.
12932
+ # If you are restarting an instance protected with a customer-supplied
12933
+ # encryption key, you must provide the correct key in order to successfully
12934
+ # restart the instance.
12935
+ # If you do not provide an encryption key when creating the instance, then the
12936
+ # local SSD and in-memory contents will be encrypted using an automatically
12937
+ # generated key and you do not need to provide a key to start the instance later.
12938
+ # Instance templates do not store customer-supplied encryption keys, so you
12939
+ # cannot use your own keys to encrypt local SSDs and in-memory content in a
12940
+ # managed instance group.
12458
12941
  # Corresponds to the JSON property `instanceEncryptionKey`
12459
12942
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
12460
12943
  attr_accessor :instance_encryption_key
@@ -12543,7 +13026,7 @@ module Google
12543
13026
  # @return [Array<Google::Apis::ComputeAlpha::NetworkInterface>]
12544
13027
  attr_accessor :network_interfaces
12545
13028
 
12546
- # Specifies whether this instance will be shut down on key revocation.
13029
+ # PostKeyRevocationActionType of the instance.
12547
13030
  # Corresponds to the JSON property `postKeyRevocationActionType`
12548
13031
  # @return [String]
12549
13032
  attr_accessor :post_key_revocation_action_type
@@ -12569,11 +13052,23 @@ module Google
12569
13052
  # @return [Array<String>]
12570
13053
  attr_accessor :resource_policies
12571
13054
 
12572
- # Sets the scheduling options for an Instance. NextID: 12
13055
+ # [Output Only] Reserved for future use.
13056
+ # Corresponds to the JSON property `satisfiesPzs`
13057
+ # @return [Boolean]
13058
+ attr_accessor :satisfies_pzs
13059
+ alias_method :satisfies_pzs?, :satisfies_pzs
13060
+
13061
+ # Sets the scheduling options for an Instance. NextID: 13
12573
13062
  # Corresponds to the JSON property `scheduling`
12574
13063
  # @return [Google::Apis::ComputeAlpha::Scheduling]
12575
13064
  attr_accessor :scheduling
12576
13065
 
13066
+ # Secure labels to apply to this instance. These can be later modified by the
13067
+ # update method. Maximum number of secure labels allowed is 300.
13068
+ # Corresponds to the JSON property `secureLabels`
13069
+ # @return [Array<String>]
13070
+ attr_accessor :secure_labels
13071
+
12577
13072
  # [Output Only] Server-defined URL for this resource.
12578
13073
  # Corresponds to the JSON property `selfLink`
12579
13074
  # @return [String]
@@ -12620,7 +13115,7 @@ module Google
12620
13115
  # @return [String]
12621
13116
  attr_accessor :source_machine_image
12622
13117
 
12623
- # Represents a customer-supplied encryption key
13118
+ # Source GMI encryption key when creating an instance from GMI.
12624
13119
  # Corresponds to the JSON property `sourceMachineImageEncryptionKey`
12625
13120
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
12626
13121
  attr_accessor :source_machine_image_encryption_key
@@ -12634,7 +13129,8 @@ module Google
12634
13129
 
12635
13130
  # [Output Only] The status of the instance. One of the following values:
12636
13131
  # PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING,
12637
- # and TERMINATED.
13132
+ # and TERMINATED. For more information about the status of the instance, see
13133
+ # Instance life cycle.
12638
13134
  # Corresponds to the JSON property `status`
12639
13135
  # @return [String]
12640
13136
  attr_accessor :status
@@ -12698,7 +13194,9 @@ module Google
12698
13194
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
12699
13195
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
12700
13196
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
13197
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
12701
13198
  @scheduling = args[:scheduling] if args.key?(:scheduling)
13199
+ @secure_labels = args[:secure_labels] if args.key?(:secure_labels)
12702
13200
  @self_link = args[:self_link] if args.key?(:self_link)
12703
13201
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
12704
13202
  @service_accounts = args[:service_accounts] if args.key?(:service_accounts)
@@ -15397,7 +15895,7 @@ module Google
15397
15895
  # @return [Array<Google::Apis::ComputeAlpha::NetworkInterface>]
15398
15896
  attr_accessor :network_interfaces
15399
15897
 
15400
- # Specifies whether instances will be shut down on key revocation.
15898
+ # PostKeyRevocationActionType of the instance.
15401
15899
  # Corresponds to the JSON property `postKeyRevocationActionType`
15402
15900
  # @return [String]
15403
15901
  attr_accessor :post_key_revocation_action_type
@@ -15419,7 +15917,7 @@ module Google
15419
15917
  # @return [Array<String>]
15420
15918
  attr_accessor :resource_policies
15421
15919
 
15422
- # Sets the scheduling options for an Instance. NextID: 12
15920
+ # Sets the scheduling options for an Instance. NextID: 13
15423
15921
  # Corresponds to the JSON property `scheduling`
15424
15922
  # @return [Google::Apis::ComputeAlpha::Scheduling]
15425
15923
  attr_accessor :scheduling
@@ -15839,7 +16337,11 @@ module Google
15839
16337
  # @return [Array<Google::Apis::ComputeAlpha::CustomerEncryptionKeyProtectedDisk>]
15840
16338
  attr_accessor :disks
15841
16339
 
15842
- # Represents a customer-supplied encryption key
16340
+ # Decrypts data associated with an instance that is protected with a customer-
16341
+ # supplied encryption key.
16342
+ # If the instance you are starting is protected with a customer-supplied
16343
+ # encryption key, the correct key must be provided otherwise the instance resume
16344
+ # will not succeed.
15843
16345
  # Corresponds to the JSON property `instanceEncryptionKey`
15844
16346
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
15845
16347
  attr_accessor :instance_encryption_key
@@ -16098,7 +16600,11 @@ module Google
16098
16600
  # @return [Array<Google::Apis::ComputeAlpha::CustomerEncryptionKeyProtectedDisk>]
16099
16601
  attr_accessor :disks
16100
16602
 
16101
- # Represents a customer-supplied encryption key
16603
+ # Decrypts data associated with an instance that is protected with a customer-
16604
+ # supplied encryption key.
16605
+ # If the instance you are starting is protected with a customer-supplied
16606
+ # encryption key, the correct key must be provided otherwise the instance start
16607
+ # will not succeed.
16102
16608
  # Corresponds to the JSON property `instanceEncryptionKey`
16103
16609
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
16104
16610
  attr_accessor :instance_encryption_key
@@ -16114,6 +16620,267 @@ module Google
16114
16620
  end
16115
16621
  end
16116
16622
 
16623
+ # Represents a InstantSnapshot resource.
16624
+ # You can use instant snapshots to create disk rollback points quickly.. (==
16625
+ # resource_for `$api_version`.instantSnapshots ==)
16626
+ class InstantSnapshot
16627
+ include Google::Apis::Core::Hashable
16628
+
16629
+ # [Output Only] Creation timestamp in RFC3339 text format.
16630
+ # Corresponds to the JSON property `creationTimestamp`
16631
+ # @return [String]
16632
+ attr_accessor :creation_timestamp
16633
+
16634
+ # An optional description of this resource. Provide this property when you
16635
+ # create the resource.
16636
+ # Corresponds to the JSON property `description`
16637
+ # @return [String]
16638
+ attr_accessor :description
16639
+
16640
+ # [Output Only] Size of the source disk, specified in GB.
16641
+ # Corresponds to the JSON property `diskSizeGb`
16642
+ # @return [Fixnum]
16643
+ attr_accessor :disk_size_gb
16644
+
16645
+ # Whether to attempt an application consistent instant snapshot by informing the
16646
+ # OS to prepare for the snapshot process. Currently only supported on Windows
16647
+ # instances using the Volume Shadow Copy Service (VSS).
16648
+ # Corresponds to the JSON property `guestFlush`
16649
+ # @return [Boolean]
16650
+ attr_accessor :guest_flush
16651
+ alias_method :guest_flush?, :guest_flush
16652
+
16653
+ # [Output Only] The unique identifier for the resource. This identifier is
16654
+ # defined by the server.
16655
+ # Corresponds to the JSON property `id`
16656
+ # @return [Fixnum]
16657
+ attr_accessor :id
16658
+
16659
+ # [Output Only] Type of the resource. Always compute#instantSnapshot for
16660
+ # InstantSnapshot resources.
16661
+ # Corresponds to the JSON property `kind`
16662
+ # @return [String]
16663
+ attr_accessor :kind
16664
+
16665
+ # A fingerprint for the labels being applied to this InstantSnapshot, which is
16666
+ # essentially a hash of the labels set used for optimistic locking. The
16667
+ # fingerprint is initially generated by Compute Engine and changes after every
16668
+ # request to modify or update labels. You must always provide an up-to-date
16669
+ # fingerprint hash in order to update or change labels, otherwise the request
16670
+ # will fail with error 412 conditionNotMet.
16671
+ # To see the latest fingerprint, make a get() request to retrieve a
16672
+ # InstantSnapshot.
16673
+ # Corresponds to the JSON property `labelFingerprint`
16674
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
16675
+ # @return [String]
16676
+ attr_accessor :label_fingerprint
16677
+
16678
+ # Labels to apply to this InstantSnapshot. These can be later modified by the
16679
+ # setLabels method. Label values may be empty.
16680
+ # Corresponds to the JSON property `labels`
16681
+ # @return [Hash<String,String>]
16682
+ attr_accessor :labels
16683
+
16684
+ # Name of the resource; provided by the client when the resource is created. The
16685
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
16686
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
16687
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
16688
+ # and all following characters must be a dash, lowercase letter, or digit,
16689
+ # except the last character, which cannot be a dash.
16690
+ # Corresponds to the JSON property `name`
16691
+ # @return [String]
16692
+ attr_accessor :name
16693
+
16694
+ # [Output Only] URL of the region where the instant snapshot resides. You must
16695
+ # specify this field as part of the HTTP request URL. It is not settable as a
16696
+ # field in the request body.
16697
+ # Corresponds to the JSON property `region`
16698
+ # @return [String]
16699
+ attr_accessor :region
16700
+
16701
+ # [Output Only] Server-defined URL for the resource.
16702
+ # Corresponds to the JSON property `selfLink`
16703
+ # @return [String]
16704
+ attr_accessor :self_link
16705
+
16706
+ # [Output Only] Server-defined URL for this resource's resource id.
16707
+ # Corresponds to the JSON property `selfLinkWithId`
16708
+ # @return [String]
16709
+ attr_accessor :self_link_with_id
16710
+
16711
+ # URL of the source disk used to create this instant snapshot. Note that the
16712
+ # source disk must be in the same zone/region as the instant snapshot to be
16713
+ # created. This can be a full or valid partial URL. For example, the following
16714
+ # are valid values:
16715
+ # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
16716
+ # - projects/project/zones/zone/disks/disk
16717
+ # - zones/zone/disks/disk
16718
+ # Corresponds to the JSON property `sourceDisk`
16719
+ # @return [String]
16720
+ attr_accessor :source_disk
16721
+
16722
+ # [Output Only] The ID value of the disk used to create this InstantSnapshot.
16723
+ # This value may be used to determine whether the InstantSnapshot was taken from
16724
+ # the current or a previous instance of a given disk name.
16725
+ # Corresponds to the JSON property `sourceDiskId`
16726
+ # @return [String]
16727
+ attr_accessor :source_disk_id
16728
+
16729
+ # [Output Only] The status of the instantSnapshot. This can be CREATING,
16730
+ # DELETING, FAILED, or READY.
16731
+ # Corresponds to the JSON property `status`
16732
+ # @return [String]
16733
+ attr_accessor :status
16734
+
16735
+ # [Output Only] URL of the zone where the instant snapshot resides. You must
16736
+ # specify this field as part of the HTTP request URL. It is not settable as a
16737
+ # field in the request body.
16738
+ # Corresponds to the JSON property `zone`
16739
+ # @return [String]
16740
+ attr_accessor :zone
16741
+
16742
+ def initialize(**args)
16743
+ update!(**args)
16744
+ end
16745
+
16746
+ # Update properties of this object
16747
+ def update!(**args)
16748
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
16749
+ @description = args[:description] if args.key?(:description)
16750
+ @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
16751
+ @guest_flush = args[:guest_flush] if args.key?(:guest_flush)
16752
+ @id = args[:id] if args.key?(:id)
16753
+ @kind = args[:kind] if args.key?(:kind)
16754
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
16755
+ @labels = args[:labels] if args.key?(:labels)
16756
+ @name = args[:name] if args.key?(:name)
16757
+ @region = args[:region] if args.key?(:region)
16758
+ @self_link = args[:self_link] if args.key?(:self_link)
16759
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
16760
+ @source_disk = args[:source_disk] if args.key?(:source_disk)
16761
+ @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
16762
+ @status = args[:status] if args.key?(:status)
16763
+ @zone = args[:zone] if args.key?(:zone)
16764
+ end
16765
+ end
16766
+
16767
+ # Contains a list of InstantSnapshot resources.
16768
+ class InstantSnapshotList
16769
+ include Google::Apis::Core::Hashable
16770
+
16771
+ # [Output Only] Unique identifier for the resource; defined by the server.
16772
+ # Corresponds to the JSON property `id`
16773
+ # @return [String]
16774
+ attr_accessor :id
16775
+
16776
+ # A list of InstantSnapshot resources.
16777
+ # Corresponds to the JSON property `items`
16778
+ # @return [Array<Google::Apis::ComputeAlpha::InstantSnapshot>]
16779
+ attr_accessor :items
16780
+
16781
+ # Type of resource.
16782
+ # Corresponds to the JSON property `kind`
16783
+ # @return [String]
16784
+ attr_accessor :kind
16785
+
16786
+ # [Output Only] This token allows you to get the next page of results for list
16787
+ # requests. If the number of results is larger than maxResults, use the
16788
+ # nextPageToken as a value for the query parameter pageToken in the next list
16789
+ # request. Subsequent list requests will have their own nextPageToken to
16790
+ # continue paging through the results.
16791
+ # Corresponds to the JSON property `nextPageToken`
16792
+ # @return [String]
16793
+ attr_accessor :next_page_token
16794
+
16795
+ # [Output Only] Server-defined URL for this resource.
16796
+ # Corresponds to the JSON property `selfLink`
16797
+ # @return [String]
16798
+ attr_accessor :self_link
16799
+
16800
+ # [Output Only] Informational warning message.
16801
+ # Corresponds to the JSON property `warning`
16802
+ # @return [Google::Apis::ComputeAlpha::InstantSnapshotList::Warning]
16803
+ attr_accessor :warning
16804
+
16805
+ def initialize(**args)
16806
+ update!(**args)
16807
+ end
16808
+
16809
+ # Update properties of this object
16810
+ def update!(**args)
16811
+ @id = args[:id] if args.key?(:id)
16812
+ @items = args[:items] if args.key?(:items)
16813
+ @kind = args[:kind] if args.key?(:kind)
16814
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
16815
+ @self_link = args[:self_link] if args.key?(:self_link)
16816
+ @warning = args[:warning] if args.key?(:warning)
16817
+ end
16818
+
16819
+ # [Output Only] Informational warning message.
16820
+ class Warning
16821
+ include Google::Apis::Core::Hashable
16822
+
16823
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
16824
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
16825
+ # Corresponds to the JSON property `code`
16826
+ # @return [String]
16827
+ attr_accessor :code
16828
+
16829
+ # [Output Only] Metadata about this warning in key: value format. For example:
16830
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
16831
+ # Corresponds to the JSON property `data`
16832
+ # @return [Array<Google::Apis::ComputeAlpha::InstantSnapshotList::Warning::Datum>]
16833
+ attr_accessor :data
16834
+
16835
+ # [Output Only] A human-readable description of the warning code.
16836
+ # Corresponds to the JSON property `message`
16837
+ # @return [String]
16838
+ attr_accessor :message
16839
+
16840
+ def initialize(**args)
16841
+ update!(**args)
16842
+ end
16843
+
16844
+ # Update properties of this object
16845
+ def update!(**args)
16846
+ @code = args[:code] if args.key?(:code)
16847
+ @data = args[:data] if args.key?(:data)
16848
+ @message = args[:message] if args.key?(:message)
16849
+ end
16850
+
16851
+ #
16852
+ class Datum
16853
+ include Google::Apis::Core::Hashable
16854
+
16855
+ # [Output Only] A key that provides more detail on the warning being returned.
16856
+ # For example, for warnings where there are no results in a list request for a
16857
+ # particular zone, this key might be scope and the key value might be the zone
16858
+ # name. Other examples might be a key indicating a deprecated resource and a
16859
+ # suggested replacement, or a warning about invalid network settings (for
16860
+ # example, if an instance attempts to perform IP forwarding but is not enabled
16861
+ # for IP forwarding).
16862
+ # Corresponds to the JSON property `key`
16863
+ # @return [String]
16864
+ attr_accessor :key
16865
+
16866
+ # [Output Only] A warning data value corresponding to the key.
16867
+ # Corresponds to the JSON property `value`
16868
+ # @return [String]
16869
+ attr_accessor :value
16870
+
16871
+ def initialize(**args)
16872
+ update!(**args)
16873
+ end
16874
+
16875
+ # Update properties of this object
16876
+ def update!(**args)
16877
+ @key = args[:key] if args.key?(:key)
16878
+ @value = args[:value] if args.key?(:value)
16879
+ end
16880
+ end
16881
+ end
16882
+ end
16883
+
16117
16884
  # HttpRouteRuleMatch criteria for field values that must stay within the
16118
16885
  # specified integer range.
16119
16886
  class Int64RangeMatch
@@ -16444,6 +17211,11 @@ module Google
16444
17211
  # @return [String]
16445
17212
  attr_accessor :edge_availability_domain
16446
17213
 
17214
+ # Indicates the user-supplied encryption option of this interconnect attachment.
17215
+ # Corresponds to the JSON property `encryption`
17216
+ # @return [String]
17217
+ attr_accessor :encryption
17218
+
16447
17219
  # [Output Only] Google reference ID, to be used when raising support tickets
16448
17220
  # with Google or otherwise to debug backend connectivity issues. [Deprecated]
16449
17221
  # This field is not used.
@@ -16463,6 +17235,22 @@ module Google
16463
17235
  # @return [String]
16464
17236
  attr_accessor :interconnect
16465
17237
 
17238
+ # URL of addresses that have been reserved for the interconnect attachment, Used
17239
+ # only for interconnect attachment that has the encryption option as IPSEC. The
17240
+ # addresses must be RFC 1918 IP address ranges. When creating HA VPN gateway
17241
+ # over the interconnect attachment, if the attachment is configured to use an
17242
+ # RFC 1918 IP address, then the VPN gateway?s IP address will be allocated from
17243
+ # the IP address range specified here. For example, if the HA VPN gateway?s
17244
+ # interface 0 is paired to this interconnect attachment, then an RFC 1918 IP
17245
+ # address for the VPN gateway interface 0 will be allocated from the IP address
17246
+ # specified for this interconnect attachment. If this field is not specified for
17247
+ # interconnect attachment that has encryption option as IPSEC, later on when
17248
+ # creating HA VPN gateway on this interconnect attachment, the HA VPN gateway's
17249
+ # IP address will be allocated from regional external IP address pool.
17250
+ # Corresponds to the JSON property `ipsecInternalAddresses`
17251
+ # @return [Array<String>]
17252
+ attr_accessor :ipsec_internal_addresses
17253
+
16466
17254
  # [Output Only] Type of the resource. Always compute#interconnectAttachment for
16467
17255
  # interconnect attachments.
16468
17256
  # Corresponds to the JSON property `kind`
@@ -16621,9 +17409,11 @@ module Google
16621
17409
  @customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address)
16622
17410
  @description = args[:description] if args.key?(:description)
16623
17411
  @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
17412
+ @encryption = args[:encryption] if args.key?(:encryption)
16624
17413
  @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id)
16625
17414
  @id = args[:id] if args.key?(:id)
16626
17415
  @interconnect = args[:interconnect] if args.key?(:interconnect)
17416
+ @ipsec_internal_addresses = args[:ipsec_internal_addresses] if args.key?(:ipsec_internal_addresses)
16627
17417
  @kind = args[:kind] if args.key?(:kind)
16628
17418
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
16629
17419
  @labels = args[:labels] if args.key?(:labels)
@@ -18720,7 +19510,7 @@ module Google
18720
19510
  # @return [String]
18721
19511
  attr_accessor :description
18722
19512
 
18723
- # [Input Only] Specifies to create an application consistent machine image by
19513
+ # [Input Only] Whether to attempt an application consistent machine image by
18724
19514
  # informing the OS to prepare for the snapshot process. Currently only supported
18725
19515
  # on Windows instances using the Volume Shadow Copy Service (VSS).
18726
19516
  # Corresponds to the JSON property `guestFlush`
@@ -18740,7 +19530,16 @@ module Google
18740
19530
  # @return [String]
18741
19531
  attr_accessor :kind
18742
19532
 
18743
- # Represents a customer-supplied encryption key
19533
+ # Encrypts the machine image using a customer-supplied encryption key.
19534
+ # After you encrypt a machine image using a customer-supplied key, you must
19535
+ # provide the same key if you use the machine image later. For example, you must
19536
+ # provide the encryption key when you create an instance from the encrypted
19537
+ # machine image in a future request.
19538
+ # Customer-supplied encryption keys do not protect access to metadata of the
19539
+ # machine image.
19540
+ # If you do not provide an encryption key when creating the machine image, then
19541
+ # the machine image will be encrypted using an automatically generated key and
19542
+ # you do not need to provide a key to use the machine image later.
18744
19543
  # Corresponds to the JSON property `machineImageEncryptionKey`
18745
19544
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
18746
19545
  attr_accessor :machine_image_encryption_key
@@ -20057,10 +20856,11 @@ module Google
20057
20856
  # Represents a collection of network endpoints.
20058
20857
  # A network endpoint group (NEG) defines how a set of endpoints should be
20059
20858
  # reached, whether they are reachable, and where they are located. For more
20060
- # information about using NEGs, see Setting up internet NEGs or Setting up
20061
- # zonal NEGs. (== resource_for `$api_version`.networkEndpointGroups ==) (==
20062
- # resource_for `$api_version`.globalNetworkEndpointGroups ==) (== resource_for `$
20063
- # api_version`.regionNetworkEndpointGroups ==)
20859
+ # information about using NEGs, see Setting up internet NEGs, Setting up zonal
20860
+ # NEGs, or Setting up serverless NEGs. (== resource_for `$api_version`.
20861
+ # networkEndpointGroups ==) (== resource_for `$api_version`.
20862
+ # globalNetworkEndpointGroups ==) (== resource_for `$api_version`.
20863
+ # regionNetworkEndpointGroups ==)
20064
20864
  class NetworkEndpointGroup
20065
20865
  include Google::Apis::Core::Hashable
20066
20866
 
@@ -20146,7 +20946,9 @@ module Google
20146
20946
  # @return [String]
20147
20947
  attr_accessor :network
20148
20948
 
20149
- # Type of network endpoints in this network endpoint group.
20949
+ # Type of network endpoints in this network endpoint group. Can be one of
20950
+ # GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT,
20951
+ # or SERVERLESS.
20150
20952
  # Corresponds to the JSON property `networkEndpointType`
20151
20953
  # @return [String]
20152
20954
  attr_accessor :network_endpoint_type
@@ -21010,6 +21812,15 @@ module Google
21010
21812
  # @return [String]
21011
21813
  attr_accessor :network_ip
21012
21814
 
21815
+ # The networking queue count for the network interface. Both Rx and Tx queues
21816
+ # will be set to this number. If it's not specified by the user, a default
21817
+ # number of queues will be assigned. For Virtio-net, each interface will get (
21818
+ # min(#vCPU, 32) / #vNIC) queues. For gVNIC, each interface will get (min(#vCPU /
21819
+ # 2, 16) / #vNIC) qeueus.
21820
+ # Corresponds to the JSON property `queueCount`
21821
+ # @return [Fixnum]
21822
+ attr_accessor :queue_count
21823
+
21013
21824
  # The URL of the Subnetwork resource for this instance. If the network resource
21014
21825
  # is in legacy mode, do not specify this field. If the network is in auto subnet
21015
21826
  # mode, specifying the subnetwork is optional. If the network is in custom
@@ -21037,6 +21848,7 @@ module Google
21037
21848
  @name = args[:name] if args.key?(:name)
21038
21849
  @network = args[:network] if args.key?(:network)
21039
21850
  @network_ip = args[:network_ip] if args.key?(:network_ip)
21851
+ @queue_count = args[:queue_count] if args.key?(:queue_count)
21040
21852
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
21041
21853
  end
21042
21854
  end
@@ -21505,7 +22317,9 @@ module Google
21505
22317
  attr_accessor :location_hint
21506
22318
 
21507
22319
  # Specifies how to handle instances when a node in the group undergoes
21508
- # maintenance.
22320
+ # maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or
22321
+ # MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information,
22322
+ # see Maintenance policies.
21509
22323
  # Corresponds to the JSON property `maintenancePolicy`
21510
22324
  # @return [String]
21511
22325
  attr_accessor :maintenance_policy
@@ -21711,7 +22525,8 @@ module Google
21711
22525
  class NodeGroupAutoscalingPolicy
21712
22526
  include Google::Apis::Core::Hashable
21713
22527
 
21714
- # The maximum number of nodes that the group should have.
22528
+ # The maximum number of nodes that the group should have. Must be set if
22529
+ # autoscaling is enabled. Maximum value allowed is 100.
21715
22530
  # Corresponds to the JSON property `maxNodes`
21716
22531
  # @return [Fixnum]
21717
22532
  attr_accessor :max_nodes
@@ -21721,7 +22536,8 @@ module Google
21721
22536
  # @return [Fixnum]
21722
22537
  attr_accessor :min_nodes
21723
22538
 
21724
- # The autoscaling mode.
22539
+ # The autoscaling mode. Set to one of: ON, OFF, or ONLY_SCALE_OUT. For more
22540
+ # information, see Autoscaler modes.
21725
22541
  # Corresponds to the JSON property `mode`
21726
22542
  # @return [String]
21727
22543
  attr_accessor :mode
@@ -21919,6 +22735,12 @@ module Google
21919
22735
  # @return [String]
21920
22736
  attr_accessor :node_type
21921
22737
 
22738
+ # [Output Only] Reserved for future use.
22739
+ # Corresponds to the JSON property `satisfiesPzs`
22740
+ # @return [Boolean]
22741
+ attr_accessor :satisfies_pzs
22742
+ alias_method :satisfies_pzs?, :satisfies_pzs
22743
+
21922
22744
  # Binding properties for the physical server.
21923
22745
  # Corresponds to the JSON property `serverBinding`
21924
22746
  # @return [Google::Apis::ComputeAlpha::ServerBinding]
@@ -21946,6 +22768,7 @@ module Google
21946
22768
  @instances = args[:instances] if args.key?(:instances)
21947
22769
  @name = args[:name] if args.key?(:name)
21948
22770
  @node_type = args[:node_type] if args.key?(:node_type)
22771
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
21949
22772
  @server_binding = args[:server_binding] if args.key?(:server_binding)
21950
22773
  @server_id = args[:server_id] if args.key?(:server_id)
21951
22774
  @status = args[:status] if args.key?(:status)
@@ -25549,7 +26372,8 @@ module Google
25549
26372
  attr_accessor :usage_export_location
25550
26373
 
25551
26374
  # [Output Only] The role this project has in a shared VPC configuration.
25552
- # Currently only HOST projects are differentiated.
26375
+ # Currently, only projects with the host role, which is specified by the value
26376
+ # HOST, are differentiated.
25553
26377
  # Corresponds to the JSON property `xpnProjectStatus`
25554
26378
  # @return [String]
25555
26379
  attr_accessor :xpn_project_status
@@ -25942,20 +26766,30 @@ module Google
25942
26766
  class PublicAdvertisedPrefixPublicDelegatedPrefix
25943
26767
  include Google::Apis::Core::Hashable
25944
26768
 
26769
+ # The IP address range of the public delegated prefix
26770
+ # Corresponds to the JSON property `ipRange`
26771
+ # @return [String]
26772
+ attr_accessor :ip_range
26773
+
25945
26774
  # The name of the public delegated prefix
25946
26775
  # Corresponds to the JSON property `name`
25947
26776
  # @return [String]
25948
26777
  attr_accessor :name
25949
26778
 
26779
+ # The project number of the public delegated prefix
26780
+ # Corresponds to the JSON property `project`
26781
+ # @return [String]
26782
+ attr_accessor :project
26783
+
25950
26784
  # The region of the public delegated prefix if it is regional. If absent, the
25951
26785
  # prefix is global.
25952
26786
  # Corresponds to the JSON property `region`
25953
26787
  # @return [String]
25954
26788
  attr_accessor :region
25955
26789
 
25956
- # The status of the public delegated prefix. Possible values are: ACTIVE: The
25957
- # public delegated prefix is active DRAINED: The public delegated prefix is
25958
- # drained.
26790
+ # The status of the public delegated prefix. Possible values are: INITIALIZING:
26791
+ # The public delegated prefix is being initialized and addresses cannot be
26792
+ # created yet. ANNOUNCED: The public delegated prefix is active.
25959
26793
  # Corresponds to the JSON property `status`
25960
26794
  # @return [String]
25961
26795
  attr_accessor :status
@@ -25966,7 +26800,9 @@ module Google
25966
26800
 
25967
26801
  # Update properties of this object
25968
26802
  def update!(**args)
26803
+ @ip_range = args[:ip_range] if args.key?(:ip_range)
25969
26804
  @name = args[:name] if args.key?(:name)
26805
+ @project = args[:project] if args.key?(:project)
25970
26806
  @region = args[:region] if args.key?(:region)
25971
26807
  @status = args[:status] if args.key?(:status)
25972
26808
  end
@@ -26648,6 +27484,12 @@ module Google
26648
27484
  # @return [String]
26649
27485
  attr_accessor :status
26650
27486
 
27487
+ # [Output Only] Reserved for future use.
27488
+ # Corresponds to the JSON property `supportsPzs`
27489
+ # @return [Boolean]
27490
+ attr_accessor :supports_pzs
27491
+ alias_method :supports_pzs?, :supports_pzs
27492
+
26651
27493
  # [Output Only] A list of zones available in this region, in the form of
26652
27494
  # resource URLs.
26653
27495
  # Corresponds to the JSON property `zones`
@@ -26670,6 +27512,7 @@ module Google
26670
27512
  @self_link = args[:self_link] if args.key?(:self_link)
26671
27513
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
26672
27514
  @status = args[:status] if args.key?(:status)
27515
+ @supports_pzs = args[:supports_pzs] if args.key?(:supports_pzs)
26673
27516
  @zones = args[:zones] if args.key?(:zones)
26674
27517
  end
26675
27518
  end
@@ -27301,7 +28144,7 @@ module Google
27301
28144
  end
27302
28145
  end
27303
28146
 
27304
- # InstanceGroupManagers.applyUpdatesToInstances
28147
+ # RegionInstanceGroupManagers.applyUpdatesToInstances
27305
28148
  class RegionInstanceGroupManagersApplyUpdatesRequest
27306
28149
  include Google::Apis::Core::Hashable
27307
28150
 
@@ -28066,6 +28909,10 @@ module Google
28066
28909
  # Traffic Director.
28067
28910
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
28068
28911
  # regionUrlMaps are used by internal HTTP(S) load balancers.
28912
+ # For a list of supported URL map features by load balancer type, see the Load
28913
+ # balancing features: Routing and traffic management table.
28914
+ # For a list of supported URL map features for Traffic Director, see the
28915
+ # Traffic Director features: Routing and traffic management table.
28069
28916
  # This resource defines mappings from host names and URL paths to either a
28070
28917
  # backend service or a backend bucket.
28071
28918
  # To use the global urlMaps resource, the backend service must have a
@@ -29107,12 +29954,19 @@ module Google
29107
29954
  class ResourcePolicyInstanceSchedulePolicy
29108
29955
  include Google::Apis::Core::Hashable
29109
29956
 
29110
- # Schedule for the instance operation.
29957
+ # Specifies the time zone to be used in interpreting Schedule.schedule. The
29958
+ # value of this field must be a time zone name from the tz database: http://en.
29959
+ # wikipedia.org/wiki/Tz_database.
29960
+ # Corresponds to the JSON property `timeZone`
29961
+ # @return [String]
29962
+ attr_accessor :time_zone
29963
+
29964
+ # Schedule for an instance operation.
29111
29965
  # Corresponds to the JSON property `vmStartSchedule`
29112
29966
  # @return [Google::Apis::ComputeAlpha::ResourcePolicyInstanceSchedulePolicySchedule]
29113
29967
  attr_accessor :vm_start_schedule
29114
29968
 
29115
- # Schedule for the instance operation.
29969
+ # Schedule for an instance operation.
29116
29970
  # Corresponds to the JSON property `vmStopSchedule`
29117
29971
  # @return [Google::Apis::ComputeAlpha::ResourcePolicyInstanceSchedulePolicySchedule]
29118
29972
  attr_accessor :vm_stop_schedule
@@ -29123,12 +29977,13 @@ module Google
29123
29977
 
29124
29978
  # Update properties of this object
29125
29979
  def update!(**args)
29980
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
29126
29981
  @vm_start_schedule = args[:vm_start_schedule] if args.key?(:vm_start_schedule)
29127
29982
  @vm_stop_schedule = args[:vm_stop_schedule] if args.key?(:vm_stop_schedule)
29128
29983
  end
29129
29984
  end
29130
29985
 
29131
- # Schedule for the instance operation.
29986
+ # Schedule for an instance operation.
29132
29987
  class ResourcePolicyInstanceSchedulePolicySchedule
29133
29988
  include Google::Apis::Core::Hashable
29134
29989
 
@@ -29137,13 +29992,6 @@ module Google
29137
29992
  # @return [String]
29138
29993
  attr_accessor :schedule
29139
29994
 
29140
- # Specifies the time zone to be used in interpreting Schedule.schedule. The
29141
- # value of this field must be a time zone name from the tz database: http://en.
29142
- # wikipedia.org/wiki/Tz_database.
29143
- # Corresponds to the JSON property `timeZone`
29144
- # @return [String]
29145
- attr_accessor :time_zone
29146
-
29147
29995
  def initialize(**args)
29148
29996
  update!(**args)
29149
29997
  end
@@ -29151,7 +29999,6 @@ module Google
29151
29999
  # Update properties of this object
29152
30000
  def update!(**args)
29153
30001
  @schedule = args[:schedule] if args.key?(:schedule)
29154
- @time_zone = args[:time_zone] if args.key?(:time_zone)
29155
30002
  end
29156
30003
  end
29157
30004
 
@@ -29322,8 +30169,8 @@ module Google
29322
30169
  # @return [Fixnum]
29323
30170
  attr_accessor :max_retention_days
29324
30171
 
29325
- # Specifies the behavior to apply to existing, scheduled snapshots snapshots if
29326
- # the policy is changed.
30172
+ # TODO(b/165626794): Remove this field Specifies the behavior to apply to
30173
+ # existing, scheduled snapshots snapshots if the policy is changed.
29327
30174
  # Corresponds to the JSON property `onPolicySwitch`
29328
30175
  # @return [String]
29329
30176
  attr_accessor :on_policy_switch
@@ -30298,6 +31145,14 @@ module Google
30298
31145
  # @return [String]
30299
31146
  attr_accessor :peer_ip_address
30300
31147
 
31148
+ # URI of the VM instance that is used as third party router appliances such as
31149
+ # Next Gen Firewalls, Virtual Routers, SD-WAN. The VM instance must live in
31150
+ # zones contained in the same region as this Cloud Router. The VM instance is
31151
+ # the peer side of the BGP session.
31152
+ # Corresponds to the JSON property `routerApplianceInstance`
31153
+ # @return [String]
31154
+ attr_accessor :router_appliance_instance
31155
+
30301
31156
  def initialize(**args)
30302
31157
  update!(**args)
30303
31158
  end
@@ -30316,6 +31171,7 @@ module Google
30316
31171
  @name = args[:name] if args.key?(:name)
30317
31172
  @peer_asn = args[:peer_asn] if args.key?(:peer_asn)
30318
31173
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
31174
+ @router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance)
30319
31175
  end
30320
31176
  end
30321
31177
 
@@ -30457,6 +31313,35 @@ module Google
30457
31313
  # @return [String]
30458
31314
  attr_accessor :name
30459
31315
 
31316
+ # The regional private internal IP address that will be used to establish BGP
31317
+ # session to a VM instance, which is used as third party router appliances such
31318
+ # as Next Gen Firewalls, Virtual Routers, SD-WAN.
31319
+ # Corresponds to the JSON property `privateIpAddress`
31320
+ # @return [String]
31321
+ attr_accessor :private_ip_address
31322
+
31323
+ # Name of the interface that will be redundant with the current interface you
31324
+ # are creating. The redundantInterface must belong to the same Cloud Router as
31325
+ # the interface here. To establish the BGP session to SD-WAN VM, you must create
31326
+ # two BGP peers, and the two BGP peers need to be attached to two separate
31327
+ # interfaces that are redundant with each other. The redundant_interface must be
31328
+ # 1-63 characters long, and comply with RFC1035. Specifically, the
31329
+ # redundant_interface must be 1-63 characters long and match the regular
31330
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must
31331
+ # be a lowercase letter, and all following characters must be a dash, lowercase
31332
+ # letter, or digit, except the last character, which cannot be a dash.
31333
+ # Corresponds to the JSON property `redundantInterface`
31334
+ # @return [String]
31335
+ attr_accessor :redundant_interface
31336
+
31337
+ # The URL of the subnetwork resource this interface belongs to, it must be in
31338
+ # the same region as the router. When you establish a BGP session to a VM
31339
+ # instance using this interface, the VM instance must belong to the same
31340
+ # subnetwork as the subnetwork specified here.
31341
+ # Corresponds to the JSON property `subnetwork`
31342
+ # @return [String]
31343
+ attr_accessor :subnetwork
31344
+
30460
31345
  def initialize(**args)
30461
31346
  update!(**args)
30462
31347
  end
@@ -30468,6 +31353,9 @@ module Google
30468
31353
  @linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel)
30469
31354
  @management_type = args[:management_type] if args.key?(:management_type)
30470
31355
  @name = args[:name] if args.key?(:name)
31356
+ @private_ip_address = args[:private_ip_address] if args.key?(:private_ip_address)
31357
+ @redundant_interface = args[:redundant_interface] if args.key?(:redundant_interface)
31358
+ @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
30471
31359
  end
30472
31360
  end
30473
31361
 
@@ -30778,12 +31666,12 @@ module Google
30778
31666
  # @return [String]
30779
31667
  attr_accessor :match
30780
31668
 
30781
- # An integer indicating the priority of a rule in the list. The priority must be
30782
- # a positive value between 0 and 65000. The priority must be unique among rules
30783
- # within a NAT.
30784
- # Corresponds to the JSON property `priority`
31669
+ # An integer uniquely identifying a rule in the list. The rule number must be a
31670
+ # positive value between 0 and 65000, and must be unique among rules within a
31671
+ # NAT.
31672
+ # Corresponds to the JSON property `ruleNumber`
30785
31673
  # @return [Fixnum]
30786
- attr_accessor :priority
31674
+ attr_accessor :rule_number
30787
31675
 
30788
31676
  def initialize(**args)
30789
31677
  update!(**args)
@@ -30794,7 +31682,7 @@ module Google
30794
31682
  @action = args[:action] if args.key?(:action)
30795
31683
  @description = args[:description] if args.key?(:description)
30796
31684
  @match = args[:match] if args.key?(:match)
30797
- @priority = args[:priority] if args.key?(:priority)
31685
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
30798
31686
  end
30799
31687
  end
30800
31688
 
@@ -31084,10 +31972,10 @@ module Google
31084
31972
  # @return [Fixnum]
31085
31973
  attr_accessor :num_vm_endpoints_with_nat_mappings
31086
31974
 
31087
- # Priority of the rule.
31088
- # Corresponds to the JSON property `priority`
31975
+ # Rule number of the rule.
31976
+ # Corresponds to the JSON property `ruleNumber`
31089
31977
  # @return [Fixnum]
31090
- attr_accessor :priority
31978
+ attr_accessor :rule_number
31091
31979
 
31092
31980
  def initialize(**args)
31093
31981
  update!(**args)
@@ -31099,7 +31987,7 @@ module Google
31099
31987
  @drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
31100
31988
  @min_extra_ips_needed = args[:min_extra_ips_needed] if args.key?(:min_extra_ips_needed)
31101
31989
  @num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
31102
- @priority = args[:priority] if args.key?(:priority)
31990
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
31103
31991
  end
31104
31992
  end
31105
31993
 
@@ -31388,7 +32276,7 @@ module Google
31388
32276
  # @return [String]
31389
32277
  attr_accessor :device_name
31390
32278
 
31391
- # Represents a customer-supplied encryption key
32279
+ # The encryption key for the disk.
31392
32280
  # Corresponds to the JSON property `diskEncryptionKey`
31393
32281
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
31394
32282
  attr_accessor :disk_encryption_key
@@ -31524,7 +32412,7 @@ module Google
31524
32412
  end
31525
32413
  end
31526
32414
 
31527
- # Sets the scheduling options for an Instance. NextID: 12
32415
+ # Sets the scheduling options for an Instance. NextID: 13
31528
32416
  class Scheduling
31529
32417
  include Google::Apis::Core::Hashable
31530
32418
 
@@ -31553,18 +32441,6 @@ module Google
31553
32441
  # @return [String]
31554
32442
  attr_accessor :location_hint
31555
32443
 
31556
- # DEPRECATED, please use maintenance_freeze_duration_hours. TODO(b/154158138):
31557
- # Remove this field. Compute Engine Long Term Release. When specified, VMs that
31558
- # have this policy become long term release (internal: stable fleet) VMs.
31559
- # For all VM shapes, this should result in fewer disruptions due to software
31560
- # updates and greater predictability via 1 week extended notifications.
31561
- # For GPU VMs, this should also result in an 2 week uptime guarantee. See go/
31562
- # stable-fleet-gpus-design for more details.
31563
- # Corresponds to the JSON property `longTermRelease`
31564
- # @return [Boolean]
31565
- attr_accessor :long_term_release
31566
- alias_method :long_term_release?, :long_term_release
31567
-
31568
32444
  # Specifies the number of hours after instance creation where the instance won't
31569
32445
  # be scheduled for maintenance.
31570
32446
  # Corresponds to the JSON property `maintenanceFreezeDurationHours`
@@ -31609,7 +32485,6 @@ module Google
31609
32485
  @automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
31610
32486
  @latency_tolerant = args[:latency_tolerant] if args.key?(:latency_tolerant)
31611
32487
  @location_hint = args[:location_hint] if args.key?(:location_hint)
31612
- @long_term_release = args[:long_term_release] if args.key?(:long_term_release)
31613
32488
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
31614
32489
  @min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
31615
32490
  @node_affinities = args[:node_affinities] if args.key?(:node_affinities)
@@ -32262,7 +33137,7 @@ module Google
32262
33137
  # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfigLayer4Config>]
32263
33138
  attr_accessor :layer4_configs
32264
33139
 
32265
- # CIDR IP address range.
33140
+ # CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
32266
33141
  # Corresponds to the JSON property `srcIpRanges`
32267
33142
  # @return [Array<String>]
32268
33143
  attr_accessor :src_ip_ranges
@@ -32348,10 +33223,26 @@ module Google
32348
33223
  class SecurityPolicyRuleRateLimitOptions
32349
33224
  include Google::Apis::Core::Hashable
32350
33225
 
32351
- # Can only be specifed if the action for the rule is "rate_based_blacklist" If
33226
+ # Can only be specified if the action for the rule is "rate_based_ban". If
33227
+ # specified, the key will be banned for the configured 'ban_duration' when the
33228
+ # number of requests that exceed the 'rate_limit_threshold' also exceed this '
33229
+ # ban_threshold'.
33230
+ # Corresponds to the JSON property `banDurationSec`
33231
+ # @return [Fixnum]
33232
+ attr_accessor :ban_duration_sec
33233
+
33234
+ # Can only be specified if the action for the rule is "rate_based_ban". If
33235
+ # specified, the key will be banned for the configured 'ban_duration' when the
33236
+ # number of requests that exceed the 'rate_limit_threshold' also exceed this '
33237
+ # ban_threshold'.
33238
+ # Corresponds to the JSON property `banThreshold`
33239
+ # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleRateLimitOptionsThreshold]
33240
+ attr_accessor :ban_threshold
33241
+
33242
+ # Can only be specified if the action for the rule is "rate_based_ban" If
32352
33243
  # specified, determines the time (in seconds) the traffic will continue to be
32353
33244
  # blocked by the rate limit after the rate falls below the threshold. The
32354
- # default value is 0 seconds.
33245
+ # default value is 0 seconds. [Deprecated] This field is deprecated.
32355
33246
  # Corresponds to the JSON property `blockDuration`
32356
33247
  # @return [Fixnum]
32357
33248
  attr_accessor :block_duration
@@ -32376,7 +33267,13 @@ module Google
32376
33267
  # @return [String]
32377
33268
  attr_accessor :exceed_action
32378
33269
 
32379
- # Rate in requests per second at which to begin ratelimiting.
33270
+ # Threshold at which to begin ratelimiting.
33271
+ # Corresponds to the JSON property `rateLimitThreshold`
33272
+ # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleRateLimitOptionsThreshold]
33273
+ attr_accessor :rate_limit_threshold
33274
+
33275
+ # Rate in requests per second at which to begin ratelimiting. [Deprecated] This
33276
+ # field is deprecated.
32380
33277
  # Corresponds to the JSON property `thresholdRps`
32381
33278
  # @return [Fixnum]
32382
33279
  attr_accessor :threshold_rps
@@ -32387,14 +33284,42 @@ module Google
32387
33284
 
32388
33285
  # Update properties of this object
32389
33286
  def update!(**args)
33287
+ @ban_duration_sec = args[:ban_duration_sec] if args.key?(:ban_duration_sec)
33288
+ @ban_threshold = args[:ban_threshold] if args.key?(:ban_threshold)
32390
33289
  @block_duration = args[:block_duration] if args.key?(:block_duration)
32391
33290
  @conform_action = args[:conform_action] if args.key?(:conform_action)
32392
33291
  @enforce_on_key = args[:enforce_on_key] if args.key?(:enforce_on_key)
32393
33292
  @exceed_action = args[:exceed_action] if args.key?(:exceed_action)
33293
+ @rate_limit_threshold = args[:rate_limit_threshold] if args.key?(:rate_limit_threshold)
32394
33294
  @threshold_rps = args[:threshold_rps] if args.key?(:threshold_rps)
32395
33295
  end
32396
33296
  end
32397
33297
 
33298
+ #
33299
+ class SecurityPolicyRuleRateLimitOptionsThreshold
33300
+ include Google::Apis::Core::Hashable
33301
+
33302
+ # Number of HTTP(S) requests for calculating the threshold.
33303
+ # Corresponds to the JSON property `count`
33304
+ # @return [Fixnum]
33305
+ attr_accessor :count
33306
+
33307
+ # Interval over which the threshold is computed.
33308
+ # Corresponds to the JSON property `intervalSec`
33309
+ # @return [Fixnum]
33310
+ attr_accessor :interval_sec
33311
+
33312
+ def initialize(**args)
33313
+ update!(**args)
33314
+ end
33315
+
33316
+ # Update properties of this object
33317
+ def update!(**args)
33318
+ @count = args[:count] if args.key?(:count)
33319
+ @interval_sec = args[:interval_sec] if args.key?(:interval_sec)
33320
+ end
33321
+ end
33322
+
32398
33323
  # The authentication and authorization settings for a BackendService.
32399
33324
  class SecuritySettings
32400
33325
  include Google::Apis::Core::Hashable
@@ -32421,6 +33346,7 @@ module Google
32421
33346
  # clientTlsPolicy only applies to a global BackendService with the
32422
33347
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
32423
33348
  # If left blank, communications are not encrypted.
33349
+ # Note: This field currently has no impact.
32424
33350
  # Corresponds to the JSON property `clientTlsPolicy`
32425
33351
  # @return [String]
32426
33352
  attr_accessor :client_tls_policy
@@ -32443,6 +33369,7 @@ module Google
32443
33369
  # Only applies to a global BackendService with loadBalancingScheme set to
32444
33370
  # INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached
32445
33371
  # clientTlsPolicy with clientCertificate (mTLS mode).
33372
+ # Note: This field currently has no impact.
32446
33373
  # Corresponds to the JSON property `subjectAltNames`
32447
33374
  # @return [Array<String>]
32448
33375
  attr_accessor :subject_alt_names
@@ -32647,12 +33574,11 @@ module Google
32647
33574
  # @return [String]
32648
33575
  attr_accessor :name
32649
33576
 
32650
- # An array of IP CIDR ranges where each range is the url of the address resource
32651
- # which represents the range provided by the service producer to use for NAT in
32652
- # this service attachment.
32653
- # Corresponds to the JSON property `natIpCidrRanges`
33577
+ # An array of URLs where each entry is the URL of a subnet provided by the
33578
+ # service producer to use for NAT in this service attachment.
33579
+ # Corresponds to the JSON property `natSubnets`
32654
33580
  # @return [Array<String>]
32655
- attr_accessor :nat_ip_cidr_ranges
33581
+ attr_accessor :nat_subnets
32656
33582
 
32657
33583
  # The URL of a forwarding rule with loadBalancingScheme INTERNAL* that is
32658
33584
  # serving the endpoint identified by this service attachment.
@@ -32685,7 +33611,7 @@ module Google
32685
33611
  @id = args[:id] if args.key?(:id)
32686
33612
  @kind = args[:kind] if args.key?(:kind)
32687
33613
  @name = args[:name] if args.key?(:name)
32688
- @nat_ip_cidr_ranges = args[:nat_ip_cidr_ranges] if args.key?(:nat_ip_cidr_ranges)
33614
+ @nat_subnets = args[:nat_subnets] if args.key?(:nat_subnets)
32689
33615
  @producer_forwarding_rule = args[:producer_forwarding_rule] if args.key?(:producer_forwarding_rule)
32690
33616
  @region = args[:region] if args.key?(:region)
32691
33617
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -33107,7 +34033,12 @@ module Google
33107
34033
  attr_accessor :auto_created
33108
34034
  alias_method :auto_created?, :auto_created
33109
34035
 
33110
- # Chain name should conform to RFC1035.
34036
+ # Creates the new snapshot in the snapshot chain labeled with the specified name.
34037
+ # The chain name must be 1-63 characters long and comply with RFC1035. This is
34038
+ # an uncommon option only for advanced service owners who needs to create
34039
+ # separate snapshot chains, for example, for chargeback tracking. When you
34040
+ # describe your snapshot resource, this field is visible only if it has a non-
34041
+ # empty value.
33111
34042
  # Corresponds to the JSON property `chainName`
33112
34043
  # @return [String]
33113
34044
  attr_accessor :chain_name
@@ -33133,6 +34064,14 @@ module Google
33133
34064
  # @return [Fixnum]
33134
34065
  attr_accessor :download_bytes
33135
34066
 
34067
+ # [Input Only] Whether to attempt an application consistent snapshot by
34068
+ # informing the OS to prepare for the snapshot process. Currently only supported
34069
+ # on Windows instances using the Volume Shadow Copy Service (VSS).
34070
+ # Corresponds to the JSON property `guestFlush`
34071
+ # @return [Boolean]
34072
+ attr_accessor :guest_flush
34073
+ alias_method :guest_flush?, :guest_flush
34074
+
33136
34075
  # [Output Only] A list of features to enable on the guest operating system.
33137
34076
  # Applicable only for bootable images. Read Enabling guest operating system
33138
34077
  # features to see a list of available options.
@@ -33193,6 +34132,12 @@ module Google
33193
34132
  # @return [String]
33194
34133
  attr_accessor :name
33195
34134
 
34135
+ # [Output Only] Reserved for future use.
34136
+ # Corresponds to the JSON property `satisfiesPzs`
34137
+ # @return [Boolean]
34138
+ attr_accessor :satisfies_pzs
34139
+ alias_method :satisfies_pzs?, :satisfies_pzs
34140
+
33196
34141
  # [Output Only] Server-defined URL for the resource.
33197
34142
  # Corresponds to the JSON property `selfLink`
33198
34143
  # @return [String]
@@ -33203,17 +34148,27 @@ module Google
33203
34148
  # @return [String]
33204
34149
  attr_accessor :self_link_with_id
33205
34150
 
33206
- # Represents a customer-supplied encryption key
34151
+ # Encrypts the snapshot using a customer-supplied encryption key.
34152
+ # After you encrypt a snapshot using a customer-supplied key, you must provide
34153
+ # the same key if you use the snapshot later. For example, you must provide the
34154
+ # encryption key when you create a disk from the encrypted snapshot in a future
34155
+ # request.
34156
+ # Customer-supplied encryption keys do not protect access to metadata of the
34157
+ # snapshot.
34158
+ # If you do not provide an encryption key when creating the snapshot, then the
34159
+ # snapshot will be encrypted using an automatically generated key and you do not
34160
+ # need to provide a key to use the snapshot later.
33207
34161
  # Corresponds to the JSON property `snapshotEncryptionKey`
33208
34162
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
33209
34163
  attr_accessor :snapshot_encryption_key
33210
34164
 
33211
- # [Output Only] The source disk used to create this snapshot.
34165
+ # The source disk used to create this snapshot.
33212
34166
  # Corresponds to the JSON property `sourceDisk`
33213
34167
  # @return [String]
33214
34168
  attr_accessor :source_disk
33215
34169
 
33216
- # Represents a customer-supplied encryption key
34170
+ # The customer-supplied encryption key of the source disk. Required if the
34171
+ # source disk is protected by a customer-supplied encryption key.
33217
34172
  # Corresponds to the JSON property `sourceDiskEncryptionKey`
33218
34173
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
33219
34174
  attr_accessor :source_disk_encryption_key
@@ -33263,6 +34218,7 @@ module Google
33263
34218
  @description = args[:description] if args.key?(:description)
33264
34219
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
33265
34220
  @download_bytes = args[:download_bytes] if args.key?(:download_bytes)
34221
+ @guest_flush = args[:guest_flush] if args.key?(:guest_flush)
33266
34222
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
33267
34223
  @id = args[:id] if args.key?(:id)
33268
34224
  @kind = args[:kind] if args.key?(:kind)
@@ -33271,6 +34227,7 @@ module Google
33271
34227
  @license_codes = args[:license_codes] if args.key?(:license_codes)
33272
34228
  @licenses = args[:licenses] if args.key?(:licenses)
33273
34229
  @name = args[:name] if args.key?(:name)
34230
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
33274
34231
  @self_link = args[:self_link] if args.key?(:self_link)
33275
34232
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
33276
34233
  @snapshot_encryption_key = args[:snapshot_encryption_key] if args.key?(:snapshot_encryption_key)
@@ -33405,7 +34362,8 @@ module Google
33405
34362
  class SourceDiskEncryptionKey
33406
34363
  include Google::Apis::Core::Hashable
33407
34364
 
33408
- # Represents a customer-supplied encryption key
34365
+ # The customer-supplied encryption key of the source disk. Required if the
34366
+ # source disk is protected by a customer-supplied encryption key.
33409
34367
  # Corresponds to the JSON property `diskEncryptionKey`
33410
34368
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
33411
34369
  attr_accessor :disk_encryption_key
@@ -33522,7 +34480,7 @@ module Google
33522
34480
  # @return [Array<Google::Apis::ComputeAlpha::NetworkInterface>]
33523
34481
  attr_accessor :network_interfaces
33524
34482
 
33525
- # Sets the scheduling options for an Instance. NextID: 12
34483
+ # Sets the scheduling options for an Instance. NextID: 13
33526
34484
  # Corresponds to the JSON property `scheduling`
33527
34485
  # @return [Google::Apis::ComputeAlpha::Scheduling]
33528
34486
  attr_accessor :scheduling
@@ -33580,9 +34538,9 @@ module Google
33580
34538
  class SslCertificate
33581
34539
  include Google::Apis::Core::Hashable
33582
34540
 
33583
- # A local certificate file. The certificate must be in PEM format. The
33584
- # certificate chain must be no greater than 5 certs long. The chain must include
33585
- # at least one intermediate cert.
34541
+ # A value read into memory from a certificate file. The certificate file must be
34542
+ # in PEM format. The certificate chain must be no greater than 5 certs long. The
34543
+ # chain must include at least one intermediate cert.
33586
34544
  # Corresponds to the JSON property `certificate`
33587
34545
  # @return [String]
33588
34546
  attr_accessor :certificate
@@ -33630,7 +34588,8 @@ module Google
33630
34588
  # @return [String]
33631
34589
  attr_accessor :name
33632
34590
 
33633
- # A write-only private key in PEM format. Only insert requests will include this
34591
+ # A value read into memory from a write-only private key file. The private key
34592
+ # file must be in PEM format. For security, only insert requests include this
33634
34593
  # field.
33635
34594
  # Corresponds to the JSON property `privateKey`
33636
34595
  # @return [String]
@@ -35221,6 +36180,25 @@ module Google
35221
36180
  end
35222
36181
  end
35223
36182
 
36183
+ # Subsetting options to make L4 ILB support any number of backend instances
36184
+ class Subsetting
36185
+ include Google::Apis::Core::Hashable
36186
+
36187
+ #
36188
+ # Corresponds to the JSON property `policy`
36189
+ # @return [String]
36190
+ attr_accessor :policy
36191
+
36192
+ def initialize(**args)
36193
+ update!(**args)
36194
+ end
36195
+
36196
+ # Update properties of this object
36197
+ def update!(**args)
36198
+ @policy = args[:policy] if args.key?(:policy)
36199
+ end
36200
+ end
36201
+
35224
36202
  #
35225
36203
  class TcpHealthCheck
35226
36204
  include Google::Apis::Core::Hashable
@@ -35322,7 +36300,7 @@ module Google
35322
36300
  # A target gRPC proxy is a component of load balancers intended for load
35323
36301
  # balancing gRPC traffic. Global forwarding rules reference a target gRPC proxy.
35324
36302
  # The Target gRPC Proxy references a URL map which specifies how traffic routes
35325
- # to gRPC backend services.
36303
+ # to gRPC backend services. (== resource_for `$api_version`.targetGrpcProxies ==)
35326
36304
  class TargetGrpcProxy
35327
36305
  include Google::Apis::Core::Hashable
35328
36306
 
@@ -35389,12 +36367,11 @@ module Google
35389
36367
  # If true, indicates that the BackendServices referenced by the urlMap may be
35390
36368
  # accessed by gRPC applications without using a sidecar proxy. This will enable
35391
36369
  # configuration checks on urlMap and its referenced BackendServices to not allow
35392
- # unsupported features. A gRPC application must use "xds-experimental:///"
35393
- # scheme in the target URI of the service it is connecting to. If false,
35394
- # indicates that the BackendServices referenced by the urlMap will be accessed
35395
- # by gRPC applications via a sidecar proxy. In this case, a gRPC application
35396
- # must not use "xds-experimental:///" scheme in the target URI of the service it
35397
- # is connecting to
36370
+ # unsupported features. A gRPC application must use "xds:///" scheme in the
36371
+ # target URI of the service it is connecting to. If false, indicates that the
36372
+ # BackendServices referenced by the urlMap will be accessed by gRPC applications
36373
+ # via a sidecar proxy. In this case, a gRPC application must not use "xds:///"
36374
+ # scheme in the target URI of the service it is connecting to
35398
36375
  # Corresponds to the JSON property `validateForProxyless`
35399
36376
  # @return [Boolean]
35400
36377
  attr_accessor :validate_for_proxyless
@@ -35653,7 +36630,18 @@ module Google
35653
36630
  # @return [String]
35654
36631
  attr_accessor :description
35655
36632
 
35656
- # Urls to networkservices.HttpFilter resources enabled for xDS clients using
36633
+ # Fingerprint of this resource. A hash of the contents stored in this object.
36634
+ # This field is used in optimistic locking. This field will be ignored when
36635
+ # inserting a TargetHttpProxy. An up-to-date fingerprint must be provided in
36636
+ # order to patch/update the TargetHttpProxy; otherwise, the request will fail
36637
+ # with error 412 conditionNotMet. To see the latest fingerprint, make a get()
36638
+ # request to retrieve the TargetHttpProxy.
36639
+ # Corresponds to the JSON property `fingerprint`
36640
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
36641
+ # @return [String]
36642
+ attr_accessor :fingerprint
36643
+
36644
+ # URLs to networkservices.HttpFilter resources enabled for xDS clients using
35657
36645
  # this configuration. For example, https://networkservices.googleapis.com/
35658
36646
  # v1alpha1/projects/project/locations/locationhttpFilters/httpFilter Only
35659
36647
  # filters that handle outbound connection and stream events may be specified.
@@ -35728,6 +36716,7 @@ module Google
35728
36716
  def update!(**args)
35729
36717
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
35730
36718
  @description = args[:description] if args.key?(:description)
36719
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
35731
36720
  @http_filters = args[:http_filters] if args.key?(:http_filters)
35732
36721
  @id = args[:id] if args.key?(:id)
35733
36722
  @kind = args[:kind] if args.key?(:kind)
@@ -36162,6 +37151,7 @@ module Google
36162
37151
  # authorizationPolicy only applies to a global TargetHttpsProxy attached to
36163
37152
  # globalForwardingRules with the loadBalancingScheme set to
36164
37153
  # INTERNAL_SELF_MANAGED.
37154
+ # Note: This field currently has no impact.
36165
37155
  # Corresponds to the JSON property `authorizationPolicy`
36166
37156
  # @return [String]
36167
37157
  attr_accessor :authorization_policy
@@ -36184,6 +37174,21 @@ module Google
36184
37174
  # @return [String]
36185
37175
  attr_accessor :description
36186
37176
 
37177
+ # URLs to networkservices.HttpFilter resources enabled for xDS clients using
37178
+ # this configuration. For example, https://networkservices.googleapis.com/beta/
37179
+ # projects/project/locations/locationhttpFilters/httpFilter Only filters that
37180
+ # handle outbound connection and stream events may be specified. These filters
37181
+ # work in conjunction with a default set of HTTP filters that may already be
37182
+ # configured by Traffic Director. Traffic Director will determine the final
37183
+ # location of these filters within xDS configuration based on the name of the
37184
+ # HTTP filter. If Traffic Director positions multiple filters at the same
37185
+ # location, those filters will be in the same order as specified in this list.
37186
+ # httpFilters only applies for loadbalancers with loadBalancingScheme set to
37187
+ # INTERNAL_SELF_MANAGED. See ForwardingRule for more details.
37188
+ # Corresponds to the JSON property `httpFilters`
37189
+ # @return [Array<String>]
37190
+ attr_accessor :http_filters
37191
+
36187
37192
  # [Output Only] The unique identifier for the resource. This identifier is
36188
37193
  # defined by the server.
36189
37194
  # Corresponds to the JSON property `id`
@@ -36249,6 +37254,7 @@ module Google
36249
37254
  # globalForwardingRules with the loadBalancingScheme set to
36250
37255
  # INTERNAL_SELF_MANAGED.
36251
37256
  # If left blank, communications are not encrypted.
37257
+ # Note: This field currently has no impact.
36252
37258
  # Corresponds to the JSON property `serverTlsPolicy`
36253
37259
  # @return [String]
36254
37260
  attr_accessor :server_tls_policy
@@ -36289,6 +37295,7 @@ module Google
36289
37295
  @certificate_map = args[:certificate_map] if args.key?(:certificate_map)
36290
37296
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
36291
37297
  @description = args[:description] if args.key?(:description)
37298
+ @http_filters = args[:http_filters] if args.key?(:http_filters)
36292
37299
  @id = args[:id] if args.key?(:id)
36293
37300
  @kind = args[:kind] if args.key?(:kind)
36294
37301
  @name = args[:name] if args.key?(:name)
@@ -37032,7 +38039,7 @@ module Google
37032
38039
 
37033
38040
  # The URL of the HttpHealthCheck resource. A member instance in this pool is
37034
38041
  # considered healthy if and only if the health checks pass. An empty list means
37035
- # all member instances will be considered healthy at all times. Only
38042
+ # all member instances will be considered healthy at all times. Only legacy
37036
38043
  # HttpHealthChecks are supported. Only one health check may be specified.
37037
38044
  # Corresponds to the JSON property `healthChecks`
37038
38045
  # @return [Array<String>]
@@ -38555,22 +39562,23 @@ module Google
38555
39562
  class TestFailure
38556
39563
  include Google::Apis::Core::Hashable
38557
39564
 
38558
- #
39565
+ # BackendService or BackendBucket returned by load balancer.
38559
39566
  # Corresponds to the JSON property `actualService`
38560
39567
  # @return [String]
38561
39568
  attr_accessor :actual_service
38562
39569
 
38563
- #
39570
+ # Expected BackendService or BackendBucket resource the given URL should be
39571
+ # mapped to.
38564
39572
  # Corresponds to the JSON property `expectedService`
38565
39573
  # @return [String]
38566
39574
  attr_accessor :expected_service
38567
39575
 
38568
- #
39576
+ # Host portion of the URL.
38569
39577
  # Corresponds to the JSON property `host`
38570
39578
  # @return [String]
38571
39579
  attr_accessor :host
38572
39580
 
38573
- #
39581
+ # Path portion including query parameters in the URL.
38574
39582
  # Corresponds to the JSON property `path`
38575
39583
  # @return [String]
38576
39584
  attr_accessor :path
@@ -38797,13 +39805,13 @@ module Google
38797
39805
  include Google::Apis::Core::Hashable
38798
39806
 
38799
39807
  # [Output Only] The date when the maintenance will take place. This value is in
38800
- # RFC3339 text format.
39808
+ # RFC3339 text format. DEPRECATED: Use start_time_window instead.
38801
39809
  # Corresponds to the JSON property `date`
38802
39810
  # @return [String]
38803
39811
  attr_accessor :date
38804
39812
 
38805
39813
  # [Output Only] The time when the maintenance will take place. This value is in
38806
- # RFC3339 text format.
39814
+ # RFC3339 text format. DEPRECATED: Use start_time_window instead.
38807
39815
  # Corresponds to the JSON property `time`
38808
39816
  # @return [String]
38809
39817
  attr_accessor :time
@@ -38833,6 +39841,10 @@ module Google
38833
39841
  # Traffic Director.
38834
39842
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
38835
39843
  # regionUrlMaps are used by internal HTTP(S) load balancers.
39844
+ # For a list of supported URL map features by load balancer type, see the Load
39845
+ # balancing features: Routing and traffic management table.
39846
+ # For a list of supported URL map features for Traffic Director, see the
39847
+ # Traffic Director features: Routing and traffic management table.
38836
39848
  # This resource defines mappings from host names and URL paths to either a
38837
39849
  # backend service or a backend bucket.
38838
39850
  # To use the global urlMaps resource, the backend service must have a
@@ -38856,6 +39868,8 @@ module Google
38856
39868
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
38857
39869
  # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
38858
39870
  # within defaultRouteAction.
39871
+ # defaultRouteAction has no effect when the URL map is bound to target gRPC
39872
+ # proxy that has validateForProxyless field set to true.
38859
39873
  # Corresponds to the JSON property `defaultRouteAction`
38860
39874
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
38861
39875
  attr_accessor :default_route_action
@@ -38869,6 +39883,8 @@ module Google
38869
39883
  # specified.
38870
39884
  # Only one of defaultService, defaultUrlRedirect or defaultRouteAction.
38871
39885
  # weightedBackendService must be set.
39886
+ # defaultService has no effect when the URL map is bound to target gRPC proxy
39887
+ # that has validateForProxyless field set to true.
38872
39888
  # Corresponds to the JSON property `defaultService`
38873
39889
  # @return [String]
38874
39890
  attr_accessor :default_service
@@ -38947,6 +39963,8 @@ module Google
38947
39963
  # The list of expected URL mapping tests. Request to update this UrlMap will
38948
39964
  # succeed only if all of the test cases pass. You can specify a maximum of 100
38949
39965
  # tests per UrlMap.
39966
+ # Not supported when the URL map is bound to target gRPC proxy that has
39967
+ # validateForProxyless field set to true.
38950
39968
  # Corresponds to the JSON property `tests`
38951
39969
  # @return [Array<Google::Apis::ComputeAlpha::UrlMapTest>]
38952
39970
  attr_accessor :tests
@@ -39127,12 +40145,13 @@ module Google
39127
40145
  attr_accessor :description
39128
40146
 
39129
40147
  # The expected URL that should be redirected to for the host and path being
39130
- # tested.
40148
+ # tested. [Deprecated] This field is deprecated. Use expected_output_url instead.
39131
40149
  # Corresponds to the JSON property `expectedUrlRedirect`
39132
40150
  # @return [String]
39133
40151
  attr_accessor :expected_url_redirect
39134
40152
 
39135
- # Host portion of the URL.
40153
+ # Host portion of the URL. If headers contains a host header, then host must
40154
+ # also match the header value.
39136
40155
  # Corresponds to the JSON property `host`
39137
40156
  # @return [String]
39138
40157
  attr_accessor :host
@@ -39142,7 +40161,9 @@ module Google
39142
40161
  # @return [String]
39143
40162
  attr_accessor :path
39144
40163
 
39145
- # Expected BackendService resource the given URL should be mapped to.
40164
+ # Expected BackendService or BackendBucket resource the given URL should be
40165
+ # mapped to.
40166
+ # service cannot be set if expectedRedirectResponseCode is set.
39146
40167
  # Corresponds to the JSON property `service`
39147
40168
  # @return [String]
39148
40169
  attr_accessor :service
@@ -39429,6 +40450,10 @@ module Google
39429
40450
  # Traffic Director.
39430
40451
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
39431
40452
  # regionUrlMaps are used by internal HTTP(S) load balancers.
40453
+ # For a list of supported URL map features by load balancer type, see the Load
40454
+ # balancing features: Routing and traffic management table.
40455
+ # For a list of supported URL map features for Traffic Director, see the
40456
+ # Traffic Director features: Routing and traffic management table.
39432
40457
  # This resource defines mappings from host names and URL paths to either a
39433
40458
  # backend service or a backend bucket.
39434
40459
  # To use the global urlMaps resource, the backend service must have a
@@ -39833,10 +40858,10 @@ module Google
39833
40858
  # @return [Fixnum]
39834
40859
  attr_accessor :num_total_nat_ports
39835
40860
 
39836
- # Priority of the NAT Rule.
39837
- # Corresponds to the JSON property `priority`
40861
+ # Rule number of the NAT Rule.
40862
+ # Corresponds to the JSON property `ruleNumber`
39838
40863
  # @return [Fixnum]
39839
- attr_accessor :priority
40864
+ attr_accessor :rule_number
39840
40865
 
39841
40866
  def initialize(**args)
39842
40867
  update!(**args)
@@ -39848,7 +40873,7 @@ module Google
39848
40873
  @nat_ip_port_ranges = args[:nat_ip_port_ranges] if args.key?(:nat_ip_port_ranges)
39849
40874
  @num_total_drain_nat_ports = args[:num_total_drain_nat_ports] if args.key?(:num_total_drain_nat_ports)
39850
40875
  @num_total_nat_ports = args[:num_total_nat_ports] if args.key?(:num_total_nat_ports)
39851
- @priority = args[:priority] if args.key?(:priority)
40876
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
39852
40877
  end
39853
40878
  end
39854
40879
 
@@ -40445,6 +41470,14 @@ module Google
40445
41470
  # @return [Fixnum]
40446
41471
  attr_accessor :id
40447
41472
 
41473
+ # URL of the interconnect attachment resource. When the value of this field is
41474
+ # present, the VPN Gateway will be used for IPsec over Interconnect; all Egress
41475
+ # or Ingress traffic for this VPN Gateway interface will go through the
41476
+ # specified interconnect attachment resource.
41477
+ # Corresponds to the JSON property `interconnectAttachment`
41478
+ # @return [String]
41479
+ attr_accessor :interconnect_attachment
41480
+
40448
41481
  # [Output Only] The external IP address for this VPN gateway interface.
40449
41482
  # Corresponds to the JSON property `ipAddress`
40450
41483
  # @return [String]
@@ -40457,6 +41490,7 @@ module Google
40457
41490
  # Update properties of this object
40458
41491
  def update!(**args)
40459
41492
  @id = args[:id] if args.key?(:id)
41493
+ @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment)
40460
41494
  @ip_address = args[:ip_address] if args.key?(:ip_address)
40461
41495
  end
40462
41496
  end
@@ -40572,7 +41606,7 @@ module Google
40572
41606
  end
40573
41607
 
40574
41608
  # Represents a Cloud VPN Tunnel resource.
40575
- # For more information about VPN, read the the Cloud VPN Overview. (==
41609
+ # For more information about VPN, read the the Cloud VPN Overview. (==
40576
41610
  # resource_for `$api_version`.vpnTunnels ==)
40577
41611
  class VpnTunnel
40578
41612
  include Google::Apis::Core::Hashable
@@ -41421,6 +42455,12 @@ module Google
41421
42455
  # @return [String]
41422
42456
  attr_accessor :status
41423
42457
 
42458
+ # [Output Only] Reserved for future use.
42459
+ # Corresponds to the JSON property `supportsPzs`
42460
+ # @return [Boolean]
42461
+ attr_accessor :supports_pzs
42462
+ alias_method :supports_pzs?, :supports_pzs
42463
+
41424
42464
  def initialize(**args)
41425
42465
  update!(**args)
41426
42466
  end
@@ -41437,6 +42477,7 @@ module Google
41437
42477
  @region = args[:region] if args.key?(:region)
41438
42478
  @self_link = args[:self_link] if args.key?(:self_link)
41439
42479
  @status = args[:status] if args.key?(:status)
42480
+ @supports_pzs = args[:supports_pzs] if args.key?(:supports_pzs)
41440
42481
  end
41441
42482
  end
41442
42483