google-api-client 0.40.2 → 0.42.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +285 -0
  3. data/bin/generate-api +1 -3
  4. data/generated/google/apis/accessapproval_v1.rb +1 -1
  5. data/generated/google/apis/accessapproval_v1/service.rb +3 -0
  6. data/generated/google/apis/accessapproval_v1beta1.rb +1 -1
  7. data/generated/google/apis/accessapproval_v1beta1/service.rb +3 -0
  8. data/generated/google/apis/admin_directory_v1.rb +1 -1
  9. data/generated/google/apis/admin_directory_v1/classes.rb +31 -0
  10. data/generated/google/apis/admin_directory_v1/representations.rb +16 -0
  11. data/generated/google/apis/admin_directory_v1/service.rb +3 -5
  12. data/generated/google/apis/admob_v1.rb +1 -1
  13. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  14. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +32 -26
  15. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  16. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  17. data/generated/google/apis/androidmanagement_v1/classes.rb +117 -0
  18. data/generated/google/apis/androidmanagement_v1/representations.rb +39 -0
  19. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  20. data/generated/google/apis/androidpublisher_v3/classes.rb +78 -0
  21. data/generated/google/apis/androidpublisher_v3/representations.rb +44 -0
  22. data/generated/google/apis/androidpublisher_v3/service.rb +149 -1
  23. data/generated/google/apis/apigee_v1.rb +1 -1
  24. data/generated/google/apis/apigee_v1/classes.rb +1481 -107
  25. data/generated/google/apis/apigee_v1/representations.rb +559 -0
  26. data/generated/google/apis/apigee_v1/service.rb +1162 -117
  27. data/generated/google/apis/appsmarket_v2.rb +1 -1
  28. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  29. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +9 -0
  30. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  31. data/generated/google/apis/bigquery_v2.rb +1 -1
  32. data/generated/google/apis/bigquery_v2/classes.rb +36 -6
  33. data/generated/google/apis/bigquery_v2/representations.rb +4 -0
  34. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  35. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -6
  36. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  37. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +4 -4
  38. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  39. data/generated/google/apis/bigqueryreservation_v1/classes.rb +34 -0
  40. data/generated/google/apis/bigqueryreservation_v1/representations.rb +16 -0
  41. data/generated/google/apis/bigqueryreservation_v1/service.rb +60 -0
  42. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  43. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +8 -0
  44. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +1 -0
  45. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  46. data/generated/google/apis/bigtableadmin_v1/classes.rb +5 -10
  47. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  48. data/generated/google/apis/bigtableadmin_v2/classes.rb +45 -37
  49. data/generated/google/apis/bigtableadmin_v2/service.rb +1 -5
  50. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  51. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +28 -13
  52. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  53. data/generated/google/apis/blogger_v3.rb +1 -1
  54. data/generated/google/apis/books_v1.rb +1 -1
  55. data/generated/google/apis/calendar_v3.rb +1 -1
  56. data/generated/google/apis/chat_v1.rb +1 -1
  57. data/generated/google/apis/chat_v1/classes.rb +113 -0
  58. data/generated/google/apis/chat_v1/representations.rb +50 -0
  59. data/generated/google/apis/chat_v1/service.rb +32 -0
  60. data/generated/google/apis/civicinfo_v2.rb +2 -2
  61. data/generated/google/apis/civicinfo_v2/classes.rb +21 -801
  62. data/generated/google/apis/civicinfo_v2/representations.rb +1 -295
  63. data/generated/google/apis/civicinfo_v2/service.rb +28 -63
  64. data/generated/google/apis/classroom_v1.rb +1 -1
  65. data/generated/google/apis/classroom_v1/service.rb +9 -5
  66. data/generated/google/apis/cloudasset_v1.rb +1 -1
  67. data/generated/google/apis/cloudasset_v1/classes.rb +403 -6
  68. data/generated/google/apis/cloudasset_v1/representations.rb +101 -0
  69. data/generated/google/apis/cloudasset_v1/service.rb +178 -0
  70. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  71. data/generated/google/apis/cloudasset_v1beta1/classes.rb +948 -36
  72. data/generated/google/apis/cloudasset_v1beta1/representations.rb +241 -0
  73. data/generated/google/apis/cloudasset_v1beta1/service.rb +4 -4
  74. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  75. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +18 -19
  76. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +10 -6
  77. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  78. data/generated/google/apis/cloudbilling_v1/classes.rb +38 -6
  79. data/generated/google/apis/cloudbilling_v1/representations.rb +16 -0
  80. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  81. data/generated/google/apis/cloudbuild_v1/classes.rb +272 -12
  82. data/generated/google/apis/cloudbuild_v1/representations.rb +130 -4
  83. data/generated/google/apis/cloudbuild_v1/service.rb +0 -136
  84. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  85. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +284 -24
  86. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +135 -9
  87. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +0 -47
  88. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  89. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +284 -24
  90. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +135 -9
  91. data/generated/google/apis/cloudbuild_v1alpha2/service.rb +0 -47
  92. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  93. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +1 -1
  94. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +5 -6
  95. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  96. data/generated/google/apis/cloudfunctions_v1/classes.rb +20 -6
  97. data/generated/google/apis/cloudfunctions_v1/representations.rb +2 -0
  98. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  99. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +7 -0
  100. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +1 -0
  101. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  102. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  103. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +32 -1
  104. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +16 -0
  105. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  106. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +16 -12
  107. data/generated/google/apis/cloudresourcemanager_v1/service.rb +15 -6
  108. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  109. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +6 -5
  110. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  111. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  112. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  113. data/generated/google/apis/cloudscheduler_v1/classes.rb +7 -6
  114. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  115. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +7 -6
  116. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  117. data/generated/google/apis/cloudtrace_v1/classes.rb +2 -3
  118. data/generated/google/apis/cloudtrace_v1/service.rb +1 -7
  119. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  120. data/generated/google/apis/cloudtrace_v2/classes.rb +6 -5
  121. data/generated/google/apis/cloudtrace_v2/service.rb +3 -6
  122. data/generated/google/apis/composer_v1beta1.rb +1 -1
  123. data/generated/google/apis/composer_v1beta1/classes.rb +4 -3
  124. data/generated/google/apis/composer_v1beta1/service.rb +13 -0
  125. data/generated/google/apis/compute_alpha.rb +1 -1
  126. data/generated/google/apis/compute_alpha/classes.rb +634 -104
  127. data/generated/google/apis/compute_alpha/representations.rb +170 -0
  128. data/generated/google/apis/compute_alpha/service.rb +888 -139
  129. data/generated/google/apis/compute_beta.rb +1 -1
  130. data/generated/google/apis/compute_beta/classes.rb +703 -102
  131. data/generated/google/apis/compute_beta/representations.rb +182 -0
  132. data/generated/google/apis/compute_beta/service.rb +565 -33
  133. data/generated/google/apis/compute_v1.rb +1 -1
  134. data/generated/google/apis/compute_v1/classes.rb +989 -80
  135. data/generated/google/apis/compute_v1/representations.rb +290 -0
  136. data/generated/google/apis/compute_v1/service.rb +784 -38
  137. data/generated/google/apis/container_v1.rb +1 -1
  138. data/generated/google/apis/container_v1/classes.rb +132 -5
  139. data/generated/google/apis/container_v1/representations.rb +51 -0
  140. data/generated/google/apis/container_v1beta1.rb +1 -1
  141. data/generated/google/apis/container_v1beta1/classes.rb +157 -24
  142. data/generated/google/apis/container_v1beta1/representations.rb +39 -0
  143. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  144. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +1 -1
  145. data/generated/google/apis/content_v2.rb +1 -1
  146. data/generated/google/apis/content_v2/classes.rb +8 -2
  147. data/generated/google/apis/content_v2/representations.rb +1 -0
  148. data/generated/google/apis/content_v2/service.rb +10 -5
  149. data/generated/google/apis/content_v2_1.rb +1 -1
  150. data/generated/google/apis/content_v2_1/classes.rb +266 -8
  151. data/generated/google/apis/content_v2_1/representations.rb +108 -0
  152. data/generated/google/apis/content_v2_1/service.rb +10 -5
  153. data/generated/google/apis/customsearch_v1.rb +1 -1
  154. data/generated/google/apis/customsearch_v1/service.rb +12 -2
  155. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  156. data/generated/google/apis/datacatalog_v1beta1/classes.rb +34 -10
  157. data/generated/google/apis/datacatalog_v1beta1/representations.rb +13 -0
  158. data/generated/google/apis/datacatalog_v1beta1/service.rb +37 -0
  159. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  160. data/generated/google/apis/dataflow_v1b3/classes.rb +19 -0
  161. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  162. data/generated/google/apis/dataflow_v1b3/service.rb +2 -2
  163. data/generated/google/apis/dataproc_v1.rb +1 -1
  164. data/generated/google/apis/dataproc_v1/classes.rb +58 -11
  165. data/generated/google/apis/dataproc_v1/representations.rb +17 -0
  166. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  167. data/generated/google/apis/dataproc_v1beta2/classes.rb +53 -11
  168. data/generated/google/apis/dataproc_v1beta2/representations.rb +5 -0
  169. data/generated/google/apis/datastore_v1.rb +1 -1
  170. data/generated/google/apis/datastore_v1/classes.rb +1 -1
  171. data/generated/google/apis/dialogflow_v2.rb +1 -1
  172. data/generated/google/apis/dialogflow_v2/classes.rb +268 -28
  173. data/generated/google/apis/dialogflow_v2/representations.rb +93 -0
  174. data/generated/google/apis/dialogflow_v2/service.rb +14 -2
  175. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  176. data/generated/google/apis/dialogflow_v2beta1/classes.rb +272 -30
  177. data/generated/google/apis/dialogflow_v2beta1/representations.rb +93 -0
  178. data/generated/google/apis/dialogflow_v2beta1/service.rb +78 -48
  179. data/generated/google/apis/displayvideo_v1.rb +1 -1
  180. data/generated/google/apis/displayvideo_v1/classes.rb +117 -10
  181. data/generated/google/apis/displayvideo_v1/representations.rb +11 -0
  182. data/generated/google/apis/displayvideo_v1/service.rb +80 -6
  183. data/generated/google/apis/dlp_v2.rb +1 -1
  184. data/generated/google/apis/dlp_v2/classes.rb +5 -2
  185. data/generated/google/apis/dns_v1.rb +4 -4
  186. data/generated/google/apis/dns_v1/classes.rb +313 -162
  187. data/generated/google/apis/dns_v1/service.rb +247 -180
  188. data/generated/google/apis/dns_v1beta2.rb +4 -4
  189. data/generated/google/apis/dns_v1beta2/classes.rb +325 -171
  190. data/generated/google/apis/dns_v1beta2/service.rb +247 -180
  191. data/generated/google/apis/dns_v2beta1.rb +4 -4
  192. data/generated/google/apis/dns_v2beta1/classes.rb +313 -162
  193. data/generated/google/apis/dns_v2beta1/service.rb +247 -180
  194. data/generated/google/apis/documentai_v1beta2.rb +36 -0
  195. data/generated/google/apis/documentai_v1beta2/classes.rb +3284 -0
  196. data/generated/google/apis/documentai_v1beta2/representations.rb +1344 -0
  197. data/generated/google/apis/documentai_v1beta2/service.rb +269 -0
  198. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  199. data/generated/google/apis/doubleclicksearch_v2.rb +4 -4
  200. data/generated/google/apis/doubleclicksearch_v2/classes.rb +127 -111
  201. data/generated/google/apis/doubleclicksearch_v2/representations.rb +4 -6
  202. data/generated/google/apis/doubleclicksearch_v2/service.rb +47 -78
  203. data/generated/google/apis/drive_v2.rb +1 -1
  204. data/generated/google/apis/drive_v2/classes.rb +75 -2
  205. data/generated/google/apis/drive_v2/representations.rb +23 -0
  206. data/generated/google/apis/drive_v2/service.rb +49 -88
  207. data/generated/google/apis/drive_v3.rb +1 -1
  208. data/generated/google/apis/drive_v3/classes.rb +74 -2
  209. data/generated/google/apis/drive_v3/representations.rb +23 -0
  210. data/generated/google/apis/drive_v3/service.rb +26 -59
  211. data/generated/google/apis/fcm_v1.rb +1 -1
  212. data/generated/google/apis/fcm_v1/classes.rb +6 -0
  213. data/generated/google/apis/file_v1.rb +1 -1
  214. data/generated/google/apis/file_v1beta1.rb +1 -1
  215. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  216. data/generated/google/apis/firebase_v1beta1/classes.rb +7 -6
  217. data/generated/google/apis/firebase_v1beta1/service.rb +53 -49
  218. data/generated/google/apis/{androidpublisher_v2.rb → firebasehosting_v1.rb} +11 -12
  219. data/generated/google/apis/firebasehosting_v1/classes.rb +186 -0
  220. data/generated/google/apis/{androidpublisher_v2 → firebasehosting_v1}/representations.rb +22 -32
  221. data/generated/google/apis/firebasehosting_v1/service.rb +183 -0
  222. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  223. data/generated/google/apis/firebasehosting_v1beta1/service.rb +2 -0
  224. data/generated/google/apis/firestore_v1.rb +1 -1
  225. data/generated/google/apis/firestore_v1/classes.rb +152 -0
  226. data/generated/google/apis/firestore_v1/representations.rb +63 -0
  227. data/generated/google/apis/firestore_v1/service.rb +78 -0
  228. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  229. data/generated/google/apis/firestore_v1beta1/classes.rb +152 -0
  230. data/generated/google/apis/firestore_v1beta1/representations.rb +63 -0
  231. data/generated/google/apis/firestore_v1beta1/service.rb +78 -0
  232. data/generated/google/apis/games_v1.rb +6 -4
  233. data/generated/google/apis/games_v1/classes.rb +354 -2112
  234. data/generated/google/apis/games_v1/representations.rb +12 -647
  235. data/generated/google/apis/games_v1/service.rb +212 -1154
  236. data/generated/google/apis/{groupsmigration_v1.rb → gameservices_v1.rb} +10 -11
  237. data/generated/google/apis/gameservices_v1/classes.rb +2354 -0
  238. data/generated/google/apis/gameservices_v1/representations.rb +971 -0
  239. data/generated/google/apis/gameservices_v1/service.rb +1472 -0
  240. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  241. data/generated/google/apis/gameservices_v1beta/classes.rb +6 -6
  242. data/generated/google/apis/gmail_v1.rb +1 -1
  243. data/generated/google/apis/gmail_v1/classes.rb +53 -53
  244. data/generated/google/apis/gmail_v1/service.rb +72 -72
  245. data/generated/google/apis/{androidpublisher_v1_1.rb → gmailpostmastertools_v1beta1.rb} +11 -12
  246. data/generated/google/apis/gmailpostmastertools_v1beta1/classes.rb +306 -0
  247. data/generated/google/apis/gmailpostmastertools_v1beta1/representations.rb +141 -0
  248. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +236 -0
  249. data/generated/google/apis/groupssettings_v1.rb +1 -1
  250. data/generated/google/apis/groupssettings_v1/classes.rb +1 -1
  251. data/generated/google/apis/healthcare_v1.rb +1 -1
  252. data/generated/google/apis/healthcare_v1/classes.rb +6 -6
  253. data/generated/google/apis/healthcare_v1/service.rb +50 -1
  254. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  255. data/generated/google/apis/healthcare_v1beta1/classes.rb +916 -49
  256. data/generated/google/apis/healthcare_v1beta1/representations.rb +404 -0
  257. data/generated/google/apis/healthcare_v1beta1/service.rb +577 -1
  258. data/generated/google/apis/iam_v1.rb +1 -1
  259. data/generated/google/apis/iam_v1/classes.rb +27 -3
  260. data/generated/google/apis/iam_v1/service.rb +22 -6
  261. data/generated/google/apis/iamcredentials_v1.rb +2 -2
  262. data/generated/google/apis/iamcredentials_v1/service.rb +1 -1
  263. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  264. data/generated/google/apis/lifesciences_v2beta/classes.rb +10 -0
  265. data/generated/google/apis/lifesciences_v2beta/representations.rb +1 -0
  266. data/generated/google/apis/logging_v2.rb +1 -1
  267. data/generated/google/apis/logging_v2/classes.rb +69 -21
  268. data/generated/google/apis/managedidentities_v1.rb +1 -1
  269. data/generated/google/apis/managedidentities_v1/classes.rb +54 -10
  270. data/generated/google/apis/managedidentities_v1/representations.rb +15 -0
  271. data/generated/google/apis/managedidentities_v1/service.rb +3 -0
  272. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  273. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +54 -10
  274. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +15 -0
  275. data/generated/google/apis/managedidentities_v1alpha1/service.rb +3 -0
  276. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  277. data/generated/google/apis/managedidentities_v1beta1/classes.rb +54 -10
  278. data/generated/google/apis/managedidentities_v1beta1/representations.rb +15 -0
  279. data/generated/google/apis/managedidentities_v1beta1/service.rb +3 -0
  280. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  281. data/generated/google/apis/memcache_v1beta2/classes.rb +1 -1
  282. data/generated/google/apis/ml_v1.rb +1 -1
  283. data/generated/google/apis/ml_v1/classes.rb +28 -14
  284. data/generated/google/apis/ml_v1/representations.rb +1 -0
  285. data/generated/google/apis/monitoring_v3.rb +1 -1
  286. data/generated/google/apis/monitoring_v3/classes.rb +119 -48
  287. data/generated/google/apis/monitoring_v3/representations.rb +1 -0
  288. data/generated/google/apis/monitoring_v3/service.rb +8 -5
  289. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  290. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -6
  291. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  292. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +6 -6
  293. data/generated/google/apis/osconfig_v1.rb +1 -1
  294. data/generated/google/apis/osconfig_v1/classes.rb +2 -2
  295. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  296. data/generated/google/apis/osconfig_v1beta/classes.rb +2 -2
  297. data/generated/google/apis/people_v1.rb +4 -1
  298. data/generated/google/apis/people_v1/classes.rb +4 -4
  299. data/generated/google/apis/people_v1/service.rb +6 -5
  300. data/generated/google/apis/{androidpublisher_v1/classes.rb → playablelocations_v3.rb} +11 -6
  301. data/generated/google/apis/playablelocations_v3/classes.rb +633 -0
  302. data/generated/google/apis/playablelocations_v3/representations.rb +273 -0
  303. data/generated/google/apis/playablelocations_v3/service.rb +157 -0
  304. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  305. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +92 -0
  306. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +46 -0
  307. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +477 -0
  308. data/generated/google/apis/pubsub_v1.rb +1 -1
  309. data/generated/google/apis/pubsub_v1/classes.rb +28 -30
  310. data/generated/google/apis/pubsub_v1/service.rb +35 -44
  311. data/generated/google/apis/realtimebidding_v1.rb +40 -0
  312. data/generated/google/apis/realtimebidding_v1/classes.rb +1436 -0
  313. data/generated/google/apis/realtimebidding_v1/representations.rb +565 -0
  314. data/generated/google/apis/realtimebidding_v1/service.rb +661 -0
  315. data/generated/google/apis/recommendationengine_v1beta1.rb +36 -0
  316. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +2015 -0
  317. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +848 -0
  318. data/generated/google/apis/recommendationengine_v1beta1/service.rb +990 -0
  319. data/generated/google/apis/recommender_v1.rb +1 -1
  320. data/generated/google/apis/recommender_v1/classes.rb +211 -0
  321. data/generated/google/apis/recommender_v1/representations.rb +96 -0
  322. data/generated/google/apis/recommender_v1/service.rb +123 -0
  323. data/generated/google/apis/redis_v1.rb +1 -1
  324. data/generated/google/apis/redis_v1/classes.rb +1 -1
  325. data/generated/google/apis/redis_v1/service.rb +1 -1
  326. data/generated/google/apis/redis_v1beta1.rb +1 -1
  327. data/generated/google/apis/redis_v1beta1/classes.rb +1 -1
  328. data/generated/google/apis/redis_v1beta1/service.rb +1 -1
  329. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  330. data/generated/google/apis/remotebuildexecution_v1/classes.rb +1 -1
  331. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  332. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +1 -1
  333. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  334. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1 -1
  335. data/generated/google/apis/reseller_v1.rb +4 -3
  336. data/generated/google/apis/reseller_v1/classes.rb +219 -160
  337. data/generated/google/apis/reseller_v1/service.rb +247 -252
  338. data/generated/google/apis/run_v1.rb +2 -2
  339. data/generated/google/apis/run_v1/classes.rb +10 -7
  340. data/generated/google/apis/run_v1/service.rb +1 -1
  341. data/generated/google/apis/run_v1alpha1.rb +2 -2
  342. data/generated/google/apis/run_v1alpha1/classes.rb +6 -6
  343. data/generated/google/apis/run_v1alpha1/service.rb +1 -1
  344. data/generated/google/apis/run_v1beta1.rb +2 -2
  345. data/generated/google/apis/run_v1beta1/service.rb +1 -1
  346. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  347. data/generated/google/apis/sasportal_v1alpha1/classes.rb +92 -0
  348. data/generated/google/apis/sasportal_v1alpha1/representations.rb +46 -0
  349. data/generated/google/apis/sasportal_v1alpha1/service.rb +477 -0
  350. data/generated/google/apis/searchconsole_v1.rb +4 -3
  351. data/generated/google/apis/searchconsole_v1/service.rb +3 -2
  352. data/generated/google/apis/secretmanager_v1.rb +1 -1
  353. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  354. data/generated/google/apis/securitycenter_v1.rb +1 -1
  355. data/generated/google/apis/securitycenter_v1/classes.rb +10 -10
  356. data/generated/google/apis/securitycenter_v1/service.rb +14 -15
  357. data/generated/google/apis/securitycenter_v1p1beta1.rb +1 -1
  358. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +10 -10
  359. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +12 -15
  360. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  361. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +23 -4
  362. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +1 -0
  363. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  364. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +23 -4
  365. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +1 -0
  366. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  367. data/generated/google/apis/servicecontrol_v1/classes.rb +12 -6
  368. data/generated/google/apis/servicecontrol_v1/representations.rb +1 -0
  369. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  370. data/generated/google/apis/servicemanagement_v1/classes.rb +118 -37
  371. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  372. data/generated/google/apis/servicenetworking_v1/classes.rb +15 -4
  373. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  374. data/generated/google/apis/servicenetworking_v1beta/classes.rb +15 -4
  375. data/generated/google/apis/serviceusage_v1.rb +1 -1
  376. data/generated/google/apis/serviceusage_v1/classes.rb +29 -4
  377. data/generated/google/apis/serviceusage_v1/representations.rb +2 -0
  378. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  379. data/generated/google/apis/serviceusage_v1beta1/classes.rb +74 -4
  380. data/generated/google/apis/serviceusage_v1beta1/representations.rb +30 -0
  381. data/generated/google/apis/serviceusage_v1beta1/service.rb +37 -0
  382. data/generated/google/apis/sheets_v4.rb +1 -1
  383. data/generated/google/apis/sheets_v4/classes.rb +118 -28
  384. data/generated/google/apis/slides_v1.rb +1 -1
  385. data/generated/google/apis/slides_v1/classes.rb +4 -0
  386. data/generated/google/apis/spanner_v1.rb +1 -1
  387. data/generated/google/apis/spanner_v1/classes.rb +25 -20
  388. data/generated/google/apis/spanner_v1/service.rb +7 -0
  389. data/generated/google/apis/speech_v1.rb +1 -1
  390. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  391. data/generated/google/apis/storage_v1.rb +1 -1
  392. data/generated/google/apis/storage_v1/service.rb +2 -3
  393. data/generated/google/apis/testing_v1.rb +1 -1
  394. data/generated/google/apis/testing_v1/classes.rb +17 -6
  395. data/generated/google/apis/testing_v1/representations.rb +1 -0
  396. data/generated/google/apis/texttospeech_v1.rb +1 -1
  397. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  398. data/generated/google/apis/{androidpublisher_v1.rb → vectortile_v1.rb} +8 -8
  399. data/generated/google/apis/vectortile_v1/classes.rb +881 -0
  400. data/generated/google/apis/vectortile_v1/representations.rb +329 -0
  401. data/generated/google/apis/vectortile_v1/service.rb +268 -0
  402. data/generated/google/apis/vision_v1.rb +1 -1
  403. data/generated/google/apis/vision_v1/classes.rb +20 -0
  404. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  405. data/generated/google/apis/vision_v1p1beta1/classes.rb +20 -0
  406. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  407. data/generated/google/apis/vision_v1p2beta1/classes.rb +20 -0
  408. data/generated/google/apis/webfonts_v1.rb +5 -5
  409. data/generated/google/apis/webfonts_v1/classes.rb +4 -3
  410. data/generated/google/apis/webfonts_v1/representations.rb +1 -2
  411. data/generated/google/apis/webfonts_v1/service.rb +14 -21
  412. data/generated/google/apis/youtube_partner_v1.rb +4 -3
  413. data/generated/google/apis/youtube_partner_v1/classes.rb +1616 -1076
  414. data/generated/google/apis/youtube_partner_v1/representations.rb +357 -256
  415. data/generated/google/apis/youtube_partner_v1/service.rb +942 -1362
  416. data/generated/google/apis/youtube_v3.rb +1 -1
  417. data/generated/google/apis/youtube_v3/classes.rb +594 -2
  418. data/generated/google/apis/youtube_v3/representations.rb +308 -0
  419. data/generated/google/apis/youtube_v3/service.rb +292 -0
  420. data/lib/google/apis/version.rb +1 -1
  421. metadata +35 -19
  422. data/generated/google/apis/androidpublisher_v1/representations.rb +0 -26
  423. data/generated/google/apis/androidpublisher_v1/service.rb +0 -64
  424. data/generated/google/apis/androidpublisher_v1_1/classes.rb +0 -94
  425. data/generated/google/apis/androidpublisher_v1_1/representations.rb +0 -45
  426. data/generated/google/apis/androidpublisher_v1_1/service.rb +0 -104
  427. data/generated/google/apis/androidpublisher_v2/classes.rb +0 -223
  428. data/generated/google/apis/androidpublisher_v2/service.rb +0 -160
  429. data/generated/google/apis/groupsmigration_v1/classes.rb +0 -51
  430. data/generated/google/apis/groupsmigration_v1/representations.rb +0 -40
  431. data/generated/google/apis/groupsmigration_v1/service.rb +0 -100
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200515'
28
+ REVISION = '20200629'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -87,7 +87,7 @@ module Google
87
87
  # @return [String]
88
88
  attr_accessor :kind
89
89
 
90
- # [Output Only] Maximum accelerator cards allowed per instance.
90
+ # [Output Only] Maximum number of accelerator cards allowed per instance.
91
91
  # Corresponds to the JSON property `maximumCardsPerInstance`
92
92
  # @return [Fixnum]
93
93
  attr_accessor :maximum_cards_per_instance
@@ -97,7 +97,7 @@ module Google
97
97
  # @return [String]
98
98
  attr_accessor :name
99
99
 
100
- # [Output Only] Server-defined fully-qualified URL for this resource.
100
+ # [Output Only] Server-defined, fully qualified URL for this resource.
101
101
  # Corresponds to the JSON property `selfLink`
102
102
  # @return [String]
103
103
  attr_accessor :self_link
@@ -1070,7 +1070,7 @@ module Google
1070
1070
  end
1071
1071
  end
1072
1072
 
1073
- # Properties of the SKU instances being reserved.
1073
+ # Properties of the SKU instances being reserved. Next ID: 9
1074
1074
  class AllocationSpecificSkuAllocationReservedInstanceProperties
1075
1075
  include Google::Apis::Core::Hashable
1076
1076
 
@@ -1092,6 +1092,13 @@ module Google
1092
1092
  # @return [String]
1093
1093
  attr_accessor :machine_type
1094
1094
 
1095
+ # Specifies whether this VM may be a stable fleet VM. Setting this to "Periodic"
1096
+ # designates this VM as a Stable Fleet VM.
1097
+ # See go/stable-fleet-ug for more details.
1098
+ # Corresponds to the JSON property `maintenanceInterval`
1099
+ # @return [String]
1100
+ attr_accessor :maintenance_interval
1101
+
1095
1102
  # Minimum cpu platform the reservation.
1096
1103
  # Corresponds to the JSON property `minCpuPlatform`
1097
1104
  # @return [String]
@@ -1106,6 +1113,7 @@ module Google
1106
1113
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
1107
1114
  @local_ssds = args[:local_ssds] if args.key?(:local_ssds)
1108
1115
  @machine_type = args[:machine_type] if args.key?(:machine_type)
1116
+ @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
1109
1117
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
1110
1118
  end
1111
1119
  end
@@ -1124,7 +1132,7 @@ module Google
1124
1132
  # @return [Fixnum]
1125
1133
  attr_accessor :in_use_count
1126
1134
 
1127
- # Properties of the SKU instances being reserved.
1135
+ # Properties of the SKU instances being reserved. Next ID: 9
1128
1136
  # Corresponds to the JSON property `instanceProperties`
1129
1137
  # @return [Google::Apis::ComputeV1::AllocationSpecificSkuAllocationReservedInstanceProperties]
1130
1138
  attr_accessor :instance_properties
@@ -1411,10 +1419,10 @@ module Google
1411
1419
  # specified in each AuditConfig are enabled, and the exempted_members in each
1412
1420
  # AuditLogConfig are exempted.
1413
1421
  # Example Policy with multiple AuditConfigs:
1414
- # ` "audit_configs": [ ` "service": "allServices" "audit_log_configs": [ ` "
1422
+ # ` "audit_configs": [ ` "service": "allServices", "audit_log_configs": [ ` "
1415
1423
  # log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] `, ` "
1416
- # log_type": "DATA_WRITE", `, ` "log_type": "ADMIN_READ", ` ] `, ` "service": "
1417
- # sampleservice.googleapis.com" "audit_log_configs": [ ` "log_type": "DATA_READ",
1424
+ # log_type": "DATA_WRITE" `, ` "log_type": "ADMIN_READ" ` ] `, ` "service": "
1425
+ # sampleservice.googleapis.com", "audit_log_configs": [ ` "log_type": "DATA_READ"
1418
1426
  # `, ` "log_type": "DATA_WRITE", "exempted_members": [ "user:aliya@example.com"
1419
1427
  # ] ` ] ` ] `
1420
1428
  # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
@@ -1454,7 +1462,7 @@ module Google
1454
1462
 
1455
1463
  # Provides the configuration for logging a type of permissions. Example:
1456
1464
  # ` "audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "
1457
- # user:jose@example.com" ] `, ` "log_type": "DATA_WRITE", ` ] `
1465
+ # user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] `
1458
1466
  # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@
1459
1467
  # example.com from DATA_READ logging.
1460
1468
  class AuditLogConfig
@@ -2215,7 +2223,9 @@ module Google
2215
2223
  # UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group
2216
2224
  # will serve up to 100% of its configured capacity (depending on balancingMode).
2217
2225
  # A setting of 0 means the group is completely drained, offering 0% of its
2218
- # available Capacity. Valid range is [0.0,1.0].
2226
+ # available capacity. Valid range is 0.0 and [0.1,1.0]. You cannot configure a
2227
+ # setting larger than 0 and smaller than 0.1. You cannot configure a setting of
2228
+ # 0 when there is only one backend attached to the backend service.
2219
2229
  # This cannot be used for internal load balancing.
2220
2230
  # Corresponds to the JSON property `capacityScaler`
2221
2231
  # @return [Float]
@@ -2585,13 +2595,17 @@ module Google
2585
2595
  end
2586
2596
 
2587
2597
  # Represents a Backend Service resource.
2588
- # A backend service contains configuration values for Google Cloud Platform load
2589
- # balancing services.
2598
+ # A backend service defines how Google Cloud load balancers distribute traffic.
2599
+ # The backend service configuration contains a set of values, such as the
2600
+ # protocol used to connect to backends, various distribution and session
2601
+ # settings, health checks, and timeouts. These settings provide fine-grained
2602
+ # control over how your load balancer behaves. Most of the settings have default
2603
+ # values that allow for easy configuration if you need to get started quickly.
2590
2604
  # Backend services in Google Compute Engine can be either regionally or globally
2591
2605
  # scoped.
2592
2606
  # * [Global](/compute/docs/reference/rest/`$api_version`/backendServices) * [
2593
2607
  # Regional](/compute/docs/reference/rest/`$api_version`/regionBackendServices)
2594
- # For more information, read Backend Services.
2608
+ # For more information, see Backend Services.
2595
2609
  # (== resource_for `$api_version`.backendService ==)
2596
2610
  class BackendService
2597
2611
  include Google::Apis::Core::Hashable
@@ -2727,8 +2741,8 @@ module Google
2727
2741
  # redirected to the load balancer.
2728
2742
  # - MAGLEV: used as a drop in replacement for the ring hash load balancer.
2729
2743
  # Maglev is not as stable as ring hash but has faster table lookup build times
2730
- # and host selection times. For more information about Maglev, refer to https://
2731
- # ai.google/research/pubs/pub44824
2744
+ # and host selection times. For more information about Maglev, see https://ai.
2745
+ # google/research/pubs/pub44824
2732
2746
  # This field is applicable to either:
2733
2747
  # - A regional backend service with the service_protocol set to HTTP, HTTPS, or
2734
2748
  # HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED.
@@ -2830,8 +2844,8 @@ module Google
2830
2844
  attr_accessor :session_affinity
2831
2845
 
2832
2846
  # The backend service timeout has a different meaning depending on the type of
2833
- # load balancer. For more information read, Backend service settings The
2834
- # default is 30 seconds.
2847
+ # load balancer. For more information see, Backend service settings The default
2848
+ # is 30 seconds.
2835
2849
  # Corresponds to the JSON property `timeoutSec`
2836
2850
  # @return [Fixnum]
2837
2851
  attr_accessor :timeout_sec
@@ -3083,6 +3097,11 @@ module Google
3083
3097
  class BackendServiceGroupHealth
3084
3098
  include Google::Apis::Core::Hashable
3085
3099
 
3100
+ # Metadata defined as annotations on the network endpoint group.
3101
+ # Corresponds to the JSON property `annotations`
3102
+ # @return [Hash<String,String>]
3103
+ attr_accessor :annotations
3104
+
3086
3105
  # Health state of the backend instances or endpoints in requested instance or
3087
3106
  # network endpoint group, determined based on configured health checks.
3088
3107
  # Corresponds to the JSON property `healthStatus`
@@ -3101,6 +3120,7 @@ module Google
3101
3120
 
3102
3121
  # Update properties of this object
3103
3122
  def update!(**args)
3123
+ @annotations = args[:annotations] if args.key?(:annotations)
3104
3124
  @health_status = args[:health_status] if args.key?(:health_status)
3105
3125
  @kind = args[:kind] if args.key?(:kind)
3106
3126
  end
@@ -3110,18 +3130,22 @@ module Google
3110
3130
  class BackendServiceIap
3111
3131
  include Google::Apis::Core::Hashable
3112
3132
 
3113
- #
3133
+ # Whether the serving infrastructure will authenticate and authorize all
3134
+ # incoming requests. If true, the oauth2ClientId and oauth2ClientSecret fields
3135
+ # must be non-empty.
3114
3136
  # Corresponds to the JSON property `enabled`
3115
3137
  # @return [Boolean]
3116
3138
  attr_accessor :enabled
3117
3139
  alias_method :enabled?, :enabled
3118
3140
 
3119
- #
3141
+ # OAuth2 client ID to use for the authentication flow.
3120
3142
  # Corresponds to the JSON property `oauth2ClientId`
3121
3143
  # @return [String]
3122
3144
  attr_accessor :oauth2_client_id
3123
3145
 
3124
- #
3146
+ # OAuth2 client secret to use for the authentication flow. For security reasons,
3147
+ # this value cannot be retrieved via the API. Instead, the SHA-256 hash of the
3148
+ # value is returned in the oauth2ClientSecretSha256 field.
3125
3149
  # Corresponds to the JSON property `oauth2ClientSecret`
3126
3150
  # @return [String]
3127
3151
  attr_accessor :oauth2_client_secret
@@ -4533,6 +4557,24 @@ module Google
4533
4557
  # @return [Fixnum]
4534
4558
  attr_accessor :size_gb
4535
4559
 
4560
+ # The source disk used to create this disk. You can provide this as a partial or
4561
+ # full URL to the resource. For example, the following are valid values:
4562
+ # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
4563
+ # - projects/project/zones/zone/disks/disk
4564
+ # - zones/zone/disks/disk
4565
+ # Corresponds to the JSON property `sourceDisk`
4566
+ # @return [String]
4567
+ attr_accessor :source_disk
4568
+
4569
+ # [Output Only] The unique ID of the disk used to create this disk. This value
4570
+ # identifies the exact disk that was used to create this persistent disk. For
4571
+ # example, if you created the persistent disk from a disk that was later deleted
4572
+ # and recreated under the same name, the source disk ID would identify the exact
4573
+ # version of the disk that was used.
4574
+ # Corresponds to the JSON property `sourceDiskId`
4575
+ # @return [String]
4576
+ attr_accessor :source_disk_id
4577
+
4536
4578
  # The source image used to create this disk. If the source image is deleted,
4537
4579
  # this field will not be set.
4538
4580
  # To create a disk with one of the public operating system images, specify the
@@ -4644,6 +4686,8 @@ module Google
4644
4686
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
4645
4687
  @self_link = args[:self_link] if args.key?(:self_link)
4646
4688
  @size_gb = args[:size_gb] if args.key?(:size_gb)
4689
+ @source_disk = args[:source_disk] if args.key?(:source_disk)
4690
+ @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
4647
4691
  @source_image = args[:source_image] if args.key?(:source_image)
4648
4692
  @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key)
4649
4693
  @source_image_id = args[:source_image_id] if args.key?(:source_image_id)
@@ -7237,6 +7281,60 @@ module Google
7237
7281
  end
7238
7282
  end
7239
7283
 
7284
+ #
7285
+ class GrpcHealthCheck
7286
+ include Google::Apis::Core::Hashable
7287
+
7288
+ # The gRPC service name for the health check. This field is optional. The value
7289
+ # of grpc_service_name has the following meanings by convention:
7290
+ # - Empty service_name means the overall status of all services at the backend.
7291
+ # - Non-empty service_name means the health of that gRPC service, as defined by
7292
+ # the owner of the service.
7293
+ # The grpc_service_name can only be ASCII.
7294
+ # Corresponds to the JSON property `grpcServiceName`
7295
+ # @return [String]
7296
+ attr_accessor :grpc_service_name
7297
+
7298
+ # The port number for the health check request. Must be specified if port_name
7299
+ # and port_specification are not set or if port_specification is USE_FIXED_PORT.
7300
+ # Valid values are 1 through 65535.
7301
+ # Corresponds to the JSON property `port`
7302
+ # @return [Fixnum]
7303
+ attr_accessor :port
7304
+
7305
+ # Port name as defined in InstanceGroup#NamedPort#name. If both port and
7306
+ # port_name are defined, port takes precedence. The port_name should conform to
7307
+ # RFC1035.
7308
+ # Corresponds to the JSON property `portName`
7309
+ # @return [String]
7310
+ attr_accessor :port_name
7311
+
7312
+ # Specifies how port is selected for health checking, can be one of following
7313
+ # values:
7314
+ # USE_FIXED_PORT: The port number in port is used for health checking.
7315
+ # USE_NAMED_PORT: The portName is used for health checking.
7316
+ # USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each
7317
+ # network endpoint is used for health checking. For other backends, the port or
7318
+ # named port specified in the Backend Service is used for health checking.
7319
+ # If not specified, gRPC health check follows behavior specified in port and
7320
+ # portName fields.
7321
+ # Corresponds to the JSON property `portSpecification`
7322
+ # @return [String]
7323
+ attr_accessor :port_specification
7324
+
7325
+ def initialize(**args)
7326
+ update!(**args)
7327
+ end
7328
+
7329
+ # Update properties of this object
7330
+ def update!(**args)
7331
+ @grpc_service_name = args[:grpc_service_name] if args.key?(:grpc_service_name)
7332
+ @port = args[:port] if args.key?(:port)
7333
+ @port_name = args[:port_name] if args.key?(:port_name)
7334
+ @port_specification = args[:port_specification] if args.key?(:port_specification)
7335
+ end
7336
+ end
7337
+
7240
7338
  #
7241
7339
  class GlobalNetworkEndpointGroupsAttachEndpointsRequest
7242
7340
  include Google::Apis::Core::Hashable
@@ -7734,6 +7832,11 @@ module Google
7734
7832
  # @return [String]
7735
7833
  attr_accessor :description
7736
7834
 
7835
+ #
7836
+ # Corresponds to the JSON property `grpcHealthCheck`
7837
+ # @return [Google::Apis::ComputeV1::GrpcHealthCheck]
7838
+ attr_accessor :grpc_health_check
7839
+
7737
7840
  # A so-far unhealthy instance will be marked healthy after this many consecutive
7738
7841
  # successes. The default value is 2.
7739
7842
  # Corresponds to the JSON property `healthyThreshold`
@@ -7766,6 +7869,12 @@ module Google
7766
7869
  # @return [String]
7767
7870
  attr_accessor :kind
7768
7871
 
7872
+ # Configuration of logging on a health check. If logging is enabled, logs will
7873
+ # be exported to Stackdriver.
7874
+ # Corresponds to the JSON property `logConfig`
7875
+ # @return [Google::Apis::ComputeV1::HealthCheckLogConfig]
7876
+ attr_accessor :log_config
7877
+
7769
7878
  # Name of the resource. Provided by the client when the resource is created. The
7770
7879
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
7771
7880
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -7826,12 +7935,14 @@ module Google
7826
7935
  @check_interval_sec = args[:check_interval_sec] if args.key?(:check_interval_sec)
7827
7936
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
7828
7937
  @description = args[:description] if args.key?(:description)
7938
+ @grpc_health_check = args[:grpc_health_check] if args.key?(:grpc_health_check)
7829
7939
  @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold)
7830
7940
  @http2_health_check = args[:http2_health_check] if args.key?(:http2_health_check)
7831
7941
  @http_health_check = args[:http_health_check] if args.key?(:http_health_check)
7832
7942
  @https_health_check = args[:https_health_check] if args.key?(:https_health_check)
7833
7943
  @id = args[:id] if args.key?(:id)
7834
7944
  @kind = args[:kind] if args.key?(:kind)
7945
+ @log_config = args[:log_config] if args.key?(:log_config)
7835
7946
  @name = args[:name] if args.key?(:name)
7836
7947
  @region = args[:region] if args.key?(:region)
7837
7948
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -7960,6 +8071,28 @@ module Google
7960
8071
  end
7961
8072
  end
7962
8073
 
8074
+ # Configuration of logging on a health check. If logging is enabled, logs will
8075
+ # be exported to Stackdriver.
8076
+ class HealthCheckLogConfig
8077
+ include Google::Apis::Core::Hashable
8078
+
8079
+ # Indicates whether or not to export logs. This is false by default, which means
8080
+ # no health check logging will be done.
8081
+ # Corresponds to the JSON property `enable`
8082
+ # @return [Boolean]
8083
+ attr_accessor :enable
8084
+ alias_method :enable?, :enable
8085
+
8086
+ def initialize(**args)
8087
+ update!(**args)
8088
+ end
8089
+
8090
+ # Update properties of this object
8091
+ def update!(**args)
8092
+ @enable = args[:enable] if args.key?(:enable)
8093
+ end
8094
+ end
8095
+
7963
8096
  # A full or valid partial URL to a health check. For example, the following are
7964
8097
  # valid URLs:
7965
8098
  # - https://www.googleapis.com/compute/beta/projects/project-id/global/
@@ -7984,6 +8117,270 @@ module Google
7984
8117
  end
7985
8118
  end
7986
8119
 
8120
+ # Represents a Health-Check as a Service resource.
8121
+ # (== resource_for `$api_version`.regionHealthCheckServices ==)
8122
+ class HealthCheckService
8123
+ include Google::Apis::Core::Hashable
8124
+
8125
+ # [Output Only] Creation timestamp in RFC3339 text format.
8126
+ # Corresponds to the JSON property `creationTimestamp`
8127
+ # @return [String]
8128
+ attr_accessor :creation_timestamp
8129
+
8130
+ # An optional description of this resource. Provide this property when you
8131
+ # create the resource.
8132
+ # Corresponds to the JSON property `description`
8133
+ # @return [String]
8134
+ attr_accessor :description
8135
+
8136
+ # Fingerprint of this resource. A hash of the contents stored in this object.
8137
+ # This field is used in optimistic locking. This field will be ignored when
8138
+ # inserting a HealthCheckService. An up-to-date fingerprint must be provided in
8139
+ # order to patch/update the HealthCheckService; Otherwise, the request will fail
8140
+ # with error 412 conditionNotMet. To see the latest fingerprint, make a get()
8141
+ # request to retrieve the HealthCheckService.
8142
+ # Corresponds to the JSON property `fingerprint`
8143
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
8144
+ # @return [String]
8145
+ attr_accessor :fingerprint
8146
+
8147
+ # List of URLs to the HealthCheck resources. Must have at least one HealthCheck,
8148
+ # and not more than 10. HealthCheck resources must have portSpecification=
8149
+ # USE_SERVING_PORT. For regional HealthCheckService, the HealthCheck must be
8150
+ # regional and in the same region. For global HealthCheckService, HealthCheck
8151
+ # must be global. Mix of regional and global HealthChecks is not supported.
8152
+ # Multiple regional HealthChecks must belong to the same region. Regional
8153
+ # HealthChecks</code? must belong to the same region as zones of NEGs.
8154
+ # Corresponds to the JSON property `healthChecks`
8155
+ # @return [Array<String>]
8156
+ attr_accessor :health_checks
8157
+
8158
+ # Optional. Policy for how the results from multiple health checks for the same
8159
+ # endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified.
8160
+ # - NO_AGGREGATION. An EndpointHealth message is returned for each backend in
8161
+ # the health check service.
8162
+ # - AND. If any backend's health check reports UNHEALTHY, then UNHEALTHY is the
8163
+ # HealthState of the entire health check service. If all backend's are healthy,
8164
+ # the HealthState of the health check service is HEALTHY. .
8165
+ # Corresponds to the JSON property `healthStatusAggregationPolicy`
8166
+ # @return [String]
8167
+ attr_accessor :health_status_aggregation_policy
8168
+
8169
+ # [Output Only] The unique identifier for the resource. This identifier is
8170
+ # defined by the server.
8171
+ # Corresponds to the JSON property `id`
8172
+ # @return [Fixnum]
8173
+ attr_accessor :id
8174
+
8175
+ # [Output only] Type of the resource. Always compute#healthCheckServicefor
8176
+ # health check services.
8177
+ # Corresponds to the JSON property `kind`
8178
+ # @return [String]
8179
+ attr_accessor :kind
8180
+
8181
+ # Name of the resource. The name must be 1-63 characters long, and comply with
8182
+ # RFC1035. Specifically, the name must be 1-63 characters long and match the
8183
+ # regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
8184
+ # character must be a lowercase letter, and all following characters must be a
8185
+ # dash, lowercase letter, or digit, except the last character, which cannot be a
8186
+ # dash.
8187
+ # Corresponds to the JSON property `name`
8188
+ # @return [String]
8189
+ attr_accessor :name
8190
+
8191
+ # List of URLs to the NetworkEndpointGroup resources. Must not have more than
8192
+ # 100. For regional HealthCheckService, NEGs must be in zones in the region of
8193
+ # the HealthCheckService.
8194
+ # Corresponds to the JSON property `networkEndpointGroups`
8195
+ # @return [Array<String>]
8196
+ attr_accessor :network_endpoint_groups
8197
+
8198
+ # List of URLs to the NotificationEndpoint resources. Must not have more than 10.
8199
+ # A list of endpoints for receiving notifications of change in health status.
8200
+ # For regional HealthCheckService, NotificationEndpoint must be regional and in
8201
+ # the same region. For global HealthCheckService, NotificationEndpoint must be
8202
+ # global.
8203
+ # Corresponds to the JSON property `notificationEndpoints`
8204
+ # @return [Array<String>]
8205
+ attr_accessor :notification_endpoints
8206
+
8207
+ # [Output Only] URL of the region where the health check service resides. This
8208
+ # field is not applicable to global health check services. You must specify this
8209
+ # field as part of the HTTP request URL. It is not settable as a field in the
8210
+ # request body.
8211
+ # Corresponds to the JSON property `region`
8212
+ # @return [String]
8213
+ attr_accessor :region
8214
+
8215
+ # [Output Only] Server-defined URL for the resource.
8216
+ # Corresponds to the JSON property `selfLink`
8217
+ # @return [String]
8218
+ attr_accessor :self_link
8219
+
8220
+ def initialize(**args)
8221
+ update!(**args)
8222
+ end
8223
+
8224
+ # Update properties of this object
8225
+ def update!(**args)
8226
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
8227
+ @description = args[:description] if args.key?(:description)
8228
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
8229
+ @health_checks = args[:health_checks] if args.key?(:health_checks)
8230
+ @health_status_aggregation_policy = args[:health_status_aggregation_policy] if args.key?(:health_status_aggregation_policy)
8231
+ @id = args[:id] if args.key?(:id)
8232
+ @kind = args[:kind] if args.key?(:kind)
8233
+ @name = args[:name] if args.key?(:name)
8234
+ @network_endpoint_groups = args[:network_endpoint_groups] if args.key?(:network_endpoint_groups)
8235
+ @notification_endpoints = args[:notification_endpoints] if args.key?(:notification_endpoints)
8236
+ @region = args[:region] if args.key?(:region)
8237
+ @self_link = args[:self_link] if args.key?(:self_link)
8238
+ end
8239
+ end
8240
+
8241
+ # A full or valid partial URL to a health check service. For example, the
8242
+ # following are valid URLs:
8243
+ # - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/
8244
+ # healthCheckServices/health-check-service
8245
+ # - projects/project-id/regions/us-west1/healthCheckServices/health-check-
8246
+ # service
8247
+ # - regions/us-west1/healthCheckServices/health-check-service
8248
+ class HealthCheckServiceReference
8249
+ include Google::Apis::Core::Hashable
8250
+
8251
+ #
8252
+ # Corresponds to the JSON property `healthCheckService`
8253
+ # @return [String]
8254
+ attr_accessor :health_check_service
8255
+
8256
+ def initialize(**args)
8257
+ update!(**args)
8258
+ end
8259
+
8260
+ # Update properties of this object
8261
+ def update!(**args)
8262
+ @health_check_service = args[:health_check_service] if args.key?(:health_check_service)
8263
+ end
8264
+ end
8265
+
8266
+ #
8267
+ class HealthCheckServicesList
8268
+ include Google::Apis::Core::Hashable
8269
+
8270
+ # [Output Only] Unique identifier for the resource; defined by the server.
8271
+ # Corresponds to the JSON property `id`
8272
+ # @return [String]
8273
+ attr_accessor :id
8274
+
8275
+ # A list of HealthCheckService resources.
8276
+ # Corresponds to the JSON property `items`
8277
+ # @return [Array<Google::Apis::ComputeV1::HealthCheckService>]
8278
+ attr_accessor :items
8279
+
8280
+ # [Output Only] Type of the resource. Always compute#healthCheckServicesList for
8281
+ # lists of HealthCheckServices.
8282
+ # Corresponds to the JSON property `kind`
8283
+ # @return [String]
8284
+ attr_accessor :kind
8285
+
8286
+ # [Output Only] This token allows you to get the next page of results for list
8287
+ # requests. If the number of results is larger than maxResults, use the
8288
+ # nextPageToken as a value for the query parameter pageToken in the next list
8289
+ # request. Subsequent list requests will have their own nextPageToken to
8290
+ # continue paging through the results.
8291
+ # Corresponds to the JSON property `nextPageToken`
8292
+ # @return [String]
8293
+ attr_accessor :next_page_token
8294
+
8295
+ # [Output Only] Server-defined URL for this resource.
8296
+ # Corresponds to the JSON property `selfLink`
8297
+ # @return [String]
8298
+ attr_accessor :self_link
8299
+
8300
+ # [Output Only] Informational warning message.
8301
+ # Corresponds to the JSON property `warning`
8302
+ # @return [Google::Apis::ComputeV1::HealthCheckServicesList::Warning]
8303
+ attr_accessor :warning
8304
+
8305
+ def initialize(**args)
8306
+ update!(**args)
8307
+ end
8308
+
8309
+ # Update properties of this object
8310
+ def update!(**args)
8311
+ @id = args[:id] if args.key?(:id)
8312
+ @items = args[:items] if args.key?(:items)
8313
+ @kind = args[:kind] if args.key?(:kind)
8314
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8315
+ @self_link = args[:self_link] if args.key?(:self_link)
8316
+ @warning = args[:warning] if args.key?(:warning)
8317
+ end
8318
+
8319
+ # [Output Only] Informational warning message.
8320
+ class Warning
8321
+ include Google::Apis::Core::Hashable
8322
+
8323
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
8324
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
8325
+ # Corresponds to the JSON property `code`
8326
+ # @return [String]
8327
+ attr_accessor :code
8328
+
8329
+ # [Output Only] Metadata about this warning in key: value format. For example:
8330
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
8331
+ # Corresponds to the JSON property `data`
8332
+ # @return [Array<Google::Apis::ComputeV1::HealthCheckServicesList::Warning::Datum>]
8333
+ attr_accessor :data
8334
+
8335
+ # [Output Only] A human-readable description of the warning code.
8336
+ # Corresponds to the JSON property `message`
8337
+ # @return [String]
8338
+ attr_accessor :message
8339
+
8340
+ def initialize(**args)
8341
+ update!(**args)
8342
+ end
8343
+
8344
+ # Update properties of this object
8345
+ def update!(**args)
8346
+ @code = args[:code] if args.key?(:code)
8347
+ @data = args[:data] if args.key?(:data)
8348
+ @message = args[:message] if args.key?(:message)
8349
+ end
8350
+
8351
+ #
8352
+ class Datum
8353
+ include Google::Apis::Core::Hashable
8354
+
8355
+ # [Output Only] A key that provides more detail on the warning being returned.
8356
+ # For example, for warnings where there are no results in a list request for a
8357
+ # particular zone, this key might be scope and the key value might be the zone
8358
+ # name. Other examples might be a key indicating a deprecated resource and a
8359
+ # suggested replacement, or a warning about invalid network settings (for
8360
+ # example, if an instance attempts to perform IP forwarding but is not enabled
8361
+ # for IP forwarding).
8362
+ # Corresponds to the JSON property `key`
8363
+ # @return [String]
8364
+ attr_accessor :key
8365
+
8366
+ # [Output Only] A warning data value corresponding to the key.
8367
+ # Corresponds to the JSON property `value`
8368
+ # @return [String]
8369
+ attr_accessor :value
8370
+
8371
+ def initialize(**args)
8372
+ update!(**args)
8373
+ end
8374
+
8375
+ # Update properties of this object
8376
+ def update!(**args)
8377
+ @key = args[:key] if args.key?(:key)
8378
+ @value = args[:value] if args.key?(:value)
8379
+ end
8380
+ end
8381
+ end
8382
+ end
8383
+
7987
8384
  #
7988
8385
  class HealthChecksAggregatedList
7989
8386
  include Google::Apis::Core::Hashable
@@ -8196,6 +8593,11 @@ module Google
8196
8593
  class HealthStatus
8197
8594
  include Google::Apis::Core::Hashable
8198
8595
 
8596
+ # Metadata defined as annotations for network endpoint.
8597
+ # Corresponds to the JSON property `annotations`
8598
+ # @return [Hash<String,String>]
8599
+ attr_accessor :annotations
8600
+
8199
8601
  # Health state of the instance.
8200
8602
  # Corresponds to the JSON property `healthState`
8201
8603
  # @return [String]
@@ -8223,6 +8625,7 @@ module Google
8223
8625
 
8224
8626
  # Update properties of this object
8225
8627
  def update!(**args)
8628
+ @annotations = args[:annotations] if args.key?(:annotations)
8226
8629
  @health_state = args[:health_state] if args.key?(:health_state)
8227
8630
  @instance = args[:instance] if args.key?(:instance)
8228
8631
  @ip_address = args[:ip_address] if args.key?(:ip_address)
@@ -8256,6 +8659,17 @@ module Google
8256
8659
  # @return [Google::Apis::ComputeV1::HealthCheckReference]
8257
8660
  attr_accessor :health_check
8258
8661
 
8662
+ # A full or valid partial URL to a health check service. For example, the
8663
+ # following are valid URLs:
8664
+ # - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/
8665
+ # healthCheckServices/health-check-service
8666
+ # - projects/project-id/regions/us-west1/healthCheckServices/health-check-
8667
+ # service
8668
+ # - regions/us-west1/healthCheckServices/health-check-service
8669
+ # Corresponds to the JSON property `healthCheckService`
8670
+ # @return [Google::Apis::ComputeV1::HealthCheckServiceReference]
8671
+ attr_accessor :health_check_service
8672
+
8259
8673
  # Health state of the network endpoint determined based on the health checks
8260
8674
  # configured.
8261
8675
  # Corresponds to the JSON property `healthState`
@@ -8271,6 +8685,7 @@ module Google
8271
8685
  @backend_service = args[:backend_service] if args.key?(:backend_service)
8272
8686
  @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
8273
8687
  @health_check = args[:health_check] if args.key?(:health_check)
8688
+ @health_check_service = args[:health_check_service] if args.key?(:health_check_service)
8274
8689
  @health_state = args[:health_state] if args.key?(:health_state)
8275
8690
  end
8276
8691
  end
@@ -9585,11 +10000,13 @@ module Google
9585
10000
  # @return [String]
9586
10001
  attr_accessor :source_disk_id
9587
10002
 
9588
- # URL of the source image used to create this image. This can be a full or valid
9589
- # partial URL. You must provide exactly one of:
9590
- # - this property, or
9591
- # - the rawDisk.source property, or
9592
- # - the sourceDisk property in order to create an image.
10003
+ # URL of the source image used to create this image.
10004
+ # In order to create an image, you must provide the full or partial URL of one
10005
+ # of the following:
10006
+ # - The selfLink URL
10007
+ # - This property
10008
+ # - The rawDisk.source URL
10009
+ # - The sourceDisk URL
9593
10010
  # Corresponds to the JSON property `sourceImage`
9594
10011
  # @return [String]
9595
10012
  attr_accessor :source_image
@@ -9606,12 +10023,14 @@ module Google
9606
10023
  # @return [String]
9607
10024
  attr_accessor :source_image_id
9608
10025
 
9609
- # URL of the source snapshot used to create this image. This can be a full or
9610
- # valid partial URL. You must provide exactly one of:
9611
- # - this property, or
9612
- # - the sourceImage property, or
9613
- # - the rawDisk.source property, or
9614
- # - the sourceDisk property in order to create an image.
10026
+ # URL of the source snapshot used to create this image.
10027
+ # In order to create an image, you must provide the full or partial URL of one
10028
+ # of the following:
10029
+ # - The selfLink URL
10030
+ # - This property
10031
+ # - The sourceImage URL
10032
+ # - The rawDisk.source URL
10033
+ # - The sourceDisk URL
9615
10034
  # Corresponds to the JSON property `sourceSnapshot`
9616
10035
  # @return [String]
9617
10036
  attr_accessor :source_snapshot
@@ -10040,7 +10459,7 @@ module Google
10040
10459
  # @return [Array<String>]
10041
10460
  attr_accessor :resource_policies
10042
10461
 
10043
- # Sets the scheduling options for an Instance. NextID: 11
10462
+ # Sets the scheduling options for an Instance. NextID: 12
10044
10463
  # Corresponds to the JSON property `scheduling`
10045
10464
  # @return [Google::Apis::ComputeV1::Scheduling]
10046
10465
  attr_accessor :scheduling
@@ -12308,9 +12727,9 @@ module Google
12308
12727
  class InstanceProperties
12309
12728
  include Google::Apis::Core::Hashable
12310
12729
 
12311
- # Enables instances created based on this template to send packets with source
12312
- # IP addresses other than their own and receive packets with destination IP
12313
- # addresses other than their own. If these instances will be used as an IP
12730
+ # Enables instances created based on these properties to send packets with
12731
+ # source IP addresses other than their own and receive packets with destination
12732
+ # IP addresses other than their own. If these instances will be used as an IP
12314
12733
  # gateway or it will be set as the next-hop in a Route resource, specify true.
12315
12734
  # If unsure, leave this set to false. See the Enable IP forwarding documentation
12316
12735
  # for more information.
@@ -12319,30 +12738,30 @@ module Google
12319
12738
  attr_accessor :can_ip_forward
12320
12739
  alias_method :can_ip_forward?, :can_ip_forward
12321
12740
 
12322
- # An optional text description for the instances that are created from this
12323
- # instance template.
12741
+ # An optional text description for the instances that are created from these
12742
+ # properties.
12324
12743
  # Corresponds to the JSON property `description`
12325
12744
  # @return [String]
12326
12745
  attr_accessor :description
12327
12746
 
12328
12747
  # An array of disks that are associated with the instances that are created from
12329
- # this template.
12748
+ # these properties.
12330
12749
  # Corresponds to the JSON property `disks`
12331
12750
  # @return [Array<Google::Apis::ComputeV1::AttachedDisk>]
12332
12751
  attr_accessor :disks
12333
12752
 
12334
12753
  # A list of guest accelerator cards' type and count to use for instances created
12335
- # from the instance template.
12754
+ # from these properties.
12336
12755
  # Corresponds to the JSON property `guestAccelerators`
12337
12756
  # @return [Array<Google::Apis::ComputeV1::AcceleratorConfig>]
12338
12757
  attr_accessor :guest_accelerators
12339
12758
 
12340
- # Labels to apply to instances that are created from this template.
12759
+ # Labels to apply to instances that are created from these properties.
12341
12760
  # Corresponds to the JSON property `labels`
12342
12761
  # @return [Hash<String,String>]
12343
12762
  attr_accessor :labels
12344
12763
 
12345
- # The machine type to use for instances that are created from this template.
12764
+ # The machine type to use for instances that are created from these properties.
12346
12765
  # Corresponds to the JSON property `machineType`
12347
12766
  # @return [String]
12348
12767
  attr_accessor :machine_type
@@ -12352,11 +12771,11 @@ module Google
12352
12771
  # @return [Google::Apis::ComputeV1::Metadata]
12353
12772
  attr_accessor :metadata
12354
12773
 
12355
- # Minimum cpu/platform to be used by this instance. The instance may be
12356
- # scheduled on the specified or newer cpu/platform. Applicable values are the
12357
- # friendly names of CPU platforms, such as minCpuPlatform: "Intel Haswell" or
12358
- # minCpuPlatform: "Intel Sandy Bridge". For more information, read Specifying a
12359
- # Minimum CPU Platform.
12774
+ # Minimum cpu/platform to be used by instances. The instance may be scheduled on
12775
+ # the specified or newer cpu/platform. Applicable values are the friendly names
12776
+ # of CPU platforms, such as minCpuPlatform: "Intel Haswell" or minCpuPlatform: "
12777
+ # Intel Sandy Bridge". For more information, read Specifying a Minimum CPU
12778
+ # Platform.
12360
12779
  # Corresponds to the JSON property `minCpuPlatform`
12361
12780
  # @return [String]
12362
12781
  attr_accessor :min_cpu_platform
@@ -12366,7 +12785,7 @@ module Google
12366
12785
  # @return [Array<Google::Apis::ComputeV1::NetworkInterface>]
12367
12786
  attr_accessor :network_interfaces
12368
12787
 
12369
- # The private IPv6 google access type for the VM. If not specified, use
12788
+ # The private IPv6 google access type for VMs. If not specified, use
12370
12789
  # INHERIT_FROM_SUBNETWORK as default.
12371
12790
  # Corresponds to the JSON property `privateIpv6GoogleAccess`
12372
12791
  # @return [String]
@@ -12377,20 +12796,21 @@ module Google
12377
12796
  # @return [Google::Apis::ComputeV1::ReservationAffinity]
12378
12797
  attr_accessor :reservation_affinity
12379
12798
 
12380
- # Resource policies (names, not ULRs) applied to instances created from this
12381
- # template.
12799
+ # Resource policies (names, not ULRs) applied to instances created from these
12800
+ # properties.
12382
12801
  # Corresponds to the JSON property `resourcePolicies`
12383
12802
  # @return [Array<String>]
12384
12803
  attr_accessor :resource_policies
12385
12804
 
12386
- # Sets the scheduling options for an Instance. NextID: 11
12805
+ # Sets the scheduling options for an Instance. NextID: 12
12387
12806
  # Corresponds to the JSON property `scheduling`
12388
12807
  # @return [Google::Apis::ComputeV1::Scheduling]
12389
12808
  attr_accessor :scheduling
12390
12809
 
12391
12810
  # A list of service accounts with specified scopes. Access tokens for these
12392
- # service accounts are available to the instances that are created from this
12393
- # template. Use metadata queries to obtain the access tokens for these instances.
12811
+ # service accounts are available to the instances that are created from these
12812
+ # properties. Use metadata queries to obtain the access tokens for these
12813
+ # instances.
12394
12814
  # Corresponds to the JSON property `serviceAccounts`
12395
12815
  # @return [Array<Google::Apis::ComputeV1::ServiceAccount>]
12396
12816
  attr_accessor :service_accounts
@@ -13802,8 +14222,7 @@ module Google
13802
14222
  end
13803
14223
 
13804
14224
  # Describes a single physical circuit between the Customer and Google.
13805
- # CircuitInfo objects are created by Google, so all fields are output only. Next
13806
- # id: 4
14225
+ # CircuitInfo objects are created by Google, so all fields are output only.
13807
14226
  class InterconnectCircuitInfo
13808
14227
  include Google::Apis::Core::Hashable
13809
14228
 
@@ -14411,7 +14830,7 @@ module Google
14411
14830
  end
14412
14831
  end
14413
14832
 
14414
- # Description of a planned outage on this Interconnect. Next id: 9
14833
+ # Description of a planned outage on this Interconnect.
14415
14834
  class InterconnectOutageNotification
14416
14835
  include Google::Apis::Core::Hashable
14417
14836
 
@@ -15870,10 +16289,12 @@ module Google
15870
16289
  # @return [String]
15871
16290
  attr_accessor :i_pv4_range
15872
16291
 
15873
- # When set to true, the VPC network is created in "auto" mode. When set to false,
15874
- # the VPC network is created in "custom" mode.
16292
+ # When set to true, the VPC network is created in auto mode. When set to false,
16293
+ # the VPC network is created in custom mode.
15875
16294
  # An auto mode VPC network starts with one subnet per region. Each subnet has a
15876
16295
  # predetermined range as described in Auto mode VPC network IP ranges.
16296
+ # For custom mode VPC networks, you can add subnets using the subnetworks insert
16297
+ # method.
15877
16298
  # Corresponds to the JSON property `autoCreateSubnetworks`
15878
16299
  # @return [Boolean]
15879
16300
  attr_accessor :auto_create_subnetworks
@@ -15961,10 +16382,15 @@ module Google
15961
16382
  end
15962
16383
  end
15963
16384
 
15964
- # The network endpoint. Next ID: 7
16385
+ # The network endpoint.
15965
16386
  class NetworkEndpoint
15966
16387
  include Google::Apis::Core::Hashable
15967
16388
 
16389
+ # Metadata defined as annotations on the network endpoint.
16390
+ # Corresponds to the JSON property `annotations`
16391
+ # @return [Hash<String,String>]
16392
+ attr_accessor :annotations
16393
+
15968
16394
  # Optional fully qualified domain name of network endpoint. This can only be
15969
16395
  # specified when NetworkEndpointGroup.network_endpoint_type is NON_GCP_FQDN_PORT.
15970
16396
  # Corresponds to the JSON property `fqdn`
@@ -16001,6 +16427,7 @@ module Google
16001
16427
 
16002
16428
  # Update properties of this object
16003
16429
  def update!(**args)
16430
+ @annotations = args[:annotations] if args.key?(:annotations)
16004
16431
  @fqdn = args[:fqdn] if args.key?(:fqdn)
16005
16432
  @instance = args[:instance] if args.key?(:instance)
16006
16433
  @ip_address = args[:ip_address] if args.key?(:ip_address)
@@ -16017,6 +16444,11 @@ module Google
16017
16444
  class NetworkEndpointGroup
16018
16445
  include Google::Apis::Core::Hashable
16019
16446
 
16447
+ # Metadata defined as annotations on the network endpoint group.
16448
+ # Corresponds to the JSON property `annotations`
16449
+ # @return [Hash<String,String>]
16450
+ attr_accessor :annotations
16451
+
16020
16452
  # [Output Only] Creation timestamp in RFC3339 text format.
16021
16453
  # Corresponds to the JSON property `creationTimestamp`
16022
16454
  # @return [String]
@@ -16094,6 +16526,7 @@ module Google
16094
16526
 
16095
16527
  # Update properties of this object
16096
16528
  def update!(**args)
16529
+ @annotations = args[:annotations] if args.key?(:annotations)
16097
16530
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
16098
16531
  @default_port = args[:default_port] if args.key?(:default_port)
16099
16532
  @description = args[:description] if args.key?(:description)
@@ -16619,7 +17052,7 @@ module Google
16619
17052
  # @return [Array<Google::Apis::ComputeV1::HealthStatusForNetworkEndpoint>]
16620
17053
  attr_accessor :healths
16621
17054
 
16622
- # The network endpoint. Next ID: 7
17055
+ # The network endpoint.
16623
17056
  # Corresponds to the JSON property `networkEndpoint`
16624
17057
  # @return [Google::Apis::ComputeV1::NetworkEndpoint]
16625
17058
  attr_accessor :network_endpoint
@@ -17122,7 +17555,7 @@ module Google
17122
17555
  # @return [String]
17123
17556
  attr_accessor :name
17124
17557
 
17125
- # The URL of the node template to which this node group belongs.
17558
+ # URL of the node template to create the node group from.
17126
17559
  # Corresponds to the JSON property `nodeTemplate`
17127
17560
  # @return [String]
17128
17561
  attr_accessor :node_template
@@ -17756,7 +18189,7 @@ module Google
17756
18189
  # Represent a sole-tenant Node Template resource.
17757
18190
  # You can use a template to define properties for nodes in a node group. For
17758
18191
  # more information, read Creating node groups and instances. (== resource_for `$
17759
- # api_version`.nodeTemplates ==) (== NextID: 19 ==)
18192
+ # api_version`.nodeTemplates ==)
17760
18193
  class NodeTemplate
17761
18194
  include Google::Apis::Core::Hashable
17762
18195
 
@@ -18554,18 +18987,264 @@ module Google
18554
18987
  end
18555
18988
 
18556
18989
  #
18557
- class NodeTypesScopedList
18990
+ class NodeTypesScopedList
18991
+ include Google::Apis::Core::Hashable
18992
+
18993
+ # [Output Only] A list of node types contained in this scope.
18994
+ # Corresponds to the JSON property `nodeTypes`
18995
+ # @return [Array<Google::Apis::ComputeV1::NodeType>]
18996
+ attr_accessor :node_types
18997
+
18998
+ # [Output Only] An informational warning that appears when the node types list
18999
+ # is empty.
19000
+ # Corresponds to the JSON property `warning`
19001
+ # @return [Google::Apis::ComputeV1::NodeTypesScopedList::Warning]
19002
+ attr_accessor :warning
19003
+
19004
+ def initialize(**args)
19005
+ update!(**args)
19006
+ end
19007
+
19008
+ # Update properties of this object
19009
+ def update!(**args)
19010
+ @node_types = args[:node_types] if args.key?(:node_types)
19011
+ @warning = args[:warning] if args.key?(:warning)
19012
+ end
19013
+
19014
+ # [Output Only] An informational warning that appears when the node types list
19015
+ # is empty.
19016
+ class Warning
19017
+ include Google::Apis::Core::Hashable
19018
+
19019
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
19020
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
19021
+ # Corresponds to the JSON property `code`
19022
+ # @return [String]
19023
+ attr_accessor :code
19024
+
19025
+ # [Output Only] Metadata about this warning in key: value format. For example:
19026
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
19027
+ # Corresponds to the JSON property `data`
19028
+ # @return [Array<Google::Apis::ComputeV1::NodeTypesScopedList::Warning::Datum>]
19029
+ attr_accessor :data
19030
+
19031
+ # [Output Only] A human-readable description of the warning code.
19032
+ # Corresponds to the JSON property `message`
19033
+ # @return [String]
19034
+ attr_accessor :message
19035
+
19036
+ def initialize(**args)
19037
+ update!(**args)
19038
+ end
19039
+
19040
+ # Update properties of this object
19041
+ def update!(**args)
19042
+ @code = args[:code] if args.key?(:code)
19043
+ @data = args[:data] if args.key?(:data)
19044
+ @message = args[:message] if args.key?(:message)
19045
+ end
19046
+
19047
+ #
19048
+ class Datum
19049
+ include Google::Apis::Core::Hashable
19050
+
19051
+ # [Output Only] A key that provides more detail on the warning being returned.
19052
+ # For example, for warnings where there are no results in a list request for a
19053
+ # particular zone, this key might be scope and the key value might be the zone
19054
+ # name. Other examples might be a key indicating a deprecated resource and a
19055
+ # suggested replacement, or a warning about invalid network settings (for
19056
+ # example, if an instance attempts to perform IP forwarding but is not enabled
19057
+ # for IP forwarding).
19058
+ # Corresponds to the JSON property `key`
19059
+ # @return [String]
19060
+ attr_accessor :key
19061
+
19062
+ # [Output Only] A warning data value corresponding to the key.
19063
+ # Corresponds to the JSON property `value`
19064
+ # @return [String]
19065
+ attr_accessor :value
19066
+
19067
+ def initialize(**args)
19068
+ update!(**args)
19069
+ end
19070
+
19071
+ # Update properties of this object
19072
+ def update!(**args)
19073
+ @key = args[:key] if args.key?(:key)
19074
+ @value = args[:value] if args.key?(:value)
19075
+ end
19076
+ end
19077
+ end
19078
+ end
19079
+
19080
+ # Represents a notification endpoint.
19081
+ # A notification endpoint resource defines an endpoint to receive notifications
19082
+ # when there are status changes detected by the associated health check service.
19083
+ # For more information, see Health checks overview. (== resource_for `$
19084
+ # api_version`.notificationEndpoint ==) (== resource_for `$api_version`.
19085
+ # regionNotificationEndpoints ==)
19086
+ class NotificationEndpoint
19087
+ include Google::Apis::Core::Hashable
19088
+
19089
+ # [Output Only] Creation timestamp in RFC3339 text format.
19090
+ # Corresponds to the JSON property `creationTimestamp`
19091
+ # @return [String]
19092
+ attr_accessor :creation_timestamp
19093
+
19094
+ # An optional description of this resource. Provide this property when you
19095
+ # create the resource.
19096
+ # Corresponds to the JSON property `description`
19097
+ # @return [String]
19098
+ attr_accessor :description
19099
+
19100
+ # Represents a gRPC setting that describes one gRPC notification endpoint and
19101
+ # the retry duration attempting to send notification to this endpoint.
19102
+ # Corresponds to the JSON property `grpcSettings`
19103
+ # @return [Google::Apis::ComputeV1::NotificationEndpointGrpcSettings]
19104
+ attr_accessor :grpc_settings
19105
+
19106
+ # [Output Only] A unique identifier for this resource type. The server generates
19107
+ # this identifier.
19108
+ # Corresponds to the JSON property `id`
19109
+ # @return [Fixnum]
19110
+ attr_accessor :id
19111
+
19112
+ # [Output Only] Type of the resource. Always compute#notificationEndpoint for
19113
+ # notification endpoints.
19114
+ # Corresponds to the JSON property `kind`
19115
+ # @return [String]
19116
+ attr_accessor :kind
19117
+
19118
+ # Name of the resource. Provided by the client when the resource is created. The
19119
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
19120
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
19121
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
19122
+ # and all following characters must be a dash, lowercase letter, or digit,
19123
+ # except the last character, which cannot be a dash.
19124
+ # Corresponds to the JSON property `name`
19125
+ # @return [String]
19126
+ attr_accessor :name
19127
+
19128
+ # [Output Only] URL of the region where the notification endpoint resides. This
19129
+ # field applies only to the regional resource. You must specify this field as
19130
+ # part of the HTTP request URL. It is not settable as a field in the request
19131
+ # body.
19132
+ # Corresponds to the JSON property `region`
19133
+ # @return [String]
19134
+ attr_accessor :region
19135
+
19136
+ # [Output Only] Server-defined URL for the resource.
19137
+ # Corresponds to the JSON property `selfLink`
19138
+ # @return [String]
19139
+ attr_accessor :self_link
19140
+
19141
+ def initialize(**args)
19142
+ update!(**args)
19143
+ end
19144
+
19145
+ # Update properties of this object
19146
+ def update!(**args)
19147
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
19148
+ @description = args[:description] if args.key?(:description)
19149
+ @grpc_settings = args[:grpc_settings] if args.key?(:grpc_settings)
19150
+ @id = args[:id] if args.key?(:id)
19151
+ @kind = args[:kind] if args.key?(:kind)
19152
+ @name = args[:name] if args.key?(:name)
19153
+ @region = args[:region] if args.key?(:region)
19154
+ @self_link = args[:self_link] if args.key?(:self_link)
19155
+ end
19156
+ end
19157
+
19158
+ # Represents a gRPC setting that describes one gRPC notification endpoint and
19159
+ # the retry duration attempting to send notification to this endpoint.
19160
+ class NotificationEndpointGrpcSettings
19161
+ include Google::Apis::Core::Hashable
19162
+
19163
+ # Optional. If specified, this field is used to set the authority header by the
19164
+ # sender of notifications. See https://tools.ietf.org/html/rfc7540#section-8.1.2.
19165
+ # 3
19166
+ # Corresponds to the JSON property `authority`
19167
+ # @return [String]
19168
+ attr_accessor :authority
19169
+
19170
+ # Endpoint to which gRPC notifications are sent. This must be a valid gRPCLB DNS
19171
+ # name.
19172
+ # Corresponds to the JSON property `endpoint`
19173
+ # @return [String]
19174
+ attr_accessor :endpoint
19175
+
19176
+ # Optional. If specified, this field is used to populate the "name" field in
19177
+ # gRPC requests.
19178
+ # Corresponds to the JSON property `payloadName`
19179
+ # @return [String]
19180
+ attr_accessor :payload_name
19181
+
19182
+ # A Duration represents a fixed-length span of time represented as a count of
19183
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
19184
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
19185
+ # 000 years.
19186
+ # Corresponds to the JSON property `resendInterval`
19187
+ # @return [Google::Apis::ComputeV1::Duration]
19188
+ attr_accessor :resend_interval
19189
+
19190
+ # How much time (in seconds) is spent attempting notification retries until a
19191
+ # successful response is received. Default is 30s. Limit is 20m (1200s). Must be
19192
+ # a positive number.
19193
+ # Corresponds to the JSON property `retryDurationSec`
19194
+ # @return [Fixnum]
19195
+ attr_accessor :retry_duration_sec
19196
+
19197
+ def initialize(**args)
19198
+ update!(**args)
19199
+ end
19200
+
19201
+ # Update properties of this object
19202
+ def update!(**args)
19203
+ @authority = args[:authority] if args.key?(:authority)
19204
+ @endpoint = args[:endpoint] if args.key?(:endpoint)
19205
+ @payload_name = args[:payload_name] if args.key?(:payload_name)
19206
+ @resend_interval = args[:resend_interval] if args.key?(:resend_interval)
19207
+ @retry_duration_sec = args[:retry_duration_sec] if args.key?(:retry_duration_sec)
19208
+ end
19209
+ end
19210
+
19211
+ #
19212
+ class NotificationEndpointList
18558
19213
  include Google::Apis::Core::Hashable
18559
19214
 
18560
- # [Output Only] A list of node types contained in this scope.
18561
- # Corresponds to the JSON property `nodeTypes`
18562
- # @return [Array<Google::Apis::ComputeV1::NodeType>]
18563
- attr_accessor :node_types
19215
+ # [Output Only] Unique identifier for the resource; defined by the server.
19216
+ # Corresponds to the JSON property `id`
19217
+ # @return [String]
19218
+ attr_accessor :id
18564
19219
 
18565
- # [Output Only] An informational warning that appears when the node types list
18566
- # is empty.
19220
+ # A list of NotificationEndpoint resources.
19221
+ # Corresponds to the JSON property `items`
19222
+ # @return [Array<Google::Apis::ComputeV1::NotificationEndpoint>]
19223
+ attr_accessor :items
19224
+
19225
+ # [Output Only] Type of the resource. Always compute#notificationEndpoint for
19226
+ # notification endpoints.
19227
+ # Corresponds to the JSON property `kind`
19228
+ # @return [String]
19229
+ attr_accessor :kind
19230
+
19231
+ # [Output Only] This token allows you to get the next page of results for list
19232
+ # requests. If the number of results is larger than maxResults, use the
19233
+ # nextPageToken as a value for the query parameter pageToken in the next list
19234
+ # request. Subsequent list requests will have their own nextPageToken to
19235
+ # continue paging through the results.
19236
+ # Corresponds to the JSON property `nextPageToken`
19237
+ # @return [String]
19238
+ attr_accessor :next_page_token
19239
+
19240
+ # [Output Only] Server-defined URL for this resource.
19241
+ # Corresponds to the JSON property `selfLink`
19242
+ # @return [String]
19243
+ attr_accessor :self_link
19244
+
19245
+ # [Output Only] Informational warning message.
18567
19246
  # Corresponds to the JSON property `warning`
18568
- # @return [Google::Apis::ComputeV1::NodeTypesScopedList::Warning]
19247
+ # @return [Google::Apis::ComputeV1::NotificationEndpointList::Warning]
18569
19248
  attr_accessor :warning
18570
19249
 
18571
19250
  def initialize(**args)
@@ -18574,12 +19253,15 @@ module Google
18574
19253
 
18575
19254
  # Update properties of this object
18576
19255
  def update!(**args)
18577
- @node_types = args[:node_types] if args.key?(:node_types)
19256
+ @id = args[:id] if args.key?(:id)
19257
+ @items = args[:items] if args.key?(:items)
19258
+ @kind = args[:kind] if args.key?(:kind)
19259
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
19260
+ @self_link = args[:self_link] if args.key?(:self_link)
18578
19261
  @warning = args[:warning] if args.key?(:warning)
18579
19262
  end
18580
19263
 
18581
- # [Output Only] An informational warning that appears when the node types list
18582
- # is empty.
19264
+ # [Output Only] Informational warning message.
18583
19265
  class Warning
18584
19266
  include Google::Apis::Core::Hashable
18585
19267
 
@@ -18592,7 +19274,7 @@ module Google
18592
19274
  # [Output Only] Metadata about this warning in key: value format. For example:
18593
19275
  # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
18594
19276
  # Corresponds to the JSON property `data`
18595
- # @return [Array<Google::Apis::ComputeV1::NodeTypesScopedList::Warning::Datum>]
19277
+ # @return [Array<Google::Apis::ComputeV1::NotificationEndpointList::Warning::Datum>]
18596
19278
  attr_accessor :data
18597
19279
 
18598
19280
  # [Output Only] A human-readable description of the warning code.
@@ -20012,6 +20694,8 @@ module Google
20012
20694
  # defaultService must not be set. Conversely if defaultService is set,
20013
20695
  # defaultRouteAction cannot contain any weightedBackendServices.
20014
20696
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
20697
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
20698
+ # within a pathMatcher's defaultRouteAction.
20015
20699
  # Corresponds to the JSON property `defaultRouteAction`
20016
20700
  # @return [Google::Apis::ComputeV1::HttpRouteAction]
20017
20701
  attr_accessor :default_route_action
@@ -20115,6 +20799,8 @@ module Google
20115
20799
  # weightedBackendServices, service must not be set. Conversely if service is set,
20116
20800
  # routeAction cannot contain any weightedBackendServices.
20117
20801
  # Only one of routeAction or urlRedirect must be set.
20802
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
20803
+ # within a pathRule's routeAction.
20118
20804
  # Corresponds to the JSON property `routeAction`
20119
20805
  # @return [Google::Apis::ComputeV1::HttpRouteAction]
20120
20806
  attr_accessor :route_action
@@ -24345,7 +25031,7 @@ module Google
24345
25031
  end
24346
25032
  end
24347
25033
 
24348
- # Status of a NAT contained in this router. Next tag: 9
25034
+ # Status of a NAT contained in this router.
24349
25035
  class RouterStatusNatStatus
24350
25036
  include Google::Apis::Core::Hashable
24351
25037
 
@@ -24673,7 +25359,7 @@ module Google
24673
25359
  end
24674
25360
  end
24675
25361
 
24676
- # Sets the scheduling options for an Instance. NextID: 11
25362
+ # Sets the scheduling options for an Instance. NextID: 12
24677
25363
  class Scheduling
24678
25364
  include Google::Apis::Core::Hashable
24679
25365
 
@@ -24703,8 +25389,9 @@ module Google
24703
25389
  attr_accessor :on_host_maintenance
24704
25390
 
24705
25391
  # Defines whether the instance is preemptible. This can only be set during
24706
- # instance creation, it cannot be set or changed after the instance has been
24707
- # created.
25392
+ # instance creation or while the instance is stopped and therefore, in a `
25393
+ # TERMINATED` state. See Instance Life Cycle for more information on the
25394
+ # possible instance states.
24708
25395
  # Corresponds to the JSON property `preemptible`
24709
25396
  # @return [Boolean]
24710
25397
  attr_accessor :preemptible
@@ -25701,9 +26388,9 @@ module Google
25701
26388
  # to five PEM-encoded certificates. The API call creates an object (
25702
26389
  # sslCertificate) that holds this data. You can use SSL keys and certificates to
25703
26390
  # secure connections to a load balancer. For more information, read Creating
25704
- # and using SSL certificates and SSL certificates quotas and limits. (==
25705
- # resource_for `$api_version`.sslCertificates ==) (== resource_for `$api_version`
25706
- # .regionSslCertificates ==)
26391
+ # and using SSL certificates, SSL certificates quotas and limits, and
26392
+ # Troubleshooting SSL certificates. (== resource_for `$api_version`.
26393
+ # sslCertificates ==) (== resource_for `$api_version`.regionSslCertificates ==)
25707
26394
  class SslCertificate
25708
26395
  include Google::Apis::Core::Hashable
25709
26396
 
@@ -26586,7 +27273,8 @@ module Google
26586
27273
  # The range of internal addresses that are owned by this subnetwork. Provide
26587
27274
  # this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.
26588
27275
  # 168.0.0/16. Ranges must be unique and non-overlapping within a network. Only
26589
- # IPv4 is supported. This field can be set only at resource creation time.
27276
+ # IPv4 is supported. This field is set at resource creation time. The range can
27277
+ # be expanded after creation using expandIpCidrRange.
26590
27278
  # Corresponds to the JSON property `ipCidrRange`
26591
27279
  # @return [String]
26592
27280
  attr_accessor :ip_cidr_range
@@ -27277,6 +27965,225 @@ module Google
27277
27965
  end
27278
27966
  end
27279
27967
 
27968
+ # Represents a Target gRPC Proxy resource.
27969
+ # A target gRPC proxy is a component of load balancers intended for load
27970
+ # balancing gRPC traffic. Global forwarding rules reference a target gRPC proxy.
27971
+ # The Target gRPC Proxy references a URL map which specifies how traffic routes
27972
+ # to gRPC backend services.
27973
+ class TargetGrpcProxy
27974
+ include Google::Apis::Core::Hashable
27975
+
27976
+ # [Output Only] Creation timestamp in RFC3339 text format.
27977
+ # Corresponds to the JSON property `creationTimestamp`
27978
+ # @return [String]
27979
+ attr_accessor :creation_timestamp
27980
+
27981
+ # An optional description of this resource. Provide this property when you
27982
+ # create the resource.
27983
+ # Corresponds to the JSON property `description`
27984
+ # @return [String]
27985
+ attr_accessor :description
27986
+
27987
+ # Fingerprint of this resource. A hash of the contents stored in this object.
27988
+ # This field is used in optimistic locking. This field will be ignored when
27989
+ # inserting a TargetGrpcProxy. An up-to-date fingerprint must be provided in
27990
+ # order to patch/update the TargetGrpcProxy; otherwise, the request will fail
27991
+ # with error 412 conditionNotMet. To see the latest fingerprint, make a get()
27992
+ # request to retrieve the TargetGrpcProxy.
27993
+ # Corresponds to the JSON property `fingerprint`
27994
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
27995
+ # @return [String]
27996
+ attr_accessor :fingerprint
27997
+
27998
+ # [Output Only] The unique identifier for the resource type. The server
27999
+ # generates this identifier.
28000
+ # Corresponds to the JSON property `id`
28001
+ # @return [Fixnum]
28002
+ attr_accessor :id
28003
+
28004
+ # [Output Only] Type of the resource. Always compute#targetGrpcProxy for target
28005
+ # grpc proxies.
28006
+ # Corresponds to the JSON property `kind`
28007
+ # @return [String]
28008
+ attr_accessor :kind
28009
+
28010
+ # Name of the resource. Provided by the client when the resource is created. The
28011
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
28012
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
28013
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
28014
+ # and all following characters must be a dash, lowercase letter, or digit,
28015
+ # except the last character, which cannot be a dash.
28016
+ # Corresponds to the JSON property `name`
28017
+ # @return [String]
28018
+ attr_accessor :name
28019
+
28020
+ # [Output Only] Server-defined URL for the resource.
28021
+ # Corresponds to the JSON property `selfLink`
28022
+ # @return [String]
28023
+ attr_accessor :self_link
28024
+
28025
+ # [Output Only] Server-defined URL with id for the resource.
28026
+ # Corresponds to the JSON property `selfLinkWithId`
28027
+ # @return [String]
28028
+ attr_accessor :self_link_with_id
28029
+
28030
+ # URL to the UrlMap resource that defines the mapping from URL to the
28031
+ # BackendService. The protocol field in the BackendService must be set to GRPC.
28032
+ # Corresponds to the JSON property `urlMap`
28033
+ # @return [String]
28034
+ attr_accessor :url_map
28035
+
28036
+ # If true, indicates that the BackendServices referenced by the urlMap may be
28037
+ # accessed by gRPC applications without using a sidecar proxy. This will enable
28038
+ # configuration checks on urlMap and its referenced BackendServices to not allow
28039
+ # unsupported features. A gRPC application must use "xds-experimental:///"
28040
+ # scheme in the target URI of the service it is connecting to. If false,
28041
+ # indicates that the BackendServices referenced by the urlMap will be accessed
28042
+ # by gRPC applications via a sidecar proxy. In this case, a gRPC application
28043
+ # must not use "xds-experimental:///" scheme in the target URI of the service it
28044
+ # is connecting to
28045
+ # Corresponds to the JSON property `validateForProxyless`
28046
+ # @return [Boolean]
28047
+ attr_accessor :validate_for_proxyless
28048
+ alias_method :validate_for_proxyless?, :validate_for_proxyless
28049
+
28050
+ def initialize(**args)
28051
+ update!(**args)
28052
+ end
28053
+
28054
+ # Update properties of this object
28055
+ def update!(**args)
28056
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
28057
+ @description = args[:description] if args.key?(:description)
28058
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
28059
+ @id = args[:id] if args.key?(:id)
28060
+ @kind = args[:kind] if args.key?(:kind)
28061
+ @name = args[:name] if args.key?(:name)
28062
+ @self_link = args[:self_link] if args.key?(:self_link)
28063
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
28064
+ @url_map = args[:url_map] if args.key?(:url_map)
28065
+ @validate_for_proxyless = args[:validate_for_proxyless] if args.key?(:validate_for_proxyless)
28066
+ end
28067
+ end
28068
+
28069
+ #
28070
+ class TargetGrpcProxyList
28071
+ include Google::Apis::Core::Hashable
28072
+
28073
+ # [Output Only] Unique identifier for the resource; defined by the server.
28074
+ # Corresponds to the JSON property `id`
28075
+ # @return [String]
28076
+ attr_accessor :id
28077
+
28078
+ # A list of TargetGrpcProxy resources.
28079
+ # Corresponds to the JSON property `items`
28080
+ # @return [Array<Google::Apis::ComputeV1::TargetGrpcProxy>]
28081
+ attr_accessor :items
28082
+
28083
+ # [Output Only] Type of the resource. Always compute#targetGrpcProxy for target
28084
+ # grpc proxies.
28085
+ # Corresponds to the JSON property `kind`
28086
+ # @return [String]
28087
+ attr_accessor :kind
28088
+
28089
+ # [Output Only] This token allows you to get the next page of results for list
28090
+ # requests. If the number of results is larger than maxResults, use the
28091
+ # nextPageToken as a value for the query parameter pageToken in the next list
28092
+ # request. Subsequent list requests will have their own nextPageToken to
28093
+ # continue paging through the results.
28094
+ # Corresponds to the JSON property `nextPageToken`
28095
+ # @return [String]
28096
+ attr_accessor :next_page_token
28097
+
28098
+ # [Output Only] Server-defined URL for this resource.
28099
+ # Corresponds to the JSON property `selfLink`
28100
+ # @return [String]
28101
+ attr_accessor :self_link
28102
+
28103
+ # [Output Only] Informational warning message.
28104
+ # Corresponds to the JSON property `warning`
28105
+ # @return [Google::Apis::ComputeV1::TargetGrpcProxyList::Warning]
28106
+ attr_accessor :warning
28107
+
28108
+ def initialize(**args)
28109
+ update!(**args)
28110
+ end
28111
+
28112
+ # Update properties of this object
28113
+ def update!(**args)
28114
+ @id = args[:id] if args.key?(:id)
28115
+ @items = args[:items] if args.key?(:items)
28116
+ @kind = args[:kind] if args.key?(:kind)
28117
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
28118
+ @self_link = args[:self_link] if args.key?(:self_link)
28119
+ @warning = args[:warning] if args.key?(:warning)
28120
+ end
28121
+
28122
+ # [Output Only] Informational warning message.
28123
+ class Warning
28124
+ include Google::Apis::Core::Hashable
28125
+
28126
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
28127
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
28128
+ # Corresponds to the JSON property `code`
28129
+ # @return [String]
28130
+ attr_accessor :code
28131
+
28132
+ # [Output Only] Metadata about this warning in key: value format. For example:
28133
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
28134
+ # Corresponds to the JSON property `data`
28135
+ # @return [Array<Google::Apis::ComputeV1::TargetGrpcProxyList::Warning::Datum>]
28136
+ attr_accessor :data
28137
+
28138
+ # [Output Only] A human-readable description of the warning code.
28139
+ # Corresponds to the JSON property `message`
28140
+ # @return [String]
28141
+ attr_accessor :message
28142
+
28143
+ def initialize(**args)
28144
+ update!(**args)
28145
+ end
28146
+
28147
+ # Update properties of this object
28148
+ def update!(**args)
28149
+ @code = args[:code] if args.key?(:code)
28150
+ @data = args[:data] if args.key?(:data)
28151
+ @message = args[:message] if args.key?(:message)
28152
+ end
28153
+
28154
+ #
28155
+ class Datum
28156
+ include Google::Apis::Core::Hashable
28157
+
28158
+ # [Output Only] A key that provides more detail on the warning being returned.
28159
+ # For example, for warnings where there are no results in a list request for a
28160
+ # particular zone, this key might be scope and the key value might be the zone
28161
+ # name. Other examples might be a key indicating a deprecated resource and a
28162
+ # suggested replacement, or a warning about invalid network settings (for
28163
+ # example, if an instance attempts to perform IP forwarding but is not enabled
28164
+ # for IP forwarding).
28165
+ # Corresponds to the JSON property `key`
28166
+ # @return [String]
28167
+ attr_accessor :key
28168
+
28169
+ # [Output Only] A warning data value corresponding to the key.
28170
+ # Corresponds to the JSON property `value`
28171
+ # @return [String]
28172
+ attr_accessor :value
28173
+
28174
+ def initialize(**args)
28175
+ update!(**args)
28176
+ end
28177
+
28178
+ # Update properties of this object
28179
+ def update!(**args)
28180
+ @key = args[:key] if args.key?(:key)
28181
+ @value = args[:value] if args.key?(:value)
28182
+ end
28183
+ end
28184
+ end
28185
+ end
28186
+
27280
28187
  #
27281
28188
  class TargetHttpProxiesScopedList
27282
28189
  include Google::Apis::Core::Hashable
@@ -30119,6 +31026,8 @@ module Google
30119
31026
  # must not be set. Conversely if defaultService is set, defaultRouteAction
30120
31027
  # cannot contain any weightedBackendServices.
30121
31028
  # Only one of defaultRouteAction or defaultUrlRedirect must be set.
31029
+ # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
31030
+ # within defaultRouteAction.
30122
31031
  # Corresponds to the JSON property `defaultRouteAction`
30123
31032
  # @return [Google::Apis::ComputeV1::HttpRouteAction]
30124
31033
  attr_accessor :default_route_action