google-api-client 0.43.0 → 0.44.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (696) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +218 -0
  3. data/docs/oauth-server.md +4 -6
  4. data/generated/google/apis/accessapproval_v1.rb +1 -1
  5. data/generated/google/apis/accessapproval_v1/classes.rb +51 -86
  6. data/generated/google/apis/accessapproval_v1/service.rb +93 -132
  7. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  8. data/generated/google/apis/accesscontextmanager_v1/classes.rb +198 -236
  9. data/generated/google/apis/accesscontextmanager_v1/service.rb +128 -171
  10. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  11. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +153 -184
  12. data/generated/google/apis/accesscontextmanager_v1beta/service.rb +82 -111
  13. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  14. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +17 -6
  15. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  16. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  17. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +47 -2
  18. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +18 -0
  19. data/generated/google/apis/adexperiencereport_v1.rb +1 -1
  20. data/generated/google/apis/admin_datatransfer_v1.rb +6 -4
  21. data/generated/google/apis/admin_datatransfer_v1/classes.rb +16 -4
  22. data/generated/google/apis/admin_datatransfer_v1/service.rb +30 -48
  23. data/generated/google/apis/admin_directory_v1.rb +6 -8
  24. data/generated/google/apis/admin_directory_v1/classes.rb +224 -243
  25. data/generated/google/apis/admin_directory_v1/representations.rb +14 -40
  26. data/generated/google/apis/admin_directory_v1/service.rb +475 -1026
  27. data/generated/google/apis/admin_reports_v1.rb +6 -5
  28. data/generated/google/apis/admin_reports_v1/classes.rb +31 -33
  29. data/generated/google/apis/admin_reports_v1/service.rb +131 -187
  30. data/generated/google/apis/admob_v1.rb +1 -1
  31. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  32. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  33. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  34. data/generated/google/apis/androidmanagement_v1/classes.rb +95 -59
  35. data/generated/google/apis/androidmanagement_v1/representations.rb +17 -0
  36. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  37. data/generated/google/apis/androidpublisher_v3/service.rb +2 -2
  38. data/generated/google/apis/apigee_v1.rb +6 -7
  39. data/generated/google/apis/apigee_v1/classes.rb +205 -75
  40. data/generated/google/apis/apigee_v1/representations.rb +51 -0
  41. data/generated/google/apis/apigee_v1/service.rb +133 -34
  42. data/generated/google/apis/appengine_v1.rb +1 -1
  43. data/generated/google/apis/appengine_v1/classes.rb +45 -35
  44. data/generated/google/apis/appengine_v1/representations.rb +2 -0
  45. data/generated/google/apis/appengine_v1/service.rb +38 -47
  46. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  47. data/generated/google/apis/appengine_v1alpha/classes.rb +9 -11
  48. data/generated/google/apis/appengine_v1beta.rb +1 -1
  49. data/generated/google/apis/appengine_v1beta/classes.rb +45 -35
  50. data/generated/google/apis/appengine_v1beta/representations.rb +2 -0
  51. data/generated/google/apis/appengine_v1beta/service.rb +37 -47
  52. data/generated/google/apis/appsmarket_v2.rb +1 -1
  53. data/generated/google/apis/appsmarket_v2/classes.rb +14 -16
  54. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  55. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +235 -337
  56. data/generated/google/apis/artifactregistry_v1beta1/service.rb +44 -57
  57. data/generated/google/apis/bigquery_v2.rb +1 -1
  58. data/generated/google/apis/bigquery_v2/classes.rb +355 -553
  59. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  60. data/generated/google/apis/bigquery_v2/service.rb +32 -40
  61. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  62. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +192 -337
  63. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +29 -32
  64. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  65. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +132 -158
  66. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +232 -282
  67. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  68. data/generated/google/apis/bigqueryreservation_v1/classes.rb +116 -123
  69. data/generated/google/apis/bigqueryreservation_v1/representations.rb +2 -0
  70. data/generated/google/apis/bigqueryreservation_v1/service.rb +137 -183
  71. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  72. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +88 -100
  73. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +77 -100
  74. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  75. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +93 -98
  76. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +2 -0
  77. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +114 -151
  78. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  79. data/generated/google/apis/bigtableadmin_v1/classes.rb +50 -0
  80. data/generated/google/apis/bigtableadmin_v1/representations.rb +29 -0
  81. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  82. data/generated/google/apis/bigtableadmin_v2/classes.rb +50 -0
  83. data/generated/google/apis/bigtableadmin_v2/representations.rb +29 -0
  84. data/generated/google/apis/billingbudgets_v1beta1.rb +4 -1
  85. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  86. data/generated/google/apis/binaryauthorization_v1/classes.rb +239 -354
  87. data/generated/google/apis/binaryauthorization_v1/service.rb +74 -89
  88. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  89. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +239 -354
  90. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +74 -89
  91. data/generated/google/apis/calendar_v3.rb +1 -1
  92. data/generated/google/apis/chat_v1.rb +1 -1
  93. data/generated/google/apis/chat_v1/classes.rb +90 -115
  94. data/generated/google/apis/chat_v1/service.rb +30 -42
  95. data/generated/google/apis/civicinfo_v2.rb +1 -1
  96. data/generated/google/apis/cloudasset_v1.rb +1 -1
  97. data/generated/google/apis/cloudasset_v1/classes.rb +712 -1039
  98. data/generated/google/apis/cloudasset_v1/service.rb +125 -167
  99. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  100. data/generated/google/apis/cloudasset_v1beta1/classes.rb +531 -777
  101. data/generated/google/apis/cloudasset_v1beta1/service.rb +59 -75
  102. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  103. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +204 -349
  104. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +35 -47
  105. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  106. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +220 -276
  107. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +75 -93
  108. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  109. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +481 -720
  110. data/generated/google/apis/cloudasset_v1p5beta1/service.rb +25 -28
  111. data/generated/google/apis/cloudbilling_v1.rb +7 -1
  112. data/generated/google/apis/cloudbilling_v1/classes.rb +284 -445
  113. data/generated/google/apis/cloudbilling_v1/service.rb +104 -124
  114. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  115. data/generated/google/apis/cloudbuild_v1/classes.rb +291 -343
  116. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  117. data/generated/google/apis/cloudbuild_v1/service.rb +48 -63
  118. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  119. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +283 -329
  120. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +1 -0
  121. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +15 -18
  122. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  123. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +269 -313
  124. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +1 -0
  125. data/generated/google/apis/cloudbuild_v1alpha2/service.rb +22 -28
  126. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  127. data/generated/google/apis/clouddebugger_v2/classes.rb +185 -252
  128. data/generated/google/apis/clouddebugger_v2/service.rb +53 -59
  129. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  130. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +127 -156
  131. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +53 -69
  132. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  133. data/generated/google/apis/cloudfunctions_v1/classes.rb +323 -493
  134. data/generated/google/apis/cloudfunctions_v1/service.rb +79 -93
  135. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  136. data/generated/google/apis/cloudidentity_v1/classes.rb +625 -75
  137. data/generated/google/apis/cloudidentity_v1/representations.rb +203 -0
  138. data/generated/google/apis/cloudidentity_v1/service.rb +43 -61
  139. data/generated/google/apis/cloudidentity_v1beta1.rb +4 -1
  140. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1045 -317
  141. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +331 -22
  142. data/generated/google/apis/cloudidentity_v1beta1/service.rb +742 -96
  143. data/generated/google/apis/cloudiot_v1.rb +1 -1
  144. data/generated/google/apis/cloudiot_v1/classes.rb +263 -373
  145. data/generated/google/apis/cloudiot_v1/service.rb +147 -154
  146. data/generated/google/apis/cloudkms_v1.rb +1 -1
  147. data/generated/google/apis/cloudkms_v1/classes.rb +502 -692
  148. data/generated/google/apis/cloudkms_v1/representations.rb +17 -0
  149. data/generated/google/apis/cloudkms_v1/service.rb +170 -216
  150. data/generated/google/apis/cloudprofiler_v2.rb +1 -1
  151. data/generated/google/apis/cloudprofiler_v2/classes.rb +28 -33
  152. data/generated/google/apis/cloudprofiler_v2/service.rb +17 -19
  153. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  154. data/generated/google/apis/cloudresourcemanager_v1/service.rb +1 -1
  155. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  156. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +1 -1
  157. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  158. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  159. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  160. data/generated/google/apis/cloudscheduler_v1/classes.rb +272 -383
  161. data/generated/google/apis/cloudscheduler_v1/service.rb +45 -62
  162. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  163. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +273 -384
  164. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +45 -62
  165. data/generated/google/apis/cloudsearch_v1.rb +2 -2
  166. data/generated/google/apis/cloudsearch_v1/classes.rb +650 -781
  167. data/generated/google/apis/cloudsearch_v1/representations.rb +15 -0
  168. data/generated/google/apis/cloudsearch_v1/service.rb +286 -326
  169. data/generated/google/apis/cloudshell_v1.rb +1 -1
  170. data/generated/google/apis/cloudshell_v1/classes.rb +36 -227
  171. data/generated/google/apis/cloudshell_v1/representations.rb +0 -67
  172. data/generated/google/apis/cloudshell_v1/service.rb +21 -25
  173. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  174. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +69 -78
  175. data/generated/google/apis/cloudshell_v1alpha1/service.rb +20 -24
  176. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  177. data/generated/google/apis/cloudtasks_v2/classes.rb +605 -933
  178. data/generated/google/apis/cloudtasks_v2/service.rb +146 -217
  179. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  180. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +602 -964
  181. data/generated/google/apis/cloudtasks_v2beta2/service.rb +178 -270
  182. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  183. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +609 -938
  184. data/generated/google/apis/cloudtasks_v2beta3/service.rb +146 -217
  185. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  186. data/generated/google/apis/cloudtrace_v1/classes.rb +39 -61
  187. data/generated/google/apis/cloudtrace_v1/service.rb +37 -51
  188. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  189. data/generated/google/apis/cloudtrace_v2/classes.rb +92 -107
  190. data/generated/google/apis/cloudtrace_v2/service.rb +8 -11
  191. data/generated/google/apis/cloudtrace_v2beta1.rb +1 -1
  192. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +23 -33
  193. data/generated/google/apis/cloudtrace_v2beta1/service.rb +30 -37
  194. data/generated/google/apis/composer_v1.rb +1 -1
  195. data/generated/google/apis/composer_v1/classes.rb +190 -242
  196. data/generated/google/apis/composer_v1/service.rb +79 -150
  197. data/generated/google/apis/composer_v1beta1.rb +1 -1
  198. data/generated/google/apis/composer_v1beta1/classes.rb +203 -262
  199. data/generated/google/apis/composer_v1beta1/service.rb +92 -179
  200. data/generated/google/apis/compute_alpha.rb +1 -1
  201. data/generated/google/apis/compute_alpha/classes.rb +681 -127
  202. data/generated/google/apis/compute_alpha/representations.rb +110 -6
  203. data/generated/google/apis/compute_alpha/service.rb +695 -692
  204. data/generated/google/apis/compute_beta.rb +1 -1
  205. data/generated/google/apis/compute_beta/classes.rb +570 -70
  206. data/generated/google/apis/compute_beta/representations.rb +112 -1
  207. data/generated/google/apis/compute_beta/service.rb +608 -605
  208. data/generated/google/apis/compute_v1.rb +1 -1
  209. data/generated/google/apis/compute_v1/classes.rb +977 -85
  210. data/generated/google/apis/compute_v1/representations.rb +372 -0
  211. data/generated/google/apis/compute_v1/service.rb +747 -15
  212. data/generated/google/apis/container_v1.rb +1 -1
  213. data/generated/google/apis/container_v1/classes.rb +915 -965
  214. data/generated/google/apis/container_v1/representations.rb +53 -0
  215. data/generated/google/apis/container_v1/service.rb +435 -502
  216. data/generated/google/apis/container_v1beta1.rb +1 -1
  217. data/generated/google/apis/container_v1beta1/classes.rb +1021 -1043
  218. data/generated/google/apis/container_v1beta1/representations.rb +70 -0
  219. data/generated/google/apis/container_v1beta1/service.rb +403 -466
  220. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  221. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +456 -596
  222. data/generated/google/apis/containeranalysis_v1alpha1/service.rb +149 -169
  223. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  224. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +454 -613
  225. data/generated/google/apis/containeranalysis_v1beta1/service.rb +75 -90
  226. data/generated/google/apis/content_v2.rb +1 -1
  227. data/generated/google/apis/content_v2/classes.rb +3 -1
  228. data/generated/google/apis/content_v2_1.rb +1 -1
  229. data/generated/google/apis/content_v2_1/classes.rb +93 -2
  230. data/generated/google/apis/content_v2_1/representations.rb +34 -0
  231. data/generated/google/apis/content_v2_1/service.rb +53 -2
  232. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  233. data/generated/google/apis/datacatalog_v1beta1/classes.rb +382 -573
  234. data/generated/google/apis/datacatalog_v1beta1/service.rb +319 -440
  235. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  236. data/generated/google/apis/dataflow_v1b3/classes.rb +1015 -973
  237. data/generated/google/apis/dataflow_v1b3/representations.rb +115 -0
  238. data/generated/google/apis/dataflow_v1b3/service.rb +299 -257
  239. data/generated/google/apis/datafusion_v1.rb +5 -8
  240. data/generated/google/apis/datafusion_v1/classes.rb +268 -397
  241. data/generated/google/apis/datafusion_v1/representations.rb +3 -0
  242. data/generated/google/apis/datafusion_v1/service.rb +76 -89
  243. data/generated/google/apis/datafusion_v1beta1.rb +5 -8
  244. data/generated/google/apis/datafusion_v1beta1/classes.rb +268 -397
  245. data/generated/google/apis/datafusion_v1beta1/representations.rb +3 -0
  246. data/generated/google/apis/datafusion_v1beta1/service.rb +81 -95
  247. data/generated/google/apis/dataproc_v1.rb +1 -1
  248. data/generated/google/apis/dataproc_v1/classes.rb +37 -4
  249. data/generated/google/apis/dataproc_v1/representations.rb +16 -0
  250. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  251. data/generated/google/apis/dataproc_v1beta2/classes.rb +56 -0
  252. data/generated/google/apis/dataproc_v1beta2/representations.rb +31 -0
  253. data/generated/google/apis/datastore_v1.rb +1 -1
  254. data/generated/google/apis/datastore_v1/classes.rb +330 -472
  255. data/generated/google/apis/datastore_v1/service.rb +52 -63
  256. data/generated/google/apis/datastore_v1beta1.rb +1 -1
  257. data/generated/google/apis/datastore_v1beta1/classes.rb +150 -217
  258. data/generated/google/apis/datastore_v1beta1/service.rb +11 -12
  259. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  260. data/generated/google/apis/datastore_v1beta3/classes.rb +255 -371
  261. data/generated/google/apis/datastore_v1beta3/service.rb +1 -2
  262. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  263. data/generated/google/apis/dfareporting_v3_3/classes.rb +326 -339
  264. data/generated/google/apis/dfareporting_v3_3/representations.rb +42 -0
  265. data/generated/google/apis/dfareporting_v3_3/service.rb +673 -1286
  266. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  267. data/generated/google/apis/dfareporting_v3_4/classes.rb +348 -350
  268. data/generated/google/apis/dfareporting_v3_4/representations.rb +43 -0
  269. data/generated/google/apis/dfareporting_v3_4/service.rb +708 -1285
  270. data/generated/google/apis/dialogflow_v2.rb +1 -1
  271. data/generated/google/apis/dialogflow_v2/classes.rb +84 -44
  272. data/generated/google/apis/dialogflow_v2/representations.rb +52 -15
  273. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  274. data/generated/google/apis/dialogflow_v2beta1/classes.rb +84 -44
  275. data/generated/google/apis/dialogflow_v2beta1/representations.rb +52 -15
  276. data/generated/google/apis/dialogflow_v2beta1/service.rb +37 -0
  277. data/generated/google/apis/{securitycenter_v1p1alpha1.rb → dialogflow_v3beta1.rb} +13 -10
  278. data/generated/google/apis/dialogflow_v3beta1/classes.rb +8183 -0
  279. data/generated/google/apis/dialogflow_v3beta1/representations.rb +3459 -0
  280. data/generated/google/apis/dialogflow_v3beta1/service.rb +2812 -0
  281. data/generated/google/apis/displayvideo_v1.rb +1 -1
  282. data/generated/google/apis/displayvideo_v1/classes.rb +55 -8
  283. data/generated/google/apis/displayvideo_v1/representations.rb +5 -0
  284. data/generated/google/apis/displayvideo_v1/service.rb +48 -36
  285. data/generated/google/apis/dlp_v2.rb +1 -1
  286. data/generated/google/apis/dlp_v2/classes.rb +1076 -1302
  287. data/generated/google/apis/dlp_v2/service.rb +962 -905
  288. data/generated/google/apis/dns_v1.rb +1 -1
  289. data/generated/google/apis/dns_v1/classes.rb +175 -198
  290. data/generated/google/apis/dns_v1/service.rb +82 -97
  291. data/generated/google/apis/dns_v1beta2.rb +1 -1
  292. data/generated/google/apis/dns_v1beta2/classes.rb +180 -205
  293. data/generated/google/apis/dns_v1beta2/service.rb +82 -97
  294. data/generated/google/apis/docs_v1.rb +1 -1
  295. data/generated/google/apis/docs_v1/classes.rb +894 -1229
  296. data/generated/google/apis/docs_v1/service.rb +17 -22
  297. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  298. data/generated/google/apis/documentai_v1beta2/classes.rb +1186 -810
  299. data/generated/google/apis/documentai_v1beta2/representations.rb +303 -0
  300. data/generated/google/apis/documentai_v1beta2/service.rb +22 -24
  301. data/generated/google/apis/doubleclickbidmanager_v1.rb +3 -2
  302. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +6 -12
  303. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +33 -64
  304. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +3 -2
  305. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +11 -18
  306. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +33 -64
  307. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  308. data/generated/google/apis/doubleclicksearch_v2/service.rb +2 -2
  309. data/generated/google/apis/drive_v2.rb +1 -1
  310. data/generated/google/apis/drive_v2/classes.rb +14 -6
  311. data/generated/google/apis/drive_v2/representations.rb +1 -0
  312. data/generated/google/apis/drive_v2/service.rb +79 -15
  313. data/generated/google/apis/drive_v3.rb +1 -1
  314. data/generated/google/apis/drive_v3/classes.rb +14 -6
  315. data/generated/google/apis/drive_v3/representations.rb +1 -0
  316. data/generated/google/apis/drive_v3/service.rb +59 -11
  317. data/generated/google/apis/file_v1.rb +1 -1
  318. data/generated/google/apis/file_v1/classes.rb +154 -173
  319. data/generated/google/apis/file_v1/service.rb +43 -52
  320. data/generated/google/apis/file_v1beta1.rb +1 -1
  321. data/generated/google/apis/file_v1beta1/classes.rb +334 -193
  322. data/generated/google/apis/file_v1beta1/representations.rb +55 -0
  323. data/generated/google/apis/file_v1beta1/service.rb +267 -55
  324. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  325. data/generated/google/apis/firebase_v1beta1/classes.rb +25 -47
  326. data/generated/google/apis/firebase_v1beta1/representations.rb +2 -16
  327. data/generated/google/apis/firebase_v1beta1/service.rb +8 -1
  328. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  329. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +26 -0
  330. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +15 -0
  331. data/generated/google/apis/firebaseml_v1beta2.rb +1 -1
  332. data/generated/google/apis/firebaseml_v1beta2/classes.rb +0 -8
  333. data/generated/google/apis/firebaseml_v1beta2/representations.rb +0 -1
  334. data/generated/google/apis/firebaserules_v1.rb +1 -1
  335. data/generated/google/apis/firebaserules_v1/classes.rb +102 -137
  336. data/generated/google/apis/firebaserules_v1/service.rb +87 -110
  337. data/generated/google/apis/firestore_v1.rb +1 -1
  338. data/generated/google/apis/firestore_v1/classes.rb +402 -498
  339. data/generated/google/apis/firestore_v1/service.rb +165 -201
  340. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  341. data/generated/google/apis/firestore_v1beta1/classes.rb +334 -409
  342. data/generated/google/apis/firestore_v1beta1/service.rb +106 -122
  343. data/generated/google/apis/firestore_v1beta2.rb +1 -1
  344. data/generated/google/apis/firestore_v1beta2/classes.rb +135 -165
  345. data/generated/google/apis/firestore_v1beta2/service.rb +65 -86
  346. data/generated/google/apis/fitness_v1.rb +85 -0
  347. data/generated/google/apis/fitness_v1/classes.rb +982 -0
  348. data/generated/google/apis/fitness_v1/representations.rb +398 -0
  349. data/generated/google/apis/fitness_v1/service.rb +626 -0
  350. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  351. data/generated/google/apis/games_configuration_v1configuration/classes.rb +2 -3
  352. data/generated/google/apis/games_configuration_v1configuration/service.rb +6 -6
  353. data/generated/google/apis/games_management_v1management.rb +2 -3
  354. data/generated/google/apis/games_management_v1management/classes.rb +14 -20
  355. data/generated/google/apis/games_management_v1management/service.rb +35 -36
  356. data/generated/google/apis/games_v1.rb +2 -3
  357. data/generated/google/apis/games_v1/classes.rb +76 -83
  358. data/generated/google/apis/games_v1/representations.rb +2 -0
  359. data/generated/google/apis/games_v1/service.rb +84 -90
  360. data/generated/google/apis/genomics_v1.rb +1 -1
  361. data/generated/google/apis/genomics_v1/classes.rb +70 -76
  362. data/generated/google/apis/genomics_v1/service.rb +28 -43
  363. data/generated/google/apis/genomics_v1alpha2.rb +1 -1
  364. data/generated/google/apis/genomics_v1alpha2/classes.rb +223 -290
  365. data/generated/google/apis/genomics_v1alpha2/service.rb +54 -76
  366. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  367. data/generated/google/apis/genomics_v2alpha1/classes.rb +252 -275
  368. data/generated/google/apis/genomics_v2alpha1/representations.rb +1 -0
  369. data/generated/google/apis/genomics_v2alpha1/service.rb +47 -66
  370. data/generated/google/apis/gmail_v1.rb +1 -1
  371. data/generated/google/apis/gmail_v1/classes.rb +37 -43
  372. data/generated/google/apis/gmail_v1/service.rb +4 -3
  373. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +2 -2
  374. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +1 -1
  375. data/generated/google/apis/groupsmigration_v1.rb +35 -0
  376. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  377. data/generated/google/apis/groupsmigration_v1/representations.rb +40 -0
  378. data/generated/google/apis/groupsmigration_v1/service.rb +100 -0
  379. data/generated/google/apis/healthcare_v1.rb +1 -1
  380. data/generated/google/apis/healthcare_v1/classes.rb +563 -826
  381. data/generated/google/apis/healthcare_v1/service.rb +675 -853
  382. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  383. data/generated/google/apis/healthcare_v1beta1/classes.rb +828 -1102
  384. data/generated/google/apis/healthcare_v1beta1/representations.rb +20 -0
  385. data/generated/google/apis/healthcare_v1beta1/service.rb +895 -1139
  386. data/generated/google/apis/homegraph_v1.rb +1 -1
  387. data/generated/google/apis/homegraph_v1/classes.rb +76 -164
  388. data/generated/google/apis/homegraph_v1/service.rb +23 -35
  389. data/generated/google/apis/iam_v1.rb +5 -2
  390. data/generated/google/apis/iam_v1/classes.rb +388 -592
  391. data/generated/google/apis/iam_v1/service.rb +429 -555
  392. data/generated/google/apis/iamcredentials_v1.rb +4 -2
  393. data/generated/google/apis/iamcredentials_v1/classes.rb +75 -85
  394. data/generated/google/apis/iamcredentials_v1/service.rb +15 -13
  395. data/generated/google/apis/iap_v1.rb +1 -1
  396. data/generated/google/apis/iap_v1/classes.rb +246 -355
  397. data/generated/google/apis/iap_v1/service.rb +61 -71
  398. data/generated/google/apis/iap_v1beta1.rb +1 -1
  399. data/generated/google/apis/iap_v1beta1/classes.rb +157 -254
  400. data/generated/google/apis/iap_v1beta1/service.rb +17 -19
  401. data/generated/google/apis/indexing_v3.rb +1 -1
  402. data/generated/google/apis/indexing_v3/classes.rb +11 -11
  403. data/generated/google/apis/kgsearch_v1.rb +1 -1
  404. data/generated/google/apis/kgsearch_v1/classes.rb +4 -4
  405. data/generated/google/apis/kgsearch_v1/service.rb +11 -11
  406. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  407. data/generated/google/apis/lifesciences_v2beta/classes.rb +262 -290
  408. data/generated/google/apis/lifesciences_v2beta/service.rb +30 -42
  409. data/generated/google/apis/localservices_v1.rb +31 -0
  410. data/generated/google/apis/localservices_v1/classes.rb +419 -0
  411. data/generated/google/apis/localservices_v1/representations.rb +172 -0
  412. data/generated/google/apis/localservices_v1/service.rb +199 -0
  413. data/generated/google/apis/logging_v2.rb +1 -1
  414. data/generated/google/apis/logging_v2/classes.rb +174 -214
  415. data/generated/google/apis/logging_v2/representations.rb +15 -0
  416. data/generated/google/apis/logging_v2/service.rb +1017 -584
  417. data/generated/google/apis/manufacturers_v1.rb +1 -1
  418. data/generated/google/apis/manufacturers_v1/classes.rb +99 -109
  419. data/generated/google/apis/manufacturers_v1/service.rb +44 -55
  420. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  421. data/generated/google/apis/memcache_v1beta2/classes.rb +170 -249
  422. data/generated/google/apis/memcache_v1beta2/representations.rb +0 -19
  423. data/generated/google/apis/memcache_v1beta2/service.rb +58 -71
  424. data/generated/google/apis/ml_v1.rb +1 -1
  425. data/generated/google/apis/ml_v1/classes.rb +949 -1144
  426. data/generated/google/apis/ml_v1/representations.rb +64 -0
  427. data/generated/google/apis/ml_v1/service.rb +194 -253
  428. data/generated/google/apis/monitoring_v1.rb +1 -1
  429. data/generated/google/apis/monitoring_v1/classes.rb +103 -26
  430. data/generated/google/apis/monitoring_v1/representations.rb +35 -0
  431. data/generated/google/apis/monitoring_v1/service.rb +10 -11
  432. data/generated/google/apis/monitoring_v3.rb +1 -1
  433. data/generated/google/apis/monitoring_v3/classes.rb +220 -322
  434. data/generated/google/apis/monitoring_v3/service.rb +121 -140
  435. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  436. data/generated/google/apis/networkmanagement_v1/classes.rb +273 -429
  437. data/generated/google/apis/networkmanagement_v1/service.rb +97 -120
  438. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  439. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +388 -429
  440. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +40 -0
  441. data/generated/google/apis/networkmanagement_v1beta1/service.rb +97 -120
  442. data/generated/google/apis/osconfig_v1.rb +1 -1
  443. data/generated/google/apis/osconfig_v1/classes.rb +226 -270
  444. data/generated/google/apis/osconfig_v1/service.rb +22 -27
  445. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  446. data/generated/google/apis/osconfig_v1beta/classes.rb +1031 -411
  447. data/generated/google/apis/osconfig_v1beta/representations.rb +337 -0
  448. data/generated/google/apis/osconfig_v1beta/service.rb +39 -52
  449. data/generated/google/apis/oslogin_v1.rb +1 -1
  450. data/generated/google/apis/oslogin_v1/classes.rb +14 -12
  451. data/generated/google/apis/oslogin_v1/representations.rb +1 -0
  452. data/generated/google/apis/oslogin_v1/service.rb +12 -16
  453. data/generated/google/apis/oslogin_v1alpha.rb +1 -1
  454. data/generated/google/apis/oslogin_v1alpha/classes.rb +14 -12
  455. data/generated/google/apis/oslogin_v1alpha/representations.rb +1 -0
  456. data/generated/google/apis/oslogin_v1alpha/service.rb +14 -14
  457. data/generated/google/apis/oslogin_v1beta.rb +1 -1
  458. data/generated/google/apis/oslogin_v1beta/classes.rb +14 -12
  459. data/generated/google/apis/oslogin_v1beta/representations.rb +1 -0
  460. data/generated/google/apis/oslogin_v1beta/service.rb +12 -16
  461. data/generated/google/apis/pagespeedonline_v5.rb +2 -2
  462. data/generated/google/apis/pagespeedonline_v5/classes.rb +18 -24
  463. data/generated/google/apis/pagespeedonline_v5/service.rb +3 -4
  464. data/generated/google/apis/people_v1.rb +1 -1
  465. data/generated/google/apis/people_v1/classes.rb +121 -12
  466. data/generated/google/apis/people_v1/representations.rb +41 -0
  467. data/generated/google/apis/people_v1/service.rb +39 -39
  468. data/generated/google/apis/playablelocations_v3.rb +1 -1
  469. data/generated/google/apis/playablelocations_v3/classes.rb +108 -155
  470. data/generated/google/apis/playablelocations_v3/service.rb +10 -10
  471. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  472. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +6 -0
  473. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +1 -0
  474. data/generated/google/apis/pubsub_v1.rb +1 -1
  475. data/generated/google/apis/pubsub_v1/classes.rb +392 -518
  476. data/generated/google/apis/pubsub_v1/representations.rb +1 -0
  477. data/generated/google/apis/pubsub_v1/service.rb +220 -246
  478. data/generated/google/apis/pubsub_v1beta1a.rb +1 -1
  479. data/generated/google/apis/pubsub_v1beta1a/classes.rb +71 -86
  480. data/generated/google/apis/pubsub_v1beta1a/service.rb +31 -38
  481. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  482. data/generated/google/apis/pubsub_v1beta2/classes.rb +244 -354
  483. data/generated/google/apis/pubsub_v1beta2/service.rb +96 -108
  484. data/generated/google/apis/{memcache_v1.rb → pubsublite_v1.rb} +8 -9
  485. data/generated/google/apis/pubsublite_v1/classes.rb +389 -0
  486. data/generated/google/apis/{accessapproval_v1beta1 → pubsublite_v1}/representations.rb +78 -53
  487. data/generated/google/apis/{memcache_v1 → pubsublite_v1}/service.rb +195 -228
  488. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  489. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  490. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +335 -456
  491. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +0 -16
  492. data/generated/google/apis/recommendationengine_v1beta1/service.rb +140 -206
  493. data/generated/google/apis/redis_v1.rb +1 -1
  494. data/generated/google/apis/redis_v1/classes.rb +172 -208
  495. data/generated/google/apis/redis_v1/service.rb +93 -110
  496. data/generated/google/apis/redis_v1beta1.rb +1 -1
  497. data/generated/google/apis/redis_v1beta1/classes.rb +176 -212
  498. data/generated/google/apis/redis_v1beta1/service.rb +93 -110
  499. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  500. data/generated/google/apis/remotebuildexecution_v1/classes.rb +951 -1078
  501. data/generated/google/apis/remotebuildexecution_v1/representations.rb +61 -0
  502. data/generated/google/apis/remotebuildexecution_v1/service.rb +26 -33
  503. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  504. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +946 -1071
  505. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +61 -0
  506. data/generated/google/apis/remotebuildexecution_v1alpha/service.rb +103 -65
  507. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  508. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1099 -1250
  509. data/generated/google/apis/remotebuildexecution_v2/representations.rb +61 -0
  510. data/generated/google/apis/remotebuildexecution_v2/service.rb +147 -206
  511. data/generated/google/apis/run_v1.rb +1 -1
  512. data/generated/google/apis/run_v1/classes.rb +4 -3
  513. data/generated/google/apis/run_v1/representations.rb +1 -1
  514. data/generated/google/apis/run_v1alpha1.rb +1 -1
  515. data/generated/google/apis/run_v1alpha1/classes.rb +1 -1
  516. data/generated/google/apis/run_v1alpha1/representations.rb +1 -1
  517. data/generated/google/apis/run_v1beta1.rb +1 -1
  518. data/generated/google/apis/run_v1beta1/classes.rb +3 -2
  519. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  520. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +295 -412
  521. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +135 -159
  522. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  523. data/generated/google/apis/safebrowsing_v4/classes.rb +55 -64
  524. data/generated/google/apis/safebrowsing_v4/service.rb +4 -4
  525. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  526. data/generated/google/apis/sasportal_v1alpha1/classes.rb +6 -0
  527. data/generated/google/apis/sasportal_v1alpha1/representations.rb +1 -0
  528. data/generated/google/apis/script_v1.rb +1 -1
  529. data/generated/google/apis/script_v1/classes.rb +88 -111
  530. data/generated/google/apis/script_v1/service.rb +63 -69
  531. data/generated/google/apis/secretmanager_v1.rb +1 -1
  532. data/generated/google/apis/secretmanager_v1/classes.rb +211 -363
  533. data/generated/google/apis/secretmanager_v1/service.rb +66 -82
  534. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  535. data/generated/google/apis/secretmanager_v1beta1/classes.rb +211 -363
  536. data/generated/google/apis/secretmanager_v1beta1/service.rb +66 -82
  537. data/generated/google/apis/securitycenter_v1.rb +1 -1
  538. data/generated/google/apis/securitycenter_v1/classes.rb +16 -6
  539. data/generated/google/apis/securitycenter_v1/representations.rb +1 -0
  540. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  541. data/generated/google/apis/securitycenter_v1beta1/classes.rb +21 -9
  542. data/generated/google/apis/securitycenter_v1beta1/representations.rb +1 -0
  543. data/generated/google/apis/{securitycenter_v1p1beta1.rb → securitycenter_v1beta2.rb} +6 -6
  544. data/generated/google/apis/{securitycenter_v1p1alpha1 → securitycenter_v1beta2}/classes.rb +281 -103
  545. data/generated/google/apis/{securitycenter_v1p1alpha1 → securitycenter_v1beta2}/representations.rb +101 -30
  546. data/generated/google/apis/securitycenter_v1beta2/service.rb +1494 -0
  547. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  548. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +18 -48
  549. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  550. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +19 -49
  551. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  552. data/generated/google/apis/servicecontrol_v1/classes.rb +523 -641
  553. data/generated/google/apis/servicecontrol_v1/service.rb +36 -46
  554. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  555. data/generated/google/apis/servicecontrol_v2/classes.rb +279 -325
  556. data/generated/google/apis/servicecontrol_v2/service.rb +33 -43
  557. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  558. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +214 -333
  559. data/generated/google/apis/servicedirectory_v1beta1/service.rb +94 -129
  560. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  561. data/generated/google/apis/servicemanagement_v1/classes.rb +1266 -2116
  562. data/generated/google/apis/servicemanagement_v1/service.rb +144 -195
  563. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  564. data/generated/google/apis/servicenetworking_v1/classes.rb +93 -48
  565. data/generated/google/apis/servicenetworking_v1/representations.rb +52 -0
  566. data/generated/google/apis/servicenetworking_v1/service.rb +116 -0
  567. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  568. data/generated/google/apis/servicenetworking_v1beta/classes.rb +74 -48
  569. data/generated/google/apis/servicenetworking_v1beta/representations.rb +38 -0
  570. data/generated/google/apis/serviceusage_v1.rb +1 -1
  571. data/generated/google/apis/serviceusage_v1/classes.rb +52 -48
  572. data/generated/google/apis/serviceusage_v1/representations.rb +4 -0
  573. data/generated/google/apis/serviceusage_v1/service.rb +5 -1
  574. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  575. data/generated/google/apis/serviceusage_v1beta1/classes.rb +87 -49
  576. data/generated/google/apis/serviceusage_v1beta1/representations.rb +8 -0
  577. data/generated/google/apis/sheets_v4.rb +1 -1
  578. data/generated/google/apis/sheets_v4/classes.rb +3932 -5007
  579. data/generated/google/apis/sheets_v4/representations.rb +625 -0
  580. data/generated/google/apis/sheets_v4/service.rb +113 -149
  581. data/generated/google/apis/site_verification_v1.rb +1 -1
  582. data/generated/google/apis/slides_v1.rb +1 -1
  583. data/generated/google/apis/slides_v1/classes.rb +841 -1114
  584. data/generated/google/apis/slides_v1/service.rb +23 -30
  585. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  586. data/generated/google/apis/sourcerepo_v1/classes.rb +6 -6
  587. data/generated/google/apis/spanner_v1.rb +1 -1
  588. data/generated/google/apis/spanner_v1/classes.rb +1546 -2157
  589. data/generated/google/apis/spanner_v1/service.rb +443 -618
  590. data/generated/google/apis/speech_v1.rb +1 -1
  591. data/generated/google/apis/speech_v1/classes.rb +174 -220
  592. data/generated/google/apis/speech_v1/service.rb +27 -32
  593. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  594. data/generated/google/apis/speech_v1p1beta1/classes.rb +253 -306
  595. data/generated/google/apis/speech_v1p1beta1/service.rb +27 -32
  596. data/generated/google/apis/speech_v2beta1.rb +1 -1
  597. data/generated/google/apis/speech_v2beta1/classes.rb +66 -76
  598. data/generated/google/apis/speech_v2beta1/service.rb +10 -12
  599. data/generated/google/apis/sql_v1beta4.rb +1 -1
  600. data/generated/google/apis/sql_v1beta4/classes.rb +311 -370
  601. data/generated/google/apis/sql_v1beta4/representations.rb +2 -0
  602. data/generated/google/apis/sql_v1beta4/service.rb +51 -56
  603. data/generated/google/apis/storage_v1.rb +1 -1
  604. data/generated/google/apis/storage_v1/classes.rb +8 -7
  605. data/generated/google/apis/storage_v1/representations.rb +2 -2
  606. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  607. data/generated/google/apis/storagetransfer_v1/classes.rb +261 -339
  608. data/generated/google/apis/storagetransfer_v1/service.rb +43 -64
  609. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  610. data/generated/google/apis/streetviewpublish_v1/classes.rb +106 -148
  611. data/generated/google/apis/streetviewpublish_v1/service.rb +94 -177
  612. data/generated/google/apis/tagmanager_v1.rb +1 -1
  613. data/generated/google/apis/tagmanager_v1/service.rb +2 -2
  614. data/generated/google/apis/tagmanager_v2.rb +1 -1
  615. data/generated/google/apis/tagmanager_v2/service.rb +2 -2
  616. data/generated/google/apis/tasks_v1.rb +1 -1
  617. data/generated/google/apis/tasks_v1/classes.rb +20 -21
  618. data/generated/google/apis/tasks_v1/service.rb +16 -17
  619. data/generated/google/apis/testing_v1.rb +1 -1
  620. data/generated/google/apis/testing_v1/classes.rb +317 -382
  621. data/generated/google/apis/testing_v1/representations.rb +2 -0
  622. data/generated/google/apis/testing_v1/service.rb +22 -28
  623. data/generated/google/apis/texttospeech_v1.rb +1 -1
  624. data/generated/google/apis/texttospeech_v1/classes.rb +51 -57
  625. data/generated/google/apis/texttospeech_v1/service.rb +9 -10
  626. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  627. data/generated/google/apis/texttospeech_v1beta1/classes.rb +96 -57
  628. data/generated/google/apis/texttospeech_v1beta1/representations.rb +19 -0
  629. data/generated/google/apis/texttospeech_v1beta1/service.rb +9 -10
  630. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  631. data/generated/google/apis/toolresults_v1beta3/classes.rb +7 -0
  632. data/generated/google/apis/toolresults_v1beta3/representations.rb +1 -0
  633. data/generated/google/apis/tpu_v1.rb +1 -1
  634. data/generated/google/apis/tpu_v1/classes.rb +11 -0
  635. data/generated/google/apis/tpu_v1/representations.rb +1 -0
  636. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  637. data/generated/google/apis/tpu_v1alpha1/classes.rb +11 -0
  638. data/generated/google/apis/tpu_v1alpha1/representations.rb +1 -0
  639. data/generated/google/apis/{accessapproval_v1beta1.rb → trafficdirector_v2.rb} +9 -9
  640. data/generated/google/apis/trafficdirector_v2/classes.rb +1347 -0
  641. data/generated/google/apis/trafficdirector_v2/representations.rb +620 -0
  642. data/generated/google/apis/trafficdirector_v2/service.rb +89 -0
  643. data/generated/google/apis/translate_v3.rb +1 -1
  644. data/generated/google/apis/translate_v3/classes.rb +148 -175
  645. data/generated/google/apis/translate_v3/service.rb +122 -151
  646. data/generated/google/apis/translate_v3beta1.rb +1 -1
  647. data/generated/google/apis/translate_v3beta1/classes.rb +149 -170
  648. data/generated/google/apis/translate_v3beta1/service.rb +122 -151
  649. data/generated/google/apis/vectortile_v1.rb +1 -1
  650. data/generated/google/apis/vectortile_v1/classes.rb +185 -267
  651. data/generated/google/apis/vectortile_v1/service.rb +75 -88
  652. data/generated/google/apis/videointelligence_v1.rb +1 -1
  653. data/generated/google/apis/videointelligence_v1/classes.rb +753 -918
  654. data/generated/google/apis/videointelligence_v1/service.rb +40 -48
  655. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  656. data/generated/google/apis/videointelligence_v1beta2/classes.rb +748 -911
  657. data/generated/google/apis/videointelligence_v1beta2/service.rb +4 -4
  658. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  659. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +748 -911
  660. data/generated/google/apis/videointelligence_v1p1beta1/service.rb +4 -4
  661. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  662. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +748 -911
  663. data/generated/google/apis/videointelligence_v1p2beta1/service.rb +4 -4
  664. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  665. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +754 -920
  666. data/generated/google/apis/videointelligence_v1p3beta1/service.rb +4 -4
  667. data/generated/google/apis/webfonts_v1.rb +2 -3
  668. data/generated/google/apis/webfonts_v1/classes.rb +1 -2
  669. data/generated/google/apis/webfonts_v1/service.rb +2 -4
  670. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  671. data/generated/google/apis/youtube_v3.rb +1 -1
  672. data/generated/google/apis/youtube_v3/classes.rb +347 -0
  673. data/generated/google/apis/youtube_v3/representations.rb +176 -0
  674. data/generated/google/apis/youtube_v3/service.rb +78 -0
  675. data/lib/google/apis/version.rb +1 -1
  676. metadata +31 -31
  677. data/generated/google/apis/accessapproval_v1beta1/classes.rb +0 -417
  678. data/generated/google/apis/accessapproval_v1beta1/service.rb +0 -857
  679. data/generated/google/apis/dns_v2beta1.rb +0 -43
  680. data/generated/google/apis/dns_v2beta1/classes.rb +0 -1447
  681. data/generated/google/apis/dns_v2beta1/representations.rb +0 -588
  682. data/generated/google/apis/dns_v2beta1/service.rb +0 -928
  683. data/generated/google/apis/memcache_v1/classes.rb +0 -1157
  684. data/generated/google/apis/memcache_v1/representations.rb +0 -471
  685. data/generated/google/apis/oauth2_v2.rb +0 -40
  686. data/generated/google/apis/oauth2_v2/classes.rb +0 -165
  687. data/generated/google/apis/oauth2_v2/representations.rb +0 -68
  688. data/generated/google/apis/oauth2_v2/service.rb +0 -158
  689. data/generated/google/apis/securitycenter_v1p1alpha1/service.rb +0 -207
  690. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +0 -2059
  691. data/generated/google/apis/securitycenter_v1p1beta1/representations.rb +0 -789
  692. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +0 -1243
  693. data/generated/google/apis/storage_v1beta2.rb +0 -40
  694. data/generated/google/apis/storage_v1beta2/classes.rb +0 -1047
  695. data/generated/google/apis/storage_v1beta2/representations.rb +0 -425
  696. data/generated/google/apis/storage_v1beta2/service.rb +0 -1667
@@ -49,8 +49,7 @@ module Google
49
49
 
50
50
  # Create a new environment.
51
51
  # @param [String] parent
52
- # The parent must be of the form
53
- # "projects/`projectId`/locations/`locationId`".
52
+ # The parent must be of the form "projects/`projectId`/locations/`locationId`".
54
53
  # @param [Google::Apis::ComposerV1beta1::Environment] environment_object
55
54
  # @param [String] fields
56
55
  # Selector specifying which fields to include in a partial response.
@@ -83,8 +82,8 @@ module Google
83
82
 
84
83
  # Delete an environment.
85
84
  # @param [String] name
86
- # The environment to delete, in the form:
87
- # "projects/`projectId`/locations/`locationId`/environments/`environmentId`"
85
+ # The environment to delete, in the form: "projects/`projectId`/locations/`
86
+ # locationId`/environments/`environmentId`"
88
87
  # @param [String] fields
89
88
  # Selector specifying which fields to include in a partial response.
90
89
  # @param [String] quota_user
@@ -114,8 +113,8 @@ module Google
114
113
 
115
114
  # Get an existing environment.
116
115
  # @param [String] name
117
- # The resource name of the environment to get, in the form:
118
- # "projects/`projectId`/locations/`locationId`/environments/`environmentId`"
116
+ # The resource name of the environment to get, in the form: "projects/`projectId`
117
+ # /locations/`locationId`/environments/`environmentId`"
119
118
  # @param [String] fields
120
119
  # Selector specifying which fields to include in a partial response.
121
120
  # @param [String] quota_user
@@ -145,8 +144,8 @@ module Google
145
144
 
146
145
  # List environments.
147
146
  # @param [String] parent
148
- # List environments in the given project and location, in the form:
149
- # "projects/`projectId`/locations/`locationId`"
147
+ # List environments in the given project and location, in the form: "projects/`
148
+ # projectId`/locations/`locationId`"
150
149
  # @param [Fixnum] page_size
151
150
  # The maximum number of environments to return.
152
151
  # @param [String] page_token
@@ -182,162 +181,78 @@ module Google
182
181
 
183
182
  # Update an environment.
184
183
  # @param [String] name
185
- # The relative resource name of the environment to update, in the form:
186
- # "projects/`projectId`/locations/`locationId`/environments/`environmentId`"
184
+ # The relative resource name of the environment to update, in the form: "
185
+ # projects/`projectId`/locations/`locationId`/environments/`environmentId`"
187
186
  # @param [Google::Apis::ComposerV1beta1::Environment] environment_object
188
187
  # @param [String] update_mask
189
188
  # Required. A comma-separated list of paths, relative to `Environment`, of
190
- # fields to update.
191
- # For example, to set the version of scikit-learn to install in the
192
- # environment to 0.19.0 and to remove an existing installation of
193
- # argparse, the `updateMask` parameter would include the following two
194
- # `paths` values: "config.softwareConfig.pypiPackages.scikit-learn" and
195
- # "config.softwareConfig.pypiPackages.argparse". The included patch
196
- # environment would specify the scikit-learn version as follows:
197
- # `
198
- # "config":`
199
- # "softwareConfig":`
200
- # "pypiPackages":`
201
- # "scikit-learn":"==0.19.0"
202
- # `
203
- # `
204
- # `
205
- # `
206
- # Note that in the above example, any existing PyPI packages
207
- # other than scikit-learn and argparse will be unaffected.
208
- # Only one update type may be included in a single request's `updateMask`.
209
- # For example, one cannot update both the PyPI packages and
210
- # labels in the same request. However, it is possible to update multiple
211
- # members of a map field simultaneously in the same request. For example,
212
- # to set the labels "label1" and "label2" while clearing "label3" (assuming
213
- # it already exists), one can
214
- # provide the paths "labels.label1", "labels.label2", and "labels.label3"
215
- # and populate the patch environment as follows:
216
- # `
217
- # "labels":`
218
- # "label1":"new-label1-value"
219
- # "label2":"new-label2-value"
220
- # `
221
- # `
222
- # Note that in the above example, any existing labels that are not
223
- # included in the `updateMask` will be unaffected.
224
- # It is also possible to replace an entire map field by providing the
225
- # map field's path in the `updateMask`. The new value of the field will
226
- # be that which is provided in the patch environment. For example, to
227
- # delete all pre-existing user-specified PyPI packages and
228
- # install botocore at version 1.7.14, the `updateMask` would contain
229
- # the path "config.softwareConfig.pypiPackages", and
230
- # the patch environment would be the following:
231
- # `
232
- # "config":`
233
- # "softwareConfig":`
234
- # "pypiPackages":`
235
- # "botocore":"==1.7.14"
236
- # `
237
- # `
238
- # `
239
- # `
240
- # <strong>Note:</strong> Only the following fields can be updated:
241
- # <table>
242
- # <tbody>
243
- # <tr>
244
- # <td><strong>Mask</strong></td>
245
- # <td><strong>Purpose</strong></td>
246
- # </tr>
247
- # <tr>
248
- # <td>config.softwareConfig.pypiPackages
249
- # </td>
250
- # <td>Replace all custom custom PyPI packages. If a replacement
251
- # package map is not included in `environment`, all custom
252
- # PyPI packages are cleared. It is an error to provide both this mask and a
253
- # mask specifying an individual package.</td>
254
- # </tr>
255
- # <tr>
256
- # <td>config.softwareConfig.pypiPackages.<var>packagename</var></td>
257
- # <td>Update the custom PyPI package <var>packagename</var>,
258
- # preserving other packages. To delete the package, include it in
259
- # `updateMask`, and omit the mapping for it in
260
- # `environment.config.softwareConfig.pypiPackages`. It is an error
261
- # to provide both a mask of this form and the
262
- # "config.softwareConfig.pypiPackages" mask.</td>
263
- # </tr>
264
- # <tr>
265
- # <td>labels</td>
266
- # <td>Replace all environment labels. If a replacement labels map is not
267
- # included in `environment`, all labels are cleared. It is an error to
268
- # provide both this mask and a mask specifying one or more individual
269
- # labels.</td>
270
- # </tr>
271
- # <tr>
272
- # <td>labels.<var>labelName</var></td>
273
- # <td>Set the label named <var>labelName</var>, while preserving other
274
- # labels. To delete the label, include it in `updateMask` and omit its
275
- # mapping in `environment.labels`. It is an error to provide both a
276
- # mask of this form and the "labels" mask.</td>
277
- # </tr>
278
- # <tr>
279
- # <td>config.nodeCount</td>
280
- # <td>Horizontally scale the number of nodes in the environment. An integer
281
- # greater than or equal to 3 must be provided in the `config.nodeCount`
282
- # field.
283
- # </td>
284
- # </tr>
285
- # <tr>
286
- # <td>config.webServerNetworkAccessControl</td>
287
- # <td>Replace the environment's current WebServerNetworkAccessControl.
288
- # </td>
289
- # </tr>
290
- # <tr>
291
- # <td>config.softwareConfig.airflowConfigOverrides</td>
292
- # <td>Replace all Apache Airflow config overrides. If a replacement config
293
- # overrides map is not included in `environment`, all config overrides
294
- # are cleared.
295
- # It is an error to provide both this mask and a mask specifying one or
296
- # more individual config overrides.</td>
297
- # </tr>
298
- # <tr>
299
- # <td>config.softwareConfig.airflowConfigOverrides.<var>section</var>-<var>name
300
- # </var></td>
301
- # <td>Override the Apache Airflow config property <var>name</var> in the
302
- # section named <var>section</var>, preserving other properties. To delete
303
- # the property override, include it in `updateMask` and omit its mapping
304
- # in `environment.config.softwareConfig.airflowConfigOverrides`.
305
- # It is an error to provide both a mask of this form and the
306
- # "config.softwareConfig.airflowConfigOverrides" mask.</td>
307
- # </tr>
308
- # <tr>
309
- # <td>config.softwareConfig.envVariables</td>
310
- # <td>Replace all environment variables. If a replacement environment
311
- # variable map is not included in `environment`, all custom environment
312
- # variables are cleared.
313
- # It is an error to provide both this mask and a mask specifying one or
314
- # more individual environment variables.</td>
315
- # </tr>
316
- # <tr>
317
- # <td>config.softwareConfig.imageVersion</td>
318
- # <td>Upgrade the version of the environment in-place. Refer to
319
- # `SoftwareConfig.image_version` for information on how to format the new
320
- # image version. Additionally, the new image version cannot effect a version
321
- # downgrade and must match the current image version's Composer major
322
- # version and Airflow major and minor versions. Consult the
323
- # <a href="/composer/docs/concepts/versioning/composer-versions">Cloud
324
- # Composer Version List</a> for valid values.</td>
325
- # </tr>
326
- # <tr>
327
- # <td>config.databaseConfig.machineType</td>
328
- # <td>Cloud SQL machine type used by Airflow database.
329
- # It has to be one of: db-n1-standard-2, db-n1-standard-4, db-n1-standard-8
330
- # or db-n1-standard-16.</td>
331
- # </tr>
332
- # <tr>
333
- # <td>config.webServerConfig.machineType</td>
334
- # <td>Machine type on which Airflow web server is running.
335
- # It has to be one of: composer-n1-webserver-2, composer-n1-webserver-4 or
336
- # composer-n1-webserver-8.
337
- # </td>
338
- # </tr>
339
- # </tbody>
340
- # </table>
189
+ # fields to update. For example, to set the version of scikit-learn to install
190
+ # in the environment to 0.19.0 and to remove an existing installation of
191
+ # argparse, the `updateMask` parameter would include the following two `paths`
192
+ # values: "config.softwareConfig.pypiPackages.scikit-learn" and "config.
193
+ # softwareConfig.pypiPackages.argparse". The included patch environment would
194
+ # specify the scikit-learn version as follows: ` "config":` "softwareConfig":` "
195
+ # pypiPackages":` "scikit-learn":"==0.19.0" ` ` ` ` Note that in the above
196
+ # example, any existing PyPI packages other than scikit-learn and argparse will
197
+ # be unaffected. Only one update type may be included in a single request's `
198
+ # updateMask`. For example, one cannot update both the PyPI packages and labels
199
+ # in the same request. However, it is possible to update multiple members of a
200
+ # map field simultaneously in the same request. For example, to set the labels "
201
+ # label1" and "label2" while clearing "label3" (assuming it already exists), one
202
+ # can provide the paths "labels.label1", "labels.label2", and "labels.label3"
203
+ # and populate the patch environment as follows: ` "labels":` "label1":"new-
204
+ # label1-value" "label2":"new-label2-value" ` ` Note that in the above example,
205
+ # any existing labels that are not included in the `updateMask` will be
206
+ # unaffected. It is also possible to replace an entire map field by providing
207
+ # the map field's path in the `updateMask`. The new value of the field will be
208
+ # that which is provided in the patch environment. For example, to delete all
209
+ # pre-existing user-specified PyPI packages and install botocore at version 1.7.
210
+ # 14, the `updateMask` would contain the path "config.softwareConfig.
211
+ # pypiPackages", and the patch environment would be the following: ` "config":` "
212
+ # softwareConfig":` "pypiPackages":` "botocore":"==1.7.14" ` ` ` ` *Note:* Only
213
+ # the following fields can be updated: *Mask* *Purpose* config.softwareConfig.
214
+ # pypiPackages Replace all custom custom PyPI packages. If a replacement package
215
+ # map is not included in `environment`, all custom PyPI packages are cleared. It
216
+ # is an error to provide both this mask and a mask specifying an individual
217
+ # package. config.softwareConfig.pypiPackages.packagename Update the custom PyPI
218
+ # package packagename, preserving other packages. To delete the package, include
219
+ # it in `updateMask`, and omit the mapping for it in `environment.config.
220
+ # softwareConfig.pypiPackages`. It is an error to provide both a mask of this
221
+ # form and the "config.softwareConfig.pypiPackages" mask. labels Replace all
222
+ # environment labels. If a replacement labels map is not included in `
223
+ # environment`, all labels are cleared. It is an error to provide both this mask
224
+ # and a mask specifying one or more individual labels. labels.labelName Set the
225
+ # label named labelName, while preserving other labels. To delete the label,
226
+ # include it in `updateMask` and omit its mapping in `environment.labels`. It is
227
+ # an error to provide both a mask of this form and the "labels" mask. config.
228
+ # nodeCount Horizontally scale the number of nodes in the environment. An
229
+ # integer greater than or equal to 3 must be provided in the `config.nodeCount`
230
+ # field. config.webServerNetworkAccessControl Replace the environment's current
231
+ # WebServerNetworkAccessControl. config.softwareConfig.airflowConfigOverrides
232
+ # Replace all Apache Airflow config overrides. If a replacement config overrides
233
+ # map is not included in `environment`, all config overrides are cleared. It is
234
+ # an error to provide both this mask and a mask specifying one or more
235
+ # individual config overrides. config.softwareConfig.airflowConfigOverrides.
236
+ # section-name Override the Apache Airflow config property name in the section
237
+ # named section, preserving other properties. To delete the property override,
238
+ # include it in `updateMask` and omit its mapping in `environment.config.
239
+ # softwareConfig.airflowConfigOverrides`. It is an error to provide both a mask
240
+ # of this form and the "config.softwareConfig.airflowConfigOverrides" mask.
241
+ # config.softwareConfig.envVariables Replace all environment variables. If a
242
+ # replacement environment variable map is not included in `environment`, all
243
+ # custom environment variables are cleared. It is an error to provide both this
244
+ # mask and a mask specifying one or more individual environment variables.
245
+ # config.softwareConfig.imageVersion Upgrade the version of the environment in-
246
+ # place. Refer to `SoftwareConfig.image_version` for information on how to
247
+ # format the new image version. Additionally, the new image version cannot
248
+ # effect a version downgrade and must match the current image version's Composer
249
+ # major version and Airflow major and minor versions. Consult the Cloud Composer
250
+ # Version List for valid values. config.databaseConfig.machineType Cloud SQL
251
+ # machine type used by Airflow database. It has to be one of: db-n1-standard-2,
252
+ # db-n1-standard-4, db-n1-standard-8 or db-n1-standard-16. config.
253
+ # webServerConfig.machineType Machine type on which Airflow web server is
254
+ # running. It has to be one of: composer-n1-webserver-2, composer-n1-webserver-4
255
+ # or composer-n1-webserver-8.
341
256
  # @param [String] fields
342
257
  # Selector specifying which fields to include in a partial response.
343
258
  # @param [String] quota_user
@@ -370,8 +285,8 @@ module Google
370
285
 
371
286
  # List ImageVersions for provided location.
372
287
  # @param [String] parent
373
- # List ImageVersions in the given project and location, in the form:
374
- # "projects/`projectId`/locations/`locationId`"
288
+ # List ImageVersions in the given project and location, in the form: "projects/`
289
+ # projectId`/locations/`locationId`"
375
290
  # @param [Fixnum] page_size
376
291
  # The maximum number of image_versions to return.
377
292
  # @param [String] page_token
@@ -405,10 +320,10 @@ module Google
405
320
  execute_or_queue_command(command, &block)
406
321
  end
407
322
 
408
- # Deletes a long-running operation. This method indicates that the client is
409
- # no longer interested in the operation result. It does not cancel the
410
- # operation. If the server doesn't support this method, it returns
411
- # `google.rpc.Code.UNIMPLEMENTED`.
323
+ # Deletes a long-running operation. This method indicates that the client is no
324
+ # longer interested in the operation result. It does not cancel the operation.
325
+ # If the server doesn't support this method, it returns `google.rpc.Code.
326
+ # UNIMPLEMENTED`.
412
327
  # @param [String] name
413
328
  # The name of the operation resource to be deleted.
414
329
  # @param [String] fields
@@ -438,9 +353,8 @@ module Google
438
353
  execute_or_queue_command(command, &block)
439
354
  end
440
355
 
441
- # Gets the latest state of a long-running operation. Clients can use this
442
- # method to poll the operation result at intervals as recommended by the API
443
- # service.
356
+ # Gets the latest state of a long-running operation. Clients can use this method
357
+ # to poll the operation result at intervals as recommended by the API service.
444
358
  # @param [String] name
445
359
  # The name of the operation resource.
446
360
  # @param [String] fields
@@ -470,15 +384,14 @@ module Google
470
384
  execute_or_queue_command(command, &block)
471
385
  end
472
386
 
473
- # Lists operations that match the specified filter in the request. If the
474
- # server doesn't support this method, it returns `UNIMPLEMENTED`.
475
- # NOTE: the `name` binding allows API services to override the binding
476
- # to use different resource name schemes, such as `users/*/operations`. To
477
- # override the binding, API services can add a binding such as
478
- # `"/v1/`name=users/*`/operations"` to their service configuration.
479
- # For backwards compatibility, the default name includes the operations
480
- # collection id, however overriding users must ensure the name binding
481
- # is the parent resource, without the operations collection id.
387
+ # Lists operations that match the specified filter in the request. If the server
388
+ # doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name`
389
+ # binding allows API services to override the binding to use different resource
390
+ # name schemes, such as `users/*/operations`. To override the binding, API
391
+ # services can add a binding such as `"/v1/`name=users/*`/operations"` to their
392
+ # service configuration. For backwards compatibility, the default name includes
393
+ # the operations collection id, however overriding users must ensure the name
394
+ # binding is the parent resource, without the operations collection id.
482
395
  # @param [String] name
483
396
  # The name of the operation's parent resource.
484
397
  # @param [String] filter
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeAlpha
27
27
  VERSION = 'Alpha'
28
- REVISION = '20200704'
28
+ REVISION = '20200811'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -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.
@@ -1220,7 +1216,6 @@ module Google
1220
1216
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
1221
1217
  @local_ssds = args[:local_ssds] if args.key?(:local_ssds)
1222
1218
  @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
1219
  @machine_type = args[:machine_type] if args.key?(:machine_type)
1225
1220
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
1226
1221
  @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
@@ -1288,7 +1283,20 @@ module Google
1288
1283
  # @return [String]
1289
1284
  attr_accessor :device_name
1290
1285
 
1291
- # Represents a customer-supplied encryption key
1286
+ # Encrypts or decrypts a disk using a customer-supplied encryption key.
1287
+ # If you are creating a new disk, this field encrypts the new disk using an
1288
+ # encryption key that you provide. If you are attaching an existing disk that is
1289
+ # already encrypted, this field decrypts the disk using the customer-supplied
1290
+ # encryption key.
1291
+ # If you encrypt a disk using a customer-supplied key, you must provide the same
1292
+ # key again when you attempt to use this resource at a later time. For example,
1293
+ # you must provide the key when you create a snapshot or an image from the disk
1294
+ # or when you attach the disk to a virtual machine instance.
1295
+ # If you do not provide an encryption key, then the disk will be encrypted using
1296
+ # an automatically generated key and you do not need to provide a key to use the
1297
+ # disk later.
1298
+ # Instance templates do not store customer-supplied encryption keys, so you
1299
+ # cannot use your own keys to encrypt disks in a managed instance group.
1292
1300
  # Corresponds to the JSON property `diskEncryptionKey`
1293
1301
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
1294
1302
  attr_accessor :disk_encryption_key
@@ -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
@@ -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,73 @@ 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
+ #
2931
+ # Corresponds to the JSON property `cacheMode`
2932
+ # @return [String]
2933
+ attr_accessor :cache_mode
2934
+
2935
+ # Specifies a separate client (e.g. browser client) TTL, separate from the TTL
2936
+ # for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL
2937
+ # for both Cloud CDN and the client-facing response. The maximum allowed value
2938
+ # is 86400s (1 day).
2939
+ # Corresponds to the JSON property `clientTtl`
2940
+ # @return [Fixnum]
2941
+ attr_accessor :client_ttl
2942
+
2943
+ # Specifies the default TTL for cached content served by this origin for
2944
+ # responses that do not have an existing valid TTL (max-age or s-max-age).
2945
+ # Setting a TTL of "0" means "always revalidate" and a value of "-1" disables
2946
+ # caching for that status code. The value of defaultTTL cannot be set to a value
2947
+ # greater than that of maxTTL, but can be equal. When the cacheMode is set to
2948
+ # FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses.
2949
+ # The maximum allowed value is 31,622,400s (1 year), noting that infrequently
2950
+ # accessed objects may be evicted from the cache before the defined TTL.
2951
+ # Corresponds to the JSON property `defaultTtl`
2952
+ # @return [Fixnum]
2953
+ attr_accessor :default_ttl
2954
+
2955
+ # Specifies the maximum allowed TTL for cached content served by this origin.
2956
+ # Cache directives that attempt to set a max-age or s-maxage higher than this,
2957
+ # or an Expires header more than maxTTL seconds in the future will be capped at
2958
+ # the value of maxTTL, as if it were the value of an s-maxage Cache-Control
2959
+ # directive. Setting a TTL of "0" means "always revalidate" and a value of "-1"
2960
+ # disables caching for that status code. The maximum allowed value is 31,622,
2961
+ # 400s (1 year), noting that infrequently accessed objects may be evicted from
2962
+ # the cache before the defined TTL.
2963
+ # Corresponds to the JSON property `maxTtl`
2964
+ # @return [Fixnum]
2965
+ attr_accessor :max_ttl
2966
+
2967
+ # Negative caching allows per-status code TTLs to be set, in order to apply fine-
2968
+ # grained caching for common errors or redirects. This can reduce the load on
2969
+ # your origin and improve end-user experience by reducing response latency. By
2970
+ # default, Cloud CDN will apply the following default TTLs to these status codes:
2971
+ # HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not
2972
+ # Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method
2973
+ # Not Found), 414 (URI Too Long), 501 (Not Implemented): 60s These defaults can
2974
+ # be overridden in negative_caching_policy
2975
+ # Corresponds to the JSON property `negativeCaching`
2976
+ # @return [Boolean]
2977
+ attr_accessor :negative_caching
2978
+ alias_method :negative_caching?, :negative_caching
2979
+
2980
+ # Sets a cache TTL for the specified HTTP status code. negative_caching must be
2981
+ # enabled to configure negative_caching_policy. Omitting the policy and leaving
2982
+ # negative_caching enabled will use Cloud CDN's default cache TTLs. Note that
2983
+ # when specifying an explicit negative_caching_policy, you should take care to
2984
+ # specify a cache TTL for all response codes that you wish to cache. Cloud CDN
2985
+ # will not apply any default negative caching when a policy exists.
2986
+ # Corresponds to the JSON property `negativeCachingPolicy`
2987
+ # @return [Array<Google::Apis::ComputeAlpha::BackendBucketCdnPolicyNegativeCachingPolicy>]
2988
+ attr_accessor :negative_caching_policy
2989
+
2905
2990
  # If true then Cloud CDN will combine multiple concurrent cache fill requests
2906
2991
  # into a small number of requests to the origin.
2907
2992
  # Corresponds to the JSON property `requestCoalescing`
@@ -2909,6 +2994,18 @@ module Google
2909
2994
  attr_accessor :request_coalescing
2910
2995
  alias_method :request_coalescing?, :request_coalescing
2911
2996
 
2997
+ # Serve existing content from the cache (if available) when revalidating content
2998
+ # with the origin, or when an error is encountered when refreshing the cache.
2999
+ # This setting defines the default "max-stale" duration for any cached responses
3000
+ # that do not specify a max-stale directive. Stale responses that exceed the TTL
3001
+ # configured here will not be served. The default limit (max-stale) is 86400s (1
3002
+ # day), which will allow stale content to be served up to this limit beyond the
3003
+ # max-age (or s-max-age) of a cached response. The maximum allowed value is
3004
+ # 604800(1 week). Set this to zero (0) to disable serve-while-stale.
3005
+ # Corresponds to the JSON property `serveWhileStale`
3006
+ # @return [Fixnum]
3007
+ attr_accessor :serve_while_stale
3008
+
2912
3009
  # Maximum number of seconds the response to a signed URL request will be
2913
3010
  # considered fresh. After this time period, the response will be revalidated
2914
3011
  # before being served. Defaults to 1hr (3600s). When serving responses to signed
@@ -2931,12 +3028,73 @@ module Google
2931
3028
 
2932
3029
  # Update properties of this object
2933
3030
  def update!(**args)
3031
+ @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
3032
+ @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
3033
+ @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
3034
+ @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
3035
+ @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
3036
+ @negative_caching = args[:negative_caching] if args.key?(:negative_caching)
3037
+ @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy)
2934
3038
  @request_coalescing = args[:request_coalescing] if args.key?(:request_coalescing)
3039
+ @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale)
2935
3040
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
2936
3041
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
2937
3042
  end
2938
3043
  end
2939
3044
 
3045
+ # Bypass the cache when the specified request headers are present, e.g. Pragma
3046
+ # or Authorization headers. Values are case insensitive. The presence of such a
3047
+ # header overrides the cache_mode setting.
3048
+ class BackendBucketCdnPolicyBypassCacheOnRequestHeader
3049
+ include Google::Apis::Core::Hashable
3050
+
3051
+ # The header field name to match on when bypassing cache. Values are case-
3052
+ # insensitive.
3053
+ # Corresponds to the JSON property `headerName`
3054
+ # @return [String]
3055
+ attr_accessor :header_name
3056
+
3057
+ def initialize(**args)
3058
+ update!(**args)
3059
+ end
3060
+
3061
+ # Update properties of this object
3062
+ def update!(**args)
3063
+ @header_name = args[:header_name] if args.key?(:header_name)
3064
+ end
3065
+ end
3066
+
3067
+ # Specify CDN TTLs for response error codes.
3068
+ class BackendBucketCdnPolicyNegativeCachingPolicy
3069
+ include Google::Apis::Core::Hashable
3070
+
3071
+ # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
3072
+ # 308, 404, 405, 410, 414, 451 and 501 are can be specified as values, and you
3073
+ # cannot specify a status code more than once.
3074
+ # Corresponds to the JSON property `code`
3075
+ # @return [Fixnum]
3076
+ attr_accessor :code
3077
+
3078
+ # The TTL (in seconds) to cache responses with the corresponding status code for.
3079
+ # A TTL of "0" means "always revalidate" and a value of "-1" disables caching
3080
+ # for that status code. The maximum allowed value is 1800s (30 minutes), noting
3081
+ # that infrequently accessed objects may be evicted from the cache before the
3082
+ # defined TTL.
3083
+ # Corresponds to the JSON property `ttl`
3084
+ # @return [Fixnum]
3085
+ attr_accessor :ttl
3086
+
3087
+ def initialize(**args)
3088
+ update!(**args)
3089
+ end
3090
+
3091
+ # Update properties of this object
3092
+ def update!(**args)
3093
+ @code = args[:code] if args.key?(:code)
3094
+ @ttl = args[:ttl] if args.key?(:ttl)
3095
+ end
3096
+ end
3097
+
2940
3098
  # Contains a list of BackendBucket resources.
2941
3099
  class BackendBucketList
2942
3100
  include Google::Apis::Core::Hashable
@@ -3072,6 +3230,8 @@ module Google
3072
3230
 
3073
3231
  # If set to 0, the cookie is non-persistent and lasts only until the end of the
3074
3232
  # browser session (or equivalent). The maximum allowed value is one day (86,400).
3233
+ # Not supported when the backend service is referenced by a URL map that is
3234
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
3075
3235
  # Corresponds to the JSON property `affinityCookieTtlSec`
3076
3236
  # @return [Fixnum]
3077
3237
  attr_accessor :affinity_cookie_ttl_sec
@@ -3111,6 +3271,11 @@ module Google
3111
3271
  # @return [Array<String>]
3112
3272
  attr_accessor :custom_request_headers
3113
3273
 
3274
+ # Headers that the HTTP/S load balancer should add to proxied responses.
3275
+ # Corresponds to the JSON property `customResponseHeaders`
3276
+ # @return [Array<String>]
3277
+ attr_accessor :custom_response_headers
3278
+
3114
3279
  # An optional description of this resource. Provide this property when you
3115
3280
  # create the resource.
3116
3281
  # Corresponds to the JSON property `description`
@@ -3150,10 +3315,10 @@ module Google
3150
3315
  # The list of URLs to the healthChecks, httpHealthChecks (legacy), or
3151
3316
  # httpsHealthChecks (legacy) resource for health checking this backend service.
3152
3317
  # 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
3318
+ # guide. Currently, at most one health check can be specified for each backend
3319
+ # service. Backend services with instance group or zonal NEG backends must have
3320
+ # a health check. Backend services with internet or serverless NEG backends must
3321
+ # not have a health check.
3157
3322
  # Corresponds to the JSON property `healthChecks`
3158
3323
  # @return [Array<String>]
3159
3324
  attr_accessor :health_checks
@@ -3208,8 +3373,11 @@ module Google
3208
3373
  # HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED.
3209
3374
  # - A global backend service with the load_balancing_scheme set to
3210
3375
  # INTERNAL_SELF_MANAGED.
3211
- # If sessionAffinity is not NONE, and this field is not set to >MAGLEV or
3376
+ # If sessionAffinity is not NONE, and this field is not set to MAGLEV or
3212
3377
  # RING_HASH, session affinity settings will not take effect.
3378
+ # Only the default ROUND_ROBIN policy is supported when the backend service is
3379
+ # referenced by a URL map that is bound to target gRPC proxy that has
3380
+ # validateForProxyless field set to true.
3213
3381
  # Corresponds to the JSON property `localityLbPolicy`
3214
3382
  # @return [String]
3215
3383
  attr_accessor :locality_lb_policy
@@ -3262,10 +3430,12 @@ module Google
3262
3430
  attr_accessor :port_name
3263
3431
 
3264
3432
  # 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
3433
+ # Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on
3434
+ # the chosen load balancer or Traffic Director configuration. Refer to the
3267
3435
  # documentation for the load balancer or for Traffic Director for more
3268
3436
  # information.
3437
+ # Must be set to GRPC when the backend service is referenced by a URL map that
3438
+ # is bound to target gRPC proxy.
3269
3439
  # Corresponds to the JSON property `protocol`
3270
3440
  # @return [String]
3271
3441
  attr_accessor :protocol
@@ -3309,6 +3479,8 @@ module Google
3309
3479
  # When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED,
3310
3480
  # possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or
3311
3481
  # HTTP_COOKIE.
3482
+ # Not supported when the backend service is referenced by a URL map that is
3483
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
3312
3484
  # Corresponds to the JSON property `sessionAffinity`
3313
3485
  # @return [String]
3314
3486
  attr_accessor :session_affinity
@@ -3334,6 +3506,7 @@ module Google
3334
3506
  @consistent_hash = args[:consistent_hash] if args.key?(:consistent_hash)
3335
3507
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
3336
3508
  @custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers)
3509
+ @custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
3337
3510
  @description = args[:description] if args.key?(:description)
3338
3511
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
3339
3512
  @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
@@ -3488,12 +3661,79 @@ module Google
3488
3661
  class BackendServiceCdnPolicy
3489
3662
  include Google::Apis::Core::Hashable
3490
3663
 
3664
+ # Bypass the cache when the specified request headers are matched - e.g. Pragma
3665
+ # or Authorization headers. Up to 5 headers can be specified. The cache is
3666
+ # bypassed for all cdnPolicy.cacheMode settings.
3667
+ # Corresponds to the JSON property `bypassCacheOnRequestHeaders`
3668
+ # @return [Array<Google::Apis::ComputeAlpha::BackendServiceCdnPolicyBypassCacheOnRequestHeader>]
3669
+ attr_accessor :bypass_cache_on_request_headers
3670
+
3491
3671
  # Message containing what to include in the cache key for a request for Cloud
3492
3672
  # CDN.
3493
3673
  # Corresponds to the JSON property `cacheKeyPolicy`
3494
3674
  # @return [Google::Apis::ComputeAlpha::CacheKeyPolicy]
3495
3675
  attr_accessor :cache_key_policy
3496
3676
 
3677
+ #
3678
+ # Corresponds to the JSON property `cacheMode`
3679
+ # @return [String]
3680
+ attr_accessor :cache_mode
3681
+
3682
+ # Specifies a separate client (e.g. browser client) TTL, separate from the TTL
3683
+ # for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL
3684
+ # for both Cloud CDN and the client-facing response. The maximum allowed value
3685
+ # is 86400s (1 day).
3686
+ # Corresponds to the JSON property `clientTtl`
3687
+ # @return [Fixnum]
3688
+ attr_accessor :client_ttl
3689
+
3690
+ # Specifies the default TTL for cached content served by this origin for
3691
+ # responses that do not have an existing valid TTL (max-age or s-max-age).
3692
+ # Setting a TTL of "0" means "always revalidate" and a value of "-1" disables
3693
+ # caching for that status code. The value of defaultTTL cannot be set to a value
3694
+ # greater than that of maxTTL, but can be equal. When the cacheMode is set to
3695
+ # FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses.
3696
+ # The maximum allowed value is 31,622,400s (1 year), noting that infrequently
3697
+ # accessed objects may be evicted from the cache before the defined TTL.
3698
+ # Corresponds to the JSON property `defaultTtl`
3699
+ # @return [Fixnum]
3700
+ attr_accessor :default_ttl
3701
+
3702
+ # Specifies the maximum allowed TTL for cached content served by this origin.
3703
+ # Cache directives that attempt to set a max-age or s-maxage higher than this,
3704
+ # or an Expires header more than maxTTL seconds in the future will be capped at
3705
+ # the value of maxTTL, as if it were the value of an s-maxage Cache-Control
3706
+ # directive. Setting a TTL of "0" means "always revalidate" and a value of "-1"
3707
+ # disables caching for that status code. The maximum allowed value is 31,622,
3708
+ # 400s (1 year), noting that infrequently accessed objects may be evicted from
3709
+ # the cache before the defined TTL.
3710
+ # Corresponds to the JSON property `maxTtl`
3711
+ # @return [Fixnum]
3712
+ attr_accessor :max_ttl
3713
+
3714
+ # Negative caching allows per-status code TTLs to be set, in order to apply fine-
3715
+ # grained caching for common errors or redirects. This can reduce the load on
3716
+ # your origin and improve end-user experience by reducing response latency. By
3717
+ # default, Cloud CDN will apply the following default TTLs to these status codes:
3718
+ # HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not
3719
+ # Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method
3720
+ # Not Found), 414 (URI Too Long), 501 (Not Implemented): 60s These defaults can
3721
+ # be overridden in negative_caching_policy
3722
+ # Corresponds to the JSON property `negativeCaching`
3723
+ # @return [Boolean]
3724
+ attr_accessor :negative_caching
3725
+ alias_method :negative_caching?, :negative_caching
3726
+
3727
+ # Sets a cache TTL for the specified HTTP status code. negative_caching must be
3728
+ # enabled to configure negative_caching_policy. Omitting the policy and leaving
3729
+ # negative_caching enabled will use Cloud CDN's default cache TTLs. Note that
3730
+ # when specifying an explicit negative_caching_policy, you should take care to
3731
+ # specify a cache TTL for all response codes that you wish to cache. Cloud CDN
3732
+ # will not apply any default negative caching when a policy exists.
3733
+ # Corresponds to the JSON property `negativeCachingPolicy`
3734
+ # @return [Array<Google::Apis::ComputeAlpha::BackendServiceCdnPolicyNegativeCachingPolicy>]
3735
+ attr_accessor :negative_caching_policy
3736
+
3497
3737
  # If true then Cloud CDN will combine multiple concurrent cache fill requests
3498
3738
  # into a small number of requests to the origin.
3499
3739
  # Corresponds to the JSON property `requestCoalescing`
@@ -3501,6 +3741,18 @@ module Google
3501
3741
  attr_accessor :request_coalescing
3502
3742
  alias_method :request_coalescing?, :request_coalescing
3503
3743
 
3744
+ # Serve existing content from the cache (if available) when revalidating content
3745
+ # with the origin, or when an error is encountered when refreshing the cache.
3746
+ # This setting defines the default "max-stale" duration for any cached responses
3747
+ # that do not specify a max-stale directive. Stale responses that exceed the TTL
3748
+ # configured here will not be served. The default limit (max-stale) is 86400s (1
3749
+ # day), which will allow stale content to be served up to this limit beyond the
3750
+ # max-age (or s-max-age) of a cached response. The maximum allowed value is
3751
+ # 604800(1 week). Set this to zero (0) to disable serve-while-stale.
3752
+ # Corresponds to the JSON property `serveWhileStale`
3753
+ # @return [Fixnum]
3754
+ attr_accessor :serve_while_stale
3755
+
3504
3756
  # Maximum number of seconds the response to a signed URL request will be
3505
3757
  # considered fresh. After this time period, the response will be revalidated
3506
3758
  # before being served. Defaults to 1hr (3600s). When serving responses to signed
@@ -3523,13 +3775,74 @@ module Google
3523
3775
 
3524
3776
  # Update properties of this object
3525
3777
  def update!(**args)
3778
+ @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
3526
3779
  @cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy)
3780
+ @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
3781
+ @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
3782
+ @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
3783
+ @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
3784
+ @negative_caching = args[:negative_caching] if args.key?(:negative_caching)
3785
+ @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy)
3527
3786
  @request_coalescing = args[:request_coalescing] if args.key?(:request_coalescing)
3787
+ @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale)
3528
3788
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
3529
3789
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
3530
3790
  end
3531
3791
  end
3532
3792
 
3793
+ # Bypass the cache when the specified request headers are present, e.g. Pragma
3794
+ # or Authorization headers. Values are case insensitive. The presence of such a
3795
+ # header overrides the cache_mode setting.
3796
+ class BackendServiceCdnPolicyBypassCacheOnRequestHeader
3797
+ include Google::Apis::Core::Hashable
3798
+
3799
+ # The header field name to match on when bypassing cache. Values are case-
3800
+ # insensitive.
3801
+ # Corresponds to the JSON property `headerName`
3802
+ # @return [String]
3803
+ attr_accessor :header_name
3804
+
3805
+ def initialize(**args)
3806
+ update!(**args)
3807
+ end
3808
+
3809
+ # Update properties of this object
3810
+ def update!(**args)
3811
+ @header_name = args[:header_name] if args.key?(:header_name)
3812
+ end
3813
+ end
3814
+
3815
+ # Specify CDN TTLs for response error codes.
3816
+ class BackendServiceCdnPolicyNegativeCachingPolicy
3817
+ include Google::Apis::Core::Hashable
3818
+
3819
+ # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
3820
+ # 308, 404, 405, 410, 414, 451 and 501 are can be specified as values, and you
3821
+ # cannot specify a status code more than once.
3822
+ # Corresponds to the JSON property `code`
3823
+ # @return [Fixnum]
3824
+ attr_accessor :code
3825
+
3826
+ # The TTL (in seconds) to cache responses with the corresponding status code for.
3827
+ # A TTL of "0" means "always revalidate" and a value of "-1" disables caching
3828
+ # for that status code. The maximum allowed value is 1800s (30 minutes), noting
3829
+ # that infrequently accessed objects may be evicted from the cache before the
3830
+ # defined TTL.
3831
+ # Corresponds to the JSON property `ttl`
3832
+ # @return [Fixnum]
3833
+ attr_accessor :ttl
3834
+
3835
+ def initialize(**args)
3836
+ update!(**args)
3837
+ end
3838
+
3839
+ # Update properties of this object
3840
+ def update!(**args)
3841
+ @code = args[:code] if args.key?(:code)
3842
+ @ttl = args[:ttl] if args.key?(:ttl)
3843
+ end
3844
+ end
3845
+
3533
3846
  # Applicable only to Failover for Internal TCP/UDP Load Balancing. On failover
3534
3847
  # or failback, this field indicates whether connection draining will be honored.
3535
3848
  # GCP has a fixed connection draining timeout of 10 minutes. A setting of true
@@ -5330,7 +5643,7 @@ module Google
5330
5643
  end
5331
5644
  end
5332
5645
 
5333
- # Represents a customer-supplied encryption key
5646
+ #
5334
5647
  class CustomerEncryptionKey
5335
5648
  include Google::Apis::Core::Hashable
5336
5649
 
@@ -5387,7 +5700,7 @@ module Google
5387
5700
  class CustomerEncryptionKeyProtectedDisk
5388
5701
  include Google::Apis::Core::Hashable
5389
5702
 
5390
- # Represents a customer-supplied encryption key
5703
+ # Decrypts data associated with the disk with a customer-supplied encryption key.
5391
5704
  # Corresponds to the JSON property `diskEncryptionKey`
5392
5705
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5393
5706
  attr_accessor :disk_encryption_key
@@ -5491,7 +5804,16 @@ module Google
5491
5804
  # @return [String]
5492
5805
  attr_accessor :description
5493
5806
 
5494
- # Represents a customer-supplied encryption key
5807
+ # Encrypts the disk using a customer-supplied encryption key.
5808
+ # After you encrypt a disk with a customer-supplied key, you must provide the
5809
+ # same key if you use the disk later (e.g. to create a disk snapshot, to create
5810
+ # a disk image, to create a machine image, or to attach the disk to a virtual
5811
+ # machine).
5812
+ # Customer-supplied encryption keys do not protect access to metadata of the
5813
+ # disk.
5814
+ # If you do not provide an encryption key when creating the disk, then the disk
5815
+ # will be encrypted using an automatically generated key and you do not need to
5816
+ # provide a key to use the disk later.
5495
5817
  # Corresponds to the JSON property `diskEncryptionKey`
5496
5818
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5497
5819
  attr_accessor :disk_encryption_key
@@ -5618,6 +5940,12 @@ module Google
5618
5940
  # @return [Array<String>]
5619
5941
  attr_accessor :resource_policies
5620
5942
 
5943
+ # [Output Only] Specifies whether this disk satisfies zone separation.
5944
+ # Corresponds to the JSON property `satisfiesPhysicalZoneSeparation`
5945
+ # @return [Boolean]
5946
+ attr_accessor :satisfies_physical_zone_separation
5947
+ alias_method :satisfies_physical_zone_separation?, :satisfies_physical_zone_separation
5948
+
5621
5949
  # [Output Only] Server-defined fully-qualified URL for this resource.
5622
5950
  # Corresponds to the JSON property `selfLink`
5623
5951
  # @return [String]
@@ -5628,12 +5956,11 @@ module Google
5628
5956
  # @return [String]
5629
5957
  attr_accessor :self_link_with_id
5630
5958
 
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.
5959
+ # Size, in GB, of the persistent disk. You can specify this field when creating
5960
+ # a persistent disk using the sourceImage, sourceSnapshot, or sourceDisk
5961
+ # parameter, or specify it alone to create an empty persistent disk.
5962
+ # If you specify this field along with a source, the value of sizeGb must not be
5963
+ # less than the size of the source. Acceptable values are 1 to 65536, inclusive.
5637
5964
  # Corresponds to the JSON property `sizeGb`
5638
5965
  # @return [Fixnum]
5639
5966
  attr_accessor :size_gb
@@ -5675,7 +6002,8 @@ module Google
5675
6002
  # @return [String]
5676
6003
  attr_accessor :source_image
5677
6004
 
5678
- # Represents a customer-supplied encryption key
6005
+ # The customer-supplied encryption key of the source image. Required if the
6006
+ # source image is protected by a customer-supplied encryption key.
5679
6007
  # Corresponds to the JSON property `sourceImageEncryptionKey`
5680
6008
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5681
6009
  attr_accessor :source_image_encryption_key
@@ -5689,9 +6017,9 @@ module Google
5689
6017
  # @return [String]
5690
6018
  attr_accessor :source_image_id
5691
6019
 
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:
6020
+ # [Deprecated] The source in-place snapshot used to create this disk. You can
6021
+ # provide this as a partial or full URL to the resource. For example, the
6022
+ # following are valid values:
5695
6023
  # - https://www.googleapis.com/compute/v1/projects/project/global/
5696
6024
  # inPlaceSnapshots/inPlaceSnapshots
5697
6025
  # - projects/project/global/inPlaceSnapshots/inPlaceSnapshots
@@ -5700,16 +6028,37 @@ module Google
5700
6028
  # @return [String]
5701
6029
  attr_accessor :source_in_place_snapshot
5702
6030
 
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.
6031
+ # [Deprecated] [Output Only] The unique ID of the in-place snapshot used to
6032
+ # create this disk. This value identifies the exact in-place snapshot that was
6033
+ # used to create this persistent disk. For example, if you created the
6034
+ # persistent disk from an in-place snapshot that was later deleted and recreated
6035
+ # under the same name, the source in-place snapshot ID would identify the exact
6036
+ # version of the in-place snapshot that was used.
5709
6037
  # Corresponds to the JSON property `sourceInPlaceSnapshotId`
5710
6038
  # @return [String]
5711
6039
  attr_accessor :source_in_place_snapshot_id
5712
6040
 
6041
+ # The source instant snapshot used to create this disk. You can provide this as
6042
+ # a partial or full URL to the resource. For example, the following are valid
6043
+ # values:
6044
+ # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/
6045
+ # instantSnapshots/instantSnapshot
6046
+ # - projects/project/zones/zone/instantSnapshots/instantSnapshot
6047
+ # - zones/zone/instantSnapshots/instantSnapshot
6048
+ # Corresponds to the JSON property `sourceInstantSnapshot`
6049
+ # @return [String]
6050
+ attr_accessor :source_instant_snapshot
6051
+
6052
+ # [Output Only] The unique ID of the instant snapshot used to create this disk.
6053
+ # This value identifies the exact instant snapshot that was used to create this
6054
+ # persistent disk. For example, if you created the persistent disk from an
6055
+ # instant snapshot that was later deleted and recreated under the same name, the
6056
+ # source instant snapshot ID would identify the exact version of the instant
6057
+ # snapshot that was used.
6058
+ # Corresponds to the JSON property `sourceInstantSnapshotId`
6059
+ # @return [String]
6060
+ attr_accessor :source_instant_snapshot_id
6061
+
5713
6062
  # The source snapshot used to create this disk. You can provide this as a
5714
6063
  # partial or full URL to the resource. For example, the following are valid
5715
6064
  # values:
@@ -5721,7 +6070,8 @@ module Google
5721
6070
  # @return [String]
5722
6071
  attr_accessor :source_snapshot
5723
6072
 
5724
- # Represents a customer-supplied encryption key
6073
+ # The customer-supplied encryption key of the source snapshot. Required if the
6074
+ # source snapshot is protected by a customer-supplied encryption key.
5725
6075
  # Corresponds to the JSON property `sourceSnapshotEncryptionKey`
5726
6076
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
5727
6077
  attr_accessor :source_snapshot_encryption_key
@@ -5803,6 +6153,7 @@ module Google
5803
6153
  @region = args[:region] if args.key?(:region)
5804
6154
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
5805
6155
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
6156
+ @satisfies_physical_zone_separation = args[:satisfies_physical_zone_separation] if args.key?(:satisfies_physical_zone_separation)
5806
6157
  @self_link = args[:self_link] if args.key?(:self_link)
5807
6158
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
5808
6159
  @size_gb = args[:size_gb] if args.key?(:size_gb)
@@ -5813,6 +6164,8 @@ module Google
5813
6164
  @source_image_id = args[:source_image_id] if args.key?(:source_image_id)
5814
6165
  @source_in_place_snapshot = args[:source_in_place_snapshot] if args.key?(:source_in_place_snapshot)
5815
6166
  @source_in_place_snapshot_id = args[:source_in_place_snapshot_id] if args.key?(:source_in_place_snapshot_id)
6167
+ @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
6168
+ @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id)
5816
6169
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
5817
6170
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
5818
6171
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
@@ -8251,6 +8604,8 @@ module Google
8251
8604
  # IP address that you can use. For detailed information, refer to [IP address
8252
8605
  # specifications](/load-balancing/docs/forwarding-rule-concepts#
8253
8606
  # ip_address_specifications).
8607
+ # Must be set to `0.0.0.0` when the target is targetGrpcProxy that has
8608
+ # validateForProxyless field set to true.
8254
8609
  # Corresponds to the JSON property `IPAddress`
8255
8610
  # @return [String]
8256
8611
  attr_accessor :ip_address
@@ -8389,7 +8744,7 @@ module Google
8389
8744
 
8390
8745
  # Opaque filter criteria used by Loadbalancer to restrict routing configuration
8391
8746
  # 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
8747
+ # Loadbalancer, xDS clients present node metadata. When there is a match, the
8393
8748
  # relevant configuration is made available to those proxies. Otherwise, all the
8394
8749
  # resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule will
8395
8750
  # not be visible to those proxies.
@@ -8397,7 +8752,8 @@ module Google
8397
8752
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
8398
8753
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
8399
8754
  # all of its filterLabels must match with corresponding labels provided in the
8400
- # metadata.
8755
+ # metadata. If multiple metadataFilters are specified, all of them need to be
8756
+ # satisfied in order to be considered a match.
8401
8757
  # metadataFilters specified here will be applifed before those specified in the
8402
8758
  # UrlMap that this ForwardingRule references.
8403
8759
  # metadataFilters only applies to Loadbalancers that have their
@@ -8439,13 +8795,14 @@ module Google
8439
8795
  # that points to a target proxy or a target pool. Do not use with a forwarding
8440
8796
  # rule that points to a backend service. This field is used along with the
8441
8797
  # target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy,
8442
- # TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.
8798
+ # TargetTcpProxy, TargetGrpcProxy, TargetVpnGateway, TargetPool, TargetInstance.
8443
8799
  # Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed
8444
8800
  # to ports in the specified range will be forwarded to target. Forwarding rules
8445
8801
  # with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.
8446
8802
  # Some types of forwarding target have constraints on the acceptable ports:
8447
8803
  # - TargetHttpProxy: 80, 8080
8448
8804
  # - TargetHttpsProxy: 443
8805
+ # - TargetGrpcProxy: Any ports
8449
8806
  # - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
8450
8807
  # 1883, 5222
8451
8808
  # - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
@@ -8487,6 +8844,12 @@ module Google
8487
8844
  # @return [String]
8488
8845
  attr_accessor :self_link_with_id
8489
8846
 
8847
+ # Service Directory resources to register this forwarding rule with. Currently,
8848
+ # only supports a single Service Directory resource.
8849
+ # Corresponds to the JSON property `serviceDirectoryRegistrations`
8850
+ # @return [Array<Google::Apis::ComputeAlpha::ForwardingRuleServiceDirectoryRegistration>]
8851
+ attr_accessor :service_directory_registrations
8852
+
8490
8853
  # An optional prefix to the service name for this Forwarding Rule. If specified,
8491
8854
  # the prefix is the first label of the fully qualified service name.
8492
8855
  # The label must be 1-63 characters long, and comply with RFC1035. Specifically,
@@ -8520,8 +8883,8 @@ module Google
8520
8883
  # forwarding rules, this target must live in the same region as the forwarding
8521
8884
  # rule. For global forwarding rules, this target must be a global load balancing
8522
8885
  # 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.
8886
+ # object. For INTERNAL_SELF_MANAGED load balancing, only targetHttpProxy and
8887
+ # targetGrpcProxy are valid, not targetHttpsProxy.
8525
8888
  # Corresponds to the JSON property `target`
8526
8889
  # @return [String]
8527
8890
  attr_accessor :target
@@ -8556,6 +8919,7 @@ module Google
8556
8919
  @region = args[:region] if args.key?(:region)
8557
8920
  @self_link = args[:self_link] if args.key?(:self_link)
8558
8921
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
8922
+ @service_directory_registrations = args[:service_directory_registrations] if args.key?(:service_directory_registrations)
8559
8923
  @service_label = args[:service_label] if args.key?(:service_label)
8560
8924
  @service_name = args[:service_name] if args.key?(:service_name)
8561
8925
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
@@ -8823,6 +9187,33 @@ module Google
8823
9187
  end
8824
9188
  end
8825
9189
 
9190
+ # Describes the auto-registration of the Forwarding Rule to Service Directory.
9191
+ # The region and project of the Service Directory resource generated from this
9192
+ # registration will be the same as this Forwarding Rule.
9193
+ class ForwardingRuleServiceDirectoryRegistration
9194
+ include Google::Apis::Core::Hashable
9195
+
9196
+ # Service Directory namespace to register the forwarding rule under.
9197
+ # Corresponds to the JSON property `namespace`
9198
+ # @return [String]
9199
+ attr_accessor :namespace
9200
+
9201
+ # Service Directory service to register the forwarding rule under.
9202
+ # Corresponds to the JSON property `service`
9203
+ # @return [String]
9204
+ attr_accessor :service
9205
+
9206
+ def initialize(**args)
9207
+ update!(**args)
9208
+ end
9209
+
9210
+ # Update properties of this object
9211
+ def update!(**args)
9212
+ @namespace = args[:namespace] if args.key?(:namespace)
9213
+ @service = args[:service] if args.key?(:service)
9214
+ end
9215
+ end
9216
+
8826
9217
  #
8827
9218
  class ForwardingRulesScopedList
8828
9219
  include Google::Apis::Core::Hashable
@@ -10429,6 +10820,8 @@ module Google
10429
10820
  # port numbers in the format host:port. * matches any string of ([a-z0-9-.]*).
10430
10821
  # In that case, * must be the first character and must be followed in the
10431
10822
  # pattern by either - or ..
10823
+ # * based matching is not supported when the URL map is bound to target gRPC
10824
+ # proxy that has validateForProxyless field set to true.
10432
10825
  # Corresponds to the JSON property `hosts`
10433
10826
  # @return [Array<String>]
10434
10827
  attr_accessor :hosts
@@ -11269,7 +11662,11 @@ module Google
11269
11662
  # @return [Array<Google::Apis::ComputeAlpha::HttpFilterConfig>]
11270
11663
  attr_accessor :http_filter_metadata
11271
11664
 
11272
- #
11665
+ # The list of criteria for matching attributes of a request to this routeRule.
11666
+ # This list has OR semantics: the request matches this routeRule when any of the
11667
+ # matchRules are satisfied. However predicates within a given matchRule have AND
11668
+ # semantics. All predicates within a matchRule must match for the request to
11669
+ # match the rule.
11273
11670
  # Corresponds to the JSON property `matchRules`
11274
11671
  # @return [Array<Google::Apis::ComputeAlpha::HttpRouteRuleMatch>]
11275
11672
  attr_accessor :match_rules
@@ -11297,6 +11694,8 @@ module Google
11297
11694
  # routeAction cannot contain any weightedBackendServices.
11298
11695
  # Only one of urlRedirect, service or routeAction.weightedBackendService must be
11299
11696
  # set.
11697
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
11698
+ # within a routeRule's routeAction.
11300
11699
  # Corresponds to the JSON property `routeAction`
11301
11700
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
11302
11701
  attr_accessor :route_action
@@ -11366,13 +11765,14 @@ module Google
11366
11765
 
11367
11766
  # Opaque filter criteria used by Loadbalancer to restrict routing configuration
11368
11767
  # 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
11768
+ # Loadbalancer, xDS clients present node metadata. When there is a match, the
11370
11769
  # relevant routing configuration is made available to those proxies.
11371
11770
  # For each metadataFilter in this list, if its filterMatchCriteria is set to
11372
11771
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
11373
11772
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
11374
11773
  # all of its filterLabels must match with corresponding labels provided in the
11375
- # metadata.
11774
+ # metadata. If multiple metadataFilters are specified, all of them need to be
11775
+ # satisfied in order to be considered a match.
11376
11776
  # metadataFilters specified here will be applied after those specified in
11377
11777
  # ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to.
11378
11778
  # metadataFilters only applies to Loadbalancers that have their
@@ -11705,7 +12105,14 @@ module Google
11705
12105
  # @return [Fixnum]
11706
12106
  attr_accessor :id
11707
12107
 
11708
- # Represents a customer-supplied encryption key
12108
+ # Encrypts the image using a customer-supplied encryption key.
12109
+ # After you encrypt an image with a customer-supplied key, you must provide the
12110
+ # same key if you use the image later (e.g. to create a disk from the image).
12111
+ # Customer-supplied encryption keys do not protect access to metadata of the
12112
+ # disk.
12113
+ # If you do not provide an encryption key when creating the image, then the disk
12114
+ # will be encrypted using an automatically generated key and you do not need to
12115
+ # provide a key to use the image later.
11709
12116
  # Corresponds to the JSON property `imageEncryptionKey`
11710
12117
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11711
12118
  attr_accessor :image_encryption_key
@@ -11785,7 +12192,8 @@ module Google
11785
12192
  # @return [String]
11786
12193
  attr_accessor :source_disk
11787
12194
 
11788
- # Represents a customer-supplied encryption key
12195
+ # The customer-supplied encryption key of the source disk. Required if the
12196
+ # source disk is protected by a customer-supplied encryption key.
11789
12197
  # Corresponds to the JSON property `sourceDiskEncryptionKey`
11790
12198
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11791
12199
  attr_accessor :source_disk_encryption_key
@@ -11808,7 +12216,8 @@ module Google
11808
12216
  # @return [String]
11809
12217
  attr_accessor :source_image
11810
12218
 
11811
- # Represents a customer-supplied encryption key
12219
+ # The customer-supplied encryption key of the source image. Required if the
12220
+ # source image is protected by a customer-supplied encryption key.
11812
12221
  # Corresponds to the JSON property `sourceImageEncryptionKey`
11813
12222
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11814
12223
  attr_accessor :source_image_encryption_key
@@ -11832,7 +12241,8 @@ module Google
11832
12241
  # @return [String]
11833
12242
  attr_accessor :source_snapshot
11834
12243
 
11835
- # Represents a customer-supplied encryption key
12244
+ # The customer-supplied encryption key of the source snapshot. Required if the
12245
+ # source snapshot is protected by a customer-supplied encryption key.
11836
12246
  # Corresponds to the JSON property `sourceSnapshotEncryptionKey`
11837
12247
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
11838
12248
  attr_accessor :source_snapshot_encryption_key
@@ -12454,7 +12864,19 @@ module Google
12454
12864
  # @return [Fixnum]
12455
12865
  attr_accessor :id
12456
12866
 
12457
- # Represents a customer-supplied encryption key
12867
+ # Encrypts or decrypts data for an instance with a customer-supplied encryption
12868
+ # key.
12869
+ # If you are creating a new instance, this field encrypts the local SSD and in-
12870
+ # memory contents of the instance using a key that you provide.
12871
+ # If you are restarting an instance protected with a customer-supplied
12872
+ # encryption key, you must provide the correct key in order to successfully
12873
+ # restart the instance.
12874
+ # If you do not provide an encryption key when creating the instance, then the
12875
+ # local SSD and in-memory contents will be encrypted using an automatically
12876
+ # generated key and you do not need to provide a key to start the instance later.
12877
+ # Instance templates do not store customer-supplied encryption keys, so you
12878
+ # cannot use your own keys to encrypt local SSDs and in-memory content in a
12879
+ # managed instance group.
12458
12880
  # Corresponds to the JSON property `instanceEncryptionKey`
12459
12881
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
12460
12882
  attr_accessor :instance_encryption_key
@@ -12569,6 +12991,12 @@ module Google
12569
12991
  # @return [Array<String>]
12570
12992
  attr_accessor :resource_policies
12571
12993
 
12994
+ # [Output Only] Specifies whether this instance satisfies zone separation.
12995
+ # Corresponds to the JSON property `satisfiesPhysicalZoneSeparation`
12996
+ # @return [Boolean]
12997
+ attr_accessor :satisfies_physical_zone_separation
12998
+ alias_method :satisfies_physical_zone_separation?, :satisfies_physical_zone_separation
12999
+
12572
13000
  # Sets the scheduling options for an Instance. NextID: 12
12573
13001
  # Corresponds to the JSON property `scheduling`
12574
13002
  # @return [Google::Apis::ComputeAlpha::Scheduling]
@@ -12620,7 +13048,7 @@ module Google
12620
13048
  # @return [String]
12621
13049
  attr_accessor :source_machine_image
12622
13050
 
12623
- # Represents a customer-supplied encryption key
13051
+ # Source GMI encryption key when creating an instance from GMI.
12624
13052
  # Corresponds to the JSON property `sourceMachineImageEncryptionKey`
12625
13053
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
12626
13054
  attr_accessor :source_machine_image_encryption_key
@@ -12698,6 +13126,7 @@ module Google
12698
13126
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
12699
13127
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
12700
13128
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
13129
+ @satisfies_physical_zone_separation = args[:satisfies_physical_zone_separation] if args.key?(:satisfies_physical_zone_separation)
12701
13130
  @scheduling = args[:scheduling] if args.key?(:scheduling)
12702
13131
  @self_link = args[:self_link] if args.key?(:self_link)
12703
13132
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -15839,7 +16268,11 @@ module Google
15839
16268
  # @return [Array<Google::Apis::ComputeAlpha::CustomerEncryptionKeyProtectedDisk>]
15840
16269
  attr_accessor :disks
15841
16270
 
15842
- # Represents a customer-supplied encryption key
16271
+ # Decrypts data associated with an instance that is protected with a customer-
16272
+ # supplied encryption key.
16273
+ # If the instance you are starting is protected with a customer-supplied
16274
+ # encryption key, the correct key must be provided otherwise the instance resume
16275
+ # will not succeed.
15843
16276
  # Corresponds to the JSON property `instanceEncryptionKey`
15844
16277
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
15845
16278
  attr_accessor :instance_encryption_key
@@ -16098,7 +16531,11 @@ module Google
16098
16531
  # @return [Array<Google::Apis::ComputeAlpha::CustomerEncryptionKeyProtectedDisk>]
16099
16532
  attr_accessor :disks
16100
16533
 
16101
- # Represents a customer-supplied encryption key
16534
+ # Decrypts data associated with an instance that is protected with a customer-
16535
+ # supplied encryption key.
16536
+ # If the instance you are starting is protected with a customer-supplied
16537
+ # encryption key, the correct key must be provided otherwise the instance start
16538
+ # will not succeed.
16102
16539
  # Corresponds to the JSON property `instanceEncryptionKey`
16103
16540
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
16104
16541
  attr_accessor :instance_encryption_key
@@ -16444,6 +16881,11 @@ module Google
16444
16881
  # @return [String]
16445
16882
  attr_accessor :edge_availability_domain
16446
16883
 
16884
+ # Indicates the user-supplied encryption option of this interconnect attachment.
16885
+ # Corresponds to the JSON property `encryption`
16886
+ # @return [String]
16887
+ attr_accessor :encryption
16888
+
16447
16889
  # [Output Only] Google reference ID, to be used when raising support tickets
16448
16890
  # with Google or otherwise to debug backend connectivity issues. [Deprecated]
16449
16891
  # This field is not used.
@@ -16463,6 +16905,22 @@ module Google
16463
16905
  # @return [String]
16464
16906
  attr_accessor :interconnect
16465
16907
 
16908
+ # URL of addresses that have been reserved for the interconnect attachment, Used
16909
+ # only for interconnect attachment that has the encryption option as IPSEC. The
16910
+ # addresses must be RFC 1918 IP address ranges. When creating HA VPN gateway
16911
+ # over the interconnect attachment, if the attachment is configured to use an
16912
+ # RFC 1918 IP address, then the VPN gateway?s IP address will be allocated from
16913
+ # the IP address range specified here. For example, if the HA VPN gateway?s
16914
+ # interface 0 is paired to this interconnect attachment, then an RFC 1918 IP
16915
+ # address for the VPN gateway interface 0 will be allocated from the IP address
16916
+ # specified for this interconnect attachment. If this field is not specified for
16917
+ # interconnect attachment that has encryption option as IPSEC, later on when
16918
+ # creating HA VPN gateway on this interconnect attachment, the HA VPN gateway's
16919
+ # IP address will be allocated from regional external IP address pool.
16920
+ # Corresponds to the JSON property `ipsecInternalAddresses`
16921
+ # @return [Array<String>]
16922
+ attr_accessor :ipsec_internal_addresses
16923
+
16466
16924
  # [Output Only] Type of the resource. Always compute#interconnectAttachment for
16467
16925
  # interconnect attachments.
16468
16926
  # Corresponds to the JSON property `kind`
@@ -16621,9 +17079,11 @@ module Google
16621
17079
  @customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address)
16622
17080
  @description = args[:description] if args.key?(:description)
16623
17081
  @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
17082
+ @encryption = args[:encryption] if args.key?(:encryption)
16624
17083
  @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id)
16625
17084
  @id = args[:id] if args.key?(:id)
16626
17085
  @interconnect = args[:interconnect] if args.key?(:interconnect)
17086
+ @ipsec_internal_addresses = args[:ipsec_internal_addresses] if args.key?(:ipsec_internal_addresses)
16627
17087
  @kind = args[:kind] if args.key?(:kind)
16628
17088
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
16629
17089
  @labels = args[:labels] if args.key?(:labels)
@@ -18740,7 +19200,16 @@ module Google
18740
19200
  # @return [String]
18741
19201
  attr_accessor :kind
18742
19202
 
18743
- # Represents a customer-supplied encryption key
19203
+ # Encrypts the machine image using a customer-supplied encryption key.
19204
+ # After you encrypt a machine image using a customer-supplied key, you must
19205
+ # provide the same key if you use the machine image later. For example, you must
19206
+ # provide the encryption key when you create an instance from the encrypted
19207
+ # machine image in a future request.
19208
+ # Customer-supplied encryption keys do not protect access to metadata of the
19209
+ # machine image.
19210
+ # If you do not provide an encryption key when creating the machine image, then
19211
+ # the machine image will be encrypted using an automatically generated key and
19212
+ # you do not need to provide a key to use the machine image later.
18744
19213
  # Corresponds to the JSON property `machineImageEncryptionKey`
18745
19214
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
18746
19215
  attr_accessor :machine_image_encryption_key
@@ -20057,10 +20526,11 @@ module Google
20057
20526
  # Represents a collection of network endpoints.
20058
20527
  # A network endpoint group (NEG) defines how a set of endpoints should be
20059
20528
  # 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 ==)
20529
+ # information about using NEGs, see Setting up internet NEGs, Setting up zonal
20530
+ # NEGs, or Setting up serverless NEGs. (== resource_for `$api_version`.
20531
+ # networkEndpointGroups ==) (== resource_for `$api_version`.
20532
+ # globalNetworkEndpointGroups ==) (== resource_for `$api_version`.
20533
+ # regionNetworkEndpointGroups ==)
20064
20534
  class NetworkEndpointGroup
20065
20535
  include Google::Apis::Core::Hashable
20066
20536
 
@@ -20146,7 +20616,9 @@ module Google
20146
20616
  # @return [String]
20147
20617
  attr_accessor :network
20148
20618
 
20149
- # Type of network endpoints in this network endpoint group.
20619
+ # Type of network endpoints in this network endpoint group. Can be one of
20620
+ # GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT,
20621
+ # or SERVERLESS.
20150
20622
  # Corresponds to the JSON property `networkEndpointType`
20151
20623
  # @return [String]
20152
20624
  attr_accessor :network_endpoint_type
@@ -21505,7 +21977,9 @@ module Google
21505
21977
  attr_accessor :location_hint
21506
21978
 
21507
21979
  # Specifies how to handle instances when a node in the group undergoes
21508
- # maintenance.
21980
+ # maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or
21981
+ # MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information,
21982
+ # see Maintenance policies.
21509
21983
  # Corresponds to the JSON property `maintenancePolicy`
21510
21984
  # @return [String]
21511
21985
  attr_accessor :maintenance_policy
@@ -21721,7 +22195,8 @@ module Google
21721
22195
  # @return [Fixnum]
21722
22196
  attr_accessor :min_nodes
21723
22197
 
21724
- # The autoscaling mode.
22198
+ # The autoscaling mode. Set to one of: ON, OFF, or ONLY_SCALE_OUT. For more
22199
+ # information, see Autoscaler modes.
21725
22200
  # Corresponds to the JSON property `mode`
21726
22201
  # @return [String]
21727
22202
  attr_accessor :mode
@@ -21919,6 +22394,12 @@ module Google
21919
22394
  # @return [String]
21920
22395
  attr_accessor :node_type
21921
22396
 
22397
+ # [Output Only] Specifies whether this node satisfies zone separation.
22398
+ # Corresponds to the JSON property `satisfiesPhysicalZoneSeparation`
22399
+ # @return [Boolean]
22400
+ attr_accessor :satisfies_physical_zone_separation
22401
+ alias_method :satisfies_physical_zone_separation?, :satisfies_physical_zone_separation
22402
+
21922
22403
  # Binding properties for the physical server.
21923
22404
  # Corresponds to the JSON property `serverBinding`
21924
22405
  # @return [Google::Apis::ComputeAlpha::ServerBinding]
@@ -21946,6 +22427,7 @@ module Google
21946
22427
  @instances = args[:instances] if args.key?(:instances)
21947
22428
  @name = args[:name] if args.key?(:name)
21948
22429
  @node_type = args[:node_type] if args.key?(:node_type)
22430
+ @satisfies_physical_zone_separation = args[:satisfies_physical_zone_separation] if args.key?(:satisfies_physical_zone_separation)
21949
22431
  @server_binding = args[:server_binding] if args.key?(:server_binding)
21950
22432
  @server_id = args[:server_id] if args.key?(:server_id)
21951
22433
  @status = args[:status] if args.key?(:status)
@@ -24899,6 +25381,8 @@ module Google
24899
25381
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
24900
25382
  # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
24901
25383
  # within a pathMatcher's defaultRouteAction.
25384
+ # Not supported when the backend service is referenced by a URL map that is
25385
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
24902
25386
  # Corresponds to the JSON property `defaultRouteAction`
24903
25387
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
24904
25388
  attr_accessor :default_route_action
@@ -24921,6 +25405,8 @@ module Google
24921
25405
  # the specified resource default_service:
24922
25406
  # - compute.backendBuckets.use
24923
25407
  # - compute.backendServices.use
25408
+ # pathMatchers[].defaultService is the only option available when the URL map is
25409
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
24924
25410
  # Corresponds to the JSON property `defaultService`
24925
25411
  # @return [String]
24926
25412
  attr_accessor :default_service
@@ -24954,6 +25440,8 @@ module Google
24954
25440
  # For example: a pathRule with a path /a/b/c/* will match before /a/b/*
24955
25441
  # irrespective of the order in which those paths appear in this list.
24956
25442
  # Within a given pathMatcher, only one of pathRules or routeRules must be set.
25443
+ # Not supported when the backend service is referenced by a URL map that is
25444
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
24957
25445
  # Corresponds to the JSON property `pathRules`
24958
25446
  # @return [Array<Google::Apis::ComputeAlpha::PathRule>]
24959
25447
  attr_accessor :path_rules
@@ -24962,6 +25450,8 @@ module Google
24962
25450
  # route matching and routing actions are desired. routeRules are evaluated in
24963
25451
  # order of priority, from the lowest to highest number.
24964
25452
  # Within a given pathMatcher, you can set only one of pathRules or routeRules.
25453
+ # Not supported when the backend service is referenced by a URL map that is
25454
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
24965
25455
  # Corresponds to the JSON property `routeRules`
24966
25456
  # @return [Array<Google::Apis::ComputeAlpha::HttpRouteRule>]
24967
25457
  attr_accessor :route_rules
@@ -25549,7 +26039,8 @@ module Google
25549
26039
  attr_accessor :usage_export_location
25550
26040
 
25551
26041
  # [Output Only] The role this project has in a shared VPC configuration.
25552
- # Currently only HOST projects are differentiated.
26042
+ # Currently, only projects with the host role, which is specified by the value
26043
+ # HOST, are differentiated.
25553
26044
  # Corresponds to the JSON property `xpnProjectStatus`
25554
26045
  # @return [String]
25555
26046
  attr_accessor :xpn_project_status
@@ -25942,20 +26433,30 @@ module Google
25942
26433
  class PublicAdvertisedPrefixPublicDelegatedPrefix
25943
26434
  include Google::Apis::Core::Hashable
25944
26435
 
26436
+ # The IP address range of the public delegated prefix
26437
+ # Corresponds to the JSON property `ipRange`
26438
+ # @return [String]
26439
+ attr_accessor :ip_range
26440
+
25945
26441
  # The name of the public delegated prefix
25946
26442
  # Corresponds to the JSON property `name`
25947
26443
  # @return [String]
25948
26444
  attr_accessor :name
25949
26445
 
26446
+ # The project number of the public delegated prefix
26447
+ # Corresponds to the JSON property `project`
26448
+ # @return [String]
26449
+ attr_accessor :project
26450
+
25950
26451
  # The region of the public delegated prefix if it is regional. If absent, the
25951
26452
  # prefix is global.
25952
26453
  # Corresponds to the JSON property `region`
25953
26454
  # @return [String]
25954
26455
  attr_accessor :region
25955
26456
 
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.
26457
+ # The status of the public delegated prefix. Possible values are: INITIALIZING:
26458
+ # The public delegated prefix is being initialized and addresses cannot be
26459
+ # created yet. ANNOUNCED: The public delegated prefix is active.
25959
26460
  # Corresponds to the JSON property `status`
25960
26461
  # @return [String]
25961
26462
  attr_accessor :status
@@ -25966,7 +26467,9 @@ module Google
25966
26467
 
25967
26468
  # Update properties of this object
25968
26469
  def update!(**args)
26470
+ @ip_range = args[:ip_range] if args.key?(:ip_range)
25969
26471
  @name = args[:name] if args.key?(:name)
26472
+ @project = args[:project] if args.key?(:project)
25970
26473
  @region = args[:region] if args.key?(:region)
25971
26474
  @status = args[:status] if args.key?(:status)
25972
26475
  end
@@ -26648,6 +27151,12 @@ module Google
26648
27151
  # @return [String]
26649
27152
  attr_accessor :status
26650
27153
 
27154
+ # [Output Only] Specifies whether this region supports physical zone separation.
27155
+ # Corresponds to the JSON property `supportsPhysicalZoneSeparation`
27156
+ # @return [Boolean]
27157
+ attr_accessor :supports_physical_zone_separation
27158
+ alias_method :supports_physical_zone_separation?, :supports_physical_zone_separation
27159
+
26651
27160
  # [Output Only] A list of zones available in this region, in the form of
26652
27161
  # resource URLs.
26653
27162
  # Corresponds to the JSON property `zones`
@@ -26670,6 +27179,7 @@ module Google
26670
27179
  @self_link = args[:self_link] if args.key?(:self_link)
26671
27180
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
26672
27181
  @status = args[:status] if args.key?(:status)
27182
+ @supports_physical_zone_separation = args[:supports_physical_zone_separation] if args.key?(:supports_physical_zone_separation)
26673
27183
  @zones = args[:zones] if args.key?(:zones)
26674
27184
  end
26675
27185
  end
@@ -27301,7 +27811,7 @@ module Google
27301
27811
  end
27302
27812
  end
27303
27813
 
27304
- # InstanceGroupManagers.applyUpdatesToInstances
27814
+ # RegionInstanceGroupManagers.applyUpdatesToInstances
27305
27815
  class RegionInstanceGroupManagersApplyUpdatesRequest
27306
27816
  include Google::Apis::Core::Hashable
27307
27817
 
@@ -28066,6 +28576,10 @@ module Google
28066
28576
  # Traffic Director.
28067
28577
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
28068
28578
  # regionUrlMaps are used by internal HTTP(S) load balancers.
28579
+ # For a list of supported URL map features by load balancer type, see the Load
28580
+ # balancing features: Routing and traffic management table.
28581
+ # For a list of supported URL map features for Traffic Director, see the
28582
+ # Traffic Director features: Routing and traffic management table.
28069
28583
  # This resource defines mappings from host names and URL paths to either a
28070
28584
  # backend service or a backend bucket.
28071
28585
  # To use the global urlMaps resource, the backend service must have a
@@ -29107,12 +29621,19 @@ module Google
29107
29621
  class ResourcePolicyInstanceSchedulePolicy
29108
29622
  include Google::Apis::Core::Hashable
29109
29623
 
29110
- # Schedule for the instance operation.
29624
+ # Specifies the time zone to be used in interpreting Schedule.schedule. The
29625
+ # value of this field must be a time zone name from the tz database: http://en.
29626
+ # wikipedia.org/wiki/Tz_database.
29627
+ # Corresponds to the JSON property `timeZone`
29628
+ # @return [String]
29629
+ attr_accessor :time_zone
29630
+
29631
+ # Schedule for an instance operation.
29111
29632
  # Corresponds to the JSON property `vmStartSchedule`
29112
29633
  # @return [Google::Apis::ComputeAlpha::ResourcePolicyInstanceSchedulePolicySchedule]
29113
29634
  attr_accessor :vm_start_schedule
29114
29635
 
29115
- # Schedule for the instance operation.
29636
+ # Schedule for an instance operation.
29116
29637
  # Corresponds to the JSON property `vmStopSchedule`
29117
29638
  # @return [Google::Apis::ComputeAlpha::ResourcePolicyInstanceSchedulePolicySchedule]
29118
29639
  attr_accessor :vm_stop_schedule
@@ -29123,12 +29644,13 @@ module Google
29123
29644
 
29124
29645
  # Update properties of this object
29125
29646
  def update!(**args)
29647
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
29126
29648
  @vm_start_schedule = args[:vm_start_schedule] if args.key?(:vm_start_schedule)
29127
29649
  @vm_stop_schedule = args[:vm_stop_schedule] if args.key?(:vm_stop_schedule)
29128
29650
  end
29129
29651
  end
29130
29652
 
29131
- # Schedule for the instance operation.
29653
+ # Schedule for an instance operation.
29132
29654
  class ResourcePolicyInstanceSchedulePolicySchedule
29133
29655
  include Google::Apis::Core::Hashable
29134
29656
 
@@ -29137,13 +29659,6 @@ module Google
29137
29659
  # @return [String]
29138
29660
  attr_accessor :schedule
29139
29661
 
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
29662
  def initialize(**args)
29148
29663
  update!(**args)
29149
29664
  end
@@ -29151,7 +29666,6 @@ module Google
29151
29666
  # Update properties of this object
29152
29667
  def update!(**args)
29153
29668
  @schedule = args[:schedule] if args.key?(:schedule)
29154
- @time_zone = args[:time_zone] if args.key?(:time_zone)
29155
29669
  end
29156
29670
  end
29157
29671
 
@@ -30778,12 +31292,12 @@ module Google
30778
31292
  # @return [String]
30779
31293
  attr_accessor :match
30780
31294
 
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`
31295
+ # An integer uniquely identifying a rule in the list. The rule number must be a
31296
+ # positive value between 0 and 65000, and must be unique among rules within a
31297
+ # NAT.
31298
+ # Corresponds to the JSON property `ruleNumber`
30785
31299
  # @return [Fixnum]
30786
- attr_accessor :priority
31300
+ attr_accessor :rule_number
30787
31301
 
30788
31302
  def initialize(**args)
30789
31303
  update!(**args)
@@ -30794,7 +31308,7 @@ module Google
30794
31308
  @action = args[:action] if args.key?(:action)
30795
31309
  @description = args[:description] if args.key?(:description)
30796
31310
  @match = args[:match] if args.key?(:match)
30797
- @priority = args[:priority] if args.key?(:priority)
31311
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
30798
31312
  end
30799
31313
  end
30800
31314
 
@@ -31084,10 +31598,10 @@ module Google
31084
31598
  # @return [Fixnum]
31085
31599
  attr_accessor :num_vm_endpoints_with_nat_mappings
31086
31600
 
31087
- # Priority of the rule.
31088
- # Corresponds to the JSON property `priority`
31601
+ # Rule number of the rule.
31602
+ # Corresponds to the JSON property `ruleNumber`
31089
31603
  # @return [Fixnum]
31090
- attr_accessor :priority
31604
+ attr_accessor :rule_number
31091
31605
 
31092
31606
  def initialize(**args)
31093
31607
  update!(**args)
@@ -31099,7 +31613,7 @@ module Google
31099
31613
  @drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
31100
31614
  @min_extra_ips_needed = args[:min_extra_ips_needed] if args.key?(:min_extra_ips_needed)
31101
31615
  @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)
31616
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
31103
31617
  end
31104
31618
  end
31105
31619
 
@@ -31388,7 +31902,7 @@ module Google
31388
31902
  # @return [String]
31389
31903
  attr_accessor :device_name
31390
31904
 
31391
- # Represents a customer-supplied encryption key
31905
+ # The encryption key for the disk.
31392
31906
  # Corresponds to the JSON property `diskEncryptionKey`
31393
31907
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
31394
31908
  attr_accessor :disk_encryption_key
@@ -31553,18 +32067,6 @@ module Google
31553
32067
  # @return [String]
31554
32068
  attr_accessor :location_hint
31555
32069
 
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
32070
  # Specifies the number of hours after instance creation where the instance won't
31569
32071
  # be scheduled for maintenance.
31570
32072
  # Corresponds to the JSON property `maintenanceFreezeDurationHours`
@@ -31609,7 +32111,6 @@ module Google
31609
32111
  @automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
31610
32112
  @latency_tolerant = args[:latency_tolerant] if args.key?(:latency_tolerant)
31611
32113
  @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
32114
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
31614
32115
  @min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
31615
32116
  @node_affinities = args[:node_affinities] if args.key?(:node_affinities)
@@ -32262,7 +32763,7 @@ module Google
32262
32763
  # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfigLayer4Config>]
32263
32764
  attr_accessor :layer4_configs
32264
32765
 
32265
- # CIDR IP address range.
32766
+ # CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
32266
32767
  # Corresponds to the JSON property `srcIpRanges`
32267
32768
  # @return [Array<String>]
32268
32769
  attr_accessor :src_ip_ranges
@@ -32348,7 +32849,7 @@ module Google
32348
32849
  class SecurityPolicyRuleRateLimitOptions
32349
32850
  include Google::Apis::Core::Hashable
32350
32851
 
32351
- # Can only be specifed if the action for the rule is "rate_based_blacklist" If
32852
+ # Can only be specified if the action for the rule is "rate_based_blacklist" If
32352
32853
  # specified, determines the time (in seconds) the traffic will continue to be
32353
32854
  # blocked by the rate limit after the rate falls below the threshold. The
32354
32855
  # default value is 0 seconds.
@@ -32421,6 +32922,7 @@ module Google
32421
32922
  # clientTlsPolicy only applies to a global BackendService with the
32422
32923
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
32423
32924
  # If left blank, communications are not encrypted.
32925
+ # Note: This field currently has no impact.
32424
32926
  # Corresponds to the JSON property `clientTlsPolicy`
32425
32927
  # @return [String]
32426
32928
  attr_accessor :client_tls_policy
@@ -32443,6 +32945,7 @@ module Google
32443
32945
  # Only applies to a global BackendService with loadBalancingScheme set to
32444
32946
  # INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached
32445
32947
  # clientTlsPolicy with clientCertificate (mTLS mode).
32948
+ # Note: This field currently has no impact.
32446
32949
  # Corresponds to the JSON property `subjectAltNames`
32447
32950
  # @return [Array<String>]
32448
32951
  attr_accessor :subject_alt_names
@@ -33193,6 +33696,12 @@ module Google
33193
33696
  # @return [String]
33194
33697
  attr_accessor :name
33195
33698
 
33699
+ # [Output Only] Specifies whether this snapshot satisfies zone separation.
33700
+ # Corresponds to the JSON property `satisfiesPhysicalZoneSeparation`
33701
+ # @return [Boolean]
33702
+ attr_accessor :satisfies_physical_zone_separation
33703
+ alias_method :satisfies_physical_zone_separation?, :satisfies_physical_zone_separation
33704
+
33196
33705
  # [Output Only] Server-defined URL for the resource.
33197
33706
  # Corresponds to the JSON property `selfLink`
33198
33707
  # @return [String]
@@ -33203,7 +33712,16 @@ module Google
33203
33712
  # @return [String]
33204
33713
  attr_accessor :self_link_with_id
33205
33714
 
33206
- # Represents a customer-supplied encryption key
33715
+ # Encrypts the snapshot using a customer-supplied encryption key.
33716
+ # After you encrypt a snapshot using a customer-supplied key, you must provide
33717
+ # the same key if you use the snapshot later. For example, you must provide the
33718
+ # encryption key when you create a disk from the encrypted snapshot in a future
33719
+ # request.
33720
+ # Customer-supplied encryption keys do not protect access to metadata of the
33721
+ # snapshot.
33722
+ # If you do not provide an encryption key when creating the snapshot, then the
33723
+ # snapshot will be encrypted using an automatically generated key and you do not
33724
+ # need to provide a key to use the snapshot later.
33207
33725
  # Corresponds to the JSON property `snapshotEncryptionKey`
33208
33726
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
33209
33727
  attr_accessor :snapshot_encryption_key
@@ -33213,7 +33731,8 @@ module Google
33213
33731
  # @return [String]
33214
33732
  attr_accessor :source_disk
33215
33733
 
33216
- # Represents a customer-supplied encryption key
33734
+ # The customer-supplied encryption key of the source disk. Required if the
33735
+ # source disk is protected by a customer-supplied encryption key.
33217
33736
  # Corresponds to the JSON property `sourceDiskEncryptionKey`
33218
33737
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
33219
33738
  attr_accessor :source_disk_encryption_key
@@ -33271,6 +33790,7 @@ module Google
33271
33790
  @license_codes = args[:license_codes] if args.key?(:license_codes)
33272
33791
  @licenses = args[:licenses] if args.key?(:licenses)
33273
33792
  @name = args[:name] if args.key?(:name)
33793
+ @satisfies_physical_zone_separation = args[:satisfies_physical_zone_separation] if args.key?(:satisfies_physical_zone_separation)
33274
33794
  @self_link = args[:self_link] if args.key?(:self_link)
33275
33795
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
33276
33796
  @snapshot_encryption_key = args[:snapshot_encryption_key] if args.key?(:snapshot_encryption_key)
@@ -33405,7 +33925,8 @@ module Google
33405
33925
  class SourceDiskEncryptionKey
33406
33926
  include Google::Apis::Core::Hashable
33407
33927
 
33408
- # Represents a customer-supplied encryption key
33928
+ # The customer-supplied encryption key of the source disk. Required if the
33929
+ # source disk is protected by a customer-supplied encryption key.
33409
33930
  # Corresponds to the JSON property `diskEncryptionKey`
33410
33931
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
33411
33932
  attr_accessor :disk_encryption_key
@@ -35322,7 +35843,7 @@ module Google
35322
35843
  # A target gRPC proxy is a component of load balancers intended for load
35323
35844
  # balancing gRPC traffic. Global forwarding rules reference a target gRPC proxy.
35324
35845
  # The Target gRPC Proxy references a URL map which specifies how traffic routes
35325
- # to gRPC backend services.
35846
+ # to gRPC backend services. (== resource_for `$api_version`.targetGrpcProxies ==)
35326
35847
  class TargetGrpcProxy
35327
35848
  include Google::Apis::Core::Hashable
35328
35849
 
@@ -35389,12 +35910,11 @@ module Google
35389
35910
  # If true, indicates that the BackendServices referenced by the urlMap may be
35390
35911
  # accessed by gRPC applications without using a sidecar proxy. This will enable
35391
35912
  # 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
35913
+ # unsupported features. A gRPC application must use "xds:///" scheme in the
35914
+ # target URI of the service it is connecting to. If false, indicates that the
35915
+ # BackendServices referenced by the urlMap will be accessed by gRPC applications
35916
+ # via a sidecar proxy. In this case, a gRPC application must not use "xds:///"
35917
+ # scheme in the target URI of the service it is connecting to
35398
35918
  # Corresponds to the JSON property `validateForProxyless`
35399
35919
  # @return [Boolean]
35400
35920
  attr_accessor :validate_for_proxyless
@@ -36162,6 +36682,7 @@ module Google
36162
36682
  # authorizationPolicy only applies to a global TargetHttpsProxy attached to
36163
36683
  # globalForwardingRules with the loadBalancingScheme set to
36164
36684
  # INTERNAL_SELF_MANAGED.
36685
+ # Note: This field currently has no impact.
36165
36686
  # Corresponds to the JSON property `authorizationPolicy`
36166
36687
  # @return [String]
36167
36688
  attr_accessor :authorization_policy
@@ -36249,6 +36770,7 @@ module Google
36249
36770
  # globalForwardingRules with the loadBalancingScheme set to
36250
36771
  # INTERNAL_SELF_MANAGED.
36251
36772
  # If left blank, communications are not encrypted.
36773
+ # Note: This field currently has no impact.
36252
36774
  # Corresponds to the JSON property `serverTlsPolicy`
36253
36775
  # @return [String]
36254
36776
  attr_accessor :server_tls_policy
@@ -37032,7 +37554,7 @@ module Google
37032
37554
 
37033
37555
  # The URL of the HttpHealthCheck resource. A member instance in this pool is
37034
37556
  # 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
37557
+ # all member instances will be considered healthy at all times. Only legacy
37036
37558
  # HttpHealthChecks are supported. Only one health check may be specified.
37037
37559
  # Corresponds to the JSON property `healthChecks`
37038
37560
  # @return [Array<String>]
@@ -38797,13 +39319,13 @@ module Google
38797
39319
  include Google::Apis::Core::Hashable
38798
39320
 
38799
39321
  # [Output Only] The date when the maintenance will take place. This value is in
38800
- # RFC3339 text format.
39322
+ # RFC3339 text format. DEPRECATED: Use start_time_window instead.
38801
39323
  # Corresponds to the JSON property `date`
38802
39324
  # @return [String]
38803
39325
  attr_accessor :date
38804
39326
 
38805
39327
  # [Output Only] The time when the maintenance will take place. This value is in
38806
- # RFC3339 text format.
39328
+ # RFC3339 text format. DEPRECATED: Use start_time_window instead.
38807
39329
  # Corresponds to the JSON property `time`
38808
39330
  # @return [String]
38809
39331
  attr_accessor :time
@@ -38833,6 +39355,10 @@ module Google
38833
39355
  # Traffic Director.
38834
39356
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
38835
39357
  # regionUrlMaps are used by internal HTTP(S) load balancers.
39358
+ # For a list of supported URL map features by load balancer type, see the Load
39359
+ # balancing features: Routing and traffic management table.
39360
+ # For a list of supported URL map features for Traffic Director, see the
39361
+ # Traffic Director features: Routing and traffic management table.
38836
39362
  # This resource defines mappings from host names and URL paths to either a
38837
39363
  # backend service or a backend bucket.
38838
39364
  # To use the global urlMaps resource, the backend service must have a
@@ -38856,6 +39382,9 @@ module Google
38856
39382
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
38857
39383
  # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
38858
39384
  # within defaultRouteAction.
39385
+ # defaultRouteAction has no effect when the backend service is referenced by a
39386
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
39387
+ # set to true.
38859
39388
  # Corresponds to the JSON property `defaultRouteAction`
38860
39389
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
38861
39390
  attr_accessor :default_route_action
@@ -38869,6 +39398,9 @@ module Google
38869
39398
  # specified.
38870
39399
  # Only one of defaultService, defaultUrlRedirect or defaultRouteAction.
38871
39400
  # weightedBackendService must be set.
39401
+ # defaultService has no effect when the backend service is referenced by a URL
39402
+ # map that is bound to target gRPC proxy that has validateForProxyless field set
39403
+ # to true.
38872
39404
  # Corresponds to the JSON property `defaultService`
38873
39405
  # @return [String]
38874
39406
  attr_accessor :default_service
@@ -38947,6 +39479,8 @@ module Google
38947
39479
  # The list of expected URL mapping tests. Request to update this UrlMap will
38948
39480
  # succeed only if all of the test cases pass. You can specify a maximum of 100
38949
39481
  # tests per UrlMap.
39482
+ # Not supported when the backend service is referenced by a URL map that is
39483
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
38950
39484
  # Corresponds to the JSON property `tests`
38951
39485
  # @return [Array<Google::Apis::ComputeAlpha::UrlMapTest>]
38952
39486
  attr_accessor :tests
@@ -39429,6 +39963,10 @@ module Google
39429
39963
  # Traffic Director.
39430
39964
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
39431
39965
  # regionUrlMaps are used by internal HTTP(S) load balancers.
39966
+ # For a list of supported URL map features by load balancer type, see the Load
39967
+ # balancing features: Routing and traffic management table.
39968
+ # For a list of supported URL map features for Traffic Director, see the
39969
+ # Traffic Director features: Routing and traffic management table.
39432
39970
  # This resource defines mappings from host names and URL paths to either a
39433
39971
  # backend service or a backend bucket.
39434
39972
  # To use the global urlMaps resource, the backend service must have a
@@ -39833,10 +40371,10 @@ module Google
39833
40371
  # @return [Fixnum]
39834
40372
  attr_accessor :num_total_nat_ports
39835
40373
 
39836
- # Priority of the NAT Rule.
39837
- # Corresponds to the JSON property `priority`
40374
+ # Rule number of the NAT Rule.
40375
+ # Corresponds to the JSON property `ruleNumber`
39838
40376
  # @return [Fixnum]
39839
- attr_accessor :priority
40377
+ attr_accessor :rule_number
39840
40378
 
39841
40379
  def initialize(**args)
39842
40380
  update!(**args)
@@ -39848,7 +40386,7 @@ module Google
39848
40386
  @nat_ip_port_ranges = args[:nat_ip_port_ranges] if args.key?(:nat_ip_port_ranges)
39849
40387
  @num_total_drain_nat_ports = args[:num_total_drain_nat_ports] if args.key?(:num_total_drain_nat_ports)
39850
40388
  @num_total_nat_ports = args[:num_total_nat_ports] if args.key?(:num_total_nat_ports)
39851
- @priority = args[:priority] if args.key?(:priority)
40389
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
39852
40390
  end
39853
40391
  end
39854
40392
 
@@ -40445,6 +40983,14 @@ module Google
40445
40983
  # @return [Fixnum]
40446
40984
  attr_accessor :id
40447
40985
 
40986
+ # URL of the interconnect attachment resource. When the value of this field is
40987
+ # present, the VPN Gateway will be used for IPsec over Interconnect; all Egress
40988
+ # or Ingress traffic for this VPN Gateway interface will go through the
40989
+ # specified interconnect attachment resource.
40990
+ # Corresponds to the JSON property `interconnectAttachment`
40991
+ # @return [String]
40992
+ attr_accessor :interconnect_attachment
40993
+
40448
40994
  # [Output Only] The external IP address for this VPN gateway interface.
40449
40995
  # Corresponds to the JSON property `ipAddress`
40450
40996
  # @return [String]
@@ -40457,6 +41003,7 @@ module Google
40457
41003
  # Update properties of this object
40458
41004
  def update!(**args)
40459
41005
  @id = args[:id] if args.key?(:id)
41006
+ @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment)
40460
41007
  @ip_address = args[:ip_address] if args.key?(:ip_address)
40461
41008
  end
40462
41009
  end
@@ -40572,7 +41119,7 @@ module Google
40572
41119
  end
40573
41120
 
40574
41121
  # Represents a Cloud VPN Tunnel resource.
40575
- # For more information about VPN, read the the Cloud VPN Overview. (==
41122
+ # For more information about VPN, read the the Cloud VPN Overview. (==
40576
41123
  # resource_for `$api_version`.vpnTunnels ==)
40577
41124
  class VpnTunnel
40578
41125
  include Google::Apis::Core::Hashable
@@ -41421,6 +41968,12 @@ module Google
41421
41968
  # @return [String]
41422
41969
  attr_accessor :status
41423
41970
 
41971
+ # [Output Only] Specifies whether this zone supports physical zone separation.
41972
+ # Corresponds to the JSON property `supportsPhysicalZoneSeparation`
41973
+ # @return [Boolean]
41974
+ attr_accessor :supports_physical_zone_separation
41975
+ alias_method :supports_physical_zone_separation?, :supports_physical_zone_separation
41976
+
41424
41977
  def initialize(**args)
41425
41978
  update!(**args)
41426
41979
  end
@@ -41437,6 +41990,7 @@ module Google
41437
41990
  @region = args[:region] if args.key?(:region)
41438
41991
  @self_link = args[:self_link] if args.key?(:self_link)
41439
41992
  @status = args[:status] if args.key?(:status)
41993
+ @supports_physical_zone_separation = args[:supports_physical_zone_separation] if args.key?(:supports_physical_zone_separation)
41440
41994
  end
41441
41995
  end
41442
41996