google-api-client 0.40.2 → 0.42.1

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 (431) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +285 -0
  3. data/bin/generate-api +1 -3
  4. data/generated/google/apis/accessapproval_v1.rb +1 -1
  5. data/generated/google/apis/accessapproval_v1/service.rb +3 -0
  6. data/generated/google/apis/accessapproval_v1beta1.rb +1 -1
  7. data/generated/google/apis/accessapproval_v1beta1/service.rb +3 -0
  8. data/generated/google/apis/admin_directory_v1.rb +1 -1
  9. data/generated/google/apis/admin_directory_v1/classes.rb +31 -0
  10. data/generated/google/apis/admin_directory_v1/representations.rb +16 -0
  11. data/generated/google/apis/admin_directory_v1/service.rb +3 -5
  12. data/generated/google/apis/admob_v1.rb +1 -1
  13. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  14. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +32 -26
  15. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  16. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  17. data/generated/google/apis/androidmanagement_v1/classes.rb +117 -0
  18. data/generated/google/apis/androidmanagement_v1/representations.rb +39 -0
  19. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  20. data/generated/google/apis/androidpublisher_v3/classes.rb +78 -0
  21. data/generated/google/apis/androidpublisher_v3/representations.rb +44 -0
  22. data/generated/google/apis/androidpublisher_v3/service.rb +149 -1
  23. data/generated/google/apis/apigee_v1.rb +1 -1
  24. data/generated/google/apis/apigee_v1/classes.rb +1481 -107
  25. data/generated/google/apis/apigee_v1/representations.rb +559 -0
  26. data/generated/google/apis/apigee_v1/service.rb +1162 -117
  27. data/generated/google/apis/appsmarket_v2.rb +1 -1
  28. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  29. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +9 -0
  30. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  31. data/generated/google/apis/bigquery_v2.rb +1 -1
  32. data/generated/google/apis/bigquery_v2/classes.rb +36 -6
  33. data/generated/google/apis/bigquery_v2/representations.rb +4 -0
  34. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  35. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -6
  36. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  37. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +4 -4
  38. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  39. data/generated/google/apis/bigqueryreservation_v1/classes.rb +34 -0
  40. data/generated/google/apis/bigqueryreservation_v1/representations.rb +16 -0
  41. data/generated/google/apis/bigqueryreservation_v1/service.rb +60 -0
  42. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  43. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +8 -0
  44. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +1 -0
  45. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  46. data/generated/google/apis/bigtableadmin_v1/classes.rb +5 -10
  47. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  48. data/generated/google/apis/bigtableadmin_v2/classes.rb +45 -37
  49. data/generated/google/apis/bigtableadmin_v2/service.rb +1 -5
  50. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  51. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +28 -13
  52. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  53. data/generated/google/apis/blogger_v3.rb +1 -1
  54. data/generated/google/apis/books_v1.rb +1 -1
  55. data/generated/google/apis/calendar_v3.rb +1 -1
  56. data/generated/google/apis/chat_v1.rb +1 -1
  57. data/generated/google/apis/chat_v1/classes.rb +113 -0
  58. data/generated/google/apis/chat_v1/representations.rb +50 -0
  59. data/generated/google/apis/chat_v1/service.rb +32 -0
  60. data/generated/google/apis/civicinfo_v2.rb +2 -2
  61. data/generated/google/apis/civicinfo_v2/classes.rb +21 -801
  62. data/generated/google/apis/civicinfo_v2/representations.rb +1 -295
  63. data/generated/google/apis/civicinfo_v2/service.rb +28 -63
  64. data/generated/google/apis/classroom_v1.rb +1 -1
  65. data/generated/google/apis/classroom_v1/service.rb +9 -5
  66. data/generated/google/apis/cloudasset_v1.rb +1 -1
  67. data/generated/google/apis/cloudasset_v1/classes.rb +403 -6
  68. data/generated/google/apis/cloudasset_v1/representations.rb +101 -0
  69. data/generated/google/apis/cloudasset_v1/service.rb +178 -0
  70. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  71. data/generated/google/apis/cloudasset_v1beta1/classes.rb +948 -36
  72. data/generated/google/apis/cloudasset_v1beta1/representations.rb +241 -0
  73. data/generated/google/apis/cloudasset_v1beta1/service.rb +4 -4
  74. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  75. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +18 -19
  76. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +10 -6
  77. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  78. data/generated/google/apis/cloudbilling_v1/classes.rb +38 -6
  79. data/generated/google/apis/cloudbilling_v1/representations.rb +16 -0
  80. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  81. data/generated/google/apis/cloudbuild_v1/classes.rb +272 -12
  82. data/generated/google/apis/cloudbuild_v1/representations.rb +130 -4
  83. data/generated/google/apis/cloudbuild_v1/service.rb +0 -136
  84. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  85. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +284 -24
  86. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +135 -9
  87. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +0 -47
  88. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  89. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +284 -24
  90. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +135 -9
  91. data/generated/google/apis/cloudbuild_v1alpha2/service.rb +0 -47
  92. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  93. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +1 -1
  94. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +5 -6
  95. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  96. data/generated/google/apis/cloudfunctions_v1/classes.rb +20 -6
  97. data/generated/google/apis/cloudfunctions_v1/representations.rb +2 -0
  98. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  99. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +7 -0
  100. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +1 -0
  101. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  102. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  103. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +32 -1
  104. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +16 -0
  105. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  106. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +16 -12
  107. data/generated/google/apis/cloudresourcemanager_v1/service.rb +15 -6
  108. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  109. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +6 -5
  110. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  111. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  112. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  113. data/generated/google/apis/cloudscheduler_v1/classes.rb +7 -6
  114. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  115. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +7 -6
  116. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  117. data/generated/google/apis/cloudtrace_v1/classes.rb +2 -3
  118. data/generated/google/apis/cloudtrace_v1/service.rb +1 -7
  119. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  120. data/generated/google/apis/cloudtrace_v2/classes.rb +6 -5
  121. data/generated/google/apis/cloudtrace_v2/service.rb +3 -6
  122. data/generated/google/apis/composer_v1beta1.rb +1 -1
  123. data/generated/google/apis/composer_v1beta1/classes.rb +4 -3
  124. data/generated/google/apis/composer_v1beta1/service.rb +13 -0
  125. data/generated/google/apis/compute_alpha.rb +1 -1
  126. data/generated/google/apis/compute_alpha/classes.rb +634 -104
  127. data/generated/google/apis/compute_alpha/representations.rb +170 -0
  128. data/generated/google/apis/compute_alpha/service.rb +888 -139
  129. data/generated/google/apis/compute_beta.rb +1 -1
  130. data/generated/google/apis/compute_beta/classes.rb +703 -102
  131. data/generated/google/apis/compute_beta/representations.rb +182 -0
  132. data/generated/google/apis/compute_beta/service.rb +565 -33
  133. data/generated/google/apis/compute_v1.rb +1 -1
  134. data/generated/google/apis/compute_v1/classes.rb +989 -80
  135. data/generated/google/apis/compute_v1/representations.rb +290 -0
  136. data/generated/google/apis/compute_v1/service.rb +784 -38
  137. data/generated/google/apis/container_v1.rb +1 -1
  138. data/generated/google/apis/container_v1/classes.rb +132 -5
  139. data/generated/google/apis/container_v1/representations.rb +51 -0
  140. data/generated/google/apis/container_v1beta1.rb +1 -1
  141. data/generated/google/apis/container_v1beta1/classes.rb +157 -24
  142. data/generated/google/apis/container_v1beta1/representations.rb +39 -0
  143. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  144. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +1 -1
  145. data/generated/google/apis/content_v2.rb +1 -1
  146. data/generated/google/apis/content_v2/classes.rb +8 -2
  147. data/generated/google/apis/content_v2/representations.rb +1 -0
  148. data/generated/google/apis/content_v2/service.rb +10 -5
  149. data/generated/google/apis/content_v2_1.rb +1 -1
  150. data/generated/google/apis/content_v2_1/classes.rb +266 -8
  151. data/generated/google/apis/content_v2_1/representations.rb +108 -0
  152. data/generated/google/apis/content_v2_1/service.rb +10 -5
  153. data/generated/google/apis/customsearch_v1.rb +1 -1
  154. data/generated/google/apis/customsearch_v1/service.rb +12 -2
  155. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  156. data/generated/google/apis/datacatalog_v1beta1/classes.rb +34 -10
  157. data/generated/google/apis/datacatalog_v1beta1/representations.rb +13 -0
  158. data/generated/google/apis/datacatalog_v1beta1/service.rb +37 -0
  159. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  160. data/generated/google/apis/dataflow_v1b3/classes.rb +19 -0
  161. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  162. data/generated/google/apis/dataflow_v1b3/service.rb +2 -2
  163. data/generated/google/apis/dataproc_v1.rb +1 -1
  164. data/generated/google/apis/dataproc_v1/classes.rb +58 -11
  165. data/generated/google/apis/dataproc_v1/representations.rb +17 -0
  166. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  167. data/generated/google/apis/dataproc_v1beta2/classes.rb +53 -11
  168. data/generated/google/apis/dataproc_v1beta2/representations.rb +5 -0
  169. data/generated/google/apis/datastore_v1.rb +1 -1
  170. data/generated/google/apis/datastore_v1/classes.rb +1 -1
  171. data/generated/google/apis/dialogflow_v2.rb +1 -1
  172. data/generated/google/apis/dialogflow_v2/classes.rb +268 -28
  173. data/generated/google/apis/dialogflow_v2/representations.rb +93 -0
  174. data/generated/google/apis/dialogflow_v2/service.rb +14 -2
  175. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  176. data/generated/google/apis/dialogflow_v2beta1/classes.rb +272 -30
  177. data/generated/google/apis/dialogflow_v2beta1/representations.rb +93 -0
  178. data/generated/google/apis/dialogflow_v2beta1/service.rb +78 -48
  179. data/generated/google/apis/displayvideo_v1.rb +1 -1
  180. data/generated/google/apis/displayvideo_v1/classes.rb +117 -10
  181. data/generated/google/apis/displayvideo_v1/representations.rb +11 -0
  182. data/generated/google/apis/displayvideo_v1/service.rb +80 -6
  183. data/generated/google/apis/dlp_v2.rb +1 -1
  184. data/generated/google/apis/dlp_v2/classes.rb +5 -2
  185. data/generated/google/apis/dns_v1.rb +4 -4
  186. data/generated/google/apis/dns_v1/classes.rb +313 -162
  187. data/generated/google/apis/dns_v1/service.rb +247 -180
  188. data/generated/google/apis/dns_v1beta2.rb +4 -4
  189. data/generated/google/apis/dns_v1beta2/classes.rb +325 -171
  190. data/generated/google/apis/dns_v1beta2/service.rb +247 -180
  191. data/generated/google/apis/dns_v2beta1.rb +4 -4
  192. data/generated/google/apis/dns_v2beta1/classes.rb +313 -162
  193. data/generated/google/apis/dns_v2beta1/service.rb +247 -180
  194. data/generated/google/apis/documentai_v1beta2.rb +36 -0
  195. data/generated/google/apis/documentai_v1beta2/classes.rb +3284 -0
  196. data/generated/google/apis/documentai_v1beta2/representations.rb +1344 -0
  197. data/generated/google/apis/documentai_v1beta2/service.rb +269 -0
  198. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  199. data/generated/google/apis/doubleclicksearch_v2.rb +4 -4
  200. data/generated/google/apis/doubleclicksearch_v2/classes.rb +127 -111
  201. data/generated/google/apis/doubleclicksearch_v2/representations.rb +4 -6
  202. data/generated/google/apis/doubleclicksearch_v2/service.rb +47 -78
  203. data/generated/google/apis/drive_v2.rb +1 -1
  204. data/generated/google/apis/drive_v2/classes.rb +75 -2
  205. data/generated/google/apis/drive_v2/representations.rb +23 -0
  206. data/generated/google/apis/drive_v2/service.rb +49 -88
  207. data/generated/google/apis/drive_v3.rb +1 -1
  208. data/generated/google/apis/drive_v3/classes.rb +74 -2
  209. data/generated/google/apis/drive_v3/representations.rb +23 -0
  210. data/generated/google/apis/drive_v3/service.rb +26 -59
  211. data/generated/google/apis/fcm_v1.rb +1 -1
  212. data/generated/google/apis/fcm_v1/classes.rb +6 -0
  213. data/generated/google/apis/file_v1.rb +1 -1
  214. data/generated/google/apis/file_v1beta1.rb +1 -1
  215. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  216. data/generated/google/apis/firebase_v1beta1/classes.rb +7 -6
  217. data/generated/google/apis/firebase_v1beta1/service.rb +53 -49
  218. data/generated/google/apis/{androidpublisher_v2.rb → firebasehosting_v1.rb} +11 -12
  219. data/generated/google/apis/firebasehosting_v1/classes.rb +186 -0
  220. data/generated/google/apis/{androidpublisher_v2 → firebasehosting_v1}/representations.rb +22 -32
  221. data/generated/google/apis/firebasehosting_v1/service.rb +183 -0
  222. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  223. data/generated/google/apis/firebasehosting_v1beta1/service.rb +2 -0
  224. data/generated/google/apis/firestore_v1.rb +1 -1
  225. data/generated/google/apis/firestore_v1/classes.rb +152 -0
  226. data/generated/google/apis/firestore_v1/representations.rb +63 -0
  227. data/generated/google/apis/firestore_v1/service.rb +78 -0
  228. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  229. data/generated/google/apis/firestore_v1beta1/classes.rb +152 -0
  230. data/generated/google/apis/firestore_v1beta1/representations.rb +63 -0
  231. data/generated/google/apis/firestore_v1beta1/service.rb +78 -0
  232. data/generated/google/apis/games_v1.rb +6 -4
  233. data/generated/google/apis/games_v1/classes.rb +354 -2112
  234. data/generated/google/apis/games_v1/representations.rb +12 -647
  235. data/generated/google/apis/games_v1/service.rb +212 -1154
  236. data/generated/google/apis/{groupsmigration_v1.rb → gameservices_v1.rb} +10 -11
  237. data/generated/google/apis/gameservices_v1/classes.rb +2354 -0
  238. data/generated/google/apis/gameservices_v1/representations.rb +971 -0
  239. data/generated/google/apis/gameservices_v1/service.rb +1472 -0
  240. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  241. data/generated/google/apis/gameservices_v1beta/classes.rb +6 -6
  242. data/generated/google/apis/gmail_v1.rb +1 -1
  243. data/generated/google/apis/gmail_v1/classes.rb +53 -53
  244. data/generated/google/apis/gmail_v1/service.rb +72 -72
  245. data/generated/google/apis/{androidpublisher_v1_1.rb → gmailpostmastertools_v1beta1.rb} +11 -12
  246. data/generated/google/apis/gmailpostmastertools_v1beta1/classes.rb +306 -0
  247. data/generated/google/apis/gmailpostmastertools_v1beta1/representations.rb +141 -0
  248. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +236 -0
  249. data/generated/google/apis/groupssettings_v1.rb +1 -1
  250. data/generated/google/apis/groupssettings_v1/classes.rb +1 -1
  251. data/generated/google/apis/healthcare_v1.rb +1 -1
  252. data/generated/google/apis/healthcare_v1/classes.rb +6 -6
  253. data/generated/google/apis/healthcare_v1/service.rb +50 -1
  254. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  255. data/generated/google/apis/healthcare_v1beta1/classes.rb +916 -49
  256. data/generated/google/apis/healthcare_v1beta1/representations.rb +404 -0
  257. data/generated/google/apis/healthcare_v1beta1/service.rb +577 -1
  258. data/generated/google/apis/iam_v1.rb +1 -1
  259. data/generated/google/apis/iam_v1/classes.rb +27 -3
  260. data/generated/google/apis/iam_v1/service.rb +22 -6
  261. data/generated/google/apis/iamcredentials_v1.rb +2 -2
  262. data/generated/google/apis/iamcredentials_v1/service.rb +1 -1
  263. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  264. data/generated/google/apis/lifesciences_v2beta/classes.rb +10 -0
  265. data/generated/google/apis/lifesciences_v2beta/representations.rb +1 -0
  266. data/generated/google/apis/logging_v2.rb +1 -1
  267. data/generated/google/apis/logging_v2/classes.rb +69 -21
  268. data/generated/google/apis/managedidentities_v1.rb +1 -1
  269. data/generated/google/apis/managedidentities_v1/classes.rb +54 -10
  270. data/generated/google/apis/managedidentities_v1/representations.rb +15 -0
  271. data/generated/google/apis/managedidentities_v1/service.rb +3 -0
  272. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  273. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +54 -10
  274. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +15 -0
  275. data/generated/google/apis/managedidentities_v1alpha1/service.rb +3 -0
  276. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  277. data/generated/google/apis/managedidentities_v1beta1/classes.rb +54 -10
  278. data/generated/google/apis/managedidentities_v1beta1/representations.rb +15 -0
  279. data/generated/google/apis/managedidentities_v1beta1/service.rb +3 -0
  280. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  281. data/generated/google/apis/memcache_v1beta2/classes.rb +1 -1
  282. data/generated/google/apis/ml_v1.rb +1 -1
  283. data/generated/google/apis/ml_v1/classes.rb +28 -14
  284. data/generated/google/apis/ml_v1/representations.rb +1 -0
  285. data/generated/google/apis/monitoring_v3.rb +1 -1
  286. data/generated/google/apis/monitoring_v3/classes.rb +119 -48
  287. data/generated/google/apis/monitoring_v3/representations.rb +1 -0
  288. data/generated/google/apis/monitoring_v3/service.rb +8 -5
  289. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  290. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -6
  291. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  292. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +6 -6
  293. data/generated/google/apis/osconfig_v1.rb +1 -1
  294. data/generated/google/apis/osconfig_v1/classes.rb +2 -2
  295. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  296. data/generated/google/apis/osconfig_v1beta/classes.rb +2 -2
  297. data/generated/google/apis/people_v1.rb +4 -1
  298. data/generated/google/apis/people_v1/classes.rb +4 -4
  299. data/generated/google/apis/people_v1/service.rb +6 -5
  300. data/generated/google/apis/{androidpublisher_v1/classes.rb → playablelocations_v3.rb} +11 -6
  301. data/generated/google/apis/playablelocations_v3/classes.rb +633 -0
  302. data/generated/google/apis/playablelocations_v3/representations.rb +273 -0
  303. data/generated/google/apis/playablelocations_v3/service.rb +157 -0
  304. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  305. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +92 -0
  306. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +46 -0
  307. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +477 -0
  308. data/generated/google/apis/pubsub_v1.rb +1 -1
  309. data/generated/google/apis/pubsub_v1/classes.rb +28 -30
  310. data/generated/google/apis/pubsub_v1/service.rb +35 -44
  311. data/generated/google/apis/realtimebidding_v1.rb +40 -0
  312. data/generated/google/apis/realtimebidding_v1/classes.rb +1436 -0
  313. data/generated/google/apis/realtimebidding_v1/representations.rb +565 -0
  314. data/generated/google/apis/realtimebidding_v1/service.rb +661 -0
  315. data/generated/google/apis/recommendationengine_v1beta1.rb +36 -0
  316. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +2015 -0
  317. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +848 -0
  318. data/generated/google/apis/recommendationengine_v1beta1/service.rb +990 -0
  319. data/generated/google/apis/recommender_v1.rb +1 -1
  320. data/generated/google/apis/recommender_v1/classes.rb +211 -0
  321. data/generated/google/apis/recommender_v1/representations.rb +96 -0
  322. data/generated/google/apis/recommender_v1/service.rb +123 -0
  323. data/generated/google/apis/redis_v1.rb +1 -1
  324. data/generated/google/apis/redis_v1/classes.rb +1 -1
  325. data/generated/google/apis/redis_v1/service.rb +1 -1
  326. data/generated/google/apis/redis_v1beta1.rb +1 -1
  327. data/generated/google/apis/redis_v1beta1/classes.rb +1 -1
  328. data/generated/google/apis/redis_v1beta1/service.rb +1 -1
  329. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  330. data/generated/google/apis/remotebuildexecution_v1/classes.rb +1 -1
  331. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  332. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +1 -1
  333. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  334. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1 -1
  335. data/generated/google/apis/reseller_v1.rb +4 -3
  336. data/generated/google/apis/reseller_v1/classes.rb +219 -160
  337. data/generated/google/apis/reseller_v1/service.rb +247 -252
  338. data/generated/google/apis/run_v1.rb +2 -2
  339. data/generated/google/apis/run_v1/classes.rb +10 -7
  340. data/generated/google/apis/run_v1/service.rb +1 -1
  341. data/generated/google/apis/run_v1alpha1.rb +2 -2
  342. data/generated/google/apis/run_v1alpha1/classes.rb +6 -6
  343. data/generated/google/apis/run_v1alpha1/service.rb +1 -1
  344. data/generated/google/apis/run_v1beta1.rb +2 -2
  345. data/generated/google/apis/run_v1beta1/service.rb +1 -1
  346. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  347. data/generated/google/apis/sasportal_v1alpha1/classes.rb +92 -0
  348. data/generated/google/apis/sasportal_v1alpha1/representations.rb +46 -0
  349. data/generated/google/apis/sasportal_v1alpha1/service.rb +477 -0
  350. data/generated/google/apis/searchconsole_v1.rb +4 -3
  351. data/generated/google/apis/searchconsole_v1/service.rb +3 -2
  352. data/generated/google/apis/secretmanager_v1.rb +1 -1
  353. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  354. data/generated/google/apis/securitycenter_v1.rb +1 -1
  355. data/generated/google/apis/securitycenter_v1/classes.rb +10 -10
  356. data/generated/google/apis/securitycenter_v1/service.rb +14 -15
  357. data/generated/google/apis/securitycenter_v1p1beta1.rb +1 -1
  358. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +10 -10
  359. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +12 -15
  360. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  361. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +23 -4
  362. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +1 -0
  363. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  364. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +23 -4
  365. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +1 -0
  366. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  367. data/generated/google/apis/servicecontrol_v1/classes.rb +12 -6
  368. data/generated/google/apis/servicecontrol_v1/representations.rb +1 -0
  369. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  370. data/generated/google/apis/servicemanagement_v1/classes.rb +118 -37
  371. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  372. data/generated/google/apis/servicenetworking_v1/classes.rb +15 -4
  373. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  374. data/generated/google/apis/servicenetworking_v1beta/classes.rb +15 -4
  375. data/generated/google/apis/serviceusage_v1.rb +1 -1
  376. data/generated/google/apis/serviceusage_v1/classes.rb +29 -4
  377. data/generated/google/apis/serviceusage_v1/representations.rb +2 -0
  378. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  379. data/generated/google/apis/serviceusage_v1beta1/classes.rb +74 -4
  380. data/generated/google/apis/serviceusage_v1beta1/representations.rb +30 -0
  381. data/generated/google/apis/serviceusage_v1beta1/service.rb +37 -0
  382. data/generated/google/apis/sheets_v4.rb +1 -1
  383. data/generated/google/apis/sheets_v4/classes.rb +118 -28
  384. data/generated/google/apis/slides_v1.rb +1 -1
  385. data/generated/google/apis/slides_v1/classes.rb +4 -0
  386. data/generated/google/apis/spanner_v1.rb +1 -1
  387. data/generated/google/apis/spanner_v1/classes.rb +25 -20
  388. data/generated/google/apis/spanner_v1/service.rb +7 -0
  389. data/generated/google/apis/speech_v1.rb +1 -1
  390. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  391. data/generated/google/apis/storage_v1.rb +1 -1
  392. data/generated/google/apis/storage_v1/service.rb +2 -3
  393. data/generated/google/apis/testing_v1.rb +1 -1
  394. data/generated/google/apis/testing_v1/classes.rb +17 -6
  395. data/generated/google/apis/testing_v1/representations.rb +1 -0
  396. data/generated/google/apis/texttospeech_v1.rb +1 -1
  397. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  398. data/generated/google/apis/{androidpublisher_v1.rb → vectortile_v1.rb} +8 -8
  399. data/generated/google/apis/vectortile_v1/classes.rb +881 -0
  400. data/generated/google/apis/vectortile_v1/representations.rb +329 -0
  401. data/generated/google/apis/vectortile_v1/service.rb +268 -0
  402. data/generated/google/apis/vision_v1.rb +1 -1
  403. data/generated/google/apis/vision_v1/classes.rb +20 -0
  404. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  405. data/generated/google/apis/vision_v1p1beta1/classes.rb +20 -0
  406. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  407. data/generated/google/apis/vision_v1p2beta1/classes.rb +20 -0
  408. data/generated/google/apis/webfonts_v1.rb +5 -5
  409. data/generated/google/apis/webfonts_v1/classes.rb +4 -3
  410. data/generated/google/apis/webfonts_v1/representations.rb +1 -2
  411. data/generated/google/apis/webfonts_v1/service.rb +14 -21
  412. data/generated/google/apis/youtube_partner_v1.rb +4 -3
  413. data/generated/google/apis/youtube_partner_v1/classes.rb +1616 -1076
  414. data/generated/google/apis/youtube_partner_v1/representations.rb +357 -256
  415. data/generated/google/apis/youtube_partner_v1/service.rb +942 -1362
  416. data/generated/google/apis/youtube_v3.rb +1 -1
  417. data/generated/google/apis/youtube_v3/classes.rb +594 -2
  418. data/generated/google/apis/youtube_v3/representations.rb +308 -0
  419. data/generated/google/apis/youtube_v3/service.rb +292 -0
  420. data/lib/google/apis/version.rb +1 -1
  421. metadata +35 -19
  422. data/generated/google/apis/androidpublisher_v1/representations.rb +0 -26
  423. data/generated/google/apis/androidpublisher_v1/service.rb +0 -64
  424. data/generated/google/apis/androidpublisher_v1_1/classes.rb +0 -94
  425. data/generated/google/apis/androidpublisher_v1_1/representations.rb +0 -45
  426. data/generated/google/apis/androidpublisher_v1_1/service.rb +0 -104
  427. data/generated/google/apis/androidpublisher_v2/classes.rb +0 -223
  428. data/generated/google/apis/androidpublisher_v2/service.rb +0 -160
  429. data/generated/google/apis/groupsmigration_v1/classes.rb +0 -51
  430. data/generated/google/apis/groupsmigration_v1/representations.rb +0 -40
  431. data/generated/google/apis/groupsmigration_v1/service.rb +0 -100
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeBeta
27
27
  VERSION = 'Beta'
28
- REVISION = '20200515'
28
+ REVISION = '20200629'
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'
@@ -87,7 +87,7 @@ module Google
87
87
  # @return [String]
88
88
  attr_accessor :kind
89
89
 
90
- # [Output Only] Maximum accelerator cards allowed per instance.
90
+ # [Output Only] Maximum number of accelerator cards allowed per instance.
91
91
  # Corresponds to the JSON property `maximumCardsPerInstance`
92
92
  # @return [Fixnum]
93
93
  attr_accessor :maximum_cards_per_instance
@@ -97,7 +97,7 @@ module Google
97
97
  # @return [String]
98
98
  attr_accessor :name
99
99
 
100
- # [Output Only] Server-defined fully-qualified URL for this resource.
100
+ # [Output Only] Server-defined, fully qualified URL for this resource.
101
101
  # Corresponds to the JSON property `selfLink`
102
102
  # @return [String]
103
103
  attr_accessor :self_link
@@ -1091,7 +1091,7 @@ module Google
1091
1091
  end
1092
1092
  end
1093
1093
 
1094
- # Properties of the SKU instances being reserved.
1094
+ # Properties of the SKU instances being reserved. Next ID: 9
1095
1095
  class AllocationSpecificSkuAllocationReservedInstanceProperties
1096
1096
  include Google::Apis::Core::Hashable
1097
1097
 
@@ -1113,6 +1113,13 @@ module Google
1113
1113
  # @return [String]
1114
1114
  attr_accessor :machine_type
1115
1115
 
1116
+ # Specifies whether this VM may be a stable fleet VM. Setting this to "Periodic"
1117
+ # designates this VM as a Stable Fleet VM.
1118
+ # See go/stable-fleet-ug for more details.
1119
+ # Corresponds to the JSON property `maintenanceInterval`
1120
+ # @return [String]
1121
+ attr_accessor :maintenance_interval
1122
+
1116
1123
  # Minimum cpu platform the reservation.
1117
1124
  # Corresponds to the JSON property `minCpuPlatform`
1118
1125
  # @return [String]
@@ -1127,6 +1134,7 @@ module Google
1127
1134
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
1128
1135
  @local_ssds = args[:local_ssds] if args.key?(:local_ssds)
1129
1136
  @machine_type = args[:machine_type] if args.key?(:machine_type)
1137
+ @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
1130
1138
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
1131
1139
  end
1132
1140
  end
@@ -1145,7 +1153,7 @@ module Google
1145
1153
  # @return [Fixnum]
1146
1154
  attr_accessor :in_use_count
1147
1155
 
1148
- # Properties of the SKU instances being reserved.
1156
+ # Properties of the SKU instances being reserved. Next ID: 9
1149
1157
  # Corresponds to the JSON property `instanceProperties`
1150
1158
  # @return [Google::Apis::ComputeBeta::AllocationSpecificSkuAllocationReservedInstanceProperties]
1151
1159
  attr_accessor :instance_properties
@@ -1358,6 +1366,13 @@ module Google
1358
1366
  # @return [Hash<String,String>]
1359
1367
  attr_accessor :labels
1360
1368
 
1369
+ # Indicates whether or not the disk can be read/write attached to more than one
1370
+ # instance.
1371
+ # Corresponds to the JSON property `multiWriter`
1372
+ # @return [Boolean]
1373
+ attr_accessor :multi_writer
1374
+ alias_method :multi_writer?, :multi_writer
1375
+
1361
1376
  # Specifies which action to take on instance update with this disk. Default is
1362
1377
  # to use the existing disk.
1363
1378
  # Corresponds to the JSON property `onUpdateAction`
@@ -1425,6 +1440,7 @@ module Google
1425
1440
  @disk_type = args[:disk_type] if args.key?(:disk_type)
1426
1441
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
1427
1442
  @labels = args[:labels] if args.key?(:labels)
1443
+ @multi_writer = args[:multi_writer] if args.key?(:multi_writer)
1428
1444
  @on_update_action = args[:on_update_action] if args.key?(:on_update_action)
1429
1445
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
1430
1446
  @source_image = args[:source_image] if args.key?(:source_image)
@@ -1442,10 +1458,10 @@ module Google
1442
1458
  # specified in each AuditConfig are enabled, and the exempted_members in each
1443
1459
  # AuditLogConfig are exempted.
1444
1460
  # Example Policy with multiple AuditConfigs:
1445
- # ` "audit_configs": [ ` "service": "allServices" "audit_log_configs": [ ` "
1461
+ # ` "audit_configs": [ ` "service": "allServices", "audit_log_configs": [ ` "
1446
1462
  # log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] `, ` "
1447
- # log_type": "DATA_WRITE", `, ` "log_type": "ADMIN_READ", ` ] `, ` "service": "
1448
- # sampleservice.googleapis.com" "audit_log_configs": [ ` "log_type": "DATA_READ",
1463
+ # log_type": "DATA_WRITE" `, ` "log_type": "ADMIN_READ" ` ] `, ` "service": "
1464
+ # sampleservice.googleapis.com", "audit_log_configs": [ ` "log_type": "DATA_READ"
1449
1465
  # `, ` "log_type": "DATA_WRITE", "exempted_members": [ "user:aliya@example.com"
1450
1466
  # ] ` ] ` ] `
1451
1467
  # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
@@ -1485,7 +1501,7 @@ module Google
1485
1501
 
1486
1502
  # Provides the configuration for logging a type of permissions. Example:
1487
1503
  # ` "audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "
1488
- # user:jose@example.com" ] `, ` "log_type": "DATA_WRITE", ` ] `
1504
+ # user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] `
1489
1505
  # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@
1490
1506
  # example.com from DATA_READ logging.
1491
1507
  class AuditLogConfig
@@ -2109,6 +2125,13 @@ module Google
2109
2125
  # @return [Google::Apis::ComputeBeta::AutoscalingPolicyScaleDownControl]
2110
2126
  attr_accessor :scale_down_control
2111
2127
 
2128
+ # Configuration that allows for slower scale in so that even if Autoscaler
2129
+ # recommends an abrupt scale in of a MIG, it will be throttled as specified by
2130
+ # the parameters below.
2131
+ # Corresponds to the JSON property `scaleInControl`
2132
+ # @return [Google::Apis::ComputeBeta::AutoscalingPolicyScaleInControl]
2133
+ attr_accessor :scale_in_control
2134
+
2112
2135
  def initialize(**args)
2113
2136
  update!(**args)
2114
2137
  end
@@ -2123,6 +2146,7 @@ module Google
2123
2146
  @min_num_replicas = args[:min_num_replicas] if args.key?(:min_num_replicas)
2124
2147
  @mode = args[:mode] if args.key?(:mode)
2125
2148
  @scale_down_control = args[:scale_down_control] if args.key?(:scale_down_control)
2149
+ @scale_in_control = args[:scale_in_control] if args.key?(:scale_in_control)
2126
2150
  end
2127
2151
  end
2128
2152
 
@@ -2288,6 +2312,34 @@ module Google
2288
2312
  end
2289
2313
  end
2290
2314
 
2315
+ # Configuration that allows for slower scale in so that even if Autoscaler
2316
+ # recommends an abrupt scale in of a MIG, it will be throttled as specified by
2317
+ # the parameters below.
2318
+ class AutoscalingPolicyScaleInControl
2319
+ include Google::Apis::Core::Hashable
2320
+
2321
+ # Encapsulates numeric value that can be either absolute or relative.
2322
+ # Corresponds to the JSON property `maxScaledInReplicas`
2323
+ # @return [Google::Apis::ComputeBeta::FixedOrPercent]
2324
+ attr_accessor :max_scaled_in_replicas
2325
+
2326
+ # How long back autoscaling should look when computing recommendations to
2327
+ # include directives regarding slower scale in, as described above.
2328
+ # Corresponds to the JSON property `timeWindowSec`
2329
+ # @return [Fixnum]
2330
+ attr_accessor :time_window_sec
2331
+
2332
+ def initialize(**args)
2333
+ update!(**args)
2334
+ end
2335
+
2336
+ # Update properties of this object
2337
+ def update!(**args)
2338
+ @max_scaled_in_replicas = args[:max_scaled_in_replicas] if args.key?(:max_scaled_in_replicas)
2339
+ @time_window_sec = args[:time_window_sec] if args.key?(:time_window_sec)
2340
+ end
2341
+ end
2342
+
2291
2343
  # Message containing information of one individual backend.
2292
2344
  class Backend
2293
2345
  include Google::Apis::Core::Hashable
@@ -2329,7 +2381,9 @@ module Google
2329
2381
  # UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group
2330
2382
  # will serve up to 100% of its configured capacity (depending on balancingMode).
2331
2383
  # A setting of 0 means the group is completely drained, offering 0% of its
2332
- # available Capacity. Valid range is [0.0,1.0].
2384
+ # available capacity. Valid range is 0.0 and [0.1,1.0]. You cannot configure a
2385
+ # setting larger than 0 and smaller than 0.1. You cannot configure a setting of
2386
+ # 0 when there is only one backend attached to the backend service.
2333
2387
  # This cannot be used for internal load balancing.
2334
2388
  # Corresponds to the JSON property `capacityScaler`
2335
2389
  # @return [Float]
@@ -2699,13 +2753,17 @@ module Google
2699
2753
  end
2700
2754
 
2701
2755
  # Represents a Backend Service resource.
2702
- # A backend service contains configuration values for Google Cloud Platform load
2703
- # balancing services.
2756
+ # A backend service defines how Google Cloud load balancers distribute traffic.
2757
+ # The backend service configuration contains a set of values, such as the
2758
+ # protocol used to connect to backends, various distribution and session
2759
+ # settings, health checks, and timeouts. These settings provide fine-grained
2760
+ # control over how your load balancer behaves. Most of the settings have default
2761
+ # values that allow for easy configuration if you need to get started quickly.
2704
2762
  # Backend services in Google Compute Engine can be either regionally or globally
2705
2763
  # scoped.
2706
2764
  # * [Global](/compute/docs/reference/rest/`$api_version`/backendServices) * [
2707
2765
  # Regional](/compute/docs/reference/rest/`$api_version`/regionBackendServices)
2708
- # For more information, read Backend Services.
2766
+ # For more information, see Backend Services.
2709
2767
  # (== resource_for `$api_version`.backendService ==)
2710
2768
  class BackendService
2711
2769
  include Google::Apis::Core::Hashable
@@ -2841,8 +2899,8 @@ module Google
2841
2899
  # redirected to the load balancer.
2842
2900
  # - MAGLEV: used as a drop in replacement for the ring hash load balancer.
2843
2901
  # Maglev is not as stable as ring hash but has faster table lookup build times
2844
- # and host selection times. For more information about Maglev, refer to https://
2845
- # ai.google/research/pubs/pub44824
2902
+ # and host selection times. For more information about Maglev, see https://ai.
2903
+ # google/research/pubs/pub44824
2846
2904
  # This field is applicable to either:
2847
2905
  # - A regional backend service with the service_protocol set to HTTP, HTTPS, or
2848
2906
  # HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED.
@@ -2949,8 +3007,8 @@ module Google
2949
3007
  attr_accessor :session_affinity
2950
3008
 
2951
3009
  # The backend service timeout has a different meaning depending on the type of
2952
- # load balancer. For more information read, Backend service settings The
2953
- # default is 30 seconds.
3010
+ # load balancer. For more information see, Backend service settings The default
3011
+ # is 30 seconds.
2954
3012
  # Corresponds to the JSON property `timeoutSec`
2955
3013
  # @return [Fixnum]
2956
3014
  attr_accessor :timeout_sec
@@ -3236,18 +3294,22 @@ module Google
3236
3294
  class BackendServiceIap
3237
3295
  include Google::Apis::Core::Hashable
3238
3296
 
3239
- #
3297
+ # Whether the serving infrastructure will authenticate and authorize all
3298
+ # incoming requests. If true, the oauth2ClientId and oauth2ClientSecret fields
3299
+ # must be non-empty.
3240
3300
  # Corresponds to the JSON property `enabled`
3241
3301
  # @return [Boolean]
3242
3302
  attr_accessor :enabled
3243
3303
  alias_method :enabled?, :enabled
3244
3304
 
3245
- #
3305
+ # OAuth2 client ID to use for the authentication flow.
3246
3306
  # Corresponds to the JSON property `oauth2ClientId`
3247
3307
  # @return [String]
3248
3308
  attr_accessor :oauth2_client_id
3249
3309
 
3250
- #
3310
+ # OAuth2 client secret to use for the authentication flow. For security reasons,
3311
+ # this value cannot be retrieved via the API. Instead, the SHA-256 hash of the
3312
+ # value is returned in the oauth2ClientSecretSha256 field.
3251
3313
  # Corresponds to the JSON property `oauth2ClientSecret`
3252
3314
  # @return [String]
3253
3315
  attr_accessor :oauth2_client_secret
@@ -4915,6 +4977,13 @@ module Google
4915
4977
  # @return [Array<String>]
4916
4978
  attr_accessor :licenses
4917
4979
 
4980
+ # Indicates whether or not the disk can be read/write attached to more than one
4981
+ # instance.
4982
+ # Corresponds to the JSON property `multiWriter`
4983
+ # @return [Boolean]
4984
+ attr_accessor :multi_writer
4985
+ alias_method :multi_writer?, :multi_writer
4986
+
4918
4987
  # Name of the resource. Provided by the client when the resource is created. The
4919
4988
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
4920
4989
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -4971,6 +5040,24 @@ module Google
4971
5040
  # @return [Fixnum]
4972
5041
  attr_accessor :size_gb
4973
5042
 
5043
+ # The source disk used to create this disk. You can provide this as a partial or
5044
+ # full URL to the resource. For example, the following are valid values:
5045
+ # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
5046
+ # - projects/project/zones/zone/disks/disk
5047
+ # - zones/zone/disks/disk
5048
+ # Corresponds to the JSON property `sourceDisk`
5049
+ # @return [String]
5050
+ attr_accessor :source_disk
5051
+
5052
+ # [Output Only] The unique ID of the disk used to create this disk. This value
5053
+ # identifies the exact disk that was used to create this persistent disk. For
5054
+ # example, if you created the persistent disk from a disk that was later deleted
5055
+ # and recreated under the same name, the source disk ID would identify the exact
5056
+ # version of the disk that was used.
5057
+ # Corresponds to the JSON property `sourceDiskId`
5058
+ # @return [String]
5059
+ attr_accessor :source_disk_id
5060
+
4974
5061
  # The source image used to create this disk. If the source image is deleted,
4975
5062
  # this field will not be set.
4976
5063
  # To create a disk with one of the public operating system images, specify the
@@ -5081,6 +5168,7 @@ module Google
5081
5168
  @last_detach_timestamp = args[:last_detach_timestamp] if args.key?(:last_detach_timestamp)
5082
5169
  @license_codes = args[:license_codes] if args.key?(:license_codes)
5083
5170
  @licenses = args[:licenses] if args.key?(:licenses)
5171
+ @multi_writer = args[:multi_writer] if args.key?(:multi_writer)
5084
5172
  @name = args[:name] if args.key?(:name)
5085
5173
  @options = args[:options] if args.key?(:options)
5086
5174
  @physical_block_size_bytes = args[:physical_block_size_bytes] if args.key?(:physical_block_size_bytes)
@@ -5089,6 +5177,8 @@ module Google
5089
5177
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
5090
5178
  @self_link = args[:self_link] if args.key?(:self_link)
5091
5179
  @size_gb = args[:size_gb] if args.key?(:size_gb)
5180
+ @source_disk = args[:source_disk] if args.key?(:source_disk)
5181
+ @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
5092
5182
  @source_image = args[:source_image] if args.key?(:source_image)
5093
5183
  @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key)
5094
5184
  @source_image_id = args[:source_image_id] if args.key?(:source_image_id)
@@ -6643,7 +6733,7 @@ module Google
6643
6733
 
6644
6734
  # Deprecated in favor of enable in LogConfig. This field denotes whether to
6645
6735
  # enable logging for a particular firewall rule. If logging is enabled, logs
6646
- # will be exported to Stackdriver.
6736
+ # will be exported t Cloud Logging.
6647
6737
  # Corresponds to the JSON property `enableLogging`
6648
6738
  # @return [Boolean]
6649
6739
  attr_accessor :enable_logging
@@ -7722,6 +7812,60 @@ module Google
7722
7812
  end
7723
7813
  end
7724
7814
 
7815
+ #
7816
+ class GrpcHealthCheck
7817
+ include Google::Apis::Core::Hashable
7818
+
7819
+ # The gRPC service name for the health check. This field is optional. The value
7820
+ # of grpc_service_name has the following meanings by convention:
7821
+ # - Empty service_name means the overall status of all services at the backend.
7822
+ # - Non-empty service_name means the health of that gRPC service, as defined by
7823
+ # the owner of the service.
7824
+ # The grpc_service_name can only be ASCII.
7825
+ # Corresponds to the JSON property `grpcServiceName`
7826
+ # @return [String]
7827
+ attr_accessor :grpc_service_name
7828
+
7829
+ # The port number for the health check request. Must be specified if port_name
7830
+ # and port_specification are not set or if port_specification is USE_FIXED_PORT.
7831
+ # Valid values are 1 through 65535.
7832
+ # Corresponds to the JSON property `port`
7833
+ # @return [Fixnum]
7834
+ attr_accessor :port
7835
+
7836
+ # Port name as defined in InstanceGroup#NamedPort#name. If both port and
7837
+ # port_name are defined, port takes precedence. The port_name should conform to
7838
+ # RFC1035.
7839
+ # Corresponds to the JSON property `portName`
7840
+ # @return [String]
7841
+ attr_accessor :port_name
7842
+
7843
+ # Specifies how port is selected for health checking, can be one of following
7844
+ # values:
7845
+ # USE_FIXED_PORT: The port number in port is used for health checking.
7846
+ # USE_NAMED_PORT: The portName is used for health checking.
7847
+ # USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each
7848
+ # network endpoint is used for health checking. For other backends, the port or
7849
+ # named port specified in the Backend Service is used for health checking.
7850
+ # If not specified, gRPC health check follows behavior specified in port and
7851
+ # portName fields.
7852
+ # Corresponds to the JSON property `portSpecification`
7853
+ # @return [String]
7854
+ attr_accessor :port_specification
7855
+
7856
+ def initialize(**args)
7857
+ update!(**args)
7858
+ end
7859
+
7860
+ # Update properties of this object
7861
+ def update!(**args)
7862
+ @grpc_service_name = args[:grpc_service_name] if args.key?(:grpc_service_name)
7863
+ @port = args[:port] if args.key?(:port)
7864
+ @port_name = args[:port_name] if args.key?(:port_name)
7865
+ @port_specification = args[:port_specification] if args.key?(:port_specification)
7866
+ end
7867
+ end
7868
+
7725
7869
  #
7726
7870
  class GlobalNetworkEndpointGroupsAttachEndpointsRequest
7727
7871
  include Google::Apis::Core::Hashable
@@ -8219,6 +8363,11 @@ module Google
8219
8363
  # @return [String]
8220
8364
  attr_accessor :description
8221
8365
 
8366
+ #
8367
+ # Corresponds to the JSON property `grpcHealthCheck`
8368
+ # @return [Google::Apis::ComputeBeta::GrpcHealthCheck]
8369
+ attr_accessor :grpc_health_check
8370
+
8222
8371
  # A so-far unhealthy instance will be marked healthy after this many consecutive
8223
8372
  # successes. The default value is 2.
8224
8373
  # Corresponds to the JSON property `healthyThreshold`
@@ -8317,6 +8466,7 @@ module Google
8317
8466
  @check_interval_sec = args[:check_interval_sec] if args.key?(:check_interval_sec)
8318
8467
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
8319
8468
  @description = args[:description] if args.key?(:description)
8469
+ @grpc_health_check = args[:grpc_health_check] if args.key?(:grpc_health_check)
8320
8470
  @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold)
8321
8471
  @http2_health_check = args[:http2_health_check] if args.key?(:http2_health_check)
8322
8472
  @http_health_check = args[:http_health_check] if args.key?(:http_health_check)
@@ -10394,11 +10544,13 @@ module Google
10394
10544
  # @return [String]
10395
10545
  attr_accessor :source_disk_id
10396
10546
 
10397
- # URL of the source image used to create this image. This can be a full or valid
10398
- # partial URL. You must provide exactly one of:
10399
- # - this property, or
10400
- # - the rawDisk.source property, or
10401
- # - the sourceDisk property in order to create an image.
10547
+ # URL of the source image used to create this image.
10548
+ # In order to create an image, you must provide the full or partial URL of one
10549
+ # of the following:
10550
+ # - The selfLink URL
10551
+ # - This property
10552
+ # - The rawDisk.source URL
10553
+ # - The sourceDisk URL
10402
10554
  # Corresponds to the JSON property `sourceImage`
10403
10555
  # @return [String]
10404
10556
  attr_accessor :source_image
@@ -10415,12 +10567,14 @@ module Google
10415
10567
  # @return [String]
10416
10568
  attr_accessor :source_image_id
10417
10569
 
10418
- # URL of the source snapshot used to create this image. This can be a full or
10419
- # valid partial URL. You must provide exactly one of:
10420
- # - this property, or
10421
- # - the sourceImage property, or
10422
- # - the rawDisk.source property, or
10423
- # - the sourceDisk property in order to create an image.
10570
+ # URL of the source snapshot used to create this image.
10571
+ # In order to create an image, you must provide the full or partial URL of one
10572
+ # of the following:
10573
+ # - The selfLink URL
10574
+ # - This property
10575
+ # - The sourceImage URL
10576
+ # - The rawDisk.source URL
10577
+ # - The sourceDisk URL
10424
10578
  # Corresponds to the JSON property `sourceSnapshot`
10425
10579
  # @return [String]
10426
10580
  attr_accessor :source_snapshot
@@ -10861,7 +11015,7 @@ module Google
10861
11015
  # @return [Array<String>]
10862
11016
  attr_accessor :resource_policies
10863
11017
 
10864
- # Sets the scheduling options for an Instance. NextID: 11
11018
+ # Sets the scheduling options for an Instance. NextID: 12
10865
11019
  # Corresponds to the JSON property `scheduling`
10866
11020
  # @return [Google::Apis::ComputeBeta::Scheduling]
10867
11021
  attr_accessor :scheduling
@@ -12149,6 +12303,11 @@ module Google
12149
12303
  attr_accessor :is_stateful
12150
12304
  alias_method :is_stateful?, :is_stateful
12151
12305
 
12306
+ # [Output Only] Status of per-instance configs on the instance.
12307
+ # Corresponds to the JSON property `perInstanceConfigs`
12308
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerStatusStatefulPerInstanceConfigs]
12309
+ attr_accessor :per_instance_configs
12310
+
12152
12311
  def initialize(**args)
12153
12312
  update!(**args)
12154
12313
  end
@@ -12157,6 +12316,29 @@ module Google
12157
12316
  def update!(**args)
12158
12317
  @has_stateful_config = args[:has_stateful_config] if args.key?(:has_stateful_config)
12159
12318
  @is_stateful = args[:is_stateful] if args.key?(:is_stateful)
12319
+ @per_instance_configs = args[:per_instance_configs] if args.key?(:per_instance_configs)
12320
+ end
12321
+ end
12322
+
12323
+ #
12324
+ class InstanceGroupManagerStatusStatefulPerInstanceConfigs
12325
+ include Google::Apis::Core::Hashable
12326
+
12327
+ # A bit indicating if all of the group's per-instance configs (listed in the
12328
+ # output of a listPerInstanceConfigs API call) have status EFFECTIVE or there
12329
+ # are no per-instance-configs.
12330
+ # Corresponds to the JSON property `allEffective`
12331
+ # @return [Boolean]
12332
+ attr_accessor :all_effective
12333
+ alias_method :all_effective?, :all_effective
12334
+
12335
+ def initialize(**args)
12336
+ update!(**args)
12337
+ end
12338
+
12339
+ # Update properties of this object
12340
+ def update!(**args)
12341
+ @all_effective = args[:all_effective] if args.key?(:all_effective)
12160
12342
  end
12161
12343
  end
12162
12344
 
@@ -13507,9 +13689,9 @@ module Google
13507
13689
  class InstanceProperties
13508
13690
  include Google::Apis::Core::Hashable
13509
13691
 
13510
- # Enables instances created based on this template to send packets with source
13511
- # IP addresses other than their own and receive packets with destination IP
13512
- # addresses other than their own. If these instances will be used as an IP
13692
+ # Enables instances created based on these properties to send packets with
13693
+ # source IP addresses other than their own and receive packets with destination
13694
+ # IP addresses other than their own. If these instances will be used as an IP
13513
13695
  # gateway or it will be set as the next-hop in a Route resource, specify true.
13514
13696
  # If unsure, leave this set to false. See the Enable IP forwarding documentation
13515
13697
  # for more information.
@@ -13523,14 +13705,14 @@ module Google
13523
13705
  # @return [Google::Apis::ComputeBeta::ConfidentialInstanceConfig]
13524
13706
  attr_accessor :confidential_instance_config
13525
13707
 
13526
- # An optional text description for the instances that are created from this
13527
- # instance template.
13708
+ # An optional text description for the instances that are created from these
13709
+ # properties.
13528
13710
  # Corresponds to the JSON property `description`
13529
13711
  # @return [String]
13530
13712
  attr_accessor :description
13531
13713
 
13532
13714
  # An array of disks that are associated with the instances that are created from
13533
- # this template.
13715
+ # these properties.
13534
13716
  # Corresponds to the JSON property `disks`
13535
13717
  # @return [Array<Google::Apis::ComputeBeta::AttachedDisk>]
13536
13718
  attr_accessor :disks
@@ -13541,17 +13723,17 @@ module Google
13541
13723
  attr_accessor :display_device
13542
13724
 
13543
13725
  # A list of guest accelerator cards' type and count to use for instances created
13544
- # from the instance template.
13726
+ # from these properties.
13545
13727
  # Corresponds to the JSON property `guestAccelerators`
13546
13728
  # @return [Array<Google::Apis::ComputeBeta::AcceleratorConfig>]
13547
13729
  attr_accessor :guest_accelerators
13548
13730
 
13549
- # Labels to apply to instances that are created from this template.
13731
+ # Labels to apply to instances that are created from these properties.
13550
13732
  # Corresponds to the JSON property `labels`
13551
13733
  # @return [Hash<String,String>]
13552
13734
  attr_accessor :labels
13553
13735
 
13554
- # The machine type to use for instances that are created from this template.
13736
+ # The machine type to use for instances that are created from these properties.
13555
13737
  # Corresponds to the JSON property `machineType`
13556
13738
  # @return [String]
13557
13739
  attr_accessor :machine_type
@@ -13561,11 +13743,11 @@ module Google
13561
13743
  # @return [Google::Apis::ComputeBeta::Metadata]
13562
13744
  attr_accessor :metadata
13563
13745
 
13564
- # Minimum cpu/platform to be used by this instance. The instance may be
13565
- # scheduled on the specified or newer cpu/platform. Applicable values are the
13566
- # friendly names of CPU platforms, such as minCpuPlatform: "Intel Haswell" or
13567
- # minCpuPlatform: "Intel Sandy Bridge". For more information, read Specifying a
13568
- # Minimum CPU Platform.
13746
+ # Minimum cpu/platform to be used by instances. The instance may be scheduled on
13747
+ # the specified or newer cpu/platform. Applicable values are the friendly names
13748
+ # of CPU platforms, such as minCpuPlatform: "Intel Haswell" or minCpuPlatform: "
13749
+ # Intel Sandy Bridge". For more information, read Specifying a Minimum CPU
13750
+ # Platform.
13569
13751
  # Corresponds to the JSON property `minCpuPlatform`
13570
13752
  # @return [String]
13571
13753
  attr_accessor :min_cpu_platform
@@ -13575,7 +13757,7 @@ module Google
13575
13757
  # @return [Array<Google::Apis::ComputeBeta::NetworkInterface>]
13576
13758
  attr_accessor :network_interfaces
13577
13759
 
13578
- # The private IPv6 google access type for the VM. If not specified, use
13760
+ # The private IPv6 google access type for VMs. If not specified, use
13579
13761
  # INHERIT_FROM_SUBNETWORK as default.
13580
13762
  # Corresponds to the JSON property `privateIpv6GoogleAccess`
13581
13763
  # @return [String]
@@ -13586,20 +13768,21 @@ module Google
13586
13768
  # @return [Google::Apis::ComputeBeta::ReservationAffinity]
13587
13769
  attr_accessor :reservation_affinity
13588
13770
 
13589
- # Resource policies (names, not ULRs) applied to instances created from this
13590
- # template.
13771
+ # Resource policies (names, not ULRs) applied to instances created from these
13772
+ # properties.
13591
13773
  # Corresponds to the JSON property `resourcePolicies`
13592
13774
  # @return [Array<String>]
13593
13775
  attr_accessor :resource_policies
13594
13776
 
13595
- # Sets the scheduling options for an Instance. NextID: 11
13777
+ # Sets the scheduling options for an Instance. NextID: 12
13596
13778
  # Corresponds to the JSON property `scheduling`
13597
13779
  # @return [Google::Apis::ComputeBeta::Scheduling]
13598
13780
  attr_accessor :scheduling
13599
13781
 
13600
13782
  # A list of service accounts with specified scopes. Access tokens for these
13601
- # service accounts are available to the instances that are created from this
13602
- # template. Use metadata queries to obtain the access tokens for these instances.
13783
+ # service accounts are available to the instances that are created from these
13784
+ # properties. Use metadata queries to obtain the access tokens for these
13785
+ # instances.
13603
13786
  # Corresponds to the JSON property `serviceAccounts`
13604
13787
  # @return [Array<Google::Apis::ComputeBeta::ServiceAccount>]
13605
13788
  attr_accessor :service_accounts
@@ -15144,8 +15327,7 @@ module Google
15144
15327
  end
15145
15328
 
15146
15329
  # Describes a single physical circuit between the Customer and Google.
15147
- # CircuitInfo objects are created by Google, so all fields are output only. Next
15148
- # id: 4
15330
+ # CircuitInfo objects are created by Google, so all fields are output only.
15149
15331
  class InterconnectCircuitInfo
15150
15332
  include Google::Apis::Core::Hashable
15151
15333
 
@@ -15753,7 +15935,7 @@ module Google
15753
15935
  end
15754
15936
  end
15755
15937
 
15756
- # Description of a planned outage on this Interconnect. Next id: 9
15938
+ # Description of a planned outage on this Interconnect.
15757
15939
  class InterconnectOutageNotification
15758
15940
  include Google::Apis::Core::Hashable
15759
15941
 
@@ -16421,7 +16603,8 @@ module Google
16421
16603
  # @return [String]
16422
16604
  attr_accessor :status
16423
16605
 
16424
- # GCS bucket storage location of the machine image (regional or multi-regional).
16606
+ # The regional or multi-regional Cloud Storage bucket location where the machine
16607
+ # image is stored.
16425
16608
  # Corresponds to the JSON property `storageLocations`
16426
16609
  # @return [Array<String>]
16427
16610
  attr_accessor :storage_locations
@@ -17431,10 +17614,12 @@ module Google
17431
17614
  # @return [String]
17432
17615
  attr_accessor :i_pv4_range
17433
17616
 
17434
- # When set to true, the VPC network is created in "auto" mode. When set to false,
17435
- # the VPC network is created in "custom" mode.
17617
+ # When set to true, the VPC network is created in auto mode. When set to false,
17618
+ # the VPC network is created in custom mode.
17436
17619
  # An auto mode VPC network starts with one subnet per region. Each subnet has a
17437
17620
  # predetermined range as described in Auto mode VPC network IP ranges.
17621
+ # For custom mode VPC networks, you can add subnets using the subnetworks insert
17622
+ # method.
17438
17623
  # Corresponds to the JSON property `autoCreateSubnetworks`
17439
17624
  # @return [Boolean]
17440
17625
  attr_accessor :auto_create_subnetworks
@@ -17522,7 +17707,7 @@ module Google
17522
17707
  end
17523
17708
  end
17524
17709
 
17525
- # The network endpoint. Next ID: 7
17710
+ # The network endpoint.
17526
17711
  class NetworkEndpoint
17527
17712
  include Google::Apis::Core::Hashable
17528
17713
 
@@ -17589,6 +17774,33 @@ module Google
17589
17774
  # @return [Hash<String,String>]
17590
17775
  attr_accessor :annotations
17591
17776
 
17777
+ # Configuration for an App Engine network endpoint group (NEG). The service is
17778
+ # optional, may be provided explicitly or in the URL mask. The version is
17779
+ # optional and can only be provided explicitly or in the URL mask when service
17780
+ # is present.
17781
+ # Note: App Engine service must be in the same project and located in the same
17782
+ # region as the Serverless NEG.
17783
+ # Corresponds to the JSON property `appEngine`
17784
+ # @return [Google::Apis::ComputeBeta::NetworkEndpointGroupAppEngine]
17785
+ attr_accessor :app_engine
17786
+
17787
+ # Configuration for a Cloud Function network endpoint group (NEG). The function
17788
+ # must be provided explicitly or in the URL mask.
17789
+ # Note: Cloud Function must be in the same project and located in the same
17790
+ # region as the Serverless NEG.
17791
+ # Corresponds to the JSON property `cloudFunction`
17792
+ # @return [Google::Apis::ComputeBeta::NetworkEndpointGroupCloudFunction]
17793
+ attr_accessor :cloud_function
17794
+
17795
+ # Configuration for a Cloud Run network endpoint group (NEG). The service must
17796
+ # be provided explicitly or in the URL mask. The tag is optional, may be
17797
+ # provided explicitly or in the URL mask.
17798
+ # Note: Cloud Run service must be in the same project and located in the same
17799
+ # region as the Serverless NEG.
17800
+ # Corresponds to the JSON property `cloudRun`
17801
+ # @return [Google::Apis::ComputeBeta::NetworkEndpointGroupCloudRun]
17802
+ attr_accessor :cloud_run
17803
+
17592
17804
  # [Output Only] Creation timestamp in RFC3339 text format.
17593
17805
  # Corresponds to the JSON property `creationTimestamp`
17594
17806
  # @return [String]
@@ -17644,6 +17856,12 @@ module Google
17644
17856
  # @return [String]
17645
17857
  attr_accessor :network_endpoint_type
17646
17858
 
17859
+ # [Output Only] The URL of the region where the network endpoint group is
17860
+ # located.
17861
+ # Corresponds to the JSON property `region`
17862
+ # @return [String]
17863
+ attr_accessor :region
17864
+
17647
17865
  # [Output Only] Server-defined URL for the resource.
17648
17866
  # Corresponds to the JSON property `selfLink`
17649
17867
  # @return [String]
@@ -17672,6 +17890,9 @@ module Google
17672
17890
  # Update properties of this object
17673
17891
  def update!(**args)
17674
17892
  @annotations = args[:annotations] if args.key?(:annotations)
17893
+ @app_engine = args[:app_engine] if args.key?(:app_engine)
17894
+ @cloud_function = args[:cloud_function] if args.key?(:cloud_function)
17895
+ @cloud_run = args[:cloud_run] if args.key?(:cloud_run)
17675
17896
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
17676
17897
  @default_port = args[:default_port] if args.key?(:default_port)
17677
17898
  @description = args[:description] if args.key?(:description)
@@ -17681,6 +17902,7 @@ module Google
17681
17902
  @name = args[:name] if args.key?(:name)
17682
17903
  @network = args[:network] if args.key?(:network)
17683
17904
  @network_endpoint_type = args[:network_endpoint_type] if args.key?(:network_endpoint_type)
17905
+ @region = args[:region] if args.key?(:region)
17684
17906
  @self_link = args[:self_link] if args.key?(:self_link)
17685
17907
  @size = args[:size] if args.key?(:size)
17686
17908
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
@@ -17807,6 +18029,134 @@ module Google
17807
18029
  end
17808
18030
  end
17809
18031
 
18032
+ # Configuration for an App Engine network endpoint group (NEG). The service is
18033
+ # optional, may be provided explicitly or in the URL mask. The version is
18034
+ # optional and can only be provided explicitly or in the URL mask when service
18035
+ # is present.
18036
+ # Note: App Engine service must be in the same project and located in the same
18037
+ # region as the Serverless NEG.
18038
+ class NetworkEndpointGroupAppEngine
18039
+ include Google::Apis::Core::Hashable
18040
+
18041
+ # Optional serving service.
18042
+ # The service name must be 1-63 characters long, and comply with RFC1035.
18043
+ # Example value: "default", "my-service".
18044
+ # Corresponds to the JSON property `service`
18045
+ # @return [String]
18046
+ attr_accessor :service
18047
+
18048
+ # A template to parse service and version fields from a request URL. URL mask
18049
+ # allows for routing to multiple App Engine services without having to create
18050
+ # multiple Network Endpoint Groups and backend services.
18051
+ # For example, the request URLs "foo1-dot-appname.appspot.com/v1" and "foo1-dot-
18052
+ # appname.appspot.com/v2" can be backed by the same Serverless NEG with URL mask
18053
+ # "-dot-appname.appspot.com/". The URL mask will parse them to ` service = "foo1"
18054
+ # , version = "v1" ` and ` service = "foo1", version = "v2" ` respectively.
18055
+ # Corresponds to the JSON property `urlMask`
18056
+ # @return [String]
18057
+ attr_accessor :url_mask
18058
+
18059
+ # Optional serving version.
18060
+ # The version must be 1-63 characters long, and comply with RFC1035.
18061
+ # Example value: "v1", "v2".
18062
+ # Corresponds to the JSON property `version`
18063
+ # @return [String]
18064
+ attr_accessor :version
18065
+
18066
+ def initialize(**args)
18067
+ update!(**args)
18068
+ end
18069
+
18070
+ # Update properties of this object
18071
+ def update!(**args)
18072
+ @service = args[:service] if args.key?(:service)
18073
+ @url_mask = args[:url_mask] if args.key?(:url_mask)
18074
+ @version = args[:version] if args.key?(:version)
18075
+ end
18076
+ end
18077
+
18078
+ # Configuration for a Cloud Function network endpoint group (NEG). The function
18079
+ # must be provided explicitly or in the URL mask.
18080
+ # Note: Cloud Function must be in the same project and located in the same
18081
+ # region as the Serverless NEG.
18082
+ class NetworkEndpointGroupCloudFunction
18083
+ include Google::Apis::Core::Hashable
18084
+
18085
+ # A user-defined name of the Cloud Function.
18086
+ # The function name is case-sensitive and must be 1-63 characters long.
18087
+ # Example value: "func1".
18088
+ # Corresponds to the JSON property `function`
18089
+ # @return [String]
18090
+ attr_accessor :function
18091
+
18092
+ # A template to parse function field from a request URL. URL mask allows for
18093
+ # routing to multiple Cloud Functions without having to create multiple Network
18094
+ # Endpoint Groups and backend services.
18095
+ # For example, request URLs "mydomain.com/function1" and "mydomain.com/function2"
18096
+ # can be backed by the same Serverless NEG with URL mask "/". The URL mask will
18097
+ # parse them to ` function = "function1" ` and ` function = "function2" `
18098
+ # respectively.
18099
+ # Corresponds to the JSON property `urlMask`
18100
+ # @return [String]
18101
+ attr_accessor :url_mask
18102
+
18103
+ def initialize(**args)
18104
+ update!(**args)
18105
+ end
18106
+
18107
+ # Update properties of this object
18108
+ def update!(**args)
18109
+ @function = args[:function] if args.key?(:function)
18110
+ @url_mask = args[:url_mask] if args.key?(:url_mask)
18111
+ end
18112
+ end
18113
+
18114
+ # Configuration for a Cloud Run network endpoint group (NEG). The service must
18115
+ # be provided explicitly or in the URL mask. The tag is optional, may be
18116
+ # provided explicitly or in the URL mask.
18117
+ # Note: Cloud Run service must be in the same project and located in the same
18118
+ # region as the Serverless NEG.
18119
+ class NetworkEndpointGroupCloudRun
18120
+ include Google::Apis::Core::Hashable
18121
+
18122
+ # Cloud Run service is the main resource of Cloud Run.
18123
+ # The service must be 1-63 characters long, and comply with RFC1035.
18124
+ # Example value: "run-service".
18125
+ # Corresponds to the JSON property `service`
18126
+ # @return [String]
18127
+ attr_accessor :service
18128
+
18129
+ # Optional Cloud Run tag represents the "named-revision" to provide additional
18130
+ # fine-grained traffic routing information.
18131
+ # The tag must be 1-63 characters long, and comply with RFC1035.
18132
+ # Example value: "revision-0010".
18133
+ # Corresponds to the JSON property `tag`
18134
+ # @return [String]
18135
+ attr_accessor :tag
18136
+
18137
+ # A template to parse service and tag fields from a request URL. URL mask allows
18138
+ # for routing to multiple Run services without having to create multiple network
18139
+ # endpoint groups and backend services.
18140
+ # For example, request URLs "foo1.domain.com/bar1" and "foo1.domain.com/bar2"
18141
+ # can be backed by the same Serverless Network Endpoint Group (NEG) with URL
18142
+ # mask ".domain.com/". The URL mask will parse them to ` service="bar1", tag="
18143
+ # foo1" ` and ` service="bar2", tag="foo2" ` respectively.
18144
+ # Corresponds to the JSON property `urlMask`
18145
+ # @return [String]
18146
+ attr_accessor :url_mask
18147
+
18148
+ def initialize(**args)
18149
+ update!(**args)
18150
+ end
18151
+
18152
+ # Update properties of this object
18153
+ def update!(**args)
18154
+ @service = args[:service] if args.key?(:service)
18155
+ @tag = args[:tag] if args.key?(:tag)
18156
+ @url_mask = args[:url_mask] if args.key?(:url_mask)
18157
+ end
18158
+ end
18159
+
17810
18160
  # Load balancing specific fields for network endpoint group.
17811
18161
  class NetworkEndpointGroupLbNetworkEndpointGroup
17812
18162
  include Google::Apis::Core::Hashable
@@ -18037,7 +18387,7 @@ module Google
18037
18387
  class NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter
18038
18388
  include Google::Apis::Core::Hashable
18039
18389
 
18040
- # The network endpoint. Next ID: 7
18390
+ # The network endpoint.
18041
18391
  # Corresponds to the JSON property `networkEndpoint`
18042
18392
  # @return [Google::Apis::ComputeBeta::NetworkEndpoint]
18043
18393
  attr_accessor :network_endpoint
@@ -18266,7 +18616,7 @@ module Google
18266
18616
  # @return [Array<Google::Apis::ComputeBeta::HealthStatusForNetworkEndpoint>]
18267
18617
  attr_accessor :healths
18268
18618
 
18269
- # The network endpoint. Next ID: 7
18619
+ # The network endpoint.
18270
18620
  # Corresponds to the JSON property `networkEndpoint`
18271
18621
  # @return [Google::Apis::ComputeBeta::NetworkEndpoint]
18272
18622
  attr_accessor :network_endpoint
@@ -18820,7 +19170,7 @@ module Google
18820
19170
  # @return [String]
18821
19171
  attr_accessor :name
18822
19172
 
18823
- # The URL of the node template to which this node group belongs.
19173
+ # URL of the node template to create the node group from.
18824
19174
  # Corresponds to the JSON property `nodeTemplate`
18825
19175
  # @return [String]
18826
19176
  attr_accessor :node_template
@@ -19460,7 +19810,7 @@ module Google
19460
19810
  # Represent a sole-tenant Node Template resource.
19461
19811
  # You can use a template to define properties for nodes in a node group. For
19462
19812
  # more information, read Creating node groups and instances. (== resource_for `$
19463
- # api_version`.nodeTemplates ==) (== NextID: 19 ==)
19813
+ # api_version`.nodeTemplates ==)
19464
19814
  class NodeTemplate
19465
19815
  include Google::Apis::Core::Hashable
19466
19816
 
@@ -22047,6 +22397,8 @@ module Google
22047
22397
  # defaultService must not be set. Conversely if defaultService is set,
22048
22398
  # defaultRouteAction cannot contain any weightedBackendServices.
22049
22399
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
22400
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
22401
+ # within a pathMatcher's defaultRouteAction.
22050
22402
  # Corresponds to the JSON property `defaultRouteAction`
22051
22403
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
22052
22404
  attr_accessor :default_route_action
@@ -22150,6 +22502,8 @@ module Google
22150
22502
  # weightedBackendServices, service must not be set. Conversely if service is set,
22151
22503
  # routeAction cannot contain any weightedBackendServices.
22152
22504
  # Only one of routeAction or urlRedirect must be set.
22505
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
22506
+ # within a pathRule's routeAction.
22153
22507
  # Corresponds to the JSON property `routeAction`
22154
22508
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
22155
22509
  attr_accessor :route_action
@@ -22212,6 +22566,12 @@ module Google
22212
22566
  # @return [Google::Apis::ComputeBeta::PreservedState]
22213
22567
  attr_accessor :preserved_state
22214
22568
 
22569
+ # The status of applying this per-instance config on the corresponding managed
22570
+ # instance.
22571
+ # Corresponds to the JSON property `status`
22572
+ # @return [String]
22573
+ attr_accessor :status
22574
+
22215
22575
  def initialize(**args)
22216
22576
  update!(**args)
22217
22577
  end
@@ -22221,6 +22581,7 @@ module Google
22221
22581
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
22222
22582
  @name = args[:name] if args.key?(:name)
22223
22583
  @preserved_state = args[:preserved_state] if args.key?(:preserved_state)
22584
+ @status = args[:status] if args.key?(:status)
22224
22585
  end
22225
22586
  end
22226
22587
 
@@ -26755,7 +27116,7 @@ module Google
26755
27116
  end
26756
27117
  end
26757
27118
 
26758
- # Status of a NAT contained in this router. Next tag: 9
27119
+ # Status of a NAT contained in this router.
26759
27120
  class RouterStatusNatStatus
26760
27121
  include Google::Apis::Core::Hashable
26761
27122
 
@@ -27206,7 +27567,7 @@ module Google
27206
27567
  end
27207
27568
  end
27208
27569
 
27209
- # Sets the scheduling options for an Instance. NextID: 11
27570
+ # Sets the scheduling options for an Instance. NextID: 12
27210
27571
  class Scheduling
27211
27572
  include Google::Apis::Core::Hashable
27212
27573
 
@@ -27242,8 +27603,9 @@ module Google
27242
27603
  attr_accessor :on_host_maintenance
27243
27604
 
27244
27605
  # Defines whether the instance is preemptible. This can only be set during
27245
- # instance creation, it cannot be set or changed after the instance has been
27246
- # created.
27606
+ # instance creation or while the instance is stopped and therefore, in a `
27607
+ # TERMINATED` state. See Instance Life Cycle for more information on the
27608
+ # possible instance states.
27247
27609
  # Corresponds to the JSON property `preemptible`
27248
27610
  # @return [Boolean]
27249
27611
  attr_accessor :preemptible
@@ -27900,24 +28262,32 @@ module Google
27900
28262
  class SecuritySettings
27901
28263
  include Google::Apis::Core::Hashable
27902
28264
 
27903
- # A URL referring to a networksecurity.Authentication resource that describes
27904
- # how clients should authenticate with this service's backends. If left blank,
27905
- # communications between services are not encrypted (i.e., the TLS policy is set
27906
- # to OPEN). When sending traffic to this service's backends, the OriginationTls
27907
- # setting of Authentication.TransportAuthentication is applied. Refer to the
27908
- # Authentication and Authentication.TransportAuthentication.OriginationTls
27909
- # resources for additional details. authentication only applies to a global
27910
- # BackendService with the loadBalancingScheme set to INTERNAL_SELF_MANAGED.
28265
+ # [Deprecated] Use clientTlsPolicy instead.
27911
28266
  # Corresponds to the JSON property `authentication`
27912
28267
  # @return [String]
27913
28268
  attr_accessor :authentication
27914
28269
 
27915
- # Optional. A list of subject alternate names to verify the subject identity (
27916
- # SAN) in the certificate presented by the server, to authorize the SAN list as
27917
- # identities to run the service represented by this BackendService. If specified,
27918
- # the client will verify that the server certificate's subject alt name matches
27919
- # one of the specified values. Only applies to a global BackendService with the
28270
+ # Optional. A URL referring to a networksecurity.ClientTlsPolicy resource that
28271
+ # describes how clients should authenticate with this service's backends.
28272
+ # clientTlsPolicy only applies to a global BackendService with the
27920
28273
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
28274
+ # If left blank, communications are not encrypted.
28275
+ # Corresponds to the JSON property `clientTlsPolicy`
28276
+ # @return [String]
28277
+ attr_accessor :client_tls_policy
28278
+
28279
+ # Optional. A list of Subject Alternative Names (SANs) that the client verifies
28280
+ # during a mutual TLS handshake with an server/endpoint for this BackendService.
28281
+ # When the server presents its X.509 certificate to the client, the client
28282
+ # inspects the certificate's subjectAltName field. If the field contains one of
28283
+ # the specified values, the communication continues. Otherwise, it fails. This
28284
+ # additional check enables the client to verify that the server is authorized to
28285
+ # run the requested service.
28286
+ # Note that the contents of the server certificate's subjectAltName field are
28287
+ # configured by the Public Key Infrastructure which provisions server identities.
28288
+ # Only applies to a global BackendService with loadBalancingScheme set to
28289
+ # INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached
28290
+ # clientTlsPolicy with clientCertificate (mTLS mode).
27921
28291
  # Corresponds to the JSON property `subjectAltNames`
27922
28292
  # @return [Array<String>]
27923
28293
  attr_accessor :subject_alt_names
@@ -27929,6 +28299,7 @@ module Google
27929
28299
  # Update properties of this object
27930
28300
  def update!(**args)
27931
28301
  @authentication = args[:authentication] if args.key?(:authentication)
28302
+ @client_tls_policy = args[:client_tls_policy] if args.key?(:client_tls_policy)
27932
28303
  @subject_alt_names = args[:subject_alt_names] if args.key?(:subject_alt_names)
27933
28304
  end
27934
28305
  end
@@ -28698,7 +29069,7 @@ module Google
28698
29069
  # @return [Array<Google::Apis::ComputeBeta::NetworkInterface>]
28699
29070
  attr_accessor :network_interfaces
28700
29071
 
28701
- # Sets the scheduling options for an Instance. NextID: 11
29072
+ # Sets the scheduling options for an Instance. NextID: 12
28702
29073
  # Corresponds to the JSON property `scheduling`
28703
29074
  # @return [Google::Apis::ComputeBeta::Scheduling]
28704
29075
  attr_accessor :scheduling
@@ -28750,9 +29121,9 @@ module Google
28750
29121
  # to five PEM-encoded certificates. The API call creates an object (
28751
29122
  # sslCertificate) that holds this data. You can use SSL keys and certificates to
28752
29123
  # secure connections to a load balancer. For more information, read Creating
28753
- # and using SSL certificates and SSL certificates quotas and limits. (==
28754
- # resource_for `$api_version`.sslCertificates ==) (== resource_for `$api_version`
28755
- # .regionSslCertificates ==)
29124
+ # and using SSL certificates, SSL certificates quotas and limits, and
29125
+ # Troubleshooting SSL certificates. (== resource_for `$api_version`.
29126
+ # sslCertificates ==) (== resource_for `$api_version`.regionSslCertificates ==)
28756
29127
  class SslCertificate
28757
29128
  include Google::Apis::Core::Hashable
28758
29129
 
@@ -29713,7 +30084,8 @@ module Google
29713
30084
  # The range of internal addresses that are owned by this subnetwork. Provide
29714
30085
  # this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.
29715
30086
  # 168.0.0/16. Ranges must be unique and non-overlapping within a network. Only
29716
- # IPv4 is supported. This field can be set only at resource creation time.
30087
+ # IPv4 is supported. This field is set at resource creation time. The range can
30088
+ # be expanded after creation using expandIpCidrRange.
29717
30089
  # Corresponds to the JSON property `ipCidrRange`
29718
30090
  # @return [String]
29719
30091
  attr_accessor :ip_cidr_range
@@ -30416,6 +30788,225 @@ module Google
30416
30788
  end
30417
30789
  end
30418
30790
 
30791
+ # Represents a Target gRPC Proxy resource.
30792
+ # A target gRPC proxy is a component of load balancers intended for load
30793
+ # balancing gRPC traffic. Global forwarding rules reference a target gRPC proxy.
30794
+ # The Target gRPC Proxy references a URL map which specifies how traffic routes
30795
+ # to gRPC backend services.
30796
+ class TargetGrpcProxy
30797
+ include Google::Apis::Core::Hashable
30798
+
30799
+ # [Output Only] Creation timestamp in RFC3339 text format.
30800
+ # Corresponds to the JSON property `creationTimestamp`
30801
+ # @return [String]
30802
+ attr_accessor :creation_timestamp
30803
+
30804
+ # An optional description of this resource. Provide this property when you
30805
+ # create the resource.
30806
+ # Corresponds to the JSON property `description`
30807
+ # @return [String]
30808
+ attr_accessor :description
30809
+
30810
+ # Fingerprint of this resource. A hash of the contents stored in this object.
30811
+ # This field is used in optimistic locking. This field will be ignored when
30812
+ # inserting a TargetGrpcProxy. An up-to-date fingerprint must be provided in
30813
+ # order to patch/update the TargetGrpcProxy; otherwise, the request will fail
30814
+ # with error 412 conditionNotMet. To see the latest fingerprint, make a get()
30815
+ # request to retrieve the TargetGrpcProxy.
30816
+ # Corresponds to the JSON property `fingerprint`
30817
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
30818
+ # @return [String]
30819
+ attr_accessor :fingerprint
30820
+
30821
+ # [Output Only] The unique identifier for the resource type. The server
30822
+ # generates this identifier.
30823
+ # Corresponds to the JSON property `id`
30824
+ # @return [Fixnum]
30825
+ attr_accessor :id
30826
+
30827
+ # [Output Only] Type of the resource. Always compute#targetGrpcProxy for target
30828
+ # grpc proxies.
30829
+ # Corresponds to the JSON property `kind`
30830
+ # @return [String]
30831
+ attr_accessor :kind
30832
+
30833
+ # Name of the resource. Provided by the client when the resource is created. The
30834
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
30835
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
30836
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
30837
+ # and all following characters must be a dash, lowercase letter, or digit,
30838
+ # except the last character, which cannot be a dash.
30839
+ # Corresponds to the JSON property `name`
30840
+ # @return [String]
30841
+ attr_accessor :name
30842
+
30843
+ # [Output Only] Server-defined URL for the resource.
30844
+ # Corresponds to the JSON property `selfLink`
30845
+ # @return [String]
30846
+ attr_accessor :self_link
30847
+
30848
+ # [Output Only] Server-defined URL with id for the resource.
30849
+ # Corresponds to the JSON property `selfLinkWithId`
30850
+ # @return [String]
30851
+ attr_accessor :self_link_with_id
30852
+
30853
+ # URL to the UrlMap resource that defines the mapping from URL to the
30854
+ # BackendService. The protocol field in the BackendService must be set to GRPC.
30855
+ # Corresponds to the JSON property `urlMap`
30856
+ # @return [String]
30857
+ attr_accessor :url_map
30858
+
30859
+ # If true, indicates that the BackendServices referenced by the urlMap may be
30860
+ # accessed by gRPC applications without using a sidecar proxy. This will enable
30861
+ # configuration checks on urlMap and its referenced BackendServices to not allow
30862
+ # unsupported features. A gRPC application must use "xds-experimental:///"
30863
+ # scheme in the target URI of the service it is connecting to. If false,
30864
+ # indicates that the BackendServices referenced by the urlMap will be accessed
30865
+ # by gRPC applications via a sidecar proxy. In this case, a gRPC application
30866
+ # must not use "xds-experimental:///" scheme in the target URI of the service it
30867
+ # is connecting to
30868
+ # Corresponds to the JSON property `validateForProxyless`
30869
+ # @return [Boolean]
30870
+ attr_accessor :validate_for_proxyless
30871
+ alias_method :validate_for_proxyless?, :validate_for_proxyless
30872
+
30873
+ def initialize(**args)
30874
+ update!(**args)
30875
+ end
30876
+
30877
+ # Update properties of this object
30878
+ def update!(**args)
30879
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
30880
+ @description = args[:description] if args.key?(:description)
30881
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
30882
+ @id = args[:id] if args.key?(:id)
30883
+ @kind = args[:kind] if args.key?(:kind)
30884
+ @name = args[:name] if args.key?(:name)
30885
+ @self_link = args[:self_link] if args.key?(:self_link)
30886
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
30887
+ @url_map = args[:url_map] if args.key?(:url_map)
30888
+ @validate_for_proxyless = args[:validate_for_proxyless] if args.key?(:validate_for_proxyless)
30889
+ end
30890
+ end
30891
+
30892
+ #
30893
+ class TargetGrpcProxyList
30894
+ include Google::Apis::Core::Hashable
30895
+
30896
+ # [Output Only] Unique identifier for the resource; defined by the server.
30897
+ # Corresponds to the JSON property `id`
30898
+ # @return [String]
30899
+ attr_accessor :id
30900
+
30901
+ # A list of TargetGrpcProxy resources.
30902
+ # Corresponds to the JSON property `items`
30903
+ # @return [Array<Google::Apis::ComputeBeta::TargetGrpcProxy>]
30904
+ attr_accessor :items
30905
+
30906
+ # [Output Only] Type of the resource. Always compute#targetGrpcProxy for target
30907
+ # grpc proxies.
30908
+ # Corresponds to the JSON property `kind`
30909
+ # @return [String]
30910
+ attr_accessor :kind
30911
+
30912
+ # [Output Only] This token allows you to get the next page of results for list
30913
+ # requests. If the number of results is larger than maxResults, use the
30914
+ # nextPageToken as a value for the query parameter pageToken in the next list
30915
+ # request. Subsequent list requests will have their own nextPageToken to
30916
+ # continue paging through the results.
30917
+ # Corresponds to the JSON property `nextPageToken`
30918
+ # @return [String]
30919
+ attr_accessor :next_page_token
30920
+
30921
+ # [Output Only] Server-defined URL for this resource.
30922
+ # Corresponds to the JSON property `selfLink`
30923
+ # @return [String]
30924
+ attr_accessor :self_link
30925
+
30926
+ # [Output Only] Informational warning message.
30927
+ # Corresponds to the JSON property `warning`
30928
+ # @return [Google::Apis::ComputeBeta::TargetGrpcProxyList::Warning]
30929
+ attr_accessor :warning
30930
+
30931
+ def initialize(**args)
30932
+ update!(**args)
30933
+ end
30934
+
30935
+ # Update properties of this object
30936
+ def update!(**args)
30937
+ @id = args[:id] if args.key?(:id)
30938
+ @items = args[:items] if args.key?(:items)
30939
+ @kind = args[:kind] if args.key?(:kind)
30940
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
30941
+ @self_link = args[:self_link] if args.key?(:self_link)
30942
+ @warning = args[:warning] if args.key?(:warning)
30943
+ end
30944
+
30945
+ # [Output Only] Informational warning message.
30946
+ class Warning
30947
+ include Google::Apis::Core::Hashable
30948
+
30949
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
30950
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
30951
+ # Corresponds to the JSON property `code`
30952
+ # @return [String]
30953
+ attr_accessor :code
30954
+
30955
+ # [Output Only] Metadata about this warning in key: value format. For example:
30956
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
30957
+ # Corresponds to the JSON property `data`
30958
+ # @return [Array<Google::Apis::ComputeBeta::TargetGrpcProxyList::Warning::Datum>]
30959
+ attr_accessor :data
30960
+
30961
+ # [Output Only] A human-readable description of the warning code.
30962
+ # Corresponds to the JSON property `message`
30963
+ # @return [String]
30964
+ attr_accessor :message
30965
+
30966
+ def initialize(**args)
30967
+ update!(**args)
30968
+ end
30969
+
30970
+ # Update properties of this object
30971
+ def update!(**args)
30972
+ @code = args[:code] if args.key?(:code)
30973
+ @data = args[:data] if args.key?(:data)
30974
+ @message = args[:message] if args.key?(:message)
30975
+ end
30976
+
30977
+ #
30978
+ class Datum
30979
+ include Google::Apis::Core::Hashable
30980
+
30981
+ # [Output Only] A key that provides more detail on the warning being returned.
30982
+ # For example, for warnings where there are no results in a list request for a
30983
+ # particular zone, this key might be scope and the key value might be the zone
30984
+ # name. Other examples might be a key indicating a deprecated resource and a
30985
+ # suggested replacement, or a warning about invalid network settings (for
30986
+ # example, if an instance attempts to perform IP forwarding but is not enabled
30987
+ # for IP forwarding).
30988
+ # Corresponds to the JSON property `key`
30989
+ # @return [String]
30990
+ attr_accessor :key
30991
+
30992
+ # [Output Only] A warning data value corresponding to the key.
30993
+ # Corresponds to the JSON property `value`
30994
+ # @return [String]
30995
+ attr_accessor :value
30996
+
30997
+ def initialize(**args)
30998
+ update!(**args)
30999
+ end
31000
+
31001
+ # Update properties of this object
31002
+ def update!(**args)
31003
+ @key = args[:key] if args.key?(:key)
31004
+ @value = args[:value] if args.key?(:value)
31005
+ end
31006
+ end
31007
+ end
31008
+ end
31009
+
30419
31010
  #
30420
31011
  class TargetHttpProxiesScopedList
30421
31012
  include Google::Apis::Core::Hashable
@@ -30977,31 +31568,27 @@ module Google
30977
31568
  class TargetHttpsProxy
30978
31569
  include Google::Apis::Core::Hashable
30979
31570
 
30980
- # A URL referring to a networksecurity.Authentication resource that describes
30981
- # how the proxy should authenticate inbound traffic. If left blank,
30982
- # communications between services are not encrypted (i.e., the TLS policy is set
30983
- # to OPEN). When terminating inbound traffic to this proxy, the TerminationTls
30984
- # setting of Authentication.TransportAuthentication is applied.
30985
- # Refer to the Authentication and Authentication.TransportAuthentication.
30986
- # TerminationTls resources for additional details.
30987
- # authentication only applies to a global TargetHttpsProxy attached to
30988
- # globalForwardingRules with the loadBalancingScheme set to
30989
- # INTERNAL_SELF_MANAGED.
31571
+ # [Deprecated] Use serverTlsPolicy instead.
30990
31572
  # Corresponds to the JSON property `authentication`
30991
31573
  # @return [String]
30992
31574
  attr_accessor :authentication
30993
31575
 
30994
- # A URL referring to a networksecurity.Authorization resource that describes how
30995
- # the proxy should authorize inbound traffic. If left blank, access will not be
30996
- # restricted by an authorization policy.
30997
- # Refer to the Authorization resource for additional details.
30998
- # authorization only applies to a global TargetHttpsProxy attached to
30999
- # globalForwardingRules with the loadBalancingScheme set to
31000
- # INTERNAL_SELF_MANAGED.
31576
+ # [Deprecated] Use authorizationPolicy instead.
31001
31577
  # Corresponds to the JSON property `authorization`
31002
31578
  # @return [String]
31003
31579
  attr_accessor :authorization
31004
31580
 
31581
+ # Optional. A URL referring to a networksecurity.AuthorizationPolicy resource
31582
+ # that describes how the proxy should authorize inbound traffic. If left blank,
31583
+ # access will not be restricted by an authorization policy.
31584
+ # Refer to the AuthorizationPolicy resource for additional details.
31585
+ # authorizationPolicy only applies to a global TargetHttpsProxy attached to
31586
+ # globalForwardingRules with the loadBalancingScheme set to
31587
+ # INTERNAL_SELF_MANAGED.
31588
+ # Corresponds to the JSON property `authorizationPolicy`
31589
+ # @return [String]
31590
+ attr_accessor :authorization_policy
31591
+
31005
31592
  # [Output Only] Creation timestamp in RFC3339 text format.
31006
31593
  # Corresponds to the JSON property `creationTimestamp`
31007
31594
  # @return [String]
@@ -31067,6 +31654,16 @@ module Google
31067
31654
  # @return [String]
31068
31655
  attr_accessor :self_link
31069
31656
 
31657
+ # Optional. A URL referring to a networksecurity.ServerTlsPolicy resource that
31658
+ # describes how the proxy should authenticate inbound traffic.
31659
+ # serverTlsPolicy only applies to a global TargetHttpsProxy attached to
31660
+ # globalForwardingRules with the loadBalancingScheme set to
31661
+ # INTERNAL_SELF_MANAGED.
31662
+ # If left blank, communications are not encrypted.
31663
+ # Corresponds to the JSON property `serverTlsPolicy`
31664
+ # @return [String]
31665
+ attr_accessor :server_tls_policy
31666
+
31070
31667
  # URLs to SslCertificate resources that are used to authenticate connections
31071
31668
  # between users and the load balancer. At least one SSL certificate must be
31072
31669
  # specified. Currently, you may specify up to 15 SSL certificates.
@@ -31099,6 +31696,7 @@ module Google
31099
31696
  def update!(**args)
31100
31697
  @authentication = args[:authentication] if args.key?(:authentication)
31101
31698
  @authorization = args[:authorization] if args.key?(:authorization)
31699
+ @authorization_policy = args[:authorization_policy] if args.key?(:authorization_policy)
31102
31700
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
31103
31701
  @description = args[:description] if args.key?(:description)
31104
31702
  @id = args[:id] if args.key?(:id)
@@ -31108,6 +31706,7 @@ module Google
31108
31706
  @quic_override = args[:quic_override] if args.key?(:quic_override)
31109
31707
  @region = args[:region] if args.key?(:region)
31110
31708
  @self_link = args[:self_link] if args.key?(:self_link)
31709
+ @server_tls_policy = args[:server_tls_policy] if args.key?(:server_tls_policy)
31111
31710
  @ssl_certificates = args[:ssl_certificates] if args.key?(:ssl_certificates)
31112
31711
  @ssl_policy = args[:ssl_policy] if args.key?(:ssl_policy)
31113
31712
  @url_map = args[:url_map] if args.key?(:url_map)
@@ -33395,6 +33994,8 @@ module Google
33395
33994
  # must not be set. Conversely if defaultService is set, defaultRouteAction
33396
33995
  # cannot contain any weightedBackendServices.
33397
33996
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
33997
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
33998
+ # within defaultRouteAction.
33398
33999
  # Corresponds to the JSON property `defaultRouteAction`
33399
34000
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
33400
34001
  attr_accessor :default_route_action