google-api-client 0.32.1 → 0.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (491) hide show
  1. checksums.yaml +5 -5
  2. data/.kokoro/continuous/linux.cfg +2 -2
  3. data/.kokoro/continuous/post.cfg +30 -0
  4. data/.kokoro/presubmit/linux.cfg +1 -1
  5. data/.kokoro/release.cfg +94 -0
  6. data/.repo-metadata.json +5 -0
  7. data/.rubocop.yml +5 -0
  8. data/.yardopts +16 -3
  9. data/CHANGELOG.md +327 -0
  10. data/Gemfile +1 -0
  11. data/OVERVIEW.md +36 -0
  12. data/README.md +50 -2
  13. data/Rakefile +71 -2
  14. data/docs/api-keys.md +20 -0
  15. data/docs/auth.md +53 -0
  16. data/docs/client-secrets.md +69 -0
  17. data/docs/getting-started.md +340 -0
  18. data/docs/installation.md +0 -0
  19. data/docs/logging.md +34 -0
  20. data/docs/media-upload.md +25 -0
  21. data/docs/oauth-installed.md +191 -0
  22. data/docs/oauth-server.md +135 -0
  23. data/docs/oauth-web.md +280 -0
  24. data/docs/oauth.md +268 -0
  25. data/docs/pagination.md +29 -0
  26. data/docs/performance.md +25 -0
  27. data/generated/google/apis/accessapproval_v1beta1/classes.rb +35 -2
  28. data/generated/google/apis/accessapproval_v1beta1/representations.rb +13 -0
  29. data/generated/google/apis/accessapproval_v1beta1/service.rb +108 -6
  30. data/generated/google/apis/accessapproval_v1beta1.rb +1 -1
  31. data/generated/google/apis/accesscontextmanager_v1/classes.rb +1 -1
  32. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  33. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +1 -73
  34. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +0 -32
  35. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  36. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  37. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +24 -2
  38. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +1 -0
  39. data/generated/google/apis/adexchangebuyer_v1_3.rb +1 -1
  40. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -3
  41. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1 -0
  42. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  43. data/generated/google/apis/admin_datatransfer_v1/classes.rb +5 -5
  44. data/generated/google/apis/admin_datatransfer_v1/service.rb +2 -2
  45. data/generated/google/apis/admin_datatransfer_v1.rb +1 -1
  46. data/generated/google/apis/admin_directory_v1/classes.rb +4 -3
  47. data/generated/google/apis/admin_directory_v1.rb +4 -1
  48. data/generated/google/apis/admin_reports_v1/classes.rb +87 -44
  49. data/generated/google/apis/admin_reports_v1/service.rb +310 -64
  50. data/generated/google/apis/admin_reports_v1.rb +2 -2
  51. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  52. data/generated/google/apis/androidpublisher_v3/classes.rb +105 -0
  53. data/generated/google/apis/androidpublisher_v3/representations.rb +51 -0
  54. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  55. data/generated/google/apis/appengine_v1/service.rb +10 -6
  56. data/generated/google/apis/appengine_v1.rb +1 -1
  57. data/generated/google/apis/appengine_v1beta/service.rb +10 -6
  58. data/generated/google/apis/appengine_v1beta.rb +1 -1
  59. data/generated/google/apis/appsmarket_v2.rb +1 -1
  60. data/generated/google/apis/bigquery_v2/classes.rb +104 -23
  61. data/generated/google/apis/bigquery_v2/representations.rb +37 -0
  62. data/generated/google/apis/bigquery_v2/service.rb +1 -5
  63. data/generated/google/apis/bigquery_v2.rb +1 -1
  64. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -5
  65. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +3 -2
  66. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  67. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +30 -4
  68. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  69. data/generated/google/apis/bigqueryreservation_v1/classes.rb +0 -21
  70. data/generated/google/apis/bigqueryreservation_v1/representations.rb +0 -13
  71. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  72. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +116 -1
  73. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +35 -0
  74. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +71 -0
  75. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  76. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +61 -77
  77. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +16 -17
  78. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +116 -78
  79. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  80. data/generated/google/apis/bigtableadmin_v1/classes.rb +1 -1
  81. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  82. data/generated/google/apis/bigtableadmin_v2/classes.rb +63 -30
  83. data/generated/google/apis/bigtableadmin_v2/service.rb +1 -1
  84. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  85. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +392 -0
  86. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +191 -0
  87. data/generated/google/apis/billingbudgets_v1beta1/service.rb +233 -0
  88. data/generated/google/apis/billingbudgets_v1beta1.rb +35 -0
  89. data/generated/google/apis/binaryauthorization_v1/classes.rb +6 -5
  90. data/generated/google/apis/binaryauthorization_v1/service.rb +2 -0
  91. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  92. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +6 -5
  93. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +2 -0
  94. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  95. data/generated/google/apis/books_v1/classes.rb +20 -0
  96. data/generated/google/apis/books_v1/representations.rb +3 -0
  97. data/generated/google/apis/books_v1.rb +1 -1
  98. data/generated/google/apis/calendar_v3/classes.rb +1 -1
  99. data/generated/google/apis/calendar_v3/service.rb +18 -30
  100. data/generated/google/apis/calendar_v3.rb +1 -1
  101. data/generated/google/apis/civicinfo_v2/classes.rb +0 -156
  102. data/generated/google/apis/civicinfo_v2/representations.rb +2 -60
  103. data/generated/google/apis/civicinfo_v2.rb +1 -1
  104. data/generated/google/apis/cloudasset_v1/classes.rb +89 -55
  105. data/generated/google/apis/cloudasset_v1/service.rb +1 -2
  106. data/generated/google/apis/cloudasset_v1.rb +1 -1
  107. data/generated/google/apis/cloudasset_v1beta1/classes.rb +75 -40
  108. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  109. data/generated/google/apis/cloudbilling_v1/classes.rb +82 -36
  110. data/generated/google/apis/cloudbilling_v1/representations.rb +0 -1
  111. data/generated/google/apis/cloudbilling_v1/service.rb +5 -3
  112. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  113. data/generated/google/apis/cloudbuild_v1/classes.rb +8 -2
  114. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  115. data/generated/google/apis/cloudbuild_v1/service.rb +18 -18
  116. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  117. data/generated/google/apis/clouddebugger_v2/service.rb +14 -14
  118. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  119. data/generated/google/apis/cloudfunctions_v1/classes.rb +13 -5
  120. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  121. data/generated/google/apis/cloudfunctions_v1/service.rb +10 -4
  122. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  123. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +7 -0
  124. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +1 -0
  125. data/generated/google/apis/cloudfunctions_v1beta2/service.rb +10 -4
  126. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  127. data/generated/google/apis/cloudidentity_v1/classes.rb +11 -8
  128. data/generated/google/apis/cloudidentity_v1/service.rb +2 -1
  129. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  130. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +13 -10
  131. data/generated/google/apis/cloudidentity_v1beta1/service.rb +2 -1
  132. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  133. data/generated/google/apis/cloudiot_v1/classes.rb +6 -5
  134. data/generated/google/apis/cloudiot_v1.rb +1 -1
  135. data/generated/google/apis/cloudkms_v1/classes.rb +6 -5
  136. data/generated/google/apis/cloudkms_v1/service.rb +3 -0
  137. data/generated/google/apis/cloudkms_v1.rb +1 -1
  138. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/classes.rb +75 -40
  139. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1.rb +1 -1
  140. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +18 -17
  141. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  142. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +6 -5
  143. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  144. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +10 -13
  145. data/generated/google/apis/cloudresourcemanager_v2/service.rb +11 -13
  146. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  147. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +10 -13
  148. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +11 -13
  149. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  150. data/generated/google/apis/cloudscheduler_v1/classes.rb +2 -1
  151. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  152. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +2 -1
  153. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  154. data/generated/google/apis/cloudsearch_v1/classes.rb +10 -132
  155. data/generated/google/apis/cloudsearch_v1/representations.rb +0 -75
  156. data/generated/google/apis/cloudsearch_v1/service.rb +47 -9
  157. data/generated/google/apis/cloudsearch_v1.rb +8 -8
  158. data/generated/google/apis/cloudshell_v1/classes.rb +24 -1
  159. data/generated/google/apis/cloudshell_v1/representations.rb +3 -0
  160. data/generated/google/apis/cloudshell_v1.rb +1 -1
  161. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +24 -1
  162. data/generated/google/apis/cloudshell_v1alpha1/representations.rb +3 -0
  163. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  164. data/generated/google/apis/cloudtasks_v2/classes.rb +212 -5
  165. data/generated/google/apis/cloudtasks_v2/representations.rb +50 -0
  166. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  167. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +6 -5
  168. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  169. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +6 -5
  170. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  171. data/generated/google/apis/commentanalyzer_v1alpha1/classes.rb +14 -19
  172. data/generated/google/apis/commentanalyzer_v1alpha1.rb +1 -1
  173. data/generated/google/apis/compute_alpha/classes.rb +594 -164
  174. data/generated/google/apis/compute_alpha/representations.rb +110 -2
  175. data/generated/google/apis/compute_alpha/service.rb +1035 -640
  176. data/generated/google/apis/compute_alpha.rb +1 -1
  177. data/generated/google/apis/compute_beta/classes.rb +1070 -276
  178. data/generated/google/apis/compute_beta/representations.rb +284 -0
  179. data/generated/google/apis/compute_beta/service.rb +1242 -532
  180. data/generated/google/apis/compute_beta.rb +1 -1
  181. data/generated/google/apis/compute_v1/classes.rb +335 -133
  182. data/generated/google/apis/compute_v1/representations.rb +24 -0
  183. data/generated/google/apis/compute_v1/service.rb +759 -473
  184. data/generated/google/apis/compute_v1.rb +1 -1
  185. data/generated/google/apis/container_v1/classes.rb +410 -83
  186. data/generated/google/apis/container_v1/representations.rb +134 -0
  187. data/generated/google/apis/container_v1/service.rb +119 -119
  188. data/generated/google/apis/container_v1.rb +1 -1
  189. data/generated/google/apis/container_v1beta1/classes.rb +157 -3
  190. data/generated/google/apis/container_v1beta1/representations.rb +38 -0
  191. data/generated/google/apis/container_v1beta1.rb +1 -1
  192. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +6 -5
  193. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  194. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +6 -5
  195. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  196. data/generated/google/apis/content_v2/classes.rb +35 -223
  197. data/generated/google/apis/content_v2/representations.rb +0 -115
  198. data/generated/google/apis/content_v2/service.rb +0 -160
  199. data/generated/google/apis/content_v2.rb +1 -1
  200. data/generated/google/apis/content_v2_1/classes.rb +69 -21
  201. data/generated/google/apis/content_v2_1/representations.rb +3 -0
  202. data/generated/google/apis/content_v2_1.rb +1 -1
  203. data/generated/google/apis/datacatalog_v1beta1/classes.rb +1646 -0
  204. data/generated/google/apis/datacatalog_v1beta1/representations.rb +700 -0
  205. data/generated/google/apis/datacatalog_v1beta1/service.rb +1982 -0
  206. data/generated/google/apis/{cloudbuild_v1alpha1.rb → datacatalog_v1beta1.rb} +10 -9
  207. data/generated/google/apis/dataflow_v1b3/classes.rb +6 -9
  208. data/generated/google/apis/dataflow_v1b3/representations.rb +1 -1
  209. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  210. data/generated/google/apis/datafusion_v1beta1/classes.rb +156 -46
  211. data/generated/google/apis/datafusion_v1beta1/representations.rb +33 -0
  212. data/generated/google/apis/datafusion_v1beta1/service.rb +10 -1
  213. data/generated/google/apis/datafusion_v1beta1.rb +1 -1
  214. data/generated/google/apis/dataproc_v1/classes.rb +119 -11
  215. data/generated/google/apis/dataproc_v1/representations.rb +39 -0
  216. data/generated/google/apis/dataproc_v1/service.rb +14 -7
  217. data/generated/google/apis/dataproc_v1.rb +1 -1
  218. data/generated/google/apis/dataproc_v1beta2/classes.rb +9 -11
  219. data/generated/google/apis/dataproc_v1beta2/service.rb +26 -19
  220. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  221. data/generated/google/apis/datastore_v1/service.rb +85 -1
  222. data/generated/google/apis/datastore_v1.rb +1 -1
  223. data/generated/google/apis/datastore_v1beta3/service.rb +1 -1
  224. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  225. data/generated/google/apis/dfareporting_v3_3/classes.rb +21 -1
  226. data/generated/google/apis/dfareporting_v3_3/service.rb +6 -6
  227. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  228. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/classes.rb +1215 -797
  229. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/representations.rb +593 -395
  230. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/service.rb +966 -1074
  231. data/generated/google/apis/{dfareporting_v3_2.rb → dfareporting_v3_4.rb} +6 -6
  232. data/generated/google/apis/dialogflow_v2/classes.rb +509 -8
  233. data/generated/google/apis/dialogflow_v2/representations.rb +222 -0
  234. data/generated/google/apis/dialogflow_v2.rb +1 -1
  235. data/generated/google/apis/dialogflow_v2beta1/classes.rb +530 -8
  236. data/generated/google/apis/dialogflow_v2beta1/representations.rb +224 -0
  237. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  238. data/generated/google/apis/dlp_v2/classes.rb +109 -33
  239. data/generated/google/apis/dlp_v2/representations.rb +23 -3
  240. data/generated/google/apis/dlp_v2/service.rb +1996 -209
  241. data/generated/google/apis/dlp_v2.rb +1 -1
  242. data/generated/google/apis/dns_v1beta2/classes.rb +47 -0
  243. data/generated/google/apis/dns_v1beta2/representations.rb +17 -0
  244. data/generated/google/apis/dns_v1beta2.rb +1 -1
  245. data/generated/google/apis/docs_v1/classes.rb +175 -0
  246. data/generated/google/apis/docs_v1/representations.rb +77 -0
  247. data/generated/google/apis/docs_v1.rb +1 -1
  248. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  249. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +826 -0
  250. data/generated/google/apis/doubleclickbidmanager_v1_1/representations.rb +372 -0
  251. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +371 -0
  252. data/generated/google/apis/{urlshortener_v1.rb → doubleclickbidmanager_v1_1.rb} +11 -11
  253. data/generated/google/apis/drive_v2/classes.rb +2 -1
  254. data/generated/google/apis/drive_v2/service.rb +3 -3
  255. data/generated/google/apis/drive_v2.rb +1 -1
  256. data/generated/google/apis/drive_v3/classes.rb +12 -3
  257. data/generated/google/apis/drive_v3.rb +1 -1
  258. data/generated/google/apis/fcm_v1/classes.rb +15 -0
  259. data/generated/google/apis/fcm_v1/representations.rb +2 -0
  260. data/generated/google/apis/fcm_v1.rb +1 -1
  261. data/generated/google/apis/firebase_v1beta1/classes.rb +18 -4
  262. data/generated/google/apis/firebase_v1beta1/representations.rb +2 -0
  263. data/generated/google/apis/firebase_v1beta1/service.rb +6 -6
  264. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  265. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +62 -0
  266. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +31 -0
  267. data/generated/google/apis/firebasehosting_v1beta1/service.rb +47 -0
  268. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  269. data/generated/google/apis/firebaserules_v1/classes.rb +26 -0
  270. data/generated/google/apis/firebaserules_v1/representations.rb +15 -0
  271. data/generated/google/apis/firebaserules_v1.rb +1 -1
  272. data/generated/google/apis/firestore_v1.rb +1 -1
  273. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  274. data/generated/google/apis/fitness_v1/service.rb +1 -1
  275. data/generated/google/apis/fitness_v1.rb +1 -1
  276. data/generated/google/apis/games_management_v1management/classes.rb +6 -26
  277. data/generated/google/apis/games_management_v1management/representations.rb +1 -14
  278. data/generated/google/apis/games_management_v1management/service.rb +0 -158
  279. data/generated/google/apis/games_management_v1management.rb +1 -1
  280. data/generated/google/apis/games_v1/classes.rb +6 -292
  281. data/generated/google/apis/games_v1/representations.rb +1 -98
  282. data/generated/google/apis/games_v1/service.rb +0 -123
  283. data/generated/google/apis/games_v1.rb +1 -1
  284. data/generated/google/apis/genomics_v2alpha1/classes.rb +32 -0
  285. data/generated/google/apis/genomics_v2alpha1/representations.rb +16 -0
  286. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  287. data/generated/google/apis/healthcare_v1beta1/classes.rb +213 -16
  288. data/generated/google/apis/healthcare_v1beta1/representations.rb +101 -0
  289. data/generated/google/apis/healthcare_v1beta1/service.rb +207 -116
  290. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  291. data/generated/google/apis/homegraph_v1/classes.rb +15 -1
  292. data/generated/google/apis/homegraph_v1/representations.rb +2 -1
  293. data/generated/google/apis/homegraph_v1.rb +1 -1
  294. data/generated/google/apis/iam_v1/classes.rb +15 -7
  295. data/generated/google/apis/iam_v1/representations.rb +1 -0
  296. data/generated/google/apis/iam_v1.rb +1 -1
  297. data/generated/google/apis/iap_v1/classes.rb +187 -2
  298. data/generated/google/apis/iap_v1/representations.rb +102 -0
  299. data/generated/google/apis/iap_v1/service.rb +72 -0
  300. data/generated/google/apis/iap_v1.rb +1 -1
  301. data/generated/google/apis/iap_v1beta1/classes.rb +2 -2
  302. data/generated/google/apis/iap_v1beta1.rb +1 -1
  303. data/generated/google/apis/jobs_v2/classes.rb +167 -0
  304. data/generated/google/apis/jobs_v2/representations.rb +40 -0
  305. data/generated/google/apis/jobs_v2.rb +1 -1
  306. data/generated/google/apis/jobs_v3/classes.rb +179 -0
  307. data/generated/google/apis/jobs_v3/representations.rb +41 -0
  308. data/generated/google/apis/jobs_v3.rb +1 -1
  309. data/generated/google/apis/jobs_v3p1beta1/classes.rb +179 -0
  310. data/generated/google/apis/jobs_v3p1beta1/representations.rb +41 -0
  311. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  312. data/generated/google/apis/licensing_v1/classes.rb +15 -7
  313. data/generated/google/apis/licensing_v1/service.rb +81 -37
  314. data/generated/google/apis/licensing_v1.rb +4 -4
  315. data/generated/google/apis/lifesciences_v2beta/classes.rb +1329 -0
  316. data/generated/google/apis/lifesciences_v2beta/representations.rb +533 -0
  317. data/generated/google/apis/lifesciences_v2beta/service.rb +303 -0
  318. data/generated/google/apis/lifesciences_v2beta.rb +35 -0
  319. data/generated/google/apis/logging_v2/classes.rb +30 -2
  320. data/generated/google/apis/logging_v2/representations.rb +4 -0
  321. data/generated/google/apis/logging_v2/service.rb +10 -5
  322. data/generated/google/apis/logging_v2.rb +1 -1
  323. data/generated/google/apis/ml_v1/classes.rb +308 -155
  324. data/generated/google/apis/ml_v1/representations.rb +59 -0
  325. data/generated/google/apis/ml_v1/service.rb +44 -3
  326. data/generated/google/apis/ml_v1.rb +2 -2
  327. data/generated/google/apis/monitoring_v1/classes.rb +1153 -0
  328. data/generated/google/apis/monitoring_v1/representations.rb +528 -0
  329. data/generated/google/apis/{cloudbuild_v1alpha1 → monitoring_v1}/service.rb +86 -63
  330. data/generated/google/apis/monitoring_v1.rb +48 -0
  331. data/generated/google/apis/monitoring_v3/classes.rb +836 -60
  332. data/generated/google/apis/monitoring_v3/representations.rb +348 -0
  333. data/generated/google/apis/monitoring_v3/service.rb +384 -2
  334. data/generated/google/apis/monitoring_v3.rb +1 -1
  335. data/generated/google/apis/oslogin_v1/classes.rb +1 -1
  336. data/generated/google/apis/oslogin_v1/service.rb +10 -6
  337. data/generated/google/apis/oslogin_v1.rb +1 -1
  338. data/generated/google/apis/oslogin_v1beta/classes.rb +1 -1
  339. data/generated/google/apis/oslogin_v1beta/service.rb +9 -5
  340. data/generated/google/apis/oslogin_v1beta.rb +1 -1
  341. data/generated/google/apis/pagespeedonline_v5/classes.rb +8 -0
  342. data/generated/google/apis/pagespeedonline_v5/representations.rb +1 -0
  343. data/generated/google/apis/pagespeedonline_v5.rb +1 -1
  344. data/generated/google/apis/people_v1/classes.rb +67 -63
  345. data/generated/google/apis/people_v1/service.rb +53 -44
  346. data/generated/google/apis/people_v1.rb +1 -1
  347. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +168 -90
  348. data/generated/google/apis/policytroubleshooter_v1beta/service.rb +2 -3
  349. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  350. data/generated/google/apis/pubsub_v1/classes.rb +8 -6
  351. data/generated/google/apis/pubsub_v1/service.rb +9 -7
  352. data/generated/google/apis/pubsub_v1.rb +1 -1
  353. data/generated/google/apis/pubsub_v1beta2/classes.rb +6 -5
  354. data/generated/google/apis/pubsub_v1beta2/service.rb +2 -0
  355. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  356. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  357. data/generated/google/apis/recommender_v1beta1/service.rb +10 -8
  358. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  359. data/generated/google/apis/redis_v1/classes.rb +11 -11
  360. data/generated/google/apis/redis_v1/service.rb +5 -5
  361. data/generated/google/apis/redis_v1.rb +1 -1
  362. data/generated/google/apis/redis_v1beta1/classes.rb +11 -11
  363. data/generated/google/apis/redis_v1beta1/service.rb +5 -5
  364. data/generated/google/apis/redis_v1beta1.rb +1 -1
  365. data/generated/google/apis/remotebuildexecution_v1/classes.rb +113 -0
  366. data/generated/google/apis/remotebuildexecution_v1/representations.rb +50 -0
  367. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  368. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +113 -0
  369. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +50 -0
  370. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  371. data/generated/google/apis/remotebuildexecution_v2/classes.rb +113 -0
  372. data/generated/google/apis/remotebuildexecution_v2/representations.rb +50 -0
  373. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  374. data/generated/google/apis/reseller_v1/service.rb +1 -1
  375. data/generated/google/apis/reseller_v1.rb +1 -1
  376. data/generated/google/apis/run_v1/classes.rb +8 -176
  377. data/generated/google/apis/run_v1/representations.rb +0 -71
  378. data/generated/google/apis/run_v1/service.rb +209 -1125
  379. data/generated/google/apis/run_v1.rb +1 -1
  380. data/generated/google/apis/run_v1alpha1/classes.rb +328 -9
  381. data/generated/google/apis/run_v1alpha1/representations.rb +126 -0
  382. data/generated/google/apis/run_v1alpha1/service.rb +408 -0
  383. data/generated/google/apis/run_v1alpha1.rb +1 -1
  384. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +75 -40
  385. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  386. data/generated/google/apis/securitycenter_v1/classes.rb +159 -66
  387. data/generated/google/apis/securitycenter_v1/representations.rb +19 -0
  388. data/generated/google/apis/securitycenter_v1/service.rb +14 -12
  389. data/generated/google/apis/securitycenter_v1.rb +1 -1
  390. data/generated/google/apis/securitycenter_v1beta1/classes.rb +95 -57
  391. data/generated/google/apis/securitycenter_v1beta1/service.rb +14 -12
  392. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  393. data/generated/google/apis/servicebroker_v1/classes.rb +75 -40
  394. data/generated/google/apis/servicebroker_v1.rb +1 -1
  395. data/generated/google/apis/servicebroker_v1alpha1/classes.rb +75 -40
  396. data/generated/google/apis/servicebroker_v1alpha1.rb +1 -1
  397. data/generated/google/apis/servicebroker_v1beta1/classes.rb +75 -40
  398. data/generated/google/apis/servicebroker_v1beta1.rb +1 -1
  399. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +95 -43
  400. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +30 -0
  401. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  402. data/generated/google/apis/servicecontrol_v1/classes.rb +8 -12
  403. data/generated/google/apis/servicecontrol_v1/representations.rb +1 -1
  404. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  405. data/generated/google/apis/servicemanagement_v1/classes.rb +142 -91
  406. data/generated/google/apis/servicemanagement_v1/representations.rb +24 -0
  407. data/generated/google/apis/servicemanagement_v1/service.rb +32 -26
  408. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  409. data/generated/google/apis/servicenetworking_v1/classes.rb +181 -54
  410. data/generated/google/apis/servicenetworking_v1/representations.rb +71 -0
  411. data/generated/google/apis/servicenetworking_v1/service.rb +77 -3
  412. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  413. data/generated/google/apis/servicenetworking_v1beta/classes.rb +32 -43
  414. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  415. data/generated/google/apis/serviceusage_v1/classes.rb +87 -43
  416. data/generated/google/apis/serviceusage_v1/representations.rb +29 -0
  417. data/generated/google/apis/serviceusage_v1.rb +1 -1
  418. data/generated/google/apis/serviceusage_v1beta1/classes.rb +87 -43
  419. data/generated/google/apis/serviceusage_v1beta1/representations.rb +29 -0
  420. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  421. data/generated/google/apis/sheets_v4/classes.rb +1371 -232
  422. data/generated/google/apis/sheets_v4/representations.rb +180 -0
  423. data/generated/google/apis/sheets_v4.rb +1 -1
  424. data/generated/google/apis/spanner_v1/classes.rb +70 -30
  425. data/generated/google/apis/spanner_v1/service.rb +270 -0
  426. data/generated/google/apis/spanner_v1.rb +1 -1
  427. data/generated/google/apis/speech_v1/classes.rb +6 -0
  428. data/generated/google/apis/speech_v1/representations.rb +1 -0
  429. data/generated/google/apis/speech_v1.rb +1 -1
  430. data/generated/google/apis/speech_v1p1beta1/classes.rb +6 -0
  431. data/generated/google/apis/speech_v1p1beta1/representations.rb +1 -0
  432. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  433. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/classes.rb +9 -8
  434. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/representations.rb +6 -6
  435. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/service.rb +13 -13
  436. data/generated/google/apis/{speech_v2beta.rb → speech_v2beta1.rb} +6 -6
  437. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/classes.rb +499 -380
  438. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/representations.rb +125 -104
  439. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/service.rb +637 -590
  440. data/generated/google/apis/{sqladmin_v1beta4.rb → sql_v1beta4.rb} +7 -8
  441. data/generated/google/apis/storage_v1.rb +1 -1
  442. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  443. data/generated/google/apis/streetviewpublish_v1/classes.rb +1 -1
  444. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  445. data/generated/google/apis/testing_v1/classes.rb +142 -1
  446. data/generated/google/apis/testing_v1/representations.rb +76 -0
  447. data/generated/google/apis/testing_v1.rb +1 -1
  448. data/generated/google/apis/videointelligence_v1/classes.rb +147 -36
  449. data/generated/google/apis/videointelligence_v1/representations.rb +62 -0
  450. data/generated/google/apis/videointelligence_v1.rb +1 -1
  451. data/generated/google/apis/videointelligence_v1beta2/classes.rb +147 -36
  452. data/generated/google/apis/videointelligence_v1beta2/representations.rb +62 -0
  453. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  454. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +147 -36
  455. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +62 -0
  456. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  457. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +147 -36
  458. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +62 -0
  459. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  460. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +147 -36
  461. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +62 -0
  462. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  463. data/generated/google/apis/vision_v1/classes.rb +66 -0
  464. data/generated/google/apis/vision_v1/representations.rb +32 -0
  465. data/generated/google/apis/vision_v1.rb +1 -1
  466. data/generated/google/apis/vision_v1p1beta1/classes.rb +66 -0
  467. data/generated/google/apis/vision_v1p1beta1/representations.rb +32 -0
  468. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  469. data/generated/google/apis/vision_v1p2beta1/classes.rb +66 -0
  470. data/generated/google/apis/vision_v1p2beta1/representations.rb +32 -0
  471. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  472. data/generated/google/apis/youtube_partner_v1/service.rb +2 -2
  473. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  474. data/google-api-client.gemspec +6 -3
  475. data/lib/google/apis/core/api_command.rb +3 -0
  476. data/lib/google/apis/core/http_command.rb +10 -8
  477. data/lib/google/apis/core/upload.rb +4 -0
  478. data/lib/google/apis/version.rb +1 -1
  479. data/rakelib/devsite/devsite_builder.rb +126 -0
  480. data/rakelib/devsite/link_checker.rb +64 -0
  481. data/rakelib/devsite/repo_metadata.rb +56 -0
  482. metadata +64 -42
  483. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +0 -1168
  484. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +0 -434
  485. data/generated/google/apis/storage_v1beta1/classes.rb +0 -616
  486. data/generated/google/apis/storage_v1beta1/representations.rb +0 -249
  487. data/generated/google/apis/storage_v1beta1/service.rb +0 -1032
  488. data/generated/google/apis/storage_v1beta1.rb +0 -40
  489. data/generated/google/apis/urlshortener_v1/classes.rb +0 -246
  490. data/generated/google/apis/urlshortener_v1/representations.rb +0 -121
  491. data/generated/google/apis/urlshortener_v1/service.rb +0 -169
@@ -1166,7 +1166,7 @@ module Google
1166
1166
  # @return [Fixnum]
1167
1167
  attr_accessor :count
1168
1168
 
1169
- # [OutputOnly] Indicates how many instances are in use.
1169
+ # [Output Only] Indicates how many instances are in use.
1170
1170
  # Corresponds to the JSON property `inUseCount`
1171
1171
  # @return [Fixnum]
1172
1172
  attr_accessor :in_use_count
@@ -1393,6 +1393,12 @@ module Google
1393
1393
  # @return [Hash<String,String>]
1394
1394
  attr_accessor :labels
1395
1395
 
1396
+ # Specifies which action to take on instance update with this disk. Default is
1397
+ # to use the existing disk.
1398
+ # Corresponds to the JSON property `onUpdateAction`
1399
+ # @return [String]
1400
+ attr_accessor :on_update_action
1401
+
1396
1402
  # URLs of the zones where the disk should be replicated to. Only applicable for
1397
1403
  # regional resources.
1398
1404
  # Corresponds to the JSON property `replicaZones`
@@ -1460,6 +1466,7 @@ module Google
1460
1466
  @disk_type = args[:disk_type] if args.key?(:disk_type)
1461
1467
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
1462
1468
  @labels = args[:labels] if args.key?(:labels)
1469
+ @on_update_action = args[:on_update_action] if args.key?(:on_update_action)
1463
1470
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
1464
1471
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
1465
1472
  @source_image = args[:source_image] if args.key?(:source_image)
@@ -1719,7 +1726,13 @@ module Google
1719
1726
  # @return [String]
1720
1727
  attr_accessor :self_link_with_id
1721
1728
 
1722
- # [Output Only] The status of the autoscaler configuration.
1729
+ # [Output Only] The status of the autoscaler configuration. Current set of
1730
+ # possible values: PENDING: Autoscaler backend hasn't read new/updated
1731
+ # configuration DELETING: Configuration is being deleted ACTIVE: Configuration
1732
+ # is acknowledged to be effective. Some warnings might or might not be present
1733
+ # in the status_details field. ERROR: Configuration has errors. Actionable for
1734
+ # users. Details are present in the status_details field. New values might be
1735
+ # added in the future.
1723
1736
  # Corresponds to the JSON property `status`
1724
1737
  # @return [String]
1725
1738
  attr_accessor :status
@@ -2010,7 +2023,38 @@ module Google
2010
2023
  # @return [String]
2011
2024
  attr_accessor :message
2012
2025
 
2013
- # The type of error returned.
2026
+ # The type of error, warning or notice returned. Current set of possible values:
2027
+ # ALL_INSTANCES_UNHEALTHY (WARNING): All instances in the instance group are
2028
+ # unhealthy (not in RUNNING state). BACKEND_SERVICE_DOES_NOT_EXIST (ERROR):
2029
+ # There is no backend service attached to the instance group.
2030
+ # CAPPED_AT_MAX_NUM_REPLICAS (WARNING): Autoscaler recommends size bigger than
2031
+ # maxNumReplicas. CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): The custom
2032
+ # metric samples are not exported often enough to be a credible base for
2033
+ # autoscaling. CUSTOM_METRIC_INVALID (ERROR): The custom metric that was
2034
+ # specified does not exist or does not have the necessary labels. MIN_EQUALS_MAX
2035
+ # (WARNING): The minNumReplicas is equal to maxNumReplicas. This means the
2036
+ # autoscaler cannot add or remove instances from the instance group.
2037
+ # MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): The autoscaler did not receive
2038
+ # any data from the custom metric configured for autoscaling.
2039
+ # MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): The autoscaler is configured to
2040
+ # scale based on a load balancing signal but the instance group has not received
2041
+ # any requests from the load balancer. MODE_OFF (WARNING): Autoscaling is turned
2042
+ # off. The number of instances in the group won't change automatically. The
2043
+ # autoscaling configuration is preserved. MODE_ONLY_UP (WARNING): Autoscaling is
2044
+ # in the "Autoscale only up" mode. Instances in the group will be only added.
2045
+ # MORE_THAN_ONE_BACKEND_SERVICE (ERROR): The instance group cannot be autoscaled
2046
+ # because it has more than one backend service attached to it.
2047
+ # NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): Exceeded quota for necessary resources,
2048
+ # such as CPU, number of instances and so on. REGION_RESOURCE_STOCKOUT (ERROR):
2049
+ # Showed only for regional autoscalers: there is a resource stockout in the
2050
+ # chosen region. SCALING_TARGET_DOES_NOT_EXIST (ERROR): The target to be scaled
2051
+ # does not exist. UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION (ERROR):
2052
+ # Autoscaling does not work with an HTTP/S load balancer that has been
2053
+ # configured for maxRate. ZONE_RESOURCE_STOCKOUT (ERROR): For zonal autoscalers:
2054
+ # there is a resource stockout in the chosen zone. For regional autoscalers: in
2055
+ # at least one of the zones you're using there is a resource stockout. New
2056
+ # values might be added in the future. Some of the values might not be available
2057
+ # in all API versions.
2014
2058
  # Corresponds to the JSON property `type`
2015
2059
  # @return [String]
2016
2060
  attr_accessor :type
@@ -2836,16 +2880,10 @@ module Google
2836
2880
  end
2837
2881
 
2838
2882
  # Represents a Backend Service resource.
2839
- # Backend services must have an associated health check. Backend services also
2840
- # store information about session affinity. For more information, read Backend
2841
- # Services.
2842
- # A backendServices resource represents a global backend service. Global backend
2843
- # services are used for HTTP(S), SSL Proxy, TCP Proxy load balancing and Traffic
2844
- # Director.
2845
- # A regionBackendServices resource represents a regional backend service.
2846
- # Regional backend services are used for internal TCP/UDP load balancing. For
2847
- # more information, read Internal TCP/UDP Load balancing. (== resource_for v1.
2848
- # backendService ==) (== resource_for beta.backendService ==)
2883
+ # A backend service contains configuration values for Google Cloud Platform load
2884
+ # balancing services.
2885
+ # For more information, read Backend Services.
2886
+ # (== resource_for v1.backendService ==) (== resource_for beta.backendService ==)
2849
2887
  class BackendService
2850
2888
  include Google::Apis::Core::Hashable
2851
2889
 
@@ -2949,9 +2987,12 @@ module Google
2949
2987
  # @return [String]
2950
2988
  attr_accessor :kind
2951
2989
 
2952
- # Indicates whether the backend service will be used with internal or external
2953
- # load balancing. A backend service created for one type of load balancing
2954
- # cannot be used with the other. Possible values are INTERNAL and EXTERNAL.
2990
+ # Specifies the load balancer type. Choose EXTERNAL for load balancers that
2991
+ # receive traffic from external clients. Choose INTERNAL for Internal TCP/UDP
2992
+ # Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load Balancing.
2993
+ # Choose INTERNAL_SELF_MANAGED for Traffic Director. A backend service created
2994
+ # for one type of load balancing cannot be used with another. For more
2995
+ # information, refer to Choosing a load balancer.
2955
2996
  # Corresponds to the JSON property `loadBalancingScheme`
2956
2997
  # @return [String]
2957
2998
  attr_accessor :load_balancing_scheme
@@ -3005,7 +3046,8 @@ module Google
3005
3046
  # @return [String]
3006
3047
  attr_accessor :network
3007
3048
 
3008
- # Settings controlling eviction of unhealthy hosts from the load balancing pool.
3049
+ # Settings controlling the eviction of unhealthy hosts from the load balancing
3050
+ # pool for the backend service.
3009
3051
  # Corresponds to the JSON property `outlierDetection`
3010
3052
  # @return [Google::Apis::ComputeAlpha::OutlierDetection]
3011
3053
  attr_accessor :outlier_detection
@@ -3030,9 +3072,10 @@ module Google
3030
3072
  attr_accessor :port_name
3031
3073
 
3032
3074
  # The protocol this BackendService uses to communicate with backends.
3033
- # Possible values are HTTP, HTTPS, TCP, SSL, or UDP, depending on the chosen
3034
- # load balancer or Traffic Director configuration. Refer to the documentation
3035
- # for the load balancer or for Traffic director for more information.
3075
+ # Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, or UDP, depending on the
3076
+ # chosen load balancer or Traffic Director configuration. Refer to the
3077
+ # documentation for the load balancer or for Traffic Director for more
3078
+ # information.
3036
3079
  # Corresponds to the JSON property `protocol`
3037
3080
  # @return [String]
3038
3081
  attr_accessor :protocol
@@ -4103,11 +4146,10 @@ module Google
4103
4146
  include Google::Apis::Core::Hashable
4104
4147
 
4105
4148
  # The type of call credentials to use for GRPC requests to the SDS server. This
4106
- # field can be set to one of the following: ACCESS_TOKEN: An access token is
4107
- # used as call credentials for the SDS server. GCE_VM: The local GCE VM service
4108
- # account credentials are used to access the SDS server. JWT_SERVICE_TOKEN: The
4109
- # user provisioned service account credentials are used to access the SDS server.
4110
- # FROM_PLUGIN: Custom authenticator credentials are used to access the SDS
4149
+ # field can be set to one of the following:
4150
+ # - GCE_VM: The local GCE VM service account credentials are used to access the
4151
+ # SDS server.
4152
+ # - FROM_PLUGIN: Custom authenticator credentials are used to access the SDS
4111
4153
  # server.
4112
4154
  # Corresponds to the JSON property `callCredentialType`
4113
4155
  # @return [String]
@@ -4168,33 +4210,34 @@ module Google
4168
4210
  # @return [Google::Apis::ComputeAlpha::Duration]
4169
4211
  attr_accessor :connect_timeout
4170
4212
 
4171
- # The maximum number of connections to the backend cluster. If not specified,
4172
- # the default is 1024.
4213
+ # The maximum number of connections to the backend service. If not specified,
4214
+ # there is no limit.
4173
4215
  # Corresponds to the JSON property `maxConnections`
4174
4216
  # @return [Fixnum]
4175
4217
  attr_accessor :max_connections
4176
4218
 
4177
- # The maximum number of pending requests allowed to the backend cluster. If not
4178
- # specified, the default is 1024.
4219
+ # The maximum number of pending requests allowed to the backend service. If not
4220
+ # specified, there is no limit.
4179
4221
  # Corresponds to the JSON property `maxPendingRequests`
4180
4222
  # @return [Fixnum]
4181
4223
  attr_accessor :max_pending_requests
4182
4224
 
4183
- # The maximum number of parallel requests that allowed to the backend cluster.
4184
- # If not specified, the default is 1024.
4225
+ # The maximum number of parallel requests that allowed to the backend service.
4226
+ # If not specified, there is no limit.
4185
4227
  # Corresponds to the JSON property `maxRequests`
4186
4228
  # @return [Fixnum]
4187
4229
  attr_accessor :max_requests
4188
4230
 
4189
- # Maximum requests for a single backend connection. This parameter is respected
4190
- # by both the HTTP/1.1 and HTTP/2 implementations. If not specified, there is no
4191
- # limit. Setting this parameter to 1 will effectively disable keep alive.
4231
+ # Maximum requests for a single connection to the backend service. This
4232
+ # parameter is respected by both the HTTP/1.1 and HTTP/2 implementations. If not
4233
+ # specified, there is no limit. Setting this parameter to 1 will effectively
4234
+ # disable keep alive.
4192
4235
  # Corresponds to the JSON property `maxRequestsPerConnection`
4193
4236
  # @return [Fixnum]
4194
4237
  attr_accessor :max_requests_per_connection
4195
4238
 
4196
4239
  # The maximum number of parallel retries allowed to the backend cluster. If not
4197
- # specified, the default is 3.
4240
+ # specified, the default is 1.
4198
4241
  # Corresponds to the JSON property `maxRetries`
4199
4242
  # @return [Fixnum]
4200
4243
  attr_accessor :max_retries
@@ -4270,6 +4313,15 @@ module Google
4270
4313
  class Commitment
4271
4314
  include Google::Apis::Core::Hashable
4272
4315
 
4316
+ # The category of the commitment. Category MACHINE specifies commitments
4317
+ # composed of machine resources such as VCPU or MEMORY, listed in resources.
4318
+ # Category LICENSE specifies commitments composed of software licenses, listed
4319
+ # in licenseResources. Note that only MACHINE commitments should have a Type
4320
+ # specified.
4321
+ # Corresponds to the JSON property `category`
4322
+ # @return [String]
4323
+ attr_accessor :category
4324
+
4273
4325
  # [Output Only] Creation timestamp in RFC3339 text format.
4274
4326
  # Corresponds to the JSON property `creationTimestamp`
4275
4327
  # @return [String]
@@ -4297,6 +4349,11 @@ module Google
4297
4349
  # @return [String]
4298
4350
  attr_accessor :kind
4299
4351
 
4352
+ # A list of commitment amounts for particular licenses.
4353
+ # Corresponds to the JSON property `licenseResources`
4354
+ # @return [Array<Google::Apis::ComputeAlpha::LicenseResourceCommitment>]
4355
+ attr_accessor :license_resources
4356
+
4300
4357
  # Name of the resource. Provided by the client when the resource is created. The
4301
4358
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
4302
4359
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -4370,11 +4427,13 @@ module Google
4370
4427
 
4371
4428
  # Update properties of this object
4372
4429
  def update!(**args)
4430
+ @category = args[:category] if args.key?(:category)
4373
4431
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
4374
4432
  @description = args[:description] if args.key?(:description)
4375
4433
  @end_timestamp = args[:end_timestamp] if args.key?(:end_timestamp)
4376
4434
  @id = args[:id] if args.key?(:id)
4377
4435
  @kind = args[:kind] if args.key?(:kind)
4436
+ @license_resources = args[:license_resources] if args.key?(:license_resources)
4378
4437
  @name = args[:name] if args.key?(:name)
4379
4438
  @plan = args[:plan] if args.key?(:plan)
4380
4439
  @region = args[:region] if args.key?(:region)
@@ -4760,6 +4819,26 @@ module Google
4760
4819
  end
4761
4820
  end
4762
4821
 
4822
+ # A set of Confidential Instance options.
4823
+ class ConfidentialInstanceConfig
4824
+ include Google::Apis::Core::Hashable
4825
+
4826
+ # Defines whether the instance should have confidential compute enabled.
4827
+ # Corresponds to the JSON property `enableConfidentialCompute`
4828
+ # @return [Boolean]
4829
+ attr_accessor :enable_confidential_compute
4830
+ alias_method :enable_confidential_compute?, :enable_confidential_compute
4831
+
4832
+ def initialize(**args)
4833
+ update!(**args)
4834
+ end
4835
+
4836
+ # Update properties of this object
4837
+ def update!(**args)
4838
+ @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute)
4839
+ end
4840
+ end
4841
+
4763
4842
  # Message containing connection draining configuration.
4764
4843
  class ConnectionDraining
4765
4844
  include Google::Apis::Core::Hashable
@@ -4934,7 +5013,8 @@ module Google
4934
5013
  # @return [String]
4935
5014
  attr_accessor :kms_key_name
4936
5015
 
4937
- #
5016
+ # The service account being used for the encryption request for the given KMS
5017
+ # key. If absent, default GCE compute robot account will be used
4938
5018
  # Corresponds to the JSON property `kmsKeyServiceAccount`
4939
5019
  # @return [String]
4940
5020
  attr_accessor :kms_key_service_account
@@ -6121,7 +6201,8 @@ module Google
6121
6201
  class DisksAddResourcePoliciesRequest
6122
6202
  include Google::Apis::Core::Hashable
6123
6203
 
6124
- # Resource policies to be added to this disk.
6204
+ # Resource policies to be added to this disk. Currently you can only specify one
6205
+ # policy here.
6125
6206
  # Corresponds to the JSON property `resourcePolicies`
6126
6207
  # @return [Array<String>]
6127
6208
  attr_accessor :resource_policies
@@ -7302,27 +7383,12 @@ module Google
7302
7383
  end
7303
7384
 
7304
7385
  # Represents a Forwarding Rule resource.
7305
- # A forwardingRules resource represents a regional forwarding rule.
7306
- # Regional external forwarding rules can reference any of the following
7307
- # resources:
7308
- #
7309
- # - A target instance
7310
- # - A Cloud VPN Classic gateway (targetVpnGateway),
7311
- # - A target pool for a Network Load Balancer
7312
- # - A global target HTTP(S) proxy for an HTTP(S) load balancer using Standard
7313
- # Tier
7314
- # - A target SSL proxy for a SSL Proxy load balancer using Standard Tier
7315
- # - A target TCP proxy for a TCP Proxy load balancer using Standard Tier.
7316
- # Regional internal forwarding rules can reference the backend service of an
7317
- # internal TCP/UDP load balancer.
7318
- # For regional internal forwarding rules, the following applies:
7319
- # - If the loadBalancingScheme for the load balancer is INTERNAL, then the
7320
- # forwarding rule references a regional internal backend service.
7321
- # - If the loadBalancingScheme for the load balancer is INTERNAL_MANAGED, then
7322
- # the forwarding rule must reference a regional target HTTP(S) proxy.
7323
- # For more information, read Using Forwarding rules.
7324
- # A globalForwardingRules resource represents a global forwarding rule.
7325
- # Global forwarding rules are only used by load balancers that use Premium Tier.
7386
+ # A forwarding rule and its corresponding IP address represent the frontend
7387
+ # configuration of a Google Cloud Platform load balancer. Forwarding rules can
7388
+ # also reference target instances and Cloud VPN Classic gateways (
7389
+ # targetVpnGateway).
7390
+ # For more information, read Forwarding rule concepts and Using protocol
7391
+ # forwarding.
7326
7392
  # (== resource_for beta.forwardingRules ==) (== resource_for v1.forwardingRules =
7327
7393
  # =) (== resource_for beta.globalForwardingRules ==) (== resource_for v1.
7328
7394
  # globalForwardingRules ==) (== resource_for beta.regionForwardingRules ==) (==
@@ -7350,8 +7416,14 @@ module Google
7350
7416
 
7351
7417
  # The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP,
7352
7418
  # AH, SCTP or ICMP.
7353
- # When the load balancing scheme is INTERNAL, only TCP and UDP are valid. When
7354
- # the load balancing scheme is INTERNAL_SELF_MANAGED, only TCPis valid.
7419
+ # For Internal TCP/UDP Load Balancing, the load balancing scheme is INTERNAL,
7420
+ # and one of TCP or UDP are valid. For Traffic Director, the load balancing
7421
+ # scheme is INTERNAL_SELF_MANAGED, and only TCPis valid. For Internal HTTP(S)
7422
+ # Load Balancing, the load balancing scheme is INTERNAL_MANAGED, and only TCP is
7423
+ # valid. For HTTP(S), SSL Proxy, and TCP Proxy Load Balancing, the load
7424
+ # balancing scheme is EXTERNAL and only TCP is valid. For Network TCP/UDP Load
7425
+ # Balancing, the load balancing scheme is EXTERNAL, and one of TCP or UDP is
7426
+ # valid.
7355
7427
  # Corresponds to the JSON property `IPProtocol`
7356
7428
  # @return [String]
7357
7429
  attr_accessor :ip_protocol
@@ -7455,12 +7527,14 @@ module Google
7455
7527
  # @return [Hash<String,String>]
7456
7528
  attr_accessor :labels
7457
7529
 
7458
- # This signifies what the ForwardingRule will be used for and can only take the
7459
- # following values: INTERNAL, INTERNAL_SELF_MANAGED, EXTERNAL. The value of
7460
- # INTERNAL means that this will be used for Internal Network Load Balancing (TCP,
7461
- # UDP). The value of INTERNAL_SELF_MANAGED means that this will be used for
7462
- # Internal Global HTTP(S) LB. The value of EXTERNAL means that this will be used
7463
- # for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)
7530
+ # Specifies the forwarding rule type. EXTERNAL is used for: - Classic Cloud VPN
7531
+ # gateways - Protocol forwarding to VMs from an external IP address - The
7532
+ # following load balancers: HTTP(S), SSL Proxy, TCP Proxy, and Network TCP/UDP.
7533
+ # INTERNAL is used for: - Protocol forwarding to VMs from an internal IP address
7534
+ # - Internal TCP/UDP load balancers
7535
+ # INTERNAL_MANAGED is used for: - Internal HTTP(S) load balancers
7536
+ # INTERNAL_SELF_MANAGED is used for: - Traffic Director
7537
+ # For more information about forwarding rules, refer to Forwarding rule concepts.
7464
7538
  # Corresponds to the JSON property `loadBalancingScheme`
7465
7539
  # @return [String]
7466
7540
  attr_accessor :load_balancing_scheme
@@ -8081,19 +8155,28 @@ module Google
8081
8155
 
8082
8156
  # Defines an Identity and Access Management (IAM) policy. It is used to specify
8083
8157
  # access control policies for Cloud Platform resources.
8084
- # A `Policy` consists of a list of `bindings`. A `binding` binds a list of `
8085
- # members` to a `role`, where the members can be user accounts, Google groups,
8086
- # Google domains, and service accounts. A `role` is a named list of permissions
8087
- # defined by IAM.
8158
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
8159
+ # members` to a single `role`. Members can be user accounts, service accounts,
8160
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
8161
+ # permissions (defined by IAM or configured by users). A `binding` can
8162
+ # optionally specify a `condition`, which is a logic expression that further
8163
+ # constrains the role binding based on attributes about the request and/or
8164
+ # target resource.
8088
8165
  # **JSON Example**
8089
- # ` "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com",
8090
- # "group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
8091
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/viewer", "members": ["user:
8092
- # sean@example.com"] ` ] `
8166
+ # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
8167
+ # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
8168
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
8169
+ # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
8170
+ # "condition": ` "title": "expirable access", "description": "Does not grant
8171
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
8172
+ # 00:00.000Z')", ` ` ] `
8093
8173
  # **YAML Example**
8094
8174
  # bindings: - members: - user:mike@example.com - group:admins@example.com -
8095
- # domain:google.com - serviceAccount:my-other-app@appspot.gserviceaccount.com
8096
- # role: roles/owner - members: - user:sean@example.com role: roles/viewer
8175
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
8176
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
8177
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
8178
+ # access description: Does not grant access after Sep 2020 expression: request.
8179
+ # time < timestamp('2020-10-01T00:00:00.000Z')
8097
8180
  # For a description of IAM and its features, see the [IAM developer's guide](
8098
8181
  # https://cloud.google.com/iam/docs).
8099
8182
  # Corresponds to the JSON property `policy`
@@ -10032,7 +10115,8 @@ module Google
10032
10115
  class HttpRetryPolicy
10033
10116
  include Google::Apis::Core::Hashable
10034
10117
 
10035
- # Specifies the allowed number retries. This number must be > 0.
10118
+ # Specifies the allowed number retries. This number must be > 0. If not
10119
+ # specified, defaults to 1.
10036
10120
  # Corresponds to the JSON property `numRetries`
10037
10121
  # @return [Fixnum]
10038
10122
  attr_accessor :num_retries
@@ -10166,6 +10250,12 @@ module Google
10166
10250
  class HttpRouteRule
10167
10251
  include Google::Apis::Core::Hashable
10168
10252
 
10253
+ # The short description conveying the intent of this routeRule.
10254
+ # The description can have a maximum length of 1024 characters.
10255
+ # Corresponds to the JSON property `description`
10256
+ # @return [String]
10257
+ attr_accessor :description
10258
+
10169
10259
  # The request and response header transformations that take effect before the
10170
10260
  # request is passed along to the selected backendService.
10171
10261
  # Corresponds to the JSON property `headerAction`
@@ -10177,6 +10267,22 @@ module Google
10177
10267
  # @return [Array<Google::Apis::ComputeAlpha::HttpRouteRuleMatch>]
10178
10268
  attr_accessor :match_rules
10179
10269
 
10270
+ # For routeRules within a given pathMatcher, priority determines the order in
10271
+ # which load balancer will interpret routeRules. RouteRules are evaluated in
10272
+ # order of priority, from the lowest to highest number. The priority of a rule
10273
+ # decreases as its number increases (1, 2, 3, N+1). The first rule that matches
10274
+ # the request is applied.
10275
+ # You cannot configure two or more routeRules with the same priority. Priority
10276
+ # for each rule must be set to a number between 0 and 2147483647 inclusive.
10277
+ # Priority numbers can have gaps, which enable you to add or remove rules in the
10278
+ # future without affecting the rest of the rules. For example, 1, 2, 3, 4, 5, 9,
10279
+ # 12, 16 is a valid series of priority numbers to which you could add rules
10280
+ # numbered from 6 to 8, 10 to 11, and 13 to 15 in the future without any impact
10281
+ # on existing rules.
10282
+ # Corresponds to the JSON property `priority`
10283
+ # @return [Fixnum]
10284
+ attr_accessor :priority
10285
+
10180
10286
  # In response to a matching matchRule, the load balancer performs advanced
10181
10287
  # routing actions like URL rewrites, header transformations, etc. prior to
10182
10288
  # forwarding the request to the selected backend. If routeAction specifies any
@@ -10210,8 +10316,10 @@ module Google
10210
10316
 
10211
10317
  # Update properties of this object
10212
10318
  def update!(**args)
10319
+ @description = args[:description] if args.key?(:description)
10213
10320
  @header_action = args[:header_action] if args.key?(:header_action)
10214
10321
  @match_rules = args[:match_rules] if args.key?(:match_rules)
10322
+ @priority = args[:priority] if args.key?(:priority)
10215
10323
  @route_action = args[:route_action] if args.key?(:route_action)
10216
10324
  @service = args[:service] if args.key?(:service)
10217
10325
  @url_redirect = args[:url_redirect] if args.key?(:url_redirect)
@@ -10986,6 +11094,11 @@ module Google
10986
11094
  attr_accessor :can_ip_forward
10987
11095
  alias_method :can_ip_forward?, :can_ip_forward
10988
11096
 
11097
+ # A set of Confidential Instance options.
11098
+ # Corresponds to the JSON property `confidentialInstanceConfig`
11099
+ # @return [Google::Apis::ComputeAlpha::ConfidentialInstanceConfig]
11100
+ attr_accessor :confidential_instance_config
11101
+
10989
11102
  # [Output Only] The CPU platform used by this instance.
10990
11103
  # Corresponds to the JSON property `cpuPlatform`
10991
11104
  # @return [String]
@@ -11026,6 +11139,17 @@ module Google
11026
11139
  attr_accessor :erase_windows_vss_signature
11027
11140
  alias_method :erase_windows_vss_signature?, :erase_windows_vss_signature
11028
11141
 
11142
+ # Specifies a fingerprint for this resource, which is essentially a hash of the
11143
+ # instance's contents and used for optimistic locking. The fingerprint is
11144
+ # initially generated by Compute Engine and changes after every request to
11145
+ # modify or update the instance. You must always provide an up-to-date
11146
+ # fingerprint hash in order to update the instance.
11147
+ # To see the latest fingerprint, make get() request to the instance.
11148
+ # Corresponds to the JSON property `fingerprint`
11149
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
11150
+ # @return [String]
11151
+ attr_accessor :fingerprint
11152
+
11029
11153
  # A list of the type and count of accelerator cards attached to the instance.
11030
11154
  # Corresponds to the JSON property `guestAccelerators`
11031
11155
  # @return [Array<Google::Apis::ComputeAlpha::AcceleratorConfig>]
@@ -11233,6 +11357,7 @@ module Google
11233
11357
  # Update properties of this object
11234
11358
  def update!(**args)
11235
11359
  @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
11360
+ @confidential_instance_config = args[:confidential_instance_config] if args.key?(:confidential_instance_config)
11236
11361
  @cpu_platform = args[:cpu_platform] if args.key?(:cpu_platform)
11237
11362
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
11238
11363
  @deletion_protection = args[:deletion_protection] if args.key?(:deletion_protection)
@@ -11240,6 +11365,7 @@ module Google
11240
11365
  @disks = args[:disks] if args.key?(:disks)
11241
11366
  @display_device = args[:display_device] if args.key?(:display_device)
11242
11367
  @erase_windows_vss_signature = args[:erase_windows_vss_signature] if args.key?(:erase_windows_vss_signature)
11368
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
11243
11369
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
11244
11370
  @hostname = args[:hostname] if args.key?(:hostname)
11245
11371
  @id = args[:id] if args.key?(:id)
@@ -12379,6 +12505,12 @@ module Google
12379
12505
  class InstanceGroupManagerStatus
12380
12506
  include Google::Apis::Core::Hashable
12381
12507
 
12508
+ # [Output Only] The URL of the Autoscaler that targets this instance group
12509
+ # manager.
12510
+ # Corresponds to the JSON property `autoscaler`
12511
+ # @return [String]
12512
+ attr_accessor :autoscaler
12513
+
12382
12514
  # [Output Only] A bit indicating whether the managed instance group is in a
12383
12515
  # stable state. A stable state means that: none of the instances in the managed
12384
12516
  # instance group is currently undergoing any type of change (for example,
@@ -12407,6 +12539,7 @@ module Google
12407
12539
 
12408
12540
  # Update properties of this object
12409
12541
  def update!(**args)
12542
+ @autoscaler = args[:autoscaler] if args.key?(:autoscaler)
12410
12543
  @is_stable = args[:is_stable] if args.key?(:is_stable)
12411
12544
  @stateful = args[:stateful] if args.key?(:stateful)
12412
12545
  @version_target = args[:version_target] if args.key?(:version_target)
@@ -12686,12 +12819,6 @@ module Google
12686
12819
  class InstanceGroupManagersDeletePerInstanceConfigsReq
12687
12820
  include Google::Apis::Core::Hashable
12688
12821
 
12689
- # The list of instances for which we want to delete per-instance configs on this
12690
- # managed instance group.
12691
- # Corresponds to the JSON property `instances`
12692
- # @return [Array<String>]
12693
- attr_accessor :instances
12694
-
12695
12822
  # The list of instance names for which we want to delete per-instance configs on
12696
12823
  # this managed instance group.
12697
12824
  # Corresponds to the JSON property `names`
@@ -12704,7 +12831,6 @@ module Google
12704
12831
 
12705
12832
  # Update properties of this object
12706
12833
  def update!(**args)
12707
- @instances = args[:instances] if args.key?(:instances)
12708
12834
  @names = args[:names] if args.key?(:names)
12709
12835
  end
12710
12836
  end
@@ -13815,6 +13941,11 @@ module Google
13815
13941
  attr_accessor :can_ip_forward
13816
13942
  alias_method :can_ip_forward?, :can_ip_forward
13817
13943
 
13944
+ # A set of Confidential Instance options.
13945
+ # Corresponds to the JSON property `confidentialInstanceConfig`
13946
+ # @return [Google::Apis::ComputeAlpha::ConfidentialInstanceConfig]
13947
+ attr_accessor :confidential_instance_config
13948
+
13818
13949
  # An optional text description for the instances that are created from this
13819
13950
  # instance template.
13820
13951
  # Corresponds to the JSON property `description`
@@ -13911,6 +14042,7 @@ module Google
13911
14042
  # Update properties of this object
13912
14043
  def update!(**args)
13913
14044
  @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
14045
+ @confidential_instance_config = args[:confidential_instance_config] if args.key?(:confidential_instance_config)
13914
14046
  @description = args[:description] if args.key?(:description)
13915
14047
  @disks = args[:disks] if args.key?(:disks)
13916
14048
  @display_device = args[:display_device] if args.key?(:display_device)
@@ -16777,6 +16909,38 @@ module Google
16777
16909
  end
16778
16910
  end
16779
16911
 
16912
+ # Commitment for a particular license resource (a License Commitment is composed
16913
+ # of one or more of these).
16914
+ class LicenseResourceCommitment
16915
+ include Google::Apis::Core::Hashable
16916
+
16917
+ # The number of licenses purchased.
16918
+ # Corresponds to the JSON property `amount`
16919
+ # @return [Fixnum]
16920
+ attr_accessor :amount
16921
+
16922
+ # Specifies the core range of the instance for which this license applies.
16923
+ # Corresponds to the JSON property `coresPerLicense`
16924
+ # @return [String]
16925
+ attr_accessor :cores_per_license
16926
+
16927
+ # Any applicable license URI.
16928
+ # Corresponds to the JSON property `license`
16929
+ # @return [String]
16930
+ attr_accessor :license
16931
+
16932
+ def initialize(**args)
16933
+ update!(**args)
16934
+ end
16935
+
16936
+ # Update properties of this object
16937
+ def update!(**args)
16938
+ @amount = args[:amount] if args.key?(:amount)
16939
+ @cores_per_license = args[:cores_per_license] if args.key?(:cores_per_license)
16940
+ @license = args[:license] if args.key?(:license)
16941
+ end
16942
+ end
16943
+
16780
16944
  #
16781
16945
  class LicenseResourceRequirements
16782
16946
  include Google::Apis::Core::Hashable
@@ -16969,10 +17133,10 @@ module Google
16969
17133
  # a representation of IAMContext.principal even if a token or authority selector
16970
17134
  # is present; or - "" (empty string), resulting in a counter with no fields.
16971
17135
  # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==>
16972
- # increment counter /iam/policy/backend_debug_access_count `iam_principal=[value
16973
- # of IAMContext.principal]`
16974
- # At this time we do not support multiple field names (though this may be
16975
- # supported in the future).
17136
+ # increment counter /iam/policy/debug_access_count `iam_principal=[value of
17137
+ # IAMContext.principal]`
17138
+ # TODO(b/141846426): Consider supporting "authority" and "iam_principal" fields
17139
+ # in the same counter.
16976
17140
  # Corresponds to the JSON property `counter`
16977
17141
  # @return [Google::Apis::ComputeAlpha::LogConfigCounterOptions]
16978
17142
  attr_accessor :counter
@@ -17031,13 +17195,18 @@ module Google
17031
17195
  # a representation of IAMContext.principal even if a token or authority selector
17032
17196
  # is present; or - "" (empty string), resulting in a counter with no fields.
17033
17197
  # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==>
17034
- # increment counter /iam/policy/backend_debug_access_count `iam_principal=[value
17035
- # of IAMContext.principal]`
17036
- # At this time we do not support multiple field names (though this may be
17037
- # supported in the future).
17198
+ # increment counter /iam/policy/debug_access_count `iam_principal=[value of
17199
+ # IAMContext.principal]`
17200
+ # TODO(b/141846426): Consider supporting "authority" and "iam_principal" fields
17201
+ # in the same counter.
17038
17202
  class LogConfigCounterOptions
17039
17203
  include Google::Apis::Core::Hashable
17040
17204
 
17205
+ # Custom fields.
17206
+ # Corresponds to the JSON property `customFields`
17207
+ # @return [Array<Google::Apis::ComputeAlpha::LogConfigCounterOptionsCustomField>]
17208
+ attr_accessor :custom_fields
17209
+
17041
17210
  # The field value to attribute.
17042
17211
  # Corresponds to the JSON property `field`
17043
17212
  # @return [String]
@@ -17054,11 +17223,40 @@ module Google
17054
17223
 
17055
17224
  # Update properties of this object
17056
17225
  def update!(**args)
17226
+ @custom_fields = args[:custom_fields] if args.key?(:custom_fields)
17057
17227
  @field = args[:field] if args.key?(:field)
17058
17228
  @metric = args[:metric] if args.key?(:metric)
17059
17229
  end
17060
17230
  end
17061
17231
 
17232
+ # Custom fields. These can be used to create a counter with arbitrary field/
17233
+ # value pairs. See: go/rpcsp-custom-fields.
17234
+ class LogConfigCounterOptionsCustomField
17235
+ include Google::Apis::Core::Hashable
17236
+
17237
+ # Name is the field name.
17238
+ # Corresponds to the JSON property `name`
17239
+ # @return [String]
17240
+ attr_accessor :name
17241
+
17242
+ # Value is the field value. It is important that in contrast to the
17243
+ # CounterOptions.field, the value here is a constant that is not derived from
17244
+ # the IAMContext.
17245
+ # Corresponds to the JSON property `value`
17246
+ # @return [String]
17247
+ attr_accessor :value
17248
+
17249
+ def initialize(**args)
17250
+ update!(**args)
17251
+ end
17252
+
17253
+ # Update properties of this object
17254
+ def update!(**args)
17255
+ @name = args[:name] if args.key?(:name)
17256
+ @value = args[:value] if args.key?(:value)
17257
+ end
17258
+ end
17259
+
17062
17260
  # Write a Data Access (Gin) log
17063
17261
  class LogConfigDataAccessOptions
17064
17262
  include Google::Apis::Core::Hashable
@@ -18406,6 +18604,9 @@ module Google
18406
18604
  end
18407
18605
 
18408
18606
  # Represents a collection of network endpoints.
18607
+ # For more information read Setting up network endpoint groups in load balancing.
18608
+ # (== resource_for v1.networkEndpointGroups ==) (== resource_for beta.
18609
+ # networkEndpointGroups ==)
18409
18610
  class NetworkEndpointGroup
18410
18611
  include Google::Apis::Core::Hashable
18411
18612
 
@@ -18414,6 +18615,33 @@ module Google
18414
18615
  # @return [Hash<String,String>]
18415
18616
  attr_accessor :annotations
18416
18617
 
18618
+ # Configuration for an App Engine network endpoint group (NEG). The service is
18619
+ # optional, may be provided explicitly or in the URL mask. The version is
18620
+ # optional and can only be provided explicitly or in the URL mask when service
18621
+ # is present.
18622
+ # Note: App Engine service must be in the same project and located in the same
18623
+ # region as the Serverless NEG.
18624
+ # Corresponds to the JSON property `appEngine`
18625
+ # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupAppEngine]
18626
+ attr_accessor :app_engine
18627
+
18628
+ # Configuration for a Cloud Function network endpoint group (NEG). The function
18629
+ # must be provided explicitly or in the URL mask.
18630
+ # Note: Cloud Function must be in the same project and located in the same
18631
+ # region as the Serverless NEG.
18632
+ # Corresponds to the JSON property `cloudFunction`
18633
+ # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupCloudFunction]
18634
+ attr_accessor :cloud_function
18635
+
18636
+ # Configuration for a Cloud Run network endpoint group (NEG). The service must
18637
+ # be provided explicitly or in the URL mask. The tag is optional, may be
18638
+ # provided explicitly or in the URL mask.
18639
+ # Note: Cloud Run service must be in the same project and located in the same
18640
+ # region as the Serverless NEG.
18641
+ # Corresponds to the JSON property `cloudRun`
18642
+ # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupCloudRun]
18643
+ attr_accessor :cloud_run
18644
+
18417
18645
  # [Output Only] Creation timestamp in RFC3339 text format.
18418
18646
  # Corresponds to the JSON property `creationTimestamp`
18419
18647
  # @return [String]
@@ -18470,6 +18698,12 @@ module Google
18470
18698
  # @return [String]
18471
18699
  attr_accessor :network_endpoint_type
18472
18700
 
18701
+ # [Output Only] The URL of the region where the network endpoint group is
18702
+ # located.
18703
+ # Corresponds to the JSON property `region`
18704
+ # @return [String]
18705
+ attr_accessor :region
18706
+
18473
18707
  # [Output Only] Server-defined URL for the resource.
18474
18708
  # Corresponds to the JSON property `selfLink`
18475
18709
  # @return [String]
@@ -18509,6 +18743,9 @@ module Google
18509
18743
  # Update properties of this object
18510
18744
  def update!(**args)
18511
18745
  @annotations = args[:annotations] if args.key?(:annotations)
18746
+ @app_engine = args[:app_engine] if args.key?(:app_engine)
18747
+ @cloud_function = args[:cloud_function] if args.key?(:cloud_function)
18748
+ @cloud_run = args[:cloud_run] if args.key?(:cloud_run)
18512
18749
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
18513
18750
  @default_port = args[:default_port] if args.key?(:default_port)
18514
18751
  @description = args[:description] if args.key?(:description)
@@ -18518,6 +18755,7 @@ module Google
18518
18755
  @name = args[:name] if args.key?(:name)
18519
18756
  @network = args[:network] if args.key?(:network)
18520
18757
  @network_endpoint_type = args[:network_endpoint_type] if args.key?(:network_endpoint_type)
18758
+ @region = args[:region] if args.key?(:region)
18521
18759
  @self_link = args[:self_link] if args.key?(:self_link)
18522
18760
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
18523
18761
  @size = args[:size] if args.key?(:size)
@@ -18646,6 +18884,134 @@ module Google
18646
18884
  end
18647
18885
  end
18648
18886
 
18887
+ # Configuration for an App Engine network endpoint group (NEG). The service is
18888
+ # optional, may be provided explicitly or in the URL mask. The version is
18889
+ # optional and can only be provided explicitly or in the URL mask when service
18890
+ # is present.
18891
+ # Note: App Engine service must be in the same project and located in the same
18892
+ # region as the Serverless NEG.
18893
+ class NetworkEndpointGroupAppEngine
18894
+ include Google::Apis::Core::Hashable
18895
+
18896
+ # Optional serving service.
18897
+ # The service name must be 1-63 characters long, and comply with RFC1035.
18898
+ # Example value: "default", "my-service".
18899
+ # Corresponds to the JSON property `service`
18900
+ # @return [String]
18901
+ attr_accessor :service
18902
+
18903
+ # A template to parse service and version fields from a request URL. URL mask
18904
+ # allows for routing to multiple App Engine services without having to create
18905
+ # multiple Network Endpoint Groups and backend services.
18906
+ # For example, the request URLs "foo1-dot-appname.appspot.com/v1" and "foo1-dot-
18907
+ # appname.appspot.com/v2" can be backed by the same Serverless NEG with URL mask
18908
+ # "-dot-appname.appspot.com/". The URL mask will parse them to ` service = "foo1"
18909
+ # , version = "v1" ` and ` service = "foo1", version = "v2" ` respectively.
18910
+ # Corresponds to the JSON property `urlMask`
18911
+ # @return [String]
18912
+ attr_accessor :url_mask
18913
+
18914
+ # Optional serving version.
18915
+ # The version must be 1-63 characters long, and comply with RFC1035.
18916
+ # Example value: "v1", "v2".
18917
+ # Corresponds to the JSON property `version`
18918
+ # @return [String]
18919
+ attr_accessor :version
18920
+
18921
+ def initialize(**args)
18922
+ update!(**args)
18923
+ end
18924
+
18925
+ # Update properties of this object
18926
+ def update!(**args)
18927
+ @service = args[:service] if args.key?(:service)
18928
+ @url_mask = args[:url_mask] if args.key?(:url_mask)
18929
+ @version = args[:version] if args.key?(:version)
18930
+ end
18931
+ end
18932
+
18933
+ # Configuration for a Cloud Function network endpoint group (NEG). The function
18934
+ # must be provided explicitly or in the URL mask.
18935
+ # Note: Cloud Function must be in the same project and located in the same
18936
+ # region as the Serverless NEG.
18937
+ class NetworkEndpointGroupCloudFunction
18938
+ include Google::Apis::Core::Hashable
18939
+
18940
+ # A user-defined name of the Cloud Function.
18941
+ # The service name must be 1-63 characters long, and comply with RFC1035.
18942
+ # Example value: "func1".
18943
+ # Corresponds to the JSON property `function`
18944
+ # @return [String]
18945
+ attr_accessor :function
18946
+
18947
+ # A template to parse function field from a request URL. URL mask allows for
18948
+ # routing to multiple Cloud Functions without having to create multiple Network
18949
+ # Endpoint Groups and backend services.
18950
+ # For example, request URLs "mydomain.com/function1" and "mydomain.com/function2"
18951
+ # can be backed by the same Serverless NEG with URL mask "/". The URL mask will
18952
+ # parse them to ` function = "function1" ` and ` function = "function2" `
18953
+ # respectively.
18954
+ # Corresponds to the JSON property `urlMask`
18955
+ # @return [String]
18956
+ attr_accessor :url_mask
18957
+
18958
+ def initialize(**args)
18959
+ update!(**args)
18960
+ end
18961
+
18962
+ # Update properties of this object
18963
+ def update!(**args)
18964
+ @function = args[:function] if args.key?(:function)
18965
+ @url_mask = args[:url_mask] if args.key?(:url_mask)
18966
+ end
18967
+ end
18968
+
18969
+ # Configuration for a Cloud Run network endpoint group (NEG). The service must
18970
+ # be provided explicitly or in the URL mask. The tag is optional, may be
18971
+ # provided explicitly or in the URL mask.
18972
+ # Note: Cloud Run service must be in the same project and located in the same
18973
+ # region as the Serverless NEG.
18974
+ class NetworkEndpointGroupCloudRun
18975
+ include Google::Apis::Core::Hashable
18976
+
18977
+ # Cloud Run service is the main resource of Cloud Run.
18978
+ # The tag must be 1-63 characters long, and comply with RFC1035.
18979
+ # Example value: "run-service".
18980
+ # Corresponds to the JSON property `service`
18981
+ # @return [String]
18982
+ attr_accessor :service
18983
+
18984
+ # Optional Cloud Run tag represents the "named-revision" to provide additional
18985
+ # fine-grained traffic routing information.
18986
+ # The tag must be 1-63 characters long, and comply with RFC1035.
18987
+ # Example value: "revision-0010".
18988
+ # Corresponds to the JSON property `tag`
18989
+ # @return [String]
18990
+ attr_accessor :tag
18991
+
18992
+ # A template to parse service and tag fields from a request URL. URL mask allows
18993
+ # for routing to multiple Run services without having to create multiple network
18994
+ # endpoint groups and backend services.
18995
+ # For example, request URLs "foo1.domain.com/bar1" and "foo1.domain.com/bar2"
18996
+ # can be backed by the same Serverless Network Endpoint Group (NEG) with URL
18997
+ # mask ".domain.com/". The URL mask will parse them to ` service="bar1", tag="
18998
+ # foo1" ` and ` service="bar2", tag="foo2" ` respectively.
18999
+ # Corresponds to the JSON property `urlMask`
19000
+ # @return [String]
19001
+ attr_accessor :url_mask
19002
+
19003
+ def initialize(**args)
19004
+ update!(**args)
19005
+ end
19006
+
19007
+ # Update properties of this object
19008
+ def update!(**args)
19009
+ @service = args[:service] if args.key?(:service)
19010
+ @tag = args[:tag] if args.key?(:tag)
19011
+ @url_mask = args[:url_mask] if args.key?(:url_mask)
19012
+ end
19013
+ end
19014
+
18649
19015
  # Load balancing specific fields for network endpoint group.
18650
19016
  class NetworkEndpointGroupLbNetworkEndpointGroup
18651
19017
  include Google::Apis::Core::Hashable
@@ -19635,7 +20001,7 @@ module Google
19635
20001
  # instances physically separated from instances in other projects, or to group
19636
20002
  # your instances together on the same host hardware. For more information, read
19637
20003
  # Sole-tenant nodes. (== resource_for beta.nodeGroups ==) (== resource_for v1.
19638
- # nodeGroups ==) NextID: 15
20004
+ # nodeGroups ==) NextID: 16
19639
20005
  class NodeGroup
19640
20006
  include Google::Apis::Core::Hashable
19641
20007
 
@@ -20032,6 +20398,11 @@ module Google
20032
20398
  # @return [Google::Apis::ComputeAlpha::ServerBinding]
20033
20399
  attr_accessor :server_binding
20034
20400
 
20401
+ # Server ID associated with this node.
20402
+ # Corresponds to the JSON property `serverId`
20403
+ # @return [String]
20404
+ attr_accessor :server_id
20405
+
20035
20406
  #
20036
20407
  # Corresponds to the JSON property `status`
20037
20408
  # @return [String]
@@ -20048,6 +20419,7 @@ module Google
20048
20419
  @name = args[:name] if args.key?(:name)
20049
20420
  @node_type = args[:node_type] if args.key?(:node_type)
20050
20421
  @server_binding = args[:server_binding] if args.key?(:server_binding)
20422
+ @server_id = args[:server_id] if args.key?(:server_id)
20051
20423
  @status = args[:status] if args.key?(:status)
20052
20424
  end
20053
20425
  end
@@ -21339,7 +21711,7 @@ module Google
21339
21711
  # @return [String]
21340
21712
  attr_accessor :endpoint
21341
21713
 
21342
- # Optional. If specified, this field is used to populate the ?name? field in
21714
+ # Optional. If specified, this field is used to populate the "name" field in
21343
21715
  # gRPC requests.
21344
21716
  # Corresponds to the JSON property `payloadName`
21345
21717
  # @return [String]
@@ -22174,7 +22546,8 @@ module Google
22174
22546
  end
22175
22547
  end
22176
22548
 
22177
- # Settings controlling eviction of unhealthy hosts from the load balancing pool.
22549
+ # Settings controlling the eviction of unhealthy hosts from the load balancing
22550
+ # pool for the backend service.
22178
22551
  class OutlierDetection
22179
22552
  include Google::Apis::Core::Hashable
22180
22553
 
@@ -22195,21 +22568,21 @@ module Google
22195
22568
 
22196
22569
  # The number of consecutive gateway failures (502, 503, 504 status or connection
22197
22570
  # errors that are mapped to one of those status codes) before a consecutive
22198
- # gateway failure ejection occurs. Defaults to 5.
22571
+ # gateway failure ejection occurs. Defaults to 3.
22199
22572
  # Corresponds to the JSON property `consecutiveGatewayFailure`
22200
22573
  # @return [Fixnum]
22201
22574
  attr_accessor :consecutive_gateway_failure
22202
22575
 
22203
22576
  # The percentage chance that a host will be actually ejected when an outlier
22204
22577
  # status is detected through consecutive 5xx. This setting can be used to
22205
- # disable ejection or to ramp it up slowly. Defaults to 100.
22578
+ # disable ejection or to ramp it up slowly. Defaults to 0.
22206
22579
  # Corresponds to the JSON property `enforcingConsecutiveErrors`
22207
22580
  # @return [Fixnum]
22208
22581
  attr_accessor :enforcing_consecutive_errors
22209
22582
 
22210
22583
  # The percentage chance that a host will be actually ejected when an outlier
22211
22584
  # status is detected through consecutive gateway failures. This setting can be
22212
- # used to disable ejection or to ramp it up slowly. Defaults to 0.
22585
+ # used to disable ejection or to ramp it up slowly. Defaults to 100.
22213
22586
  # Corresponds to the JSON property `enforcingConsecutiveGatewayFailure`
22214
22587
  # @return [Fixnum]
22215
22588
  attr_accessor :enforcing_consecutive_gateway_failure
@@ -22230,7 +22603,7 @@ module Google
22230
22603
  attr_accessor :interval
22231
22604
 
22232
22605
  # Maximum percentage of hosts in the load balancing pool for the backend service
22233
- # that can be ejected. Defaults to 10%.
22606
+ # that can be ejected. Defaults to 50%.
22234
22607
  # Corresponds to the JSON property `maxEjectionPercent`
22235
22608
  # @return [Fixnum]
22236
22609
  attr_accessor :max_ejection_percent
@@ -22382,9 +22755,9 @@ module Google
22382
22755
  # @return [String]
22383
22756
  attr_accessor :kind
22384
22757
 
22385
- # PacketMirroring mirroredResourceInfos. Each mirroredResourceInfo specifies a
22386
- # set of mirrored VM instances and/or a set of subnetworks for which traffic
22387
- # from/to all VM instances will be mirrored.
22758
+ # PacketMirroring mirroredResourceInfos. MirroredResourceInfo specifies a set of
22759
+ # mirrored VM instances, subnetworks and/or tags for which traffic from/to all
22760
+ # VM instances will be mirrored.
22388
22761
  # Corresponds to the JSON property `mirroredResources`
22389
22762
  # @return [Google::Apis::ComputeAlpha::PacketMirroringMirroredResourceInfo]
22390
22763
  attr_accessor :mirrored_resources
@@ -22807,8 +23180,7 @@ module Google
22807
23180
  attr_accessor :instances
22808
23181
 
22809
23182
  # A set of subnetworks for which traffic from/to all VM instances will be
22810
- # mirrored. They must live in zones contained in the same region as this
22811
- # packetMirroring.
23183
+ # mirrored. They must live in the same region as this packetMirroring.
22812
23184
  # You may specify a maximum of 5 subnetworks.
22813
23185
  # Corresponds to the JSON property `subnetworks`
22814
23186
  # @return [Array<Google::Apis::ComputeAlpha::PacketMirroringMirroredResourceInfoSubnetInfo>]
@@ -23327,19 +23699,28 @@ module Google
23327
23699
 
23328
23700
  # Defines an Identity and Access Management (IAM) policy. It is used to specify
23329
23701
  # access control policies for Cloud Platform resources.
23330
- # A `Policy` consists of a list of `bindings`. A `binding` binds a list of `
23331
- # members` to a `role`, where the members can be user accounts, Google groups,
23332
- # Google domains, and service accounts. A `role` is a named list of permissions
23333
- # defined by IAM.
23702
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
23703
+ # members` to a single `role`. Members can be user accounts, service accounts,
23704
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
23705
+ # permissions (defined by IAM or configured by users). A `binding` can
23706
+ # optionally specify a `condition`, which is a logic expression that further
23707
+ # constrains the role binding based on attributes about the request and/or
23708
+ # target resource.
23334
23709
  # **JSON Example**
23335
- # ` "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com",
23336
- # "group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
23337
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/viewer", "members": ["user:
23338
- # sean@example.com"] ` ] `
23710
+ # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
23711
+ # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
23712
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
23713
+ # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
23714
+ # "condition": ` "title": "expirable access", "description": "Does not grant
23715
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
23716
+ # 00:00.000Z')", ` ` ] `
23339
23717
  # **YAML Example**
23340
23718
  # bindings: - members: - user:mike@example.com - group:admins@example.com -
23341
- # domain:google.com - serviceAccount:my-other-app@appspot.gserviceaccount.com
23342
- # role: roles/owner - members: - user:sean@example.com role: roles/viewer
23719
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
23720
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
23721
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
23722
+ # access description: Does not grant access after Sep 2020 expression: request.
23723
+ # time < timestamp('2020-10-01T00:00:00.000Z')
23343
23724
  # For a description of IAM and its features, see the [IAM developer's guide](
23344
23725
  # https://cloud.google.com/iam/docs).
23345
23726
  class Policy
@@ -23350,8 +23731,9 @@ module Google
23350
23731
  # @return [Array<Google::Apis::ComputeAlpha::AuditConfig>]
23351
23732
  attr_accessor :audit_configs
23352
23733
 
23353
- # Associates a list of `members` to a `role`. `bindings` with no members will
23354
- # result in an error.
23734
+ # Associates a list of `members` to a `role`. Optionally may specify a `
23735
+ # condition` that determines when binding is in effect. `bindings` with no
23736
+ # members will result in an error.
23355
23737
  # Corresponds to the JSON property `bindings`
23356
23738
  # @return [Array<Google::Apis::ComputeAlpha::Binding>]
23357
23739
  attr_accessor :bindings
@@ -23364,7 +23746,9 @@ module Google
23364
23746
  # that etag in the request to `setIamPolicy` to ensure that their change will be
23365
23747
  # applied to the same version of the policy.
23366
23748
  # If no `etag` is provided in the call to `setIamPolicy`, then the existing
23367
- # policy is overwritten.
23749
+ # policy is overwritten. Due to blind-set semantics of an etag-less policy, '
23750
+ # setIamPolicy' will not fail even if either of incoming or stored policy does
23751
+ # not meet the version requirements.
23368
23752
  # Corresponds to the JSON property `etag`
23369
23753
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
23370
23754
  # @return [String]
@@ -23390,9 +23774,13 @@ module Google
23390
23774
  # Specifies the format of the policy.
23391
23775
  # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
23392
23776
  # rejected.
23393
- # Policies with any conditional bindings must specify version 3. Policies
23394
- # without any conditional bindings may specify any valid value or leave the
23395
- # field unset.
23777
+ # Operations affecting conditional bindings must specify version 3. This can be
23778
+ # either setting a conditional policy, modifying a conditional binding, or
23779
+ # removing a conditional binding from the stored conditional policy. Operations
23780
+ # on non-conditional policies may specify any valid value or leave the field
23781
+ # unset.
23782
+ # If no etag is provided in the call to `setIamPolicy`, any version compliance
23783
+ # checks on the incoming and/or stored policy is skipped.
23396
23784
  # Corresponds to the JSON property `version`
23397
23785
  # @return [Fixnum]
23398
23786
  attr_accessor :version
@@ -23541,7 +23929,7 @@ module Google
23541
23929
 
23542
23930
  # A map of Istio attribute to expected values. Exact match, prefix match, and
23543
23931
  # suffix match are supported for values. For example, `request.headers[version]:
23544
- # ?v1?`. The properties are ANDed together.
23932
+ # "v1"`. The properties are ANDed together.
23545
23933
  # Corresponds to the JSON property `properties`
23546
23934
  # @return [Hash<String,String>]
23547
23935
  attr_accessor :properties
@@ -25196,12 +25584,6 @@ module Google
25196
25584
  class RegionInstanceGroupManagerDeleteInstanceConfigReq
25197
25585
  include Google::Apis::Core::Hashable
25198
25586
 
25199
- # The list of instances for which we want to delete per-instance configs on this
25200
- # managed instance group.
25201
- # Corresponds to the JSON property `instances`
25202
- # @return [Array<String>]
25203
- attr_accessor :instances
25204
-
25205
25587
  # The list of instance names for which we want to delete per-instance configs on
25206
25588
  # this managed instance group.
25207
25589
  # Corresponds to the JSON property `names`
@@ -25214,7 +25596,6 @@ module Google
25214
25596
 
25215
25597
  # Update properties of this object
25216
25598
  def update!(**args)
25217
- @instances = args[:instances] if args.key?(:instances)
25218
25599
  @names = args[:names] if args.key?(:names)
25219
25600
  end
25220
25601
  end
@@ -26079,19 +26460,28 @@ module Google
26079
26460
 
26080
26461
  # Defines an Identity and Access Management (IAM) policy. It is used to specify
26081
26462
  # access control policies for Cloud Platform resources.
26082
- # A `Policy` consists of a list of `bindings`. A `binding` binds a list of `
26083
- # members` to a `role`, where the members can be user accounts, Google groups,
26084
- # Google domains, and service accounts. A `role` is a named list of permissions
26085
- # defined by IAM.
26463
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
26464
+ # members` to a single `role`. Members can be user accounts, service accounts,
26465
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
26466
+ # permissions (defined by IAM or configured by users). A `binding` can
26467
+ # optionally specify a `condition`, which is a logic expression that further
26468
+ # constrains the role binding based on attributes about the request and/or
26469
+ # target resource.
26086
26470
  # **JSON Example**
26087
- # ` "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com",
26088
- # "group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
26089
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/viewer", "members": ["user:
26090
- # sean@example.com"] ` ] `
26471
+ # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
26472
+ # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
26473
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
26474
+ # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
26475
+ # "condition": ` "title": "expirable access", "description": "Does not grant
26476
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
26477
+ # 00:00.000Z')", ` ` ] `
26091
26478
  # **YAML Example**
26092
26479
  # bindings: - members: - user:mike@example.com - group:admins@example.com -
26093
- # domain:google.com - serviceAccount:my-other-app@appspot.gserviceaccount.com
26094
- # role: roles/owner - members: - user:sean@example.com role: roles/viewer
26480
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
26481
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
26482
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
26483
+ # access description: Does not grant access after Sep 2020 expression: request.
26484
+ # time < timestamp('2020-10-01T00:00:00.000Z')
26095
26485
  # For a description of IAM and its features, see the [IAM developer's guide](
26096
26486
  # https://cloud.google.com/iam/docs).
26097
26487
  # Corresponds to the JSON property `policy`
@@ -26184,7 +26574,7 @@ module Google
26184
26574
  class Reservation
26185
26575
  include Google::Apis::Core::Hashable
26186
26576
 
26187
- # [OutputOnly] Full or partial URL to a parent commitment. This field displays
26577
+ # [Output Only] Full or partial URL to a parent commitment. This field displays
26188
26578
  # for reservations that are tied to a commitment.
26189
26579
  # Corresponds to the JSON property `commitment`
26190
26580
  # @return [String]
@@ -27067,6 +27457,19 @@ module Google
27067
27457
  class ResourcePolicyGroupPlacementPolicy
27068
27458
  include Google::Apis::Core::Hashable
27069
27459
 
27460
+ # The number of availability domains instances will be spread across. If two
27461
+ # instances are in different availability domain, they will not be put in the
27462
+ # same low latency network
27463
+ # Corresponds to the JSON property `availabilityDomainCount`
27464
+ # @return [Fixnum]
27465
+ attr_accessor :availability_domain_count
27466
+
27467
+ # Distribution specifies how the instances are placed at host level. If set to
27468
+ # SPREAD, no two instances will be put on the same host
27469
+ # Corresponds to the JSON property `distribution`
27470
+ # @return [String]
27471
+ attr_accessor :distribution
27472
+
27070
27473
  # Specifies network locality
27071
27474
  # Corresponds to the JSON property `locality`
27072
27475
  # @return [String]
@@ -27088,6 +27491,8 @@ module Google
27088
27491
 
27089
27492
  # Update properties of this object
27090
27493
  def update!(**args)
27494
+ @availability_domain_count = args[:availability_domain_count] if args.key?(:availability_domain_count)
27495
+ @distribution = args[:distribution] if args.key?(:distribution)
27091
27496
  @locality = args[:locality] if args.key?(:locality)
27092
27497
  @style = args[:style] if args.key?(:style)
27093
27498
  @vm_count = args[:vm_count] if args.key?(:vm_count)
@@ -27571,8 +27976,7 @@ module Google
27571
27976
  # or full URL. For example, the following are all valid URLs:
27572
27977
  # - https://www.googleapis.com/compute/v1/projects/project/regions/region/
27573
27978
  # forwardingRules/forwardingRule
27574
- # - regions/region/forwardingRules/forwardingRule Note that this can only be
27575
- # used when the destination_range is a public (non-RFC 1918) IP CIDR range.
27979
+ # - regions/region/forwardingRules/forwardingRule
27576
27980
  # Corresponds to the JSON property `nextHopIlb`
27577
27981
  # @return [String]
27578
27982
  attr_accessor :next_hop_ilb
@@ -28660,8 +29064,12 @@ module Google
28660
29064
  attr_accessor :enable
28661
29065
  alias_method :enable?, :enable
28662
29066
 
28663
- # Specifies the desired filtering of logs on this NAT. If unspecified, logs are
28664
- # exported for all connections handled by this NAT.
29067
+ # Specify the desired filtering of logs on this NAT. If unspecified, logs are
29068
+ # exported for all connections handled by this NAT. This option can take one of
29069
+ # the following values:
29070
+ # - ERRORS_ONLY: Export logs only for connection failures.
29071
+ # - TRANSLATIONS_ONLY: Export logs only for successful connections.
29072
+ # - ALL: Export logs for all connections, successful and unsuccessful.
28665
29073
  # Corresponds to the JSON property `filter`
28666
29074
  # @return [String]
28667
29075
  attr_accessor :filter
@@ -28846,13 +29254,13 @@ module Google
28846
29254
  attr_accessor :auto_allocated_nat_ips
28847
29255
 
28848
29256
  # A list of IPs auto-allocated for NAT that are in drain mode. Example: ["1.1.1.
28849
- # 1", ?179.12.26.133?].
29257
+ # 1", "179.12.26.133"].
28850
29258
  # Corresponds to the JSON property `drainAutoAllocatedNatIps`
28851
29259
  # @return [Array<String>]
28852
29260
  attr_accessor :drain_auto_allocated_nat_ips
28853
29261
 
28854
29262
  # A list of IPs user-allocated for NAT that are in drain mode. Example: ["1.1.1.
28855
- # 1", ?179.12.26.133?].
29263
+ # 1", "179.12.26.133"].
28856
29264
  # Corresponds to the JSON property `drainUserAllocatedNatIps`
28857
29265
  # @return [Array<String>]
28858
29266
  attr_accessor :drain_user_allocated_nat_ips
@@ -30466,7 +30874,7 @@ module Google
30466
30874
  # @return [String]
30467
30875
  attr_accessor :description
30468
30876
 
30469
- # [Output Only] Size of the snapshot, specified in GB.
30877
+ # [Output Only] Size of the source disk, specified in GB.
30470
30878
  # Corresponds to the JSON property `diskSizeGb`
30471
30879
  # @return [Fixnum]
30472
30880
  attr_accessor :disk_size_gb
@@ -33256,12 +33664,14 @@ module Google
33256
33664
  alias_method :proxy_bind?, :proxy_bind
33257
33665
 
33258
33666
  # Specifies the QUIC override policy for this TargetHttpsProxy resource. This
33259
- # determines whether the load balancer will attempt to negotiate QUIC with
33260
- # clients or not. Can specify one of NONE, ENABLE, or DISABLE. Specify ENABLE to
33261
- # always enable QUIC, Enables QUIC when set to ENABLE, and disables QUIC when
33262
- # set to DISABLE. If NONE is specified, uses the QUIC policy with no user
33263
- # overrides, which is equivalent to DISABLE. Not specifying this field is
33264
- # equivalent to specifying NONE.
33667
+ # setting determines whether the load balancer attempts to negotiate QUIC with
33668
+ # clients. You can specify NONE, ENABLE, or DISABLE.
33669
+ # - When quic-override is set to NONE, Google manages whether QUIC is used.
33670
+ # - When quic-override is set to ENABLE, the load balancer uses QUIC when
33671
+ # possible.
33672
+ # - When quic-override is set to DISABLE, the load balancer doesn't use QUIC.
33673
+ # - If the quic-override flag is not specified, NONE is implied.
33674
+ # -
33265
33675
  # Corresponds to the JSON property `quicOverride`
33266
33676
  # @return [String]
33267
33677
  attr_accessor :quic_override
@@ -33290,8 +33700,8 @@ module Google
33290
33700
  attr_accessor :ssl_certificates
33291
33701
 
33292
33702
  # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
33293
- # resource. If not set, the TargetHttpsProxy resource will not have any SSL
33294
- # policy configured.
33703
+ # resource. If not set, the TargetHttpsProxy resource has no SSL policy
33704
+ # configured.
33295
33705
  # Corresponds to the JSON property `sslPolicy`
33296
33706
  # @return [String]
33297
33707
  attr_accessor :ssl_policy
@@ -37559,6 +37969,17 @@ module Google
37559
37969
  # - NEGOTIATION_FAILURE: Handshake failed.
37560
37970
  # - DEPROVISIONING: Resources are being deallocated for the VPN tunnel.
37561
37971
  # - FAILED: Tunnel creation has failed and the tunnel is not ready to be used.
37972
+ # - NO_INCOMING_PACKETS: No incoming packets from peer.
37973
+ # - REJECTED: Tunnel configuration was rejected, can be result of being
37974
+ # blacklisted.
37975
+ # - ALLOCATING_RESOURCES: Cloud VPN is in the process of allocating all required
37976
+ # resources.
37977
+ # - STOPPED: Tunnel is stopped due to its Forwarding Rules being deleted for
37978
+ # Classic VPN tunnels or the project is in frozen state.
37979
+ # - PEER_IDENTITY_MISMATCH: Peer identity does not match peer IP, probably
37980
+ # behind NAT.
37981
+ # - TS_NARROWING_NOT_ALLOWED: Traffic selector narrowing not allowed for an HA-
37982
+ # VPN tunnel.
37562
37983
  # Corresponds to the JSON property `status`
37563
37984
  # @return [String]
37564
37985
  attr_accessor :status
@@ -38428,19 +38849,28 @@ module Google
38428
38849
 
38429
38850
  # Defines an Identity and Access Management (IAM) policy. It is used to specify
38430
38851
  # access control policies for Cloud Platform resources.
38431
- # A `Policy` consists of a list of `bindings`. A `binding` binds a list of `
38432
- # members` to a `role`, where the members can be user accounts, Google groups,
38433
- # Google domains, and service accounts. A `role` is a named list of permissions
38434
- # defined by IAM.
38852
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
38853
+ # members` to a single `role`. Members can be user accounts, service accounts,
38854
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
38855
+ # permissions (defined by IAM or configured by users). A `binding` can
38856
+ # optionally specify a `condition`, which is a logic expression that further
38857
+ # constrains the role binding based on attributes about the request and/or
38858
+ # target resource.
38435
38859
  # **JSON Example**
38436
- # ` "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com",
38437
- # "group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
38438
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/viewer", "members": ["user:
38439
- # sean@example.com"] ` ] `
38860
+ # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
38861
+ # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
38862
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
38863
+ # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
38864
+ # "condition": ` "title": "expirable access", "description": "Does not grant
38865
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
38866
+ # 00:00.000Z')", ` ` ] `
38440
38867
  # **YAML Example**
38441
38868
  # bindings: - members: - user:mike@example.com - group:admins@example.com -
38442
- # domain:google.com - serviceAccount:my-other-app@appspot.gserviceaccount.com
38443
- # role: roles/owner - members: - user:sean@example.com role: roles/viewer
38869
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
38870
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
38871
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
38872
+ # access description: Does not grant access after Sep 2020 expression: request.
38873
+ # time < timestamp('2020-10-01T00:00:00.000Z')
38444
38874
  # For a description of IAM and its features, see the [IAM developer's guide](
38445
38875
  # https://cloud.google.com/iam/docs).
38446
38876
  # Corresponds to the JSON property `policy`