google-api-client 0.37.3 → 0.38.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (440) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +146 -0
  3. data/api_list_config.yaml +2 -0
  4. data/api_names.yaml +2 -0
  5. data/bin/generate-api +9 -1
  6. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  7. data/generated/google/apis/accesscontextmanager_v1/classes.rb +0 -36
  8. data/generated/google/apis/accesscontextmanager_v1/representations.rb +0 -6
  9. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  10. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +0 -36
  11. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +0 -6
  12. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  13. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +10 -3
  14. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  15. data/generated/google/apis/admin_directory_v1.rb +1 -1
  16. data/generated/google/apis/admin_directory_v1/classes.rb +0 -147
  17. data/generated/google/apis/admin_directory_v1/representations.rb +0 -54
  18. data/generated/google/apis/admin_directory_v1/service.rb +0 -60
  19. data/generated/google/apis/adsense_v1_4.rb +1 -1
  20. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  21. data/generated/google/apis/adsensehost_v4_1/service.rb +5 -1
  22. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  23. data/generated/google/apis/alertcenter_v1beta1/classes.rb +1 -1
  24. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  25. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +2 -2
  26. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  27. data/generated/google/apis/androidenterprise_v1/classes.rb +2 -2
  28. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  29. data/generated/google/apis/androidmanagement_v1/service.rb +2 -2
  30. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  31. data/generated/google/apis/androidpublisher_v2/classes.rb +2 -2
  32. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  33. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -2
  34. data/generated/google/apis/appengine_v1.rb +1 -1
  35. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  36. data/generated/google/apis/appengine_v1beta.rb +1 -1
  37. data/generated/google/apis/bigquery_v2.rb +1 -1
  38. data/generated/google/apis/bigquery_v2/classes.rb +224 -5
  39. data/generated/google/apis/bigquery_v2/representations.rb +65 -0
  40. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  41. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  42. data/generated/google/apis/bigqueryreservation_v1/classes.rb +413 -0
  43. data/generated/google/apis/bigqueryreservation_v1/representations.rb +194 -0
  44. data/generated/google/apis/bigqueryreservation_v1/service.rb +745 -0
  45. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  46. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +69 -20
  47. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +29 -13
  48. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +4 -39
  49. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  50. data/generated/google/apis/bigtableadmin_v1/classes.rb +20 -17
  51. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  52. data/generated/google/apis/bigtableadmin_v2/classes.rb +26 -21
  53. data/generated/google/apis/bigtableadmin_v2/service.rb +93 -53
  54. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  55. data/generated/google/apis/billingbudgets_v1beta1/service.rb +3 -3
  56. data/generated/google/apis/blogger_v2.rb +5 -4
  57. data/generated/google/apis/blogger_v2/classes.rb +297 -45
  58. data/generated/google/apis/blogger_v2/representations.rb +105 -26
  59. data/generated/google/apis/blogger_v2/service.rb +79 -134
  60. data/generated/google/apis/blogger_v3.rb +4 -3
  61. data/generated/google/apis/blogger_v3/classes.rb +60 -53
  62. data/generated/google/apis/blogger_v3/representations.rb +10 -18
  63. data/generated/google/apis/blogger_v3/service.rb +183 -463
  64. data/generated/google/apis/calendar_v3.rb +1 -1
  65. data/generated/google/apis/calendar_v3/classes.rb +1 -14
  66. data/generated/google/apis/chat_v1.rb +1 -1
  67. data/generated/google/apis/chat_v1/classes.rb +1 -1
  68. data/generated/google/apis/cloudasset_v1.rb +1 -1
  69. data/generated/google/apis/cloudasset_v1/classes.rb +81 -90
  70. data/generated/google/apis/cloudasset_v1/representations.rb +1 -6
  71. data/generated/google/apis/cloudasset_v1/service.rb +2 -2
  72. data/generated/google/apis/cloudasset_v1p1beta1.rb +34 -0
  73. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +669 -0
  74. data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +199 -0
  75. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +187 -0
  76. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  77. data/generated/google/apis/cloudbuild_v1/classes.rb +12 -1
  78. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  79. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  80. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +9 -0
  81. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +1 -0
  82. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  83. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +9 -0
  84. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +1 -0
  85. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  86. data/generated/google/apis/clouddebugger_v2/classes.rb +8 -0
  87. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  88. data/generated/google/apis/cloudidentity_v1/classes.rb +0 -561
  89. data/generated/google/apis/cloudidentity_v1/representations.rb +0 -226
  90. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  91. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +652 -2
  92. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +272 -0
  93. data/generated/google/apis/cloudidentity_v1beta1/service.rb +2 -2
  94. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  95. data/generated/google/apis/cloudresourcemanager_v1/service.rb +3 -0
  96. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  97. data/generated/google/apis/cloudsearch_v1/classes.rb +52 -50
  98. data/generated/google/apis/cloudshell_v1.rb +1 -1
  99. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  100. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  101. data/generated/google/apis/cloudtasks_v2beta2/service.rb +6 -1
  102. data/generated/google/apis/cloudtrace_v1.rb +3 -3
  103. data/generated/google/apis/cloudtrace_v1/service.rb +2 -2
  104. data/generated/google/apis/cloudtrace_v2.rb +3 -3
  105. data/generated/google/apis/cloudtrace_v2/service.rb +2 -2
  106. data/generated/google/apis/cloudtrace_v2beta1.rb +3 -3
  107. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +1 -2
  108. data/generated/google/apis/cloudtrace_v2beta1/service.rb +2 -2
  109. data/generated/google/apis/composer_v1.rb +1 -1
  110. data/generated/google/apis/composer_v1/classes.rb +178 -0
  111. data/generated/google/apis/composer_v1/representations.rb +54 -0
  112. data/generated/google/apis/composer_v1beta1.rb +1 -1
  113. data/generated/google/apis/composer_v1beta1/classes.rb +36 -5
  114. data/generated/google/apis/composer_v1beta1/representations.rb +4 -0
  115. data/generated/google/apis/compute_alpha.rb +1 -1
  116. data/generated/google/apis/compute_alpha/classes.rb +1320 -307
  117. data/generated/google/apis/compute_alpha/representations.rb +284 -18
  118. data/generated/google/apis/compute_alpha/service.rb +4914 -3211
  119. data/generated/google/apis/compute_beta.rb +1 -1
  120. data/generated/google/apis/compute_beta/classes.rb +819 -236
  121. data/generated/google/apis/compute_beta/representations.rb +245 -16
  122. data/generated/google/apis/compute_beta/service.rb +3369 -2227
  123. data/generated/google/apis/compute_v1.rb +1 -1
  124. data/generated/google/apis/compute_v1/classes.rb +837 -133
  125. data/generated/google/apis/compute_v1/representations.rb +307 -0
  126. data/generated/google/apis/compute_v1/service.rb +3155 -2026
  127. data/generated/google/apis/container_v1.rb +1 -1
  128. data/generated/google/apis/container_v1/classes.rb +42 -22
  129. data/generated/google/apis/container_v1/service.rb +2 -2
  130. data/generated/google/apis/container_v1beta1.rb +1 -1
  131. data/generated/google/apis/container_v1beta1/classes.rb +116 -136
  132. data/generated/google/apis/container_v1beta1/representations.rb +23 -51
  133. data/generated/google/apis/container_v1beta1/service.rb +2 -2
  134. data/generated/google/apis/content_v2.rb +1 -1
  135. data/generated/google/apis/content_v2/classes.rb +1030 -113
  136. data/generated/google/apis/content_v2_1.rb +1 -1
  137. data/generated/google/apis/content_v2_1/classes.rb +987 -138
  138. data/generated/google/apis/content_v2_1/representations.rb +87 -0
  139. data/generated/google/apis/content_v2_1/service.rb +73 -0
  140. data/generated/google/apis/customsearch_v1.rb +3 -3
  141. data/generated/google/apis/customsearch_v1/classes.rb +1194 -353
  142. data/generated/google/apis/customsearch_v1/representations.rb +166 -95
  143. data/generated/google/apis/customsearch_v1/service.rb +373 -104
  144. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  145. data/generated/google/apis/datacatalog_v1beta1/classes.rb +2 -2
  146. data/generated/google/apis/datacatalog_v1beta1/service.rb +16 -24
  147. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  148. data/generated/google/apis/dataflow_v1b3/classes.rb +220 -0
  149. data/generated/google/apis/dataflow_v1b3/representations.rb +99 -0
  150. data/generated/google/apis/dataflow_v1b3/service.rb +327 -0
  151. data/generated/google/apis/datafusion_v1beta1.rb +1 -1
  152. data/generated/google/apis/datafusion_v1beta1/classes.rb +27 -1
  153. data/generated/google/apis/datafusion_v1beta1/representations.rb +15 -0
  154. data/generated/google/apis/dataproc_v1.rb +1 -1
  155. data/generated/google/apis/dataproc_v1/classes.rb +76 -7
  156. data/generated/google/apis/dataproc_v1/representations.rb +21 -0
  157. data/generated/google/apis/dataproc_v1/service.rb +72 -15
  158. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  159. data/generated/google/apis/dataproc_v1beta2/classes.rb +191 -7
  160. data/generated/google/apis/dataproc_v1beta2/representations.rb +79 -0
  161. data/generated/google/apis/dataproc_v1beta2/service.rb +148 -15
  162. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  163. data/generated/google/apis/dfareporting_v3_3/classes.rb +19 -13
  164. data/generated/google/apis/dfareporting_v3_3/service.rb +5 -4
  165. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  166. data/generated/google/apis/dfareporting_v3_4/classes.rb +152 -15
  167. data/generated/google/apis/dfareporting_v3_4/representations.rb +46 -0
  168. data/generated/google/apis/dfareporting_v3_4/service.rb +5 -4
  169. data/generated/google/apis/dialogflow_v2.rb +1 -1
  170. data/generated/google/apis/dialogflow_v2/classes.rb +130 -127
  171. data/generated/google/apis/dialogflow_v2/service.rb +49 -49
  172. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  173. data/generated/google/apis/dialogflow_v2beta1/classes.rb +129 -126
  174. data/generated/google/apis/dialogflow_v2beta1/service.rb +96 -96
  175. data/generated/google/apis/dlp_v2.rb +1 -1
  176. data/generated/google/apis/dlp_v2/classes.rb +80 -14
  177. data/generated/google/apis/dlp_v2/representations.rb +32 -0
  178. data/generated/google/apis/dlp_v2/service.rb +3 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  180. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +9 -2
  181. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  182. data/generated/google/apis/doubleclicksearch_v2/service.rb +0 -55
  183. data/generated/google/apis/drive_v2.rb +1 -1
  184. data/generated/google/apis/drive_v2/classes.rb +54 -2
  185. data/generated/google/apis/drive_v2/representations.rb +18 -0
  186. data/generated/google/apis/drive_v2/service.rb +81 -9
  187. data/generated/google/apis/drive_v3.rb +1 -1
  188. data/generated/google/apis/drive_v3/classes.rb +54 -2
  189. data/generated/google/apis/drive_v3/representations.rb +18 -0
  190. data/generated/google/apis/drive_v3/service.rb +37 -4
  191. data/generated/google/apis/file_v1.rb +1 -1
  192. data/generated/google/apis/file_v1beta1.rb +1 -1
  193. data/generated/google/apis/file_v1beta1/classes.rb +2 -2
  194. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  195. data/generated/google/apis/firebase_v1beta1/service.rb +8 -5
  196. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  197. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +6 -6
  198. data/generated/google/apis/firebasehosting_v1beta1/service.rb +762 -3
  199. data/generated/google/apis/firestore_v1.rb +1 -1
  200. data/generated/google/apis/firestore_v1/classes.rb +11 -2
  201. data/generated/google/apis/firestore_v1/representations.rb +2 -0
  202. data/generated/google/apis/firestore_v1/service.rb +2 -2
  203. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  204. data/generated/google/apis/firestore_v1beta1/classes.rb +11 -2
  205. data/generated/google/apis/firestore_v1beta1/representations.rb +2 -0
  206. data/generated/google/apis/firestore_v1beta1/service.rb +2 -2
  207. data/generated/google/apis/games_configuration_v1configuration.rb +4 -3
  208. data/generated/google/apis/games_configuration_v1configuration/classes.rb +39 -53
  209. data/generated/google/apis/games_configuration_v1configuration/service.rb +58 -169
  210. data/generated/google/apis/games_management_v1management.rb +1 -1
  211. data/generated/google/apis/games_management_v1management/classes.rb +7 -0
  212. data/generated/google/apis/games_management_v1management/representations.rb +1 -0
  213. data/generated/google/apis/games_v1.rb +1 -1
  214. data/generated/google/apis/games_v1/classes.rb +13 -0
  215. data/generated/google/apis/games_v1/representations.rb +2 -0
  216. data/generated/google/apis/{proximitybeacon_v1beta1.rb → gameservices_v1beta.rb} +11 -11
  217. data/generated/google/apis/gameservices_v1beta/classes.rb +2342 -0
  218. data/generated/google/apis/gameservices_v1beta/representations.rb +971 -0
  219. data/generated/google/apis/gameservices_v1beta/service.rb +1469 -0
  220. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  221. data/generated/google/apis/genomics_v2alpha1/service.rb +34 -0
  222. data/generated/google/apis/gmail_v1.rb +3 -2
  223. data/generated/google/apis/gmail_v1/classes.rb +258 -199
  224. data/generated/google/apis/gmail_v1/service.rb +552 -744
  225. data/generated/google/apis/{mirror_v1.rb → healthcare_v1.rb} +10 -13
  226. data/generated/google/apis/healthcare_v1/classes.rb +2639 -0
  227. data/generated/google/apis/healthcare_v1/representations.rb +1114 -0
  228. data/generated/google/apis/healthcare_v1/service.rb +3470 -0
  229. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  230. data/generated/google/apis/healthcare_v1beta1/classes.rb +569 -23
  231. data/generated/google/apis/healthcare_v1beta1/representations.rb +236 -1
  232. data/generated/google/apis/healthcare_v1beta1/service.rb +147 -18
  233. data/generated/google/apis/homegraph_v1.rb +1 -1
  234. data/generated/google/apis/homegraph_v1/classes.rb +67 -63
  235. data/generated/google/apis/homegraph_v1/service.rb +43 -47
  236. data/generated/google/apis/iap_v1.rb +1 -1
  237. data/generated/google/apis/iap_v1/classes.rb +190 -0
  238. data/generated/google/apis/iap_v1/representations.rb +66 -0
  239. data/generated/google/apis/jobs_v2.rb +1 -1
  240. data/generated/google/apis/language_v1.rb +1 -1
  241. data/generated/google/apis/language_v1/classes.rb +6 -6
  242. data/generated/google/apis/language_v1beta1.rb +1 -1
  243. data/generated/google/apis/language_v1beta1/classes.rb +5 -5
  244. data/generated/google/apis/language_v1beta2.rb +1 -1
  245. data/generated/google/apis/language_v1beta2/classes.rb +8 -7
  246. data/generated/google/apis/logging_v2.rb +3 -3
  247. data/generated/google/apis/logging_v2/classes.rb +3 -4
  248. data/generated/google/apis/logging_v2/service.rb +2 -2
  249. data/generated/google/apis/managedidentities_v1.rb +1 -1
  250. data/generated/google/apis/managedidentities_v1/classes.rb +54 -145
  251. data/generated/google/apis/managedidentities_v1/representations.rb +17 -33
  252. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  253. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +54 -145
  254. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +17 -33
  255. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  256. data/generated/google/apis/managedidentities_v1beta1/classes.rb +54 -145
  257. data/generated/google/apis/managedidentities_v1beta1/representations.rb +17 -33
  258. data/generated/google/apis/manufacturers_v1.rb +1 -1
  259. data/generated/google/apis/manufacturers_v1/classes.rb +3 -3
  260. data/generated/google/apis/manufacturers_v1/representations.rb +1 -1
  261. data/generated/google/apis/memcache_v1beta2.rb +35 -0
  262. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1 → memcache_v1beta2}/classes.rb +1083 -761
  263. data/generated/google/apis/memcache_v1beta2/representations.rb +557 -0
  264. data/generated/google/apis/memcache_v1beta2/service.rb +674 -0
  265. data/generated/google/apis/ml_v1.rb +1 -1
  266. data/generated/google/apis/ml_v1/classes.rb +47 -7
  267. data/generated/google/apis/ml_v1/representations.rb +4 -0
  268. data/generated/google/apis/monitoring_v1.rb +7 -8
  269. data/generated/google/apis/monitoring_v1/classes.rb +54 -15
  270. data/generated/google/apis/monitoring_v1/representations.rb +3 -0
  271. data/generated/google/apis/monitoring_v1/service.rb +7 -8
  272. data/generated/google/apis/monitoring_v3.rb +7 -8
  273. data/generated/google/apis/monitoring_v3/classes.rb +300 -27
  274. data/generated/google/apis/monitoring_v3/representations.rb +128 -0
  275. data/generated/google/apis/monitoring_v3/service.rb +52 -17
  276. data/generated/google/apis/oauth2_v2.rb +4 -4
  277. data/generated/google/apis/oauth2_v2/classes.rb +1 -13
  278. data/generated/google/apis/oauth2_v2/representations.rb +2 -4
  279. data/generated/google/apis/oauth2_v2/service.rb +10 -12
  280. data/generated/google/apis/osconfig_v1.rb +35 -0
  281. data/generated/google/apis/osconfig_v1/classes.rb +1223 -0
  282. data/generated/google/apis/osconfig_v1/representations.rb +506 -0
  283. data/generated/google/apis/osconfig_v1/service.rb +386 -0
  284. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  285. data/generated/google/apis/osconfig_v1beta/classes.rb +10 -2
  286. data/generated/google/apis/people_v1.rb +1 -1
  287. data/generated/google/apis/people_v1/classes.rb +30 -12
  288. data/generated/google/apis/people_v1/representations.rb +1 -0
  289. data/generated/google/apis/people_v1/service.rb +12 -24
  290. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  291. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +4 -3
  292. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +282 -0
  293. data/generated/google/apis/pubsub_v1.rb +1 -1
  294. data/generated/google/apis/pubsub_v1/classes.rb +9 -5
  295. data/generated/google/apis/pubsub_v1/service.rb +1 -1
  296. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  297. data/generated/google/apis/pubsub_v1beta2/classes.rb +5 -2
  298. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  299. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -4
  300. data/generated/google/apis/redis_v1.rb +1 -1
  301. data/generated/google/apis/redis_v1/classes.rb +30 -7
  302. data/generated/google/apis/redis_v1/representations.rb +13 -0
  303. data/generated/google/apis/redis_v1/service.rb +36 -0
  304. data/generated/google/apis/redis_v1beta1.rb +1 -1
  305. data/generated/google/apis/redis_v1beta1/classes.rb +11 -7
  306. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  307. data/generated/google/apis/remotebuildexecution_v1/classes.rb +171 -37
  308. data/generated/google/apis/remotebuildexecution_v1/representations.rb +28 -0
  309. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  310. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +171 -37
  311. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +28 -0
  312. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  313. data/generated/google/apis/remotebuildexecution_v2/classes.rb +181 -45
  314. data/generated/google/apis/remotebuildexecution_v2/representations.rb +29 -0
  315. data/generated/google/apis/remotebuildexecution_v2/service.rb +5 -1
  316. data/generated/google/apis/run_v1.rb +1 -1
  317. data/generated/google/apis/run_v1/classes.rb +6 -13
  318. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  319. data/generated/google/apis/sasportal_v1alpha1/classes.rb +4 -3
  320. data/generated/google/apis/sasportal_v1alpha1/service.rb +282 -0
  321. data/generated/google/apis/secretmanager_v1.rb +2 -2
  322. data/generated/google/apis/secretmanager_v1/service.rb +4 -1
  323. data/generated/google/apis/secretmanager_v1beta1.rb +2 -2
  324. data/generated/google/apis/secretmanager_v1beta1/service.rb +4 -1
  325. data/generated/google/apis/securitycenter_v1.rb +4 -4
  326. data/generated/google/apis/securitycenter_v1/classes.rb +142 -114
  327. data/generated/google/apis/securitycenter_v1/service.rb +11 -3
  328. data/generated/google/apis/securitycenter_v1beta1.rb +4 -4
  329. data/generated/google/apis/securitycenter_v1beta1/classes.rb +137 -123
  330. data/generated/google/apis/securitycenter_v1beta1/service.rb +3 -3
  331. data/generated/google/apis/securitycenter_v1p1alpha1.rb +4 -4
  332. data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +87 -75
  333. data/generated/google/apis/securitycenter_v1p1alpha1/service.rb +3 -3
  334. data/generated/google/apis/securitycenter_v1p1beta1.rb +4 -4
  335. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +117 -95
  336. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +11 -3
  337. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  338. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +41 -6
  339. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +1 -0
  340. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1.rb → serviceconsumermanagement_v1beta1.rb} +8 -9
  341. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +4170 -0
  342. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +1308 -0
  343. data/generated/google/apis/serviceconsumermanagement_v1beta1/service.rb +428 -0
  344. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  345. data/generated/google/apis/servicecontrol_v1/classes.rb +2 -2
  346. data/generated/google/apis/{cloudprivatecatalog_v1beta1.rb → servicedirectory_v1beta1.rb} +9 -9
  347. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +800 -0
  348. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +304 -0
  349. data/generated/google/apis/servicedirectory_v1beta1/service.rb +992 -0
  350. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  351. data/generated/google/apis/servicemanagement_v1/classes.rb +41 -6
  352. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -0
  353. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  354. data/generated/google/apis/servicenetworking_v1/classes.rb +179 -6
  355. data/generated/google/apis/servicenetworking_v1/representations.rb +72 -0
  356. data/generated/google/apis/servicenetworking_v1/service.rb +53 -21
  357. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  358. data/generated/google/apis/servicenetworking_v1beta/classes.rb +149 -6
  359. data/generated/google/apis/servicenetworking_v1beta/representations.rb +57 -0
  360. data/generated/google/apis/serviceusage_v1.rb +1 -1
  361. data/generated/google/apis/serviceusage_v1/classes.rb +116 -6
  362. data/generated/google/apis/serviceusage_v1/representations.rb +45 -0
  363. data/generated/google/apis/serviceusage_v1/service.rb +42 -0
  364. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  365. data/generated/google/apis/serviceusage_v1beta1/classes.rb +97 -32
  366. data/generated/google/apis/serviceusage_v1beta1/representations.rb +31 -15
  367. data/generated/google/apis/serviceusage_v1beta1/service.rb +0 -43
  368. data/generated/google/apis/sheets_v4.rb +1 -1
  369. data/generated/google/apis/sheets_v4/classes.rb +2 -2
  370. data/generated/google/apis/spanner_v1.rb +1 -1
  371. data/generated/google/apis/spanner_v1/classes.rb +463 -1
  372. data/generated/google/apis/spanner_v1/representations.rb +178 -0
  373. data/generated/google/apis/spanner_v1/service.rb +498 -10
  374. data/generated/google/apis/speech_v1.rb +1 -1
  375. data/generated/google/apis/speech_v1/classes.rb +7 -3
  376. data/generated/google/apis/speech_v1/representations.rb +1 -0
  377. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  378. data/generated/google/apis/speech_v1p1beta1/classes.rb +7 -3
  379. data/generated/google/apis/speech_v1p1beta1/representations.rb +1 -0
  380. data/generated/google/apis/speech_v2beta1.rb +1 -1
  381. data/generated/google/apis/speech_v2beta1/classes.rb +7 -0
  382. data/generated/google/apis/speech_v2beta1/representations.rb +1 -0
  383. data/generated/google/apis/sql_v1beta4.rb +1 -1
  384. data/generated/google/apis/sql_v1beta4/classes.rb +3 -3
  385. data/generated/google/apis/sql_v1beta4/service.rb +54 -384
  386. data/generated/google/apis/storage_v1.rb +1 -1
  387. data/generated/google/apis/storage_v1/classes.rb +18 -0
  388. data/generated/google/apis/storage_v1/representations.rb +2 -0
  389. data/generated/google/apis/storage_v1/service.rb +28 -3
  390. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  391. data/generated/google/apis/storagetransfer_v1/classes.rb +194 -11
  392. data/generated/google/apis/storagetransfer_v1/representations.rb +52 -0
  393. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  394. data/generated/google/apis/toolresults_v1beta3/classes.rb +217 -0
  395. data/generated/google/apis/toolresults_v1beta3/representations.rb +84 -0
  396. data/generated/google/apis/toolresults_v1beta3/service.rb +76 -29
  397. data/generated/google/apis/vault_v1.rb +1 -1
  398. data/generated/google/apis/videointelligence_v1.rb +1 -1
  399. data/generated/google/apis/videointelligence_v1/classes.rb +744 -4
  400. data/generated/google/apis/videointelligence_v1/representations.rb +356 -0
  401. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  402. data/generated/google/apis/videointelligence_v1beta2/classes.rb +744 -4
  403. data/generated/google/apis/videointelligence_v1beta2/representations.rb +356 -0
  404. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  405. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +744 -4
  406. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +356 -0
  407. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  408. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +744 -4
  409. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +356 -0
  410. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  411. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +744 -4
  412. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +356 -0
  413. data/generated/google/apis/vision_v1.rb +1 -1
  414. data/generated/google/apis/vision_v1/classes.rb +1 -1
  415. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  416. data/generated/google/apis/vision_v1p1beta1/classes.rb +1 -1
  417. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  418. data/generated/google/apis/vision_v1p2beta1/classes.rb +1 -1
  419. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  420. data/generated/google/apis/youtube_v3.rb +4 -1
  421. data/generated/google/apis/youtube_v3/classes.rb +7 -0
  422. data/generated/google/apis/youtube_v3/representations.rb +1 -0
  423. data/lib/google/apis/generator/annotator.rb +1 -1
  424. data/lib/google/apis/version.rb +1 -1
  425. metadata +32 -23
  426. data/generated/google/apis/cloudprivatecatalog_v1beta1/classes.rb +0 -358
  427. data/generated/google/apis/cloudprivatecatalog_v1beta1/representations.rb +0 -123
  428. data/generated/google/apis/cloudprivatecatalog_v1beta1/service.rb +0 -486
  429. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/representations.rb +0 -399
  430. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/service.rb +0 -1081
  431. data/generated/google/apis/mirror_v1/classes.rb +0 -1072
  432. data/generated/google/apis/mirror_v1/representations.rb +0 -390
  433. data/generated/google/apis/mirror_v1/service.rb +0 -928
  434. data/generated/google/apis/oauth2_v1.rb +0 -40
  435. data/generated/google/apis/oauth2_v1/classes.rb +0 -197
  436. data/generated/google/apis/oauth2_v1/representations.rb +0 -73
  437. data/generated/google/apis/oauth2_v1/service.rb +0 -160
  438. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +0 -845
  439. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +0 -350
  440. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +0 -933
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/games/services
26
26
  module GamesManagementV1management
27
27
  VERSION = 'V1management'
28
- REVISION = '20191205'
28
+ REVISION = '20200306'
29
29
 
30
30
  # Create, edit, and delete your Google Play Games activity
31
31
  AUTH_GAMES = 'https://www.googleapis.com/auth/games'
@@ -333,6 +333,12 @@ module Google
333
333
  # @return [Google::Apis::GamesManagementV1management::GamesPlayerExperienceInfoResource]
334
334
  attr_accessor :experience_info
335
335
 
336
+ # The friend status of the given player, relative to the requester. This is
337
+ # unset if the player is not sharing their friends list with the game.
338
+ # Corresponds to the JSON property `friendStatus`
339
+ # @return [String]
340
+ attr_accessor :friend_status
341
+
336
342
  # Uniquely identifies the type of this resource. Value is always the fixed
337
343
  # string gamesManagement#player.
338
344
  # Corresponds to the JSON property `kind`
@@ -390,6 +396,7 @@ module Google
390
396
  @banner_url_portrait = args[:banner_url_portrait] if args.key?(:banner_url_portrait)
391
397
  @display_name = args[:display_name] if args.key?(:display_name)
392
398
  @experience_info = args[:experience_info] if args.key?(:experience_info)
399
+ @friend_status = args[:friend_status] if args.key?(:friend_status)
393
400
  @kind = args[:kind] if args.key?(:kind)
394
401
  @last_played_with = args[:last_played_with] if args.key?(:last_played_with)
395
402
  @name = args[:name] if args.key?(:name)
@@ -205,6 +205,7 @@ module Google
205
205
  property :display_name, as: 'displayName'
206
206
  property :experience_info, as: 'experienceInfo', class: Google::Apis::GamesManagementV1management::GamesPlayerExperienceInfoResource, decorator: Google::Apis::GamesManagementV1management::GamesPlayerExperienceInfoResource::Representation
207
207
 
208
+ property :friend_status, as: 'friendStatus'
208
209
  property :kind, as: 'kind'
209
210
  property :last_played_with, as: 'lastPlayedWith', class: Google::Apis::GamesManagementV1management::GamesPlayedResource, decorator: Google::Apis::GamesManagementV1management::GamesPlayedResource::Representation
210
211
 
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/games/services/
26
26
  module GamesV1
27
27
  VERSION = 'V1'
28
- REVISION = '20191017'
28
+ REVISION = '20200330'
29
29
 
30
30
  # View and manage its own configuration data in your Google Drive
31
31
  AUTH_DRIVE_APPDATA = 'https://www.googleapis.com/auth/drive.appdata'
@@ -2007,6 +2007,12 @@ module Google
2007
2007
  # @return [Google::Apis::GamesV1::PlayerExperienceInfo]
2008
2008
  attr_accessor :experience_info
2009
2009
 
2010
+ # The friend status of the given player, relative to the requester. This is
2011
+ # unset if the player is not sharing their friends list with the game.
2012
+ # Corresponds to the JSON property `friendStatus`
2013
+ # @return [String]
2014
+ attr_accessor :friend_status
2015
+
2010
2016
  # Uniquely identifies the type of this resource. Value is always the fixed
2011
2017
  # string games#player.
2012
2018
  # Corresponds to the JSON property `kind`
@@ -2064,6 +2070,7 @@ module Google
2064
2070
  @banner_url_portrait = args[:banner_url_portrait] if args.key?(:banner_url_portrait)
2065
2071
  @display_name = args[:display_name] if args.key?(:display_name)
2066
2072
  @experience_info = args[:experience_info] if args.key?(:experience_info)
2073
+ @friend_status = args[:friend_status] if args.key?(:friend_status)
2067
2074
  @kind = args[:kind] if args.key?(:kind)
2068
2075
  @last_played_with = args[:last_played_with] if args.key?(:last_played_with)
2069
2076
  @name = args[:name] if args.key?(:name)
@@ -2662,6 +2669,11 @@ module Google
2662
2669
  class ProfileSettings
2663
2670
  include Google::Apis::Core::Hashable
2664
2671
 
2672
+ # Whether the player's friends list is visible to the game.
2673
+ # Corresponds to the JSON property `friendsListVisibility`
2674
+ # @return [String]
2675
+ attr_accessor :friends_list_visibility
2676
+
2665
2677
  # Uniquely identifies the type of this resource. Value is always the fixed
2666
2678
  # string games#profileSettings.
2667
2679
  # Corresponds to the JSON property `kind`
@@ -2680,6 +2692,7 @@ module Google
2680
2692
 
2681
2693
  # Update properties of this object
2682
2694
  def update!(**args)
2695
+ @friends_list_visibility = args[:friends_list_visibility] if args.key?(:friends_list_visibility)
2683
2696
  @kind = args[:kind] if args.key?(:kind)
2684
2697
  @profile_visible = args[:profile_visible] if args.key?(:profile_visible)
2685
2698
  end
@@ -1104,6 +1104,7 @@ module Google
1104
1104
  property :display_name, as: 'displayName'
1105
1105
  property :experience_info, as: 'experienceInfo', class: Google::Apis::GamesV1::PlayerExperienceInfo, decorator: Google::Apis::GamesV1::PlayerExperienceInfo::Representation
1106
1106
 
1107
+ property :friend_status, as: 'friendStatus'
1107
1108
  property :kind, as: 'kind'
1108
1109
  property :last_played_with, as: 'lastPlayedWith', class: Google::Apis::GamesV1::Played, decorator: Google::Apis::GamesV1::Played::Representation
1109
1110
 
@@ -1277,6 +1278,7 @@ module Google
1277
1278
  class ProfileSettings
1278
1279
  # @private
1279
1280
  class Representation < Google::Apis::Core::JsonRepresentation
1281
+ property :friends_list_visibility, as: 'friendsListVisibility'
1280
1282
  property :kind, as: 'kind'
1281
1283
  property :profile_visible, as: 'profileVisible'
1282
1284
  end
@@ -12,23 +12,23 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
- require 'google/apis/proximitybeacon_v1beta1/service.rb'
16
- require 'google/apis/proximitybeacon_v1beta1/classes.rb'
17
- require 'google/apis/proximitybeacon_v1beta1/representations.rb'
15
+ require 'google/apis/gameservices_v1beta/service.rb'
16
+ require 'google/apis/gameservices_v1beta/classes.rb'
17
+ require 'google/apis/gameservices_v1beta/representations.rb'
18
18
 
19
19
  module Google
20
20
  module Apis
21
- # Proximity Beacon API
21
+ # Game Services API
22
22
  #
23
- # Registers, manages, indexes, and searches beacons.
23
+ # Deploy and manage infrastructure for global multiplayer gaming experiences.
24
24
  #
25
- # @see https://developers.google.com/beacons/proximity/
26
- module ProximitybeaconV1beta1
27
- VERSION = 'V1beta1'
28
- REVISION = '20190913'
25
+ # @see https://cloud.google.com/solutions/gaming/
26
+ module GameservicesV1beta
27
+ VERSION = 'V1beta'
28
+ REVISION = '20200402'
29
29
 
30
- # View and modify your beacons
31
- AUTH_USERLOCATION_BEACON_REGISTRY = 'https://www.googleapis.com/auth/userlocation.beacon.registry'
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
32
  end
33
33
  end
34
34
  end
@@ -0,0 +1,2342 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module GameservicesV1beta
24
+
25
+ # Specifies the audit configuration for a service.
26
+ # The configuration determines which permission types are logged, and what
27
+ # identities, if any, are exempted from logging.
28
+ # An AuditConfig must have one or more AuditLogConfigs.
29
+ # If there are AuditConfigs for both `allServices` and a specific service,
30
+ # the union of the two AuditConfigs is used for that service: the log_types
31
+ # specified in each AuditConfig are enabled, and the exempted_members in each
32
+ # AuditLogConfig are exempted.
33
+ # Example Policy with multiple AuditConfigs:
34
+ # `
35
+ # "audit_configs": [
36
+ # `
37
+ # "service": "allServices"
38
+ # "audit_log_configs": [
39
+ # `
40
+ # "log_type": "DATA_READ",
41
+ # "exempted_members": [
42
+ # "user:jose@example.com"
43
+ # ]
44
+ # `,
45
+ # `
46
+ # "log_type": "DATA_WRITE",
47
+ # `,
48
+ # `
49
+ # "log_type": "ADMIN_READ",
50
+ # `
51
+ # ]
52
+ # `,
53
+ # `
54
+ # "service": "sampleservice.googleapis.com"
55
+ # "audit_log_configs": [
56
+ # `
57
+ # "log_type": "DATA_READ",
58
+ # `,
59
+ # `
60
+ # "log_type": "DATA_WRITE",
61
+ # "exempted_members": [
62
+ # "user:aliya@example.com"
63
+ # ]
64
+ # `
65
+ # ]
66
+ # `
67
+ # ]
68
+ # `
69
+ # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
70
+ # logging. It also exempts jose@example.com from DATA_READ logging, and
71
+ # aliya@example.com from DATA_WRITE logging.
72
+ class AuditConfig
73
+ include Google::Apis::Core::Hashable
74
+
75
+ # The configuration for logging of each type of permission.
76
+ # Corresponds to the JSON property `auditLogConfigs`
77
+ # @return [Array<Google::Apis::GameservicesV1beta::AuditLogConfig>]
78
+ attr_accessor :audit_log_configs
79
+
80
+ #
81
+ # Corresponds to the JSON property `exemptedMembers`
82
+ # @return [Array<String>]
83
+ attr_accessor :exempted_members
84
+
85
+ # Specifies a service that will be enabled for audit logging.
86
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
87
+ # `allServices` is a special value that covers all services.
88
+ # Corresponds to the JSON property `service`
89
+ # @return [String]
90
+ attr_accessor :service
91
+
92
+ def initialize(**args)
93
+ update!(**args)
94
+ end
95
+
96
+ # Update properties of this object
97
+ def update!(**args)
98
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
99
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
100
+ @service = args[:service] if args.key?(:service)
101
+ end
102
+ end
103
+
104
+ # Provides the configuration for logging a type of permissions.
105
+ # Example:
106
+ # `
107
+ # "audit_log_configs": [
108
+ # `
109
+ # "log_type": "DATA_READ",
110
+ # "exempted_members": [
111
+ # "user:jose@example.com"
112
+ # ]
113
+ # `,
114
+ # `
115
+ # "log_type": "DATA_WRITE",
116
+ # `
117
+ # ]
118
+ # `
119
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
120
+ # jose@example.com from DATA_READ logging.
121
+ class AuditLogConfig
122
+ include Google::Apis::Core::Hashable
123
+
124
+ # Specifies the identities that do not cause logging for this type of
125
+ # permission.
126
+ # Follows the same format of Binding.members.
127
+ # Corresponds to the JSON property `exemptedMembers`
128
+ # @return [Array<String>]
129
+ attr_accessor :exempted_members
130
+
131
+ #
132
+ # Corresponds to the JSON property `ignoreChildExemptions`
133
+ # @return [Boolean]
134
+ attr_accessor :ignore_child_exemptions
135
+ alias_method :ignore_child_exemptions?, :ignore_child_exemptions
136
+
137
+ # The log type that this config enables.
138
+ # Corresponds to the JSON property `logType`
139
+ # @return [String]
140
+ attr_accessor :log_type
141
+
142
+ def initialize(**args)
143
+ update!(**args)
144
+ end
145
+
146
+ # Update properties of this object
147
+ def update!(**args)
148
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
149
+ @ignore_child_exemptions = args[:ignore_child_exemptions] if args.key?(:ignore_child_exemptions)
150
+ @log_type = args[:log_type] if args.key?(:log_type)
151
+ end
152
+ end
153
+
154
+ # Authorization-related information used by Cloud Audit Logging.
155
+ class AuthorizationLoggingOptions
156
+ include Google::Apis::Core::Hashable
157
+
158
+ # The type of the permission that was checked.
159
+ # Corresponds to the JSON property `permissionType`
160
+ # @return [String]
161
+ attr_accessor :permission_type
162
+
163
+ def initialize(**args)
164
+ update!(**args)
165
+ end
166
+
167
+ # Update properties of this object
168
+ def update!(**args)
169
+ @permission_type = args[:permission_type] if args.key?(:permission_type)
170
+ end
171
+ end
172
+
173
+ # Associates `members` with a `role`.
174
+ class Binding
175
+ include Google::Apis::Core::Hashable
176
+
177
+ # Represents a textual expression in the Common Expression Language (CEL)
178
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
179
+ # are documented at https://github.com/google/cel-spec.
180
+ # Example (Comparison):
181
+ # title: "Summary size limit"
182
+ # description: "Determines if a summary is less than 100 chars"
183
+ # expression: "document.summary.size() < 100"
184
+ # Example (Equality):
185
+ # title: "Requestor is owner"
186
+ # description: "Determines if requestor is the document owner"
187
+ # expression: "document.owner == request.auth.claims.email"
188
+ # Example (Logic):
189
+ # title: "Public documents"
190
+ # description: "Determine whether the document should be publicly visible"
191
+ # expression: "document.type != 'private' && document.type != 'internal'"
192
+ # Example (Data Manipulation):
193
+ # title: "Notification string"
194
+ # description: "Create a notification string with a timestamp."
195
+ # expression: "'New message received at ' + string(document.create_time)"
196
+ # The exact variables and functions that may be referenced within an expression
197
+ # are determined by the service that evaluates it. See the service
198
+ # documentation for additional information.
199
+ # Corresponds to the JSON property `condition`
200
+ # @return [Google::Apis::GameservicesV1beta::Expr]
201
+ attr_accessor :condition
202
+
203
+ # Specifies the identities requesting access for a Cloud Platform resource.
204
+ # `members` can have the following values:
205
+ # * `allUsers`: A special identifier that represents anyone who is
206
+ # on the internet; with or without a Google account.
207
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
208
+ # who is authenticated with a Google account or a service account.
209
+ # * `user:`emailid``: An email address that represents a specific Google
210
+ # account. For example, `alice@example.com` .
211
+ # * `serviceAccount:`emailid``: An email address that represents a service
212
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
213
+ # * `group:`emailid``: An email address that represents a Google group.
214
+ # For example, `admins@example.com`.
215
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
216
+ # identifier) representing a user that has been recently deleted. For
217
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
218
+ # recovered, this value reverts to `user:`emailid`` and the recovered user
219
+ # retains the role in the binding.
220
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
221
+ # unique identifier) representing a service account that has been recently
222
+ # deleted. For example,
223
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
224
+ # If the service account is undeleted, this value reverts to
225
+ # `serviceAccount:`emailid`` and the undeleted service account retains the
226
+ # role in the binding.
227
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
228
+ # identifier) representing a Google group that has been recently
229
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
230
+ # the group is recovered, this value reverts to `group:`emailid`` and the
231
+ # recovered group retains the role in the binding.
232
+ # * `domain:`domain``: The G Suite domain (primary) that represents all the
233
+ # users of that domain. For example, `google.com` or `example.com`.
234
+ # Corresponds to the JSON property `members`
235
+ # @return [Array<String>]
236
+ attr_accessor :members
237
+
238
+ # Role that is assigned to `members`.
239
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
240
+ # Corresponds to the JSON property `role`
241
+ # @return [String]
242
+ attr_accessor :role
243
+
244
+ def initialize(**args)
245
+ update!(**args)
246
+ end
247
+
248
+ # Update properties of this object
249
+ def update!(**args)
250
+ @condition = args[:condition] if args.key?(:condition)
251
+ @members = args[:members] if args.key?(:members)
252
+ @role = args[:role] if args.key?(:role)
253
+ end
254
+ end
255
+
256
+ # The request message for Operations.CancelOperation.
257
+ class CancelOperationRequest
258
+ include Google::Apis::Core::Hashable
259
+
260
+ def initialize(**args)
261
+ update!(**args)
262
+ end
263
+
264
+ # Update properties of this object
265
+ def update!(**args)
266
+ end
267
+ end
268
+
269
+ # Write a Cloud Audit log
270
+ class CloudAuditOptions
271
+ include Google::Apis::Core::Hashable
272
+
273
+ # Authorization-related information used by Cloud Audit Logging.
274
+ # Corresponds to the JSON property `authorizationLoggingOptions`
275
+ # @return [Google::Apis::GameservicesV1beta::AuthorizationLoggingOptions]
276
+ attr_accessor :authorization_logging_options
277
+
278
+ # The log_name to populate in the Cloud Audit Record.
279
+ # Corresponds to the JSON property `logName`
280
+ # @return [String]
281
+ attr_accessor :log_name
282
+
283
+ def initialize(**args)
284
+ update!(**args)
285
+ end
286
+
287
+ # Update properties of this object
288
+ def update!(**args)
289
+ @authorization_logging_options = args[:authorization_logging_options] if args.key?(:authorization_logging_options)
290
+ @log_name = args[:log_name] if args.key?(:log_name)
291
+ end
292
+ end
293
+
294
+ # A condition to be met.
295
+ class Condition
296
+ include Google::Apis::Core::Hashable
297
+
298
+ # Trusted attributes supplied by the IAM system.
299
+ # Corresponds to the JSON property `iam`
300
+ # @return [String]
301
+ attr_accessor :iam
302
+
303
+ # An operator to apply the subject with.
304
+ # Corresponds to the JSON property `op`
305
+ # @return [String]
306
+ attr_accessor :op
307
+
308
+ # Trusted attributes discharged by the service.
309
+ # Corresponds to the JSON property `svc`
310
+ # @return [String]
311
+ attr_accessor :svc
312
+
313
+ # Trusted attributes supplied by any service that owns resources and uses
314
+ # the IAM system for access control.
315
+ # Corresponds to the JSON property `sys`
316
+ # @return [String]
317
+ attr_accessor :sys
318
+
319
+ # The objects of the condition.
320
+ # Corresponds to the JSON property `values`
321
+ # @return [Array<String>]
322
+ attr_accessor :values
323
+
324
+ def initialize(**args)
325
+ update!(**args)
326
+ end
327
+
328
+ # Update properties of this object
329
+ def update!(**args)
330
+ @iam = args[:iam] if args.key?(:iam)
331
+ @op = args[:op] if args.key?(:op)
332
+ @svc = args[:svc] if args.key?(:svc)
333
+ @sys = args[:sys] if args.key?(:sys)
334
+ @values = args[:values] if args.key?(:values)
335
+ end
336
+ end
337
+
338
+ # Increment a streamz counter with the specified metric and field names.
339
+ # Metric names should start with a '/', generally be lowercase-only,
340
+ # and end in "_count". Field names should not contain an initial slash.
341
+ # The actual exported metric names will have "/iam/policy" prepended.
342
+ # Field names correspond to IAM request parameters and field values are
343
+ # their respective values.
344
+ # Supported field names:
345
+ # - "authority", which is "[token]" if IAMContext.token is present,
346
+ # otherwise the value of IAMContext.authority_selector if present, and
347
+ # otherwise a representation of IAMContext.principal; or
348
+ # - "iam_principal", a representation of IAMContext.principal even if a
349
+ # token or authority selector is present; or
350
+ # - "" (empty string), resulting in a counter with no fields.
351
+ # Examples:
352
+ # counter ` metric: "/debug_access_count" field: "iam_principal" `
353
+ # ==> increment counter /iam/policy/debug_access_count
354
+ # `iam_principal=[value of IAMContext.principal]`
355
+ class CounterOptions
356
+ include Google::Apis::Core::Hashable
357
+
358
+ # Custom fields.
359
+ # Corresponds to the JSON property `customFields`
360
+ # @return [Array<Google::Apis::GameservicesV1beta::CustomField>]
361
+ attr_accessor :custom_fields
362
+
363
+ # The field value to attribute.
364
+ # Corresponds to the JSON property `field`
365
+ # @return [String]
366
+ attr_accessor :field
367
+
368
+ # The metric to update.
369
+ # Corresponds to the JSON property `metric`
370
+ # @return [String]
371
+ attr_accessor :metric
372
+
373
+ def initialize(**args)
374
+ update!(**args)
375
+ end
376
+
377
+ # Update properties of this object
378
+ def update!(**args)
379
+ @custom_fields = args[:custom_fields] if args.key?(:custom_fields)
380
+ @field = args[:field] if args.key?(:field)
381
+ @metric = args[:metric] if args.key?(:metric)
382
+ end
383
+ end
384
+
385
+ # Custom fields.
386
+ # These can be used to create a counter with arbitrary field/value
387
+ # pairs.
388
+ # See: go/rpcsp-custom-fields.
389
+ class CustomField
390
+ include Google::Apis::Core::Hashable
391
+
392
+ # Name is the field name.
393
+ # Corresponds to the JSON property `name`
394
+ # @return [String]
395
+ attr_accessor :name
396
+
397
+ # Value is the field value. It is important that in contrast to the
398
+ # CounterOptions.field, the value here is a constant that is not
399
+ # derived from the IAMContext.
400
+ # Corresponds to the JSON property `value`
401
+ # @return [String]
402
+ attr_accessor :value
403
+
404
+ def initialize(**args)
405
+ update!(**args)
406
+ end
407
+
408
+ # Update properties of this object
409
+ def update!(**args)
410
+ @name = args[:name] if args.key?(:name)
411
+ @value = args[:value] if args.key?(:value)
412
+ end
413
+ end
414
+
415
+ # Write a Data Access (Gin) log
416
+ class DataAccessOptions
417
+ include Google::Apis::Core::Hashable
418
+
419
+ #
420
+ # Corresponds to the JSON property `logMode`
421
+ # @return [String]
422
+ attr_accessor :log_mode
423
+
424
+ def initialize(**args)
425
+ update!(**args)
426
+ end
427
+
428
+ # Update properties of this object
429
+ def update!(**args)
430
+ @log_mode = args[:log_mode] if args.key?(:log_mode)
431
+ end
432
+ end
433
+
434
+ # The Game Server Cluster changes made by the Game Server Deployment.
435
+ class DeployedClusterState
436
+ include Google::Apis::Core::Hashable
437
+
438
+ # The name of the cluster.
439
+ # Corresponds to the JSON property `cluster`
440
+ # @return [String]
441
+ attr_accessor :cluster
442
+
443
+ # The details about the Agones fleets and autoscalers created in the
444
+ # Game Server Cluster.
445
+ # Corresponds to the JSON property `fleetDetails`
446
+ # @return [Array<Google::Apis::GameservicesV1beta::DeployedFleetDetails>]
447
+ attr_accessor :fleet_details
448
+
449
+ def initialize(**args)
450
+ update!(**args)
451
+ end
452
+
453
+ # Update properties of this object
454
+ def update!(**args)
455
+ @cluster = args[:cluster] if args.key?(:cluster)
456
+ @fleet_details = args[:fleet_details] if args.key?(:fleet_details)
457
+ end
458
+ end
459
+
460
+ # Agones fleet specification and details.
461
+ class DeployedFleet
462
+ include Google::Apis::Core::Hashable
463
+
464
+ # The name of the Agones fleet.
465
+ # Corresponds to the JSON property `fleet`
466
+ # @return [String]
467
+ attr_accessor :fleet
468
+
469
+ # The fleet spec retrieved from the Agones fleet.
470
+ # Corresponds to the JSON property `fleetSpec`
471
+ # @return [String]
472
+ attr_accessor :fleet_spec
473
+
474
+ # Encapsulates Agones fleet spec and Agones autoscaler spec sources.
475
+ # Corresponds to the JSON property `specSource`
476
+ # @return [Google::Apis::GameservicesV1beta::SpecSource]
477
+ attr_accessor :spec_source
478
+
479
+ # DeployedFleetStatus has details about the Agones fleets such as how many
480
+ # are running, how many allocated, and so on.
481
+ # Corresponds to the JSON property `status`
482
+ # @return [Google::Apis::GameservicesV1beta::DeployedFleetStatus]
483
+ attr_accessor :status
484
+
485
+ def initialize(**args)
486
+ update!(**args)
487
+ end
488
+
489
+ # Update properties of this object
490
+ def update!(**args)
491
+ @fleet = args[:fleet] if args.key?(:fleet)
492
+ @fleet_spec = args[:fleet_spec] if args.key?(:fleet_spec)
493
+ @spec_source = args[:spec_source] if args.key?(:spec_source)
494
+ @status = args[:status] if args.key?(:status)
495
+ end
496
+ end
497
+
498
+ # Details about the Agones autoscaler.
499
+ class DeployedFleetAutoscaler
500
+ include Google::Apis::Core::Hashable
501
+
502
+ # The name of the Agones autoscaler.
503
+ # Corresponds to the JSON property `autoscaler`
504
+ # @return [String]
505
+ attr_accessor :autoscaler
506
+
507
+ # The autoscaler spec retrieved from Agones.
508
+ # Corresponds to the JSON property `fleetAutoscalerSpec`
509
+ # @return [String]
510
+ attr_accessor :fleet_autoscaler_spec
511
+
512
+ # Encapsulates Agones fleet spec and Agones autoscaler spec sources.
513
+ # Corresponds to the JSON property `specSource`
514
+ # @return [Google::Apis::GameservicesV1beta::SpecSource]
515
+ attr_accessor :spec_source
516
+
517
+ def initialize(**args)
518
+ update!(**args)
519
+ end
520
+
521
+ # Update properties of this object
522
+ def update!(**args)
523
+ @autoscaler = args[:autoscaler] if args.key?(:autoscaler)
524
+ @fleet_autoscaler_spec = args[:fleet_autoscaler_spec] if args.key?(:fleet_autoscaler_spec)
525
+ @spec_source = args[:spec_source] if args.key?(:spec_source)
526
+ end
527
+ end
528
+
529
+ # Details of the deployed Agones fleet.
530
+ class DeployedFleetDetails
531
+ include Google::Apis::Core::Hashable
532
+
533
+ # Details about the Agones autoscaler.
534
+ # Corresponds to the JSON property `deployedAutoscaler`
535
+ # @return [Google::Apis::GameservicesV1beta::DeployedFleetAutoscaler]
536
+ attr_accessor :deployed_autoscaler
537
+
538
+ # Agones fleet specification and details.
539
+ # Corresponds to the JSON property `deployedFleet`
540
+ # @return [Google::Apis::GameservicesV1beta::DeployedFleet]
541
+ attr_accessor :deployed_fleet
542
+
543
+ def initialize(**args)
544
+ update!(**args)
545
+ end
546
+
547
+ # Update properties of this object
548
+ def update!(**args)
549
+ @deployed_autoscaler = args[:deployed_autoscaler] if args.key?(:deployed_autoscaler)
550
+ @deployed_fleet = args[:deployed_fleet] if args.key?(:deployed_fleet)
551
+ end
552
+ end
553
+
554
+ # DeployedFleetStatus has details about the Agones fleets such as how many
555
+ # are running, how many allocated, and so on.
556
+ class DeployedFleetStatus
557
+ include Google::Apis::Core::Hashable
558
+
559
+ # The number of GameServer replicas in the ALLOCATED state in this fleet.
560
+ # Corresponds to the JSON property `allocatedReplicas`
561
+ # @return [Fixnum]
562
+ attr_accessor :allocated_replicas
563
+
564
+ # The number of GameServer replicas in the READY state in this fleet.
565
+ # Corresponds to the JSON property `readyReplicas`
566
+ # @return [Fixnum]
567
+ attr_accessor :ready_replicas
568
+
569
+ # The total number of current GameServer replicas in this fleet.
570
+ # Corresponds to the JSON property `replicas`
571
+ # @return [Fixnum]
572
+ attr_accessor :replicas
573
+
574
+ # The number of GameServer replicas in the RESERVED state in this fleet.
575
+ # Reserved instances won't be deleted on scale down, but won't cause
576
+ # an autoscaler to scale up.
577
+ # Corresponds to the JSON property `reservedReplicas`
578
+ # @return [Fixnum]
579
+ attr_accessor :reserved_replicas
580
+
581
+ def initialize(**args)
582
+ update!(**args)
583
+ end
584
+
585
+ # Update properties of this object
586
+ def update!(**args)
587
+ @allocated_replicas = args[:allocated_replicas] if args.key?(:allocated_replicas)
588
+ @ready_replicas = args[:ready_replicas] if args.key?(:ready_replicas)
589
+ @replicas = args[:replicas] if args.key?(:replicas)
590
+ @reserved_replicas = args[:reserved_replicas] if args.key?(:reserved_replicas)
591
+ end
592
+ end
593
+
594
+ # A generic empty message that you can re-use to avoid defining duplicated
595
+ # empty messages in your APIs. A typical example is to use it as the request
596
+ # or the response type of an API method. For instance:
597
+ # service Foo `
598
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
599
+ # `
600
+ # The JSON representation for `Empty` is empty JSON object ````.
601
+ class Empty
602
+ include Google::Apis::Core::Hashable
603
+
604
+ def initialize(**args)
605
+ update!(**args)
606
+ end
607
+
608
+ # Update properties of this object
609
+ def update!(**args)
610
+ end
611
+ end
612
+
613
+ # Represents a textual expression in the Common Expression Language (CEL)
614
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
615
+ # are documented at https://github.com/google/cel-spec.
616
+ # Example (Comparison):
617
+ # title: "Summary size limit"
618
+ # description: "Determines if a summary is less than 100 chars"
619
+ # expression: "document.summary.size() < 100"
620
+ # Example (Equality):
621
+ # title: "Requestor is owner"
622
+ # description: "Determines if requestor is the document owner"
623
+ # expression: "document.owner == request.auth.claims.email"
624
+ # Example (Logic):
625
+ # title: "Public documents"
626
+ # description: "Determine whether the document should be publicly visible"
627
+ # expression: "document.type != 'private' && document.type != 'internal'"
628
+ # Example (Data Manipulation):
629
+ # title: "Notification string"
630
+ # description: "Create a notification string with a timestamp."
631
+ # expression: "'New message received at ' + string(document.create_time)"
632
+ # The exact variables and functions that may be referenced within an expression
633
+ # are determined by the service that evaluates it. See the service
634
+ # documentation for additional information.
635
+ class Expr
636
+ include Google::Apis::Core::Hashable
637
+
638
+ # Optional. Description of the expression. This is a longer text which
639
+ # describes the expression, e.g. when hovered over it in a UI.
640
+ # Corresponds to the JSON property `description`
641
+ # @return [String]
642
+ attr_accessor :description
643
+
644
+ # Textual representation of an expression in Common Expression Language
645
+ # syntax.
646
+ # Corresponds to the JSON property `expression`
647
+ # @return [String]
648
+ attr_accessor :expression
649
+
650
+ # Optional. String indicating the location of the expression for error
651
+ # reporting, e.g. a file name and a position in the file.
652
+ # Corresponds to the JSON property `location`
653
+ # @return [String]
654
+ attr_accessor :location
655
+
656
+ # Optional. Title for the expression, i.e. a short string describing
657
+ # its purpose. This can be used e.g. in UIs which allow to enter the
658
+ # expression.
659
+ # Corresponds to the JSON property `title`
660
+ # @return [String]
661
+ attr_accessor :title
662
+
663
+ def initialize(**args)
664
+ update!(**args)
665
+ end
666
+
667
+ # Update properties of this object
668
+ def update!(**args)
669
+ @description = args[:description] if args.key?(:description)
670
+ @expression = args[:expression] if args.key?(:expression)
671
+ @location = args[:location] if args.key?(:location)
672
+ @title = args[:title] if args.key?(:title)
673
+ end
674
+ end
675
+
676
+ # Request message for GameServerDeploymentsService.FetchDeploymentState.
677
+ class FetchDeploymentStateRequest
678
+ include Google::Apis::Core::Hashable
679
+
680
+ def initialize(**args)
681
+ update!(**args)
682
+ end
683
+
684
+ # Update properties of this object
685
+ def update!(**args)
686
+ end
687
+ end
688
+
689
+ # Response message for GameServerDeploymentsService.FetchDeploymentState.
690
+ class FetchDeploymentStateResponse
691
+ include Google::Apis::Core::Hashable
692
+
693
+ # The state of the Game Server Deployment in each Game Server Cluster.
694
+ # Corresponds to the JSON property `clusterState`
695
+ # @return [Array<Google::Apis::GameservicesV1beta::DeployedClusterState>]
696
+ attr_accessor :cluster_state
697
+
698
+ # List of Locations that could not be reached.
699
+ # Corresponds to the JSON property `unavailable`
700
+ # @return [Array<String>]
701
+ attr_accessor :unavailable
702
+
703
+ def initialize(**args)
704
+ update!(**args)
705
+ end
706
+
707
+ # Update properties of this object
708
+ def update!(**args)
709
+ @cluster_state = args[:cluster_state] if args.key?(:cluster_state)
710
+ @unavailable = args[:unavailable] if args.key?(:unavailable)
711
+ end
712
+ end
713
+
714
+ # Fleet configs for Agones.
715
+ class FleetConfig
716
+ include Google::Apis::Core::Hashable
717
+
718
+ # Agones fleet spec. Example spec:
719
+ # `https://agones.dev/site/docs/reference/fleet/`.
720
+ # Corresponds to the JSON property `fleetSpec`
721
+ # @return [String]
722
+ attr_accessor :fleet_spec
723
+
724
+ # The name of the FleetConfig.
725
+ # Corresponds to the JSON property `name`
726
+ # @return [String]
727
+ attr_accessor :name
728
+
729
+ def initialize(**args)
730
+ update!(**args)
731
+ end
732
+
733
+ # Update properties of this object
734
+ def update!(**args)
735
+ @fleet_spec = args[:fleet_spec] if args.key?(:fleet_spec)
736
+ @name = args[:name] if args.key?(:name)
737
+ end
738
+ end
739
+
740
+ # A Game Server Cluster resource.
741
+ class GameServerCluster
742
+ include Google::Apis::Core::Hashable
743
+
744
+ # The Game Server Cluster connection information.
745
+ # Corresponds to the JSON property `connectionInfo`
746
+ # @return [Google::Apis::GameservicesV1beta::GameServerClusterConnectionInfo]
747
+ attr_accessor :connection_info
748
+
749
+ # Output only. The creation time.
750
+ # Corresponds to the JSON property `createTime`
751
+ # @return [String]
752
+ attr_accessor :create_time
753
+
754
+ # Human readable description of the cluster.
755
+ # Corresponds to the JSON property `description`
756
+ # @return [String]
757
+ attr_accessor :description
758
+
759
+ # ETag of the resource.
760
+ # Corresponds to the JSON property `etag`
761
+ # @return [String]
762
+ attr_accessor :etag
763
+
764
+ # The labels associated with this Game Server Cluster. Each label is a
765
+ # key-value pair.
766
+ # Corresponds to the JSON property `labels`
767
+ # @return [Hash<String,String>]
768
+ attr_accessor :labels
769
+
770
+ # Required. The resource name of the Game Server Cluster. Uses the form:
771
+ # `projects/`project`/locations/`location`/realms/`realm`/gameServerClusters/`
772
+ # cluster``.
773
+ # For example,
774
+ # `projects/my-project/locations/`location`/realms/zanzibar/gameServerClusters/
775
+ # my-onprem-cluster`.
776
+ # Corresponds to the JSON property `name`
777
+ # @return [String]
778
+ attr_accessor :name
779
+
780
+ # Output only. The last-modified time.
781
+ # Corresponds to the JSON property `updateTime`
782
+ # @return [String]
783
+ attr_accessor :update_time
784
+
785
+ def initialize(**args)
786
+ update!(**args)
787
+ end
788
+
789
+ # Update properties of this object
790
+ def update!(**args)
791
+ @connection_info = args[:connection_info] if args.key?(:connection_info)
792
+ @create_time = args[:create_time] if args.key?(:create_time)
793
+ @description = args[:description] if args.key?(:description)
794
+ @etag = args[:etag] if args.key?(:etag)
795
+ @labels = args[:labels] if args.key?(:labels)
796
+ @name = args[:name] if args.key?(:name)
797
+ @update_time = args[:update_time] if args.key?(:update_time)
798
+ end
799
+ end
800
+
801
+ # The Game Server Cluster connection information.
802
+ class GameServerClusterConnectionInfo
803
+ include Google::Apis::Core::Hashable
804
+
805
+ # A reference to a GKE cluster.
806
+ # Corresponds to the JSON property `gkeClusterReference`
807
+ # @return [Google::Apis::GameservicesV1beta::GkeClusterReference]
808
+ attr_accessor :gke_cluster_reference
809
+
810
+ # Namespace designated on the Game Server Cluster where the Agones game
811
+ # server instances will be created. Existence of the namespace will be
812
+ # validated during creation.
813
+ # Corresponds to the JSON property `namespace`
814
+ # @return [String]
815
+ attr_accessor :namespace
816
+
817
+ def initialize(**args)
818
+ update!(**args)
819
+ end
820
+
821
+ # Update properties of this object
822
+ def update!(**args)
823
+ @gke_cluster_reference = args[:gke_cluster_reference] if args.key?(:gke_cluster_reference)
824
+ @namespace = args[:namespace] if args.key?(:namespace)
825
+ end
826
+ end
827
+
828
+ # A Game Server Config resource.
829
+ class GameServerConfig
830
+ include Google::Apis::Core::Hashable
831
+
832
+ # Output only. The creation time.
833
+ # Corresponds to the JSON property `createTime`
834
+ # @return [String]
835
+ attr_accessor :create_time
836
+
837
+ # The description of the Game Server Config.
838
+ # Corresponds to the JSON property `description`
839
+ # @return [String]
840
+ attr_accessor :description
841
+
842
+ # FleetConfig contains a list of Agones fleet specs. Only one FleetConfig
843
+ # is allowed.
844
+ # Corresponds to the JSON property `fleetConfigs`
845
+ # @return [Array<Google::Apis::GameservicesV1beta::FleetConfig>]
846
+ attr_accessor :fleet_configs
847
+
848
+ # The labels associated with this Game Server Config. Each label is a
849
+ # key-value pair.
850
+ # Corresponds to the JSON property `labels`
851
+ # @return [Hash<String,String>]
852
+ attr_accessor :labels
853
+
854
+ # The resource name of the Game Server Config. Uses the form:
855
+ # `projects/`project`/locations/`location`/gameServerDeployments/`deployment`/
856
+ # configs/`config``.
857
+ # For example,
858
+ # `projects/my-project/locations/global/gameServerDeployments/my-game/configs/my-
859
+ # config`.
860
+ # Corresponds to the JSON property `name`
861
+ # @return [String]
862
+ attr_accessor :name
863
+
864
+ # The autoscaling settings.
865
+ # Corresponds to the JSON property `scalingConfigs`
866
+ # @return [Array<Google::Apis::GameservicesV1beta::ScalingConfig>]
867
+ attr_accessor :scaling_configs
868
+
869
+ # Output only. The last-modified time.
870
+ # Corresponds to the JSON property `updateTime`
871
+ # @return [String]
872
+ attr_accessor :update_time
873
+
874
+ def initialize(**args)
875
+ update!(**args)
876
+ end
877
+
878
+ # Update properties of this object
879
+ def update!(**args)
880
+ @create_time = args[:create_time] if args.key?(:create_time)
881
+ @description = args[:description] if args.key?(:description)
882
+ @fleet_configs = args[:fleet_configs] if args.key?(:fleet_configs)
883
+ @labels = args[:labels] if args.key?(:labels)
884
+ @name = args[:name] if args.key?(:name)
885
+ @scaling_configs = args[:scaling_configs] if args.key?(:scaling_configs)
886
+ @update_time = args[:update_time] if args.key?(:update_time)
887
+ end
888
+ end
889
+
890
+ # A Game Server Config override.
891
+ class GameServerConfigOverride
892
+ include Google::Apis::Core::Hashable
893
+
894
+ # The game server config for this override.
895
+ # Corresponds to the JSON property `configVersion`
896
+ # @return [String]
897
+ attr_accessor :config_version
898
+
899
+ # The Realm selector, used to match Realm resources.
900
+ # Corresponds to the JSON property `realmsSelector`
901
+ # @return [Google::Apis::GameservicesV1beta::RealmSelector]
902
+ attr_accessor :realms_selector
903
+
904
+ def initialize(**args)
905
+ update!(**args)
906
+ end
907
+
908
+ # Update properties of this object
909
+ def update!(**args)
910
+ @config_version = args[:config_version] if args.key?(:config_version)
911
+ @realms_selector = args[:realms_selector] if args.key?(:realms_selector)
912
+ end
913
+ end
914
+
915
+ # A Game Server Deployment resource.
916
+ class GameServerDeployment
917
+ include Google::Apis::Core::Hashable
918
+
919
+ # Output only. The creation time.
920
+ # Corresponds to the JSON property `createTime`
921
+ # @return [String]
922
+ attr_accessor :create_time
923
+
924
+ # Human readable description of the Game Server Deployment.
925
+ # Corresponds to the JSON property `description`
926
+ # @return [String]
927
+ attr_accessor :description
928
+
929
+ # ETag of the resource.
930
+ # Corresponds to the JSON property `etag`
931
+ # @return [String]
932
+ attr_accessor :etag
933
+
934
+ # The labels associated with this Game Server Deployment. Each label is a
935
+ # key-value pair.
936
+ # Corresponds to the JSON property `labels`
937
+ # @return [Hash<String,String>]
938
+ attr_accessor :labels
939
+
940
+ # The resource name of the Game Server Deployment. Uses the form:
941
+ # `projects/`project`/locations/`location`/gameServerDeployments/`deployment``.
942
+ # For example,
943
+ # `projects/my-project/locations/`location`/gameServerDeployments/my-deployment`.
944
+ # Corresponds to the JSON property `name`
945
+ # @return [String]
946
+ attr_accessor :name
947
+
948
+ # Output only. The last-modified time.
949
+ # Corresponds to the JSON property `updateTime`
950
+ # @return [String]
951
+ attr_accessor :update_time
952
+
953
+ def initialize(**args)
954
+ update!(**args)
955
+ end
956
+
957
+ # Update properties of this object
958
+ def update!(**args)
959
+ @create_time = args[:create_time] if args.key?(:create_time)
960
+ @description = args[:description] if args.key?(:description)
961
+ @etag = args[:etag] if args.key?(:etag)
962
+ @labels = args[:labels] if args.key?(:labels)
963
+ @name = args[:name] if args.key?(:name)
964
+ @update_time = args[:update_time] if args.key?(:update_time)
965
+ end
966
+ end
967
+
968
+ # The Game Server Deployment Rollout which represents the desired rollout
969
+ # state.
970
+ class GameServerDeploymentRollout
971
+ include Google::Apis::Core::Hashable
972
+
973
+ # Output only. The creation time.
974
+ # Corresponds to the JSON property `createTime`
975
+ # @return [String]
976
+ attr_accessor :create_time
977
+
978
+ # The default Game Server Config is applied to all Realms unless overridden
979
+ # in the Rollout. For example,
980
+ # `projects/my-project/locations/global/gameServerDeployments/my-game/configs/my-
981
+ # config`.
982
+ # Corresponds to the JSON property `defaultGameServerConfig`
983
+ # @return [String]
984
+ attr_accessor :default_game_server_config
985
+
986
+ # ETag of the resource.
987
+ # Corresponds to the JSON property `etag`
988
+ # @return [String]
989
+ attr_accessor :etag
990
+
991
+ # Contains the Game Server Config Rollout overrides. Overrides are processed
992
+ # in the order they are listed. Once a match is found for a Realm, the rest
993
+ # of the list is not processed.
994
+ # Corresponds to the JSON property `gameServerConfigOverrides`
995
+ # @return [Array<Google::Apis::GameservicesV1beta::GameServerConfigOverride>]
996
+ attr_accessor :game_server_config_overrides
997
+
998
+ # The resource name of the Game Server Deployment Rollout. Uses the form:
999
+ # `projects/`project`/locations/`location`/gameServerDeployments/`deployment`/
1000
+ # rollout`.
1001
+ # For example,
1002
+ # `projects/my-project/locations/`location`/gameServerDeployments/my-deployment/
1003
+ # rollout`.
1004
+ # Corresponds to the JSON property `name`
1005
+ # @return [String]
1006
+ attr_accessor :name
1007
+
1008
+ # Output only. The last-modified time.
1009
+ # Corresponds to the JSON property `updateTime`
1010
+ # @return [String]
1011
+ attr_accessor :update_time
1012
+
1013
+ def initialize(**args)
1014
+ update!(**args)
1015
+ end
1016
+
1017
+ # Update properties of this object
1018
+ def update!(**args)
1019
+ @create_time = args[:create_time] if args.key?(:create_time)
1020
+ @default_game_server_config = args[:default_game_server_config] if args.key?(:default_game_server_config)
1021
+ @etag = args[:etag] if args.key?(:etag)
1022
+ @game_server_config_overrides = args[:game_server_config_overrides] if args.key?(:game_server_config_overrides)
1023
+ @name = args[:name] if args.key?(:name)
1024
+ @update_time = args[:update_time] if args.key?(:update_time)
1025
+ end
1026
+ end
1027
+
1028
+ # A reference to a GKE cluster.
1029
+ class GkeClusterReference
1030
+ include Google::Apis::Core::Hashable
1031
+
1032
+ # The full or partial name of a GKE cluster, using one of the following
1033
+ # forms:
1034
+ # * `projects/`project`/locations/`location`/clusters/`cluster``
1035
+ # * `locations/`location`/clusters/`cluster``
1036
+ # * ``cluster``
1037
+ # If project and location are not specified, the project and location of the
1038
+ # GameServerCluster resource are used to generate the full name of the
1039
+ # GKE cluster.
1040
+ # Corresponds to the JSON property `cluster`
1041
+ # @return [String]
1042
+ attr_accessor :cluster
1043
+
1044
+ def initialize(**args)
1045
+ update!(**args)
1046
+ end
1047
+
1048
+ # Update properties of this object
1049
+ def update!(**args)
1050
+ @cluster = args[:cluster] if args.key?(:cluster)
1051
+ end
1052
+ end
1053
+
1054
+ # The label selector, used to group labels on the resources.
1055
+ class LabelSelector
1056
+ include Google::Apis::Core::Hashable
1057
+
1058
+ # Resource labels for this selector.
1059
+ # Corresponds to the JSON property `labels`
1060
+ # @return [Hash<String,String>]
1061
+ attr_accessor :labels
1062
+
1063
+ def initialize(**args)
1064
+ update!(**args)
1065
+ end
1066
+
1067
+ # Update properties of this object
1068
+ def update!(**args)
1069
+ @labels = args[:labels] if args.key?(:labels)
1070
+ end
1071
+ end
1072
+
1073
+ # Response message for GameServerClustersService.ListGameServerClusters.
1074
+ class ListGameServerClustersResponse
1075
+ include Google::Apis::Core::Hashable
1076
+
1077
+ # The list of Game Server Clusters.
1078
+ # Corresponds to the JSON property `gameServerClusters`
1079
+ # @return [Array<Google::Apis::GameservicesV1beta::GameServerCluster>]
1080
+ attr_accessor :game_server_clusters
1081
+
1082
+ # Token to retrieve the next page of results, or empty if there are no more
1083
+ # results in the list.
1084
+ # Corresponds to the JSON property `nextPageToken`
1085
+ # @return [String]
1086
+ attr_accessor :next_page_token
1087
+
1088
+ # List of Locations that could not be reached.
1089
+ # Corresponds to the JSON property `unreachable`
1090
+ # @return [Array<String>]
1091
+ attr_accessor :unreachable
1092
+
1093
+ def initialize(**args)
1094
+ update!(**args)
1095
+ end
1096
+
1097
+ # Update properties of this object
1098
+ def update!(**args)
1099
+ @game_server_clusters = args[:game_server_clusters] if args.key?(:game_server_clusters)
1100
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1101
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1102
+ end
1103
+ end
1104
+
1105
+ # Response message for GameServerConfigsService.ListGameServerConfigs.
1106
+ class ListGameServerConfigsResponse
1107
+ include Google::Apis::Core::Hashable
1108
+
1109
+ # The list of Game Server Configs.
1110
+ # Corresponds to the JSON property `gameServerConfigs`
1111
+ # @return [Array<Google::Apis::GameservicesV1beta::GameServerConfig>]
1112
+ attr_accessor :game_server_configs
1113
+
1114
+ # Token to retrieve the next page of results, or empty if there are no more
1115
+ # results in the list.
1116
+ # Corresponds to the JSON property `nextPageToken`
1117
+ # @return [String]
1118
+ attr_accessor :next_page_token
1119
+
1120
+ # List of Locations that could not be reached.
1121
+ # Corresponds to the JSON property `unreachable`
1122
+ # @return [Array<String>]
1123
+ attr_accessor :unreachable
1124
+
1125
+ def initialize(**args)
1126
+ update!(**args)
1127
+ end
1128
+
1129
+ # Update properties of this object
1130
+ def update!(**args)
1131
+ @game_server_configs = args[:game_server_configs] if args.key?(:game_server_configs)
1132
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1133
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1134
+ end
1135
+ end
1136
+
1137
+ # Response message for GameServerDeploymentsService.ListGameServerDeployments.
1138
+ class ListGameServerDeploymentsResponse
1139
+ include Google::Apis::Core::Hashable
1140
+
1141
+ # The list of Game Server Delpoyments.
1142
+ # Corresponds to the JSON property `gameServerDeployments`
1143
+ # @return [Array<Google::Apis::GameservicesV1beta::GameServerDeployment>]
1144
+ attr_accessor :game_server_deployments
1145
+
1146
+ # Token to retrieve the next page of results, or empty if there are no more
1147
+ # results in the list.
1148
+ # Corresponds to the JSON property `nextPageToken`
1149
+ # @return [String]
1150
+ attr_accessor :next_page_token
1151
+
1152
+ # List of Locations that could not be reached.
1153
+ # Corresponds to the JSON property `unreachable`
1154
+ # @return [Array<String>]
1155
+ attr_accessor :unreachable
1156
+
1157
+ def initialize(**args)
1158
+ update!(**args)
1159
+ end
1160
+
1161
+ # Update properties of this object
1162
+ def update!(**args)
1163
+ @game_server_deployments = args[:game_server_deployments] if args.key?(:game_server_deployments)
1164
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1165
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1166
+ end
1167
+ end
1168
+
1169
+ # The response message for Locations.ListLocations.
1170
+ class ListLocationsResponse
1171
+ include Google::Apis::Core::Hashable
1172
+
1173
+ # A list of locations that matches the specified filter in the request.
1174
+ # Corresponds to the JSON property `locations`
1175
+ # @return [Array<Google::Apis::GameservicesV1beta::Location>]
1176
+ attr_accessor :locations
1177
+
1178
+ # The standard List next-page token.
1179
+ # Corresponds to the JSON property `nextPageToken`
1180
+ # @return [String]
1181
+ attr_accessor :next_page_token
1182
+
1183
+ def initialize(**args)
1184
+ update!(**args)
1185
+ end
1186
+
1187
+ # Update properties of this object
1188
+ def update!(**args)
1189
+ @locations = args[:locations] if args.key?(:locations)
1190
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1191
+ end
1192
+ end
1193
+
1194
+ # The response message for Operations.ListOperations.
1195
+ class ListOperationsResponse
1196
+ include Google::Apis::Core::Hashable
1197
+
1198
+ # The standard List next-page token.
1199
+ # Corresponds to the JSON property `nextPageToken`
1200
+ # @return [String]
1201
+ attr_accessor :next_page_token
1202
+
1203
+ # A list of operations that matches the specified filter in the request.
1204
+ # Corresponds to the JSON property `operations`
1205
+ # @return [Array<Google::Apis::GameservicesV1beta::Operation>]
1206
+ attr_accessor :operations
1207
+
1208
+ def initialize(**args)
1209
+ update!(**args)
1210
+ end
1211
+
1212
+ # Update properties of this object
1213
+ def update!(**args)
1214
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1215
+ @operations = args[:operations] if args.key?(:operations)
1216
+ end
1217
+ end
1218
+
1219
+ # Response message for RealmsService.ListRealms.
1220
+ class ListRealmsResponse
1221
+ include Google::Apis::Core::Hashable
1222
+
1223
+ # Token to retrieve the next page of results, or empty if there are no more
1224
+ # results in the list.
1225
+ # Corresponds to the JSON property `nextPageToken`
1226
+ # @return [String]
1227
+ attr_accessor :next_page_token
1228
+
1229
+ # The list of Realms.
1230
+ # Corresponds to the JSON property `realms`
1231
+ # @return [Array<Google::Apis::GameservicesV1beta::Realm>]
1232
+ attr_accessor :realms
1233
+
1234
+ # List of Locations that could not be reached.
1235
+ # Corresponds to the JSON property `unreachable`
1236
+ # @return [Array<String>]
1237
+ attr_accessor :unreachable
1238
+
1239
+ def initialize(**args)
1240
+ update!(**args)
1241
+ end
1242
+
1243
+ # Update properties of this object
1244
+ def update!(**args)
1245
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1246
+ @realms = args[:realms] if args.key?(:realms)
1247
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1248
+ end
1249
+ end
1250
+
1251
+ # A resource that represents Google Cloud Platform location.
1252
+ class Location
1253
+ include Google::Apis::Core::Hashable
1254
+
1255
+ # The friendly name for this location, typically a nearby city name.
1256
+ # For example, "Tokyo".
1257
+ # Corresponds to the JSON property `displayName`
1258
+ # @return [String]
1259
+ attr_accessor :display_name
1260
+
1261
+ # Cross-service attributes for the location. For example
1262
+ # `"cloud.googleapis.com/region": "us-east1"`
1263
+ # Corresponds to the JSON property `labels`
1264
+ # @return [Hash<String,String>]
1265
+ attr_accessor :labels
1266
+
1267
+ # The canonical id for this location. For example: `"us-east1"`.
1268
+ # Corresponds to the JSON property `locationId`
1269
+ # @return [String]
1270
+ attr_accessor :location_id
1271
+
1272
+ # Service-specific metadata. For example the available capacity at the given
1273
+ # location.
1274
+ # Corresponds to the JSON property `metadata`
1275
+ # @return [Hash<String,Object>]
1276
+ attr_accessor :metadata
1277
+
1278
+ # Resource name for the location, which may vary between implementations.
1279
+ # For example: `"projects/example-project/locations/us-east1"`
1280
+ # Corresponds to the JSON property `name`
1281
+ # @return [String]
1282
+ attr_accessor :name
1283
+
1284
+ def initialize(**args)
1285
+ update!(**args)
1286
+ end
1287
+
1288
+ # Update properties of this object
1289
+ def update!(**args)
1290
+ @display_name = args[:display_name] if args.key?(:display_name)
1291
+ @labels = args[:labels] if args.key?(:labels)
1292
+ @location_id = args[:location_id] if args.key?(:location_id)
1293
+ @metadata = args[:metadata] if args.key?(:metadata)
1294
+ @name = args[:name] if args.key?(:name)
1295
+ end
1296
+ end
1297
+
1298
+ # Specifies what kind of log the caller must write
1299
+ class LogConfig
1300
+ include Google::Apis::Core::Hashable
1301
+
1302
+ # Write a Cloud Audit log
1303
+ # Corresponds to the JSON property `cloudAudit`
1304
+ # @return [Google::Apis::GameservicesV1beta::CloudAuditOptions]
1305
+ attr_accessor :cloud_audit
1306
+
1307
+ # Increment a streamz counter with the specified metric and field names.
1308
+ # Metric names should start with a '/', generally be lowercase-only,
1309
+ # and end in "_count". Field names should not contain an initial slash.
1310
+ # The actual exported metric names will have "/iam/policy" prepended.
1311
+ # Field names correspond to IAM request parameters and field values are
1312
+ # their respective values.
1313
+ # Supported field names:
1314
+ # - "authority", which is "[token]" if IAMContext.token is present,
1315
+ # otherwise the value of IAMContext.authority_selector if present, and
1316
+ # otherwise a representation of IAMContext.principal; or
1317
+ # - "iam_principal", a representation of IAMContext.principal even if a
1318
+ # token or authority selector is present; or
1319
+ # - "" (empty string), resulting in a counter with no fields.
1320
+ # Examples:
1321
+ # counter ` metric: "/debug_access_count" field: "iam_principal" `
1322
+ # ==> increment counter /iam/policy/debug_access_count
1323
+ # `iam_principal=[value of IAMContext.principal]`
1324
+ # Corresponds to the JSON property `counter`
1325
+ # @return [Google::Apis::GameservicesV1beta::CounterOptions]
1326
+ attr_accessor :counter
1327
+
1328
+ # Write a Data Access (Gin) log
1329
+ # Corresponds to the JSON property `dataAccess`
1330
+ # @return [Google::Apis::GameservicesV1beta::DataAccessOptions]
1331
+ attr_accessor :data_access
1332
+
1333
+ def initialize(**args)
1334
+ update!(**args)
1335
+ end
1336
+
1337
+ # Update properties of this object
1338
+ def update!(**args)
1339
+ @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
1340
+ @counter = args[:counter] if args.key?(:counter)
1341
+ @data_access = args[:data_access] if args.key?(:data_access)
1342
+ end
1343
+ end
1344
+
1345
+ # This resource represents a long-running operation that is the result of a
1346
+ # network API call.
1347
+ class Operation
1348
+ include Google::Apis::Core::Hashable
1349
+
1350
+ # If the value is `false`, it means the operation is still in progress.
1351
+ # If `true`, the operation is completed, and either `error` or `response` is
1352
+ # available.
1353
+ # Corresponds to the JSON property `done`
1354
+ # @return [Boolean]
1355
+ attr_accessor :done
1356
+ alias_method :done?, :done
1357
+
1358
+ # The `Status` type defines a logical error model that is suitable for
1359
+ # different programming environments, including REST APIs and RPC APIs. It is
1360
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1361
+ # three pieces of data: error code, error message, and error details.
1362
+ # You can find out more about this error model and how to work with it in the
1363
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
1364
+ # Corresponds to the JSON property `error`
1365
+ # @return [Google::Apis::GameservicesV1beta::Status]
1366
+ attr_accessor :error
1367
+
1368
+ # Service-specific metadata associated with the operation. It typically
1369
+ # contains progress information and common metadata such as create time.
1370
+ # Some services might not provide such metadata. Any method that returns a
1371
+ # long-running operation should document the metadata type, if any.
1372
+ # Corresponds to the JSON property `metadata`
1373
+ # @return [Hash<String,Object>]
1374
+ attr_accessor :metadata
1375
+
1376
+ # The server-assigned name, which is only unique within the same service that
1377
+ # originally returns it. If you use the default HTTP mapping, the
1378
+ # `name` should be a resource name ending with `operations/`unique_id``.
1379
+ # Corresponds to the JSON property `name`
1380
+ # @return [String]
1381
+ attr_accessor :name
1382
+
1383
+ # The normal response of the operation in case of success. If the original
1384
+ # method returns no data on success, such as `Delete`, the response is
1385
+ # `google.protobuf.Empty`. If the original method is standard
1386
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
1387
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
1388
+ # is the original method name. For example, if the original method name
1389
+ # is `TakeSnapshot()`, the inferred response type is
1390
+ # `TakeSnapshotResponse`.
1391
+ # Corresponds to the JSON property `response`
1392
+ # @return [Hash<String,Object>]
1393
+ attr_accessor :response
1394
+
1395
+ def initialize(**args)
1396
+ update!(**args)
1397
+ end
1398
+
1399
+ # Update properties of this object
1400
+ def update!(**args)
1401
+ @done = args[:done] if args.key?(:done)
1402
+ @error = args[:error] if args.key?(:error)
1403
+ @metadata = args[:metadata] if args.key?(:metadata)
1404
+ @name = args[:name] if args.key?(:name)
1405
+ @response = args[:response] if args.key?(:response)
1406
+ end
1407
+ end
1408
+
1409
+ # Represents the metadata of the long-running operation.
1410
+ class OperationMetadata
1411
+ include Google::Apis::Core::Hashable
1412
+
1413
+ # Output only. API version used to start the operation.
1414
+ # Corresponds to the JSON property `apiVersion`
1415
+ # @return [String]
1416
+ attr_accessor :api_version
1417
+
1418
+ # Output only. The time the operation was created.
1419
+ # Corresponds to the JSON property `createTime`
1420
+ # @return [String]
1421
+ attr_accessor :create_time
1422
+
1423
+ # Output only. The time the operation finished running.
1424
+ # Corresponds to the JSON property `endTime`
1425
+ # @return [String]
1426
+ attr_accessor :end_time
1427
+
1428
+ # Output only. Operation status for gameservices API operations. Operation
1429
+ # status is in
1430
+ # the form of key-value pairs where keys are resource IDs and the values show
1431
+ # the status of the operation. In case of failures, the value includes an
1432
+ # error code and error message.
1433
+ # Corresponds to the JSON property `operationStatus`
1434
+ # @return [Hash<String,Google::Apis::GameservicesV1beta::OperationStatus>]
1435
+ attr_accessor :operation_status
1436
+
1437
+ # Output only. Identifies whether the user has requested cancellation
1438
+ # of the operation. Operations that have successfully been cancelled
1439
+ # have Operation.error value with a google.rpc.Status.code of 1,
1440
+ # corresponding to `Code.CANCELLED`.
1441
+ # Corresponds to the JSON property `requestedCancellation`
1442
+ # @return [Boolean]
1443
+ attr_accessor :requested_cancellation
1444
+ alias_method :requested_cancellation?, :requested_cancellation
1445
+
1446
+ # Output only. Human-readable status of the operation, if any.
1447
+ # Corresponds to the JSON property `statusMessage`
1448
+ # @return [String]
1449
+ attr_accessor :status_message
1450
+
1451
+ # Output only. Server-defined resource path for the target of the operation.
1452
+ # Corresponds to the JSON property `target`
1453
+ # @return [String]
1454
+ attr_accessor :target
1455
+
1456
+ # Output only. List of Locations that could not be reached.
1457
+ # Corresponds to the JSON property `unreachable`
1458
+ # @return [Array<String>]
1459
+ attr_accessor :unreachable
1460
+
1461
+ # Output only. Name of the verb executed by the operation.
1462
+ # Corresponds to the JSON property `verb`
1463
+ # @return [String]
1464
+ attr_accessor :verb
1465
+
1466
+ def initialize(**args)
1467
+ update!(**args)
1468
+ end
1469
+
1470
+ # Update properties of this object
1471
+ def update!(**args)
1472
+ @api_version = args[:api_version] if args.key?(:api_version)
1473
+ @create_time = args[:create_time] if args.key?(:create_time)
1474
+ @end_time = args[:end_time] if args.key?(:end_time)
1475
+ @operation_status = args[:operation_status] if args.key?(:operation_status)
1476
+ @requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
1477
+ @status_message = args[:status_message] if args.key?(:status_message)
1478
+ @target = args[:target] if args.key?(:target)
1479
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1480
+ @verb = args[:verb] if args.key?(:verb)
1481
+ end
1482
+ end
1483
+
1484
+ #
1485
+ class OperationStatus
1486
+ include Google::Apis::Core::Hashable
1487
+
1488
+ # Output only. Whether the operation is done or still in progress.
1489
+ # Corresponds to the JSON property `done`
1490
+ # @return [Boolean]
1491
+ attr_accessor :done
1492
+ alias_method :done?, :done
1493
+
1494
+ # The error code in case of failures.
1495
+ # Corresponds to the JSON property `errorCode`
1496
+ # @return [String]
1497
+ attr_accessor :error_code
1498
+
1499
+ # The human-readable error message.
1500
+ # Corresponds to the JSON property `errorMessage`
1501
+ # @return [String]
1502
+ attr_accessor :error_message
1503
+
1504
+ def initialize(**args)
1505
+ update!(**args)
1506
+ end
1507
+
1508
+ # Update properties of this object
1509
+ def update!(**args)
1510
+ @done = args[:done] if args.key?(:done)
1511
+ @error_code = args[:error_code] if args.key?(:error_code)
1512
+ @error_message = args[:error_message] if args.key?(:error_message)
1513
+ end
1514
+ end
1515
+
1516
+ # An Identity and Access Management (IAM) policy, which specifies access
1517
+ # controls for Google Cloud resources.
1518
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1519
+ # `members` to a single `role`. Members can be user accounts, service accounts,
1520
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
1521
+ # permissions; each `role` can be an IAM predefined role or a user-created
1522
+ # custom role.
1523
+ # Optionally, a `binding` can specify a `condition`, which is a logical
1524
+ # expression that allows access to a resource only if the expression evaluates
1525
+ # to `true`. A condition can add constraints based on attributes of the
1526
+ # request, the resource, or both.
1527
+ # **JSON example:**
1528
+ # `
1529
+ # "bindings": [
1530
+ # `
1531
+ # "role": "roles/resourcemanager.organizationAdmin",
1532
+ # "members": [
1533
+ # "user:mike@example.com",
1534
+ # "group:admins@example.com",
1535
+ # "domain:google.com",
1536
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
1537
+ # ]
1538
+ # `,
1539
+ # `
1540
+ # "role": "roles/resourcemanager.organizationViewer",
1541
+ # "members": ["user:eve@example.com"],
1542
+ # "condition": `
1543
+ # "title": "expirable access",
1544
+ # "description": "Does not grant access after Sep 2020",
1545
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1546
+ # ",
1547
+ # `
1548
+ # `
1549
+ # ],
1550
+ # "etag": "BwWWja0YfJA=",
1551
+ # "version": 3
1552
+ # `
1553
+ # **YAML example:**
1554
+ # bindings:
1555
+ # - members:
1556
+ # - user:mike@example.com
1557
+ # - group:admins@example.com
1558
+ # - domain:google.com
1559
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1560
+ # role: roles/resourcemanager.organizationAdmin
1561
+ # - members:
1562
+ # - user:eve@example.com
1563
+ # role: roles/resourcemanager.organizationViewer
1564
+ # condition:
1565
+ # title: expirable access
1566
+ # description: Does not grant access after Sep 2020
1567
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1568
+ # - etag: BwWWja0YfJA=
1569
+ # - version: 3
1570
+ # For a description of IAM and its features, see the
1571
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
1572
+ class Policy
1573
+ include Google::Apis::Core::Hashable
1574
+
1575
+ # Specifies cloud audit logging configuration for this policy.
1576
+ # Corresponds to the JSON property `auditConfigs`
1577
+ # @return [Array<Google::Apis::GameservicesV1beta::AuditConfig>]
1578
+ attr_accessor :audit_configs
1579
+
1580
+ # Associates a list of `members` to a `role`. Optionally, may specify a
1581
+ # `condition` that determines how and when the `bindings` are applied. Each
1582
+ # of the `bindings` must contain at least one member.
1583
+ # Corresponds to the JSON property `bindings`
1584
+ # @return [Array<Google::Apis::GameservicesV1beta::Binding>]
1585
+ attr_accessor :bindings
1586
+
1587
+ # `etag` is used for optimistic concurrency control as a way to help
1588
+ # prevent simultaneous updates of a policy from overwriting each other.
1589
+ # It is strongly suggested that systems make use of the `etag` in the
1590
+ # read-modify-write cycle to perform policy updates in order to avoid race
1591
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1592
+ # systems are expected to put that etag in the request to `setIamPolicy` to
1593
+ # ensure that their change will be applied to the same version of the policy.
1594
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
1595
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1596
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
1597
+ # the conditions in the version `3` policy are lost.
1598
+ # Corresponds to the JSON property `etag`
1599
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1600
+ # @return [String]
1601
+ attr_accessor :etag
1602
+
1603
+ #
1604
+ # Corresponds to the JSON property `iamOwned`
1605
+ # @return [Boolean]
1606
+ attr_accessor :iam_owned
1607
+ alias_method :iam_owned?, :iam_owned
1608
+
1609
+ # If more than one rule is specified, the rules are applied in the following
1610
+ # manner:
1611
+ # - All matching LOG rules are always applied.
1612
+ # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
1613
+ # Logging will be applied if one or more matching rule requires logging.
1614
+ # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
1615
+ # granted.
1616
+ # Logging will be applied if one or more matching rule requires logging.
1617
+ # - Otherwise, if no rule applies, permission is denied.
1618
+ # Corresponds to the JSON property `rules`
1619
+ # @return [Array<Google::Apis::GameservicesV1beta::Rule>]
1620
+ attr_accessor :rules
1621
+
1622
+ # Specifies the format of the policy.
1623
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1624
+ # are rejected.
1625
+ # Any operation that affects conditional role bindings must specify version
1626
+ # `3`. This requirement applies to the following operations:
1627
+ # * Getting a policy that includes a conditional role binding
1628
+ # * Adding a conditional role binding to a policy
1629
+ # * Changing a conditional role binding in a policy
1630
+ # * Removing any role binding, with or without a condition, from a policy
1631
+ # that includes conditions
1632
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
1633
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1634
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
1635
+ # the conditions in the version `3` policy are lost.
1636
+ # If a policy does not include any conditions, operations on that policy may
1637
+ # specify any valid version or leave the field unset.
1638
+ # Corresponds to the JSON property `version`
1639
+ # @return [Fixnum]
1640
+ attr_accessor :version
1641
+
1642
+ def initialize(**args)
1643
+ update!(**args)
1644
+ end
1645
+
1646
+ # Update properties of this object
1647
+ def update!(**args)
1648
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
1649
+ @bindings = args[:bindings] if args.key?(:bindings)
1650
+ @etag = args[:etag] if args.key?(:etag)
1651
+ @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
1652
+ @rules = args[:rules] if args.key?(:rules)
1653
+ @version = args[:version] if args.key?(:version)
1654
+ end
1655
+ end
1656
+
1657
+ # Response message for
1658
+ # GameServerClustersService.PreviewCreateGameServerCluster.
1659
+ class PreviewCreateGameServerClusterResponse
1660
+ include Google::Apis::Core::Hashable
1661
+
1662
+ # The ETag of the game server cluster.
1663
+ # Corresponds to the JSON property `etag`
1664
+ # @return [String]
1665
+ attr_accessor :etag
1666
+
1667
+ # Encapsulates the Target state.
1668
+ # Corresponds to the JSON property `targetState`
1669
+ # @return [Google::Apis::GameservicesV1beta::TargetState]
1670
+ attr_accessor :target_state
1671
+
1672
+ def initialize(**args)
1673
+ update!(**args)
1674
+ end
1675
+
1676
+ # Update properties of this object
1677
+ def update!(**args)
1678
+ @etag = args[:etag] if args.key?(:etag)
1679
+ @target_state = args[:target_state] if args.key?(:target_state)
1680
+ end
1681
+ end
1682
+
1683
+ # Response message for
1684
+ # GameServerClustersService.PreviewDeleteGameServerCluster.
1685
+ class PreviewDeleteGameServerClusterResponse
1686
+ include Google::Apis::Core::Hashable
1687
+
1688
+ # The ETag of the game server cluster.
1689
+ # Corresponds to the JSON property `etag`
1690
+ # @return [String]
1691
+ attr_accessor :etag
1692
+
1693
+ # Encapsulates the Target state.
1694
+ # Corresponds to the JSON property `targetState`
1695
+ # @return [Google::Apis::GameservicesV1beta::TargetState]
1696
+ attr_accessor :target_state
1697
+
1698
+ def initialize(**args)
1699
+ update!(**args)
1700
+ end
1701
+
1702
+ # Update properties of this object
1703
+ def update!(**args)
1704
+ @etag = args[:etag] if args.key?(:etag)
1705
+ @target_state = args[:target_state] if args.key?(:target_state)
1706
+ end
1707
+ end
1708
+
1709
+ # Response message for PreviewGameServerDeploymentRollout.
1710
+ # This has details about the Agones fleet and autoscaler to be actuated.
1711
+ class PreviewGameServerDeploymentRolloutResponse
1712
+ include Google::Apis::Core::Hashable
1713
+
1714
+ # ETag of the Game Server Deployment.
1715
+ # Corresponds to the JSON property `etag`
1716
+ # @return [String]
1717
+ attr_accessor :etag
1718
+
1719
+ # Encapsulates the Target state.
1720
+ # Corresponds to the JSON property `targetState`
1721
+ # @return [Google::Apis::GameservicesV1beta::TargetState]
1722
+ attr_accessor :target_state
1723
+
1724
+ # Locations that could not be reached on this request.
1725
+ # Corresponds to the JSON property `unavailable`
1726
+ # @return [Array<String>]
1727
+ attr_accessor :unavailable
1728
+
1729
+ def initialize(**args)
1730
+ update!(**args)
1731
+ end
1732
+
1733
+ # Update properties of this object
1734
+ def update!(**args)
1735
+ @etag = args[:etag] if args.key?(:etag)
1736
+ @target_state = args[:target_state] if args.key?(:target_state)
1737
+ @unavailable = args[:unavailable] if args.key?(:unavailable)
1738
+ end
1739
+ end
1740
+
1741
+ # Response message for RealmsService.PreviewRealmUpdate.
1742
+ class PreviewRealmUpdateResponse
1743
+ include Google::Apis::Core::Hashable
1744
+
1745
+ # ETag of the realm.
1746
+ # Corresponds to the JSON property `etag`
1747
+ # @return [String]
1748
+ attr_accessor :etag
1749
+
1750
+ # Encapsulates the Target state.
1751
+ # Corresponds to the JSON property `targetState`
1752
+ # @return [Google::Apis::GameservicesV1beta::TargetState]
1753
+ attr_accessor :target_state
1754
+
1755
+ def initialize(**args)
1756
+ update!(**args)
1757
+ end
1758
+
1759
+ # Update properties of this object
1760
+ def update!(**args)
1761
+ @etag = args[:etag] if args.key?(:etag)
1762
+ @target_state = args[:target_state] if args.key?(:target_state)
1763
+ end
1764
+ end
1765
+
1766
+ # Response message for GameServerClustersService.PreviewUpdateGameServerCluster
1767
+ class PreviewUpdateGameServerClusterResponse
1768
+ include Google::Apis::Core::Hashable
1769
+
1770
+ # The ETag of the game server cluster.
1771
+ # Corresponds to the JSON property `etag`
1772
+ # @return [String]
1773
+ attr_accessor :etag
1774
+
1775
+ # Encapsulates the Target state.
1776
+ # Corresponds to the JSON property `targetState`
1777
+ # @return [Google::Apis::GameservicesV1beta::TargetState]
1778
+ attr_accessor :target_state
1779
+
1780
+ def initialize(**args)
1781
+ update!(**args)
1782
+ end
1783
+
1784
+ # Update properties of this object
1785
+ def update!(**args)
1786
+ @etag = args[:etag] if args.key?(:etag)
1787
+ @target_state = args[:target_state] if args.key?(:target_state)
1788
+ end
1789
+ end
1790
+
1791
+ # A Realm resource.
1792
+ class Realm
1793
+ include Google::Apis::Core::Hashable
1794
+
1795
+ # Output only. The creation time.
1796
+ # Corresponds to the JSON property `createTime`
1797
+ # @return [String]
1798
+ attr_accessor :create_time
1799
+
1800
+ # Human readable description of the Realm.
1801
+ # Corresponds to the JSON property `description`
1802
+ # @return [String]
1803
+ attr_accessor :description
1804
+
1805
+ # ETag of the resource.
1806
+ # Corresponds to the JSON property `etag`
1807
+ # @return [String]
1808
+ attr_accessor :etag
1809
+
1810
+ # The labels associated with this Realm. Each label is a key-value pair.
1811
+ # Corresponds to the JSON property `labels`
1812
+ # @return [Hash<String,String>]
1813
+ attr_accessor :labels
1814
+
1815
+ # The resource name of the Realm. Uses the form:
1816
+ # `projects/`project`/locations/`location`/realms/`realm``. For
1817
+ # example, `projects/my-project/locations/`location`/realms/my-realm`.
1818
+ # Corresponds to the JSON property `name`
1819
+ # @return [String]
1820
+ attr_accessor :name
1821
+
1822
+ # Required. Time zone where all policies targeting this Realm are evaluated. The
1823
+ # value
1824
+ # of this field must be from the IANA time zone database:
1825
+ # https://www.iana.org/time-zones.
1826
+ # Corresponds to the JSON property `timeZone`
1827
+ # @return [String]
1828
+ attr_accessor :time_zone
1829
+
1830
+ # Output only. The last-modified time.
1831
+ # Corresponds to the JSON property `updateTime`
1832
+ # @return [String]
1833
+ attr_accessor :update_time
1834
+
1835
+ def initialize(**args)
1836
+ update!(**args)
1837
+ end
1838
+
1839
+ # Update properties of this object
1840
+ def update!(**args)
1841
+ @create_time = args[:create_time] if args.key?(:create_time)
1842
+ @description = args[:description] if args.key?(:description)
1843
+ @etag = args[:etag] if args.key?(:etag)
1844
+ @labels = args[:labels] if args.key?(:labels)
1845
+ @name = args[:name] if args.key?(:name)
1846
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
1847
+ @update_time = args[:update_time] if args.key?(:update_time)
1848
+ end
1849
+ end
1850
+
1851
+ # The Realm selector, used to match Realm resources.
1852
+ class RealmSelector
1853
+ include Google::Apis::Core::Hashable
1854
+
1855
+ # List of Realms to match.
1856
+ # Corresponds to the JSON property `realms`
1857
+ # @return [Array<String>]
1858
+ attr_accessor :realms
1859
+
1860
+ def initialize(**args)
1861
+ update!(**args)
1862
+ end
1863
+
1864
+ # Update properties of this object
1865
+ def update!(**args)
1866
+ @realms = args[:realms] if args.key?(:realms)
1867
+ end
1868
+ end
1869
+
1870
+ # A rule to be applied in a Policy.
1871
+ class Rule
1872
+ include Google::Apis::Core::Hashable
1873
+
1874
+ # Required
1875
+ # Corresponds to the JSON property `action`
1876
+ # @return [String]
1877
+ attr_accessor :action
1878
+
1879
+ # Additional restrictions that must be met. All conditions must pass for the
1880
+ # rule to match.
1881
+ # Corresponds to the JSON property `conditions`
1882
+ # @return [Array<Google::Apis::GameservicesV1beta::Condition>]
1883
+ attr_accessor :conditions
1884
+
1885
+ # Human-readable description of the rule.
1886
+ # Corresponds to the JSON property `description`
1887
+ # @return [String]
1888
+ attr_accessor :description
1889
+
1890
+ # If one or more 'in' clauses are specified, the rule matches if
1891
+ # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
1892
+ # Corresponds to the JSON property `in`
1893
+ # @return [Array<String>]
1894
+ attr_accessor :in
1895
+
1896
+ # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
1897
+ # that match the LOG action.
1898
+ # Corresponds to the JSON property `logConfig`
1899
+ # @return [Array<Google::Apis::GameservicesV1beta::LogConfig>]
1900
+ attr_accessor :log_config
1901
+
1902
+ # If one or more 'not_in' clauses are specified, the rule matches
1903
+ # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
1904
+ # The format for in and not_in entries can be found at in the Local IAM
1905
+ # documentation (see go/local-iam#features).
1906
+ # Corresponds to the JSON property `notIn`
1907
+ # @return [Array<String>]
1908
+ attr_accessor :not_in
1909
+
1910
+ # A permission is a string of form '<service>.<resource type>.<verb>'
1911
+ # (e.g., 'storage.buckets.list'). A value of '*' matches all permissions,
1912
+ # and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
1913
+ # Corresponds to the JSON property `permissions`
1914
+ # @return [Array<String>]
1915
+ attr_accessor :permissions
1916
+
1917
+ def initialize(**args)
1918
+ update!(**args)
1919
+ end
1920
+
1921
+ # Update properties of this object
1922
+ def update!(**args)
1923
+ @action = args[:action] if args.key?(:action)
1924
+ @conditions = args[:conditions] if args.key?(:conditions)
1925
+ @description = args[:description] if args.key?(:description)
1926
+ @in = args[:in] if args.key?(:in)
1927
+ @log_config = args[:log_config] if args.key?(:log_config)
1928
+ @not_in = args[:not_in] if args.key?(:not_in)
1929
+ @permissions = args[:permissions] if args.key?(:permissions)
1930
+ end
1931
+ end
1932
+
1933
+ # Autoscaling config for an Agones fleet.
1934
+ class ScalingConfig
1935
+ include Google::Apis::Core::Hashable
1936
+
1937
+ # Required. Agones fleet autoscaler spec. Example spec:
1938
+ # https://agones.dev/site/docs/reference/fleetautoscaler/
1939
+ # Corresponds to the JSON property `fleetAutoscalerSpec`
1940
+ # @return [String]
1941
+ attr_accessor :fleet_autoscaler_spec
1942
+
1943
+ # Required. The name of the Scaling Config
1944
+ # Corresponds to the JSON property `name`
1945
+ # @return [String]
1946
+ attr_accessor :name
1947
+
1948
+ # The schedules to which this Scaling Config applies.
1949
+ # Corresponds to the JSON property `schedules`
1950
+ # @return [Array<Google::Apis::GameservicesV1beta::Schedule>]
1951
+ attr_accessor :schedules
1952
+
1953
+ # Labels used to identify the Game Server Clusters to which this Agones
1954
+ # scaling config applies. A Game Server Cluster is subject to this Agones
1955
+ # scaling config if its labels match any of the selector entries.
1956
+ # Corresponds to the JSON property `selectors`
1957
+ # @return [Array<Google::Apis::GameservicesV1beta::LabelSelector>]
1958
+ attr_accessor :selectors
1959
+
1960
+ def initialize(**args)
1961
+ update!(**args)
1962
+ end
1963
+
1964
+ # Update properties of this object
1965
+ def update!(**args)
1966
+ @fleet_autoscaler_spec = args[:fleet_autoscaler_spec] if args.key?(:fleet_autoscaler_spec)
1967
+ @name = args[:name] if args.key?(:name)
1968
+ @schedules = args[:schedules] if args.key?(:schedules)
1969
+ @selectors = args[:selectors] if args.key?(:selectors)
1970
+ end
1971
+ end
1972
+
1973
+ # The schedule of a recurring or one time event. The event's time span is
1974
+ # specified by start_time and end_time. If the scheduled event's timespan is
1975
+ # larger than the cron_spec + cron_job_duration, the event will be recurring.
1976
+ # If only cron_spec + cron_job_duration are specified, the event is effective
1977
+ # starting at the local time specified by cron_spec, and is recurring.
1978
+ # start_time|-------[cron job]-------[cron job]-------[cron job]---|end_time
1979
+ # cron job: cron spec start time + duration
1980
+ class Schedule
1981
+ include Google::Apis::Core::Hashable
1982
+
1983
+ # The duration for the cron job event. The duration of the event is effective
1984
+ # after the cron job's start time.
1985
+ # Corresponds to the JSON property `cronJobDuration`
1986
+ # @return [String]
1987
+ attr_accessor :cron_job_duration
1988
+
1989
+ # The cron definition of the scheduled event. See
1990
+ # https://en.wikipedia.org/wiki/Cron. Cron spec specifies the local time as
1991
+ # defined by the Realm.
1992
+ # Corresponds to the JSON property `cronSpec`
1993
+ # @return [String]
1994
+ attr_accessor :cron_spec
1995
+
1996
+ # The end time of the event.
1997
+ # Corresponds to the JSON property `endTime`
1998
+ # @return [String]
1999
+ attr_accessor :end_time
2000
+
2001
+ # The start time of the event.
2002
+ # Corresponds to the JSON property `startTime`
2003
+ # @return [String]
2004
+ attr_accessor :start_time
2005
+
2006
+ def initialize(**args)
2007
+ update!(**args)
2008
+ end
2009
+
2010
+ # Update properties of this object
2011
+ def update!(**args)
2012
+ @cron_job_duration = args[:cron_job_duration] if args.key?(:cron_job_duration)
2013
+ @cron_spec = args[:cron_spec] if args.key?(:cron_spec)
2014
+ @end_time = args[:end_time] if args.key?(:end_time)
2015
+ @start_time = args[:start_time] if args.key?(:start_time)
2016
+ end
2017
+ end
2018
+
2019
+ # Request message for `SetIamPolicy` method.
2020
+ class SetIamPolicyRequest
2021
+ include Google::Apis::Core::Hashable
2022
+
2023
+ # An Identity and Access Management (IAM) policy, which specifies access
2024
+ # controls for Google Cloud resources.
2025
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
2026
+ # `members` to a single `role`. Members can be user accounts, service accounts,
2027
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
2028
+ # permissions; each `role` can be an IAM predefined role or a user-created
2029
+ # custom role.
2030
+ # Optionally, a `binding` can specify a `condition`, which is a logical
2031
+ # expression that allows access to a resource only if the expression evaluates
2032
+ # to `true`. A condition can add constraints based on attributes of the
2033
+ # request, the resource, or both.
2034
+ # **JSON example:**
2035
+ # `
2036
+ # "bindings": [
2037
+ # `
2038
+ # "role": "roles/resourcemanager.organizationAdmin",
2039
+ # "members": [
2040
+ # "user:mike@example.com",
2041
+ # "group:admins@example.com",
2042
+ # "domain:google.com",
2043
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
2044
+ # ]
2045
+ # `,
2046
+ # `
2047
+ # "role": "roles/resourcemanager.organizationViewer",
2048
+ # "members": ["user:eve@example.com"],
2049
+ # "condition": `
2050
+ # "title": "expirable access",
2051
+ # "description": "Does not grant access after Sep 2020",
2052
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
2053
+ # ",
2054
+ # `
2055
+ # `
2056
+ # ],
2057
+ # "etag": "BwWWja0YfJA=",
2058
+ # "version": 3
2059
+ # `
2060
+ # **YAML example:**
2061
+ # bindings:
2062
+ # - members:
2063
+ # - user:mike@example.com
2064
+ # - group:admins@example.com
2065
+ # - domain:google.com
2066
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
2067
+ # role: roles/resourcemanager.organizationAdmin
2068
+ # - members:
2069
+ # - user:eve@example.com
2070
+ # role: roles/resourcemanager.organizationViewer
2071
+ # condition:
2072
+ # title: expirable access
2073
+ # description: Does not grant access after Sep 2020
2074
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
2075
+ # - etag: BwWWja0YfJA=
2076
+ # - version: 3
2077
+ # For a description of IAM and its features, see the
2078
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
2079
+ # Corresponds to the JSON property `policy`
2080
+ # @return [Google::Apis::GameservicesV1beta::Policy]
2081
+ attr_accessor :policy
2082
+
2083
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
2084
+ # the fields in the mask will be modified. If no mask is provided, the
2085
+ # following default mask is used:
2086
+ # paths: "bindings, etag"
2087
+ # This field is only used by Cloud IAM.
2088
+ # Corresponds to the JSON property `updateMask`
2089
+ # @return [String]
2090
+ attr_accessor :update_mask
2091
+
2092
+ def initialize(**args)
2093
+ update!(**args)
2094
+ end
2095
+
2096
+ # Update properties of this object
2097
+ def update!(**args)
2098
+ @policy = args[:policy] if args.key?(:policy)
2099
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
2100
+ end
2101
+ end
2102
+
2103
+ # Encapsulates Agones fleet spec and Agones autoscaler spec sources.
2104
+ class SpecSource
2105
+ include Google::Apis::Core::Hashable
2106
+
2107
+ # The Game Server Config resource. Uses the form:
2108
+ # `projects/`project`/locations/`location`/gameServerDeployments/`deployment_id`/
2109
+ # configs/`config_id``.
2110
+ # Corresponds to the JSON property `gameServerConfigName`
2111
+ # @return [String]
2112
+ attr_accessor :game_server_config_name
2113
+
2114
+ # The name of the Agones leet config or Agones scaling config used to derive
2115
+ # the Agones fleet or Agones autoscaler spec.
2116
+ # Corresponds to the JSON property `name`
2117
+ # @return [String]
2118
+ attr_accessor :name
2119
+
2120
+ def initialize(**args)
2121
+ update!(**args)
2122
+ end
2123
+
2124
+ # Update properties of this object
2125
+ def update!(**args)
2126
+ @game_server_config_name = args[:game_server_config_name] if args.key?(:game_server_config_name)
2127
+ @name = args[:name] if args.key?(:name)
2128
+ end
2129
+ end
2130
+
2131
+ # The `Status` type defines a logical error model that is suitable for
2132
+ # different programming environments, including REST APIs and RPC APIs. It is
2133
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
2134
+ # three pieces of data: error code, error message, and error details.
2135
+ # You can find out more about this error model and how to work with it in the
2136
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
2137
+ class Status
2138
+ include Google::Apis::Core::Hashable
2139
+
2140
+ # The status code, which should be an enum value of google.rpc.Code.
2141
+ # Corresponds to the JSON property `code`
2142
+ # @return [Fixnum]
2143
+ attr_accessor :code
2144
+
2145
+ # A list of messages that carry the error details. There is a common set of
2146
+ # message types for APIs to use.
2147
+ # Corresponds to the JSON property `details`
2148
+ # @return [Array<Hash<String,Object>>]
2149
+ attr_accessor :details
2150
+
2151
+ # A developer-facing error message, which should be in English. Any
2152
+ # user-facing error message should be localized and sent in the
2153
+ # google.rpc.Status.details field, or localized by the client.
2154
+ # Corresponds to the JSON property `message`
2155
+ # @return [String]
2156
+ attr_accessor :message
2157
+
2158
+ def initialize(**args)
2159
+ update!(**args)
2160
+ end
2161
+
2162
+ # Update properties of this object
2163
+ def update!(**args)
2164
+ @code = args[:code] if args.key?(:code)
2165
+ @details = args[:details] if args.key?(:details)
2166
+ @message = args[:message] if args.key?(:message)
2167
+ end
2168
+ end
2169
+
2170
+ # Details about the Agones resources.
2171
+ class TargetDetails
2172
+ include Google::Apis::Core::Hashable
2173
+
2174
+ # Agones fleet details for Game Server Clusters and Game Server Deployments.
2175
+ # Corresponds to the JSON property `fleetDetails`
2176
+ # @return [Array<Google::Apis::GameservicesV1beta::TargetFleetDetails>]
2177
+ attr_accessor :fleet_details
2178
+
2179
+ # The Game Server Cluster name. Uses the form:
2180
+ # `projects/`project`/locations/`location`/realms/`realm`/gameServerClusters/`
2181
+ # cluster``.
2182
+ # Corresponds to the JSON property `gameServerClusterName`
2183
+ # @return [String]
2184
+ attr_accessor :game_server_cluster_name
2185
+
2186
+ # The Game Server Deployment name. Uses the form:
2187
+ # `projects/`project`/locations/`location`/gameServerDeployments/`deployment_id``
2188
+ # .
2189
+ # Corresponds to the JSON property `gameServerDeploymentName`
2190
+ # @return [String]
2191
+ attr_accessor :game_server_deployment_name
2192
+
2193
+ def initialize(**args)
2194
+ update!(**args)
2195
+ end
2196
+
2197
+ # Update properties of this object
2198
+ def update!(**args)
2199
+ @fleet_details = args[:fleet_details] if args.key?(:fleet_details)
2200
+ @game_server_cluster_name = args[:game_server_cluster_name] if args.key?(:game_server_cluster_name)
2201
+ @game_server_deployment_name = args[:game_server_deployment_name] if args.key?(:game_server_deployment_name)
2202
+ end
2203
+ end
2204
+
2205
+ # Target Agones fleet specification.
2206
+ class TargetFleet
2207
+ include Google::Apis::Core::Hashable
2208
+
2209
+ # The name of the Agones fleet.
2210
+ # Corresponds to the JSON property `name`
2211
+ # @return [String]
2212
+ attr_accessor :name
2213
+
2214
+ # Encapsulates Agones fleet spec and Agones autoscaler spec sources.
2215
+ # Corresponds to the JSON property `specSource`
2216
+ # @return [Google::Apis::GameservicesV1beta::SpecSource]
2217
+ attr_accessor :spec_source
2218
+
2219
+ def initialize(**args)
2220
+ update!(**args)
2221
+ end
2222
+
2223
+ # Update properties of this object
2224
+ def update!(**args)
2225
+ @name = args[:name] if args.key?(:name)
2226
+ @spec_source = args[:spec_source] if args.key?(:spec_source)
2227
+ end
2228
+ end
2229
+
2230
+ # Target Agones autoscaler policy reference.
2231
+ class TargetFleetAutoscaler
2232
+ include Google::Apis::Core::Hashable
2233
+
2234
+ # The name of the Agones autoscaler.
2235
+ # Corresponds to the JSON property `name`
2236
+ # @return [String]
2237
+ attr_accessor :name
2238
+
2239
+ # Encapsulates Agones fleet spec and Agones autoscaler spec sources.
2240
+ # Corresponds to the JSON property `specSource`
2241
+ # @return [Google::Apis::GameservicesV1beta::SpecSource]
2242
+ attr_accessor :spec_source
2243
+
2244
+ def initialize(**args)
2245
+ update!(**args)
2246
+ end
2247
+
2248
+ # Update properties of this object
2249
+ def update!(**args)
2250
+ @name = args[:name] if args.key?(:name)
2251
+ @spec_source = args[:spec_source] if args.key?(:spec_source)
2252
+ end
2253
+ end
2254
+
2255
+ # Details of the target Agones fleet.
2256
+ class TargetFleetDetails
2257
+ include Google::Apis::Core::Hashable
2258
+
2259
+ # Target Agones autoscaler policy reference.
2260
+ # Corresponds to the JSON property `autoscaler`
2261
+ # @return [Google::Apis::GameservicesV1beta::TargetFleetAutoscaler]
2262
+ attr_accessor :autoscaler
2263
+
2264
+ # Target Agones fleet specification.
2265
+ # Corresponds to the JSON property `fleet`
2266
+ # @return [Google::Apis::GameservicesV1beta::TargetFleet]
2267
+ attr_accessor :fleet
2268
+
2269
+ def initialize(**args)
2270
+ update!(**args)
2271
+ end
2272
+
2273
+ # Update properties of this object
2274
+ def update!(**args)
2275
+ @autoscaler = args[:autoscaler] if args.key?(:autoscaler)
2276
+ @fleet = args[:fleet] if args.key?(:fleet)
2277
+ end
2278
+ end
2279
+
2280
+ # Encapsulates the Target state.
2281
+ class TargetState
2282
+ include Google::Apis::Core::Hashable
2283
+
2284
+ # Details about Agones fleets.
2285
+ # Corresponds to the JSON property `details`
2286
+ # @return [Array<Google::Apis::GameservicesV1beta::TargetDetails>]
2287
+ attr_accessor :details
2288
+
2289
+ def initialize(**args)
2290
+ update!(**args)
2291
+ end
2292
+
2293
+ # Update properties of this object
2294
+ def update!(**args)
2295
+ @details = args[:details] if args.key?(:details)
2296
+ end
2297
+ end
2298
+
2299
+ # Request message for `TestIamPermissions` method.
2300
+ class TestIamPermissionsRequest
2301
+ include Google::Apis::Core::Hashable
2302
+
2303
+ # The set of permissions to check for the `resource`. Permissions with
2304
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
2305
+ # information see
2306
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
2307
+ # Corresponds to the JSON property `permissions`
2308
+ # @return [Array<String>]
2309
+ attr_accessor :permissions
2310
+
2311
+ def initialize(**args)
2312
+ update!(**args)
2313
+ end
2314
+
2315
+ # Update properties of this object
2316
+ def update!(**args)
2317
+ @permissions = args[:permissions] if args.key?(:permissions)
2318
+ end
2319
+ end
2320
+
2321
+ # Response message for `TestIamPermissions` method.
2322
+ class TestIamPermissionsResponse
2323
+ include Google::Apis::Core::Hashable
2324
+
2325
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
2326
+ # allowed.
2327
+ # Corresponds to the JSON property `permissions`
2328
+ # @return [Array<String>]
2329
+ attr_accessor :permissions
2330
+
2331
+ def initialize(**args)
2332
+ update!(**args)
2333
+ end
2334
+
2335
+ # Update properties of this object
2336
+ def update!(**args)
2337
+ @permissions = args[:permissions] if args.key?(:permissions)
2338
+ end
2339
+ end
2340
+ end
2341
+ end
2342
+ end