google-api-client 0.43.0 → 0.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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