google-api-client 0.37.3 → 0.38.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 (440) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +146 -0
  3. data/api_list_config.yaml +2 -0
  4. data/api_names.yaml +2 -0
  5. data/bin/generate-api +9 -1
  6. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  7. data/generated/google/apis/accesscontextmanager_v1/classes.rb +0 -36
  8. data/generated/google/apis/accesscontextmanager_v1/representations.rb +0 -6
  9. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  10. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +0 -36
  11. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +0 -6
  12. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  13. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +10 -3
  14. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  15. data/generated/google/apis/admin_directory_v1.rb +1 -1
  16. data/generated/google/apis/admin_directory_v1/classes.rb +0 -147
  17. data/generated/google/apis/admin_directory_v1/representations.rb +0 -54
  18. data/generated/google/apis/admin_directory_v1/service.rb +0 -60
  19. data/generated/google/apis/adsense_v1_4.rb +1 -1
  20. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  21. data/generated/google/apis/adsensehost_v4_1/service.rb +5 -1
  22. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  23. data/generated/google/apis/alertcenter_v1beta1/classes.rb +1 -1
  24. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  25. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +2 -2
  26. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  27. data/generated/google/apis/androidenterprise_v1/classes.rb +2 -2
  28. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  29. data/generated/google/apis/androidmanagement_v1/service.rb +2 -2
  30. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  31. data/generated/google/apis/androidpublisher_v2/classes.rb +2 -2
  32. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  33. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -2
  34. data/generated/google/apis/appengine_v1.rb +1 -1
  35. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  36. data/generated/google/apis/appengine_v1beta.rb +1 -1
  37. data/generated/google/apis/bigquery_v2.rb +1 -1
  38. data/generated/google/apis/bigquery_v2/classes.rb +224 -5
  39. data/generated/google/apis/bigquery_v2/representations.rb +65 -0
  40. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  41. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  42. data/generated/google/apis/bigqueryreservation_v1/classes.rb +413 -0
  43. data/generated/google/apis/bigqueryreservation_v1/representations.rb +194 -0
  44. data/generated/google/apis/bigqueryreservation_v1/service.rb +745 -0
  45. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  46. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +69 -20
  47. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +29 -13
  48. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +4 -39
  49. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  50. data/generated/google/apis/bigtableadmin_v1/classes.rb +20 -17
  51. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  52. data/generated/google/apis/bigtableadmin_v2/classes.rb +26 -21
  53. data/generated/google/apis/bigtableadmin_v2/service.rb +93 -53
  54. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  55. data/generated/google/apis/billingbudgets_v1beta1/service.rb +3 -3
  56. data/generated/google/apis/blogger_v2.rb +5 -4
  57. data/generated/google/apis/blogger_v2/classes.rb +297 -45
  58. data/generated/google/apis/blogger_v2/representations.rb +105 -26
  59. data/generated/google/apis/blogger_v2/service.rb +79 -134
  60. data/generated/google/apis/blogger_v3.rb +4 -3
  61. data/generated/google/apis/blogger_v3/classes.rb +60 -53
  62. data/generated/google/apis/blogger_v3/representations.rb +10 -18
  63. data/generated/google/apis/blogger_v3/service.rb +183 -463
  64. data/generated/google/apis/calendar_v3.rb +1 -1
  65. data/generated/google/apis/calendar_v3/classes.rb +1 -14
  66. data/generated/google/apis/chat_v1.rb +1 -1
  67. data/generated/google/apis/chat_v1/classes.rb +1 -1
  68. data/generated/google/apis/cloudasset_v1.rb +1 -1
  69. data/generated/google/apis/cloudasset_v1/classes.rb +81 -90
  70. data/generated/google/apis/cloudasset_v1/representations.rb +1 -6
  71. data/generated/google/apis/cloudasset_v1/service.rb +2 -2
  72. data/generated/google/apis/cloudasset_v1p1beta1.rb +34 -0
  73. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +669 -0
  74. data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +199 -0
  75. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +187 -0
  76. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  77. data/generated/google/apis/cloudbuild_v1/classes.rb +12 -1
  78. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  79. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  80. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +9 -0
  81. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +1 -0
  82. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  83. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +9 -0
  84. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +1 -0
  85. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  86. data/generated/google/apis/clouddebugger_v2/classes.rb +8 -0
  87. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  88. data/generated/google/apis/cloudidentity_v1/classes.rb +0 -561
  89. data/generated/google/apis/cloudidentity_v1/representations.rb +0 -226
  90. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  91. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +652 -2
  92. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +272 -0
  93. data/generated/google/apis/cloudidentity_v1beta1/service.rb +2 -2
  94. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  95. data/generated/google/apis/cloudresourcemanager_v1/service.rb +3 -0
  96. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  97. data/generated/google/apis/cloudsearch_v1/classes.rb +52 -50
  98. data/generated/google/apis/cloudshell_v1.rb +1 -1
  99. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  100. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  101. data/generated/google/apis/cloudtasks_v2beta2/service.rb +6 -1
  102. data/generated/google/apis/cloudtrace_v1.rb +3 -3
  103. data/generated/google/apis/cloudtrace_v1/service.rb +2 -2
  104. data/generated/google/apis/cloudtrace_v2.rb +3 -3
  105. data/generated/google/apis/cloudtrace_v2/service.rb +2 -2
  106. data/generated/google/apis/cloudtrace_v2beta1.rb +3 -3
  107. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +1 -2
  108. data/generated/google/apis/cloudtrace_v2beta1/service.rb +2 -2
  109. data/generated/google/apis/composer_v1.rb +1 -1
  110. data/generated/google/apis/composer_v1/classes.rb +178 -0
  111. data/generated/google/apis/composer_v1/representations.rb +54 -0
  112. data/generated/google/apis/composer_v1beta1.rb +1 -1
  113. data/generated/google/apis/composer_v1beta1/classes.rb +36 -5
  114. data/generated/google/apis/composer_v1beta1/representations.rb +4 -0
  115. data/generated/google/apis/compute_alpha.rb +1 -1
  116. data/generated/google/apis/compute_alpha/classes.rb +1320 -307
  117. data/generated/google/apis/compute_alpha/representations.rb +284 -18
  118. data/generated/google/apis/compute_alpha/service.rb +4914 -3211
  119. data/generated/google/apis/compute_beta.rb +1 -1
  120. data/generated/google/apis/compute_beta/classes.rb +819 -236
  121. data/generated/google/apis/compute_beta/representations.rb +245 -16
  122. data/generated/google/apis/compute_beta/service.rb +3369 -2227
  123. data/generated/google/apis/compute_v1.rb +1 -1
  124. data/generated/google/apis/compute_v1/classes.rb +837 -133
  125. data/generated/google/apis/compute_v1/representations.rb +307 -0
  126. data/generated/google/apis/compute_v1/service.rb +3155 -2026
  127. data/generated/google/apis/container_v1.rb +1 -1
  128. data/generated/google/apis/container_v1/classes.rb +42 -22
  129. data/generated/google/apis/container_v1/service.rb +2 -2
  130. data/generated/google/apis/container_v1beta1.rb +1 -1
  131. data/generated/google/apis/container_v1beta1/classes.rb +116 -136
  132. data/generated/google/apis/container_v1beta1/representations.rb +23 -51
  133. data/generated/google/apis/container_v1beta1/service.rb +2 -2
  134. data/generated/google/apis/content_v2.rb +1 -1
  135. data/generated/google/apis/content_v2/classes.rb +1030 -113
  136. data/generated/google/apis/content_v2_1.rb +1 -1
  137. data/generated/google/apis/content_v2_1/classes.rb +987 -138
  138. data/generated/google/apis/content_v2_1/representations.rb +87 -0
  139. data/generated/google/apis/content_v2_1/service.rb +73 -0
  140. data/generated/google/apis/customsearch_v1.rb +3 -3
  141. data/generated/google/apis/customsearch_v1/classes.rb +1194 -353
  142. data/generated/google/apis/customsearch_v1/representations.rb +166 -95
  143. data/generated/google/apis/customsearch_v1/service.rb +373 -104
  144. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  145. data/generated/google/apis/datacatalog_v1beta1/classes.rb +2 -2
  146. data/generated/google/apis/datacatalog_v1beta1/service.rb +16 -24
  147. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  148. data/generated/google/apis/dataflow_v1b3/classes.rb +220 -0
  149. data/generated/google/apis/dataflow_v1b3/representations.rb +99 -0
  150. data/generated/google/apis/dataflow_v1b3/service.rb +327 -0
  151. data/generated/google/apis/datafusion_v1beta1.rb +1 -1
  152. data/generated/google/apis/datafusion_v1beta1/classes.rb +27 -1
  153. data/generated/google/apis/datafusion_v1beta1/representations.rb +15 -0
  154. data/generated/google/apis/dataproc_v1.rb +1 -1
  155. data/generated/google/apis/dataproc_v1/classes.rb +76 -7
  156. data/generated/google/apis/dataproc_v1/representations.rb +21 -0
  157. data/generated/google/apis/dataproc_v1/service.rb +72 -15
  158. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  159. data/generated/google/apis/dataproc_v1beta2/classes.rb +191 -7
  160. data/generated/google/apis/dataproc_v1beta2/representations.rb +79 -0
  161. data/generated/google/apis/dataproc_v1beta2/service.rb +148 -15
  162. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  163. data/generated/google/apis/dfareporting_v3_3/classes.rb +19 -13
  164. data/generated/google/apis/dfareporting_v3_3/service.rb +5 -4
  165. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  166. data/generated/google/apis/dfareporting_v3_4/classes.rb +152 -15
  167. data/generated/google/apis/dfareporting_v3_4/representations.rb +46 -0
  168. data/generated/google/apis/dfareporting_v3_4/service.rb +5 -4
  169. data/generated/google/apis/dialogflow_v2.rb +1 -1
  170. data/generated/google/apis/dialogflow_v2/classes.rb +130 -127
  171. data/generated/google/apis/dialogflow_v2/service.rb +49 -49
  172. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  173. data/generated/google/apis/dialogflow_v2beta1/classes.rb +129 -126
  174. data/generated/google/apis/dialogflow_v2beta1/service.rb +96 -96
  175. data/generated/google/apis/dlp_v2.rb +1 -1
  176. data/generated/google/apis/dlp_v2/classes.rb +80 -14
  177. data/generated/google/apis/dlp_v2/representations.rb +32 -0
  178. data/generated/google/apis/dlp_v2/service.rb +3 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  180. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +9 -2
  181. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  182. data/generated/google/apis/doubleclicksearch_v2/service.rb +0 -55
  183. data/generated/google/apis/drive_v2.rb +1 -1
  184. data/generated/google/apis/drive_v2/classes.rb +54 -2
  185. data/generated/google/apis/drive_v2/representations.rb +18 -0
  186. data/generated/google/apis/drive_v2/service.rb +81 -9
  187. data/generated/google/apis/drive_v3.rb +1 -1
  188. data/generated/google/apis/drive_v3/classes.rb +54 -2
  189. data/generated/google/apis/drive_v3/representations.rb +18 -0
  190. data/generated/google/apis/drive_v3/service.rb +37 -4
  191. data/generated/google/apis/file_v1.rb +1 -1
  192. data/generated/google/apis/file_v1beta1.rb +1 -1
  193. data/generated/google/apis/file_v1beta1/classes.rb +2 -2
  194. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  195. data/generated/google/apis/firebase_v1beta1/service.rb +8 -5
  196. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  197. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +6 -6
  198. data/generated/google/apis/firebasehosting_v1beta1/service.rb +762 -3
  199. data/generated/google/apis/firestore_v1.rb +1 -1
  200. data/generated/google/apis/firestore_v1/classes.rb +11 -2
  201. data/generated/google/apis/firestore_v1/representations.rb +2 -0
  202. data/generated/google/apis/firestore_v1/service.rb +2 -2
  203. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  204. data/generated/google/apis/firestore_v1beta1/classes.rb +11 -2
  205. data/generated/google/apis/firestore_v1beta1/representations.rb +2 -0
  206. data/generated/google/apis/firestore_v1beta1/service.rb +2 -2
  207. data/generated/google/apis/games_configuration_v1configuration.rb +4 -3
  208. data/generated/google/apis/games_configuration_v1configuration/classes.rb +39 -53
  209. data/generated/google/apis/games_configuration_v1configuration/service.rb +58 -169
  210. data/generated/google/apis/games_management_v1management.rb +1 -1
  211. data/generated/google/apis/games_management_v1management/classes.rb +7 -0
  212. data/generated/google/apis/games_management_v1management/representations.rb +1 -0
  213. data/generated/google/apis/games_v1.rb +1 -1
  214. data/generated/google/apis/games_v1/classes.rb +13 -0
  215. data/generated/google/apis/games_v1/representations.rb +2 -0
  216. data/generated/google/apis/{proximitybeacon_v1beta1.rb → gameservices_v1beta.rb} +11 -11
  217. data/generated/google/apis/gameservices_v1beta/classes.rb +2342 -0
  218. data/generated/google/apis/gameservices_v1beta/representations.rb +971 -0
  219. data/generated/google/apis/gameservices_v1beta/service.rb +1469 -0
  220. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  221. data/generated/google/apis/genomics_v2alpha1/service.rb +34 -0
  222. data/generated/google/apis/gmail_v1.rb +3 -2
  223. data/generated/google/apis/gmail_v1/classes.rb +258 -199
  224. data/generated/google/apis/gmail_v1/service.rb +552 -744
  225. data/generated/google/apis/{mirror_v1.rb → healthcare_v1.rb} +10 -13
  226. data/generated/google/apis/healthcare_v1/classes.rb +2639 -0
  227. data/generated/google/apis/healthcare_v1/representations.rb +1114 -0
  228. data/generated/google/apis/healthcare_v1/service.rb +3470 -0
  229. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  230. data/generated/google/apis/healthcare_v1beta1/classes.rb +569 -23
  231. data/generated/google/apis/healthcare_v1beta1/representations.rb +236 -1
  232. data/generated/google/apis/healthcare_v1beta1/service.rb +147 -18
  233. data/generated/google/apis/homegraph_v1.rb +1 -1
  234. data/generated/google/apis/homegraph_v1/classes.rb +67 -63
  235. data/generated/google/apis/homegraph_v1/service.rb +43 -47
  236. data/generated/google/apis/iap_v1.rb +1 -1
  237. data/generated/google/apis/iap_v1/classes.rb +190 -0
  238. data/generated/google/apis/iap_v1/representations.rb +66 -0
  239. data/generated/google/apis/jobs_v2.rb +1 -1
  240. data/generated/google/apis/language_v1.rb +1 -1
  241. data/generated/google/apis/language_v1/classes.rb +6 -6
  242. data/generated/google/apis/language_v1beta1.rb +1 -1
  243. data/generated/google/apis/language_v1beta1/classes.rb +5 -5
  244. data/generated/google/apis/language_v1beta2.rb +1 -1
  245. data/generated/google/apis/language_v1beta2/classes.rb +8 -7
  246. data/generated/google/apis/logging_v2.rb +3 -3
  247. data/generated/google/apis/logging_v2/classes.rb +3 -4
  248. data/generated/google/apis/logging_v2/service.rb +2 -2
  249. data/generated/google/apis/managedidentities_v1.rb +1 -1
  250. data/generated/google/apis/managedidentities_v1/classes.rb +54 -145
  251. data/generated/google/apis/managedidentities_v1/representations.rb +17 -33
  252. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  253. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +54 -145
  254. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +17 -33
  255. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  256. data/generated/google/apis/managedidentities_v1beta1/classes.rb +54 -145
  257. data/generated/google/apis/managedidentities_v1beta1/representations.rb +17 -33
  258. data/generated/google/apis/manufacturers_v1.rb +1 -1
  259. data/generated/google/apis/manufacturers_v1/classes.rb +3 -3
  260. data/generated/google/apis/manufacturers_v1/representations.rb +1 -1
  261. data/generated/google/apis/memcache_v1beta2.rb +35 -0
  262. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1 → memcache_v1beta2}/classes.rb +1083 -761
  263. data/generated/google/apis/memcache_v1beta2/representations.rb +557 -0
  264. data/generated/google/apis/memcache_v1beta2/service.rb +674 -0
  265. data/generated/google/apis/ml_v1.rb +1 -1
  266. data/generated/google/apis/ml_v1/classes.rb +47 -7
  267. data/generated/google/apis/ml_v1/representations.rb +4 -0
  268. data/generated/google/apis/monitoring_v1.rb +7 -8
  269. data/generated/google/apis/monitoring_v1/classes.rb +54 -15
  270. data/generated/google/apis/monitoring_v1/representations.rb +3 -0
  271. data/generated/google/apis/monitoring_v1/service.rb +7 -8
  272. data/generated/google/apis/monitoring_v3.rb +7 -8
  273. data/generated/google/apis/monitoring_v3/classes.rb +300 -27
  274. data/generated/google/apis/monitoring_v3/representations.rb +128 -0
  275. data/generated/google/apis/monitoring_v3/service.rb +52 -17
  276. data/generated/google/apis/oauth2_v2.rb +4 -4
  277. data/generated/google/apis/oauth2_v2/classes.rb +1 -13
  278. data/generated/google/apis/oauth2_v2/representations.rb +2 -4
  279. data/generated/google/apis/oauth2_v2/service.rb +10 -12
  280. data/generated/google/apis/osconfig_v1.rb +35 -0
  281. data/generated/google/apis/osconfig_v1/classes.rb +1223 -0
  282. data/generated/google/apis/osconfig_v1/representations.rb +506 -0
  283. data/generated/google/apis/osconfig_v1/service.rb +386 -0
  284. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  285. data/generated/google/apis/osconfig_v1beta/classes.rb +10 -2
  286. data/generated/google/apis/people_v1.rb +1 -1
  287. data/generated/google/apis/people_v1/classes.rb +30 -12
  288. data/generated/google/apis/people_v1/representations.rb +1 -0
  289. data/generated/google/apis/people_v1/service.rb +12 -24
  290. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  291. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +4 -3
  292. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +282 -0
  293. data/generated/google/apis/pubsub_v1.rb +1 -1
  294. data/generated/google/apis/pubsub_v1/classes.rb +9 -5
  295. data/generated/google/apis/pubsub_v1/service.rb +1 -1
  296. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  297. data/generated/google/apis/pubsub_v1beta2/classes.rb +5 -2
  298. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  299. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -4
  300. data/generated/google/apis/redis_v1.rb +1 -1
  301. data/generated/google/apis/redis_v1/classes.rb +30 -7
  302. data/generated/google/apis/redis_v1/representations.rb +13 -0
  303. data/generated/google/apis/redis_v1/service.rb +36 -0
  304. data/generated/google/apis/redis_v1beta1.rb +1 -1
  305. data/generated/google/apis/redis_v1beta1/classes.rb +11 -7
  306. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  307. data/generated/google/apis/remotebuildexecution_v1/classes.rb +171 -37
  308. data/generated/google/apis/remotebuildexecution_v1/representations.rb +28 -0
  309. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  310. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +171 -37
  311. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +28 -0
  312. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  313. data/generated/google/apis/remotebuildexecution_v2/classes.rb +181 -45
  314. data/generated/google/apis/remotebuildexecution_v2/representations.rb +29 -0
  315. data/generated/google/apis/remotebuildexecution_v2/service.rb +5 -1
  316. data/generated/google/apis/run_v1.rb +1 -1
  317. data/generated/google/apis/run_v1/classes.rb +6 -13
  318. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  319. data/generated/google/apis/sasportal_v1alpha1/classes.rb +4 -3
  320. data/generated/google/apis/sasportal_v1alpha1/service.rb +282 -0
  321. data/generated/google/apis/secretmanager_v1.rb +2 -2
  322. data/generated/google/apis/secretmanager_v1/service.rb +4 -1
  323. data/generated/google/apis/secretmanager_v1beta1.rb +2 -2
  324. data/generated/google/apis/secretmanager_v1beta1/service.rb +4 -1
  325. data/generated/google/apis/securitycenter_v1.rb +4 -4
  326. data/generated/google/apis/securitycenter_v1/classes.rb +142 -114
  327. data/generated/google/apis/securitycenter_v1/service.rb +11 -3
  328. data/generated/google/apis/securitycenter_v1beta1.rb +4 -4
  329. data/generated/google/apis/securitycenter_v1beta1/classes.rb +137 -123
  330. data/generated/google/apis/securitycenter_v1beta1/service.rb +3 -3
  331. data/generated/google/apis/securitycenter_v1p1alpha1.rb +4 -4
  332. data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +87 -75
  333. data/generated/google/apis/securitycenter_v1p1alpha1/service.rb +3 -3
  334. data/generated/google/apis/securitycenter_v1p1beta1.rb +4 -4
  335. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +117 -95
  336. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +11 -3
  337. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  338. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +41 -6
  339. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +1 -0
  340. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1.rb → serviceconsumermanagement_v1beta1.rb} +8 -9
  341. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +4170 -0
  342. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +1308 -0
  343. data/generated/google/apis/serviceconsumermanagement_v1beta1/service.rb +428 -0
  344. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  345. data/generated/google/apis/servicecontrol_v1/classes.rb +2 -2
  346. data/generated/google/apis/{cloudprivatecatalog_v1beta1.rb → servicedirectory_v1beta1.rb} +9 -9
  347. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +800 -0
  348. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +304 -0
  349. data/generated/google/apis/servicedirectory_v1beta1/service.rb +992 -0
  350. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  351. data/generated/google/apis/servicemanagement_v1/classes.rb +41 -6
  352. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -0
  353. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  354. data/generated/google/apis/servicenetworking_v1/classes.rb +179 -6
  355. data/generated/google/apis/servicenetworking_v1/representations.rb +72 -0
  356. data/generated/google/apis/servicenetworking_v1/service.rb +53 -21
  357. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  358. data/generated/google/apis/servicenetworking_v1beta/classes.rb +149 -6
  359. data/generated/google/apis/servicenetworking_v1beta/representations.rb +57 -0
  360. data/generated/google/apis/serviceusage_v1.rb +1 -1
  361. data/generated/google/apis/serviceusage_v1/classes.rb +116 -6
  362. data/generated/google/apis/serviceusage_v1/representations.rb +45 -0
  363. data/generated/google/apis/serviceusage_v1/service.rb +42 -0
  364. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  365. data/generated/google/apis/serviceusage_v1beta1/classes.rb +97 -32
  366. data/generated/google/apis/serviceusage_v1beta1/representations.rb +31 -15
  367. data/generated/google/apis/serviceusage_v1beta1/service.rb +0 -43
  368. data/generated/google/apis/sheets_v4.rb +1 -1
  369. data/generated/google/apis/sheets_v4/classes.rb +2 -2
  370. data/generated/google/apis/spanner_v1.rb +1 -1
  371. data/generated/google/apis/spanner_v1/classes.rb +463 -1
  372. data/generated/google/apis/spanner_v1/representations.rb +178 -0
  373. data/generated/google/apis/spanner_v1/service.rb +498 -10
  374. data/generated/google/apis/speech_v1.rb +1 -1
  375. data/generated/google/apis/speech_v1/classes.rb +7 -3
  376. data/generated/google/apis/speech_v1/representations.rb +1 -0
  377. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  378. data/generated/google/apis/speech_v1p1beta1/classes.rb +7 -3
  379. data/generated/google/apis/speech_v1p1beta1/representations.rb +1 -0
  380. data/generated/google/apis/speech_v2beta1.rb +1 -1
  381. data/generated/google/apis/speech_v2beta1/classes.rb +7 -0
  382. data/generated/google/apis/speech_v2beta1/representations.rb +1 -0
  383. data/generated/google/apis/sql_v1beta4.rb +1 -1
  384. data/generated/google/apis/sql_v1beta4/classes.rb +3 -3
  385. data/generated/google/apis/sql_v1beta4/service.rb +54 -384
  386. data/generated/google/apis/storage_v1.rb +1 -1
  387. data/generated/google/apis/storage_v1/classes.rb +18 -0
  388. data/generated/google/apis/storage_v1/representations.rb +2 -0
  389. data/generated/google/apis/storage_v1/service.rb +28 -3
  390. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  391. data/generated/google/apis/storagetransfer_v1/classes.rb +194 -11
  392. data/generated/google/apis/storagetransfer_v1/representations.rb +52 -0
  393. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  394. data/generated/google/apis/toolresults_v1beta3/classes.rb +217 -0
  395. data/generated/google/apis/toolresults_v1beta3/representations.rb +84 -0
  396. data/generated/google/apis/toolresults_v1beta3/service.rb +76 -29
  397. data/generated/google/apis/vault_v1.rb +1 -1
  398. data/generated/google/apis/videointelligence_v1.rb +1 -1
  399. data/generated/google/apis/videointelligence_v1/classes.rb +744 -4
  400. data/generated/google/apis/videointelligence_v1/representations.rb +356 -0
  401. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  402. data/generated/google/apis/videointelligence_v1beta2/classes.rb +744 -4
  403. data/generated/google/apis/videointelligence_v1beta2/representations.rb +356 -0
  404. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  405. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +744 -4
  406. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +356 -0
  407. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  408. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +744 -4
  409. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +356 -0
  410. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  411. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +744 -4
  412. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +356 -0
  413. data/generated/google/apis/vision_v1.rb +1 -1
  414. data/generated/google/apis/vision_v1/classes.rb +1 -1
  415. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  416. data/generated/google/apis/vision_v1p1beta1/classes.rb +1 -1
  417. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  418. data/generated/google/apis/vision_v1p2beta1/classes.rb +1 -1
  419. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  420. data/generated/google/apis/youtube_v3.rb +4 -1
  421. data/generated/google/apis/youtube_v3/classes.rb +7 -0
  422. data/generated/google/apis/youtube_v3/representations.rb +1 -0
  423. data/lib/google/apis/generator/annotator.rb +1 -1
  424. data/lib/google/apis/version.rb +1 -1
  425. metadata +32 -23
  426. data/generated/google/apis/cloudprivatecatalog_v1beta1/classes.rb +0 -358
  427. data/generated/google/apis/cloudprivatecatalog_v1beta1/representations.rb +0 -123
  428. data/generated/google/apis/cloudprivatecatalog_v1beta1/service.rb +0 -486
  429. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/representations.rb +0 -399
  430. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/service.rb +0 -1081
  431. data/generated/google/apis/mirror_v1/classes.rb +0 -1072
  432. data/generated/google/apis/mirror_v1/representations.rb +0 -390
  433. data/generated/google/apis/mirror_v1/service.rb +0 -928
  434. data/generated/google/apis/oauth2_v1.rb +0 -40
  435. data/generated/google/apis/oauth2_v1/classes.rb +0 -197
  436. data/generated/google/apis/oauth2_v1/representations.rb +0 -73
  437. data/generated/google/apis/oauth2_v1/service.rb +0 -160
  438. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +0 -845
  439. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +0 -350
  440. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +0 -933
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200120'
28
+ REVISION = '20200311'
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'
@@ -1207,8 +1207,7 @@ module Google
1207
1207
  # SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and
1208
1208
  # the request will fail if you attempt to attach a persistent disk in any other
1209
1209
  # format than SCSI. Local SSDs can use either NVME or SCSI. For performance
1210
- # characteristics of SCSI over NVMe, see Local SSD performance. TODO(b/131765817)
1211
- # : Update documentation when NVME is supported.
1210
+ # characteristics of SCSI over NVMe, see Local SSD performance.
1212
1211
  # Corresponds to the JSON property `interface`
1213
1212
  # @return [String]
1214
1213
  attr_accessor :interface
@@ -1230,6 +1229,12 @@ module Google
1230
1229
  # @return [String]
1231
1230
  attr_accessor :mode
1232
1231
 
1232
+ # Initial State for shielded instance, these are public keys which are safe to
1233
+ # store in public
1234
+ # Corresponds to the JSON property `shieldedInstanceInitialState`
1235
+ # @return [Google::Apis::ComputeV1::InitialStateConfig]
1236
+ attr_accessor :shielded_instance_initial_state
1237
+
1233
1238
  # Specifies a valid partial or full URL to an existing Persistent Disk resource.
1234
1239
  # When creating a new instance, one of initializeParams.sourceImage or
1235
1240
  # initializeParams.sourceSnapshot or disks.source is required except for local
@@ -1266,6 +1271,7 @@ module Google
1266
1271
  @kind = args[:kind] if args.key?(:kind)
1267
1272
  @licenses = args[:licenses] if args.key?(:licenses)
1268
1273
  @mode = args[:mode] if args.key?(:mode)
1274
+ @shielded_instance_initial_state = args[:shielded_instance_initial_state] if args.key?(:shielded_instance_initial_state)
1269
1275
  @source = args[:source] if args.key?(:source)
1270
1276
  @type = args[:type] if args.key?(:type)
1271
1277
  end
@@ -1285,8 +1291,9 @@ module Google
1285
1291
  attr_accessor :description
1286
1292
 
1287
1293
  # Specifies the disk name. If not specified, the default is to use the name of
1288
- # the instance. If the disk with the instance name exists already in the given
1289
- # zone/region, a new name will be automatically generated.
1294
+ # the instance. If a disk with the same name already exists in the given region,
1295
+ # the existing disk is attached to the new instance and the new disk is not
1296
+ # created.
1290
1297
  # Corresponds to the JSON property `diskName`
1291
1298
  # @return [String]
1292
1299
  attr_accessor :disk_name
@@ -1321,6 +1328,12 @@ module Google
1321
1328
  # @return [Hash<String,String>]
1322
1329
  attr_accessor :labels
1323
1330
 
1331
+ # Specifies which action to take on instance update with this disk. Default is
1332
+ # to use the existing disk.
1333
+ # Corresponds to the JSON property `onUpdateAction`
1334
+ # @return [String]
1335
+ attr_accessor :on_update_action
1336
+
1324
1337
  # Resource policies applied to this disk for automatic snapshot creations.
1325
1338
  # Specified using the full or partial URL. For instance template, specify only
1326
1339
  # the resource policy name.
@@ -1381,6 +1394,7 @@ module Google
1381
1394
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
1382
1395
  @disk_type = args[:disk_type] if args.key?(:disk_type)
1383
1396
  @labels = args[:labels] if args.key?(:labels)
1397
+ @on_update_action = args[:on_update_action] if args.key?(:on_update_action)
1384
1398
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
1385
1399
  @source_image = args[:source_image] if args.key?(:source_image)
1386
1400
  @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key)
@@ -1496,8 +1510,8 @@ module Google
1496
1510
 
1497
1511
  # Represents an Autoscaler resource.
1498
1512
  # Google Compute Engine has two Autoscaler resources:
1499
- # * [Global](/compute/docs/reference/rest/latest/autoscalers) * [Regional](/
1500
- # compute/docs/reference/rest/latest/regionAutoscalers)
1513
+ # * [Global](/compute/docs/reference/rest/`$api_version`/autoscalers) * [
1514
+ # Regional](/compute/docs/reference/rest/`$api_version`/regionAutoscalers)
1501
1515
  # Use autoscalers to automatically add or delete instances from a managed
1502
1516
  # instance group according to your defined autoscaling policy. For more
1503
1517
  # information, read Autoscaling Groups of Instances.
@@ -2175,8 +2189,8 @@ module Google
2175
2189
  # service is SSL, TCP, or UDP.
2176
2190
  # If the loadBalancingScheme for the backend service is EXTERNAL (SSL Proxy and
2177
2191
  # TCP Proxy load balancers), you must also specify exactly one of the following
2178
- # parameters: maxConnections, maxConnectionsPerInstance, or
2179
- # maxConnectionsPerEndpoint.
2192
+ # parameters: maxConnections (except for regional managed instance groups),
2193
+ # maxConnectionsPerInstance, or maxConnectionsPerEndpoint.
2180
2194
  # If the loadBalancingScheme for the backend service is INTERNAL (internal TCP/
2181
2195
  # UDP load balancers), you cannot specify any additional parameters.
2182
2196
  #
@@ -2184,10 +2198,11 @@ module Google
2184
2198
  # HTTP requests per second (RPS).
2185
2199
  # You can use the RATE balancing mode if the protocol for the backend service is
2186
2200
  # HTTP or HTTPS. You must specify exactly one of the following parameters:
2187
- # maxRate, maxRatePerInstance, or maxRatePerEndpoint.
2201
+ # maxRate (except for regional managed instance groups), maxRatePerInstance, or
2202
+ # maxRatePerEndpoint.
2188
2203
  #
2189
2204
  # - If the load balancing mode is UTILIZATION, the load is spread based on the
2190
- # CPU utilization of instances in an instance group.
2205
+ # backend utilization of instances in an instance group.
2191
2206
  # You can use the UTILIZATION balancing mode if the loadBalancingScheme of the
2192
2207
  # backend service is EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED and
2193
2208
  # the backends are instance groups. There are no restrictions on the backend
@@ -2212,6 +2227,13 @@ module Google
2212
2227
  # @return [String]
2213
2228
  attr_accessor :description
2214
2229
 
2230
+ # This field designates whether this is a failover backend. More than one
2231
+ # failover backend can be configured for a given BackendService.
2232
+ # Corresponds to the JSON property `failover`
2233
+ # @return [Boolean]
2234
+ attr_accessor :failover
2235
+ alias_method :failover?, :failover
2236
+
2215
2237
  # The fully-qualified URL of an instance group or network endpoint group (NEG)
2216
2238
  # resource. The type of backend that a backend service supports depends on the
2217
2239
  # backend service's loadBalancingScheme.
@@ -2230,12 +2252,13 @@ module Google
2230
2252
  # @return [String]
2231
2253
  attr_accessor :group
2232
2254
 
2233
- # Defines a maximum target for simultaneous connections for the entire backend (
2234
- # instance group or NEG). If the backend's balancingMode is UTILIZATION, this is
2235
- # an optional parameter. If the backend's balancingMode is CONNECTION, and
2236
- # backend is attached to a backend service whose loadBalancingScheme is EXTERNAL,
2237
- # you must specify either this parameter, maxConnectionsPerInstance, or
2238
- # maxConnectionsPerEndpoint.
2255
+ # Defines a target maximum number of simultaneous connections that the backend
2256
+ # can handle. Valid for network endpoint group and instance group backends (
2257
+ # except for regional managed instance groups). If the backend's balancingMode
2258
+ # is UTILIZATION, this is an optional parameter. If the backend's balancingMode
2259
+ # is CONNECTION, and backend is attached to a backend service whose
2260
+ # loadBalancingScheme is EXTERNAL, you must specify either this parameter,
2261
+ # maxConnectionsPerInstance, or maxConnectionsPerEndpoint.
2239
2262
  # Not available if the backend's balancingMode is RATE. If the
2240
2263
  # loadBalancingScheme is INTERNAL, then maxConnections is not supported, even
2241
2264
  # though the backend requires a balancing mode of CONNECTION.
@@ -2243,8 +2266,8 @@ module Google
2243
2266
  # @return [Fixnum]
2244
2267
  attr_accessor :max_connections
2245
2268
 
2246
- # Defines a maximum target for simultaneous connections for an endpoint of a NEG.
2247
- # This is multiplied by the number of endpoints in the NEG to implicitly
2269
+ # Defines a target maximum number of simultaneous connections for an endpoint of
2270
+ # a NEG. This is multiplied by the number of endpoints in the NEG to implicitly
2248
2271
  # calculate a maximum number of target maximum simultaneous connections for the
2249
2272
  # NEG. If the backend's balancingMode is CONNECTION, and the backend is attached
2250
2273
  # to a backend service whose loadBalancingScheme is EXTERNAL, you must specify
@@ -2256,8 +2279,8 @@ module Google
2256
2279
  # @return [Fixnum]
2257
2280
  attr_accessor :max_connections_per_endpoint
2258
2281
 
2259
- # Defines a maximum target for simultaneous connections for a single VM in a
2260
- # backend instance group. This is multiplied by the number of instances in the
2282
+ # Defines a target maximum number of simultaneous connections for a single VM in
2283
+ # a backend instance group. This is multiplied by the number of instances in the
2261
2284
  # instance group to implicitly calculate a target maximum number of simultaneous
2262
2285
  # connections for the whole instance group. If the backend's balancingMode is
2263
2286
  # UTILIZATION, this is an optional parameter. If the backend's balancingMode is
@@ -2271,10 +2294,15 @@ module Google
2271
2294
  # @return [Fixnum]
2272
2295
  attr_accessor :max_connections_per_instance
2273
2296
 
2274
- # The max requests per second (RPS) of the group. Can be used with either RATE
2275
- # or UTILIZATION balancing modes, but required if RATE mode. For RATE mode,
2276
- # either maxRate or maxRatePerInstance must be set.
2277
- # This cannot be used for internal load balancing.
2297
+ # Defines a maximum number of HTTP requests per second (RPS) that the backend
2298
+ # can handle. Valid for network endpoint group and instance group backends (
2299
+ # except for regional managed instance groups). Must not be defined if the
2300
+ # backend is a managed instance group that uses autoscaling based on load
2301
+ # balancing.
2302
+ # If the backend's balancingMode is UTILIZATION, this is an optional parameter.
2303
+ # If the backend's balancingMode is RATE, you must specify maxRate,
2304
+ # maxRatePerInstance, or maxRatePerEndpoint.
2305
+ # Not available if the backend's balancingMode is CONNECTION.
2278
2306
  # Corresponds to the JSON property `maxRate`
2279
2307
  # @return [Fixnum]
2280
2308
  attr_accessor :max_rate
@@ -2283,7 +2311,7 @@ module Google
2283
2311
  # NEG. This is multiplied by the number of endpoints in the NEG to implicitly
2284
2312
  # calculate a target maximum rate for the NEG.
2285
2313
  # If the backend's balancingMode is RATE, you must specify either this parameter,
2286
- # maxRate, or maxRatePerInstance.
2314
+ # maxRate (except for regional managed instance groups), or maxRatePerInstance.
2287
2315
  # Not available if the backend's balancingMode is CONNECTION.
2288
2316
  # Corresponds to the JSON property `maxRatePerEndpoint`
2289
2317
  # @return [Float]
@@ -2295,17 +2323,18 @@ module Google
2295
2323
  # instance group.
2296
2324
  # If the backend's balancingMode is UTILIZATION, this is an optional parameter.
2297
2325
  # If the backend's balancingMode is RATE, you must specify either this parameter,
2298
- # maxRate, or maxRatePerEndpoint.
2326
+ # maxRate (except for regional managed instance groups), or maxRatePerEndpoint.
2299
2327
  # Not available if the backend's balancingMode is CONNECTION.
2300
2328
  # Corresponds to the JSON property `maxRatePerInstance`
2301
2329
  # @return [Float]
2302
2330
  attr_accessor :max_rate_per_instance
2303
2331
 
2304
- # Defines the maximum average CPU utilization of a backend VM in an instance
2332
+ # Defines the maximum average backend utilization of a backend VM in an instance
2305
2333
  # group. The valid range is [0.0, 1.0]. This is an optional parameter if the
2306
2334
  # backend's balancingMode is UTILIZATION.
2307
2335
  # This parameter can be used in conjunction with maxRate, maxRatePerInstance,
2308
- # maxConnections, or maxConnectionsPerInstance.
2336
+ # maxConnections (except for regional managed instance groups), or
2337
+ # maxConnectionsPerInstance.
2309
2338
  # Corresponds to the JSON property `maxUtilization`
2310
2339
  # @return [Float]
2311
2340
  attr_accessor :max_utilization
@@ -2319,6 +2348,7 @@ module Google
2319
2348
  @balancing_mode = args[:balancing_mode] if args.key?(:balancing_mode)
2320
2349
  @capacity_scaler = args[:capacity_scaler] if args.key?(:capacity_scaler)
2321
2350
  @description = args[:description] if args.key?(:description)
2351
+ @failover = args[:failover] if args.key?(:failover)
2322
2352
  @group = args[:group] if args.key?(:group)
2323
2353
  @max_connections = args[:max_connections] if args.key?(:max_connections)
2324
2354
  @max_connections_per_endpoint = args[:max_connections_per_endpoint] if args.key?(:max_connections_per_endpoint)
@@ -2559,8 +2589,8 @@ module Google
2559
2589
  # balancing services.
2560
2590
  # Backend services in Google Compute Engine can be either regionally or globally
2561
2591
  # scoped.
2562
- # * [Global](/compute/docs/reference/rest/latest/backendServices) * [Regional](/
2563
- # compute/docs/reference/rest/latest/regionBackendServices)
2592
+ # * [Global](/compute/docs/reference/rest/`$api_version`/backendServices) * [
2593
+ # Regional](/compute/docs/reference/rest/`$api_version`/regionBackendServices)
2564
2594
  # For more information, read Backend Services.
2565
2595
  # (== resource_for `$api_version`.backendService ==)
2566
2596
  class BackendService
@@ -2620,6 +2650,17 @@ module Google
2620
2650
  attr_accessor :enable_cdn
2621
2651
  alias_method :enable_cdn?, :enable_cdn
2622
2652
 
2653
+ # Applicable only to Failover for Internal TCP/UDP Load Balancing. On failover
2654
+ # or failback, this field indicates whether connection draining will be honored.
2655
+ # GCP has a fixed connection draining timeout of 10 minutes. A setting of true
2656
+ # terminates existing TCP connections to the active pool during failover and
2657
+ # failback, immediately draining traffic. A setting of false allows existing TCP
2658
+ # connections to persist, even on VMs no longer in the active pool, for up to
2659
+ # the duration of the connection draining timeout (10 minutes).
2660
+ # Corresponds to the JSON property `failoverPolicy`
2661
+ # @return [Google::Apis::ComputeV1::BackendServiceFailoverPolicy]
2662
+ attr_accessor :failover_policy
2663
+
2623
2664
  # Fingerprint of this resource. A hash of the contents stored in this object.
2624
2665
  # This field is used in optimistic locking. This field will be ignored when
2625
2666
  # inserting a BackendService. An up-to-date fingerprint must be provided in
@@ -2632,15 +2673,13 @@ module Google
2632
2673
  # @return [String]
2633
2674
  attr_accessor :fingerprint
2634
2675
 
2635
- # The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for
2636
- # health checking this BackendService. Currently at most one health check can be
2637
- # specified. Health check is optional for Compute Engine backend services if
2638
- # there is no backend. A health check must not be specified when adding Internet
2639
- # Network Endpoint Group or Serverless Network Endpoint Group as backends. In
2640
- # all other cases, a health check is required for Compute Engine backend
2641
- # services.
2642
- # For internal load balancing, a URL to a HealthCheck resource must be specified
2643
- # instead.
2676
+ # The list of URLs to the healthChecks, httpHealthChecks (legacy), or
2677
+ # httpsHealthChecks (legacy) resource for health checking this backend service.
2678
+ # Not all backend services support legacy health checks. See Load balancer
2679
+ # guide. Currently at most one health check can be specified. Backend services
2680
+ # with instance group or zonal NEG backends must have a health check. Backend
2681
+ # services with internet NEG backends must not have a health check. A health
2682
+ # check must
2644
2683
  # Corresponds to the JSON property `healthChecks`
2645
2684
  # @return [Array<String>]
2646
2685
  attr_accessor :health_checks
@@ -2739,9 +2778,9 @@ module Google
2739
2778
 
2740
2779
  # A named port on a backend instance group representing the port for
2741
2780
  # communication to the backend VMs in that group. Required when the
2742
- # loadBalancingScheme is EXTERNAL and the backends are instance groups. The
2743
- # named port must be defined on each backend instance group. This parameter has
2744
- # no meaning if the backends are NEGs.
2781
+ # loadBalancingScheme is EXTERNAL, INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED
2782
+ # and the backends are instance groups. The named port must be defined on each
2783
+ # backend instance group. This parameter has no meaning if the backends are NEGs.
2745
2784
  # Must be omitted when the loadBalancingScheme is INTERNAL (Internal TCP/UDP
2746
2785
  # Load Blaancing).
2747
2786
  # Corresponds to the JSON property `portName`
@@ -2749,7 +2788,7 @@ module Google
2749
2788
  attr_accessor :port_name
2750
2789
 
2751
2790
  # The protocol this BackendService uses to communicate with backends.
2752
- # Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, or UDP, depending on the
2791
+ # Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, or UDP. depending on the
2753
2792
  # chosen load balancer or Traffic Director configuration. Refer to the
2754
2793
  # documentation for the load balancer or for Traffic Director for more
2755
2794
  # information.
@@ -2813,6 +2852,7 @@ module Google
2813
2852
  @custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers)
2814
2853
  @description = args[:description] if args.key?(:description)
2815
2854
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
2855
+ @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
2816
2856
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
2817
2857
  @health_checks = args[:health_checks] if args.key?(:health_checks)
2818
2858
  @iap = args[:iap] if args.key?(:iap)
@@ -2990,6 +3030,55 @@ module Google
2990
3030
  end
2991
3031
  end
2992
3032
 
3033
+ # Applicable only to Failover for Internal TCP/UDP Load Balancing. On failover
3034
+ # or failback, this field indicates whether connection draining will be honored.
3035
+ # GCP has a fixed connection draining timeout of 10 minutes. A setting of true
3036
+ # terminates existing TCP connections to the active pool during failover and
3037
+ # failback, immediately draining traffic. A setting of false allows existing TCP
3038
+ # connections to persist, even on VMs no longer in the active pool, for up to
3039
+ # the duration of the connection draining timeout (10 minutes).
3040
+ class BackendServiceFailoverPolicy
3041
+ include Google::Apis::Core::Hashable
3042
+
3043
+ # This can be set to true only if the protocol is TCP.
3044
+ # The default is false.
3045
+ # Corresponds to the JSON property `disableConnectionDrainOnFailover`
3046
+ # @return [Boolean]
3047
+ attr_accessor :disable_connection_drain_on_failover
3048
+ alias_method :disable_connection_drain_on_failover?, :disable_connection_drain_on_failover
3049
+
3050
+ # Applicable only to Failover for Internal TCP/UDP Load Balancing. If set to
3051
+ # true, connections to the load balancer are dropped when all primary and all
3052
+ # backup backend VMs are unhealthy. If set to false, connections are distributed
3053
+ # among all primary VMs when all primary and all backup backend VMs are
3054
+ # unhealthy.
3055
+ # The default is false.
3056
+ # Corresponds to the JSON property `dropTrafficIfUnhealthy`
3057
+ # @return [Boolean]
3058
+ attr_accessor :drop_traffic_if_unhealthy
3059
+ alias_method :drop_traffic_if_unhealthy?, :drop_traffic_if_unhealthy
3060
+
3061
+ # Applicable only to Failover for Internal TCP/UDP Load Balancing. The value of
3062
+ # the field must be in the range [0, 1]. If the value is 0, the load balancer
3063
+ # performs a failover when the number of healthy primary VMs equals zero. For
3064
+ # all other values, the load balancer performs a failover when the total number
3065
+ # of healthy primary VMs is less than this ratio.
3066
+ # Corresponds to the JSON property `failoverRatio`
3067
+ # @return [Float]
3068
+ attr_accessor :failover_ratio
3069
+
3070
+ def initialize(**args)
3071
+ update!(**args)
3072
+ end
3073
+
3074
+ # Update properties of this object
3075
+ def update!(**args)
3076
+ @disable_connection_drain_on_failover = args[:disable_connection_drain_on_failover] if args.key?(:disable_connection_drain_on_failover)
3077
+ @drop_traffic_if_unhealthy = args[:drop_traffic_if_unhealthy] if args.key?(:drop_traffic_if_unhealthy)
3078
+ @failover_ratio = args[:failover_ratio] if args.key?(:failover_ratio)
3079
+ end
3080
+ end
3081
+
2993
3082
  #
2994
3083
  class BackendServiceGroupHealth
2995
3084
  include Google::Apis::Core::Hashable
@@ -4186,6 +4275,12 @@ module Google
4186
4275
  # @return [String]
4187
4276
  attr_accessor :kms_key_name
4188
4277
 
4278
+ # The service account being used for the encryption request for the given KMS
4279
+ # key. If absent, the Compute Engine default service account is used.
4280
+ # Corresponds to the JSON property `kmsKeyServiceAccount`
4281
+ # @return [String]
4282
+ attr_accessor :kms_key_service_account
4283
+
4189
4284
  # Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648
4190
4285
  # base64 to either encrypt or decrypt this resource.
4191
4286
  # Corresponds to the JSON property `rawKey`
@@ -4205,6 +4300,7 @@ module Google
4205
4300
  # Update properties of this object
4206
4301
  def update!(**args)
4207
4302
  @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
4303
+ @kms_key_service_account = args[:kms_key_service_account] if args.key?(:kms_key_service_account)
4208
4304
  @raw_key = args[:raw_key] if args.key?(:raw_key)
4209
4305
  @sha256 = args[:sha256] if args.key?(:sha256)
4210
4306
  end
@@ -4294,8 +4390,8 @@ module Google
4294
4390
 
4295
4391
  # Represents a Persistent Disk resource.
4296
4392
  # Google Compute Engine has two Disk resources:
4297
- # * [Global](/compute/docs/reference/rest/latest/disks) * [Regional](/compute/
4298
- # docs/reference/rest/latest/regionDisks)
4393
+ # * [Zonal](/compute/docs/reference/rest/`$api_version`/disks) * [Regional](/
4394
+ # compute/docs/reference/rest/`$api_version`/regionDisks)
4299
4395
  # Persistent disks are required for running your VM instances. Create both boot
4300
4396
  # and non-boot (data) persistent disks. For more information, read Persistent
4301
4397
  # Disks. For more storage options, read Storage options.
@@ -4882,8 +4978,8 @@ module Google
4882
4978
 
4883
4979
  # Represents a Disk Type resource.
4884
4980
  # Google Compute Engine has two Disk Type resources:
4885
- # * [Global](/compute/docs/reference/rest/latest/diskTypes) * [Regional](/
4886
- # compute/docs/reference/rest/latest/regionDiskTypes)
4981
+ # * [Regional](/compute/docs/reference/rest/`$api_version`/regionDiskTypes) * [
4982
+ # Zonal](/compute/docs/reference/rest/`$api_version`/diskTypes)
4887
4983
  # You can choose from a variety of disk types based on your needs. For more
4888
4984
  # information, read Storage options.
4889
4985
  # The diskTypes resource represents disk types for a zonal persistent disk. For
@@ -6016,6 +6112,32 @@ module Google
6016
6112
  end
6017
6113
  end
6018
6114
 
6115
+ #
6116
+ class FileContentBuffer
6117
+ include Google::Apis::Core::Hashable
6118
+
6119
+ # The raw content in the secure keys file.
6120
+ # Corresponds to the JSON property `content`
6121
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
6122
+ # @return [String]
6123
+ attr_accessor :content
6124
+
6125
+ #
6126
+ # Corresponds to the JSON property `fileType`
6127
+ # @return [String]
6128
+ attr_accessor :file_type
6129
+
6130
+ def initialize(**args)
6131
+ update!(**args)
6132
+ end
6133
+
6134
+ # Update properties of this object
6135
+ def update!(**args)
6136
+ @content = args[:content] if args.key?(:content)
6137
+ @file_type = args[:file_type] if args.key?(:file_type)
6138
+ end
6139
+ end
6140
+
6019
6141
  # Represents a Firewall Rule resource.
6020
6142
  # Firewall rules allow or deny ingress traffic to, and egress traffic from your
6021
6143
  # instances. For more information, read Firewall rules.
@@ -6453,8 +6575,8 @@ module Google
6453
6575
 
6454
6576
  # Represents a Forwarding Rule resource.
6455
6577
  # Forwarding rule resources in GCP can be either regional or global in scope:
6456
- # * [Global](/compute/docs/reference/rest/latest/globalForwardingRules) * [
6457
- # Regional](/compute/docs/reference/rest/latest/forwardingRules)
6578
+ # * [Global](/compute/docs/reference/rest/`$api_version`/globalForwardingRules) *
6579
+ # [Regional](/compute/docs/reference/rest/`$api_version`/forwardingRules)
6458
6580
  # A forwarding rule and its corresponding IP address represent the frontend
6459
6581
  # configuration of a Google Cloud Platform load balancer. Forwarding rules can
6460
6582
  # also reference target instances and Cloud VPN Classic gateways (
@@ -6590,7 +6712,7 @@ module Google
6590
6712
  # - Internal TCP/UDP load balancers
6591
6713
  # - INTERNAL_MANAGED is used for:
6592
6714
  # - Internal HTTP(S) load balancers
6593
- # - >INTERNAL_SELF_MANAGED is used for:
6715
+ # - INTERNAL_SELF_MANAGED is used for:
6594
6716
  # - Traffic Director
6595
6717
  # For more information about forwarding rules, refer to Forwarding rule concepts.
6596
6718
  # Corresponds to the JSON property `loadBalancingScheme`
@@ -6635,7 +6757,7 @@ module Google
6635
6757
  attr_accessor :network
6636
6758
 
6637
6759
  # This signifies the networking tier used for configuring this load balancer and
6638
- # can only take the following values: PREMIUM , STANDARD.
6760
+ # can only take the following values: PREMIUM, STANDARD.
6639
6761
  # For regional ForwardingRule, the valid values are PREMIUM and STANDARD. For
6640
6762
  # GlobalForwardingRule, the valid value is PREMIUM.
6641
6763
  # If this field is not specified, it is assumed to be PREMIUM. If IPAddress is
@@ -7110,6 +7232,44 @@ module Google
7110
7232
  end
7111
7233
  end
7112
7234
 
7235
+ #
7236
+ class GlobalNetworkEndpointGroupsAttachEndpointsRequest
7237
+ include Google::Apis::Core::Hashable
7238
+
7239
+ # The list of network endpoints to be attached.
7240
+ # Corresponds to the JSON property `networkEndpoints`
7241
+ # @return [Array<Google::Apis::ComputeV1::NetworkEndpoint>]
7242
+ attr_accessor :network_endpoints
7243
+
7244
+ def initialize(**args)
7245
+ update!(**args)
7246
+ end
7247
+
7248
+ # Update properties of this object
7249
+ def update!(**args)
7250
+ @network_endpoints = args[:network_endpoints] if args.key?(:network_endpoints)
7251
+ end
7252
+ end
7253
+
7254
+ #
7255
+ class GlobalNetworkEndpointGroupsDetachEndpointsRequest
7256
+ include Google::Apis::Core::Hashable
7257
+
7258
+ # The list of network endpoints to be detached.
7259
+ # Corresponds to the JSON property `networkEndpoints`
7260
+ # @return [Array<Google::Apis::ComputeV1::NetworkEndpoint>]
7261
+ attr_accessor :network_endpoints
7262
+
7263
+ def initialize(**args)
7264
+ update!(**args)
7265
+ end
7266
+
7267
+ # Update properties of this object
7268
+ def update!(**args)
7269
+ @network_endpoints = args[:network_endpoints] if args.key?(:network_endpoints)
7270
+ end
7271
+ end
7272
+
7113
7273
  #
7114
7274
  class GlobalSetLabelsRequest
7115
7275
  include Google::Apis::Core::Hashable
@@ -7541,8 +7701,8 @@ module Google
7541
7701
 
7542
7702
  # Represents a Health Check resource.
7543
7703
  # Google Compute Engine has two Health Check resources:
7544
- # * [Global](/compute/docs/reference/rest/latest/healthChecks) * [Regional](/
7545
- # compute/docs/reference/rest/latest/regionHealthChecks)
7704
+ # * [Global](/compute/docs/reference/rest/`$api_version`/healthChecks) * [
7705
+ # Regional](/compute/docs/reference/rest/`$api_version`/regionHealthChecks)
7546
7706
  # Internal HTTP(S) load balancers use regional health checks. All other types of
7547
7707
  # GCP load balancers and managed instance group auto-healing use global health
7548
7708
  # checks. For more information, read Health Check Concepts.
@@ -8119,9 +8279,10 @@ module Google
8119
8279
  # @return [String]
8120
8280
  attr_accessor :description
8121
8281
 
8122
- # The list of host patterns to match. They must be valid hostnames, except *
8123
- # will match any string of ([a-z0-9-.]*). In that case, * must be the first
8124
- # character and must be followed in the pattern by either - or ..
8282
+ # The list of host patterns to match. They must be valid hostnames with optional
8283
+ # port numbers in the format host:port. * matches any string of ([a-z0-9-.]*).
8284
+ # In that case, * must be the first character and must be followed in the
8285
+ # pattern by either - or ..
8125
8286
  # Corresponds to the JSON property `hosts`
8126
8287
  # @return [Array<String>]
8127
8288
  attr_accessor :hosts
@@ -9388,6 +9549,12 @@ module Google
9388
9549
  # @return [String]
9389
9550
  attr_accessor :self_link
9390
9551
 
9552
+ # Initial State for shielded instance, these are public keys which are safe to
9553
+ # store in public
9554
+ # Corresponds to the JSON property `shieldedInstanceInitialState`
9555
+ # @return [Google::Apis::ComputeV1::InitialStateConfig]
9556
+ attr_accessor :shielded_instance_initial_state
9557
+
9391
9558
  # URL of the source disk used to create this image. This can be a full or valid
9392
9559
  # partial URL. You must provide either this property or the rawDisk.source
9393
9560
  # property but not both to create an image. For example, the following are valid
@@ -9497,6 +9664,7 @@ module Google
9497
9664
  @name = args[:name] if args.key?(:name)
9498
9665
  @raw_disk = args[:raw_disk] if args.key?(:raw_disk)
9499
9666
  @self_link = args[:self_link] if args.key?(:self_link)
9667
+ @shielded_instance_initial_state = args[:shielded_instance_initial_state] if args.key?(:shielded_instance_initial_state)
9500
9668
  @source_disk = args[:source_disk] if args.key?(:source_disk)
9501
9669
  @source_disk_encryption_key = args[:source_disk_encryption_key] if args.key?(:source_disk_encryption_key)
9502
9670
  @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
@@ -9664,6 +9832,44 @@ module Google
9664
9832
  end
9665
9833
  end
9666
9834
 
9835
+ # Initial State for shielded instance, these are public keys which are safe to
9836
+ # store in public
9837
+ class InitialStateConfig
9838
+ include Google::Apis::Core::Hashable
9839
+
9840
+ # The Key Database (db).
9841
+ # Corresponds to the JSON property `dbs`
9842
+ # @return [Array<Google::Apis::ComputeV1::FileContentBuffer>]
9843
+ attr_accessor :dbs
9844
+
9845
+ # The forbidden key database (dbx).
9846
+ # Corresponds to the JSON property `dbxs`
9847
+ # @return [Array<Google::Apis::ComputeV1::FileContentBuffer>]
9848
+ attr_accessor :dbxs
9849
+
9850
+ # The Key Exchange Key (KEK).
9851
+ # Corresponds to the JSON property `keks`
9852
+ # @return [Array<Google::Apis::ComputeV1::FileContentBuffer>]
9853
+ attr_accessor :keks
9854
+
9855
+ # The Platform Key (PK).
9856
+ # Corresponds to the JSON property `pk`
9857
+ # @return [Google::Apis::ComputeV1::FileContentBuffer]
9858
+ attr_accessor :pk
9859
+
9860
+ def initialize(**args)
9861
+ update!(**args)
9862
+ end
9863
+
9864
+ # Update properties of this object
9865
+ def update!(**args)
9866
+ @dbs = args[:dbs] if args.key?(:dbs)
9867
+ @dbxs = args[:dbxs] if args.key?(:dbxs)
9868
+ @keks = args[:keks] if args.key?(:keks)
9869
+ @pk = args[:pk] if args.key?(:pk)
9870
+ end
9871
+ end
9872
+
9667
9873
  # Represents an Instance resource.
9668
9874
  # An instance is a virtual machine that is hosted on Google Cloud Platform. For
9669
9875
  # more information, read Virtual Machine Instances. (== resource_for `$
@@ -9712,6 +9918,17 @@ module Google
9712
9918
  # @return [Google::Apis::ComputeV1::DisplayDevice]
9713
9919
  attr_accessor :display_device
9714
9920
 
9921
+ # Specifies a fingerprint for this resource, which is essentially a hash of the
9922
+ # instance's contents and used for optimistic locking. The fingerprint is
9923
+ # initially generated by Compute Engine and changes after every request to
9924
+ # modify or update the instance. You must always provide an up-to-date
9925
+ # fingerprint hash in order to update the instance.
9926
+ # To see the latest fingerprint, make get() request to the instance.
9927
+ # Corresponds to the JSON property `fingerprint`
9928
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
9929
+ # @return [String]
9930
+ attr_accessor :fingerprint
9931
+
9715
9932
  # A list of the type and count of accelerator cards attached to the instance.
9716
9933
  # Corresponds to the JSON property `guestAccelerators`
9717
9934
  # @return [Array<Google::Apis::ComputeV1::AcceleratorConfig>]
@@ -9805,7 +10022,12 @@ module Google
9805
10022
  # @return [Google::Apis::ComputeV1::ReservationAffinity]
9806
10023
  attr_accessor :reservation_affinity
9807
10024
 
9808
- # Sets the scheduling options for an Instance. NextID: 9
10025
+ # Resource policies applied to this instance.
10026
+ # Corresponds to the JSON property `resourcePolicies`
10027
+ # @return [Array<String>]
10028
+ attr_accessor :resource_policies
10029
+
10030
+ # Sets the scheduling options for an Instance. NextID: 10
9809
10031
  # Corresponds to the JSON property `scheduling`
9810
10032
  # @return [Google::Apis::ComputeV1::Scheduling]
9811
10033
  attr_accessor :scheduling
@@ -9879,6 +10101,7 @@ module Google
9879
10101
  @description = args[:description] if args.key?(:description)
9880
10102
  @disks = args[:disks] if args.key?(:disks)
9881
10103
  @display_device = args[:display_device] if args.key?(:display_device)
10104
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
9882
10105
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
9883
10106
  @hostname = args[:hostname] if args.key?(:hostname)
9884
10107
  @id = args[:id] if args.key?(:id)
@@ -9891,6 +10114,7 @@ module Google
9891
10114
  @name = args[:name] if args.key?(:name)
9892
10115
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
9893
10116
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
10117
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
9894
10118
  @scheduling = args[:scheduling] if args.key?(:scheduling)
9895
10119
  @self_link = args[:self_link] if args.key?(:self_link)
9896
10120
  @service_accounts = args[:service_accounts] if args.key?(:service_accounts)
@@ -10911,6 +11135,12 @@ module Google
10911
11135
  class InstanceGroupManagerStatus
10912
11136
  include Google::Apis::Core::Hashable
10913
11137
 
11138
+ # [Output Only] The URL of the Autoscaler that targets this instance group
11139
+ # manager.
11140
+ # Corresponds to the JSON property `autoscaler`
11141
+ # @return [String]
11142
+ attr_accessor :autoscaler
11143
+
10914
11144
  # [Output Only] A bit indicating whether the managed instance group is in a
10915
11145
  # stable state. A stable state means that: none of the instances in the managed
10916
11146
  # instance group is currently undergoing any type of change (for example,
@@ -10934,6 +11164,7 @@ module Google
10934
11164
 
10935
11165
  # Update properties of this object
10936
11166
  def update!(**args)
11167
+ @autoscaler = args[:autoscaler] if args.key?(:autoscaler)
10937
11168
  @is_stable = args[:is_stable] if args.key?(:is_stable)
10938
11169
  @version_target = args[:version_target] if args.key?(:version_target)
10939
11170
  end
@@ -10995,6 +11226,11 @@ module Google
10995
11226
  # @return [String]
10996
11227
  attr_accessor :minimal_action
10997
11228
 
11229
+ # What action should be used to replace instances. See minimal_action.REPLACE
11230
+ # Corresponds to the JSON property `replacementMethod`
11231
+ # @return [String]
11232
+ attr_accessor :replacement_method
11233
+
10998
11234
  # The type of update process. You can specify either PROACTIVE so that the
10999
11235
  # instance group manager proactively executes actions in order to bring
11000
11236
  # instances to their target versions or OPPORTUNISTIC so that no action is
@@ -11014,6 +11250,7 @@ module Google
11014
11250
  @max_surge = args[:max_surge] if args.key?(:max_surge)
11015
11251
  @max_unavailable = args[:max_unavailable] if args.key?(:max_unavailable)
11016
11252
  @minimal_action = args[:minimal_action] if args.key?(:minimal_action)
11253
+ @replacement_method = args[:replacement_method] if args.key?(:replacement_method)
11017
11254
  @type = args[:type] if args.key?(:type)
11018
11255
  end
11019
11256
  end
@@ -11158,6 +11395,35 @@ module Google
11158
11395
  end
11159
11396
  end
11160
11397
 
11398
+ #
11399
+ class InstanceGroupManagersListErrorsResponse
11400
+ include Google::Apis::Core::Hashable
11401
+
11402
+ # [Output Only] The list of errors of the managed instance group.
11403
+ # Corresponds to the JSON property `items`
11404
+ # @return [Array<Google::Apis::ComputeV1::InstanceManagedByIgmError>]
11405
+ attr_accessor :items
11406
+
11407
+ # [Output Only] This token allows you to get the next page of results for list
11408
+ # requests. If the number of results is larger than maxResults, use the
11409
+ # nextPageToken as a value for the query parameter pageToken in the next list
11410
+ # request. Subsequent list requests will have their own nextPageToken to
11411
+ # continue paging through the results.
11412
+ # Corresponds to the JSON property `nextPageToken`
11413
+ # @return [String]
11414
+ attr_accessor :next_page_token
11415
+
11416
+ def initialize(**args)
11417
+ update!(**args)
11418
+ end
11419
+
11420
+ # Update properties of this object
11421
+ def update!(**args)
11422
+ @items = args[:items] if args.key?(:items)
11423
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
11424
+ end
11425
+ end
11426
+
11161
11427
  #
11162
11428
  class InstanceGroupManagersListManagedInstancesResponse
11163
11429
  include Google::Apis::Core::Hashable
@@ -11167,6 +11433,15 @@ module Google
11167
11433
  # @return [Array<Google::Apis::ComputeV1::ManagedInstance>]
11168
11434
  attr_accessor :managed_instances
11169
11435
 
11436
+ # [Output Only] This token allows you to get the next page of results for list
11437
+ # requests. If the number of results is larger than maxResults, use the
11438
+ # nextPageToken as a value for the query parameter pageToken in the next list
11439
+ # request. Subsequent list requests will have their own nextPageToken to
11440
+ # continue paging through the results.
11441
+ # Corresponds to the JSON property `nextPageToken`
11442
+ # @return [String]
11443
+ attr_accessor :next_page_token
11444
+
11170
11445
  def initialize(**args)
11171
11446
  update!(**args)
11172
11447
  end
@@ -11174,6 +11449,7 @@ module Google
11174
11449
  # Update properties of this object
11175
11450
  def update!(**args)
11176
11451
  @managed_instances = args[:managed_instances] if args.key?(:managed_instances)
11452
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
11177
11453
  end
11178
11454
  end
11179
11455
 
@@ -11880,6 +12156,101 @@ module Google
11880
12156
  end
11881
12157
  end
11882
12158
 
12159
+ #
12160
+ class InstanceManagedByIgmError
12161
+ include Google::Apis::Core::Hashable
12162
+
12163
+ # [Output Only] Contents of the error.
12164
+ # Corresponds to the JSON property `error`
12165
+ # @return [Google::Apis::ComputeV1::InstanceManagedByIgmErrorManagedInstanceError]
12166
+ attr_accessor :error
12167
+
12168
+ # [Output Only] Details of the instance action that triggered this error. May be
12169
+ # null, if the error was not caused by an action on an instance. This field is
12170
+ # optional.
12171
+ # Corresponds to the JSON property `instanceActionDetails`
12172
+ # @return [Google::Apis::ComputeV1::InstanceManagedByIgmErrorInstanceActionDetails]
12173
+ attr_accessor :instance_action_details
12174
+
12175
+ # [Output Only] The time that this error occurred. This value is in RFC3339 text
12176
+ # format.
12177
+ # Corresponds to the JSON property `timestamp`
12178
+ # @return [String]
12179
+ attr_accessor :timestamp
12180
+
12181
+ def initialize(**args)
12182
+ update!(**args)
12183
+ end
12184
+
12185
+ # Update properties of this object
12186
+ def update!(**args)
12187
+ @error = args[:error] if args.key?(:error)
12188
+ @instance_action_details = args[:instance_action_details] if args.key?(:instance_action_details)
12189
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
12190
+ end
12191
+ end
12192
+
12193
+ #
12194
+ class InstanceManagedByIgmErrorInstanceActionDetails
12195
+ include Google::Apis::Core::Hashable
12196
+
12197
+ # [Output Only] Action that managed instance group was executing on the instance
12198
+ # when the error occurred. Possible values:
12199
+ # Corresponds to the JSON property `action`
12200
+ # @return [String]
12201
+ attr_accessor :action
12202
+
12203
+ # [Output Only] The URL of the instance. The URL can be set even if the instance
12204
+ # has not yet been created.
12205
+ # Corresponds to the JSON property `instance`
12206
+ # @return [String]
12207
+ attr_accessor :instance
12208
+
12209
+ # [Output Only] Version this instance was created from, or was being created
12210
+ # from, but the creation failed. Corresponds to one of the versions that were
12211
+ # set on the Instance Group Manager resource at the time this instance was being
12212
+ # created.
12213
+ # Corresponds to the JSON property `version`
12214
+ # @return [Google::Apis::ComputeV1::ManagedInstanceVersion]
12215
+ attr_accessor :version
12216
+
12217
+ def initialize(**args)
12218
+ update!(**args)
12219
+ end
12220
+
12221
+ # Update properties of this object
12222
+ def update!(**args)
12223
+ @action = args[:action] if args.key?(:action)
12224
+ @instance = args[:instance] if args.key?(:instance)
12225
+ @version = args[:version] if args.key?(:version)
12226
+ end
12227
+ end
12228
+
12229
+ #
12230
+ class InstanceManagedByIgmErrorManagedInstanceError
12231
+ include Google::Apis::Core::Hashable
12232
+
12233
+ # [Output Only] Error code.
12234
+ # Corresponds to the JSON property `code`
12235
+ # @return [String]
12236
+ attr_accessor :code
12237
+
12238
+ # [Output Only] Error message.
12239
+ # Corresponds to the JSON property `message`
12240
+ # @return [String]
12241
+ attr_accessor :message
12242
+
12243
+ def initialize(**args)
12244
+ update!(**args)
12245
+ end
12246
+
12247
+ # Update properties of this object
12248
+ def update!(**args)
12249
+ @code = args[:code] if args.key?(:code)
12250
+ @message = args[:message] if args.key?(:message)
12251
+ end
12252
+ end
12253
+
11883
12254
  #
11884
12255
  class MoveInstanceRequest
11885
12256
  include Google::Apis::Core::Hashable
@@ -11981,7 +12352,13 @@ module Google
11981
12352
  # @return [Google::Apis::ComputeV1::ReservationAffinity]
11982
12353
  attr_accessor :reservation_affinity
11983
12354
 
11984
- # Sets the scheduling options for an Instance. NextID: 9
12355
+ # Resource policies (names, not ULRs) applied to instances created from this
12356
+ # template.
12357
+ # Corresponds to the JSON property `resourcePolicies`
12358
+ # @return [Array<String>]
12359
+ attr_accessor :resource_policies
12360
+
12361
+ # Sets the scheduling options for an Instance. NextID: 10
11985
12362
  # Corresponds to the JSON property `scheduling`
11986
12363
  # @return [Google::Apis::ComputeV1::Scheduling]
11987
12364
  attr_accessor :scheduling
@@ -12019,6 +12396,7 @@ module Google
12019
12396
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
12020
12397
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
12021
12398
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
12399
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
12022
12400
  @scheduling = args[:scheduling] if args.key?(:scheduling)
12023
12401
  @service_accounts = args[:service_accounts] if args.key?(:service_accounts)
12024
12402
  @shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
@@ -12279,6 +12657,44 @@ module Google
12279
12657
  end
12280
12658
  end
12281
12659
 
12660
+ #
12661
+ class InstancesAddResourcePoliciesRequest
12662
+ include Google::Apis::Core::Hashable
12663
+
12664
+ # Resource policies to be added to this instance.
12665
+ # Corresponds to the JSON property `resourcePolicies`
12666
+ # @return [Array<String>]
12667
+ attr_accessor :resource_policies
12668
+
12669
+ def initialize(**args)
12670
+ update!(**args)
12671
+ end
12672
+
12673
+ # Update properties of this object
12674
+ def update!(**args)
12675
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
12676
+ end
12677
+ end
12678
+
12679
+ #
12680
+ class InstancesRemoveResourcePoliciesRequest
12681
+ include Google::Apis::Core::Hashable
12682
+
12683
+ # Resource policies to be removed from this instance.
12684
+ # Corresponds to the JSON property `resourcePolicies`
12685
+ # @return [Array<String>]
12686
+ attr_accessor :resource_policies
12687
+
12688
+ def initialize(**args)
12689
+ update!(**args)
12690
+ end
12691
+
12692
+ # Update properties of this object
12693
+ def update!(**args)
12694
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
12695
+ end
12696
+ end
12697
+
12282
12698
  #
12283
12699
  class InstancesScopedList
12284
12700
  include Google::Apis::Core::Hashable
@@ -14065,7 +14481,11 @@ module Google
14065
14481
  end
14066
14482
  end
14067
14483
 
14068
- # A license resource.
14484
+ # Represents a License resource.
14485
+ # A License represents billing and aggregate usage data for public and
14486
+ # marketplace images. Caution This resource is intended for use only by third-
14487
+ # party partners who are creating Cloud Marketplace images. (== resource_for `$
14488
+ # api_version`.licenses ==)
14069
14489
  class License
14070
14490
  include Google::Apis::Core::Hashable
14071
14491
 
@@ -14146,7 +14566,11 @@ module Google
14146
14566
  end
14147
14567
  end
14148
14568
 
14149
- #
14569
+ # Represents a License Code resource.
14570
+ # A License Code is a unique identifier used to represent a license resource.
14571
+ # Caution This resource is intended for use only by third-party partners who are
14572
+ # creating Cloud Marketplace images. (== resource_for `$api_version`.
14573
+ # licenseCodes ==)
14150
14574
  class LicenseCode
14151
14575
  include Google::Apis::Core::Hashable
14152
14576
 
@@ -14404,8 +14828,6 @@ module Google
14404
14828
  # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==>
14405
14829
  # increment counter /iam/policy/debug_access_count `iam_principal=[value of
14406
14830
  # IAMContext.principal]`
14407
- # TODO(b/141846426): Consider supporting "authority" and "iam_principal" fields
14408
- # in the same counter.
14409
14831
  # Corresponds to the JSON property `counter`
14410
14832
  # @return [Google::Apis::ComputeV1::LogConfigCounterOptions]
14411
14833
  attr_accessor :counter
@@ -14466,8 +14888,6 @@ module Google
14466
14888
  # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==>
14467
14889
  # increment counter /iam/policy/debug_access_count `iam_principal=[value of
14468
14890
  # IAMContext.principal]`
14469
- # TODO(b/141846426): Consider supporting "authority" and "iam_principal" fields
14470
- # in the same counter.
14471
14891
  class LogConfigCounterOptions
14472
14892
  include Google::Apis::Core::Hashable
14473
14893
 
@@ -14531,7 +14951,9 @@ module Google
14531
14951
  include Google::Apis::Core::Hashable
14532
14952
 
14533
14953
  # Whether Gin logging should happen in a fail-closed manner at the caller. This
14534
- # is relevant only in the LocalIAM implementation, for now.
14954
+ # is currently supported in the LocalIAM implementation, Stubby C++, and Stubby
14955
+ # Java. For Apps Framework, see go/af-audit-logging#failclosed. TODO(b/77591626):
14956
+ # Add support for Stubby Go. TODO(b/129671387): Add support for Scaffolding.
14535
14957
  # Corresponds to the JSON property `logMode`
14536
14958
  # @return [String]
14537
14959
  attr_accessor :log_mode
@@ -15488,6 +15910,12 @@ module Google
15488
15910
  class NetworkEndpoint
15489
15911
  include Google::Apis::Core::Hashable
15490
15912
 
15913
+ # Optional fully qualified domain name of network endpoint. This can only be
15914
+ # specified when NetworkEndpointGroup.network_endpoint_type is NON_GCP_FQDN_PORT.
15915
+ # Corresponds to the JSON property `fqdn`
15916
+ # @return [String]
15917
+ attr_accessor :fqdn
15918
+
15491
15919
  # The name for a specific VM instance that the IP address belongs to. This is
15492
15920
  # required for network endpoints of type GCE_VM_IP_PORT. The instance must be in
15493
15921
  # the same zone of network endpoint group.
@@ -15518,6 +15946,7 @@ module Google
15518
15946
 
15519
15947
  # Update properties of this object
15520
15948
  def update!(**args)
15949
+ @fqdn = args[:fqdn] if args.key?(:fqdn)
15521
15950
  @instance = args[:instance] if args.key?(:instance)
15522
15951
  @ip_address = args[:ip_address] if args.key?(:ip_address)
15523
15952
  @port = args[:port] if args.key?(:port)
@@ -15525,8 +15954,8 @@ module Google
15525
15954
  end
15526
15955
 
15527
15956
  # Represents a collection of network endpoints.
15528
- # For more information read Setting up network endpoint groups in load balancing.
15529
- # (== resource_for `$api_version`.networkEndpointGroups ==) Next ID: 21
15957
+ # For more information read Network endpoint groups overview. (== resource_for `$
15958
+ # api_version`.networkEndpointGroups ==) Next ID: 21
15530
15959
  class NetworkEndpointGroup
15531
15960
  include Google::Apis::Core::Hashable
15532
15961
 
@@ -15575,8 +16004,7 @@ module Google
15575
16004
  # @return [String]
15576
16005
  attr_accessor :network
15577
16006
 
15578
- # Type of network endpoints in this network endpoint group. Currently the only
15579
- # supported value is GCE_VM_IP_PORT.
16007
+ # Type of network endpoints in this network endpoint group.
15580
16008
  # Corresponds to the JSON property `networkEndpointType`
15581
16009
  # @return [String]
15582
16010
  attr_accessor :network_endpoint_type
@@ -16559,6 +16987,11 @@ module Google
16559
16987
  class NodeGroup
16560
16988
  include Google::Apis::Core::Hashable
16561
16989
 
16990
+ # Specifies how autoscaling should behave.
16991
+ # Corresponds to the JSON property `autoscalingPolicy`
16992
+ # @return [Google::Apis::ComputeV1::NodeGroupAutoscalingPolicy]
16993
+ attr_accessor :autoscaling_policy
16994
+
16562
16995
  # [Output Only] Creation timestamp in RFC3339 text format.
16563
16996
  # Corresponds to the JSON property `creationTimestamp`
16564
16997
  # @return [String]
@@ -16570,6 +17003,12 @@ module Google
16570
17003
  # @return [String]
16571
17004
  attr_accessor :description
16572
17005
 
17006
+ #
17007
+ # Corresponds to the JSON property `fingerprint`
17008
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
17009
+ # @return [String]
17010
+ attr_accessor :fingerprint
17011
+
16573
17012
  # [Output Only] The unique identifier for the resource. This identifier is
16574
17013
  # defined by the server.
16575
17014
  # Corresponds to the JSON property `id`
@@ -16582,6 +17021,12 @@ module Google
16582
17021
  # @return [String]
16583
17022
  attr_accessor :kind
16584
17023
 
17024
+ # Specifies how to handle instances when a node in the group undergoes
17025
+ # maintenance.
17026
+ # Corresponds to the JSON property `maintenancePolicy`
17027
+ # @return [String]
17028
+ attr_accessor :maintenance_policy
17029
+
16585
17030
  # The name of the resource, provided by the client when initially creating the
16586
17031
  # resource. The resource name must be 1-63 characters long, and comply with
16587
17032
  # RFC1035. Specifically, the name must be 1-63 characters long and match the
@@ -16625,10 +17070,13 @@ module Google
16625
17070
 
16626
17071
  # Update properties of this object
16627
17072
  def update!(**args)
17073
+ @autoscaling_policy = args[:autoscaling_policy] if args.key?(:autoscaling_policy)
16628
17074
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
16629
17075
  @description = args[:description] if args.key?(:description)
17076
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
16630
17077
  @id = args[:id] if args.key?(:id)
16631
17078
  @kind = args[:kind] if args.key?(:kind)
17079
+ @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy)
16632
17080
  @name = args[:name] if args.key?(:name)
16633
17081
  @node_template = args[:node_template] if args.key?(:node_template)
16634
17082
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -16756,6 +17204,37 @@ module Google
16756
17204
  end
16757
17205
  end
16758
17206
 
17207
+ #
17208
+ class NodeGroupAutoscalingPolicy
17209
+ include Google::Apis::Core::Hashable
17210
+
17211
+ # The maximum number of nodes that the group should have.
17212
+ # Corresponds to the JSON property `maxNodes`
17213
+ # @return [Fixnum]
17214
+ attr_accessor :max_nodes
17215
+
17216
+ # The minimum number of nodes that the group should have.
17217
+ # Corresponds to the JSON property `minNodes`
17218
+ # @return [Fixnum]
17219
+ attr_accessor :min_nodes
17220
+
17221
+ # The autoscaling mode.
17222
+ # Corresponds to the JSON property `mode`
17223
+ # @return [String]
17224
+ attr_accessor :mode
17225
+
17226
+ def initialize(**args)
17227
+ update!(**args)
17228
+ end
17229
+
17230
+ # Update properties of this object
17231
+ def update!(**args)
17232
+ @max_nodes = args[:max_nodes] if args.key?(:max_nodes)
17233
+ @min_nodes = args[:min_nodes] if args.key?(:min_nodes)
17234
+ @mode = args[:mode] if args.key?(:mode)
17235
+ end
17236
+ end
17237
+
16759
17238
  # Contains a list of nodeGroups.
16760
17239
  class NodeGroupList
16761
17240
  include Google::Apis::Core::Hashable
@@ -16898,6 +17377,11 @@ module Google
16898
17377
  # @return [Google::Apis::ComputeV1::ServerBinding]
16899
17378
  attr_accessor :server_binding
16900
17379
 
17380
+ # Server ID associated with this node.
17381
+ # Corresponds to the JSON property `serverId`
17382
+ # @return [String]
17383
+ attr_accessor :server_id
17384
+
16901
17385
  #
16902
17386
  # Corresponds to the JSON property `status`
16903
17387
  # @return [String]
@@ -16913,6 +17397,7 @@ module Google
16913
17397
  @name = args[:name] if args.key?(:name)
16914
17398
  @node_type = args[:node_type] if args.key?(:node_type)
16915
17399
  @server_binding = args[:server_binding] if args.key?(:server_binding)
17400
+ @server_id = args[:server_id] if args.key?(:server_id)
16916
17401
  @status = args[:status] if args.key?(:status)
16917
17402
  end
16918
17403
  end
@@ -17187,7 +17672,7 @@ module Google
17187
17672
  # Represent a sole-tenant Node Template resource.
17188
17673
  # You can use a template to define properties for nodes in a node group. For
17189
17674
  # more information, read Creating node groups and instances. (== resource_for `$
17190
- # api_version`.nodeTemplates ==) (== NextID: 18 ==)
17675
+ # api_version`.nodeTemplates ==) (== NextID: 19 ==)
17191
17676
  class NodeTemplate
17192
17677
  include Google::Apis::Core::Hashable
17193
17678
 
@@ -18077,15 +18562,15 @@ module Google
18077
18562
 
18078
18563
  # Represents an Operation resource.
18079
18564
  # Google Compute Engine has three Operation resources:
18080
- # * [Global](/compute/docs/reference/rest/latest/globalOperations) * [Regional](/
18081
- # compute/docs/reference/rest/latest/regionOperations) * [Zonal](/compute/docs/
18082
- # reference/rest/latest/zoneOperations)
18565
+ # * [Global](/compute/docs/reference/rest/`$api_version`/globalOperations) * [
18566
+ # Regional](/compute/docs/reference/rest/`$api_version`/regionOperations) * [
18567
+ # Zonal](/compute/docs/reference/rest/`$api_version`/zoneOperations)
18083
18568
  # You can use an operation resource to manage asynchronous API requests. For
18084
18569
  # more information, read Handling API responses.
18085
18570
  # Operations can be global, regional or zonal.
18086
- # - For global operations, use the globalOperations resource.
18087
- # - For regional operations, use the regionOperations resource.
18088
- # - For zonal operations, use the zonalOperations resource.
18571
+ # - For global operations, use the `globalOperations` resource.
18572
+ # - For regional operations, use the `regionOperations` resource.
18573
+ # - For zonal operations, use the `zonalOperations` resource.
18089
18574
  # For more information, read Global, Regional, and Zonal Resources. (==
18090
18575
  # resource_for `$api_version`.globalOperations ==) (== resource_for `$
18091
18576
  # api_version`.regionOperations ==) (== resource_for `$api_version`.
@@ -18123,13 +18608,13 @@ module Google
18123
18608
  attr_accessor :error
18124
18609
 
18125
18610
  # [Output Only] If the operation fails, this field contains the HTTP error
18126
- # message that was returned, such as NOT FOUND.
18611
+ # message that was returned, such as `NOT FOUND`.
18127
18612
  # Corresponds to the JSON property `httpErrorMessage`
18128
18613
  # @return [String]
18129
18614
  attr_accessor :http_error_message
18130
18615
 
18131
18616
  # [Output Only] If the operation fails, this field contains the HTTP error
18132
- # status code that was returned. For example, a 404 means the resource was not
18617
+ # status code that was returned. For example, a `404` means the resource was not
18133
18618
  # found.
18134
18619
  # Corresponds to the JSON property `httpErrorStatusCode`
18135
18620
  # @return [Fixnum]
@@ -18147,7 +18632,7 @@ module Google
18147
18632
  # @return [String]
18148
18633
  attr_accessor :insert_time
18149
18634
 
18150
- # [Output Only] Type of the resource. Always compute#operation for Operation
18635
+ # [Output Only] Type of the resource. Always `compute#operation` for Operation
18151
18636
  # resources.
18152
18637
  # Corresponds to the JSON property `kind`
18153
18638
  # @return [String]
@@ -18158,8 +18643,8 @@ module Google
18158
18643
  # @return [String]
18159
18644
  attr_accessor :name
18160
18645
 
18161
- # [Output Only] The type of operation, such as insert, update, or delete, and so
18162
- # on.
18646
+ # [Output Only] The type of operation, such as `insert`, `update`, or `delete`,
18647
+ # and so on.
18163
18648
  # Corresponds to the JSON property `operationType`
18164
18649
  # @return [String]
18165
18650
  attr_accessor :operation_type
@@ -18189,8 +18674,8 @@ module Google
18189
18674
  # @return [String]
18190
18675
  attr_accessor :start_time
18191
18676
 
18192
- # [Output Only] The status of the operation, which can be one of the following:
18193
- # PENDING, RUNNING, or DONE.
18677
+ # [Output Only] The status of the operation, which can be one of the following: `
18678
+ # PENDING`, `RUNNING`, or `DONE`.
18194
18679
  # Corresponds to the JSON property `status`
18195
18680
  # @return [String]
18196
18681
  attr_accessor :status
@@ -18214,7 +18699,8 @@ module Google
18214
18699
  # @return [String]
18215
18700
  attr_accessor :target_link
18216
18701
 
18217
- # [Output Only] User who requested the operation, for example: user@example.com.
18702
+ # [Output Only] User who requested the operation, for example: `user@example.com`
18703
+ # .
18218
18704
  # Corresponds to the JSON property `user`
18219
18705
  # @return [String]
18220
18706
  attr_accessor :user
@@ -18394,16 +18880,16 @@ module Google
18394
18880
  # @return [Hash<String,Google::Apis::ComputeV1::OperationsScopedList>]
18395
18881
  attr_accessor :items
18396
18882
 
18397
- # [Output Only] Type of resource. Always compute#operationAggregatedList for
18883
+ # [Output Only] Type of resource. Always `compute#operationAggregatedList` for
18398
18884
  # aggregated lists of operations.
18399
18885
  # Corresponds to the JSON property `kind`
18400
18886
  # @return [String]
18401
18887
  attr_accessor :kind
18402
18888
 
18403
18889
  # [Output Only] This token allows you to get the next page of results for list
18404
- # requests. If the number of results is larger than maxResults, use the
18405
- # nextPageToken as a value for the query parameter pageToken in the next list
18406
- # request. Subsequent list requests will have their own nextPageToken to
18890
+ # requests. If the number of results is larger than `maxResults`, use the `
18891
+ # nextPageToken` as a value for the query parameter `pageToken` in the next list
18892
+ # request. Subsequent list requests will have their own `nextPageToken` to
18407
18893
  # continue paging through the results.
18408
18894
  # Corresponds to the JSON property `nextPageToken`
18409
18895
  # @return [String]
@@ -18513,16 +18999,16 @@ module Google
18513
18999
  # @return [Array<Google::Apis::ComputeV1::Operation>]
18514
19000
  attr_accessor :items
18515
19001
 
18516
- # [Output Only] Type of resource. Always compute#operations for Operations
19002
+ # [Output Only] Type of resource. Always `compute#operations` for Operations
18517
19003
  # resource.
18518
19004
  # Corresponds to the JSON property `kind`
18519
19005
  # @return [String]
18520
19006
  attr_accessor :kind
18521
19007
 
18522
19008
  # [Output Only] This token allows you to get the next page of results for list
18523
- # requests. If the number of results is larger than maxResults, use the
18524
- # nextPageToken as a value for the query parameter pageToken in the next list
18525
- # request. Subsequent list requests will have their own nextPageToken to
19009
+ # requests. If the number of results is larger than `maxResults`, use the `
19010
+ # nextPageToken` as a value for the query parameter `pageToken` in the next list
19011
+ # request. Subsequent list requests will have their own `nextPageToken` to
18526
19012
  # continue paging through the results.
18527
19013
  # Corresponds to the JSON property `nextPageToken`
18528
19014
  # @return [String]
@@ -19578,21 +20064,21 @@ module Google
19578
20064
  class PerInstanceConfig
19579
20065
  include Google::Apis::Core::Hashable
19580
20066
 
19581
- # Fingerprint of this per-instance config. This field may be used in optimistic
19582
- # locking. It will be ignored when inserting a per-instance config. An up-to-
19583
- # date fingerprint must be provided in order to update an existing per-instance
20067
+ # Fingerprint of this per-instance config. This field can be used in optimistic
20068
+ # locking. It is ignored when inserting a per-instance config. An up-to-date
20069
+ # fingerprint must be provided in order to update an existing per-instance
19584
20070
  # config or the field needs to be unset.
19585
20071
  # Corresponds to the JSON property `fingerprint`
19586
20072
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
19587
20073
  # @return [String]
19588
20074
  attr_accessor :fingerprint
19589
20075
 
19590
- # The name of the per-instance config and the corresponding instance. Serves as
19591
- # a merge key during UpdatePerInstanceConfigs operation, i.e. if per-instance
19592
- # config with the same name exists then it will be updated, otherwise a new one
19593
- # will be created for the VM instance with the same name. An attempt to create a
19594
- # per-instance config for a VM instance that either doesn't exist or is not part
19595
- # of the group will result in a failure.
20076
+ # The name of a per-instance config and its corresponding instance. Serves as a
20077
+ # merge key during UpdatePerInstanceConfigs operations, that is, if a per-
20078
+ # instance config with the same name exists then it will be updated, otherwise a
20079
+ # new one will be created for the VM instance with the same name. An attempt to
20080
+ # create a per-instance config for a VM instance that either doesn't exist or is
20081
+ # not part of the group will result in an error.
19596
20082
  # Corresponds to the JSON property `name`
19597
20083
  # @return [String]
19598
20084
  attr_accessor :name
@@ -19718,6 +20204,25 @@ module Google
19718
20204
  end
19719
20205
  end
19720
20206
 
20207
+ #
20208
+ class PreconfiguredWafSet
20209
+ include Google::Apis::Core::Hashable
20210
+
20211
+ # List of entities that are currently supported for WAF rules.
20212
+ # Corresponds to the JSON property `expressionSets`
20213
+ # @return [Array<Google::Apis::ComputeV1::WafExpressionSet>]
20214
+ attr_accessor :expression_sets
20215
+
20216
+ def initialize(**args)
20217
+ update!(**args)
20218
+ end
20219
+
20220
+ # Update properties of this object
20221
+ def update!(**args)
20222
+ @expression_sets = args[:expression_sets] if args.key?(:expression_sets)
20223
+ end
20224
+ end
20225
+
19721
20226
  # Represents a Project resource.
19722
20227
  # A project is used to organize resources in a Google Cloud Platform environment.
19723
20228
  # For more information, read about the Resource Hierarchy. (== resource_for `$
@@ -20723,6 +21228,35 @@ module Google
20723
21228
  end
20724
21229
  end
20725
21230
 
21231
+ #
21232
+ class RegionInstanceGroupManagersListErrorsResponse
21233
+ include Google::Apis::Core::Hashable
21234
+
21235
+ # [Output Only] The list of errors of the managed instance group.
21236
+ # Corresponds to the JSON property `items`
21237
+ # @return [Array<Google::Apis::ComputeV1::InstanceManagedByIgmError>]
21238
+ attr_accessor :items
21239
+
21240
+ # [Output Only] This token allows you to get the next page of results for list
21241
+ # requests. If the number of results is larger than maxResults, use the
21242
+ # nextPageToken as a value for the query parameter pageToken in the next list
21243
+ # request. Subsequent list requests will have their own nextPageToken to
21244
+ # continue paging through the results.
21245
+ # Corresponds to the JSON property `nextPageToken`
21246
+ # @return [String]
21247
+ attr_accessor :next_page_token
21248
+
21249
+ def initialize(**args)
21250
+ update!(**args)
21251
+ end
21252
+
21253
+ # Update properties of this object
21254
+ def update!(**args)
21255
+ @items = args[:items] if args.key?(:items)
21256
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
21257
+ end
21258
+ end
21259
+
20726
21260
  #
20727
21261
  class RegionInstanceGroupManagersListInstancesResponse
20728
21262
  include Google::Apis::Core::Hashable
@@ -20732,6 +21266,15 @@ module Google
20732
21266
  # @return [Array<Google::Apis::ComputeV1::ManagedInstance>]
20733
21267
  attr_accessor :managed_instances
20734
21268
 
21269
+ # [Output Only] This token allows you to get the next page of results for list
21270
+ # requests. If the number of results is larger than maxResults, use the
21271
+ # nextPageToken as a value for the query parameter pageToken in the next list
21272
+ # request. Subsequent list requests will have their own nextPageToken to
21273
+ # continue paging through the results.
21274
+ # Corresponds to the JSON property `nextPageToken`
21275
+ # @return [String]
21276
+ attr_accessor :next_page_token
21277
+
20735
21278
  def initialize(**args)
20736
21279
  update!(**args)
20737
21280
  end
@@ -20739,6 +21282,7 @@ module Google
20739
21282
  # Update properties of this object
20740
21283
  def update!(**args)
20741
21284
  @managed_instances = args[:managed_instances] if args.key?(:managed_instances)
21285
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
20742
21286
  end
20743
21287
  end
20744
21288
 
@@ -21222,8 +21766,8 @@ module Google
21222
21766
 
21223
21767
  # Represents a URL Map resource.
21224
21768
  # Google Compute Engine has two URL Map resources:
21225
- # * [Global](/compute/docs/reference/rest/latest/urlMaps) * [Regional](/compute/
21226
- # docs/reference/rest/latest/regionUrlMaps)
21769
+ # * [Global](/compute/docs/reference/rest/`$api_version`/urlMaps) * [Regional](/
21770
+ # compute/docs/reference/rest/`$api_version`/regionUrlMaps)
21227
21771
  # A URL map resource is a component of certain types of GCP load balancers and
21228
21772
  # Traffic Director.
21229
21773
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
@@ -21896,7 +22440,10 @@ module Google
21896
22440
  end
21897
22441
  end
21898
22442
 
21899
- #
22443
+ # Represents a Resource Policy resource. You can use resource policies to
22444
+ # schedule actions for some Compute Engine resources. For example, you can use
22445
+ # them to schedule persistent disk snapshots.
22446
+ # (== resource_for `$api_version`.resourcePolicies ==)
21900
22447
  class ResourcePolicy
21901
22448
  include Google::Apis::Core::Hashable
21902
22449
 
@@ -21910,6 +22457,12 @@ module Google
21910
22457
  # @return [String]
21911
22458
  attr_accessor :description
21912
22459
 
22460
+ # A GroupPlacementPolicy specifies resource placement configuration. It
22461
+ # specifies the failure bucket separation as well as network locality
22462
+ # Corresponds to the JSON property `groupPlacementPolicy`
22463
+ # @return [Google::Apis::ComputeV1::ResourcePolicyGroupPlacementPolicy]
22464
+ attr_accessor :group_placement_policy
22465
+
21913
22466
  # [Output Only] The unique identifier for the resource. This identifier is
21914
22467
  # defined by the server.
21915
22468
  # Corresponds to the JSON property `id`
@@ -21963,6 +22516,7 @@ module Google
21963
22516
  def update!(**args)
21964
22517
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
21965
22518
  @description = args[:description] if args.key?(:description)
22519
+ @group_placement_policy = args[:group_placement_policy] if args.key?(:group_placement_policy)
21966
22520
  @id = args[:id] if args.key?(:id)
21967
22521
  @kind = args[:kind] if args.key?(:kind)
21968
22522
  @name = args[:name] if args.key?(:name)
@@ -22100,7 +22654,8 @@ module Google
22100
22654
  class ResourcePolicyDailyCycle
22101
22655
  include Google::Apis::Core::Hashable
22102
22656
 
22103
- # Defines a schedule that runs every nth day of the month.
22657
+ # Defines a schedule with units measured in months. The value determines how
22658
+ # many months pass between the start of each cycle.
22104
22659
  # Corresponds to the JSON property `daysInCycle`
22105
22660
  # @return [Fixnum]
22106
22661
  attr_accessor :days_in_cycle
@@ -22130,6 +22685,40 @@ module Google
22130
22685
  end
22131
22686
  end
22132
22687
 
22688
+ # A GroupPlacementPolicy specifies resource placement configuration. It
22689
+ # specifies the failure bucket separation as well as network locality
22690
+ class ResourcePolicyGroupPlacementPolicy
22691
+ include Google::Apis::Core::Hashable
22692
+
22693
+ # The number of availability domains instances will be spread across. If two
22694
+ # instances are in different availability domain, they will not be put in the
22695
+ # same low latency network
22696
+ # Corresponds to the JSON property `availabilityDomainCount`
22697
+ # @return [Fixnum]
22698
+ attr_accessor :availability_domain_count
22699
+
22700
+ # Specifies network collocation
22701
+ # Corresponds to the JSON property `collocation`
22702
+ # @return [String]
22703
+ attr_accessor :collocation
22704
+
22705
+ # Number of vms in this placement group
22706
+ # Corresponds to the JSON property `vmCount`
22707
+ # @return [Fixnum]
22708
+ attr_accessor :vm_count
22709
+
22710
+ def initialize(**args)
22711
+ update!(**args)
22712
+ end
22713
+
22714
+ # Update properties of this object
22715
+ def update!(**args)
22716
+ @availability_domain_count = args[:availability_domain_count] if args.key?(:availability_domain_count)
22717
+ @collocation = args[:collocation] if args.key?(:collocation)
22718
+ @vm_count = args[:vm_count] if args.key?(:vm_count)
22719
+ end
22720
+ end
22721
+
22133
22722
  # Time window specified for hourly operations.
22134
22723
  class ResourcePolicyHourlyCycle
22135
22724
  include Google::Apis::Core::Hashable
@@ -22140,7 +22729,8 @@ module Google
22140
22729
  # @return [String]
22141
22730
  attr_accessor :duration
22142
22731
 
22143
- # Allows to define schedule that runs every nth hour.
22732
+ # Defines a schedule with units measured in hours. The value determines how many
22733
+ # hours pass between the start of each cycle.
22144
22734
  # Corresponds to the JSON property `hoursInCycle`
22145
22735
  # @return [Fixnum]
22146
22736
  attr_accessor :hours_in_cycle
@@ -22435,7 +23025,9 @@ module Google
22435
23025
  class ResourcePolicyWeeklyCycleDayOfWeek
22436
23026
  include Google::Apis::Core::Hashable
22437
23027
 
22438
- # Allows to define schedule that runs specified day of the week.
23028
+ # Defines a schedule that runs on specific days of the week. Specify one or more
23029
+ # days. The following options are available: MONDAY, TUESDAY, WEDNESDAY,
23030
+ # THURSDAY, FRIDAY, SATURDAY, SUNDAY.
22439
23031
  # Corresponds to the JSON property `day`
22440
23032
  # @return [String]
22441
23033
  attr_accessor :day
@@ -23195,15 +23787,15 @@ module Google
23195
23787
  attr_accessor :ip_range
23196
23788
 
23197
23789
  # URI of the linked Interconnect attachment. It must be in the same region as
23198
- # the router. Each interface can have one linked resource, which can be either
23199
- # be a VPN tunnel or an Interconnect attachment.
23790
+ # the router. Each interface can have one linked resource, which can be a VPN
23791
+ # tunnel, an Interconnect attachment, or a virtual machine instance.
23200
23792
  # Corresponds to the JSON property `linkedInterconnectAttachment`
23201
23793
  # @return [String]
23202
23794
  attr_accessor :linked_interconnect_attachment
23203
23795
 
23204
23796
  # URI of the linked VPN tunnel, which must be in the same region as the router.
23205
- # Each interface can have one linked resource, which can be either a VPN tunnel
23206
- # or an Interconnect attachment.
23797
+ # Each interface can have one linked resource, which can be a VPN tunnel, an
23798
+ # Interconnect attachment, or a virtual machine instance.
23207
23799
  # Corresponds to the JSON property `linkedVpnTunnel`
23208
23800
  # @return [String]
23209
23801
  attr_accessor :linked_vpn_tunnel
@@ -23985,7 +24577,7 @@ module Google
23985
24577
  end
23986
24578
  end
23987
24579
 
23988
- # Sets the scheduling options for an Instance. NextID: 9
24580
+ # Sets the scheduling options for an Instance. NextID: 10
23989
24581
  class Scheduling
23990
24582
  include Google::Apis::Core::Hashable
23991
24583
 
@@ -24001,7 +24593,7 @@ module Google
24001
24593
  alias_method :automatic_restart?, :automatic_restart
24002
24594
 
24003
24595
  # A set of node affinity and anti-affinity configurations. Refer to Configuring
24004
- # node affinity for more information.
24596
+ # node affinity for more information. Overrides reservationAffinity.
24005
24597
  # Corresponds to the JSON property `nodeAffinities`
24006
24598
  # @return [Array<Google::Apis::ComputeV1::SchedulingNodeAffinity>]
24007
24599
  attr_accessor :node_affinities
@@ -24068,6 +24660,44 @@ module Google
24068
24660
  end
24069
24661
  end
24070
24662
 
24663
+ #
24664
+ class SecurityPoliciesListPreconfiguredExpressionSetsResponse
24665
+ include Google::Apis::Core::Hashable
24666
+
24667
+ #
24668
+ # Corresponds to the JSON property `preconfiguredExpressionSets`
24669
+ # @return [Google::Apis::ComputeV1::SecurityPoliciesWafConfig]
24670
+ attr_accessor :preconfigured_expression_sets
24671
+
24672
+ def initialize(**args)
24673
+ update!(**args)
24674
+ end
24675
+
24676
+ # Update properties of this object
24677
+ def update!(**args)
24678
+ @preconfigured_expression_sets = args[:preconfigured_expression_sets] if args.key?(:preconfigured_expression_sets)
24679
+ end
24680
+ end
24681
+
24682
+ #
24683
+ class SecurityPoliciesWafConfig
24684
+ include Google::Apis::Core::Hashable
24685
+
24686
+ #
24687
+ # Corresponds to the JSON property `wafRules`
24688
+ # @return [Google::Apis::ComputeV1::PreconfiguredWafSet]
24689
+ attr_accessor :waf_rules
24690
+
24691
+ def initialize(**args)
24692
+ update!(**args)
24693
+ end
24694
+
24695
+ # Update properties of this object
24696
+ def update!(**args)
24697
+ @waf_rules = args[:waf_rules] if args.key?(:waf_rules)
24698
+ end
24699
+ end
24700
+
24071
24701
  # Represents a Cloud Armor Security Policy resource.
24072
24702
  # Only external backend services that use load balancers can reference a
24073
24703
  # Security Policy. For more information, read Cloud Armor Security Policy
@@ -24964,16 +25594,19 @@ module Google
24964
25594
 
24965
25595
  # Represents an SSL Certificate resource.
24966
25596
  # Google Compute Engine has two SSL Certificate resources:
24967
- # * [Global](/compute/docs/reference/rest/latest/sslCertificates) * [Regional](/
24968
- # compute/docs/reference/rest/latest/regionSslCertificates)
24969
- # - sslCertificates are used by: - external HTTPS load balancers - SSL proxy
24970
- # load balancers
24971
- # - regionSslCertificates are used by: - internal HTTPS load balancers
24972
- # This SSL certificate resource also contains a private key. You can use SSL
24973
- # keys and certificates to secure connections to a load balancer. For more
24974
- # information, read Creating and Using SSL Certificates. (== resource_for `$
24975
- # api_version`.sslCertificates ==) (== resource_for `$api_version`.
24976
- # regionSslCertificates ==) Next ID: 17
25597
+ # * [Global](/compute/docs/reference/rest/`$api_version`/sslCertificates) * [
25598
+ # Regional](/compute/docs/reference/rest/`$api_version`/regionSslCertificates)
25599
+ # The sslCertificates are used by:
25600
+ # - external HTTPS load balancers
25601
+ # - SSL proxy load balancers
25602
+ # The regionSslCertificates are used by internal HTTPS load balancers.
25603
+ # Optionally, certificate file contents that you upload can contain a set of up
25604
+ # to five PEM-encoded certificates. The API call creates an object (
25605
+ # sslCertificate) that holds this data. You can use SSL keys and certificates to
25606
+ # secure connections to a load balancer. For more information, read Creating
25607
+ # and using SSL certificates and SSL certificates quotas and limits. (==
25608
+ # resource_for `$api_version`.sslCertificates ==) (== resource_for `$api_version`
25609
+ # .regionSslCertificates ==)
24977
25610
  class SslCertificate
24978
25611
  include Google::Apis::Core::Hashable
24979
25612
 
@@ -25818,7 +26451,7 @@ module Google
25818
26451
  # @return [String]
25819
26452
  attr_accessor :region
25820
26453
 
25821
- # The role of subnetwork. Currenly, this field is only used when purpose =
26454
+ # The role of subnetwork. Currently, this field is only used when purpose =
25822
26455
  # INTERNAL_HTTPS_LOAD_BALANCER. The value can be set to ACTIVE or BACKUP. An
25823
26456
  # ACTIVE subnetwork is one that is currently being used for Internal HTTP(S)
25824
26457
  # Load Balancing. A BACKUP subnetwork is one that is ready to be promoted to
@@ -26134,6 +26767,12 @@ module Google
26134
26767
  attr_accessor :enable
26135
26768
  alias_method :enable?, :enable
26136
26769
 
26770
+ # Can only be specified if VPC flow logs for this subnetwork is enabled. Export
26771
+ # filter used to define which VPC flow logs should be logged.
26772
+ # Corresponds to the JSON property `filterExpr`
26773
+ # @return [String]
26774
+ attr_accessor :filter_expr
26775
+
26137
26776
  # Can only be specified if VPC flow logging for this subnetwork is enabled. The
26138
26777
  # value of the field must be in [0, 1]. Set the sampling rate of VPC flow logs
26139
26778
  # within the subnetwork where 1.0 means all collected logs are reported and 0.0
@@ -26150,6 +26789,12 @@ module Google
26150
26789
  # @return [String]
26151
26790
  attr_accessor :metadata
26152
26791
 
26792
+ # Can only be specified if VPC flow logs for this subnetwork is enabled and "
26793
+ # metadata" was set to CUSTOM_METADATA.
26794
+ # Corresponds to the JSON property `metadataFields`
26795
+ # @return [Array<String>]
26796
+ attr_accessor :metadata_fields
26797
+
26153
26798
  def initialize(**args)
26154
26799
  update!(**args)
26155
26800
  end
@@ -26158,8 +26803,10 @@ module Google
26158
26803
  def update!(**args)
26159
26804
  @aggregation_interval = args[:aggregation_interval] if args.key?(:aggregation_interval)
26160
26805
  @enable = args[:enable] if args.key?(:enable)
26806
+ @filter_expr = args[:filter_expr] if args.key?(:filter_expr)
26161
26807
  @flow_sampling = args[:flow_sampling] if args.key?(:flow_sampling)
26162
26808
  @metadata = args[:metadata] if args.key?(:metadata)
26809
+ @metadata_fields = args[:metadata_fields] if args.key?(:metadata_fields)
26163
26810
  end
26164
26811
  end
26165
26812
 
@@ -26514,8 +27161,8 @@ module Google
26514
27161
 
26515
27162
  # Represents a Target HTTP Proxy resource.
26516
27163
  # Google Compute Engine has two Target HTTP Proxy resources:
26517
- # * [Global](/compute/docs/reference/rest/latest/targetHttpProxies) * [Regional](
26518
- # /compute/docs/reference/rest/latest/regionTargetHttpProxies)
27164
+ # * [Global](/compute/docs/reference/rest/`$api_version`/targetHttpProxies) * [
27165
+ # Regional](/compute/docs/reference/rest/`$api_version`/regionTargetHttpProxies)
26519
27166
  # A target HTTP proxy is a component of GCP HTTP load balancers.
26520
27167
  # * targetHttpProxies are used by external HTTP load balancers and Traffic
26521
27168
  # Director. * regionTargetHttpProxies are used by internal HTTP load balancers.
@@ -26891,8 +27538,8 @@ module Google
26891
27538
 
26892
27539
  # Represents a Target HTTPS Proxy resource.
26893
27540
  # Google Compute Engine has two Target HTTPS Proxy resources:
26894
- # * [Global](/compute/docs/reference/rest/latest/targetHttpsProxies) * [Regional]
26895
- # (/compute/docs/reference/rest/latest/regionTargetHttpsProxies)
27541
+ # * [Global](/compute/docs/reference/rest/`$api_version`/targetHttpsProxies) * [
27542
+ # Regional](/compute/docs/reference/rest/`$api_version`/regionTargetHttpsProxies)
26896
27543
  # A target HTTPS proxy is a component of GCP HTTPS load balancers.
26897
27544
  # * targetHttpsProxies are used by external HTTPS load balancers. *
26898
27545
  # regionTargetHttpsProxies are used by internal HTTPS load balancers.
@@ -28547,7 +29194,7 @@ module Google
28547
29194
  # A target TCP proxy is a component of a TCP Proxy load balancer. Global
28548
29195
  # forwarding rules reference target TCP proxy, and the target proxy then
28549
29196
  # references an external backend service. For more information, read TCP Proxy
28550
- # Load Balancing Concepts. (== resource_for `$api_version`.targetTcpProxies ==)
29197
+ # Load Balancing overview. (== resource_for `$api_version`.targetTcpProxies ==)
28551
29198
  class TargetTcpProxy
28552
29199
  include Google::Apis::Core::Hashable
28553
29200
 
@@ -29236,8 +29883,8 @@ module Google
29236
29883
 
29237
29884
  # Represents a URL Map resource.
29238
29885
  # Google Compute Engine has two URL Map resources:
29239
- # * [Global](/compute/docs/reference/rest/latest/urlMaps) * [Regional](/compute/
29240
- # docs/reference/rest/latest/regionUrlMaps)
29886
+ # * [Global](/compute/docs/reference/rest/`$api_version`/urlMaps) * [Regional](/
29887
+ # compute/docs/reference/rest/`$api_version`/regionUrlMaps)
29241
29888
  # A URL map resource is a component of certain types of GCP load balancers and
29242
29889
  # Traffic Director.
29243
29890
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
@@ -29810,8 +30457,8 @@ module Google
29810
30457
 
29811
30458
  # Represents a URL Map resource.
29812
30459
  # Google Compute Engine has two URL Map resources:
29813
- # * [Global](/compute/docs/reference/rest/latest/urlMaps) * [Regional](/compute/
29814
- # docs/reference/rest/latest/regionUrlMaps)
30460
+ # * [Global](/compute/docs/reference/rest/`$api_version`/urlMaps) * [Regional](/
30461
+ # compute/docs/reference/rest/`$api_version`/regionUrlMaps)
29815
30462
  # A URL map resource is a component of certain types of GCP load balancers and
29816
30463
  # Traffic Director.
29817
30464
  # * urlMaps are used by external HTTP(S) load balancers and Traffic Director. *
@@ -31411,6 +32058,63 @@ module Google
31411
32058
  end
31412
32059
  end
31413
32060
 
32061
+ #
32062
+ class WafExpressionSet
32063
+ include Google::Apis::Core::Hashable
32064
+
32065
+ # A list of alternate IDs. The format should be: - E.g. XSS-stable Generic
32066
+ # suffix like "stable" is particularly useful if a policy likes to avail newer
32067
+ # set of expressions without having to change the policy. A given alias name can'
32068
+ # t be used for more than one entity set.
32069
+ # Corresponds to the JSON property `aliases`
32070
+ # @return [Array<String>]
32071
+ attr_accessor :aliases
32072
+
32073
+ # List of available expressions.
32074
+ # Corresponds to the JSON property `expressions`
32075
+ # @return [Array<Google::Apis::ComputeV1::WafExpressionSetExpression>]
32076
+ attr_accessor :expressions
32077
+
32078
+ # Google specified expression set ID. The format should be: - E.g. XSS-20170329
32079
+ # Corresponds to the JSON property `id`
32080
+ # @return [String]
32081
+ attr_accessor :id
32082
+
32083
+ def initialize(**args)
32084
+ update!(**args)
32085
+ end
32086
+
32087
+ # Update properties of this object
32088
+ def update!(**args)
32089
+ @aliases = args[:aliases] if args.key?(:aliases)
32090
+ @expressions = args[:expressions] if args.key?(:expressions)
32091
+ @id = args[:id] if args.key?(:id)
32092
+ end
32093
+ end
32094
+
32095
+ #
32096
+ class WafExpressionSetExpression
32097
+ include Google::Apis::Core::Hashable
32098
+
32099
+ # Expression ID should uniquely identify the origin of the expression. E.g.
32100
+ # owasp-crs-v020901-id973337 identifies Owasp core rule set version 2.9.1 rule
32101
+ # id 973337. The ID could be used to determine the individual attack definition
32102
+ # that has been detected. It could also be used to exclude it from the policy in
32103
+ # case of false positive.
32104
+ # Corresponds to the JSON property `id`
32105
+ # @return [String]
32106
+ attr_accessor :id
32107
+
32108
+ def initialize(**args)
32109
+ update!(**args)
32110
+ end
32111
+
32112
+ # Update properties of this object
32113
+ def update!(**args)
32114
+ @id = args[:id] if args.key?(:id)
32115
+ end
32116
+ end
32117
+
31414
32118
  # In contrast to a single BackendService in HttpRouteAction to which all
31415
32119
  # matching traffic is directed to, WeightedBackendService allows traffic to be
31416
32120
  # split across multiple BackendServices. The volume of traffic for each