google-api-client 0.48.0 → 0.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (702) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +0 -14
  3. data/CHANGELOG.md +408 -0
  4. data/OVERVIEW.md +36 -27
  5. data/generated/google/apis/accessapproval_v1.rb +1 -1
  6. data/generated/google/apis/accessapproval_v1/service.rb +12 -9
  7. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  8. data/generated/google/apis/accesscontextmanager_v1/classes.rb +326 -0
  9. data/generated/google/apis/accesscontextmanager_v1/representations.rb +139 -0
  10. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  11. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +50 -6
  12. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +18 -0
  13. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +3 -1
  14. data/generated/google/apis/admin_datatransfer_v1.rb +2 -2
  15. data/generated/google/apis/admin_datatransfer_v1/classes.rb +6 -16
  16. data/generated/google/apis/admin_datatransfer_v1/service.rb +3 -3
  17. data/generated/google/apis/admin_directory_v1.rb +2 -2
  18. data/generated/google/apis/admin_directory_v1/classes.rb +453 -321
  19. data/generated/google/apis/admin_directory_v1/representations.rb +15 -15
  20. data/generated/google/apis/admin_directory_v1/service.rb +325 -185
  21. data/generated/google/apis/admin_reports_v1.rb +2 -2
  22. data/generated/google/apis/admin_reports_v1/classes.rb +48 -43
  23. data/generated/google/apis/admin_reports_v1/service.rb +198 -179
  24. data/generated/google/apis/admob_v1.rb +4 -1
  25. data/generated/google/apis/admob_v1/service.rb +4 -0
  26. data/{lib/google/apis/generator/templates/representations.rb.tmpl → generated/google/apis/admob_v1beta.rb} +18 -12
  27. data/generated/google/apis/admob_v1beta/classes.rb +1035 -0
  28. data/generated/google/apis/admob_v1beta/representations.rb +472 -0
  29. data/generated/google/apis/admob_v1beta/service.rb +279 -0
  30. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  31. data/generated/google/apis/analytics_v3/service.rb +1 -1
  32. data/generated/google/apis/analyticsadmin_v1alpha.rb +2 -2
  33. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +19 -10
  34. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +1 -0
  35. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +45 -25
  36. data/generated/google/apis/analyticsdata_v1alpha.rb +2 -2
  37. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +243 -63
  38. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +52 -14
  39. data/generated/google/apis/analyticsdata_v1alpha/service.rb +43 -34
  40. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  41. data/generated/google/apis/androidenterprise_v1/classes.rb +6 -0
  42. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  43. data/generated/google/apis/androidenterprise_v1/service.rb +4 -1
  44. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  45. data/generated/google/apis/androidmanagement_v1/classes.rb +69 -4
  46. data/generated/google/apis/androidmanagement_v1/representations.rb +19 -0
  47. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  48. data/generated/google/apis/androidpublisher_v3/service.rb +4 -4
  49. data/{lib/google/apis/core/logging.rb → generated/google/apis/apigateway_v1.rb} +14 -10
  50. data/generated/google/apis/apigateway_v1/classes.rb +1116 -0
  51. data/generated/google/apis/apigateway_v1/representations.rb +442 -0
  52. data/generated/google/apis/apigateway_v1/service.rb +1172 -0
  53. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  54. data/generated/google/apis/apigateway_v1beta/classes.rb +24 -16
  55. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -0
  56. data/generated/google/apis/apigee_v1.rb +1 -1
  57. data/generated/google/apis/apigee_v1/classes.rb +457 -106
  58. data/generated/google/apis/apigee_v1/representations.rb +150 -0
  59. data/generated/google/apis/apigee_v1/service.rb +973 -155
  60. data/generated/google/apis/appengine_v1.rb +1 -1
  61. data/generated/google/apis/appengine_v1/classes.rb +7 -0
  62. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  63. data/generated/google/apis/appengine_v1beta.rb +1 -1
  64. data/generated/google/apis/appengine_v1beta/classes.rb +8 -0
  65. data/generated/google/apis/appengine_v1beta/representations.rb +1 -0
  66. data/generated/google/apis/area120tables_v1alpha1.rb +4 -1
  67. data/generated/google/apis/area120tables_v1alpha1/classes.rb +58 -0
  68. data/generated/google/apis/area120tables_v1alpha1/representations.rb +31 -0
  69. data/generated/google/apis/area120tables_v1alpha1/service.rb +67 -0
  70. data/generated/google/apis/artifactregistry_v1.rb +38 -0
  71. data/generated/google/apis/{displayvideo_v1beta2 → artifactregistry_v1}/classes.rb +104 -8
  72. data/generated/google/apis/{displayvideo_v1beta → artifactregistry_v1}/representations.rb +49 -5
  73. data/generated/google/apis/artifactregistry_v1/service.rb +210 -0
  74. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  75. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +0 -127
  76. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +0 -63
  77. data/generated/google/apis/artifactregistry_v1beta1/service.rb +4 -1
  78. data/generated/google/apis/artifactregistry_v1beta2.rb +38 -0
  79. data/generated/google/apis/artifactregistry_v1beta2/classes.rb +917 -0
  80. data/generated/google/apis/artifactregistry_v1beta2/representations.rb +381 -0
  81. data/generated/google/apis/artifactregistry_v1beta2/service.rb +947 -0
  82. data/generated/google/apis/{assuredworkloads_v1beta1.rb → assuredworkloads_v1.rb} +6 -6
  83. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/classes.rb +69 -137
  84. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/representations.rb +29 -87
  85. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/service.rb +46 -46
  86. data/generated/google/apis/bigquery_v2.rb +1 -1
  87. data/generated/google/apis/bigquery_v2/classes.rb +6 -0
  88. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  89. data/generated/google/apis/bigquery_v2/service.rb +1 -1
  90. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  91. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -0
  92. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +1 -0
  93. data/generated/google/apis/billingbudgets_v1.rb +1 -1
  94. data/generated/google/apis/billingbudgets_v1/classes.rb +6 -6
  95. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  96. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +6 -6
  97. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  98. data/generated/google/apis/binaryauthorization_v1/classes.rb +0 -7
  99. data/generated/google/apis/binaryauthorization_v1/representations.rb +0 -1
  100. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  101. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +2 -8
  102. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +0 -1
  103. data/generated/google/apis/calendar_v3.rb +1 -1
  104. data/generated/google/apis/calendar_v3/classes.rb +2 -2
  105. data/generated/google/apis/chat_v1.rb +1 -1
  106. data/generated/google/apis/chat_v1/classes.rb +1 -2
  107. data/generated/google/apis/chat_v1/service.rb +308 -0
  108. data/generated/google/apis/cloudasset_v1.rb +1 -1
  109. data/generated/google/apis/cloudasset_v1/classes.rb +757 -3
  110. data/generated/google/apis/cloudasset_v1/representations.rb +309 -0
  111. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  112. data/generated/google/apis/cloudasset_v1beta1/classes.rb +326 -0
  113. data/generated/google/apis/cloudasset_v1beta1/representations.rb +139 -0
  114. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  115. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  116. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  117. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +326 -0
  118. data/generated/google/apis/cloudasset_v1p5beta1/representations.rb +139 -0
  119. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  120. data/generated/google/apis/cloudbuild_v1/classes.rb +4 -4
  121. data/generated/google/apis/cloudbuild_v1/service.rb +1 -1
  122. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  123. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +3 -3
  124. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  125. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +3 -3
  126. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  127. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  128. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  129. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  130. data/generated/google/apis/cloudidentity_v1/classes.rb +240 -0
  131. data/generated/google/apis/cloudidentity_v1/representations.rb +125 -0
  132. data/generated/google/apis/cloudidentity_v1/service.rb +217 -9
  133. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  134. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1 -1
  135. data/generated/google/apis/cloudidentity_v1beta1/service.rb +45 -23
  136. data/generated/google/apis/cloudiot_v1.rb +1 -1
  137. data/generated/google/apis/cloudiot_v1/classes.rb +0 -7
  138. data/generated/google/apis/cloudiot_v1/representations.rb +0 -1
  139. data/generated/google/apis/cloudkms_v1.rb +1 -1
  140. data/generated/google/apis/cloudkms_v1/classes.rb +0 -7
  141. data/generated/google/apis/cloudkms_v1/representations.rb +0 -1
  142. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  143. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +375 -7
  144. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +256 -1
  145. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  146. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +375 -7
  147. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +256 -1
  148. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  149. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +379 -11
  150. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +256 -1
  151. data/generated/google/apis/cloudresourcemanager_v2/service.rb +6 -6
  152. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  153. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +379 -11
  154. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +256 -1
  155. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +6 -6
  156. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  157. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +19 -0
  158. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +2 -0
  159. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +12 -2
  160. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  161. data/generated/google/apis/cloudsearch_v1/classes.rb +10 -5
  162. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  163. data/generated/google/apis/cloudtasks_v2/classes.rb +0 -7
  164. data/generated/google/apis/cloudtasks_v2/representations.rb +0 -1
  165. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  166. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +59 -7
  167. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +19 -1
  168. data/generated/google/apis/cloudtasks_v2beta2/service.rb +12 -2
  169. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  170. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +102 -7
  171. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +35 -1
  172. data/generated/google/apis/cloudtasks_v2beta3/service.rb +16 -2
  173. data/generated/google/apis/composer_v1.rb +1 -1
  174. data/generated/google/apis/composer_v1/classes.rb +123 -0
  175. data/generated/google/apis/composer_v1/representations.rb +49 -0
  176. data/generated/google/apis/composer_v1/service.rb +19 -15
  177. data/generated/google/apis/composer_v1beta1.rb +1 -1
  178. data/generated/google/apis/composer_v1beta1/classes.rb +173 -0
  179. data/generated/google/apis/composer_v1beta1/representations.rb +64 -0
  180. data/generated/google/apis/composer_v1beta1/service.rb +39 -1
  181. data/generated/google/apis/compute_alpha.rb +1 -1
  182. data/generated/google/apis/compute_alpha/classes.rb +1071 -341
  183. data/generated/google/apis/compute_alpha/representations.rb +248 -19
  184. data/generated/google/apis/compute_alpha/service.rb +291 -15
  185. data/generated/google/apis/compute_beta.rb +1 -1
  186. data/generated/google/apis/compute_beta/classes.rb +926 -283
  187. data/generated/google/apis/compute_beta/representations.rb +221 -18
  188. data/generated/google/apis/compute_beta/service.rb +24 -15
  189. data/generated/google/apis/compute_v1.rb +1 -1
  190. data/generated/google/apis/compute_v1/classes.rb +461 -173
  191. data/generated/google/apis/compute_v1/representations.rb +58 -0
  192. data/generated/google/apis/compute_v1/service.rb +702 -552
  193. data/generated/google/apis/container_v1.rb +1 -1
  194. data/generated/google/apis/container_v1/classes.rb +55 -16
  195. data/generated/google/apis/container_v1/representations.rb +17 -0
  196. data/generated/google/apis/container_v1/service.rb +4 -2
  197. data/generated/google/apis/container_v1beta1.rb +1 -1
  198. data/generated/google/apis/container_v1beta1/classes.rb +60 -20
  199. data/generated/google/apis/container_v1beta1/representations.rb +17 -0
  200. data/generated/google/apis/container_v1beta1/service.rb +6 -2
  201. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  202. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +0 -7
  203. data/generated/google/apis/containeranalysis_v1alpha1/representations.rb +0 -1
  204. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  205. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +2 -8
  206. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +0 -1
  207. data/generated/google/apis/content_v2.rb +1 -1
  208. data/generated/google/apis/content_v2/classes.rb +7 -7
  209. data/generated/google/apis/content_v2/service.rb +3 -1
  210. data/generated/google/apis/content_v2_1.rb +1 -1
  211. data/generated/google/apis/content_v2_1/classes.rb +1088 -30
  212. data/generated/google/apis/content_v2_1/representations.rb +402 -0
  213. data/generated/google/apis/content_v2_1/service.rb +331 -1
  214. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  215. data/generated/google/apis/datacatalog_v1beta1/classes.rb +7 -17
  216. data/generated/google/apis/datacatalog_v1beta1/representations.rb +1 -1
  217. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  218. data/generated/google/apis/dataflow_v1b3/classes.rb +17 -1
  219. data/generated/google/apis/dataflow_v1b3/representations.rb +2 -0
  220. data/generated/google/apis/datalabeling_v1beta1.rb +1 -1
  221. data/generated/google/apis/datamigration_v1beta1.rb +34 -0
  222. data/generated/google/apis/datamigration_v1beta1/classes.rb +1664 -0
  223. data/generated/google/apis/datamigration_v1beta1/representations.rb +677 -0
  224. data/generated/google/apis/datamigration_v1beta1/service.rb +1172 -0
  225. data/generated/google/apis/dataproc_v1.rb +1 -1
  226. data/generated/google/apis/dataproc_v1/classes.rb +109 -10
  227. data/generated/google/apis/dataproc_v1/representations.rb +36 -1
  228. data/generated/google/apis/dataproc_v1/service.rb +42 -0
  229. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  230. data/generated/google/apis/dataproc_v1beta2/classes.rb +77 -10
  231. data/generated/google/apis/dataproc_v1beta2/representations.rb +32 -1
  232. data/generated/google/apis/dataproc_v1beta2/service.rb +42 -0
  233. data/generated/google/apis/deploymentmanager_alpha.rb +6 -5
  234. data/generated/google/apis/deploymentmanager_alpha/classes.rb +276 -644
  235. data/generated/google/apis/deploymentmanager_alpha/representations.rb +10 -143
  236. data/generated/google/apis/deploymentmanager_alpha/service.rb +247 -398
  237. data/generated/google/apis/deploymentmanager_v2.rb +2 -2
  238. data/generated/google/apis/deploymentmanager_v2/service.rb +6 -26
  239. data/generated/google/apis/deploymentmanager_v2beta.rb +2 -2
  240. data/generated/google/apis/deploymentmanager_v2beta/service.rb +9 -41
  241. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  242. data/generated/google/apis/dfareporting_v3_3/classes.rb +6 -6
  243. data/generated/google/apis/dfareporting_v3_3/service.rb +12 -12
  244. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  245. data/generated/google/apis/dfareporting_v3_4/classes.rb +6 -6
  246. data/generated/google/apis/dfareporting_v3_4/service.rb +12 -12
  247. data/generated/google/apis/dialogflow_v2.rb +1 -1
  248. data/generated/google/apis/dialogflow_v2/classes.rb +4084 -692
  249. data/generated/google/apis/dialogflow_v2/representations.rb +1853 -287
  250. data/generated/google/apis/dialogflow_v2/service.rb +12 -4
  251. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  252. data/generated/google/apis/dialogflow_v2beta1/classes.rb +4080 -693
  253. data/generated/google/apis/dialogflow_v2beta1/representations.rb +1862 -296
  254. data/generated/google/apis/dialogflow_v2beta1/service.rb +508 -38
  255. data/generated/google/apis/{bigqueryreservation_v1alpha2.rb → dialogflow_v3.rb} +13 -12
  256. data/generated/google/apis/dialogflow_v3/classes.rb +11752 -0
  257. data/generated/google/apis/dialogflow_v3/representations.rb +5158 -0
  258. data/generated/google/apis/dialogflow_v3/service.rb +3414 -0
  259. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  260. data/generated/google/apis/dialogflow_v3beta1/classes.rb +5161 -2225
  261. data/generated/google/apis/dialogflow_v3beta1/representations.rb +1783 -350
  262. data/generated/google/apis/dialogflow_v3beta1/service.rb +591 -2
  263. data/generated/google/apis/displayvideo_v1.rb +1 -1
  264. data/generated/google/apis/displayvideo_v1/classes.rb +133 -39
  265. data/generated/google/apis/displayvideo_v1/representations.rb +45 -0
  266. data/generated/google/apis/displayvideo_v1/service.rb +104 -40
  267. data/generated/google/apis/dlp_v2.rb +1 -1
  268. data/generated/google/apis/dlp_v2/classes.rb +6 -0
  269. data/generated/google/apis/dlp_v2/representations.rb +1 -0
  270. data/generated/google/apis/dlp_v2/service.rb +297 -10
  271. data/generated/google/apis/dns_v1.rb +1 -1
  272. data/generated/google/apis/dns_v1/classes.rb +71 -0
  273. data/generated/google/apis/dns_v1/representations.rb +33 -0
  274. data/generated/google/apis/dns_v1beta2.rb +1 -1
  275. data/generated/google/apis/dns_v1beta2/classes.rb +19 -0
  276. data/generated/google/apis/dns_v1beta2/representations.rb +13 -0
  277. data/generated/google/apis/dns_v1beta2/service.rb +176 -0
  278. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  279. data/generated/google/apis/documentai_v1beta2/classes.rb +217 -186
  280. data/generated/google/apis/documentai_v1beta2/representations.rb +107 -24
  281. data/generated/google/apis/documentai_v1beta3.rb +1 -1
  282. data/generated/google/apis/documentai_v1beta3/classes.rb +238 -201
  283. data/generated/google/apis/documentai_v1beta3/representations.rb +107 -24
  284. data/generated/google/apis/documentai_v1beta3/service.rb +81 -2
  285. data/generated/google/apis/domains_v1alpha2.rb +1 -1
  286. data/generated/google/apis/domains_v1alpha2/classes.rb +0 -6
  287. data/generated/google/apis/domains_v1alpha2/representations.rb +0 -1
  288. data/generated/google/apis/domains_v1beta1.rb +1 -1
  289. data/generated/google/apis/domains_v1beta1/classes.rb +0 -6
  290. data/generated/google/apis/domains_v1beta1/representations.rb +0 -1
  291. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  292. data/generated/google/apis/drive_v2.rb +1 -1
  293. data/generated/google/apis/drive_v2/classes.rb +24 -21
  294. data/generated/google/apis/drive_v2/service.rb +26 -58
  295. data/generated/google/apis/drive_v3.rb +1 -1
  296. data/generated/google/apis/drive_v3/classes.rb +12 -8
  297. data/generated/google/apis/drive_v3/service.rb +14 -30
  298. data/generated/google/apis/eventarc_v1beta1.rb +1 -1
  299. data/generated/google/apis/eventarc_v1beta1/classes.rb +8 -9
  300. data/generated/google/apis/eventarc_v1beta1/service.rb +25 -5
  301. data/generated/google/apis/file_v1.rb +1 -1
  302. data/generated/google/apis/file_v1/classes.rb +566 -4
  303. data/generated/google/apis/file_v1/representations.rb +222 -0
  304. data/generated/google/apis/file_v1/service.rb +229 -1
  305. data/generated/google/apis/file_v1beta1.rb +1 -1
  306. data/generated/google/apis/file_v1beta1/classes.rb +346 -6
  307. data/generated/google/apis/file_v1beta1/representations.rb +149 -0
  308. data/generated/google/apis/file_v1beta1/service.rb +6 -2
  309. data/generated/google/apis/firebasedatabase_v1beta.rb +44 -0
  310. data/generated/google/apis/firebasedatabase_v1beta/classes.rb +130 -0
  311. data/generated/google/apis/{displayvideo_v1beta2 → firebasedatabase_v1beta}/representations.rb +26 -16
  312. data/generated/google/apis/firebasedatabase_v1beta/service.rb +292 -0
  313. data/generated/google/apis/games_v1.rb +1 -1
  314. data/generated/google/apis/games_v1/classes.rb +67 -14
  315. data/generated/google/apis/games_v1/representations.rb +31 -2
  316. data/generated/google/apis/games_v1/service.rb +33 -0
  317. data/generated/google/apis/gameservices_v1.rb +1 -1
  318. data/generated/google/apis/gameservices_v1/classes.rb +1 -2
  319. data/generated/google/apis/gameservices_v1/service.rb +14 -14
  320. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  321. data/generated/google/apis/gameservices_v1beta/classes.rb +1 -2
  322. data/generated/google/apis/gameservices_v1beta/service.rb +14 -14
  323. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  324. data/generated/google/apis/genomics_v2alpha1/classes.rb +36 -7
  325. data/generated/google/apis/genomics_v2alpha1/representations.rb +15 -0
  326. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  327. data/generated/google/apis/gmailpostmastertools_v1beta1/classes.rb +9 -0
  328. data/generated/google/apis/gmailpostmastertools_v1beta1/representations.rb +1 -0
  329. data/generated/google/apis/healthcare_v1.rb +1 -1
  330. data/generated/google/apis/healthcare_v1/classes.rb +18 -17
  331. data/generated/google/apis/healthcare_v1/service.rb +13 -12
  332. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  333. data/generated/google/apis/healthcare_v1beta1/classes.rb +321 -70
  334. data/generated/google/apis/healthcare_v1beta1/representations.rb +121 -18
  335. data/generated/google/apis/healthcare_v1beta1/service.rb +75 -39
  336. data/generated/google/apis/iam_v1.rb +1 -1
  337. data/generated/google/apis/iam_v1/classes.rb +109 -11
  338. data/generated/google/apis/iam_v1/representations.rb +33 -1
  339. data/generated/google/apis/iam_v1/service.rb +62 -0
  340. data/generated/google/apis/iap_v1.rb +1 -1
  341. data/generated/google/apis/iap_v1/classes.rb +0 -18
  342. data/generated/google/apis/iap_v1/representations.rb +0 -2
  343. data/generated/google/apis/iap_v1beta1.rb +1 -1
  344. data/generated/google/apis/iap_v1beta1/classes.rb +0 -7
  345. data/generated/google/apis/iap_v1beta1/representations.rb +0 -1
  346. data/generated/google/apis/jobs_v3.rb +1 -1
  347. data/generated/google/apis/jobs_v3/classes.rb +9 -807
  348. data/generated/google/apis/jobs_v3/representations.rb +0 -272
  349. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  350. data/generated/google/apis/jobs_v3p1beta1/classes.rb +9 -768
  351. data/generated/google/apis/jobs_v3p1beta1/representations.rb +0 -257
  352. data/generated/google/apis/{jobs_v2.rb → jobs_v4.rb} +6 -6
  353. data/generated/google/apis/jobs_v4/classes.rb +2699 -0
  354. data/generated/google/apis/jobs_v4/representations.rb +934 -0
  355. data/generated/google/apis/jobs_v4/service.rb +903 -0
  356. data/generated/google/apis/licensing_v1.rb +1 -1
  357. data/generated/google/apis/licensing_v1/classes.rb +26 -8
  358. data/generated/google/apis/licensing_v1/representations.rb +12 -0
  359. data/generated/google/apis/licensing_v1/service.rb +32 -29
  360. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  361. data/generated/google/apis/lifesciences_v2beta/classes.rb +25 -0
  362. data/generated/google/apis/lifesciences_v2beta/representations.rb +15 -0
  363. data/generated/google/apis/localservices_v1.rb +4 -1
  364. data/generated/google/apis/logging_v2.rb +1 -1
  365. data/generated/google/apis/logging_v2/classes.rb +115 -9
  366. data/generated/google/apis/logging_v2/representations.rb +45 -0
  367. data/generated/google/apis/logging_v2/service.rb +101 -25
  368. data/generated/google/apis/managedidentities_v1.rb +1 -1
  369. data/generated/google/apis/managedidentities_v1/classes.rb +361 -16
  370. data/generated/google/apis/managedidentities_v1/representations.rb +149 -1
  371. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  372. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +363 -17
  373. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +149 -1
  374. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  375. data/generated/google/apis/managedidentities_v1beta1/classes.rb +349 -12
  376. data/generated/google/apis/managedidentities_v1beta1/representations.rb +149 -1
  377. data/generated/google/apis/manufacturers_v1.rb +1 -1
  378. data/generated/google/apis/manufacturers_v1/classes.rb +2 -2
  379. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  380. data/generated/google/apis/memcache_v1beta2/classes.rb +345 -4
  381. data/generated/google/apis/memcache_v1beta2/representations.rb +149 -0
  382. data/generated/google/apis/metastore_v1beta.rb +35 -0
  383. data/generated/google/apis/metastore_v1beta/classes.rb +1151 -0
  384. data/generated/google/apis/metastore_v1beta/representations.rb +479 -0
  385. data/generated/google/apis/metastore_v1beta/service.rb +800 -0
  386. data/generated/google/apis/ml_v1.rb +1 -1
  387. data/generated/google/apis/ml_v1/classes.rb +85 -25
  388. data/generated/google/apis/ml_v1/representations.rb +42 -1
  389. data/generated/google/apis/ml_v1/service.rb +35 -0
  390. data/generated/google/apis/monitoring_v3.rb +1 -1
  391. data/generated/google/apis/monitoring_v3/classes.rb +15 -10
  392. data/generated/google/apis/monitoring_v3/service.rb +5 -4
  393. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  394. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -0
  395. data/generated/google/apis/networkmanagement_v1/representations.rb +1 -0
  396. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  397. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +57 -0
  398. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +31 -0
  399. data/generated/google/apis/notebooks_v1.rb +34 -0
  400. data/generated/google/apis/notebooks_v1/classes.rb +1468 -0
  401. data/generated/google/apis/notebooks_v1/representations.rb +592 -0
  402. data/generated/google/apis/notebooks_v1/service.rb +1076 -0
  403. data/generated/google/apis/osconfig_v1.rb +1 -1
  404. data/generated/google/apis/osconfig_v1/classes.rb +419 -0
  405. data/generated/google/apis/osconfig_v1/representations.rb +168 -0
  406. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  407. data/generated/google/apis/osconfig_v1beta/classes.rb +419 -0
  408. data/generated/google/apis/osconfig_v1beta/representations.rb +168 -0
  409. data/generated/google/apis/pagespeedonline_v5.rb +1 -1
  410. data/generated/google/apis/pagespeedonline_v5/service.rb +3 -3
  411. data/generated/google/apis/people_v1.rb +1 -1
  412. data/generated/google/apis/people_v1/classes.rb +6 -2
  413. data/generated/google/apis/people_v1/service.rb +9 -6
  414. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  415. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  416. data/generated/google/apis/privateca_v1beta1.rb +4 -2
  417. data/generated/google/apis/privateca_v1beta1/classes.rb +2 -1
  418. data/generated/google/apis/privateca_v1beta1/service.rb +3 -53
  419. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  420. data/generated/google/apis/pubsub_v1.rb +1 -1
  421. data/generated/google/apis/pubsub_v1/classes.rb +0 -7
  422. data/generated/google/apis/pubsub_v1/representations.rb +0 -1
  423. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  424. data/generated/google/apis/pubsub_v1beta2/classes.rb +0 -7
  425. data/generated/google/apis/pubsub_v1beta2/representations.rb +0 -1
  426. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  427. data/generated/google/apis/realtimebidding_v1/classes.rb +545 -0
  428. data/generated/google/apis/realtimebidding_v1/representations.rb +232 -0
  429. data/generated/google/apis/realtimebidding_v1/service.rb +450 -0
  430. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  431. data/generated/google/apis/recommendationengine_v1beta1/service.rb +2 -1
  432. data/generated/google/apis/recommender_v1.rb +1 -1
  433. data/generated/google/apis/recommender_v1/classes.rb +2 -2
  434. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  435. data/generated/google/apis/recommender_v1beta1/classes.rb +2 -2
  436. data/generated/google/apis/recommender_v1beta1/service.rb +317 -0
  437. data/generated/google/apis/redis_v1.rb +1 -1
  438. data/generated/google/apis/redis_v1/classes.rb +86 -0
  439. data/generated/google/apis/redis_v1/representations.rb +34 -0
  440. data/generated/google/apis/redis_v1/service.rb +34 -0
  441. data/generated/google/apis/redis_v1beta1.rb +1 -1
  442. data/generated/google/apis/redis_v1beta1/classes.rb +58 -0
  443. data/generated/google/apis/redis_v1beta1/representations.rb +20 -0
  444. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  445. data/generated/google/apis/remotebuildexecution_v1/classes.rb +5 -30
  446. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -16
  447. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  448. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +5 -30
  449. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -16
  450. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  451. data/generated/google/apis/remotebuildexecution_v2/classes.rb +5 -30
  452. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -16
  453. data/generated/google/apis/reseller_v1.rb +4 -4
  454. data/generated/google/apis/reseller_v1/service.rb +5 -5
  455. data/generated/google/apis/run_v1.rb +1 -1
  456. data/generated/google/apis/run_v1/classes.rb +2 -1
  457. data/generated/google/apis/run_v1alpha1.rb +1 -1
  458. data/generated/google/apis/run_v1alpha1/classes.rb +2 -1
  459. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  460. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +0 -6
  461. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +0 -1
  462. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  463. data/generated/google/apis/safebrowsing_v4/classes.rb +277 -277
  464. data/generated/google/apis/safebrowsing_v4/representations.rb +128 -128
  465. data/generated/google/apis/safebrowsing_v4/service.rb +44 -44
  466. data/generated/google/apis/searchconsole_v1.rb +1 -1
  467. data/generated/google/apis/searchconsole_v1/classes.rb +7 -0
  468. data/generated/google/apis/searchconsole_v1/representations.rb +1 -0
  469. data/generated/google/apis/secretmanager_v1.rb +1 -1
  470. data/generated/google/apis/secretmanager_v1/classes.rb +0 -6
  471. data/generated/google/apis/secretmanager_v1/representations.rb +0 -1
  472. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  473. data/generated/google/apis/secretmanager_v1beta1/classes.rb +0 -6
  474. data/generated/google/apis/secretmanager_v1beta1/representations.rb +0 -1
  475. data/generated/google/apis/securitycenter_v1.rb +1 -1
  476. data/generated/google/apis/securitycenter_v1/classes.rb +109 -10
  477. data/generated/google/apis/securitycenter_v1/representations.rb +38 -0
  478. data/generated/google/apis/securitycenter_v1/service.rb +1464 -430
  479. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  480. data/generated/google/apis/securitycenter_v1beta1/classes.rb +75 -0
  481. data/generated/google/apis/securitycenter_v1beta1/representations.rb +33 -0
  482. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  483. data/generated/google/apis/securitycenter_v1beta2/classes.rb +75 -0
  484. data/generated/google/apis/securitycenter_v1beta2/representations.rb +33 -0
  485. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  486. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +1 -1
  487. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  488. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +12 -11
  489. data/generated/google/apis/servicecontrol_v1.rb +3 -3
  490. data/generated/google/apis/servicecontrol_v1/service.rb +2 -2
  491. data/generated/google/apis/servicecontrol_v2.rb +3 -3
  492. data/generated/google/apis/servicecontrol_v2/service.rb +2 -2
  493. data/generated/google/apis/servicedirectory_v1.rb +35 -0
  494. data/generated/google/apis/servicedirectory_v1/classes.rb +721 -0
  495. data/generated/google/apis/servicedirectory_v1/representations.rb +304 -0
  496. data/generated/google/apis/servicedirectory_v1/service.rb +957 -0
  497. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  498. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +26 -13
  499. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +0 -1
  500. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  501. data/generated/google/apis/servicemanagement_v1/classes.rb +12 -11
  502. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  503. data/generated/google/apis/servicenetworking_v1/classes.rb +79 -5
  504. data/generated/google/apis/servicenetworking_v1/representations.rb +33 -1
  505. data/generated/google/apis/servicenetworking_v1/service.rb +80 -0
  506. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  507. data/generated/google/apis/servicenetworking_v1beta/classes.rb +38 -5
  508. data/generated/google/apis/servicenetworking_v1beta/representations.rb +17 -1
  509. data/generated/google/apis/serviceusage_v1.rb +1 -1
  510. data/generated/google/apis/serviceusage_v1/classes.rb +12 -11
  511. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  512. data/generated/google/apis/serviceusage_v1beta1/classes.rb +12 -11
  513. data/generated/google/apis/sheets_v4.rb +1 -1
  514. data/generated/google/apis/sheets_v4/classes.rb +332 -7
  515. data/generated/google/apis/sheets_v4/representations.rb +102 -0
  516. data/generated/google/apis/slides_v1.rb +1 -1
  517. data/generated/google/apis/slides_v1/classes.rb +9 -3
  518. data/generated/google/apis/spanner_v1.rb +1 -1
  519. data/generated/google/apis/spanner_v1/classes.rb +10 -8
  520. data/generated/google/apis/spanner_v1/representations.rb +1 -1
  521. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  522. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  523. data/generated/google/apis/sqladmin_v1beta4/classes.rb +97 -14
  524. data/generated/google/apis/sqladmin_v1beta4/representations.rb +34 -0
  525. data/generated/google/apis/sqladmin_v1beta4/service.rb +5 -2
  526. data/generated/google/apis/storage_v1.rb +1 -1
  527. data/generated/google/apis/storage_v1/classes.rb +7 -0
  528. data/generated/google/apis/storage_v1/representations.rb +1 -0
  529. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  530. data/generated/google/apis/storagetransfer_v1/classes.rb +54 -16
  531. data/generated/google/apis/storagetransfer_v1/representations.rb +6 -0
  532. data/generated/google/apis/storagetransfer_v1/service.rb +3 -3
  533. data/generated/google/apis/testing_v1.rb +1 -1
  534. data/generated/google/apis/testing_v1/classes.rb +1 -1
  535. data/generated/google/apis/trafficdirector_v2.rb +2 -2
  536. data/generated/google/apis/trafficdirector_v2/service.rb +1 -1
  537. data/generated/google/apis/transcoder_v1beta1.rb +34 -0
  538. data/generated/google/apis/transcoder_v1beta1/classes.rb +1694 -0
  539. data/generated/google/apis/transcoder_v1beta1/representations.rb +757 -0
  540. data/generated/google/apis/transcoder_v1beta1/service.rb +329 -0
  541. data/generated/google/apis/translate_v3.rb +1 -1
  542. data/generated/google/apis/translate_v3/classes.rb +1 -1
  543. data/generated/google/apis/translate_v3beta1.rb +1 -1
  544. data/generated/google/apis/translate_v3beta1/classes.rb +1 -1
  545. data/generated/google/apis/vault_v1.rb +1 -1
  546. data/generated/google/apis/vault_v1/classes.rb +76 -0
  547. data/generated/google/apis/vault_v1/representations.rb +45 -0
  548. data/generated/google/apis/vectortile_v1.rb +1 -1
  549. data/generated/google/apis/vectortile_v1/classes.rb +59 -4
  550. data/generated/google/apis/vectortile_v1/representations.rb +19 -0
  551. data/generated/google/apis/videointelligence_v1.rb +1 -1
  552. data/generated/google/apis/videointelligence_v1/classes.rb +65 -0
  553. data/generated/google/apis/videointelligence_v1/representations.rb +15 -0
  554. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  555. data/generated/google/apis/videointelligence_v1beta2/classes.rb +65 -0
  556. data/generated/google/apis/videointelligence_v1beta2/representations.rb +15 -0
  557. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  558. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +65 -0
  559. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +15 -0
  560. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  561. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +65 -0
  562. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +15 -0
  563. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  564. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +65 -0
  565. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +15 -0
  566. data/generated/google/apis/webmasters_v3/classes.rb +8 -0
  567. data/generated/google/apis/webmasters_v3/representations.rb +1 -0
  568. data/generated/google/apis/workflows_v1beta.rb +1 -1
  569. data/generated/google/apis/workflows_v1beta/classes.rb +4 -4
  570. data/generated/google/apis/youtube_v3.rb +1 -1
  571. data/generated/google/apis/youtube_v3/classes.rb +20 -145
  572. data/generated/google/apis/youtube_v3/representations.rb +0 -57
  573. data/generated/google/apis/youtube_v3/service.rb +6 -49
  574. data/lib/google/apis/version.rb +1 -23
  575. metadata +71 -287
  576. data/.github/CONTRIBUTING.md +0 -31
  577. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -36
  578. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -21
  579. data/.github/ISSUE_TEMPLATE/support_request.md +0 -7
  580. data/.github/workflows/autoapprove.yml +0 -49
  581. data/.github/workflows/release-please.yml +0 -77
  582. data/.gitignore +0 -23
  583. data/.kokoro/build.bat +0 -11
  584. data/.kokoro/build.sh +0 -4
  585. data/.kokoro/continuous/common.cfg +0 -25
  586. data/.kokoro/continuous/linux.cfg +0 -25
  587. data/.kokoro/continuous/osx.cfg +0 -8
  588. data/.kokoro/continuous/post.cfg +0 -30
  589. data/.kokoro/continuous/windows.cfg +0 -29
  590. data/.kokoro/osx.sh +0 -4
  591. data/.kokoro/presubmit/common.cfg +0 -24
  592. data/.kokoro/presubmit/linux.cfg +0 -24
  593. data/.kokoro/presubmit/osx.cfg +0 -8
  594. data/.kokoro/presubmit/windows.cfg +0 -29
  595. data/.kokoro/release.cfg +0 -94
  596. data/.kokoro/trampoline.bat +0 -10
  597. data/.kokoro/trampoline.sh +0 -4
  598. data/.repo-metadata.json +0 -5
  599. data/.rspec +0 -2
  600. data/.rubocop.yml +0 -12
  601. data/.rubocop_todo.yml +0 -63
  602. data/CODE_OF_CONDUCT.md +0 -43
  603. data/Gemfile +0 -55
  604. data/MIGRATING.md +0 -215
  605. data/README.md +0 -402
  606. data/Rakefile +0 -131
  607. data/api_list_config.yaml +0 -9
  608. data/api_names.yaml +0 -1082
  609. data/bin/generate-api +0 -194
  610. data/docs/api-keys.md +0 -20
  611. data/docs/auth.md +0 -53
  612. data/docs/client-secrets.md +0 -69
  613. data/docs/getting-started.md +0 -340
  614. data/docs/installation.md +0 -0
  615. data/docs/logging.md +0 -34
  616. data/docs/media-upload.md +0 -25
  617. data/docs/oauth-installed.md +0 -191
  618. data/docs/oauth-server.md +0 -133
  619. data/docs/oauth-web.md +0 -280
  620. data/docs/oauth.md +0 -268
  621. data/docs/pagination.md +0 -29
  622. data/docs/performance.md +0 -25
  623. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +0 -426
  624. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +0 -195
  625. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +0 -622
  626. data/generated/google/apis/displayvideo_v1beta.rb +0 -38
  627. data/generated/google/apis/displayvideo_v1beta/classes.rb +0 -146
  628. data/generated/google/apis/displayvideo_v1beta/service.rb +0 -161
  629. data/generated/google/apis/displayvideo_v1beta2.rb +0 -38
  630. data/generated/google/apis/displayvideo_v1beta2/service.rb +0 -130
  631. data/generated/google/apis/displayvideo_v1dev.rb +0 -38
  632. data/generated/google/apis/displayvideo_v1dev/classes.rb +0 -146
  633. data/generated/google/apis/displayvideo_v1dev/representations.rb +0 -72
  634. data/generated/google/apis/displayvideo_v1dev/service.rb +0 -130
  635. data/generated/google/apis/jobs_v2/classes.rb +0 -4012
  636. data/generated/google/apis/jobs_v2/representations.rb +0 -1396
  637. data/generated/google/apis/jobs_v2/service.rb +0 -693
  638. data/google-api-client.gemspec +0 -36
  639. data/lib/google/api_client/auth/installed_app.rb +0 -143
  640. data/lib/google/api_client/auth/key_utils.rb +0 -94
  641. data/lib/google/api_client/auth/storage.rb +0 -104
  642. data/lib/google/api_client/auth/storages/file_store.rb +0 -57
  643. data/lib/google/api_client/auth/storages/redis_store.rb +0 -59
  644. data/lib/google/api_client/client_secrets.rb +0 -176
  645. data/lib/google/apis.rb +0 -58
  646. data/lib/google/apis/core/api_command.rb +0 -209
  647. data/lib/google/apis/core/base_service.rb +0 -447
  648. data/lib/google/apis/core/batch.rb +0 -236
  649. data/lib/google/apis/core/composite_io.rb +0 -97
  650. data/lib/google/apis/core/download.rb +0 -118
  651. data/lib/google/apis/core/hashable.rb +0 -44
  652. data/lib/google/apis/core/http_command.rb +0 -447
  653. data/lib/google/apis/core/json_representation.rb +0 -153
  654. data/lib/google/apis/core/multipart.rb +0 -135
  655. data/lib/google/apis/core/upload.rb +0 -273
  656. data/lib/google/apis/errors.rb +0 -89
  657. data/lib/google/apis/generator.rb +0 -71
  658. data/lib/google/apis/generator/annotator.rb +0 -339
  659. data/lib/google/apis/generator/helpers.rb +0 -76
  660. data/lib/google/apis/generator/model.rb +0 -187
  661. data/lib/google/apis/generator/template.rb +0 -124
  662. data/lib/google/apis/generator/templates/_class.tmpl +0 -43
  663. data/lib/google/apis/generator/templates/_method.tmpl +0 -92
  664. data/lib/google/apis/generator/templates/_representation.tmpl +0 -51
  665. data/lib/google/apis/generator/templates/_representation_stub.tmpl +0 -17
  666. data/lib/google/apis/generator/templates/_representation_type.tmpl +0 -10
  667. data/lib/google/apis/generator/templates/classes.rb.tmpl +0 -29
  668. data/lib/google/apis/generator/templates/module.rb.tmpl +0 -40
  669. data/lib/google/apis/generator/templates/service.rb.tmpl +0 -61
  670. data/lib/google/apis/options.rb +0 -116
  671. data/rakelib/devsite/devsite_builder.rb +0 -126
  672. data/rakelib/devsite/link_checker.rb +0 -64
  673. data/rakelib/devsite/repo_metadata.rb +0 -56
  674. data/rakelib/metrics.rake +0 -22
  675. data/rakelib/rubocop.rake +0 -10
  676. data/rakelib/spec.rake +0 -11
  677. data/rakelib/yard.rake +0 -11
  678. data/samples/cli/.env +0 -4
  679. data/samples/cli/Gemfile +0 -7
  680. data/samples/cli/README.md +0 -51
  681. data/samples/cli/google-api-samples +0 -32
  682. data/samples/cli/lib/base_cli.rb +0 -95
  683. data/samples/cli/lib/samples/adsense.rb +0 -99
  684. data/samples/cli/lib/samples/analytics.rb +0 -80
  685. data/samples/cli/lib/samples/androidpublisher.rb +0 -47
  686. data/samples/cli/lib/samples/bigquery.rb +0 -101
  687. data/samples/cli/lib/samples/calendar.rb +0 -83
  688. data/samples/cli/lib/samples/drive.rb +0 -82
  689. data/samples/cli/lib/samples/gmail.rb +0 -157
  690. data/samples/cli/lib/samples/pubsub.rb +0 -114
  691. data/samples/cli/lib/samples/sheets.rb +0 -61
  692. data/samples/cli/lib/samples/translate.rb +0 -44
  693. data/samples/cli/lib/samples/vision.rb +0 -69
  694. data/samples/cli/lib/samples/you_tube.rb +0 -47
  695. data/samples/web/Gemfile +0 -9
  696. data/samples/web/README.md +0 -44
  697. data/samples/web/app.rb +0 -120
  698. data/samples/web/views/calendar.erb +0 -34
  699. data/samples/web/views/drive.erb +0 -33
  700. data/samples/web/views/home.erb +0 -34
  701. data/samples/web/views/layout.erb +0 -40
  702. data/synth.py +0 -40
@@ -34,12 +34,24 @@ module Google
34
34
  include Google::Apis::Core::JsonObjectSupport
35
35
  end
36
36
 
37
+ class Date
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
37
43
  class Empty
38
44
  class Representation < Google::Apis::Core::JsonRepresentation; end
39
45
 
40
46
  include Google::Apis::Core::JsonObjectSupport
41
47
  end
42
48
 
49
+ class EncryptionConfig
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
43
55
  class Environment
44
56
  class Representation < Google::Apis::Core::JsonRepresentation; end
45
57
 
@@ -82,6 +94,12 @@ module Google
82
94
  include Google::Apis::Core::JsonObjectSupport
83
95
  end
84
96
 
97
+ class MaintenanceWindow
98
+ class Representation < Google::Apis::Core::JsonRepresentation; end
99
+
100
+ include Google::Apis::Core::JsonObjectSupport
101
+ end
102
+
85
103
  class NodeConfig
86
104
  class Representation < Google::Apis::Core::JsonRepresentation; end
87
105
 
@@ -112,6 +130,12 @@ module Google
112
130
  include Google::Apis::Core::JsonObjectSupport
113
131
  end
114
132
 
133
+ class RestartWebServerRequest
134
+ class Representation < Google::Apis::Core::JsonRepresentation; end
135
+
136
+ include Google::Apis::Core::JsonObjectSupport
137
+ end
138
+
115
139
  class SoftwareConfig
116
140
  class Representation < Google::Apis::Core::JsonRepresentation; end
117
141
 
@@ -151,12 +175,28 @@ module Google
151
175
  end
152
176
  end
153
177
 
178
+ class Date
179
+ # @private
180
+ class Representation < Google::Apis::Core::JsonRepresentation
181
+ property :day, as: 'day'
182
+ property :month, as: 'month'
183
+ property :year, as: 'year'
184
+ end
185
+ end
186
+
154
187
  class Empty
155
188
  # @private
156
189
  class Representation < Google::Apis::Core::JsonRepresentation
157
190
  end
158
191
  end
159
192
 
193
+ class EncryptionConfig
194
+ # @private
195
+ class Representation < Google::Apis::Core::JsonRepresentation
196
+ property :kms_key_name, as: 'kmsKeyName'
197
+ end
198
+ end
199
+
160
200
  class Environment
161
201
  # @private
162
202
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -178,7 +218,11 @@ module Google
178
218
  property :dag_gcs_prefix, as: 'dagGcsPrefix'
179
219
  property :database_config, as: 'databaseConfig', class: Google::Apis::ComposerV1beta1::DatabaseConfig, decorator: Google::Apis::ComposerV1beta1::DatabaseConfig::Representation
180
220
 
221
+ property :encryption_config, as: 'encryptionConfig', class: Google::Apis::ComposerV1beta1::EncryptionConfig, decorator: Google::Apis::ComposerV1beta1::EncryptionConfig::Representation
222
+
181
223
  property :gke_cluster, as: 'gkeCluster'
224
+ property :maintenance_window, as: 'maintenanceWindow', class: Google::Apis::ComposerV1beta1::MaintenanceWindow, decorator: Google::Apis::ComposerV1beta1::MaintenanceWindow::Representation
225
+
182
226
  property :node_config, as: 'nodeConfig', class: Google::Apis::ComposerV1beta1::NodeConfig, decorator: Google::Apis::ComposerV1beta1::NodeConfig::Representation
183
227
 
184
228
  property :node_count, as: 'nodeCount'
@@ -207,9 +251,13 @@ module Google
207
251
  class ImageVersion
208
252
  # @private
209
253
  class Representation < Google::Apis::Core::JsonRepresentation
254
+ property :creation_disabled, as: 'creationDisabled'
210
255
  property :image_version_id, as: 'imageVersionId'
211
256
  property :is_default, as: 'isDefault'
257
+ property :release_date, as: 'releaseDate', class: Google::Apis::ComposerV1beta1::Date, decorator: Google::Apis::ComposerV1beta1::Date::Representation
258
+
212
259
  collection :supported_python_versions, as: 'supportedPythonVersions'
260
+ property :upgrade_disabled, as: 'upgradeDisabled'
213
261
  end
214
262
  end
215
263
 
@@ -240,6 +288,15 @@ module Google
240
288
  end
241
289
  end
242
290
 
291
+ class MaintenanceWindow
292
+ # @private
293
+ class Representation < Google::Apis::Core::JsonRepresentation
294
+ property :end_time, as: 'endTime'
295
+ property :recurrence, as: 'recurrence'
296
+ property :start_time, as: 'startTime'
297
+ end
298
+ end
299
+
243
300
  class NodeConfig
244
301
  # @private
245
302
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -248,6 +305,7 @@ module Google
248
305
 
249
306
  property :location, as: 'location'
250
307
  property :machine_type, as: 'machineType'
308
+ property :max_pods_per_node, as: 'maxPodsPerNode'
251
309
  property :network, as: 'network'
252
310
  collection :oauth_scopes, as: 'oauthScopes'
253
311
  property :service_account, as: 'serviceAccount'
@@ -301,6 +359,12 @@ module Google
301
359
  end
302
360
  end
303
361
 
362
+ class RestartWebServerRequest
363
+ # @private
364
+ class Representation < Google::Apis::Core::JsonRepresentation
365
+ end
366
+ end
367
+
304
368
  class SoftwareConfig
305
369
  # @private
306
370
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -285,10 +285,47 @@ module Google
285
285
  execute_or_queue_command(command, &block)
286
286
  end
287
287
 
288
+ # Restart Airflow web server.
289
+ # @param [String] name
290
+ # The resource name of the environment to restart the web server for, in the
291
+ # form: "projects/`projectId`/locations/`locationId`/environments/`environmentId`
292
+ # "
293
+ # @param [Google::Apis::ComposerV1beta1::RestartWebServerRequest] restart_web_server_request_object
294
+ # @param [String] fields
295
+ # Selector specifying which fields to include in a partial response.
296
+ # @param [String] quota_user
297
+ # Available to use for quota purposes for server-side applications. Can be any
298
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
299
+ # @param [Google::Apis::RequestOptions] options
300
+ # Request-specific options
301
+ #
302
+ # @yield [result, err] Result & error if block supplied
303
+ # @yieldparam result [Google::Apis::ComposerV1beta1::Operation] parsed result object
304
+ # @yieldparam err [StandardError] error object if request failed
305
+ #
306
+ # @return [Google::Apis::ComposerV1beta1::Operation]
307
+ #
308
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
309
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
310
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
311
+ def restart_environment_web_server(name, restart_web_server_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
312
+ command = make_simple_command(:post, 'v1beta1/{+name}:restartWebServer', options)
313
+ command.request_representation = Google::Apis::ComposerV1beta1::RestartWebServerRequest::Representation
314
+ command.request_object = restart_web_server_request_object
315
+ command.response_representation = Google::Apis::ComposerV1beta1::Operation::Representation
316
+ command.response_class = Google::Apis::ComposerV1beta1::Operation
317
+ command.params['name'] = name unless name.nil?
318
+ command.query['fields'] = fields unless fields.nil?
319
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
320
+ execute_or_queue_command(command, &block)
321
+ end
322
+
288
323
  # List ImageVersions for provided location.
289
324
  # @param [String] parent
290
325
  # List ImageVersions in the given project and location, in the form: "projects/`
291
326
  # projectId`/locations/`locationId`"
327
+ # @param [Boolean] include_past_releases
328
+ # Whether or not image versions from old releases should be included.
292
329
  # @param [Fixnum] page_size
293
330
  # The maximum number of image_versions to return.
294
331
  # @param [String] page_token
@@ -310,11 +347,12 @@ module Google
310
347
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
311
348
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
312
349
  # @raise [Google::Apis::AuthorizationError] Authorization is required
313
- def list_project_location_image_versions(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
350
+ def list_project_location_image_versions(parent, include_past_releases: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
314
351
  command = make_simple_command(:get, 'v1beta1/{+parent}/imageVersions', options)
315
352
  command.response_representation = Google::Apis::ComposerV1beta1::ListImageVersionsResponse::Representation
316
353
  command.response_class = Google::Apis::ComposerV1beta1::ListImageVersionsResponse
317
354
  command.params['parent'] = parent unless parent.nil?
355
+ command.query['includePastReleases'] = include_past_releases unless include_past_releases.nil?
318
356
  command.query['pageSize'] = page_size unless page_size.nil?
319
357
  command.query['pageToken'] = page_token unless page_token.nil?
320
358
  command.query['fields'] = fields unless fields.nil?
@@ -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 = '20200910'
28
+ REVISION = '20201122'
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'
@@ -471,6 +471,19 @@ module Google
471
471
  class AccessConfig
472
472
  include Google::Apis::Core::Hashable
473
473
 
474
+ # [Output Only] The first IPv6 address of the external IPv6 range associated
475
+ # with this instance, prefix length is stored in externalIpv6PrefixLength in
476
+ # ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork
477
+ # associated with the instance will be allocated dynamically.
478
+ # Corresponds to the JSON property `externalIpv6`
479
+ # @return [String]
480
+ attr_accessor :external_ipv6
481
+
482
+ # [Output Only] The prefix length of the external IPv6 range.
483
+ # Corresponds to the JSON property `externalIpv6PrefixLength`
484
+ # @return [Fixnum]
485
+ attr_accessor :external_ipv6_prefix_length
486
+
474
487
  # [Output Only] Type of the resource. Always compute#accessConfig for access
475
488
  # configs.
476
489
  # Corresponds to the JSON property `kind`
@@ -540,6 +553,8 @@ module Google
540
553
 
541
554
  # Update properties of this object
542
555
  def update!(**args)
556
+ @external_ipv6 = args[:external_ipv6] if args.key?(:external_ipv6)
557
+ @external_ipv6_prefix_length = args[:external_ipv6_prefix_length] if args.key?(:external_ipv6_prefix_length)
543
558
  @kind = args[:kind] if args.key?(:kind)
544
559
  @name = args[:name] if args.key?(:name)
545
560
  @nat_ip = args[:nat_ip] if args.key?(:nat_ip)
@@ -668,6 +683,9 @@ module Google
668
683
  # - `VPC_PEERING` for addresses that are reserved for VPC peer networks.
669
684
  # - `NAT_AUTO` for addresses that are external IP addresses automatically
670
685
  # reserved for Cloud NAT.
686
+ # - `IPSEC_INTERCONNECT` for addresses created from a private IP range that are
687
+ # reserved for a VLAN attachment in an IPsec encrypted Interconnect
688
+ # configuration. These addresses are regional resources.
671
689
  # Corresponds to the JSON property `purpose`
672
690
  # @return [String]
673
691
  attr_accessor :purpose
@@ -1134,6 +1152,25 @@ module Google
1134
1152
  end
1135
1153
  end
1136
1154
 
1155
+ #
1156
+ class AllocationShareSettings
1157
+ include Google::Apis::Core::Hashable
1158
+
1159
+ # Type of sharing for this shared-reservation
1160
+ # Corresponds to the JSON property `shareType`
1161
+ # @return [String]
1162
+ attr_accessor :share_type
1163
+
1164
+ def initialize(**args)
1165
+ update!(**args)
1166
+ end
1167
+
1168
+ # Update properties of this object
1169
+ def update!(**args)
1170
+ @share_type = args[:share_type] if args.key?(:share_type)
1171
+ end
1172
+ end
1173
+
1137
1174
  #
1138
1175
  class AllocationSpecificSkuAllocationAllocatedInstancePropertiesReservedDisk
1139
1176
  include Google::Apis::Core::Hashable
@@ -1195,6 +1232,13 @@ module Google
1195
1232
  # @return [Fixnum]
1196
1233
  attr_accessor :maintenance_freeze_duration_hours
1197
1234
 
1235
+ # Specifies whether this VM may be a stable fleet VM. Setting this to "Periodic"
1236
+ # designates this VM as a Stable Fleet VM.
1237
+ # See go/stable-fleet-ug for more details.
1238
+ # Corresponds to the JSON property `maintenanceInterval`
1239
+ # @return [String]
1240
+ attr_accessor :maintenance_interval
1241
+
1198
1242
  # Minimum cpu platform the reservation.
1199
1243
  # Corresponds to the JSON property `minCpuPlatform`
1200
1244
  # @return [String]
@@ -1211,6 +1255,7 @@ module Google
1211
1255
  @location_hint = args[:location_hint] if args.key?(:location_hint)
1212
1256
  @machine_type = args[:machine_type] if args.key?(:machine_type)
1213
1257
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
1258
+ @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
1214
1259
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
1215
1260
  end
1216
1261
  end
@@ -1298,6 +1343,14 @@ module Google
1298
1343
  # @return [Fixnum]
1299
1344
  attr_accessor :disk_size_gb
1300
1345
 
1346
+ # [Input Only] Whether to force attach the regional disk even if it's currently
1347
+ # attached to another instance. If you try to force attach a zonal disk to an
1348
+ # instance, you will receive an error.
1349
+ # Corresponds to the JSON property `forceAttach`
1350
+ # @return [Boolean]
1351
+ attr_accessor :force_attach
1352
+ alias_method :force_attach?, :force_attach
1353
+
1301
1354
  # A list of features to enable on the guest operating system. Applicable only
1302
1355
  # for bootable images. Read Enabling guest operating system features to see a
1303
1356
  # list of available options.
@@ -1397,6 +1450,7 @@ module Google
1397
1450
  @device_name = args[:device_name] if args.key?(:device_name)
1398
1451
  @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
1399
1452
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
1453
+ @force_attach = args[:force_attach] if args.key?(:force_attach)
1400
1454
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
1401
1455
  @index = args[:index] if args.key?(:index)
1402
1456
  @initialize_params = args[:initialize_params] if args.key?(:initialize_params)
@@ -1753,8 +1807,8 @@ module Google
1753
1807
 
1754
1808
  # Represents an Autoscaler resource.
1755
1809
  # Google Compute Engine has two Autoscaler resources:
1756
- # * [Global](/compute/docs/reference/rest/`$api_version`/autoscalers) * [
1757
- # Regional](/compute/docs/reference/rest/`$api_version`/regionAutoscalers)
1810
+ # * [Zonal](/compute/docs/reference/rest/`$api_version`/autoscalers) * [Regional]
1811
+ # (/compute/docs/reference/rest/`$api_version`/regionAutoscalers)
1758
1812
  # Use autoscalers to automatically add or delete instances from a managed
1759
1813
  # instance group according to your defined autoscaling policy. For more
1760
1814
  # information, read Autoscaling Groups of Instances.
@@ -1803,10 +1857,10 @@ module Google
1803
1857
  attr_accessor :name
1804
1858
 
1805
1859
  # [Output Only] Target recommended MIG size (number of instances) computed by
1806
- # autoscaler. Autoscaler calculates recommended MIG size even when autoscaling
1807
- # policy mode is different from ON. This field is empty when autoscaler is not
1808
- # connected to the existing managed instance group or autoscaler did not
1809
- # generate its prediction.
1860
+ # autoscaler. Autoscaler calculates the recommended MIG size even when the
1861
+ # autoscaling policy mode is different from ON. This field is empty when
1862
+ # autoscaler is not connected to an existing managed instance group or
1863
+ # autoscaler did not generate its prediction.
1810
1864
  # Corresponds to the JSON property `recommendedSize`
1811
1865
  # @return [Fixnum]
1812
1866
  attr_accessor :recommended_size
@@ -1851,7 +1905,8 @@ module Google
1851
1905
  # @return [Array<Google::Apis::ComputeAlpha::AutoscalerStatusDetails>]
1852
1906
  attr_accessor :status_details
1853
1907
 
1854
- # URL of the managed instance group that this autoscaler will scale.
1908
+ # URL of the managed instance group that this autoscaler will scale. This field
1909
+ # is required when creating an autoscaler.
1855
1910
  # Corresponds to the JSON property `target`
1856
1911
  # @return [String]
1857
1912
  attr_accessor :target
@@ -2160,7 +2215,7 @@ module Google
2160
2215
  # - MODE_OFF (WARNING): Autoscaling is turned off. The number of instances in
2161
2216
  # the group won't change automatically. The autoscaling configuration is
2162
2217
  # preserved.
2163
- # - MODE_ONLY_UP (WARNING): Autoscaling is in the "Autoscale only up" mode. The
2218
+ # - MODE_ONLY_UP (WARNING): Autoscaling is in the "Autoscale only out" mode. The
2164
2219
  # autoscaler can add instances but not remove any.
2165
2220
  # - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): The instance group cannot be
2166
2221
  # autoscaled because it has more than one backend service attached to it.
@@ -2286,11 +2341,10 @@ module Google
2286
2341
  class AutoscalingPolicy
2287
2342
  include Google::Apis::Core::Hashable
2288
2343
 
2289
- # The number of seconds that the autoscaler should wait before it starts
2290
- # collecting information from a new instance. This prevents the autoscaler from
2291
- # collecting information when the instance is initializing, during which the
2292
- # collected usage would not be reliable. The default time autoscaler waits is 60
2293
- # seconds.
2344
+ # The number of seconds that the autoscaler waits before it starts collecting
2345
+ # information from a new instance. This prevents the autoscaler from collecting
2346
+ # information when the instance is initializing, during which the collected
2347
+ # usage would not be reliable. The default time autoscaler waits is 60 seconds.
2294
2348
  # Virtual machine initialization times might vary because of numerous factors.
2295
2349
  # We recommend that you test how long an instance may take to initialize. To do
2296
2350
  # this, create an instance and time the startup process.
@@ -2313,15 +2367,15 @@ module Google
2313
2367
  # @return [Google::Apis::ComputeAlpha::AutoscalingPolicyLoadBalancingUtilization]
2314
2368
  attr_accessor :load_balancing_utilization
2315
2369
 
2316
- # The maximum number of instances that the autoscaler can scale up to. This is
2370
+ # The maximum number of instances that the autoscaler can scale out to. This is
2317
2371
  # required when creating or updating an autoscaler. The maximum number of
2318
- # replicas should not be lower than minimal number of replicas.
2372
+ # replicas must not be lower than minimal number of replicas.
2319
2373
  # Corresponds to the JSON property `maxNumReplicas`
2320
2374
  # @return [Fixnum]
2321
2375
  attr_accessor :max_num_replicas
2322
2376
 
2323
- # The minimum number of replicas that the autoscaler can scale down to. This
2324
- # cannot be less than 0. If not provided, autoscaler will choose a default value
2377
+ # The minimum number of replicas that the autoscaler can scale in to. This
2378
+ # cannot be less than 0. If not provided, autoscaler chooses a default value
2325
2379
  # depending on maximum number of instances allowed.
2326
2380
  # Corresponds to the JSON property `minNumReplicas`
2327
2381
  # @return [Fixnum]
@@ -2332,8 +2386,8 @@ module Google
2332
2386
  # @return [String]
2333
2387
  attr_accessor :mode
2334
2388
 
2335
- # Configuration that allows for slower scale down so that even if Autoscaler
2336
- # recommends an abrupt scale down of a MIG, it will be throttled as specified by
2389
+ # Configuration that allows for slower scale in so that even if Autoscaler
2390
+ # recommends an abrupt scale in of a MIG, it will be throttled as specified by
2337
2391
  # the parameters below.
2338
2392
  # Corresponds to the JSON property `scaleDownControl`
2339
2393
  # @return [Google::Apis::ComputeAlpha::AutoscalingPolicyScaleDownControl]
@@ -2347,9 +2401,9 @@ module Google
2347
2401
  attr_accessor :scale_in_control
2348
2402
 
2349
2403
  # Scaling schedules defined for an autoscaler. Multiple schedules can be set on
2350
- # an autoscaler and they can overlap. During overlapping periods the greatest
2351
- # min_required_replicas of all scaling schedules will be applied. Up to 128
2352
- # scaling schedules are allowed.
2404
+ # an autoscaler, and they can overlap. During overlapping periods the greatest
2405
+ # min_required_replicas of all scaling schedules is applied. Up to 128 scaling
2406
+ # schedules are allowed.
2353
2407
  # Corresponds to the JSON property `scalingSchedules`
2354
2408
  # @return [Hash<String,Google::Apis::ComputeAlpha::AutoscalingPolicyScalingSchedule>]
2355
2409
  attr_accessor :scaling_schedules
@@ -2388,13 +2442,13 @@ module Google
2388
2442
  # @return [String]
2389
2443
  attr_accessor :predictive_method
2390
2444
 
2391
- # The target CPU utilization that the autoscaler should maintain. Must be a
2392
- # float value in the range (0, 1]. If not specified, the default is 0.6.
2393
- # If the CPU level is below the target utilization, the autoscaler scales down
2394
- # the number of instances until it reaches the minimum number of instances you
2445
+ # The target CPU utilization that the autoscaler maintains. Must be a float
2446
+ # value in the range (0, 1]. If not specified, the default is 0.6.
2447
+ # If the CPU level is below the target utilization, the autoscaler scales in the
2448
+ # number of instances until it reaches the minimum number of instances you
2395
2449
  # specified or until the average CPU of your instances reaches the target
2396
2450
  # utilization.
2397
- # If the average CPU is above the target utilization, the autoscaler scales up
2451
+ # If the average CPU is above the target utilization, the autoscaler scales out
2398
2452
  # until it reaches the maximum number of instances you specified or until the
2399
2453
  # average utilization reaches the target utilization.
2400
2454
  # Corresponds to the JSON property `utilizationTarget`
@@ -2437,11 +2491,11 @@ module Google
2437
2491
  # to scale upon. This is called a per-group metric for the purpose of
2438
2492
  # autoscaling.
2439
2493
  # If not specified, the type defaults to gce_instance.
2440
- # You should provide a filter that is selective enough to pick just one
2441
- # TimeSeries for the autoscaled group or for each of the instances (if you are
2442
- # using gce_instance resource type). If multiple TimeSeries are returned upon
2443
- # the query execution, the autoscaler will sum their respective values to obtain
2444
- # its scaling value.
2494
+ # Try to provide a filter that is selective enough to pick just one TimeSeries
2495
+ # for the autoscaled group or for each of the instances (if you are using
2496
+ # gce_instance resource type). If multiple TimeSeries are returned upon the
2497
+ # query execution, the autoscaler will sum their respective values to obtain its
2498
+ # scaling value.
2445
2499
  # Corresponds to the JSON property `filter`
2446
2500
  # @return [String]
2447
2501
  attr_accessor :filter
@@ -2455,9 +2509,9 @@ module Google
2455
2509
 
2456
2510
  # If scaling is based on a per-group metric value that represents the total
2457
2511
  # amount of work to be done or resource usage, set this value to an amount
2458
- # assigned for a single instance of the scaled group. Autoscaler will keep the
2459
- # number of instances proportional to the value of this metric, the metric
2460
- # itself should not change value due to group resizing.
2512
+ # assigned for a single instance of the scaled group. Autoscaler keeps the
2513
+ # number of instances proportional to the value of this metric. The metric
2514
+ # itself does not change value due to group resizing.
2461
2515
  # A good metric to use with the target is for example pubsub.googleapis.com/
2462
2516
  # subscription/num_undelivered_messages or a custom metric exporting the total
2463
2517
  # number of requests coming to your instances.
@@ -2468,12 +2522,12 @@ module Google
2468
2522
  # @return [Float]
2469
2523
  attr_accessor :single_instance_assignment
2470
2524
 
2471
- # The target value of the metric that autoscaler should maintain. This must be a
2525
+ # The target value of the metric that autoscaler maintains. This must be a
2472
2526
  # positive value. A utilization metric scales number of virtual machines
2473
2527
  # handling requests to increase or decrease proportionally to the metric.
2474
2528
  # For example, a good metric to use as a utilization_target is https://www.
2475
2529
  # googleapis.com/compute/v1/instance/network/received_bytes_count. The
2476
- # autoscaler will work to keep this value constant for each of the instances.
2530
+ # autoscaler works to keep this value constant for each of the instances.
2477
2531
  # Corresponds to the JSON property `utilizationTarget`
2478
2532
  # @return [Float]
2479
2533
  attr_accessor :utilization_target
@@ -2503,7 +2557,7 @@ module Google
2503
2557
  include Google::Apis::Core::Hashable
2504
2558
 
2505
2559
  # Fraction of backend capacity utilization (set in HTTP(S) load balancing
2506
- # configuration) that autoscaler should maintain. Must be a positive float value.
2560
+ # configuration) that the autoscaler maintains. Must be a positive float value.
2507
2561
  # If not defined, the default is 0.8.
2508
2562
  # Corresponds to the JSON property `utilizationTarget`
2509
2563
  # @return [Float]
@@ -2519,8 +2573,8 @@ module Google
2519
2573
  end
2520
2574
  end
2521
2575
 
2522
- # Configuration that allows for slower scale down so that even if Autoscaler
2523
- # recommends an abrupt scale down of a MIG, it will be throttled as specified by
2576
+ # Configuration that allows for slower scale in so that even if Autoscaler
2577
+ # recommends an abrupt scale in of a MIG, it will be throttled as specified by
2524
2578
  # the parameters below.
2525
2579
  class AutoscalingPolicyScaleDownControl
2526
2580
  include Google::Apis::Core::Hashable
@@ -2530,8 +2584,8 @@ module Google
2530
2584
  # @return [Google::Apis::ComputeAlpha::FixedOrPercent]
2531
2585
  attr_accessor :max_scaled_down_replicas
2532
2586
 
2533
- # How long back autoscaling should look when computing recommendations to
2534
- # include directives regarding slower scale down, as described above.
2587
+ # How far back autoscaling looks when computing recommendations to include
2588
+ # directives regarding slower scale in, as described above.
2535
2589
  # Corresponds to the JSON property `timeWindowSec`
2536
2590
  # @return [Fixnum]
2537
2591
  attr_accessor :time_window_sec
@@ -2558,8 +2612,8 @@ module Google
2558
2612
  # @return [Google::Apis::ComputeAlpha::FixedOrPercent]
2559
2613
  attr_accessor :max_scaled_in_replicas
2560
2614
 
2561
- # How long back autoscaling should look when computing recommendations to
2562
- # include directives regarding slower scale in, as described above.
2615
+ # How far back autoscaling looks when computing recommendations to include
2616
+ # directives regarding slower scale in, as described above.
2563
2617
  # Corresponds to the JSON property `timeWindowSec`
2564
2618
  # @return [Fixnum]
2565
2619
  attr_accessor :time_window_sec
@@ -2586,41 +2640,40 @@ module Google
2586
2640
  # @return [String]
2587
2641
  attr_accessor :description
2588
2642
 
2589
- # A boolean value that specifies if a scaling schedule can influence autoscaler
2590
- # recommendations. If set to true, then a scaling schedule has no effect. This
2591
- # field is optional and its value is false by default.
2643
+ # A boolean value that specifies whether a scaling schedule can influence
2644
+ # autoscaler recommendations. If set to true, then a scaling schedule has no
2645
+ # effect. This field is optional, and its value is false by default.
2592
2646
  # Corresponds to the JSON property `disabled`
2593
2647
  # @return [Boolean]
2594
2648
  attr_accessor :disabled
2595
2649
  alias_method :disabled?, :disabled
2596
2650
 
2597
- # The duration of time intervals (in seconds) for which this scaling schedule
2598
- # will be running. The minimum allowed value is 300. This field is required.
2651
+ # The duration of time intervals, in seconds, for which this scaling schedule is
2652
+ # to run. The minimum allowed value is 300. This field is required.
2599
2653
  # Corresponds to the JSON property `durationSec`
2600
2654
  # @return [Fixnum]
2601
2655
  attr_accessor :duration_sec
2602
2656
 
2603
- # Minimum number of VM instances that autoscaler will recommend in time
2657
+ # The minimum number of VM instances that the autoscaler will recommend in time
2604
2658
  # intervals starting according to schedule. This field is required.
2605
2659
  # Corresponds to the JSON property `minRequiredReplicas`
2606
2660
  # @return [Fixnum]
2607
2661
  attr_accessor :min_required_replicas
2608
2662
 
2609
- # The start timestamps of time intervals when this scaling schedule should
2663
+ # The start timestamps of time intervals when this scaling schedule is to
2610
2664
  # provide a scaling signal. This field uses the extended cron format (with an
2611
- # optional year field). The expression may describe a single timestamp if the
2612
- # optional year is set, in which case a scaling schedule will run once. schedule
2613
- # is interpreted with respect to time_zone. This field is required. NOTE: these
2614
- # timestamps only describe when autoscaler will start providing the scaling
2615
- # signal. The VMs will need additional time to become serving.
2665
+ # optional year field). The expression can describe a single timestamp if the
2666
+ # optional year is set, in which case the scaling schedule runs once. The
2667
+ # schedule is interpreted with respect to time_zone. This field is required.
2668
+ # Note: These timestamps only describe when autoscaler starts providing the
2669
+ # scaling signal. The VMs need additional time to become serving.
2616
2670
  # Corresponds to the JSON property `schedule`
2617
2671
  # @return [String]
2618
2672
  attr_accessor :schedule
2619
2673
 
2620
- # The time zone to be used when interpreting the schedule. The value of this
2621
- # field must be a time zone name from the tz database: http://en.wikipedia.org/
2622
- # wiki/Tz_database. This field will be assigned a default value of ?UTC? if left
2623
- # empty.
2674
+ # The time zone to use when interpreting the schedule. The value of this field
2675
+ # must be a time zone name from the tz database: http://en.wikipedia.org/wiki/
2676
+ # Tz_database. This field is assigned a default value of ?UTC? if left empty.
2624
2677
  # Corresponds to the JSON property `timeZone`
2625
2678
  # @return [String]
2626
2679
  attr_accessor :time_zone
@@ -2658,21 +2711,22 @@ module Google
2658
2711
  # parameters: maxConnections (except for regional managed instance groups),
2659
2712
  # maxConnectionsPerInstance, or maxConnectionsPerEndpoint.
2660
2713
  # If the loadBalancingScheme for the backend service is INTERNAL (internal TCP/
2661
- # UDP load balancers), you cannot specify any additional parameters.
2714
+ # UDP Load Balancers) or EXTERNAL (Network Load Balancing), you cannot specify
2715
+ # any additional parameters.
2662
2716
  #
2663
2717
  # - If the load balancing mode is RATE, the load is spread based on the rate of
2664
2718
  # HTTP requests per second (RPS).
2665
2719
  # You can use the RATE balancing mode if the protocol for the backend service is
2666
- # HTTP or HTTPS. You must specify exactly one of the following parameters:
2667
- # maxRate (except for regional managed instance groups), maxRatePerInstance, or
2668
- # maxRatePerEndpoint.
2720
+ # HTTP, HTTP2, or HTTPS. You must specify exactly one of the following
2721
+ # parameters: maxRate (except for regional managed instance groups),
2722
+ # maxRatePerInstance, or maxRatePerEndpoint.
2669
2723
  #
2670
2724
  # - If the load balancing mode is UTILIZATION, the load is spread based on the
2671
2725
  # backend utilization of instances in an instance group.
2672
2726
  # You can use the UTILIZATION balancing mode if the loadBalancingScheme of the
2673
- # backend service is EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED and
2674
- # the backends are instance groups. There are no restrictions on the backend
2675
- # service protocol.
2727
+ # backend service is EXTERNAL (except Network Load Balancing),
2728
+ # INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED and the backends are instance
2729
+ # groups. There are no restrictions on the backend service protocol.
2676
2730
  # Corresponds to the JSON property `balancingMode`
2677
2731
  # @return [String]
2678
2732
  attr_accessor :balancing_mode
@@ -2684,7 +2738,8 @@ module Google
2684
2738
  # available capacity. Valid range is 0.0 and [0.1,1.0]. You cannot configure a
2685
2739
  # setting larger than 0 and smaller than 0.1. You cannot configure a setting of
2686
2740
  # 0 when there is only one backend attached to the backend service.
2687
- # This cannot be used for internal load balancing.
2741
+ # This cannot be used for Internal TCP/UDP Load Balancing and Network Load
2742
+ # Balancing.
2688
2743
  # Corresponds to the JSON property `capacityScaler`
2689
2744
  # @return [Float]
2690
2745
  attr_accessor :capacity_scaler
@@ -2706,14 +2761,16 @@ module Google
2706
2761
  # resource. The type of backend that a backend service supports depends on the
2707
2762
  # backend service's loadBalancingScheme.
2708
2763
  #
2709
- # - When the loadBalancingScheme for the backend service is EXTERNAL,
2710
- # INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, the backend can be either an
2711
- # instance group or a NEG. The backends on the backend service must be either
2712
- # all instance groups or all NEGs. You cannot mix instance group and NEG
2713
- # backends on the same backend service.
2714
- # - When the loadBalancingScheme for the backend service is INTERNAL, the
2715
- # backend must be an instance group in the same region as the backend service.
2716
- # NEGs are not supported.
2764
+ # - When the loadBalancingScheme for the backend service is EXTERNAL (except
2765
+ # Network Load Balancing), INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED , the
2766
+ # backend can be either an instance group or a NEG. The backends on the backend
2767
+ # service must be either all instance groups or all NEGs. You cannot mix
2768
+ # instance group and NEG backends on the same backend service.
2769
+ # - When the loadBalancingScheme for the backend service is EXTERNAL for Network
2770
+ # Load Balancing or INTERNAL for Internal TCP/UDP Load Balancing, the backend
2771
+ # must be an instance group. NEGs are not supported.
2772
+ # For regional services, the backend must be in the same region as the backend
2773
+ # service.
2717
2774
  # You must use the fully-qualified URL (starting with https://www.googleapis.com/
2718
2775
  # ) to specify the instance group or NEG. Partial URLs are not supported.
2719
2776
  # Corresponds to the JSON property `group`
@@ -2725,11 +2782,12 @@ module Google
2725
2782
  # except for regional managed instance groups). If the backend's balancingMode
2726
2783
  # is UTILIZATION, this is an optional parameter. If the backend's balancingMode
2727
2784
  # is CONNECTION, and backend is attached to a backend service whose
2728
- # loadBalancingScheme is EXTERNAL, you must specify either this parameter,
2729
- # maxConnectionsPerInstance, or maxConnectionsPerEndpoint.
2730
- # Not available if the backend's balancingMode is RATE. If the
2731
- # loadBalancingScheme is INTERNAL, then maxConnections is not supported, even
2732
- # though the backend requires a balancing mode of CONNECTION.
2785
+ # loadBalancingScheme is EXTERNAL (except Network Load Balancing), you must
2786
+ # specify either this parameter, maxConnectionsPerInstance, or
2787
+ # maxConnectionsPerEndpoint.
2788
+ # Not available if the backend's balancingMode is RATE. Cannot be specified for
2789
+ # Network Load Balancing or Internal TCP/UDP Load Balancing, even though those
2790
+ # load balancers require a balancing mode of CONNECTION.
2733
2791
  # Corresponds to the JSON property `maxConnections`
2734
2792
  # @return [Fixnum]
2735
2793
  attr_accessor :max_connections
@@ -2737,12 +2795,13 @@ module Google
2737
2795
  # Defines a target maximum number of simultaneous connections for an endpoint of
2738
2796
  # a NEG. This is multiplied by the number of endpoints in the NEG to implicitly
2739
2797
  # calculate a maximum number of target maximum simultaneous connections for the
2740
- # NEG. If the backend's balancingMode is CONNECTION, and the backend is attached
2741
- # to a backend service whose loadBalancingScheme is EXTERNAL, you must specify
2742
- # either this parameter, maxConnections, or maxConnectionsPerInstance.
2743
- # Not available if the backend's balancingMode is RATE. Internal TCP/UDP load
2744
- # balancing does not support setting maxConnectionsPerEndpoint even though its
2745
- # backends require a balancing mode of CONNECTION.
2798
+ # NEG. If the backend's balancingMode is CONNECTION, and backend is attached to
2799
+ # a backend service whose loadBalancingScheme is EXTERNAL (except Network Load
2800
+ # Balancing), you must specify either this parameter, maxConnections, or
2801
+ # maxConnectionsPerInstance.
2802
+ # Not available if the backend's balancingMode is RATE. Cannot be specified for
2803
+ # Network Load Balancing or Internal TCP/UDP Load Balancing, even though those
2804
+ # load balancers require a balancing mode of CONNECTION.
2746
2805
  # Corresponds to the JSON property `maxConnectionsPerEndpoint`
2747
2806
  # @return [Fixnum]
2748
2807
  attr_accessor :max_connections_per_endpoint
@@ -2753,11 +2812,11 @@ module Google
2753
2812
  # connections for the whole instance group. If the backend's balancingMode is
2754
2813
  # UTILIZATION, this is an optional parameter. If the backend's balancingMode is
2755
2814
  # CONNECTION, and backend is attached to a backend service whose
2756
- # loadBalancingScheme is EXTERNAL, you must specify either this parameter,
2757
- # maxConnections, or maxConnectionsPerEndpoint.
2758
- # Not available if the backend's balancingMode is RATE. Internal TCP/UDP load
2759
- # balancing does not support setting maxConnectionsPerInstance even though its
2760
- # backends require a balancing mode of CONNECTION.
2815
+ # loadBalancingScheme is EXTERNAL (except Network Load Balancing), you must
2816
+ # specify either this parameter, maxConnections, or maxConnectionsPerEndpoint.
2817
+ # Not available if the backend's balancingMode is RATE. Cannot be specified for
2818
+ # Network Load Balancing or Internal TCP/UDP Load Balancing, even though those
2819
+ # load balancers require a balancing mode of CONNECTION.
2761
2820
  # Corresponds to the JSON property `maxConnectionsPerInstance`
2762
2821
  # @return [Fixnum]
2763
2822
  attr_accessor :max_connections_per_instance
@@ -2860,6 +2919,12 @@ module Google
2860
2919
  # @return [String]
2861
2920
  attr_accessor :description
2862
2921
 
2922
+ # [Output Only] The resource URL for the edge security policy associated with
2923
+ # this backend bucket.
2924
+ # Corresponds to the JSON property `edgeSecurityPolicy`
2925
+ # @return [String]
2926
+ attr_accessor :edge_security_policy
2927
+
2863
2928
  # If true, enable Cloud CDN for this BackendBucket.
2864
2929
  # Corresponds to the JSON property `enableCdn`
2865
2930
  # @return [Boolean]
@@ -2907,6 +2972,7 @@ module Google
2907
2972
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
2908
2973
  @custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
2909
2974
  @description = args[:description] if args.key?(:description)
2975
+ @edge_security_policy = args[:edge_security_policy] if args.key?(:edge_security_policy)
2910
2976
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
2911
2977
  @id = args[:id] if args.key?(:id)
2912
2978
  @kind = args[:kind] if args.key?(:kind)
@@ -2978,12 +3044,17 @@ module Google
2978
3044
 
2979
3045
  # Negative caching allows per-status code TTLs to be set, in order to apply fine-
2980
3046
  # grained caching for common errors or redirects. This can reduce the load on
2981
- # your origin and improve end-user experience by reducing response latency. By
2982
- # default, Cloud CDN will apply the following default TTLs to these status codes:
2983
- # HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not
2984
- # Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method
2985
- # Not Found), 421 (Misdirected Request), 501 (Not Implemented): 60s These
2986
- # defaults can be overridden in negative_caching_policy
3047
+ # your origin and improve end-user experience by reducing response latency. When
3048
+ # the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, negative
3049
+ # caching applies to responses with the specified response code that lack any
3050
+ # Cache-Control, Expires, or Pragma: no-cache directives. When the cache mode is
3051
+ # set to FORCE_CACHE_ALL, negative caching applies to all responses with the
3052
+ # specified response code, and override any caching headers. By default, Cloud
3053
+ # CDN will apply the following default TTLs to these status codes: HTTP 300 (
3054
+ # Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not Found),
3055
+ # 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method Not
3056
+ # Found), 421 (Misdirected Request), 501 (Not Implemented): 60s. These defaults
3057
+ # can be overridden in negative_caching_policy.
2987
3058
  # Corresponds to the JSON property `negativeCaching`
2988
3059
  # @return [Boolean]
2989
3060
  attr_accessor :negative_caching
@@ -3087,9 +3158,10 @@ module Google
3087
3158
  # @return [Fixnum]
3088
3159
  attr_accessor :code
3089
3160
 
3090
- # The TTL (in seconds) to cache responses with the corresponding status code for.
3091
- # The maximum allowed value is 1800s (30 minutes), noting that infrequently
3092
- # accessed objects may be evicted from the cache before the defined TTL.
3161
+ # The TTL (in seconds) for which to cache responses with the corresponding
3162
+ # status code. The maximum allowed value is 1800s (30 minutes), noting that
3163
+ # infrequently accessed objects may be evicted from the cache before the defined
3164
+ # TTL.
3093
3165
  # Corresponds to the JSON property `ttl`
3094
3166
  # @return [Fixnum]
3095
3167
  attr_accessor :ttl
@@ -3269,6 +3341,11 @@ module Google
3269
3341
  # @return [Google::Apis::ComputeAlpha::ConnectionDraining]
3270
3342
  attr_accessor :connection_draining
3271
3343
 
3344
+ # Connection Tracking configuration for this BackendService.
3345
+ # Corresponds to the JSON property `connectionTrackingPolicy`
3346
+ # @return [Google::Apis::ComputeAlpha::BackendServiceConnectionTrackingPolicy]
3347
+ attr_accessor :connection_tracking_policy
3348
+
3272
3349
  # This message defines settings for a consistent hash style load balancer.
3273
3350
  # Corresponds to the JSON property `consistentHash`
3274
3351
  # @return [Google::Apis::ComputeAlpha::ConsistentHashLoadBalancerSettings]
@@ -3295,6 +3372,12 @@ module Google
3295
3372
  # @return [String]
3296
3373
  attr_accessor :description
3297
3374
 
3375
+ # [Output Only] The resource URL for the edge security policy associated with
3376
+ # this backend service.
3377
+ # Corresponds to the JSON property `edgeSecurityPolicy`
3378
+ # @return [String]
3379
+ attr_accessor :edge_security_policy
3380
+
3298
3381
  # If true, enables Cloud CDN for the backend service. Only applicable if the
3299
3382
  # loadBalancingScheme is EXTERNAL and the protocol is HTTP or HTTPS.
3300
3383
  # Corresponds to the JSON property `enableCDN`
@@ -3302,13 +3385,14 @@ module Google
3302
3385
  attr_accessor :enable_cdn
3303
3386
  alias_method :enable_cdn?, :enable_cdn
3304
3387
 
3305
- # Applicable only to Failover for Internal TCP/UDP Load Balancing. On failover
3306
- # or failback, this field indicates whether connection draining will be honored.
3307
- # GCP has a fixed connection draining timeout of 10 minutes. A setting of true
3308
- # terminates existing TCP connections to the active pool during failover and
3309
- # failback, immediately draining traffic. A setting of false allows existing TCP
3310
- # connections to persist, even on VMs no longer in the active pool, for up to
3311
- # the duration of the connection draining timeout (10 minutes).
3388
+ # Applicable only to Failover for Internal TCP/UDP Load Balancing and Network
3389
+ # Load Balancing. On failover or failback, this field indicates whether
3390
+ # connection draining will be honored. GCP has a fixed connection draining
3391
+ # timeout of 10 minutes. A setting of true terminates existing TCP connections
3392
+ # to the active pool during failover and failback, immediately draining traffic.
3393
+ # A setting of false allows existing TCP connections to persist, even on VMs no
3394
+ # longer in the active pool, for up to the duration of the connection draining
3395
+ # timeout (10 minutes).
3312
3396
  # Corresponds to the JSON property `failoverPolicy`
3313
3397
  # @return [Google::Apis::ComputeAlpha::BackendServiceFailoverPolicy]
3314
3398
  attr_accessor :failover_policy
@@ -3353,11 +3437,11 @@ module Google
3353
3437
  # @return [String]
3354
3438
  attr_accessor :kind
3355
3439
 
3356
- # Specifies the load balancer type. Choose EXTERNAL for load balancers that
3357
- # receive traffic from external clients. Choose INTERNAL for Internal TCP/UDP
3358
- # Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load Balancing.
3359
- # Choose INTERNAL_SELF_MANAGED for Traffic Director. A backend service created
3360
- # for one type of load balancing cannot be used with another. For more
3440
+ # Specifies the load balancer type. Choose EXTERNAL for external HTTP(S), SSL
3441
+ # Proxy, TCP Proxy and Network Load Balancing. Choose INTERNAL for Internal TCP/
3442
+ # UDP Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load
3443
+ # Balancing. INTERNAL_SELF_MANAGED for Traffic Director. A backend service
3444
+ # created for one type of load balancer cannot be used with another. For more
3361
3445
  # information, refer to Choosing a load balancer.
3362
3446
  # Corresponds to the JSON property `loadBalancingScheme`
3363
3447
  # @return [String]
@@ -3412,7 +3496,7 @@ module Google
3412
3496
  attr_accessor :name
3413
3497
 
3414
3498
  # The URL of the network to which this backend service belongs. This field can
3415
- # only be spcified when the load balancing scheme is set to INTERNAL.
3499
+ # only be specified when the load balancing scheme is set to INTERNAL.
3416
3500
  # Corresponds to the JSON property `network`
3417
3501
  # @return [String]
3418
3502
  attr_accessor :network
@@ -3433,11 +3517,12 @@ module Google
3433
3517
 
3434
3518
  # A named port on a backend instance group representing the port for
3435
3519
  # communication to the backend VMs in that group. Required when the
3436
- # loadBalancingScheme is EXTERNAL, INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED
3437
- # and the backends are instance groups. The named port must be defined on each
3438
- # backend instance group. This parameter has no meaning if the backends are NEGs.
3439
- # Must be omitted when the loadBalancingScheme is INTERNAL (Internal TCP/UDP
3440
- # Load Balancing).
3520
+ # loadBalancingScheme is EXTERNAL (except Network Load Balancing),
3521
+ # INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance
3522
+ # groups. The named port must be defined on each backend instance group. This
3523
+ # parameter has no meaning if the backends are NEGs.
3524
+ # Backend services for Internal TCP/UDP Load Balancing and Network Load
3525
+ # Balancing require you omit port_name.
3441
3526
  # Corresponds to the JSON property `portName`
3442
3527
  # @return [String]
3443
3528
  attr_accessor :port_name
@@ -3482,11 +3567,12 @@ module Google
3482
3567
  # @return [String]
3483
3568
  attr_accessor :self_link_with_id
3484
3569
 
3485
- # Type of session affinity to use. The default is NONE. Session affinity is not
3486
- # applicable if the --protocol is UDP.
3487
- # When the loadBalancingScheme is EXTERNAL, possible values are NONE, CLIENT_IP,
3488
- # or GENERATED_COOKIE. You can use GENERATED_COOKIE if the protocol is HTTP or
3489
- # HTTPS.
3570
+ # Type of session affinity to use. The default is NONE.
3571
+ # When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the
3572
+ # possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.
3573
+ # * For all other load balancers that use loadBalancingScheme=EXTERNAL, the
3574
+ # possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use
3575
+ # GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS.
3490
3576
  # When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP,
3491
3577
  # CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.
3492
3578
  # When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED,
@@ -3521,11 +3607,13 @@ module Google
3521
3607
  @cdn_policy = args[:cdn_policy] if args.key?(:cdn_policy)
3522
3608
  @circuit_breakers = args[:circuit_breakers] if args.key?(:circuit_breakers)
3523
3609
  @connection_draining = args[:connection_draining] if args.key?(:connection_draining)
3610
+ @connection_tracking_policy = args[:connection_tracking_policy] if args.key?(:connection_tracking_policy)
3524
3611
  @consistent_hash = args[:consistent_hash] if args.key?(:consistent_hash)
3525
3612
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
3526
3613
  @custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers)
3527
3614
  @custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
3528
3615
  @description = args[:description] if args.key?(:description)
3616
+ @edge_security_policy = args[:edge_security_policy] if args.key?(:edge_security_policy)
3529
3617
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
3530
3618
  @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
3531
3619
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
@@ -3744,12 +3832,17 @@ module Google
3744
3832
 
3745
3833
  # Negative caching allows per-status code TTLs to be set, in order to apply fine-
3746
3834
  # grained caching for common errors or redirects. This can reduce the load on
3747
- # your origin and improve end-user experience by reducing response latency. By
3748
- # default, Cloud CDN will apply the following default TTLs to these status codes:
3749
- # HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not
3750
- # Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method
3751
- # Not Found), 421 (Misdirected Request), 501 (Not Implemented): 60s These
3752
- # defaults can be overridden in negative_caching_policy
3835
+ # your origin and improve end-user experience by reducing response latency. When
3836
+ # the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, negative
3837
+ # caching applies to responses with the specified response code that lack any
3838
+ # Cache-Control, Expires, or Pragma: no-cache directives. When the cache mode is
3839
+ # set to FORCE_CACHE_ALL, negative caching applies to all responses with the
3840
+ # specified response code, and override any caching headers. By default, Cloud
3841
+ # CDN will apply the following default TTLs to these status codes: HTTP 300 (
3842
+ # Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not Found),
3843
+ # 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method Not
3844
+ # Found), 421 (Misdirected Request), 501 (Not Implemented): 60s. These defaults
3845
+ # can be overridden in negative_caching_policy.
3753
3846
  # Corresponds to the JSON property `negativeCaching`
3754
3847
  # @return [Boolean]
3755
3848
  attr_accessor :negative_caching
@@ -3854,9 +3947,10 @@ module Google
3854
3947
  # @return [Fixnum]
3855
3948
  attr_accessor :code
3856
3949
 
3857
- # The TTL (in seconds) to cache responses with the corresponding status code for.
3858
- # The maximum allowed value is 1800s (30 minutes), noting that infrequently
3859
- # accessed objects may be evicted from the cache before the defined TTL.
3950
+ # The TTL (in seconds) for which to cache responses with the corresponding
3951
+ # status code. The maximum allowed value is 1800s (30 minutes), noting that
3952
+ # infrequently accessed objects may be evicted from the cache before the defined
3953
+ # TTL.
3860
3954
  # Corresponds to the JSON property `ttl`
3861
3955
  # @return [Fixnum]
3862
3956
  attr_accessor :ttl
@@ -3872,13 +3966,45 @@ module Google
3872
3966
  end
3873
3967
  end
3874
3968
 
3875
- # Applicable only to Failover for Internal TCP/UDP Load Balancing. On failover
3876
- # or failback, this field indicates whether connection draining will be honored.
3877
- # GCP has a fixed connection draining timeout of 10 minutes. A setting of true
3878
- # terminates existing TCP connections to the active pool during failover and
3879
- # failback, immediately draining traffic. A setting of false allows existing TCP
3880
- # connections to persist, even on VMs no longer in the active pool, for up to
3881
- # the duration of the connection draining timeout (10 minutes).
3969
+ # Connection Tracking configuration for this BackendService.
3970
+ class BackendServiceConnectionTrackingPolicy
3971
+ include Google::Apis::Core::Hashable
3972
+
3973
+ # Specifies connection persistence when backends are unhealthy. The default
3974
+ # value is DEFAULT_FOR_PROTOCOL.
3975
+ # If set to DEFAULT_FOR_PROTOCOL, the existing connections persist on unhealthy
3976
+ # backends only for connection-oriented protocols (TCP and SCTP) and only if the
3977
+ # Tracking Mode is PER_CONNECTION (default tracking mode) or the Session
3978
+ # Affinity is configured for 5-tuple. They do not persist for UDP.
3979
+ # If set to NEVER_PERSIST, after a backend becomes unhealthy, the existing
3980
+ # connections on the unhealthy backend are never persisted on the unhealthy
3981
+ # backend. They are always diverted to newly selected healthy backends (unless
3982
+ # all backends are unhealthy).
3983
+ # If set to ALWAYS_PERSIST, existing connections always persist on unhealthy
3984
+ # backends regardless of protocol and session affinity. It is generally not
3985
+ # recommended to use this mode overriding the default.
3986
+ # Corresponds to the JSON property `connectionPersistenceOnUnhealthyBackends`
3987
+ # @return [String]
3988
+ attr_accessor :connection_persistence_on_unhealthy_backends
3989
+
3990
+ def initialize(**args)
3991
+ update!(**args)
3992
+ end
3993
+
3994
+ # Update properties of this object
3995
+ def update!(**args)
3996
+ @connection_persistence_on_unhealthy_backends = args[:connection_persistence_on_unhealthy_backends] if args.key?(:connection_persistence_on_unhealthy_backends)
3997
+ end
3998
+ end
3999
+
4000
+ # Applicable only to Failover for Internal TCP/UDP Load Balancing and Network
4001
+ # Load Balancing. On failover or failback, this field indicates whether
4002
+ # connection draining will be honored. GCP has a fixed connection draining
4003
+ # timeout of 10 minutes. A setting of true terminates existing TCP connections
4004
+ # to the active pool during failover and failback, immediately draining traffic.
4005
+ # A setting of false allows existing TCP connections to persist, even on VMs no
4006
+ # longer in the active pool, for up to the duration of the connection draining
4007
+ # timeout (10 minutes).
3882
4008
  class BackendServiceFailoverPolicy
3883
4009
  include Google::Apis::Core::Hashable
3884
4010
 
@@ -3889,22 +4015,21 @@ module Google
3889
4015
  attr_accessor :disable_connection_drain_on_failover
3890
4016
  alias_method :disable_connection_drain_on_failover?, :disable_connection_drain_on_failover
3891
4017
 
3892
- # Applicable only to Failover for Internal TCP/UDP Load Balancing. If set to
3893
- # true, connections to the load balancer are dropped when all primary and all
3894
- # backup backend VMs are unhealthy. If set to false, connections are distributed
3895
- # among all primary VMs when all primary and all backup backend VMs are
3896
- # unhealthy.
3897
- # The default is false.
4018
+ # Applicable only to Failover for Internal TCP/UDP Load Balancing and Network
4019
+ # Load Balancing, If set to true, connections to the load balancer are dropped
4020
+ # when all primary and all backup backend VMs are unhealthy.If set to false,
4021
+ # connections are distributed among all primary VMs when all primary and all
4022
+ # backup backend VMs are unhealthy. The default is false.
3898
4023
  # Corresponds to the JSON property `dropTrafficIfUnhealthy`
3899
4024
  # @return [Boolean]
3900
4025
  attr_accessor :drop_traffic_if_unhealthy
3901
4026
  alias_method :drop_traffic_if_unhealthy?, :drop_traffic_if_unhealthy
3902
4027
 
3903
- # Applicable only to Failover for Internal TCP/UDP Load Balancing. The value of
3904
- # the field must be in the range [0, 1]. If the value is 0, the load balancer
3905
- # performs a failover when the number of healthy primary VMs equals zero. For
3906
- # all other values, the load balancer performs a failover when the total number
3907
- # of healthy primary VMs is less than this ratio.
4028
+ # Applicable only to Failover for Internal TCP/UDP Load Balancing and Network
4029
+ # Load Balancing. The value of the field must be in the range [0, 1]. If the
4030
+ # value is 0, the load balancer performs a failover when the number of healthy
4031
+ # primary VMs equals zero. For all other values, the load balancer performs a
4032
+ # failover when the total number of healthy primary VMs is less than this ratio.
3908
4033
  # Corresponds to the JSON property `failoverRatio`
3909
4034
  # @return [Float]
3910
4035
  attr_accessor :failover_ratio
@@ -4573,8 +4698,7 @@ module Google
4573
4698
  class Binding
4574
4699
  include Google::Apis::Core::Hashable
4575
4700
 
4576
- # A client-specified ID for this binding. Expected to be globally unique to
4577
- # support the internal bindings-by-ID API.
4701
+ #
4578
4702
  # Corresponds to the JSON property `bindingId`
4579
4703
  # @return [String]
4580
4704
  attr_accessor :binding_id
@@ -4678,6 +4802,12 @@ module Google
4678
4802
  # @return [Google::Apis::ComputeAlpha::InstanceProperties]
4679
4803
  attr_accessor :instance_properties
4680
4804
 
4805
+ # Configuration for location policy among multiple possible locations (e.g.
4806
+ # preferences for zone selection among zones in a single region).
4807
+ # Corresponds to the JSON property `locationPolicy`
4808
+ # @return [Google::Apis::ComputeAlpha::LocationPolicy]
4809
+ attr_accessor :location_policy
4810
+
4681
4811
  # The minimum number of instances to create. If no min_count is specified then
4682
4812
  # count is used as the default value. If min_count instances cannot be created,
4683
4813
  # then no instances will be created.
@@ -4685,6 +4815,21 @@ module Google
4685
4815
  # @return [Fixnum]
4686
4816
  attr_accessor :min_count
4687
4817
 
4818
+ # The string pattern used for the names of the VMs. Either name_pattern or
4819
+ # predefined_names must be set. The pattern should contain one consecutive
4820
+ # sequence of placeholder hash characters (#) with each character corresponding
4821
+ # to one digit of the generated instance name. Example: name_pattern of inst-####
4822
+ # will generate instance names like inst-0001, inst-0002, ... . If there
4823
+ # already exist instance(s) whose names match the name pattern in the same
4824
+ # project and zone, then the generated instance numbers will start after the
4825
+ # biggest existing number. For example, if there exists an instance with name
4826
+ # inst-0050, then instance names generated using the pattern inst-#### will be
4827
+ # inst-0051, inst-0052, etc. The name pattern placeholder #...# can contain up
4828
+ # to 18 characters.
4829
+ # Corresponds to the JSON property `namePattern`
4830
+ # @return [String]
4831
+ attr_accessor :name_pattern
4832
+
4688
4833
  # List of predefined names. The number of names provided must be equal to count.
4689
4834
  # Corresponds to the JSON property `predefinedNames`
4690
4835
  # @return [Array<String>]
@@ -4714,7 +4859,9 @@ module Google
4714
4859
  @count = args[:count] if args.key?(:count)
4715
4860
  @instance = args[:instance] if args.key?(:instance)
4716
4861
  @instance_properties = args[:instance_properties] if args.key?(:instance_properties)
4862
+ @location_policy = args[:location_policy] if args.key?(:location_policy)
4717
4863
  @min_count = args[:min_count] if args.key?(:min_count)
4864
+ @name_pattern = args[:name_pattern] if args.key?(:name_pattern)
4718
4865
  @predefined_names = args[:predefined_names] if args.key?(:predefined_names)
4719
4866
  @source_instance_template = args[:source_instance_template] if args.key?(:source_instance_template)
4720
4867
  end
@@ -7156,18 +7303,14 @@ module Google
7156
7303
  class DistributionPolicy
7157
7304
  include Google::Apis::Core::Hashable
7158
7305
 
7159
- # The shape to which the group converges either proactively or on resize events (
7160
- # depending on the value set in updatePolicy.instanceRedistributionType). The
7161
- # possible values are EVEN and ANY. For EVEN the group attempts to preserve a
7162
- # balanced number of instances across zones. For ANY the group creates new
7163
- # instances where resources are available to fulfill the request; as a result,
7164
- # instances may be distributed unevenly across zones in this mode. The default
7165
- # value is EVEN.
7306
+ # The distribution shape to which the group converges either proactively or on
7307
+ # resize events (depending on the value set in updatePolicy.
7308
+ # instanceRedistributionType).
7166
7309
  # Corresponds to the JSON property `targetShape`
7167
7310
  # @return [String]
7168
7311
  attr_accessor :target_shape
7169
7312
 
7170
- # Zones where the regional managed instance group will create and manage
7313
+ # Zones where the regional managed instance group will create and manage its
7171
7314
  # instances.
7172
7315
  # Corresponds to the JSON property `zones`
7173
7316
  # @return [Array<Google::Apis::ComputeAlpha::DistributionPolicyZoneConfiguration>]
@@ -8443,6 +8586,14 @@ module Google
8443
8586
  # @return [String]
8444
8587
  attr_accessor :direction
8445
8588
 
8589
+ # Denotes whether the firewall policy rule is disabled. When set to true, the
8590
+ # firewall policy rule is not enforced and traffic behaves as if it did not
8591
+ # exist. If this is unspecified, the firewall policy rule will be enabled.
8592
+ # Corresponds to the JSON property `disabled`
8593
+ # @return [Boolean]
8594
+ attr_accessor :disabled
8595
+ alias_method :disabled?, :disabled
8596
+
8446
8597
  # Denotes whether to enable logging for a particular rule. If logging is enabled,
8447
8598
  # logs will be exported to the configured export destination in Stackdriver.
8448
8599
  # Logs may be exported to BigQuery or Pub/Sub. Note: you cannot enable logging
@@ -8464,12 +8615,6 @@ module Google
8464
8615
  # @return [Google::Apis::ComputeAlpha::FirewallPolicyRuleMatcher]
8465
8616
  attr_accessor :match
8466
8617
 
8467
- # If set to true, the specified action is not enforced.
8468
- # Corresponds to the JSON property `preview`
8469
- # @return [Boolean]
8470
- attr_accessor :preview
8471
- alias_method :preview?, :preview
8472
-
8473
8618
  # An integer indicating the priority of a rule in the list. The priority must be
8474
8619
  # a positive value between 0 and 2147483647. Rules are evaluated from highest to
8475
8620
  # lowest priority where 0 is the highest priority and 2147483647 is the lowest
@@ -8490,6 +8635,17 @@ module Google
8490
8635
  # @return [Array<String>]
8491
8636
  attr_accessor :target_resources
8492
8637
 
8638
+ # A list of secure labels that controls which instances the firewall rule
8639
+ # applies to. If targetSecureLabel are specified, then the firewall rule applies
8640
+ # only to instances in the VPC network that have one of those secure labels.
8641
+ # targetSecureLabel may not be set at the same time as targetServiceAccounts. If
8642
+ # neither targetServiceAccounts nor targetSecureLabel are specified, the
8643
+ # firewall rule applies to all instances on the specified network. Maximum
8644
+ # number of target label values allowed is 256.
8645
+ # Corresponds to the JSON property `targetSecureLabels`
8646
+ # @return [Array<String>]
8647
+ attr_accessor :target_secure_labels
8648
+
8493
8649
  # A list of service accounts indicating the sets of instances that are applied
8494
8650
  # with this rule.
8495
8651
  # Corresponds to the JSON property `targetServiceAccounts`
@@ -8505,13 +8661,14 @@ module Google
8505
8661
  @action = args[:action] if args.key?(:action)
8506
8662
  @description = args[:description] if args.key?(:description)
8507
8663
  @direction = args[:direction] if args.key?(:direction)
8664
+ @disabled = args[:disabled] if args.key?(:disabled)
8508
8665
  @enable_logging = args[:enable_logging] if args.key?(:enable_logging)
8509
8666
  @kind = args[:kind] if args.key?(:kind)
8510
8667
  @match = args[:match] if args.key?(:match)
8511
- @preview = args[:preview] if args.key?(:preview)
8512
8668
  @priority = args[:priority] if args.key?(:priority)
8513
8669
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
8514
8670
  @target_resources = args[:target_resources] if args.key?(:target_resources)
8671
+ @target_secure_labels = args[:target_secure_labels] if args.key?(:target_secure_labels)
8515
8672
  @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
8516
8673
  end
8517
8674
  end
@@ -8537,6 +8694,12 @@ module Google
8537
8694
  # @return [Array<String>]
8538
8695
  attr_accessor :src_ip_ranges
8539
8696
 
8697
+ # List of firewall label values, which should be matched at the source of the
8698
+ # traffic. Maximum number of source label values allowed is 256.
8699
+ # Corresponds to the JSON property `srcSecureLabels`
8700
+ # @return [Array<String>]
8701
+ attr_accessor :src_secure_labels
8702
+
8540
8703
  def initialize(**args)
8541
8704
  update!(**args)
8542
8705
  end
@@ -8546,6 +8709,7 @@ module Google
8546
8709
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
8547
8710
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
8548
8711
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
8712
+ @src_secure_labels = args[:src_secure_labels] if args.key?(:src_secure_labels)
8549
8713
  end
8550
8714
  end
8551
8715
 
@@ -8643,29 +8807,36 @@ module Google
8643
8807
  # assigned. Methods for specifying an IP address:
8644
8808
  # * IPv4 dotted decimal, as in `100.1.2.3` * Full URL, as in https://www.
8645
8809
  # googleapis.com/compute/v1/projects/project_id/regions/region/addresses/address-
8646
- # name * Partial URL or by name, as in: * projects/project_id/regions/region/
8647
- # addresses/address-name * regions/region/addresses/address-name * global/
8648
- # addresses/address-name * address-name
8810
+ # name * Partial URL or by name, as in:
8811
+ # - projects/project_id/regions/region/addresses/address-name
8812
+ # - regions/region/addresses/address-name
8813
+ # - global/addresses/address-name
8814
+ # - address-name
8649
8815
  # The loadBalancingScheme and the forwarding rule's target determine the type of
8650
8816
  # IP address that you can use. For detailed information, refer to [IP address
8651
8817
  # specifications](/load-balancing/docs/forwarding-rule-concepts#
8652
8818
  # ip_address_specifications).
8653
8819
  # Must be set to `0.0.0.0` when the target is targetGrpcProxy that has
8654
8820
  # validateForProxyless field set to true.
8821
+ # For Private Service Connect forwarding rules that forward traffic to Google
8822
+ # APIs, IP address must be provided.
8655
8823
  # Corresponds to the JSON property `IPAddress`
8656
8824
  # @return [String]
8657
8825
  attr_accessor :ip_address
8658
8826
 
8659
- # The IP protocol to which this rule applies. For protocol forwarding, valid
8660
- # options are TCP, UDP, ESP, AH, SCTP or ICMP.
8661
- # For Internal TCP/UDP Load Balancing, the load balancing scheme is INTERNAL,
8662
- # and one of TCP or UDP are valid. For Traffic Director, the load balancing
8663
- # scheme is INTERNAL_SELF_MANAGED, and only TCPis valid. For Internal HTTP(S)
8664
- # Load Balancing, the load balancing scheme is INTERNAL_MANAGED, and only TCP is
8665
- # valid. For HTTP(S), SSL Proxy, and TCP Proxy Load Balancing, the load
8666
- # balancing scheme is EXTERNAL and only TCP is valid. For Network TCP/UDP Load
8667
- # Balancing, the load balancing scheme is EXTERNAL, and one of TCP or UDP is
8668
- # valid.
8827
+ # The IP protocol to which this rule applies.
8828
+ # For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP and ICMP.
8829
+ # The valid IP protocols are different for different load balancing products:
8830
+ # - Internal TCP/UDP Load Balancing: The load balancing scheme is INTERNAL, and
8831
+ # one of TCP, UDP or ALL is valid.
8832
+ # - Traffic Director: The load balancing scheme is INTERNAL_SELF_MANAGED, and
8833
+ # only TCP is valid.
8834
+ # - Internal HTTP(S) Load Balancing: The load balancing scheme is
8835
+ # INTERNAL_MANAGED, and only TCP is valid.
8836
+ # - HTTP(S), SSL Proxy, and TCP Proxy Load Balancing: The load balancing scheme
8837
+ # is EXTERNAL and only TCP is valid.
8838
+ # - Network Load Balancing: The load balancing scheme is EXTERNAL, and one of
8839
+ # TCP or UDP is valid.
8669
8840
  # Corresponds to the JSON property `IPProtocol`
8670
8841
  # @return [String]
8671
8842
  attr_accessor :ip_protocol
@@ -8690,9 +8861,9 @@ module Google
8690
8861
  attr_accessor :allow_global_access
8691
8862
  alias_method :allow_global_access?, :allow_global_access
8692
8863
 
8693
- # This field is only used for INTERNAL load balancing.
8694
- # For internal load balancing, this field identifies the BackendService resource
8695
- # to receive the matched traffic.
8864
+ # Identifies the backend service to which the forwarding rule sends traffic.
8865
+ # Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must
8866
+ # be omitted for all other load balancer types.
8696
8867
  # Corresponds to the JSON property `backendService`
8697
8868
  # @return [String]
8698
8869
  attr_accessor :backend_service
@@ -8774,13 +8945,12 @@ module Google
8774
8945
  # - EXTERNAL is used for:
8775
8946
  # - Classic Cloud VPN gateways
8776
8947
  # - Protocol forwarding to VMs from an external IP address
8777
- # - The following load balancers: HTTP(S), SSL Proxy, TCP Proxy, and Network TCP/
8778
- # UDP
8948
+ # - HTTP(S), SSL Proxy, TCP Proxy, and Network Load Balancing
8779
8949
  # - INTERNAL is used for:
8780
8950
  # - Protocol forwarding to VMs from an internal IP address
8781
- # - Internal TCP/UDP load balancers
8951
+ # - Internal TCP/UDP Load Balancing
8782
8952
  # - INTERNAL_MANAGED is used for:
8783
- # - Internal HTTP(S) load balancers
8953
+ # - Internal HTTP(S) Load Balancing
8784
8954
  # - INTERNAL_SELF_MANAGED is used for:
8785
8955
  # - Traffic Director
8786
8956
  # For more information about forwarding rules, refer to Forwarding rule concepts.
@@ -8819,9 +8989,11 @@ module Google
8819
8989
  attr_accessor :name
8820
8990
 
8821
8991
  # This field is not used for external load balancing.
8822
- # For internal load balancing, this field identifies the network that the load
8823
- # balanced IP should belong to for this Forwarding Rule. If this field is not
8824
- # specified, the default network will be used.
8992
+ # For Internal TCP/UDP Load Balancing, this field identifies the network that
8993
+ # the load balanced IP should belong to for this Forwarding Rule. If this field
8994
+ # is not specified, the default network will be used.
8995
+ # For Private Service Connect forwarding rules that forward traffic to Google
8996
+ # APIs, a network must be provided.
8825
8997
  # Corresponds to the JSON property `network`
8826
8998
  # @return [String]
8827
8999
  attr_accessor :network
@@ -8836,19 +9008,17 @@ module Google
8836
9008
  # @return [String]
8837
9009
  attr_accessor :network_tier
8838
9010
 
8839
- # When the load balancing scheme is EXTERNAL, INTERNAL_SELF_MANAGED and
8840
- # INTERNAL_MANAGED, you can specify a port_range. Use with a forwarding rule
8841
- # that points to a target proxy or a target pool. Do not use with a forwarding
8842
- # rule that points to a backend service. This field is used along with the
8843
- # target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy,
8844
- # TargetTcpProxy, TargetGrpcProxy, TargetVpnGateway, TargetPool, TargetInstance.
8845
- # Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed
8846
- # to ports in the specified range will be forwarded to target. Forwarding rules
8847
- # with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.
9011
+ # This field can be used only if: * Load balancing scheme is one of EXTERNAL,
9012
+ # INTERNAL_SELF_MANAGED or INTERNAL_MANAGED, and * IPProtocol is one of TCP, UDP,
9013
+ # or SCTP.
9014
+ # Packets addressed to ports in the specified range will be forwarded to target
9015
+ # or backend_service. You can only use one of ports, port_range, or allPorts.
9016
+ # The three are mutually exclusive. Forwarding rules with the same [IPAddress,
9017
+ # IPProtocol] pair must have disjoint port ranges.
8848
9018
  # Some types of forwarding target have constraints on the acceptable ports:
8849
9019
  # - TargetHttpProxy: 80, 8080
8850
9020
  # - TargetHttpsProxy: 443
8851
- # - TargetGrpcProxy: Any ports
9021
+ # - TargetGrpcProxy: no constraints
8852
9022
  # - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
8853
9023
  # 1883, 5222
8854
9024
  # - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
@@ -8858,16 +9028,17 @@ module Google
8858
9028
  # @return [String]
8859
9029
  attr_accessor :port_range
8860
9030
 
8861
- # This field is used along with the backend_service field for internal load
8862
- # balancing.
8863
- # When the load balancing scheme is INTERNAL, a list of ports can be configured,
8864
- # for example, ['80'], ['8000','9000']. Only packets addressed to these ports
8865
- # are forwarded to the backends configured with the forwarding rule.
8866
- # If the forwarding rule's loadBalancingScheme is INTERNAL, you can specify
8867
- # ports in one of the following ways:
8868
- # * A list of up to five ports, which can be non-contiguous * Keyword ALL, which
8869
- # causes the forwarding rule to forward traffic on any port of the forwarding
8870
- # rule's protocol.
9031
+ # The ports field is only supported when the forwarding rule references a
9032
+ # backend_service directly. Supported load balancing products are Internal TCP/
9033
+ # UDP Load Balancing and Network Load Balancing. Only packets addressed to the
9034
+ # specified list of ports are forwarded to backends.
9035
+ # You can only use one of ports and port_range, or allPorts. The three are
9036
+ # mutually exclusive.
9037
+ # You can specify a list of up to five ports, which can be non-contiguous.
9038
+ # For Internal TCP/UDP Load Balancing, if you specify allPorts, you should not
9039
+ # specify ports.
9040
+ # For more information, see [Port specifications](/load-balancing/docs/
9041
+ # forwarding-rule-concepts#port_specifications).
8871
9042
  # Corresponds to the JSON property `ports`
8872
9043
  # @return [Array<String>]
8873
9044
  attr_accessor :ports
@@ -8892,6 +9063,8 @@ module Google
8892
9063
 
8893
9064
  # Service Directory resources to register this forwarding rule with. Currently,
8894
9065
  # only supports a single Service Directory resource.
9066
+ # It is only supported for Internal TCP/UDP Load Balancing and Internal HTTP(S)
9067
+ # Load Balancing.
8895
9068
  # Corresponds to the JSON property `serviceDirectoryRegistrations`
8896
9069
  # @return [Array<Google::Apis::ComputeAlpha::ForwardingRuleServiceDirectoryRegistration>]
8897
9070
  attr_accessor :service_directory_registrations
@@ -8931,6 +9104,15 @@ module Google
8931
9104
  # resource. The forwarded traffic must be of a type appropriate to the target
8932
9105
  # object. For more information, see the "Target" column in [Port specifications](
8933
9106
  # /load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).
9107
+ # For Private Service Connect forwarding rules that forward traffic to Google
9108
+ # APIs, provide the name of a supported Google API bundle. Currently, the
9109
+ # supported Google API bundles include:
9110
+ #
9111
+ # - vpc-sc - GCP APIs that support VPC Service Controls. For more information
9112
+ # about which APIs support VPC Service Controls, refer to VPC-SC supported
9113
+ # products and limitations.
9114
+ # - all-apis - All GCP APIs. For more information about which APIs are supported
9115
+ # with this bundle, refer to Private Google Access-specific domains and VIPs.
8934
9116
  # Corresponds to the JSON property `target`
8935
9117
  # @return [String]
8936
9118
  attr_accessor :target
@@ -9931,12 +10113,16 @@ module Google
9931
10113
  # Google Compute Engine has two Health Check resources:
9932
10114
  # * [Global](/compute/docs/reference/rest/`$api_version`/healthChecks) * [
9933
10115
  # Regional](/compute/docs/reference/rest/`$api_version`/regionHealthChecks)
9934
- # Internal HTTP(S) load balancers must use regional health checks. Internal TCP/
9935
- # UDP load balancers can use either regional or global health checks. All other
9936
- # types of GCP load balancers and managed instance group auto-healing must use
9937
- # global health checks. For more information, read Health Check Concepts.
9938
- # To perform health checks on network load balancers, you must use either
9939
- # httpHealthChecks or httpsHealthChecks.
10116
+ # Internal HTTP(S) load balancers must use regional health checks (`compute.v1.
10117
+ # regionHealthChecks`).
10118
+ # Traffic Director must use global health checks (`compute.v1.HealthChecks`).
10119
+ # Internal TCP/UDP load balancers can use either regional or global health
10120
+ # checks (`compute.v1.regionHealthChecks` or `compute.v1.HealthChecks`).
10121
+ # External HTTP(S), TCP proxy, and SSL proxy load balancers as well as managed
10122
+ # instance group auto-healing must use global health checks (`compute.v1.
10123
+ # HealthChecks`).
10124
+ # Network load balancers must use legacy HTTP health checks (httpHealthChecks).
10125
+ # For more information, see Health checks overview.
9940
10126
  class HealthCheck
9941
10127
  include Google::Apis::Core::Hashable
9942
10128
 
@@ -10780,6 +10966,16 @@ module Google
10780
10966
  # @return [Fixnum]
10781
10967
  attr_accessor :port
10782
10968
 
10969
+ #
10970
+ # Corresponds to the JSON property `weight`
10971
+ # @return [String]
10972
+ attr_accessor :weight
10973
+
10974
+ #
10975
+ # Corresponds to the JSON property `weightError`
10976
+ # @return [String]
10977
+ attr_accessor :weight_error
10978
+
10783
10979
  def initialize(**args)
10784
10980
  update!(**args)
10785
10981
  end
@@ -10791,6 +10987,8 @@ module Google
10791
10987
  @instance = args[:instance] if args.key?(:instance)
10792
10988
  @ip_address = args[:ip_address] if args.key?(:ip_address)
10793
10989
  @port = args[:port] if args.key?(:port)
10990
+ @weight = args[:weight] if args.key?(:weight)
10991
+ @weight_error = args[:weight_error] if args.key?(:weight_error)
10794
10992
  end
10795
10993
  end
10796
10994
 
@@ -13026,6 +13224,11 @@ module Google
13026
13224
  # @return [Array<Google::Apis::ComputeAlpha::NetworkInterface>]
13027
13225
  attr_accessor :network_interfaces
13028
13226
 
13227
+ #
13228
+ # Corresponds to the JSON property `networkPerformanceConfig`
13229
+ # @return [Google::Apis::ComputeAlpha::NetworkPerformanceConfig]
13230
+ attr_accessor :network_performance_config
13231
+
13029
13232
  # PostKeyRevocationActionType of the instance.
13030
13233
  # Corresponds to the JSON property `postKeyRevocationActionType`
13031
13234
  # @return [String]
@@ -13069,6 +13272,12 @@ module Google
13069
13272
  # @return [Array<String>]
13070
13273
  attr_accessor :secure_labels
13071
13274
 
13275
+ # Secure tags to apply to this instance. These can be later modified by the
13276
+ # update method. Maximum number of secure tags allowed is 300.
13277
+ # Corresponds to the JSON property `secureTags`
13278
+ # @return [Array<String>]
13279
+ attr_accessor :secure_tags
13280
+
13072
13281
  # [Output Only] Server-defined URL for this resource.
13073
13282
  # Corresponds to the JSON property `selfLink`
13074
13283
  # @return [String]
@@ -13189,6 +13398,7 @@ module Google
13189
13398
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
13190
13399
  @name = args[:name] if args.key?(:name)
13191
13400
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
13401
+ @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
13192
13402
  @post_key_revocation_action_type = args[:post_key_revocation_action_type] if args.key?(:post_key_revocation_action_type)
13193
13403
  @preserved_state_size_gb = args[:preserved_state_size_gb] if args.key?(:preserved_state_size_gb)
13194
13404
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
@@ -13197,6 +13407,7 @@ module Google
13197
13407
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
13198
13408
  @scheduling = args[:scheduling] if args.key?(:scheduling)
13199
13409
  @secure_labels = args[:secure_labels] if args.key?(:secure_labels)
13410
+ @secure_tags = args[:secure_tags] if args.key?(:secure_tags)
13200
13411
  @self_link = args[:self_link] if args.key?(:self_link)
13201
13412
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
13202
13413
  @service_accounts = args[:service_accounts] if args.key?(:service_accounts)
@@ -13750,8 +13961,8 @@ module Google
13750
13961
  # @return [String]
13751
13962
  attr_accessor :description
13752
13963
 
13753
- # Policy specifying intended distribution of instances in regional managed
13754
- # instance group.
13964
+ # Policy specifying the intended distribution of managed instances across zones
13965
+ # in a regional managed instance group.
13755
13966
  # Corresponds to the JSON property `distributionPolicy`
13756
13967
  # @return [Google::Apis::ComputeAlpha::DistributionPolicy]
13757
13968
  attr_accessor :distribution_policy
@@ -13786,7 +13997,9 @@ module Google
13786
13997
 
13787
13998
  # The URL of the instance template that is specified for this managed instance
13788
13999
  # group. The group uses this template to create all new instances in the managed
13789
- # instance group.
14000
+ # instance group. The templates for existing instances in the group do not
14001
+ # change unless you run recreateInstances, run applyUpdatesToInstances, or set
14002
+ # the group's updatePolicy.type to PROACTIVE.
13790
14003
  # Corresponds to the JSON property `instanceTemplate`
13791
14004
  # @return [String]
13792
14005
  attr_accessor :instance_template
@@ -13809,15 +14022,6 @@ module Google
13809
14022
  # @return [Array<Google::Apis::ComputeAlpha::NamedPort>]
13810
14023
  attr_accessor :named_ports
13811
14024
 
13812
- # [Deprecated] This field is deprecated and will be removed. Prefer using the
13813
- # status field instead. Please contact cloud-updater-feedback@google.com to
13814
- # leave feedback if your workload relies on this field. [Output Only] The list
13815
- # of instance actions and the number of instances in this managed instance group
13816
- # that are pending for each of those actions.
13817
- # Corresponds to the JSON property `pendingActions`
13818
- # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerPendingActionsSummary]
13819
- attr_accessor :pending_actions
13820
-
13821
14025
  # [Output Only] The URL of the region where the managed instance group resides (
13822
14026
  # for regional resources).
13823
14027
  # Corresponds to the JSON property `region`
@@ -13884,7 +14088,7 @@ module Google
13884
14088
  # @return [Array<Google::Apis::ComputeAlpha::InstanceGroupManagerVersion>]
13885
14089
  attr_accessor :versions
13886
14090
 
13887
- # [Output Only] The URL of the zone where the managed instance group is located (
14091
+ # [Output Only] The URL of a zone where the managed instance group is located (
13888
14092
  # for zonal resources).
13889
14093
  # Corresponds to the JSON property `zone`
13890
14094
  # @return [String]
@@ -13910,7 +14114,6 @@ module Google
13910
14114
  @kind = args[:kind] if args.key?(:kind)
13911
14115
  @name = args[:name] if args.key?(:name)
13912
14116
  @named_ports = args[:named_ports] if args.key?(:named_ports)
13913
- @pending_actions = args[:pending_actions] if args.key?(:pending_actions)
13914
14117
  @region = args[:region] if args.key?(:region)
13915
14118
  @self_link = args[:self_link] if args.key?(:self_link)
13916
14119
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -14291,55 +14494,6 @@ module Google
14291
14494
  end
14292
14495
  end
14293
14496
 
14294
- #
14295
- class InstanceGroupManagerPendingActionsSummary
14296
- include Google::Apis::Core::Hashable
14297
-
14298
- # [Deprecated] This field is deprecated and will be removed. Prefer using the
14299
- # status field instead. Please contact cloud-updater-feedback@google.com to
14300
- # leave feedback if your workload relies on this field. [Output Only] The number
14301
- # of instances in the managed instance group that are pending to be created.
14302
- # Corresponds to the JSON property `creating`
14303
- # @return [Fixnum]
14304
- attr_accessor :creating
14305
-
14306
- # [Deprecated] This field is deprecated and will be removed. Prefer using the
14307
- # status field instead. Please contact cloud-updater-feedback@google.com to
14308
- # leave feedback if your workload relies on this field. [Output Only] The number
14309
- # of instances in the managed instance group that are pending to be deleted.
14310
- # Corresponds to the JSON property `deleting`
14311
- # @return [Fixnum]
14312
- attr_accessor :deleting
14313
-
14314
- # [Deprecated] This field is deprecated and will be removed. Prefer using the
14315
- # status field instead. Please contact cloud-updater-feedback@google.com to
14316
- # leave feedback if your workload relies on this field. [Output Only] The number
14317
- # of instances in the managed instance group that are pending to be recreated.
14318
- # Corresponds to the JSON property `recreating`
14319
- # @return [Fixnum]
14320
- attr_accessor :recreating
14321
-
14322
- # [Deprecated] This field is deprecated and will be removed. Prefer using the
14323
- # status field instead. Please contact cloud-updater-feedback@google.com to
14324
- # leave feedback if your workload relies on this field. [Output Only] The number
14325
- # of instances in the managed instance group that are pending to be restarted.
14326
- # Corresponds to the JSON property `restarting`
14327
- # @return [Fixnum]
14328
- attr_accessor :restarting
14329
-
14330
- def initialize(**args)
14331
- update!(**args)
14332
- end
14333
-
14334
- # Update properties of this object
14335
- def update!(**args)
14336
- @creating = args[:creating] if args.key?(:creating)
14337
- @deleting = args[:deleting] if args.key?(:deleting)
14338
- @recreating = args[:recreating] if args.key?(:recreating)
14339
- @restarting = args[:restarting] if args.key?(:restarting)
14340
- end
14341
- end
14342
-
14343
14497
  #
14344
14498
  class InstanceGroupManagerStatus
14345
14499
  include Google::Apis::Core::Hashable
@@ -14511,6 +14665,17 @@ module Google
14511
14665
  # @return [String]
14512
14666
  attr_accessor :minimal_action
14513
14667
 
14668
+ # Most disruptive action that is allowed to be taken on an instance. You can
14669
+ # specify either NONE to forbid any actions, REFRESH to allow actions that do
14670
+ # not need instance restart, RESTART to allow actions that can be applied
14671
+ # without instance replacing or REPLACE to allow all possible actions. If the
14672
+ # Updater determines that the minimal update action needed is more disruptive
14673
+ # than most disruptive allowed action you specify it will not perform the update
14674
+ # at all.
14675
+ # Corresponds to the JSON property `mostDisruptiveAllowedAction`
14676
+ # @return [String]
14677
+ attr_accessor :most_disruptive_allowed_action
14678
+
14514
14679
  # What action should be used to replace instances. See minimal_action.REPLACE
14515
14680
  # Corresponds to the JSON property `replacementMethod`
14516
14681
  # @return [String]
@@ -14536,6 +14701,7 @@ module Google
14536
14701
  @max_unavailable = args[:max_unavailable] if args.key?(:max_unavailable)
14537
14702
  @min_ready_sec = args[:min_ready_sec] if args.key?(:min_ready_sec)
14538
14703
  @minimal_action = args[:minimal_action] if args.key?(:minimal_action)
14704
+ @most_disruptive_allowed_action = args[:most_disruptive_allowed_action] if args.key?(:most_disruptive_allowed_action)
14539
14705
  @replacement_method = args[:replacement_method] if args.key?(:replacement_method)
14540
14706
  @type = args[:type] if args.key?(:type)
14541
14707
  end
@@ -14547,7 +14713,11 @@ module Google
14547
14713
 
14548
14714
  # The URL of the instance template that is specified for this managed instance
14549
14715
  # group. The group uses this template to create new instances in the managed
14550
- # instance group until the `targetSize` for this version is reached.
14716
+ # instance group until the `targetSize` for this version is reached. The
14717
+ # templates for existing instances in the group do not change unless you run
14718
+ # recreateInstances, run applyUpdatesToInstances, or set the group's
14719
+ # updatePolicy.type to PROACTIVE; in those cases, existing instances are updated
14720
+ # until the `targetSize` for this version is reached.
14551
14721
  # Corresponds to the JSON property `instanceTemplate`
14552
14722
  # @return [String]
14553
14723
  attr_accessor :instance_template
@@ -15080,7 +15250,9 @@ module Google
15080
15250
 
15081
15251
  # The URL of the instance template that is specified for this managed instance
15082
15252
  # group. The group uses this template to create all new instances in the managed
15083
- # instance group.
15253
+ # instance group. The templates for existing instances in the group do not
15254
+ # change unless you run recreateInstances, run applyUpdatesToInstances, or set
15255
+ # the group's updatePolicy.type to PROACTIVE.
15084
15256
  # Corresponds to the JSON property `instanceTemplate`
15085
15257
  # @return [String]
15086
15258
  attr_accessor :instance_template
@@ -15895,6 +16067,11 @@ module Google
15895
16067
  # @return [Array<Google::Apis::ComputeAlpha::NetworkInterface>]
15896
16068
  attr_accessor :network_interfaces
15897
16069
 
16070
+ #
16071
+ # Corresponds to the JSON property `networkPerformanceConfig`
16072
+ # @return [Google::Apis::ComputeAlpha::NetworkPerformanceConfig]
16073
+ attr_accessor :network_performance_config
16074
+
15898
16075
  # PostKeyRevocationActionType of the instance.
15899
16076
  # Corresponds to the JSON property `postKeyRevocationActionType`
15900
16077
  # @return [String]
@@ -15963,6 +16140,7 @@ module Google
15963
16140
  @metadata = args[:metadata] if args.key?(:metadata)
15964
16141
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
15965
16142
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
16143
+ @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
15966
16144
  @post_key_revocation_action_type = args[:post_key_revocation_action_type] if args.key?(:post_key_revocation_action_type)
15967
16145
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
15968
16146
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
@@ -16257,6 +16435,11 @@ module Google
16257
16435
  class InstancesGetEffectiveFirewallsResponse
16258
16436
  include Google::Apis::Core::Hashable
16259
16437
 
16438
+ # Effective firewalls from firewall policies.
16439
+ # Corresponds to the JSON property `firewallPolicys`
16440
+ # @return [Array<Google::Apis::ComputeAlpha::InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy>]
16441
+ attr_accessor :firewall_policys
16442
+
16260
16443
  # Effective firewalls on the instance.
16261
16444
  # Corresponds to the JSON property `firewalls`
16262
16445
  # @return [Array<Google::Apis::ComputeAlpha::Firewall>]
@@ -16273,11 +16456,49 @@ module Google
16273
16456
 
16274
16457
  # Update properties of this object
16275
16458
  def update!(**args)
16459
+ @firewall_policys = args[:firewall_policys] if args.key?(:firewall_policys)
16276
16460
  @firewalls = args[:firewalls] if args.key?(:firewalls)
16277
16461
  @organization_firewalls = args[:organization_firewalls] if args.key?(:organization_firewalls)
16278
16462
  end
16279
16463
  end
16280
16464
 
16465
+ #
16466
+ class InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy
16467
+ include Google::Apis::Core::Hashable
16468
+
16469
+ # [Output Only] The display name of the firewall policy.
16470
+ # Corresponds to the JSON property `displayName`
16471
+ # @return [String]
16472
+ attr_accessor :display_name
16473
+
16474
+ # [Output Only] The name of the firewall policy.
16475
+ # Corresponds to the JSON property `name`
16476
+ # @return [String]
16477
+ attr_accessor :name
16478
+
16479
+ # The rules that apply to the network.
16480
+ # Corresponds to the JSON property `rules`
16481
+ # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyRule>]
16482
+ attr_accessor :rules
16483
+
16484
+ # [Output Only] The type of the firewall policy.
16485
+ # Corresponds to the JSON property `type`
16486
+ # @return [String]
16487
+ attr_accessor :type
16488
+
16489
+ def initialize(**args)
16490
+ update!(**args)
16491
+ end
16492
+
16493
+ # Update properties of this object
16494
+ def update!(**args)
16495
+ @display_name = args[:display_name] if args.key?(:display_name)
16496
+ @name = args[:name] if args.key?(:name)
16497
+ @rules = args[:rules] if args.key?(:rules)
16498
+ @type = args[:type] if args.key?(:type)
16499
+ end
16500
+ end
16501
+
16281
16502
  # A pruned SecurityPolicy containing ID and any applicable firewall rules.
16282
16503
  class InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy
16283
16504
  include Google::Apis::Core::Hashable
@@ -16764,6 +16985,55 @@ module Google
16764
16985
  end
16765
16986
  end
16766
16987
 
16988
+ #
16989
+ class InstantSnapshotExportParams
16990
+ include Google::Apis::Core::Hashable
16991
+
16992
+ # An optional base instant snapshot that this resource is compared against. If
16993
+ # not specified, all blocks of this resource are exported. The base instant
16994
+ # snapshot and this resource must be created from the same disk. The base
16995
+ # instant snapshot must be created earlier in time than this resource.
16996
+ # Corresponds to the JSON property `baseInstantSnapshot`
16997
+ # @return [String]
16998
+ attr_accessor :base_instant_snapshot
16999
+
17000
+ # The name of an existing bucket in Cloud Storage where the changed blocks will
17001
+ # be stored. The Google Service Account must have read and write access to this
17002
+ # bucket. The bucket has to be in the same region as this resource.
17003
+ # Corresponds to the JSON property `bucketName`
17004
+ # @return [String]
17005
+ attr_accessor :bucket_name
17006
+
17007
+ # Encryption key used to encrypt the instant snapshot.
17008
+ # Corresponds to the JSON property `encryptionKey`
17009
+ # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
17010
+ attr_accessor :encryption_key
17011
+
17012
+ # Name of the output Bigstore object storing the changed blocks. Object name
17013
+ # must be less than 1024 bytes in length.
17014
+ # Corresponds to the JSON property `objectName`
17015
+ # @return [String]
17016
+ attr_accessor :object_name
17017
+
17018
+ # The format of the output file.
17019
+ # Corresponds to the JSON property `outputType`
17020
+ # @return [String]
17021
+ attr_accessor :output_type
17022
+
17023
+ def initialize(**args)
17024
+ update!(**args)
17025
+ end
17026
+
17027
+ # Update properties of this object
17028
+ def update!(**args)
17029
+ @base_instant_snapshot = args[:base_instant_snapshot] if args.key?(:base_instant_snapshot)
17030
+ @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
17031
+ @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
17032
+ @object_name = args[:object_name] if args.key?(:object_name)
17033
+ @output_type = args[:output_type] if args.key?(:output_type)
17034
+ end
17035
+ end
17036
+
16767
17037
  # Contains a list of InstantSnapshot resources.
16768
17038
  class InstantSnapshotList
16769
17039
  include Google::Apis::Core::Hashable
@@ -17193,6 +17463,11 @@ module Google
17193
17463
  # @return [String]
17194
17464
  attr_accessor :customer_router_ip_address
17195
17465
 
17466
+ # [Output Only] Dataplane version for this InterconnectAttachment.
17467
+ # Corresponds to the JSON property `dataplaneVersion`
17468
+ # @return [Fixnum]
17469
+ attr_accessor :dataplane_version
17470
+
17196
17471
  # An optional description of this resource.
17197
17472
  # Corresponds to the JSON property `description`
17198
17473
  # @return [String]
@@ -17211,7 +17486,14 @@ module Google
17211
17486
  # @return [String]
17212
17487
  attr_accessor :edge_availability_domain
17213
17488
 
17214
- # Indicates the user-supplied encryption option of this interconnect attachment.
17489
+ # Indicates the user-supplied encryption option of this interconnect attachment:
17490
+ # - NONE is the default value, which means that the attachment carries
17491
+ # unencrypted traffic. VMs can send traffic to, or receive traffic from, this
17492
+ # type of attachment.
17493
+ # - IPSEC indicates that the attachment carries only traffic encrypted by an
17494
+ # IPsec device such as an HA VPN gateway. VMs cannot directly send traffic to,
17495
+ # or receive traffic from, such an attachment. To use IPsec over Interconnect,
17496
+ # create the attachment using this option.
17215
17497
  # Corresponds to the JSON property `encryption`
17216
17498
  # @return [String]
17217
17499
  attr_accessor :encryption
@@ -17407,6 +17689,7 @@ module Google
17407
17689
  @cloud_router_ip_address = args[:cloud_router_ip_address] if args.key?(:cloud_router_ip_address)
17408
17690
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
17409
17691
  @customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address)
17692
+ @dataplane_version = args[:dataplane_version] if args.key?(:dataplane_version)
17410
17693
  @description = args[:description] if args.key?(:description)
17411
17694
  @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
17412
17695
  @encryption = args[:encryption] if args.key?(:encryption)
@@ -19330,6 +19613,47 @@ module Google
19330
19613
  end
19331
19614
  end
19332
19615
 
19616
+ # Configuration for location policy among multiple possible locations (e.g.
19617
+ # preferences for zone selection among zones in a single region).
19618
+ class LocationPolicy
19619
+ include Google::Apis::Core::Hashable
19620
+
19621
+ # Location configurations mapped by location name. Currently only zone names are
19622
+ # supported and must be represented as valid internal URLs, like: zones/us-
19623
+ # central1-a.
19624
+ # Corresponds to the JSON property `locations`
19625
+ # @return [Hash<String,Google::Apis::ComputeAlpha::LocationPolicyLocation>]
19626
+ attr_accessor :locations
19627
+
19628
+ def initialize(**args)
19629
+ update!(**args)
19630
+ end
19631
+
19632
+ # Update properties of this object
19633
+ def update!(**args)
19634
+ @locations = args[:locations] if args.key?(:locations)
19635
+ end
19636
+ end
19637
+
19638
+ #
19639
+ class LocationPolicyLocation
19640
+ include Google::Apis::Core::Hashable
19641
+
19642
+ #
19643
+ # Corresponds to the JSON property `preference`
19644
+ # @return [String]
19645
+ attr_accessor :preference
19646
+
19647
+ def initialize(**args)
19648
+ update!(**args)
19649
+ end
19650
+
19651
+ # Update properties of this object
19652
+ def update!(**args)
19653
+ @preference = args[:preference] if args.key?(:preference)
19654
+ end
19655
+ end
19656
+
19333
19657
  # Specifies what kind of log the caller must write
19334
19658
  class LogConfig
19335
19659
  include Google::Apis::Core::Hashable
@@ -20856,8 +21180,9 @@ module Google
20856
21180
  # Represents a collection of network endpoints.
20857
21181
  # A network endpoint group (NEG) defines how a set of endpoints should be
20858
21182
  # reached, whether they are reachable, and where they are located. For more
20859
- # information about using NEGs, see Setting up internet NEGs, Setting up zonal
20860
- # NEGs, or Setting up serverless NEGs. (== resource_for `$api_version`.
21183
+ # information about using NEGs, see Setting up external HTTP(S) Load Balancing
21184
+ # with internet NEGs, Setting up zonal NEGs, or Setting up external HTTP(S)
21185
+ # Load Balancing with serverless NEGs. (== resource_for `$api_version`.
20861
21186
  # networkEndpointGroups ==) (== resource_for `$api_version`.
20862
21187
  # globalNetworkEndpointGroups ==) (== resource_for `$api_version`.
20863
21188
  # regionNetworkEndpointGroups ==)
@@ -21155,7 +21480,7 @@ module Google
21155
21480
  include Google::Apis::Core::Hashable
21156
21481
 
21157
21482
  # Optional serving service.
21158
- # The service name must be 1-63 characters long, and comply with RFC1035.
21483
+ # The service name is case-sensitive and must be 1-63 characters long.
21159
21484
  # Example value: "default", "my-service".
21160
21485
  # Corresponds to the JSON property `service`
21161
21486
  # @return [String]
@@ -21173,7 +21498,7 @@ module Google
21173
21498
  attr_accessor :url_mask
21174
21499
 
21175
21500
  # Optional serving version.
21176
- # The version must be 1-63 characters long, and comply with RFC1035.
21501
+ # The version name is case-sensitive and must be 1-100 characters long.
21177
21502
  # Example value: "v1", "v2".
21178
21503
  # Corresponds to the JSON property `version`
21179
21504
  # @return [String]
@@ -21774,6 +22099,25 @@ module Google
21774
22099
  # @return [String]
21775
22100
  attr_accessor :fingerprint
21776
22101
 
22102
+ # [Output Only] The prefix length of the primary internal IPv6 range.
22103
+ # Corresponds to the JSON property `internalIpv6PrefixLength`
22104
+ # @return [Fixnum]
22105
+ attr_accessor :internal_ipv6_prefix_length
22106
+
22107
+ # An array of IPv6 access configurations for this interface. Currently, only one
22108
+ # IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig
22109
+ # specified, then this instance will have no external IPv6 Internet access.
22110
+ # Corresponds to the JSON property `ipv6AccessConfigs`
22111
+ # @return [Array<Google::Apis::ComputeAlpha::AccessConfig>]
22112
+ attr_accessor :ipv6_access_configs
22113
+
22114
+ # [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
22115
+ # accessed from the Internet. This field is always inherited from its subnetwork.
22116
+ # Valid only if stackType is IPV4_IPV6.
22117
+ # Corresponds to the JSON property `ipv6AccessType`
22118
+ # @return [String]
22119
+ attr_accessor :ipv6_access_type
22120
+
21777
22121
  # [Output Only] An IPv6 internal network address for this network interface.
21778
22122
  # Corresponds to the JSON property `ipv6Address`
21779
22123
  # @return [String]
@@ -21812,15 +22156,26 @@ module Google
21812
22156
  # @return [String]
21813
22157
  attr_accessor :network_ip
21814
22158
 
21815
- # The networking queue count for the network interface. Both Rx and Tx queues
21816
- # will be set to this number. If it's not specified by the user, a default
21817
- # number of queues will be assigned. For Virtio-net, each interface will get (
21818
- # min(#vCPU, 32) / #vNIC) queues. For gVNIC, each interface will get (min(#vCPU /
21819
- # 2, 16) / #vNIC) qeueus.
22159
+ # The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet.
22160
+ # Corresponds to the JSON property `nicType`
22161
+ # @return [String]
22162
+ attr_accessor :nic_type
22163
+
22164
+ # The networking queue count that's specified by users for the network interface.
22165
+ # Both Rx and Tx queues will be set to this number. It'll be empty if not
22166
+ # specified by the users.
21820
22167
  # Corresponds to the JSON property `queueCount`
21821
22168
  # @return [Fixnum]
21822
22169
  attr_accessor :queue_count
21823
22170
 
22171
+ # The stack type for this network interface to identify whether the IPv6 feature
22172
+ # is enabled or not. If not specified, IPV4_ONLY will be used.
22173
+ # This field can be both set at instance creation and update network interface
22174
+ # operations.
22175
+ # Corresponds to the JSON property `stackType`
22176
+ # @return [String]
22177
+ attr_accessor :stack_type
22178
+
21824
22179
  # The URL of the Subnetwork resource for this instance. If the network resource
21825
22180
  # is in legacy mode, do not specify this field. If the network is in auto subnet
21826
22181
  # mode, specifying the subnetwork is optional. If the network is in custom
@@ -21843,12 +22198,17 @@ module Google
21843
22198
  @access_configs = args[:access_configs] if args.key?(:access_configs)
21844
22199
  @alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges)
21845
22200
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
22201
+ @internal_ipv6_prefix_length = args[:internal_ipv6_prefix_length] if args.key?(:internal_ipv6_prefix_length)
22202
+ @ipv6_access_configs = args[:ipv6_access_configs] if args.key?(:ipv6_access_configs)
22203
+ @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
21846
22204
  @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
21847
22205
  @kind = args[:kind] if args.key?(:kind)
21848
22206
  @name = args[:name] if args.key?(:name)
21849
22207
  @network = args[:network] if args.key?(:network)
21850
22208
  @network_ip = args[:network_ip] if args.key?(:network_ip)
22209
+ @nic_type = args[:nic_type] if args.key?(:nic_type)
21851
22210
  @queue_count = args[:queue_count] if args.key?(:queue_count)
22211
+ @stack_type = args[:stack_type] if args.key?(:stack_type)
21852
22212
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
21853
22213
  end
21854
22214
  end
@@ -22088,6 +22448,31 @@ module Google
22088
22448
  end
22089
22449
  end
22090
22450
 
22451
+ #
22452
+ class NetworkPerformanceConfig
22453
+ include Google::Apis::Core::Hashable
22454
+
22455
+ #
22456
+ # Corresponds to the JSON property `externalIpEgressBandwidthTier`
22457
+ # @return [String]
22458
+ attr_accessor :external_ip_egress_bandwidth_tier
22459
+
22460
+ #
22461
+ # Corresponds to the JSON property `totalEgressBandwidthTier`
22462
+ # @return [String]
22463
+ attr_accessor :total_egress_bandwidth_tier
22464
+
22465
+ def initialize(**args)
22466
+ update!(**args)
22467
+ end
22468
+
22469
+ # Update properties of this object
22470
+ def update!(**args)
22471
+ @external_ip_egress_bandwidth_tier = args[:external_ip_egress_bandwidth_tier] if args.key?(:external_ip_egress_bandwidth_tier)
22472
+ @total_egress_bandwidth_tier = args[:total_egress_bandwidth_tier] if args.key?(:total_egress_bandwidth_tier)
22473
+ end
22474
+ end
22475
+
22091
22476
  # A routing configuration attached to a network resource. The message includes
22092
22477
  # the list of routers associated with the network, and a flag indicating the
22093
22478
  # type of routing behavior to enforce network-wide.
@@ -22179,6 +22564,11 @@ module Google
22179
22564
  class NetworksGetEffectiveFirewallsResponse
22180
22565
  include Google::Apis::Core::Hashable
22181
22566
 
22567
+ # Effective firewalls from firewall policy.
22568
+ # Corresponds to the JSON property `firewallPolicys`
22569
+ # @return [Array<Google::Apis::ComputeAlpha::NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy>]
22570
+ attr_accessor :firewall_policys
22571
+
22182
22572
  # Effective firewalls on the network.
22183
22573
  # Corresponds to the JSON property `firewalls`
22184
22574
  # @return [Array<Google::Apis::ComputeAlpha::Firewall>]
@@ -22195,11 +22585,49 @@ module Google
22195
22585
 
22196
22586
  # Update properties of this object
22197
22587
  def update!(**args)
22588
+ @firewall_policys = args[:firewall_policys] if args.key?(:firewall_policys)
22198
22589
  @firewalls = args[:firewalls] if args.key?(:firewalls)
22199
22590
  @organization_firewalls = args[:organization_firewalls] if args.key?(:organization_firewalls)
22200
22591
  end
22201
22592
  end
22202
22593
 
22594
+ #
22595
+ class NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy
22596
+ include Google::Apis::Core::Hashable
22597
+
22598
+ # [Output Only] The display name of the firewall policy.
22599
+ # Corresponds to the JSON property `displayName`
22600
+ # @return [String]
22601
+ attr_accessor :display_name
22602
+
22603
+ # [Output Only] The name of the firewall policy.
22604
+ # Corresponds to the JSON property `name`
22605
+ # @return [String]
22606
+ attr_accessor :name
22607
+
22608
+ # The rules that apply to the network.
22609
+ # Corresponds to the JSON property `rules`
22610
+ # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyRule>]
22611
+ attr_accessor :rules
22612
+
22613
+ # [Output Only] The type of the firewall policy.
22614
+ # Corresponds to the JSON property `type`
22615
+ # @return [String]
22616
+ attr_accessor :type
22617
+
22618
+ def initialize(**args)
22619
+ update!(**args)
22620
+ end
22621
+
22622
+ # Update properties of this object
22623
+ def update!(**args)
22624
+ @display_name = args[:display_name] if args.key?(:display_name)
22625
+ @name = args[:name] if args.key?(:name)
22626
+ @rules = args[:rules] if args.key?(:rules)
22627
+ @type = args[:type] if args.key?(:type)
22628
+ end
22629
+ end
22630
+
22203
22631
  # A pruned SecurityPolicy containing ID and any applicable firewall rules.
22204
22632
  class NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy
22205
22633
  include Google::Apis::Core::Hashable
@@ -22683,6 +23111,14 @@ module Google
22683
23111
  # @return [String]
22684
23112
  attr_accessor :duration
22685
23113
 
23114
+ # A Duration represents a fixed-length span of time represented as a count of
23115
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
23116
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
23117
+ # 000 years.
23118
+ # Corresponds to the JSON property `maintenanceDuration`
23119
+ # @return [Google::Apis::ComputeAlpha::Duration]
23120
+ attr_accessor :maintenance_duration
23121
+
22686
23122
  # Start time of the window. This must be in UTC format that resolves to one of
22687
23123
  # 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example, both 13:00-5 and 08:
22688
23124
  # 00 are valid.
@@ -22697,6 +23133,7 @@ module Google
22697
23133
  # Update properties of this object
22698
23134
  def update!(**args)
22699
23135
  @duration = args[:duration] if args.key?(:duration)
23136
+ @maintenance_duration = args[:maintenance_duration] if args.key?(:maintenance_duration)
22700
23137
  @start_time = args[:start_time] if args.key?(:start_time)
22701
23138
  end
22702
23139
  end
@@ -26851,6 +27288,12 @@ module Google
26851
27288
  # @return [String]
26852
27289
  attr_accessor :ip_cidr_range
26853
27290
 
27291
+ # If true, the prefix will be live migrated.
27292
+ # Corresponds to the JSON property `isLiveMigration`
27293
+ # @return [Boolean]
27294
+ attr_accessor :is_live_migration
27295
+ alias_method :is_live_migration?, :is_live_migration
27296
+
26854
27297
  # [Output Only] Type of the resource. Always compute#publicDelegatedPrefix for
26855
27298
  # public delegated prefixes.
26856
27299
  # Corresponds to the JSON property `kind`
@@ -26913,6 +27356,7 @@ module Google
26913
27356
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
26914
27357
  @id = args[:id] if args.key?(:id)
26915
27358
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
27359
+ @is_live_migration = args[:is_live_migration] if args.key?(:is_live_migration)
26916
27360
  @kind = args[:kind] if args.key?(:kind)
26917
27361
  @name = args[:name] if args.key?(:name)
26918
27362
  @parent_prefix = args[:parent_prefix] if args.key?(:parent_prefix)
@@ -28235,6 +28679,14 @@ module Google
28235
28679
  # @return [Array<String>]
28236
28680
  attr_accessor :instances
28237
28681
 
28682
+ # If false and the request contains references to instances that cannot be
28683
+ # deleted (that is, instances that are not in the group or are already deleted),
28684
+ # the request fails. Otherwise, such instances are ignored.
28685
+ # Corresponds to the JSON property `skipInapplicableInstances`
28686
+ # @return [Boolean]
28687
+ attr_accessor :skip_inapplicable_instances
28688
+ alias_method :skip_inapplicable_instances?, :skip_inapplicable_instances
28689
+
28238
28690
  def initialize(**args)
28239
28691
  update!(**args)
28240
28692
  end
@@ -28242,6 +28694,7 @@ module Google
28242
28694
  # Update properties of this object
28243
28695
  def update!(**args)
28244
28696
  @instances = args[:instances] if args.key?(:instances)
28697
+ @skip_inapplicable_instances = args[:skip_inapplicable_instances] if args.key?(:skip_inapplicable_instances)
28245
28698
  end
28246
28699
  end
28247
28700
 
@@ -28667,6 +29120,25 @@ module Google
28667
29120
  end
28668
29121
  end
28669
29122
 
29123
+ #
29124
+ class RegionInstantSnapshotsExportRequest
29125
+ include Google::Apis::Core::Hashable
29126
+
29127
+ # Parameters to export the changed blocks.
29128
+ # Corresponds to the JSON property `exportParams`
29129
+ # @return [Google::Apis::ComputeAlpha::InstantSnapshotExportParams]
29130
+ attr_accessor :export_params
29131
+
29132
+ def initialize(**args)
29133
+ update!(**args)
29134
+ end
29135
+
29136
+ # Update properties of this object
29137
+ def update!(**args)
29138
+ @export_params = args[:export_params] if args.key?(:export_params)
29139
+ end
29140
+ end
29141
+
28670
29142
  # Contains a list of region resources.
28671
29143
  class RegionList
28672
29144
  include Google::Apis::Core::Hashable
@@ -29012,6 +29484,11 @@ module Google
29012
29484
  # @return [String]
29013
29485
  attr_accessor :self_link_with_id
29014
29486
 
29487
+ # Share-settings for shared-reservation
29488
+ # Corresponds to the JSON property `shareSettings`
29489
+ # @return [Google::Apis::ComputeAlpha::AllocationShareSettings]
29490
+ attr_accessor :share_settings
29491
+
29015
29492
  # This reservation type allows to pre allocate specific instance configuration.
29016
29493
  # Corresponds to the JSON property `specificReservation`
29017
29494
  # @return [Google::Apis::ComputeAlpha::AllocationSpecificSkuReservation]
@@ -29050,6 +29527,7 @@ module Google
29050
29527
  @name = args[:name] if args.key?(:name)
29051
29528
  @self_link = args[:self_link] if args.key?(:self_link)
29052
29529
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
29530
+ @share_settings = args[:share_settings] if args.key?(:share_settings)
29053
29531
  @specific_reservation = args[:specific_reservation] if args.key?(:specific_reservation)
29054
29532
  @specific_reservation_required = args[:specific_reservation_required] if args.key?(:specific_reservation_required)
29055
29533
  @status = args[:status] if args.key?(:status)
@@ -30410,8 +30888,8 @@ module Google
30410
30888
  # @return [String]
30411
30889
  attr_accessor :description
30412
30890
 
30413
- # The destination range of outgoing packets that this route applies to. Only
30414
- # IPv4 is supported.
30891
+ # The destination range of outgoing packets that this route applies to. Both
30892
+ # IPv4 and IPv6 are supported.
30415
30893
  # Corresponds to the JSON property `destRange`
30416
30894
  # @return [String]
30417
30895
  attr_accessor :dest_range
@@ -30450,8 +30928,9 @@ module Google
30450
30928
  attr_accessor :next_hop_gateway
30451
30929
 
30452
30930
  # The URL to a forwarding rule of type loadBalancingScheme=INTERNAL that should
30453
- # handle matching packets. You can only specify the forwarding rule as a partial
30454
- # or full URL. For example, the following are all valid URLs:
30931
+ # handle matching packets or the IP address of the forwarding Rule. For example,
30932
+ # the following are all valid URLs:
30933
+ # - 10.128.0.56
30455
30934
  # - https://www.googleapis.com/compute/v1/projects/project/regions/region/
30456
30935
  # forwardingRules/forwardingRule
30457
30936
  # - regions/region/forwardingRules/forwardingRule
@@ -30763,6 +31242,13 @@ module Google
30763
31242
  # @return [String]
30764
31243
  attr_accessor :description
30765
31244
 
31245
+ # Field to indicate if a router is dedicated to use with encrypted Interconnect
31246
+ # Attachment (Encrypted Interconnect feature).
31247
+ # Corresponds to the JSON property `encryptedInterconnectRouter`
31248
+ # @return [Boolean]
31249
+ attr_accessor :encrypted_interconnect_router
31250
+ alias_method :encrypted_interconnect_router?, :encrypted_interconnect_router
31251
+
30766
31252
  # [Output Only] The unique identifier for the resource. This identifier is
30767
31253
  # defined by the server.
30768
31254
  # Corresponds to the JSON property `id`
@@ -30828,6 +31314,7 @@ module Google
30828
31314
  @bgp_peers = args[:bgp_peers] if args.key?(:bgp_peers)
30829
31315
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
30830
31316
  @description = args[:description] if args.key?(:description)
31317
+ @encrypted_interconnect_router = args[:encrypted_interconnect_router] if args.key?(:encrypted_interconnect_router)
30831
31318
  @id = args[:id] if args.key?(:id)
30832
31319
  @interfaces = args[:interfaces] if args.key?(:interfaces)
30833
31320
  @kind = args[:kind] if args.key?(:kind)
@@ -31145,10 +31632,10 @@ module Google
31145
31632
  # @return [String]
31146
31633
  attr_accessor :peer_ip_address
31147
31634
 
31148
- # URI of the VM instance that is used as third party router appliances such as
31149
- # Next Gen Firewalls, Virtual Routers, SD-WAN. The VM instance must live in
31150
- # zones contained in the same region as this Cloud Router. The VM instance is
31151
- # the peer side of the BGP session.
31635
+ # URI of the VM instance that is used as third-party router appliances such as
31636
+ # Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance
31637
+ # must be located in zones contained in the same region as this Cloud Router.
31638
+ # The VM instance is the peer side of the BGP session.
31152
31639
  # Corresponds to the JSON property `routerApplianceInstance`
31153
31640
  # @return [String]
31154
31641
  attr_accessor :router_appliance_instance
@@ -31313,17 +31800,17 @@ module Google
31313
31800
  # @return [String]
31314
31801
  attr_accessor :name
31315
31802
 
31316
- # The regional private internal IP address that will be used to establish BGP
31317
- # session to a VM instance, which is used as third party router appliances such
31318
- # as Next Gen Firewalls, Virtual Routers, SD-WAN.
31803
+ # The regional private internal IP address that is used to establish BGP
31804
+ # sessions to a VM instance acting as a third-party Router Appliance, such as a
31805
+ # Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
31319
31806
  # Corresponds to the JSON property `privateIpAddress`
31320
31807
  # @return [String]
31321
31808
  attr_accessor :private_ip_address
31322
31809
 
31323
31810
  # Name of the interface that will be redundant with the current interface you
31324
31811
  # are creating. The redundantInterface must belong to the same Cloud Router as
31325
- # the interface here. To establish the BGP session to SD-WAN VM, you must create
31326
- # two BGP peers, and the two BGP peers need to be attached to two separate
31812
+ # the interface here. To establish the BGP session to a Router Appliance VM, you
31813
+ # must create two BGP peers. The two BGP peers must be attached to two separate
31327
31814
  # interfaces that are redundant with each other. The redundant_interface must be
31328
31815
  # 1-63 characters long, and comply with RFC1035. Specifically, the
31329
31816
  # redundant_interface must be 1-63 characters long and match the regular
@@ -31334,9 +31821,9 @@ module Google
31334
31821
  # @return [String]
31335
31822
  attr_accessor :redundant_interface
31336
31823
 
31337
- # The URL of the subnetwork resource this interface belongs to, it must be in
31338
- # the same region as the router. When you establish a BGP session to a VM
31339
- # instance using this interface, the VM instance must belong to the same
31824
+ # The URL of the subnetwork resource that this interface belongs to, which must
31825
+ # be in the same region as the Cloud Router. When you establish a BGP session to
31826
+ # a VM instance using this interface, the VM instance must belong to the same
31340
31827
  # subnetwork as the subnetwork specified here.
31341
31828
  # Corresponds to the JSON property `subnetwork`
31342
31829
  # @return [String]
@@ -32382,15 +32869,14 @@ module Google
32382
32869
 
32383
32870
  # [Output Only] The last time the scaling schedule became active. Note: this is
32384
32871
  # a timestamp when a schedule actually became active, not when it was planned to
32385
- # do so. The timestamp is an RFC3339 string in RFC3339 text format.
32872
+ # do so. The timestamp is in RFC3339 text format.
32386
32873
  # Corresponds to the JSON property `lastStartTime`
32387
32874
  # @return [String]
32388
32875
  attr_accessor :last_start_time
32389
32876
 
32390
- # [Output Only] The next time the scaling schedule will become active. Note:
32877
+ # [Output Only] The next time the scaling schedule is to become active. Note:
32391
32878
  # this is a timestamp when a schedule is planned to run, but the actual time
32392
- # might be slightly different. The timestamp is an RFC3339 string in RFC3339
32393
- # text format.
32879
+ # might be slightly different. The timestamp is in RFC3339 text format.
32394
32880
  # Corresponds to the JSON property `nextStartTime`
32395
32881
  # @return [String]
32396
32882
  attr_accessor :next_start_time
@@ -32447,6 +32933,13 @@ module Google
32447
32933
  # @return [Fixnum]
32448
32934
  attr_accessor :maintenance_freeze_duration_hours
32449
32935
 
32936
+ # Specifies whether this VM may be a stable fleet VM. Setting this to "Periodic"
32937
+ # designates this VM as a Stable Fleet VM.
32938
+ # See go/stable-fleet-ug for more details.
32939
+ # Corresponds to the JSON property `maintenanceInterval`
32940
+ # @return [String]
32941
+ attr_accessor :maintenance_interval
32942
+
32450
32943
  # The minimum number of virtual CPUs this instance will consume when running on
32451
32944
  # a sole-tenant node.
32452
32945
  # Corresponds to the JSON property `minNodeCpus`
@@ -32486,6 +32979,7 @@ module Google
32486
32979
  @latency_tolerant = args[:latency_tolerant] if args.key?(:latency_tolerant)
32487
32980
  @location_hint = args[:location_hint] if args.key?(:location_hint)
32488
32981
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
32982
+ @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
32489
32983
  @min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
32490
32984
  @node_affinities = args[:node_affinities] if args.key?(:node_affinities)
32491
32985
  @on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance)
@@ -32611,13 +33105,18 @@ module Google
32611
33105
  end
32612
33106
  end
32613
33107
 
32614
- # Represents a Cloud Armor Security Policy resource.
33108
+ # Represents a Google Cloud Armor security policy resource.
32615
33109
  # Only external backend services that use load balancers can reference a
32616
- # Security Policy. For more information, read Cloud Armor Security Policy
32617
- # Concepts. (== resource_for `$api_version`.securityPolicies ==)
33110
+ # security policy. For more information, see Google Cloud Armor security policy
33111
+ # overview. (== resource_for `$api_version`.securityPolicies ==)
32618
33112
  class SecurityPolicy
32619
33113
  include Google::Apis::Core::Hashable
32620
33114
 
33115
+ # Configuration options for Cloud Armor Adaptive Protection (CAAP).
33116
+ # Corresponds to the JSON property `adaptiveProtectionConfig`
33117
+ # @return [Google::Apis::ComputeAlpha::SecurityPolicyAdaptiveProtectionConfig]
33118
+ attr_accessor :adaptive_protection_config
33119
+
32621
33120
  # A list of associations that belong to this policy.
32622
33121
  # Corresponds to the JSON property `associations`
32623
33122
  # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicyAssociation>]
@@ -32642,11 +33141,11 @@ module Google
32642
33141
  # User-provided name of the Organization security plicy. The name should be
32643
33142
  # unique in the organization in which the security policy is created. This
32644
33143
  # should only be used when SecurityPolicyType is FIREWALL. The name must be 1-63
32645
- # characters long, and comply with RFC1035. Specifically, the name must be 1-63
32646
- # characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`
32647
- # which means the first character must be a lowercase letter, and all following
32648
- # characters must be a dash, lowercase letter, or digit, except the last
32649
- # character, which cannot be a dash.
33144
+ # characters long, and comply with https://www.ietf.org/rfc/rfc1035.txt.
33145
+ # Specifically, the name must be 1-63 characters long and match the regular
33146
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must
33147
+ # be a lowercase letter, and all following characters must be a dash, lowercase
33148
+ # letter, or digit, except the last character, which cannot be a dash.
32650
33149
  # Corresponds to the JSON property `displayName`
32651
33150
  # @return [String]
32652
33151
  attr_accessor :display_name
@@ -32744,6 +33243,7 @@ module Google
32744
33243
 
32745
33244
  # Update properties of this object
32746
33245
  def update!(**args)
33246
+ @adaptive_protection_config = args[:adaptive_protection_config] if args.key?(:adaptive_protection_config)
32747
33247
  @associations = args[:associations] if args.key?(:associations)
32748
33248
  @cloud_armor_config = args[:cloud_armor_config] if args.key?(:cloud_armor_config)
32749
33249
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
@@ -32764,6 +33264,52 @@ module Google
32764
33264
  end
32765
33265
  end
32766
33266
 
33267
+ # Configuration options for Cloud Armor Adaptive Protection (CAAP).
33268
+ class SecurityPolicyAdaptiveProtectionConfig
33269
+ include Google::Apis::Core::Hashable
33270
+
33271
+ # Configuration options for L7 DDoS detection.
33272
+ # Corresponds to the JSON property `layer7DdosDefenseConfig`
33273
+ # @return [Google::Apis::ComputeAlpha::SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig]
33274
+ attr_accessor :layer7_ddos_defense_config
33275
+
33276
+ def initialize(**args)
33277
+ update!(**args)
33278
+ end
33279
+
33280
+ # Update properties of this object
33281
+ def update!(**args)
33282
+ @layer7_ddos_defense_config = args[:layer7_ddos_defense_config] if args.key?(:layer7_ddos_defense_config)
33283
+ end
33284
+ end
33285
+
33286
+ # Configuration options for L7 DDoS detection.
33287
+ class SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
33288
+ include Google::Apis::Core::Hashable
33289
+
33290
+ # If set to true, enables CAAP for L7 DDoS detection.
33291
+ # Corresponds to the JSON property `enable`
33292
+ # @return [Boolean]
33293
+ attr_accessor :enable
33294
+ alias_method :enable?, :enable
33295
+
33296
+ # Rule visibility can be one of the following: STANDARD - opaque rules. (default)
33297
+ # PREMIUM - transparent rules.
33298
+ # Corresponds to the JSON property `ruleVisibility`
33299
+ # @return [String]
33300
+ attr_accessor :rule_visibility
33301
+
33302
+ def initialize(**args)
33303
+ update!(**args)
33304
+ end
33305
+
33306
+ # Update properties of this object
33307
+ def update!(**args)
33308
+ @enable = args[:enable] if args.key?(:enable)
33309
+ @rule_visibility = args[:rule_visibility] if args.key?(:rule_visibility)
33310
+ end
33311
+ end
33312
+
32767
33313
  #
32768
33314
  class SecurityPolicyAssociation
32769
33315
  include Google::Apis::Core::Hashable
@@ -33007,7 +33553,7 @@ module Google
33007
33553
  # An integer indicating the priority of a rule in the list. The priority must be
33008
33554
  # a positive value between 0 and 2147483647. Rules are evaluated from highest to
33009
33555
  # lowest priority where 0 is the highest priority and 2147483647 is the lowest
33010
- # prority.
33556
+ # priority.
33011
33557
  # Corresponds to the JSON property `priority`
33012
33558
  # @return [Fixnum]
33013
33559
  attr_accessor :priority
@@ -33018,6 +33564,13 @@ module Google
33018
33564
  # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleRateLimitOptions]
33019
33565
  attr_accessor :rate_limit_options
33020
33566
 
33567
+ # Identifier for the rule. This is only unique within the given security policy.
33568
+ # This can only be set during rule creation, if rule number is not specified it
33569
+ # will be generated by the server.
33570
+ # Corresponds to the JSON property `ruleNumber`
33571
+ # @return [Fixnum]
33572
+ attr_accessor :rule_number
33573
+
33021
33574
  # [Output Only] Calculation of the complexity of a single firewall security
33022
33575
  # policy rule.
33023
33576
  # Corresponds to the JSON property `ruleTupleCount`
@@ -33053,6 +33606,7 @@ module Google
33053
33606
  @preview = args[:preview] if args.key?(:preview)
33054
33607
  @priority = args[:priority] if args.key?(:priority)
33055
33608
  @rate_limit_options = args[:rate_limit_options] if args.key?(:rate_limit_options)
33609
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
33056
33610
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
33057
33611
  @target_resources = args[:target_resources] if args.key?(:target_resources)
33058
33612
  @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
@@ -33530,13 +34084,15 @@ module Google
33530
34084
  class ServiceAttachment
33531
34085
  include Google::Apis::Core::Hashable
33532
34086
 
33533
- #
34087
+ # The connection preference of service attachment. The value can be set to
34088
+ # ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always
34089
+ # accepts the connection from consumer forwarding rules.
33534
34090
  # Corresponds to the JSON property `connectionPreference`
33535
34091
  # @return [String]
33536
34092
  attr_accessor :connection_preference
33537
34093
 
33538
- # An array of forwarding rules for all the consumers connected to this service
33539
- # attachment.
34094
+ # [Output Only] An array of forwarding rules for all the consumers connected to
34095
+ # this service attachment.
33540
34096
  # Corresponds to the JSON property `consumerForwardingRules`
33541
34097
  # @return [Array<Google::Apis::ComputeAlpha::ServiceAttachmentConsumerForwardingRule>]
33542
34098
  attr_accessor :consumer_forwarding_rules
@@ -35183,10 +35739,10 @@ module Google
35183
35739
  end
35184
35740
  end
35185
35741
 
35186
- # Represents a Cloud Armor Security Policy resource.
35187
- # Only external backend services used by HTTP or HTTPS load balancers can
35188
- # reference a Security Policy. For more information, read read Cloud Armor
35189
- # Security Policy Concepts. (== resource_for `$api_version`.sslPolicies ==)
35742
+ # Represents an SSL Policy resource.
35743
+ # Use SSL policies to control the SSL features, such as versions and cipher
35744
+ # suites, offered by an HTTPS or SSL Proxy load balancer. For more information,
35745
+ # read SSL Policy Concepts. (== resource_for `$api_version`.sslPolicies ==)
35190
35746
  class SslPolicy
35191
35747
  include Google::Apis::Core::Hashable
35192
35748
 
@@ -35512,6 +36068,12 @@ module Google
35512
36068
  attr_accessor :enable_private_v6_access
35513
36069
  alias_method :enable_private_v6_access?, :enable_private_v6_access
35514
36070
 
36071
+ # [Output Only] The range of external IPv6 addresses that are owned by this
36072
+ # subnetwork.
36073
+ # Corresponds to the JSON property `externalIpv6Prefix`
36074
+ # @return [String]
36075
+ attr_accessor :external_ipv6_prefix
36076
+
35515
36077
  # Fingerprint of this resource. A hash of the contents stored in this object.
35516
36078
  # This field is used in optimistic locking. This field will be ignored when
35517
36079
  # inserting a Subnetwork. An up-to-date fingerprint must be provided in order to
@@ -35554,6 +36116,14 @@ module Google
35554
36116
  # @return [String]
35555
36117
  attr_accessor :ip_cidr_range
35556
36118
 
36119
+ # The access type of IPv6 address this subnet holds. It's immutable and can only
36120
+ # be specified during creation or the first time the subnet is updated into
36121
+ # IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet cannot
36122
+ # enable direct path.
36123
+ # Corresponds to the JSON property `ipv6AccessType`
36124
+ # @return [String]
36125
+ attr_accessor :ipv6_access_type
36126
+
35557
36127
  # [Output Only] The range of internal IPv6 addresses that are owned by this
35558
36128
  # subnetwork.
35559
36129
  # Corresponds to the JSON property `ipv6CidrRange`
@@ -35667,12 +36237,21 @@ module Google
35667
36237
  # @return [String]
35668
36238
  attr_accessor :self_link_with_id
35669
36239
 
35670
- # [Output Only] The state of the subnetwork, which can be one of READY or
35671
- # DRAINING. A subnetwork that is READY is ready to be used. The state of
35672
- # DRAINING is only applicable to subnetworks that have the purpose set to
36240
+ # The stack type for this subnet to identify whether the IPv6 feature is enabled
36241
+ # or not. If not specified IPV4_ONLY will be used.
36242
+ # This field can be both set at resource creation time and updated using patch.
36243
+ # Corresponds to the JSON property `stackType`
36244
+ # @return [String]
36245
+ attr_accessor :stack_type
36246
+
36247
+ # [Output Only] The state of the subnetwork, which can be one of the following
36248
+ # values: READY: Subnetwork is created and ready to use DRAINING: only
36249
+ # applicable to subnetworks that have the purpose set to
35673
36250
  # INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load
35674
36251
  # balancer are being drained. A subnetwork that is draining cannot be used or
35675
- # modified until it reaches a status of READY.
36252
+ # modified until it reaches a status of READY CREATING: Subnetwork is
36253
+ # provisioning DELETING: Subnetwork is being deleted UPDATING: Subnetwork is
36254
+ # being updated
35676
36255
  # Corresponds to the JSON property `state`
35677
36256
  # @return [String]
35678
36257
  attr_accessor :state
@@ -35689,11 +36268,13 @@ module Google
35689
36268
  @description = args[:description] if args.key?(:description)
35690
36269
  @enable_flow_logs = args[:enable_flow_logs] if args.key?(:enable_flow_logs)
35691
36270
  @enable_private_v6_access = args[:enable_private_v6_access] if args.key?(:enable_private_v6_access)
36271
+ @external_ipv6_prefix = args[:external_ipv6_prefix] if args.key?(:external_ipv6_prefix)
35692
36272
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
35693
36273
  @flow_sampling = args[:flow_sampling] if args.key?(:flow_sampling)
35694
36274
  @gateway_address = args[:gateway_address] if args.key?(:gateway_address)
35695
36275
  @id = args[:id] if args.key?(:id)
35696
36276
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
36277
+ @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
35697
36278
  @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
35698
36279
  @kind = args[:kind] if args.key?(:kind)
35699
36280
  @log_config = args[:log_config] if args.key?(:log_config)
@@ -35709,6 +36290,7 @@ module Google
35709
36290
  @secondary_ip_ranges = args[:secondary_ip_ranges] if args.key?(:secondary_ip_ranges)
35710
36291
  @self_link = args[:self_link] if args.key?(:self_link)
35711
36292
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
36293
+ @stack_type = args[:stack_type] if args.key?(:stack_type)
35712
36294
  @state = args[:state] if args.key?(:state)
35713
36295
  end
35714
36296
  end
@@ -36678,9 +37260,14 @@ module Google
36678
37260
  # @return [String]
36679
37261
  attr_accessor :name
36680
37262
 
36681
- # This field only applies when the loadBalancingScheme is INTERNAL_SELF_MANAGED.
36682
- # When set to true the Envoy binds on the IP address specified by the forwarding
36683
- # rule. Default is false.
37263
+ # This field only applies when the forwarding rule that references this target
37264
+ # proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.
37265
+ # When this field is set to true, Envoy proxies set up inbound traffic
37266
+ # interception and bind to the IP address and port specified in the forwarding
37267
+ # rule. This is generally useful when using Traffic Director to configure Envoy
37268
+ # as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy
37269
+ # proxy listens for inbound requests and handles requests when it receives them.
37270
+ # The default is false.
36684
37271
  # Corresponds to the JSON property `proxyBind`
36685
37272
  # @return [Boolean]
36686
37273
  attr_accessor :proxy_bind
@@ -37174,6 +37761,17 @@ module Google
37174
37761
  # @return [String]
37175
37762
  attr_accessor :description
37176
37763
 
37764
+ # Fingerprint of this resource. A hash of the contents stored in this object.
37765
+ # This field is used in optimistic locking. This field will be ignored when
37766
+ # inserting a TargetHttpsProxy. An up-to-date fingerprint must be provided in
37767
+ # order to patch the TargetHttpsProxy; otherwise, the request will fail with
37768
+ # error 412 conditionNotMet. To see the latest fingerprint, make a get() request
37769
+ # to retrieve the TargetHttpsProxy.
37770
+ # Corresponds to the JSON property `fingerprint`
37771
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
37772
+ # @return [String]
37773
+ attr_accessor :fingerprint
37774
+
37177
37775
  # URLs to networkservices.HttpFilter resources enabled for xDS clients using
37178
37776
  # this configuration. For example, https://networkservices.googleapis.com/beta/
37179
37777
  # projects/project/locations/locationhttpFilters/httpFilter Only filters that
@@ -37211,9 +37809,14 @@ module Google
37211
37809
  # @return [String]
37212
37810
  attr_accessor :name
37213
37811
 
37214
- # This field only applies when the loadBalancingScheme is INTERNAL_SELF_MANAGED.
37215
- # When set to true the Envoy binds on the IP address specified by the forwarding
37216
- # rule. Default is false.
37812
+ # This field only applies when the forwarding rule that references this target
37813
+ # proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.
37814
+ # When this field is set to true, Envoy proxies set up inbound traffic
37815
+ # interception and bind to the IP address and port specified in the forwarding
37816
+ # rule. This is generally useful when using Traffic Director to configure Envoy
37817
+ # as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy
37818
+ # proxy listens for inbound requests and handles requests when it receives them.
37819
+ # The default is false.
37217
37820
  # Corresponds to the JSON property `proxyBind`
37218
37821
  # @return [Boolean]
37219
37822
  attr_accessor :proxy_bind
@@ -37295,6 +37898,7 @@ module Google
37295
37898
  @certificate_map = args[:certificate_map] if args.key?(:certificate_map)
37296
37899
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
37297
37900
  @description = args[:description] if args.key?(:description)
37901
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
37298
37902
  @http_filters = args[:http_filters] if args.key?(:http_filters)
37299
37903
  @id = args[:id] if args.key?(:id)
37300
37904
  @kind = args[:kind] if args.key?(:kind)
@@ -37995,9 +38599,9 @@ module Google
37995
38599
  class TargetPool
37996
38600
  include Google::Apis::Core::Hashable
37997
38601
 
37998
- # This field is applicable only when the containing target pool is serving a
37999
- # forwarding rule as the primary pool, and its failoverRatio field is properly
38000
- # set to a value between [0, 1].
38602
+ # The server-defined URL for the resource. This field is applicable only when
38603
+ # the containing target pool is serving a forwarding rule as the primary pool,
38604
+ # and its failoverRatio field is properly set to a value between [0, 1].
38001
38605
  # backupPool and failoverRatio together define the fallback behavior of the
38002
38606
  # primary target pool: if the ratio of the healthy instances in the primary pool
38003
38607
  # is at or below failoverRatio, traffic arriving at the load-balanced IP will be
@@ -38956,6 +39560,19 @@ module Google
38956
39560
  # @return [String]
38957
39561
  attr_accessor :name
38958
39562
 
39563
+ # This field only applies when the forwarding rule that references this target
39564
+ # proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.
39565
+ # When this field is set to true, Envoy proxies set up inbound traffic
39566
+ # interception and bind to the IP address and port specified in the forwarding
39567
+ # rule. This is generally useful when using Traffic Director to configure Envoy
39568
+ # as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy
39569
+ # proxy listens for inbound requests and handles requests when it receives them.
39570
+ # The default is false.
39571
+ # Corresponds to the JSON property `proxyBind`
39572
+ # @return [Boolean]
39573
+ attr_accessor :proxy_bind
39574
+ alias_method :proxy_bind?, :proxy_bind
39575
+
38959
39576
  # Specifies the type of proxy header to append before sending data to the
38960
39577
  # backend, either NONE or PROXY_V1. The default is NONE.
38961
39578
  # Corresponds to the JSON property `proxyHeader`
@@ -38983,6 +39600,7 @@ module Google
38983
39600
  @id = args[:id] if args.key?(:id)
38984
39601
  @kind = args[:kind] if args.key?(:kind)
38985
39602
  @name = args[:name] if args.key?(:name)
39603
+ @proxy_bind = args[:proxy_bind] if args.key?(:proxy_bind)
38986
39604
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
38987
39605
  @self_link = args[:self_link] if args.key?(:self_link)
38988
39606
  @service = args[:service] if args.key?(:service)
@@ -39562,17 +40180,46 @@ module Google
39562
40180
  class TestFailure
39563
40181
  include Google::Apis::Core::Hashable
39564
40182
 
40183
+ # The actual output URL evaluated by load balancer containing the scheme, host,
40184
+ # path and query parameters.
40185
+ # Corresponds to the JSON property `actualOutputUrl`
40186
+ # @return [String]
40187
+ attr_accessor :actual_output_url
40188
+
40189
+ # Actual HTTP status code for rule with `urlRedirect` calculated by load
40190
+ # balancer
40191
+ # Corresponds to the JSON property `actualRedirectResponseCode`
40192
+ # @return [Fixnum]
40193
+ attr_accessor :actual_redirect_response_code
40194
+
39565
40195
  # BackendService or BackendBucket returned by load balancer.
39566
40196
  # Corresponds to the JSON property `actualService`
39567
40197
  # @return [String]
39568
40198
  attr_accessor :actual_service
39569
40199
 
40200
+ # The expected output URL evaluated by load balancer containing the scheme, host,
40201
+ # path and query parameters.
40202
+ # Corresponds to the JSON property `expectedOutputUrl`
40203
+ # @return [String]
40204
+ attr_accessor :expected_output_url
40205
+
40206
+ # Expected HTTP status code for rule with `urlRedirect` calculated by load
40207
+ # balancer
40208
+ # Corresponds to the JSON property `expectedRedirectResponseCode`
40209
+ # @return [Fixnum]
40210
+ attr_accessor :expected_redirect_response_code
40211
+
39570
40212
  # Expected BackendService or BackendBucket resource the given URL should be
39571
40213
  # mapped to.
39572
40214
  # Corresponds to the JSON property `expectedService`
39573
40215
  # @return [String]
39574
40216
  attr_accessor :expected_service
39575
40217
 
40218
+ # HTTP headers of the request.
40219
+ # Corresponds to the JSON property `headers`
40220
+ # @return [Array<Google::Apis::ComputeAlpha::UrlMapTestHeader>]
40221
+ attr_accessor :headers
40222
+
39576
40223
  # Host portion of the URL.
39577
40224
  # Corresponds to the JSON property `host`
39578
40225
  # @return [String]
@@ -39589,8 +40236,13 @@ module Google
39589
40236
 
39590
40237
  # Update properties of this object
39591
40238
  def update!(**args)
40239
+ @actual_output_url = args[:actual_output_url] if args.key?(:actual_output_url)
40240
+ @actual_redirect_response_code = args[:actual_redirect_response_code] if args.key?(:actual_redirect_response_code)
39592
40241
  @actual_service = args[:actual_service] if args.key?(:actual_service)
40242
+ @expected_output_url = args[:expected_output_url] if args.key?(:expected_output_url)
40243
+ @expected_redirect_response_code = args[:expected_redirect_response_code] if args.key?(:expected_redirect_response_code)
39593
40244
  @expected_service = args[:expected_service] if args.key?(:expected_service)
40245
+ @headers = args[:headers] if args.key?(:headers)
39594
40246
  @host = args[:host] if args.key?(:host)
39595
40247
  @path = args[:path] if args.key?(:path)
39596
40248
  end
@@ -40144,12 +40796,43 @@ module Google
40144
40796
  # @return [String]
40145
40797
  attr_accessor :description
40146
40798
 
40799
+ # The expected output URL evaluated by load balancer containing the scheme, host,
40800
+ # path and query parameters.
40801
+ # For rules that forward requests to backends, the test passes only when
40802
+ # expectedOutputUrl matches the request forwarded by load balancer to backends.
40803
+ # For rules with urlRewrite, the test verifies that the forwarded request
40804
+ # matches hostRewrite and pathPrefixRewrite in the urlRewrite action. When
40805
+ # service is specified, expectedOutputUrl`s scheme is ignored.
40806
+ # For rules with urlRedirect, the test passes only if expectedOutputUrl matches
40807
+ # the URL in the load balancer's redirect response. If urlRedirect specifies
40808
+ # https_redirect, the test passes only if the scheme in expectedOutputUrl is
40809
+ # also set to https. If urlRedirect specifies strip_query, the test passes only
40810
+ # if expectedOutputUrl does not contain any query parameters.
40811
+ # expectedOutputUrl is optional when service is specified.
40812
+ # Corresponds to the JSON property `expectedOutputUrl`
40813
+ # @return [String]
40814
+ attr_accessor :expected_output_url
40815
+
40816
+ # For rules with urlRedirect, the test passes only if
40817
+ # expectedRedirectResponseCode matches the HTTP status code in load balancer's
40818
+ # redirect response.
40819
+ # expectedRedirectResponseCode cannot be set when service is set.
40820
+ # Corresponds to the JSON property `expectedRedirectResponseCode`
40821
+ # @return [Fixnum]
40822
+ attr_accessor :expected_redirect_response_code
40823
+
40147
40824
  # The expected URL that should be redirected to for the host and path being
40148
40825
  # tested. [Deprecated] This field is deprecated. Use expected_output_url instead.
40149
40826
  # Corresponds to the JSON property `expectedUrlRedirect`
40150
40827
  # @return [String]
40151
40828
  attr_accessor :expected_url_redirect
40152
40829
 
40830
+ # HTTP headers for this request. If headers contains a host header, then host
40831
+ # must also match the header value.
40832
+ # Corresponds to the JSON property `headers`
40833
+ # @return [Array<Google::Apis::ComputeAlpha::UrlMapTestHeader>]
40834
+ attr_accessor :headers
40835
+
40153
40836
  # Host portion of the URL. If headers contains a host header, then host must
40154
40837
  # also match the header value.
40155
40838
  # Corresponds to the JSON property `host`
@@ -40176,13 +40859,41 @@ module Google
40176
40859
  def update!(**args)
40177
40860
  @backend_service_weight = args[:backend_service_weight] if args.key?(:backend_service_weight)
40178
40861
  @description = args[:description] if args.key?(:description)
40862
+ @expected_output_url = args[:expected_output_url] if args.key?(:expected_output_url)
40863
+ @expected_redirect_response_code = args[:expected_redirect_response_code] if args.key?(:expected_redirect_response_code)
40179
40864
  @expected_url_redirect = args[:expected_url_redirect] if args.key?(:expected_url_redirect)
40865
+ @headers = args[:headers] if args.key?(:headers)
40180
40866
  @host = args[:host] if args.key?(:host)
40181
40867
  @path = args[:path] if args.key?(:path)
40182
40868
  @service = args[:service] if args.key?(:service)
40183
40869
  end
40184
40870
  end
40185
40871
 
40872
+ # HTTP headers used in UrlMapTests.
40873
+ class UrlMapTestHeader
40874
+ include Google::Apis::Core::Hashable
40875
+
40876
+ # Header name.
40877
+ # Corresponds to the JSON property `name`
40878
+ # @return [String]
40879
+ attr_accessor :name
40880
+
40881
+ # Header value.
40882
+ # Corresponds to the JSON property `value`
40883
+ # @return [String]
40884
+ attr_accessor :value
40885
+
40886
+ def initialize(**args)
40887
+ update!(**args)
40888
+ end
40889
+
40890
+ # Update properties of this object
40891
+ def update!(**args)
40892
+ @name = args[:name] if args.key?(:name)
40893
+ @value = args[:value] if args.key?(:value)
40894
+ end
40895
+ end
40896
+
40186
40897
  # Message representing the validation result for a UrlMap.
40187
40898
  class UrlMapValidationResult
40188
40899
  include Google::Apis::Core::Hashable
@@ -42481,6 +43192,25 @@ module Google
42481
43192
  end
42482
43193
  end
42483
43194
 
43195
+ #
43196
+ class ZoneInstantSnapshotsExportRequest
43197
+ include Google::Apis::Core::Hashable
43198
+
43199
+ # Parameters to export the changed blocks.
43200
+ # Corresponds to the JSON property `exportParams`
43201
+ # @return [Google::Apis::ComputeAlpha::InstantSnapshotExportParams]
43202
+ attr_accessor :export_params
43203
+
43204
+ def initialize(**args)
43205
+ update!(**args)
43206
+ end
43207
+
43208
+ # Update properties of this object
43209
+ def update!(**args)
43210
+ @export_params = args[:export_params] if args.key?(:export_params)
43211
+ end
43212
+ end
43213
+
42484
43214
  # Contains a list of zone resources.
42485
43215
  class ZoneList
42486
43216
  include Google::Apis::Core::Hashable