google-api-client 0.13.2 → 0.13.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (524) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +149 -0
  3. data/bin/generate-api +6 -2
  4. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +3 -3
  5. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +46 -46
  6. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +15 -15
  7. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +6 -6
  8. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +2 -2
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1394 -1394
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +322 -322
  11. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +449 -449
  12. data/generated/google/apis/adexchangebuyer_v1_2.rb +35 -0
  13. data/generated/google/apis/adexchangebuyer_v1_2/classes.rb +457 -0
  14. data/generated/google/apis/adexchangebuyer_v1_2/representations.rb +189 -0
  15. data/generated/google/apis/adexchangebuyer_v1_2/service.rb +329 -0
  16. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1347 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +498 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +873 -0
  20. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  21. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +1 -1
  22. data/generated/google/apis/adexchangeseller_v1.rb +37 -0
  23. data/generated/google/apis/adexchangeseller_v1/classes.rb +557 -0
  24. data/generated/google/apis/adexchangeseller_v1/representations.rb +248 -0
  25. data/generated/google/apis/adexchangeseller_v1/service.rb +568 -0
  26. data/generated/google/apis/adexchangeseller_v1_1.rb +37 -0
  27. data/generated/google/apis/adexchangeseller_v1_1/classes.rb +842 -0
  28. data/generated/google/apis/adexchangeseller_v1_1/representations.rb +364 -0
  29. data/generated/google/apis/adexchangeseller_v1_1/service.rb +771 -0
  30. data/generated/google/apis/adexperiencereport_v1.rb +35 -0
  31. data/generated/google/apis/adexperiencereport_v1/classes.rb +138 -0
  32. data/generated/google/apis/adexperiencereport_v1/representations.rb +77 -0
  33. data/generated/google/apis/adexperiencereport_v1/service.rb +123 -0
  34. data/generated/google/apis/admin_directory_v1.rb +1 -1
  35. data/generated/google/apis/admin_directory_v1/classes.rb +60 -0
  36. data/generated/google/apis/admin_directory_v1/representations.rb +29 -0
  37. data/generated/google/apis/admin_directory_v1/service.rb +39 -0
  38. data/generated/google/apis/adsense_v1_4.rb +1 -1
  39. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  40. data/generated/google/apis/analytics_v2_4.rb +37 -0
  41. data/generated/google/apis/analytics_v2_4/classes.rb +26 -0
  42. data/generated/google/apis/analytics_v2_4/representations.rb +26 -0
  43. data/generated/google/apis/analytics_v2_4/service.rb +345 -0
  44. data/generated/google/apis/analytics_v3.rb +1 -1
  45. data/generated/google/apis/analytics_v3/classes.rb +15 -2
  46. data/generated/google/apis/analytics_v3/representations.rb +3 -0
  47. data/generated/google/apis/analyticsreporting_v4.rb +4 -4
  48. data/generated/google/apis/analyticsreporting_v4/classes.rb +891 -891
  49. data/generated/google/apis/analyticsreporting_v4/representations.rb +189 -189
  50. data/generated/google/apis/androiddeviceprovisioning_v1.rb +32 -0
  51. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +917 -0
  52. data/generated/google/apis/androiddeviceprovisioning_v1/representations.rb +447 -0
  53. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +419 -0
  54. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  55. data/generated/google/apis/androidenterprise_v1/classes.rb +31 -0
  56. data/generated/google/apis/androidenterprise_v1/representations.rb +14 -0
  57. data/generated/google/apis/androidenterprise_v1/service.rb +76 -0
  58. data/generated/google/apis/androidmanagement_v1.rb +35 -0
  59. data/generated/google/apis/androidmanagement_v1/classes.rb +2039 -0
  60. data/generated/google/apis/androidmanagement_v1/representations.rb +702 -0
  61. data/generated/google/apis/androidmanagement_v1/service.rb +796 -0
  62. data/generated/google/apis/androidpublisher_v1.rb +34 -0
  63. data/generated/google/apis/androidpublisher_v1/classes.rb +67 -0
  64. data/generated/google/apis/androidpublisher_v1/representations.rb +42 -0
  65. data/generated/google/apis/androidpublisher_v1/service.rb +150 -0
  66. data/generated/google/apis/androidpublisher_v1_1.rb +34 -0
  67. data/generated/google/apis/androidpublisher_v1_1/classes.rb +123 -0
  68. data/generated/google/apis/androidpublisher_v1_1/representations.rb +60 -0
  69. data/generated/google/apis/androidpublisher_v1_1/service.rb +192 -0
  70. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  71. data/generated/google/apis/androidpublisher_v2/classes.rb +21 -0
  72. data/generated/google/apis/androidpublisher_v2/representations.rb +3 -0
  73. data/generated/google/apis/androidpublisher_v2/service.rb +6 -2
  74. data/generated/google/apis/appengine_v1.rb +4 -4
  75. data/generated/google/apis/appengine_v1/classes.rb +1519 -1474
  76. data/generated/google/apis/appengine_v1/representations.rb +351 -335
  77. data/generated/google/apis/appengine_v1/service.rb +255 -239
  78. data/generated/google/apis/appengine_v1alpha.rb +41 -0
  79. data/generated/google/apis/appengine_v1alpha/classes.rb +987 -0
  80. data/generated/google/apis/appengine_v1alpha/representations.rb +397 -0
  81. data/generated/google/apis/appengine_v1alpha/service.rb +631 -0
  82. data/generated/google/apis/appengine_v1beta.rb +41 -0
  83. data/generated/google/apis/appengine_v1beta/classes.rb +2876 -0
  84. data/generated/google/apis/appengine_v1beta/representations.rb +1138 -0
  85. data/generated/google/apis/appengine_v1beta/service.rb +1546 -0
  86. data/generated/google/apis/appengine_v1beta4.rb +41 -0
  87. data/generated/google/apis/appengine_v1beta4/classes.rb +2170 -0
  88. data/generated/google/apis/appengine_v1beta4/representations.rb +824 -0
  89. data/generated/google/apis/appengine_v1beta4/service.rb +876 -0
  90. data/generated/google/apis/appengine_v1beta5.rb +41 -0
  91. data/generated/google/apis/appengine_v1beta5/classes.rb +2168 -0
  92. data/generated/google/apis/appengine_v1beta5/representations.rb +822 -0
  93. data/generated/google/apis/appengine_v1beta5/service.rb +877 -0
  94. data/generated/google/apis/appsactivity_v1.rb +1 -1
  95. data/generated/google/apis/appstate_v1.rb +1 -1
  96. data/generated/google/apis/bigquery_v2.rb +1 -1
  97. data/generated/google/apis/bigquery_v2/classes.rb +106 -18
  98. data/generated/google/apis/bigquery_v2/representations.rb +15 -0
  99. data/generated/google/apis/bigquerydatatransfer_v1.rb +41 -0
  100. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +886 -0
  101. data/generated/google/apis/bigquerydatatransfer_v1/representations.rb +343 -0
  102. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +1317 -0
  103. data/generated/google/apis/blogger_v2.rb +34 -0
  104. data/generated/google/apis/blogger_v2/classes.rb +947 -0
  105. data/generated/google/apis/blogger_v2/representations.rb +465 -0
  106. data/generated/google/apis/blogger_v2/service.rb +424 -0
  107. data/generated/google/apis/calendar_v3.rb +1 -1
  108. data/generated/google/apis/calendar_v3/classes.rb +4 -207
  109. data/generated/google/apis/calendar_v3/representations.rb +0 -97
  110. data/generated/google/apis/calendar_v3/service.rb +8 -4
  111. data/generated/google/apis/classroom_v1.rb +27 -27
  112. data/generated/google/apis/classroom_v1/classes.rb +1037 -926
  113. data/generated/google/apis/classroom_v1/representations.rb +294 -244
  114. data/generated/google/apis/classroom_v1/service.rb +1114 -1109
  115. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  116. data/generated/google/apis/cloudbilling_v1/classes.rb +473 -56
  117. data/generated/google/apis/cloudbilling_v1/representations.rb +176 -10
  118. data/generated/google/apis/cloudbilling_v1/service.rb +182 -89
  119. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  120. data/generated/google/apis/cloudbuild_v1/classes.rb +666 -625
  121. data/generated/google/apis/cloudbuild_v1/representations.rb +132 -116
  122. data/generated/google/apis/cloudbuild_v1/service.rb +158 -158
  123. data/generated/google/apis/clouddebugger_v2.rb +4 -4
  124. data/generated/google/apis/clouddebugger_v2/classes.rb +637 -639
  125. data/generated/google/apis/clouddebugger_v2/representations.rb +139 -139
  126. data/generated/google/apis/clouddebugger_v2/service.rb +157 -157
  127. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  128. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +310 -310
  129. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +77 -77
  130. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +144 -144
  131. data/generated/google/apis/cloudfunctions_v1.rb +4 -1
  132. data/generated/google/apis/cloudfunctions_v1/classes.rb +265 -6
  133. data/generated/google/apis/cloudfunctions_v1/representations.rb +80 -1
  134. data/generated/google/apis/cloudfunctions_v1/service.rb +118 -0
  135. data/generated/google/apis/cloudfunctions_v1beta2.rb +35 -0
  136. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +678 -0
  137. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +264 -0
  138. data/generated/google/apis/cloudfunctions_v1beta2/service.rb +385 -0
  139. data/generated/google/apis/cloudkms_v1.rb +1 -1
  140. data/generated/google/apis/cloudkms_v1/classes.rb +652 -622
  141. data/generated/google/apis/cloudkms_v1/representations.rb +138 -137
  142. data/generated/google/apis/cloudkms_v1/service.rb +320 -320
  143. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  144. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  145. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1129 -1129
  146. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +188 -188
  147. data/generated/google/apis/cloudresourcemanager_v1/service.rb +609 -609
  148. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  149. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +404 -404
  150. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +83 -83
  151. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +328 -328
  152. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +38 -0
  153. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +819 -0
  154. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +304 -0
  155. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +528 -0
  156. data/generated/google/apis/cloudtrace_v1.rb +5 -5
  157. data/generated/google/apis/cloudtrace_v1/classes.rb +67 -67
  158. data/generated/google/apis/cloudtrace_v1/representations.rb +21 -21
  159. data/generated/google/apis/cloudtrace_v1/service.rb +36 -36
  160. data/generated/google/apis/cloudtrace_v2.rb +43 -0
  161. data/generated/google/apis/cloudtrace_v2/classes.rb +797 -0
  162. data/generated/google/apis/cloudtrace_v2/representations.rb +353 -0
  163. data/generated/google/apis/cloudtrace_v2/service.rb +238 -0
  164. data/generated/google/apis/clouduseraccounts_alpha.rb +44 -0
  165. data/generated/google/apis/clouduseraccounts_alpha/classes.rb +1188 -0
  166. data/generated/google/apis/clouduseraccounts_alpha/representations.rb +494 -0
  167. data/generated/google/apis/clouduseraccounts_alpha/service.rb +1152 -0
  168. data/generated/google/apis/clouduseraccounts_vm_alpha.rb +44 -0
  169. data/generated/google/apis/clouduseraccounts_vm_alpha/classes.rb +1188 -0
  170. data/generated/google/apis/clouduseraccounts_vm_alpha/representations.rb +494 -0
  171. data/generated/google/apis/clouduseraccounts_vm_alpha/service.rb +1152 -0
  172. data/generated/google/apis/clouduseraccounts_vm_beta.rb +44 -0
  173. data/generated/google/apis/clouduseraccounts_vm_beta/classes.rb +845 -0
  174. data/generated/google/apis/clouduseraccounts_vm_beta/representations.rb +352 -0
  175. data/generated/google/apis/clouduseraccounts_vm_beta/service.rb +908 -0
  176. data/generated/google/apis/compute_alpha.rb +49 -0
  177. data/generated/google/apis/compute_alpha/classes.rb +23796 -0
  178. data/generated/google/apis/compute_alpha/representations.rb +9391 -0
  179. data/generated/google/apis/compute_alpha/service.rb +24188 -0
  180. data/generated/google/apis/compute_beta.rb +1 -1
  181. data/generated/google/apis/compute_beta/classes.rb +1597 -235
  182. data/generated/google/apis/compute_beta/representations.rb +477 -0
  183. data/generated/google/apis/compute_beta/service.rb +2875 -1677
  184. data/generated/google/apis/compute_v1.rb +1 -1
  185. data/generated/google/apis/compute_v1/classes.rb +319 -197
  186. data/generated/google/apis/compute_v1/representations.rb +51 -0
  187. data/generated/google/apis/compute_v1/service.rb +2057 -172
  188. data/generated/google/apis/consumersurveys_v2.rb +40 -0
  189. data/generated/google/apis/consumersurveys_v2/classes.rb +736 -0
  190. data/generated/google/apis/consumersurveys_v2/representations.rb +343 -0
  191. data/generated/google/apis/consumersurveys_v2/service.rb +478 -0
  192. data/generated/google/apis/container_v1.rb +1 -1
  193. data/generated/google/apis/container_v1/classes.rb +1072 -936
  194. data/generated/google/apis/container_v1/representations.rb +266 -202
  195. data/generated/google/apis/container_v1/service.rb +243 -243
  196. data/generated/google/apis/container_v1beta1.rb +35 -0
  197. data/generated/google/apis/container_v1beta1/classes.rb +1900 -0
  198. data/generated/google/apis/container_v1beta1/representations.rb +662 -0
  199. data/generated/google/apis/container_v1beta1/service.rb +1875 -0
  200. data/generated/google/apis/content_v2.rb +1 -1
  201. data/generated/google/apis/content_v2/classes.rb +72 -3
  202. data/generated/google/apis/content_v2/representations.rb +23 -0
  203. data/generated/google/apis/content_v2/service.rb +23 -18
  204. data/generated/google/apis/content_v2sandbox.rb +35 -0
  205. data/generated/google/apis/content_v2sandbox/classes.rb +2406 -0
  206. data/generated/google/apis/content_v2sandbox/representations.rb +1042 -0
  207. data/generated/google/apis/content_v2sandbox/service.rb +709 -0
  208. data/generated/google/apis/dataflow_v1b3.rb +5 -5
  209. data/generated/google/apis/dataflow_v1b3/classes.rb +3341 -3341
  210. data/generated/google/apis/dataflow_v1b3/representations.rb +807 -807
  211. data/generated/google/apis/dataflow_v1b3/service.rb +492 -444
  212. data/generated/google/apis/dataproc_v1.rb +1 -1
  213. data/generated/google/apis/dataproc_v1/classes.rb +1101 -1101
  214. data/generated/google/apis/dataproc_v1/representations.rb +227 -227
  215. data/generated/google/apis/dataproc_v1/service.rb +254 -254
  216. data/generated/google/apis/dataproc_v1beta2.rb +34 -0
  217. data/generated/google/apis/dataproc_v1beta2/classes.rb +1756 -0
  218. data/generated/google/apis/dataproc_v1beta2/representations.rb +675 -0
  219. data/generated/google/apis/dataproc_v1beta2/service.rb +739 -0
  220. data/generated/google/apis/datastore_v1.rb +4 -4
  221. data/generated/google/apis/datastore_v1/classes.rb +1311 -773
  222. data/generated/google/apis/datastore_v1/representations.rb +351 -148
  223. data/generated/google/apis/datastore_v1/service.rb +206 -55
  224. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  225. data/generated/google/apis/datastore_v1beta3/classes.rb +1621 -0
  226. data/generated/google/apis/datastore_v1beta3/representations.rb +715 -0
  227. data/generated/google/apis/datastore_v1beta3/service.rb +260 -0
  228. data/generated/google/apis/deploymentmanager_alpha.rb +44 -0
  229. data/generated/google/apis/deploymentmanager_alpha/classes.rb +2422 -0
  230. data/generated/google/apis/deploymentmanager_alpha/representations.rb +1054 -0
  231. data/generated/google/apis/deploymentmanager_alpha/service.rb +1883 -0
  232. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  233. data/generated/google/apis/deploymentmanager_v2/classes.rb +81 -2
  234. data/generated/google/apis/deploymentmanager_v2/representations.rb +30 -0
  235. data/generated/google/apis/deploymentmanager_v2beta.rb +44 -0
  236. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +2426 -0
  237. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +1054 -0
  238. data/generated/google/apis/deploymentmanager_v2beta/service.rb +1687 -0
  239. data/generated/google/apis/dfareporting_v2_7.rb +1 -1
  240. data/generated/google/apis/dfareporting_v2_7/classes.rb +9 -26
  241. data/generated/google/apis/dfareporting_v2_7/service.rb +1 -0
  242. data/generated/google/apis/dfareporting_v2_8.rb +1 -1
  243. data/generated/google/apis/dfareporting_v2_8/classes.rb +26 -34
  244. data/generated/google/apis/dfareporting_v2_8/representations.rb +1 -0
  245. data/generated/google/apis/dfareporting_v2_8/service.rb +1 -0
  246. data/generated/google/apis/dlp_v2beta1.rb +36 -0
  247. data/generated/google/apis/dlp_v2beta1/classes.rb +1735 -0
  248. data/generated/google/apis/dlp_v2beta1/representations.rb +879 -0
  249. data/generated/google/apis/dlp_v2beta1/service.rb +406 -0
  250. data/generated/google/apis/dns_v1.rb +1 -1
  251. data/generated/google/apis/dns_v2beta1.rb +1 -1
  252. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  253. data/generated/google/apis/drive_v2.rb +1 -1
  254. data/generated/google/apis/drive_v3.rb +1 -1
  255. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  256. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +267 -261
  257. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +73 -72
  258. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +1 -1
  259. data/generated/google/apis/firebaserules_v1.rb +1 -1
  260. data/generated/google/apis/firebaserules_v1/classes.rb +283 -283
  261. data/generated/google/apis/firebaserules_v1/representations.rb +75 -75
  262. data/generated/google/apis/firebaserules_v1/service.rb +113 -113
  263. data/generated/google/apis/fitness_v1.rb +1 -1
  264. data/generated/google/apis/fitness_v1/classes.rb +1 -1
  265. data/generated/google/apis/fusiontables_v1.rb +37 -0
  266. data/generated/google/apis/fusiontables_v1/classes.rb +977 -0
  267. data/generated/google/apis/fusiontables_v1/representations.rb +449 -0
  268. data/generated/google/apis/fusiontables_v1/service.rb +1373 -0
  269. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  270. data/generated/google/apis/games_management_v1management.rb +1 -1
  271. data/generated/google/apis/games_v1.rb +1 -1
  272. data/generated/google/apis/genomics_v1.rb +8 -8
  273. data/generated/google/apis/genomics_v1/classes.rb +2288 -2288
  274. data/generated/google/apis/genomics_v1/representations.rb +482 -482
  275. data/generated/google/apis/genomics_v1/service.rb +966 -966
  276. data/generated/google/apis/genomics_v1alpha2.rb +40 -0
  277. data/generated/google/apis/genomics_v1alpha2/classes.rb +1207 -0
  278. data/generated/google/apis/genomics_v1alpha2/representations.rb +449 -0
  279. data/generated/google/apis/genomics_v1alpha2/service.rb +426 -0
  280. data/generated/google/apis/gmail_v1.rb +1 -1
  281. data/generated/google/apis/iam_v1.rb +1 -1
  282. data/generated/google/apis/iam_v1/classes.rb +664 -395
  283. data/generated/google/apis/iam_v1/representations.rb +194 -81
  284. data/generated/google/apis/iam_v1/service.rb +657 -92
  285. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  286. data/generated/google/apis/kgsearch_v1/classes.rb +7 -7
  287. data/generated/google/apis/kgsearch_v1/representations.rb +1 -1
  288. data/generated/google/apis/kgsearch_v1/service.rb +8 -8
  289. data/generated/google/apis/language_v1.rb +4 -1
  290. data/generated/google/apis/language_v1/classes.rb +393 -393
  291. data/generated/google/apis/language_v1/representations.rb +95 -95
  292. data/generated/google/apis/language_v1/service.rb +42 -42
  293. data/generated/google/apis/language_v1beta1.rb +4 -1
  294. data/generated/google/apis/language_v1beta1/classes.rb +457 -457
  295. data/generated/google/apis/language_v1beta1/representations.rb +114 -114
  296. data/generated/google/apis/language_v1beta1/service.rb +48 -48
  297. data/generated/google/apis/language_v1beta2.rb +39 -0
  298. data/generated/google/apis/language_v1beta2/classes.rb +824 -0
  299. data/generated/google/apis/language_v1beta2/representations.rb +373 -0
  300. data/generated/google/apis/language_v1beta2/service.rb +217 -0
  301. data/generated/google/apis/logging_v2.rb +9 -9
  302. data/generated/google/apis/logging_v2/classes.rb +840 -834
  303. data/generated/google/apis/logging_v2/representations.rb +168 -167
  304. data/generated/google/apis/logging_v2/service.rb +667 -463
  305. data/generated/google/apis/logging_v2beta1.rb +9 -9
  306. data/generated/google/apis/logging_v2beta1/classes.rb +856 -850
  307. data/generated/google/apis/logging_v2beta1/representations.rb +169 -168
  308. data/generated/google/apis/logging_v2beta1/service.rb +253 -255
  309. data/generated/google/apis/manufacturers_v1.rb +1 -1
  310. data/generated/google/apis/manufacturers_v1/classes.rb +396 -389
  311. data/generated/google/apis/manufacturers_v1/representations.rb +92 -91
  312. data/generated/google/apis/manufacturers_v1/service.rb +8 -7
  313. data/generated/google/apis/ml_v1.rb +1 -1
  314. data/generated/google/apis/ml_v1/classes.rb +1487 -1676
  315. data/generated/google/apis/ml_v1/representations.rb +229 -299
  316. data/generated/google/apis/ml_v1/service.rb +359 -253
  317. data/generated/google/apis/ml_v1beta1.rb +34 -0
  318. data/generated/google/apis/ml_v1beta1/classes.rb +2396 -0
  319. data/generated/google/apis/ml_v1beta1/representations.rb +755 -0
  320. data/generated/google/apis/ml_v1beta1/service.rb +975 -0
  321. data/generated/google/apis/monitoring_v3.rb +6 -6
  322. data/generated/google/apis/monitoring_v3/classes.rb +834 -834
  323. data/generated/google/apis/monitoring_v3/representations.rb +168 -168
  324. data/generated/google/apis/monitoring_v3/service.rb +330 -330
  325. data/generated/google/apis/mybusiness_v3/classes.rb +1181 -1181
  326. data/generated/google/apis/mybusiness_v3/representations.rb +242 -242
  327. data/generated/google/apis/mybusiness_v3/service.rb +241 -241
  328. data/generated/google/apis/oauth2_v1.rb +43 -0
  329. data/generated/google/apis/oauth2_v1/classes.rb +321 -0
  330. data/generated/google/apis/oauth2_v1/representations.rb +135 -0
  331. data/generated/google/apis/oauth2_v1/service.rb +337 -0
  332. data/generated/google/apis/oauth2_v2.rb +1 -1
  333. data/generated/google/apis/oslogin_v1alpha.rb +37 -0
  334. data/generated/google/apis/oslogin_v1alpha/classes.rb +200 -0
  335. data/generated/google/apis/oslogin_v1alpha/representations.rb +105 -0
  336. data/generated/google/apis/oslogin_v1alpha/service.rb +228 -0
  337. data/generated/google/apis/pagespeedonline_v1.rb +32 -0
  338. data/generated/google/apis/pagespeedonline_v1/classes.rb +536 -0
  339. data/generated/google/apis/pagespeedonline_v1/representations.rb +257 -0
  340. data/generated/google/apis/pagespeedonline_v1/service.rb +120 -0
  341. data/generated/google/apis/partners_v2.rb +1 -1
  342. data/generated/google/apis/partners_v2/classes.rb +1512 -1512
  343. data/generated/google/apis/partners_v2/representations.rb +368 -368
  344. data/generated/google/apis/partners_v2/service.rb +596 -596
  345. data/generated/google/apis/people_v1.rb +15 -15
  346. data/generated/google/apis/people_v1/classes.rb +1384 -1383
  347. data/generated/google/apis/people_v1/representations.rb +311 -311
  348. data/generated/google/apis/people_v1/service.rb +208 -202
  349. data/generated/google/apis/playcustomapp_v1.rb +34 -0
  350. data/generated/google/apis/playcustomapp_v1/classes.rb +51 -0
  351. data/generated/google/apis/playcustomapp_v1/representations.rb +40 -0
  352. data/generated/google/apis/playcustomapp_v1/service.rb +114 -0
  353. data/generated/google/apis/playmoviespartner_v1.rb +34 -0
  354. data/generated/google/apis/playmoviespartner_v1/classes.rb +782 -0
  355. data/generated/google/apis/playmoviespartner_v1/representations.rb +191 -0
  356. data/generated/google/apis/playmoviespartner_v1/service.rb +354 -0
  357. data/generated/google/apis/plus_domains_v1.rb +1 -1
  358. data/generated/google/apis/plus_v1.rb +1 -1
  359. data/generated/google/apis/prediction_v1_2.rb +44 -0
  360. data/generated/google/apis/prediction_v1_2/classes.rb +237 -0
  361. data/generated/google/apis/prediction_v1_2/representations.rb +133 -0
  362. data/generated/google/apis/prediction_v1_2/service.rb +287 -0
  363. data/generated/google/apis/prediction_v1_3.rb +44 -0
  364. data/generated/google/apis/prediction_v1_3/classes.rb +286 -0
  365. data/generated/google/apis/prediction_v1_3/representations.rb +139 -0
  366. data/generated/google/apis/prediction_v1_3/service.rb +284 -0
  367. data/generated/google/apis/prediction_v1_4.rb +44 -0
  368. data/generated/google/apis/prediction_v1_4/classes.rb +336 -0
  369. data/generated/google/apis/prediction_v1_4/representations.rb +158 -0
  370. data/generated/google/apis/prediction_v1_4/service.rb +284 -0
  371. data/generated/google/apis/prediction_v1_5.rb +44 -0
  372. data/generated/google/apis/prediction_v1_5/classes.rb +708 -0
  373. data/generated/google/apis/prediction_v1_5/representations.rb +352 -0
  374. data/generated/google/apis/prediction_v1_5/service.rb +357 -0
  375. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  376. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +539 -539
  377. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +105 -105
  378. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +312 -312
  379. data/generated/google/apis/pubsub_v1.rb +4 -4
  380. data/generated/google/apis/pubsub_v1/classes.rb +352 -352
  381. data/generated/google/apis/pubsub_v1/representations.rb +77 -77
  382. data/generated/google/apis/pubsub_v1/service.rb +346 -346
  383. data/generated/google/apis/pubsub_v1beta1a.rb +37 -0
  384. data/generated/google/apis/pubsub_v1beta1a/classes.rb +605 -0
  385. data/generated/google/apis/pubsub_v1beta1a/representations.rb +306 -0
  386. data/generated/google/apis/pubsub_v1beta1a/service.rb +549 -0
  387. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  388. data/generated/google/apis/pubsub_v1beta2/classes.rb +679 -0
  389. data/generated/google/apis/pubsub_v1beta2/representations.rb +324 -0
  390. data/generated/google/apis/pubsub_v1beta2/service.rb +779 -0
  391. data/generated/google/apis/replicapool_v1beta1.rb +50 -0
  392. data/generated/google/apis/replicapool_v1beta1/classes.rb +918 -0
  393. data/generated/google/apis/replicapool_v1beta1/representations.rb +409 -0
  394. data/generated/google/apis/replicapool_v1beta1/service.rb +511 -0
  395. data/generated/google/apis/resourceviews_v1beta1.rb +50 -0
  396. data/generated/google/apis/resourceviews_v1beta1/classes.rb +338 -0
  397. data/generated/google/apis/resourceviews_v1beta1/representations.rb +201 -0
  398. data/generated/google/apis/resourceviews_v1beta1/service.rb +667 -0
  399. data/generated/google/apis/runtimeconfig_v1.rb +4 -4
  400. data/generated/google/apis/runtimeconfig_v1/classes.rb +118 -118
  401. data/generated/google/apis/runtimeconfig_v1/representations.rb +18 -18
  402. data/generated/google/apis/runtimeconfig_v1/service.rb +21 -21
  403. data/generated/google/apis/runtimeconfig_v1beta1.rb +40 -0
  404. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +805 -0
  405. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +280 -0
  406. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +903 -0
  407. data/generated/google/apis/safebrowsing_v4.rb +32 -0
  408. data/generated/google/apis/safebrowsing_v4/classes.rb +771 -0
  409. data/generated/google/apis/safebrowsing_v4/representations.rb +379 -0
  410. data/generated/google/apis/safebrowsing_v4/service.rb +252 -0
  411. data/generated/google/apis/script_v1.rb +19 -19
  412. data/generated/google/apis/script_v1/classes.rb +99 -157
  413. data/generated/google/apis/script_v1/representations.rb +17 -47
  414. data/generated/google/apis/script_v1/service.rb +12 -12
  415. data/generated/google/apis/searchconsole_v1.rb +1 -1
  416. data/generated/google/apis/searchconsole_v1/classes.rb +84 -84
  417. data/generated/google/apis/searchconsole_v1/representations.rb +32 -32
  418. data/generated/google/apis/servicecontrol_v1.rb +4 -4
  419. data/generated/google/apis/servicecontrol_v1/classes.rb +1086 -1042
  420. data/generated/google/apis/servicecontrol_v1/representations.rb +216 -200
  421. data/generated/google/apis/servicecontrol_v1/service.rb +120 -114
  422. data/generated/google/apis/servicemanagement_v1.rb +7 -7
  423. data/generated/google/apis/servicemanagement_v1/classes.rb +3375 -3383
  424. data/generated/google/apis/servicemanagement_v1/representations.rb +551 -552
  425. data/generated/google/apis/servicemanagement_v1/service.rb +386 -386
  426. data/generated/google/apis/serviceuser_v1.rb +5 -5
  427. data/generated/google/apis/serviceuser_v1/classes.rb +2667 -2598
  428. data/generated/google/apis/serviceuser_v1/representations.rb +406 -389
  429. data/generated/google/apis/serviceuser_v1/service.rb +43 -43
  430. data/generated/google/apis/sheets_v4.rb +7 -7
  431. data/generated/google/apis/sheets_v4/classes.rb +5031 -5024
  432. data/generated/google/apis/sheets_v4/representations.rb +931 -930
  433. data/generated/google/apis/sheets_v4/service.rb +244 -244
  434. data/generated/google/apis/slides_v1.rb +10 -10
  435. data/generated/google/apis/slides_v1/classes.rb +2915 -2915
  436. data/generated/google/apis/slides_v1/representations.rb +698 -698
  437. data/generated/google/apis/slides_v1/service.rb +35 -35
  438. data/generated/google/apis/sourcerepo_v1.rb +3 -3
  439. data/generated/google/apis/sourcerepo_v1/classes.rb +313 -313
  440. data/generated/google/apis/sourcerepo_v1/representations.rb +77 -77
  441. data/generated/google/apis/sourcerepo_v1/service.rb +102 -102
  442. data/generated/google/apis/spanner_v1.rb +4 -4
  443. data/generated/google/apis/spanner_v1/classes.rb +2304 -2251
  444. data/generated/google/apis/spanner_v1/representations.rb +338 -323
  445. data/generated/google/apis/spanner_v1/service.rb +689 -689
  446. data/generated/google/apis/spectrum_v1explorer.rb +31 -0
  447. data/generated/google/apis/spectrum_v1explorer/classes.rb +1612 -0
  448. data/generated/google/apis/spectrum_v1explorer/representations.rb +611 -0
  449. data/generated/google/apis/spectrum_v1explorer/service.rb +285 -0
  450. data/generated/google/apis/speech_v1.rb +34 -0
  451. data/generated/google/apis/speech_v1/classes.rb +572 -0
  452. data/generated/google/apis/speech_v1/representations.rb +236 -0
  453. data/generated/google/apis/speech_v1/service.rb +277 -0
  454. data/generated/google/apis/speech_v1beta1.rb +1 -1
  455. data/generated/google/apis/speech_v1beta1/classes.rb +312 -312
  456. data/generated/google/apis/speech_v1beta1/representations.rb +48 -48
  457. data/generated/google/apis/speech_v1beta1/service.rb +46 -46
  458. data/generated/google/apis/sqladmin_v1beta3.rb +38 -0
  459. data/generated/google/apis/sqladmin_v1beta3/classes.rb +1615 -0
  460. data/generated/google/apis/sqladmin_v1beta3/representations.rb +731 -0
  461. data/generated/google/apis/sqladmin_v1beta3/service.rb +1045 -0
  462. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  463. data/generated/google/apis/sqladmin_v1beta4/classes.rb +15 -7
  464. data/generated/google/apis/sqladmin_v1beta4/representations.rb +1 -0
  465. data/generated/google/apis/storage_v1.rb +1 -1
  466. data/generated/google/apis/storage_v1/classes.rb +7 -6
  467. data/generated/google/apis/storage_v1/service.rb +51 -29
  468. data/generated/google/apis/storage_v1beta1.rb +40 -0
  469. data/generated/google/apis/storage_v1beta1/classes.rb +616 -0
  470. data/generated/google/apis/storage_v1beta1/representations.rb +249 -0
  471. data/generated/google/apis/storage_v1beta1/service.rb +1082 -0
  472. data/generated/google/apis/storage_v1beta2.rb +40 -0
  473. data/generated/google/apis/storage_v1beta2/classes.rb +1048 -0
  474. data/generated/google/apis/storage_v1beta2/representations.rb +425 -0
  475. data/generated/google/apis/storage_v1beta2/service.rb +1736 -0
  476. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  477. data/generated/google/apis/storagetransfer_v1/classes.rb +556 -556
  478. data/generated/google/apis/storagetransfer_v1/representations.rb +139 -139
  479. data/generated/google/apis/storagetransfer_v1/service.rb +148 -148
  480. data/generated/google/apis/streetviewpublish_v1.rb +36 -0
  481. data/generated/google/apis/streetviewpublish_v1/classes.rb +705 -0
  482. data/generated/google/apis/streetviewpublish_v1/representations.rb +296 -0
  483. data/generated/google/apis/streetviewpublish_v1/service.rb +485 -0
  484. data/generated/google/apis/taskqueue_v1beta1.rb +37 -0
  485. data/generated/google/apis/taskqueue_v1beta1/classes.rb +242 -0
  486. data/generated/google/apis/taskqueue_v1beta1/representations.rb +124 -0
  487. data/generated/google/apis/taskqueue_v1beta1/service.rb +269 -0
  488. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  489. data/generated/google/apis/toolresults_v1beta3/classes.rb +382 -4
  490. data/generated/google/apis/toolresults_v1beta3/representations.rb +139 -0
  491. data/generated/google/apis/toolresults_v1beta3/service.rb +50 -0
  492. data/generated/google/apis/toolresults_v1beta3firstparty.rb +31 -0
  493. data/generated/google/apis/toolresults_v1beta3firstparty/classes.rb +2630 -0
  494. data/generated/google/apis/toolresults_v1beta3firstparty/representations.rb +886 -0
  495. data/generated/google/apis/toolresults_v1beta3firstparty/service.rb +1288 -0
  496. data/generated/google/apis/translate_v2/classes.rb +111 -111
  497. data/generated/google/apis/translate_v2/representations.rb +49 -49
  498. data/generated/google/apis/translate_v2/service.rb +94 -94
  499. data/generated/google/apis/vault_v1.rb +31 -0
  500. data/generated/google/apis/vault_v1/classes.rb +554 -0
  501. data/generated/google/apis/vault_v1/representations.rb +318 -0
  502. data/generated/google/apis/vault_v1/service.rb +677 -0
  503. data/generated/google/apis/videointelligence_v1beta1.rb +34 -0
  504. data/generated/google/apis/videointelligence_v1beta1/classes.rb +903 -0
  505. data/generated/google/apis/videointelligence_v1beta1/representations.rb +351 -0
  506. data/generated/google/apis/videointelligence_v1beta1/service.rb +92 -0
  507. data/generated/google/apis/vision_v1.rb +4 -4
  508. data/generated/google/apis/vision_v1/classes.rb +1176 -1178
  509. data/generated/google/apis/vision_v1/representations.rb +235 -235
  510. data/generated/google/apis/webmasters_v3.rb +1 -1
  511. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  512. data/generated/google/apis/youtube_analytics_v1beta1.rb +46 -0
  513. data/generated/google/apis/youtube_analytics_v1beta1/classes.rb +337 -0
  514. data/generated/google/apis/youtube_analytics_v1beta1/representations.rb +174 -0
  515. data/generated/google/apis/youtube_analytics_v1beta1/service.rb +491 -0
  516. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  517. data/generated/google/apis/youtube_partner_v1/classes.rb +3 -3
  518. data/generated/google/apis/youtube_partner_v1/representations.rb +1 -1
  519. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  520. data/generated/google/apis/youtubereporting_v1/classes.rb +134 -134
  521. data/generated/google/apis/youtubereporting_v1/representations.rb +36 -36
  522. data/generated/google/apis/youtubereporting_v1/service.rb +131 -131
  523. data/lib/google/apis/version.rb +1 -1
  524. metadata +246 -2
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/container-engine/
27
27
  module ContainerV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170627'
29
+ REVISION = '20170804'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,19 +22,20 @@ module Google
22
22
  module Apis
23
23
  module ContainerV1
24
24
 
25
- # SetLocationsRequest sets the locations of the cluster.
26
- class SetLocationsRequest
25
+ # AcceleratorConfig represents a Hardware Accelerator request.
26
+ class AcceleratorConfig
27
27
  include Google::Apis::Core::Hashable
28
28
 
29
- # The desired list of Google Compute Engine
30
- # [locations](/compute/docs/zones#available) in which the cluster's nodes
31
- # should be located. Changing the locations a cluster is in will result
32
- # in nodes being either created or removed from the cluster, depending on
33
- # whether locations are being added or removed.
34
- # This list must always include the cluster's primary zone.
35
- # Corresponds to the JSON property `locations`
36
- # @return [Array<String>]
37
- attr_accessor :locations
29
+ # The number of the accelerator cards exposed to an instance.
30
+ # Corresponds to the JSON property `acceleratorCount`
31
+ # @return [Fixnum]
32
+ attr_accessor :accelerator_count
33
+
34
+ # The accelerator type resource name. List of supported accelerators
35
+ # [here](/compute/docs/gpus/#Introduction)
36
+ # Corresponds to the JSON property `acceleratorType`
37
+ # @return [String]
38
+ attr_accessor :accelerator_type
38
39
 
39
40
  def initialize(**args)
40
41
  update!(**args)
@@ -42,34 +43,63 @@ module Google
42
43
 
43
44
  # Update properties of this object
44
45
  def update!(**args)
45
- @locations = args[:locations] if args.key?(:locations)
46
+ @accelerator_count = args[:accelerator_count] if args.key?(:accelerator_count)
47
+ @accelerator_type = args[:accelerator_type] if args.key?(:accelerator_type)
46
48
  end
47
49
  end
48
50
 
49
- # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
50
- # NodePool upgrade. This will be an no-op if the last upgrade successfully
51
- # completed.
52
- class RollbackNodePoolUpgradeRequest
51
+ # Configuration for the addons that can be automatically spun up in the
52
+ # cluster, enabling additional functionality.
53
+ class AddonsConfig
53
54
  include Google::Apis::Core::Hashable
54
55
 
56
+ # Configuration options for the horizontal pod autoscaling feature, which
57
+ # increases or decreases the number of replica pods a replication controller
58
+ # has based on the resource usage of the existing pods.
59
+ # Corresponds to the JSON property `horizontalPodAutoscaling`
60
+ # @return [Google::Apis::ContainerV1::HorizontalPodAutoscaling]
61
+ attr_accessor :horizontal_pod_autoscaling
62
+
63
+ # Configuration options for the HTTP (L7) load balancing controller addon,
64
+ # which makes it easy to set up HTTP load balancers for services in a cluster.
65
+ # Corresponds to the JSON property `httpLoadBalancing`
66
+ # @return [Google::Apis::ContainerV1::HttpLoadBalancing]
67
+ attr_accessor :http_load_balancing
68
+
69
+ # Configuration for the Kubernetes Dashboard.
70
+ # Corresponds to the JSON property `kubernetesDashboard`
71
+ # @return [Google::Apis::ContainerV1::KubernetesDashboard]
72
+ attr_accessor :kubernetes_dashboard
73
+
55
74
  def initialize(**args)
56
75
  update!(**args)
57
76
  end
58
77
 
59
78
  # Update properties of this object
60
79
  def update!(**args)
80
+ @horizontal_pod_autoscaling = args[:horizontal_pod_autoscaling] if args.key?(:horizontal_pod_autoscaling)
81
+ @http_load_balancing = args[:http_load_balancing] if args.key?(:http_load_balancing)
82
+ @kubernetes_dashboard = args[:kubernetes_dashboard] if args.key?(:kubernetes_dashboard)
61
83
  end
62
84
  end
63
85
 
64
- # SetNodePoolSizeRequest sets the size a node
65
- # pool.
66
- class SetNodePoolSizeRequest
86
+ # AutoUpgradeOptions defines the set of options for the user to control how
87
+ # the Auto Upgrades will proceed.
88
+ class AutoUpgradeOptions
67
89
  include Google::Apis::Core::Hashable
68
90
 
69
- # The desired node count for the pool.
70
- # Corresponds to the JSON property `nodeCount`
71
- # @return [Fixnum]
72
- attr_accessor :node_count
91
+ # [Output only] This field is set when upgrades are about to commence
92
+ # with the approximate start time for the upgrades, in
93
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
94
+ # Corresponds to the JSON property `autoUpgradeStartTime`
95
+ # @return [String]
96
+ attr_accessor :auto_upgrade_start_time
97
+
98
+ # [Output only] This field is set when upgrades are about to commence
99
+ # with the description of the upgrade.
100
+ # Corresponds to the JSON property `description`
101
+ # @return [String]
102
+ attr_accessor :description
73
103
 
74
104
  def initialize(**args)
75
105
  update!(**args)
@@ -77,46 +107,37 @@ module Google
77
107
 
78
108
  # Update properties of this object
79
109
  def update!(**args)
80
- @node_count = args[:node_count] if args.key?(:node_count)
110
+ @auto_upgrade_start_time = args[:auto_upgrade_start_time] if args.key?(:auto_upgrade_start_time)
111
+ @description = args[:description] if args.key?(:description)
81
112
  end
82
113
  end
83
114
 
84
- # UpdateClusterRequest updates the settings of a cluster.
85
- class UpdateClusterRequest
115
+ # CancelOperationRequest cancels a single operation.
116
+ class CancelOperationRequest
86
117
  include Google::Apis::Core::Hashable
87
118
 
88
- # ClusterUpdate describes an update to the cluster. Exactly one update can
89
- # be applied to a cluster with each request, so at most one field can be
90
- # provided.
91
- # Corresponds to the JSON property `update`
92
- # @return [Google::Apis::ContainerV1::ClusterUpdate]
93
- attr_accessor :update
94
-
95
119
  def initialize(**args)
96
120
  update!(**args)
97
121
  end
98
122
 
99
123
  # Update properties of this object
100
124
  def update!(**args)
101
- @update = args[:update] if args.key?(:update)
102
125
  end
103
126
  end
104
127
 
105
- # Configuration options for the NetworkPolicy feature.
106
- # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
107
- class NetworkPolicy
128
+ # CidrBlock contains an optional name and one CIDR block.
129
+ class CidrBlock
108
130
  include Google::Apis::Core::Hashable
109
131
 
110
- # Whether network policy is enabled on the cluster.
111
- # Corresponds to the JSON property `enabled`
112
- # @return [Boolean]
113
- attr_accessor :enabled
114
- alias_method :enabled?, :enabled
132
+ # cidr_block must be specified in CIDR notation.
133
+ # Corresponds to the JSON property `cidrBlock`
134
+ # @return [String]
135
+ attr_accessor :cidr_block
115
136
 
116
- # The selected network policy provider.
117
- # Corresponds to the JSON property `provider`
137
+ # display_name is an optional field for users to identify CIDR blocks.
138
+ # Corresponds to the JSON property `displayName`
118
139
  # @return [String]
119
- attr_accessor :provider
140
+ attr_accessor :display_name
120
141
 
121
142
  def initialize(**args)
122
143
  update!(**args)
@@ -124,21 +145,20 @@ module Google
124
145
 
125
146
  # Update properties of this object
126
147
  def update!(**args)
127
- @enabled = args[:enabled] if args.key?(:enabled)
128
- @provider = args[:provider] if args.key?(:provider)
148
+ @cidr_block = args[:cidr_block] if args.key?(:cidr_block)
149
+ @display_name = args[:display_name] if args.key?(:display_name)
129
150
  end
130
151
  end
131
152
 
132
- # UpdateMasterRequest updates the master of the cluster.
133
- class UpdateMasterRequest
153
+ # Configuration for client certificates on the cluster.
154
+ class ClientCertificateConfig
134
155
  include Google::Apis::Core::Hashable
135
156
 
136
- # The Kubernetes version to change the master to. The only valid value is the
137
- # latest supported version. Use "-" to have the server automatically select
138
- # the latest version.
139
- # Corresponds to the JSON property `masterVersion`
140
- # @return [String]
141
- attr_accessor :master_version
157
+ # Issue a client certificate.
158
+ # Corresponds to the JSON property `issueClientCertificate`
159
+ # @return [Boolean]
160
+ attr_accessor :issue_client_certificate
161
+ alias_method :issue_client_certificate?, :issue_client_certificate
142
162
 
143
163
  def initialize(**args)
144
164
  update!(**args)
@@ -146,7 +166,7 @@ module Google
146
166
 
147
167
  # Update properties of this object
148
168
  def update!(**args)
149
- @master_version = args[:master_version] if args.key?(:master_version)
169
+ @issue_client_certificate = args[:issue_client_certificate] if args.key?(:issue_client_certificate)
150
170
  end
151
171
  end
152
172
 
@@ -154,26 +174,35 @@ module Google
154
174
  class Cluster
155
175
  include Google::Apis::Core::Hashable
156
176
 
157
- # [Output only] The current software version of the master endpoint.
158
- # Corresponds to the JSON property `currentMasterVersion`
159
- # @return [String]
160
- attr_accessor :current_master_version
161
-
162
- # Parameters that describe the nodes in a cluster.
163
- # Corresponds to the JSON property `nodeConfig`
164
- # @return [Google::Apis::ContainerV1::NodeConfig]
165
- attr_accessor :node_config
166
-
167
177
  # Configuration for the addons that can be automatically spun up in the
168
178
  # cluster, enabling additional functionality.
169
179
  # Corresponds to the JSON property `addonsConfig`
170
180
  # @return [Google::Apis::ContainerV1::AddonsConfig]
171
181
  attr_accessor :addons_config
172
182
 
173
- # [Output only] The current status of this cluster.
174
- # Corresponds to the JSON property `status`
183
+ # The IP address range of the container pods in this cluster, in
184
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
185
+ # notation (e.g. `10.96.0.0/14`). Leave blank to have
186
+ # one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
187
+ # Corresponds to the JSON property `clusterIpv4Cidr`
175
188
  # @return [String]
176
- attr_accessor :status
189
+ attr_accessor :cluster_ipv4_cidr
190
+
191
+ # [Output only] The time the cluster was created, in
192
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
193
+ # Corresponds to the JSON property `createTime`
194
+ # @return [String]
195
+ attr_accessor :create_time
196
+
197
+ # [Output only] The current software version of the master endpoint.
198
+ # Corresponds to the JSON property `currentMasterVersion`
199
+ # @return [String]
200
+ attr_accessor :current_master_version
201
+
202
+ # [Output only] The number of nodes currently in the cluster.
203
+ # Corresponds to the JSON property `currentNodeCount`
204
+ # @return [Fixnum]
205
+ attr_accessor :current_node_count
177
206
 
178
207
  # [Output only] The current version of the node software components.
179
208
  # If they are currently at multiple versions because they're in the process
@@ -182,46 +211,21 @@ module Google
182
211
  # @return [String]
183
212
  attr_accessor :current_node_version
184
213
 
185
- # The name of the Google Compute Engine
186
- # [subnetwork](/compute/docs/subnetworks) to which the
187
- # cluster is connected.
188
- # Corresponds to the JSON property `subnetwork`
189
- # @return [String]
190
- attr_accessor :subnetwork
191
-
192
- # The name of this cluster. The name must be unique within this project
193
- # and zone, and can be up to 40 characters with the following restrictions:
194
- # * Lowercase letters, numbers, and hyphens only.
195
- # * Must start with a letter.
196
- # * Must end with a number or a letter.
197
- # Corresponds to the JSON property `name`
198
- # @return [String]
199
- attr_accessor :name
200
-
201
- # The resource labels for the cluster to use to annotate any related
202
- # Google Compute Engine resources.
203
- # Corresponds to the JSON property `resourceLabels`
204
- # @return [Hash<String,String>]
205
- attr_accessor :resource_labels
206
-
207
- # The initial Kubernetes version for this cluster. Valid versions are those
208
- # found in validMasterVersions returned by getServerConfig. The version can
209
- # be upgraded over time; such upgrades are reflected in
210
- # currentMasterVersion and currentNodeVersion.
211
- # Corresponds to the JSON property `initialClusterVersion`
214
+ # An optional description of this cluster.
215
+ # Corresponds to the JSON property `description`
212
216
  # @return [String]
213
- attr_accessor :initial_cluster_version
214
-
215
- # Configuration for controlling how IPs are allocated in the cluster.
216
- # Corresponds to the JSON property `ipAllocationPolicy`
217
- # @return [Google::Apis::ContainerV1::IpAllocationPolicy]
218
- attr_accessor :ip_allocation_policy
217
+ attr_accessor :description
219
218
 
220
- # Configuration for the legacy Attribute Based Access Control authorization
221
- # mode.
222
- # Corresponds to the JSON property `legacyAbac`
223
- # @return [Google::Apis::ContainerV1::LegacyAbac]
224
- attr_accessor :legacy_abac
219
+ # Kubernetes alpha features are enabled on this cluster. This includes alpha
220
+ # API groups (e.g. v1alpha1) and features that may not be production ready in
221
+ # the kubernetes version of the master and nodes.
222
+ # The cluster has no SLA for uptime and master/node upgrades are disabled.
223
+ # Alpha enabled clusters are automatically deleted thirty days after
224
+ # creation.
225
+ # Corresponds to the JSON property `enableKubernetesAlpha`
226
+ # @return [Boolean]
227
+ attr_accessor :enable_kubernetes_alpha
228
+ alias_method :enable_kubernetes_alpha?, :enable_kubernetes_alpha
225
229
 
226
230
  # [Output only] The IP address of this cluster's master endpoint.
227
231
  # The endpoint can be accessed from the internet at
@@ -232,19 +236,19 @@ module Google
232
236
  # @return [String]
233
237
  attr_accessor :endpoint
234
238
 
235
- # [Output only] The time the cluster was created, in
236
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
237
- # Corresponds to the JSON property `createTime`
239
+ # [Output only] The time the cluster will be automatically
240
+ # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
241
+ # Corresponds to the JSON property `expireTime`
238
242
  # @return [String]
239
- attr_accessor :create_time
243
+ attr_accessor :expire_time
240
244
 
241
- # The IP address range of the container pods in this cluster, in
242
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
243
- # notation (e.g. `10.96.0.0/14`). Leave blank to have
244
- # one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
245
- # Corresponds to the JSON property `clusterIpv4Cidr`
245
+ # The initial Kubernetes version for this cluster. Valid versions are those
246
+ # found in validMasterVersions returned by getServerConfig. The version can
247
+ # be upgraded over time; such upgrades are reflected in
248
+ # currentMasterVersion and currentNodeVersion.
249
+ # Corresponds to the JSON property `initialClusterVersion`
246
250
  # @return [String]
247
- attr_accessor :cluster_ipv4_cidr
251
+ attr_accessor :initial_cluster_version
248
252
 
249
253
  # The number of nodes to create in this cluster. You must ensure that your
250
254
  # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
@@ -258,25 +262,6 @@ module Google
258
262
  # @return [Fixnum]
259
263
  attr_accessor :initial_node_count
260
264
 
261
- # The node pools associated with this cluster.
262
- # This field should not be set if "node_config" or "initial_node_count" are
263
- # specified.
264
- # Corresponds to the JSON property `nodePools`
265
- # @return [Array<Google::Apis::ContainerV1::NodePool>]
266
- attr_accessor :node_pools
267
-
268
- # The list of Google Compute Engine
269
- # [locations](/compute/docs/zones#available) in which the cluster's nodes
270
- # should be located.
271
- # Corresponds to the JSON property `locations`
272
- # @return [Array<String>]
273
- attr_accessor :locations
274
-
275
- # [Output only] Server-defined URL for the resource.
276
- # Corresponds to the JSON property `selfLink`
277
- # @return [String]
278
- attr_accessor :self_link
279
-
280
265
  # [Output only] The resource URLs of [instance
281
266
  # groups](/compute/docs/instance-groups/) associated with this
282
267
  # cluster.
@@ -284,41 +269,53 @@ module Google
284
269
  # @return [Array<String>]
285
270
  attr_accessor :instance_group_urls
286
271
 
287
- # [Output only] The IP address range of the Kubernetes services in
288
- # this cluster, in
289
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
290
- # notation (e.g. `1.2.3.4/29`). Service addresses are
291
- # typically put in the last `/16` from the container CIDR.
292
- # Corresponds to the JSON property `servicesIpv4Cidr`
272
+ # Configuration for controlling how IPs are allocated in the cluster.
273
+ # Corresponds to the JSON property `ipAllocationPolicy`
274
+ # @return [Google::Apis::ContainerV1::IpAllocationPolicy]
275
+ attr_accessor :ip_allocation_policy
276
+
277
+ # The fingerprint of the set of labels for this cluster.
278
+ # Corresponds to the JSON property `labelFingerprint`
293
279
  # @return [String]
294
- attr_accessor :services_ipv4_cidr
280
+ attr_accessor :label_fingerprint
295
281
 
296
- # Configuration options for the NetworkPolicy feature.
297
- # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
298
- # Corresponds to the JSON property `networkPolicy`
299
- # @return [Google::Apis::ContainerV1::NetworkPolicy]
300
- attr_accessor :network_policy
282
+ # Configuration for the legacy Attribute Based Access Control authorization
283
+ # mode.
284
+ # Corresponds to the JSON property `legacyAbac`
285
+ # @return [Google::Apis::ContainerV1::LegacyAbac]
286
+ attr_accessor :legacy_abac
301
287
 
302
- # Kubernetes alpha features are enabled on this cluster. This includes alpha
303
- # API groups (e.g. v1alpha1) and features that may not be production ready in
304
- # the kubernetes version of the master and nodes.
305
- # The cluster has no SLA for uptime and master/node upgrades are disabled.
306
- # Alpha enabled clusters are automatically deleted thirty days after
307
- # creation.
308
- # Corresponds to the JSON property `enableKubernetesAlpha`
309
- # @return [Boolean]
310
- attr_accessor :enable_kubernetes_alpha
311
- alias_method :enable_kubernetes_alpha?, :enable_kubernetes_alpha
288
+ # The list of Google Compute Engine
289
+ # [locations](/compute/docs/zones#available) in which the cluster's nodes
290
+ # should be located.
291
+ # Corresponds to the JSON property `locations`
292
+ # @return [Array<String>]
293
+ attr_accessor :locations
312
294
 
313
- # An optional description of this cluster.
314
- # Corresponds to the JSON property `description`
295
+ # The logging service the cluster should use to write logs.
296
+ # Currently available options:
297
+ # * `logging.googleapis.com` - the Google Cloud Logging service.
298
+ # * `none` - no logs will be exported from the cluster.
299
+ # * if left as an empty string,`logging.googleapis.com` will be used.
300
+ # Corresponds to the JSON property `loggingService`
315
301
  # @return [String]
316
- attr_accessor :description
302
+ attr_accessor :logging_service
317
303
 
318
- # [Output only] The number of nodes currently in the cluster.
319
- # Corresponds to the JSON property `currentNodeCount`
320
- # @return [Fixnum]
321
- attr_accessor :current_node_count
304
+ # The authentication information for accessing the master endpoint.
305
+ # Authentication can be done using HTTP basic auth or using client
306
+ # certificates.
307
+ # Corresponds to the JSON property `masterAuth`
308
+ # @return [Google::Apis::ContainerV1::MasterAuth]
309
+ attr_accessor :master_auth
310
+
311
+ # Master authorized networks is a Beta feature.
312
+ # Configuration options for the master authorized networks feature. Enabled
313
+ # master authorized networks will disallow all external traffic to access
314
+ # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
315
+ # Google Compute Engine Public IPs and Google Prod IPs.
316
+ # Corresponds to the JSON property `masterAuthorizedNetworksConfig`
317
+ # @return [Google::Apis::ContainerV1::MasterAuthorizedNetworksConfig]
318
+ attr_accessor :master_authorized_networks_config
322
319
 
323
320
  # The monitoring service the cluster should use to write metrics.
324
321
  # Currently available options:
@@ -329,6 +326,15 @@ module Google
329
326
  # @return [String]
330
327
  attr_accessor :monitoring_service
331
328
 
329
+ # The name of this cluster. The name must be unique within this project
330
+ # and zone, and can be up to 40 characters with the following restrictions:
331
+ # * Lowercase letters, numbers, and hyphens only.
332
+ # * Must start with a letter.
333
+ # * Must end with a number or a letter.
334
+ # Corresponds to the JSON property `name`
335
+ # @return [String]
336
+ attr_accessor :name
337
+
332
338
  # The name of the Google Compute Engine
333
339
  # [network](/compute/docs/networks-and-firewalls#networks) to which the
334
340
  # cluster is connected. If left unspecified, the `default` network
@@ -337,17 +343,16 @@ module Google
337
343
  # @return [String]
338
344
  attr_accessor :network
339
345
 
340
- # The fingerprint of the set of labels for this cluster.
341
- # Corresponds to the JSON property `labelFingerprint`
342
- # @return [String]
343
- attr_accessor :label_fingerprint
346
+ # Configuration options for the NetworkPolicy feature.
347
+ # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
348
+ # Corresponds to the JSON property `networkPolicy`
349
+ # @return [Google::Apis::ContainerV1::NetworkPolicy]
350
+ attr_accessor :network_policy
344
351
 
345
- # [Output only] The name of the Google Compute Engine
346
- # [zone](/compute/docs/zones#available) in which the cluster
347
- # resides.
348
- # Corresponds to the JSON property `zone`
349
- # @return [String]
350
- attr_accessor :zone
352
+ # Parameters that describe the nodes in a cluster.
353
+ # Corresponds to the JSON property `nodeConfig`
354
+ # @return [Google::Apis::ContainerV1::NodeConfig]
355
+ attr_accessor :node_config
351
356
 
352
357
  # [Output only] The size of the address space on each node for hosting
353
358
  # containers. This is provisioned from within the `container_ipv4_cidr`
@@ -356,20 +361,37 @@ module Google
356
361
  # @return [Fixnum]
357
362
  attr_accessor :node_ipv4_cidr_size
358
363
 
359
- # The logging service the cluster should use to write logs.
360
- # Currently available options:
361
- # * `logging.googleapis.com` - the Google Cloud Logging service.
362
- # * `none` - no logs will be exported from the cluster.
363
- # * if left as an empty string,`logging.googleapis.com` will be used.
364
- # Corresponds to the JSON property `loggingService`
364
+ # The node pools associated with this cluster.
365
+ # This field should not be set if "node_config" or "initial_node_count" are
366
+ # specified.
367
+ # Corresponds to the JSON property `nodePools`
368
+ # @return [Array<Google::Apis::ContainerV1::NodePool>]
369
+ attr_accessor :node_pools
370
+
371
+ # The resource labels for the cluster to use to annotate any related
372
+ # Google Compute Engine resources.
373
+ # Corresponds to the JSON property `resourceLabels`
374
+ # @return [Hash<String,String>]
375
+ attr_accessor :resource_labels
376
+
377
+ # [Output only] Server-defined URL for the resource.
378
+ # Corresponds to the JSON property `selfLink`
365
379
  # @return [String]
366
- attr_accessor :logging_service
380
+ attr_accessor :self_link
367
381
 
368
- # [Output only] The time the cluster will be automatically
369
- # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
370
- # Corresponds to the JSON property `expireTime`
382
+ # [Output only] The IP address range of the Kubernetes services in
383
+ # this cluster, in
384
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
385
+ # notation (e.g. `1.2.3.4/29`). Service addresses are
386
+ # typically put in the last `/16` from the container CIDR.
387
+ # Corresponds to the JSON property `servicesIpv4Cidr`
371
388
  # @return [String]
372
- attr_accessor :expire_time
389
+ attr_accessor :services_ipv4_cidr
390
+
391
+ # [Output only] The current status of this cluster.
392
+ # Corresponds to the JSON property `status`
393
+ # @return [String]
394
+ attr_accessor :status
373
395
 
374
396
  # [Output only] Additional information about the current status of this
375
397
  # cluster, if available.
@@ -377,12 +399,19 @@ module Google
377
399
  # @return [String]
378
400
  attr_accessor :status_message
379
401
 
380
- # The authentication information for accessing the master endpoint.
381
- # Authentication can be done using HTTP basic auth or using client
382
- # certificates.
383
- # Corresponds to the JSON property `masterAuth`
384
- # @return [Google::Apis::ContainerV1::MasterAuth]
385
- attr_accessor :master_auth
402
+ # The name of the Google Compute Engine
403
+ # [subnetwork](/compute/docs/subnetworks) to which the
404
+ # cluster is connected.
405
+ # Corresponds to the JSON property `subnetwork`
406
+ # @return [String]
407
+ attr_accessor :subnetwork
408
+
409
+ # [Output only] The name of the Google Compute Engine
410
+ # [zone](/compute/docs/zones#available) in which the cluster
411
+ # resides.
412
+ # Corresponds to the JSON property `zone`
413
+ # @return [String]
414
+ attr_accessor :zone
386
415
 
387
416
  def initialize(**args)
388
417
  update!(**args)
@@ -390,142 +419,179 @@ module Google
390
419
 
391
420
  # Update properties of this object
392
421
  def update!(**args)
393
- @current_master_version = args[:current_master_version] if args.key?(:current_master_version)
394
- @node_config = args[:node_config] if args.key?(:node_config)
395
422
  @addons_config = args[:addons_config] if args.key?(:addons_config)
396
- @status = args[:status] if args.key?(:status)
423
+ @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr)
424
+ @create_time = args[:create_time] if args.key?(:create_time)
425
+ @current_master_version = args[:current_master_version] if args.key?(:current_master_version)
426
+ @current_node_count = args[:current_node_count] if args.key?(:current_node_count)
397
427
  @current_node_version = args[:current_node_version] if args.key?(:current_node_version)
398
- @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
399
- @name = args[:name] if args.key?(:name)
400
- @resource_labels = args[:resource_labels] if args.key?(:resource_labels)
428
+ @description = args[:description] if args.key?(:description)
429
+ @enable_kubernetes_alpha = args[:enable_kubernetes_alpha] if args.key?(:enable_kubernetes_alpha)
430
+ @endpoint = args[:endpoint] if args.key?(:endpoint)
431
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
401
432
  @initial_cluster_version = args[:initial_cluster_version] if args.key?(:initial_cluster_version)
433
+ @initial_node_count = args[:initial_node_count] if args.key?(:initial_node_count)
434
+ @instance_group_urls = args[:instance_group_urls] if args.key?(:instance_group_urls)
402
435
  @ip_allocation_policy = args[:ip_allocation_policy] if args.key?(:ip_allocation_policy)
436
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
403
437
  @legacy_abac = args[:legacy_abac] if args.key?(:legacy_abac)
404
- @endpoint = args[:endpoint] if args.key?(:endpoint)
405
- @create_time = args[:create_time] if args.key?(:create_time)
406
- @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr)
407
- @initial_node_count = args[:initial_node_count] if args.key?(:initial_node_count)
408
- @node_pools = args[:node_pools] if args.key?(:node_pools)
409
438
  @locations = args[:locations] if args.key?(:locations)
410
- @self_link = args[:self_link] if args.key?(:self_link)
411
- @instance_group_urls = args[:instance_group_urls] if args.key?(:instance_group_urls)
412
- @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr)
413
- @network_policy = args[:network_policy] if args.key?(:network_policy)
414
- @enable_kubernetes_alpha = args[:enable_kubernetes_alpha] if args.key?(:enable_kubernetes_alpha)
415
- @description = args[:description] if args.key?(:description)
416
- @current_node_count = args[:current_node_count] if args.key?(:current_node_count)
439
+ @logging_service = args[:logging_service] if args.key?(:logging_service)
440
+ @master_auth = args[:master_auth] if args.key?(:master_auth)
441
+ @master_authorized_networks_config = args[:master_authorized_networks_config] if args.key?(:master_authorized_networks_config)
417
442
  @monitoring_service = args[:monitoring_service] if args.key?(:monitoring_service)
443
+ @name = args[:name] if args.key?(:name)
418
444
  @network = args[:network] if args.key?(:network)
419
- @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
420
- @zone = args[:zone] if args.key?(:zone)
445
+ @network_policy = args[:network_policy] if args.key?(:network_policy)
446
+ @node_config = args[:node_config] if args.key?(:node_config)
421
447
  @node_ipv4_cidr_size = args[:node_ipv4_cidr_size] if args.key?(:node_ipv4_cidr_size)
422
- @logging_service = args[:logging_service] if args.key?(:logging_service)
423
- @expire_time = args[:expire_time] if args.key?(:expire_time)
448
+ @node_pools = args[:node_pools] if args.key?(:node_pools)
449
+ @resource_labels = args[:resource_labels] if args.key?(:resource_labels)
450
+ @self_link = args[:self_link] if args.key?(:self_link)
451
+ @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr)
452
+ @status = args[:status] if args.key?(:status)
424
453
  @status_message = args[:status_message] if args.key?(:status_message)
425
- @master_auth = args[:master_auth] if args.key?(:master_auth)
454
+ @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
455
+ @zone = args[:zone] if args.key?(:zone)
426
456
  end
427
457
  end
428
458
 
429
- # CreateNodePoolRequest creates a node pool for a cluster.
430
- class CreateNodePoolRequest
459
+ # ClusterUpdate describes an update to the cluster. Exactly one update can
460
+ # be applied to a cluster with each request, so at most one field can be
461
+ # provided.
462
+ class ClusterUpdate
431
463
  include Google::Apis::Core::Hashable
432
464
 
433
- # NodePool contains the name and configuration for a cluster's node pool.
434
- # Node pools are a set of nodes (i.e. VM's), with a common configuration and
435
- # specification, under the control of the cluster master. They may have a set
436
- # of Kubernetes labels applied to them, which may be used to reference them
437
- # during pod scheduling. They may also be resized up or down, to accommodate
438
- # the workload.
439
- # Corresponds to the JSON property `nodePool`
440
- # @return [Google::Apis::ContainerV1::NodePool]
441
- attr_accessor :node_pool
442
-
443
- def initialize(**args)
444
- update!(**args)
445
- end
446
-
447
- # Update properties of this object
448
- def update!(**args)
449
- @node_pool = args[:node_pool] if args.key?(:node_pool)
450
- end
451
- end
452
-
453
- # ListOperationsResponse is the result of ListOperationsRequest.
454
- class ListOperationsResponse
455
- include Google::Apis::Core::Hashable
465
+ # Configuration for the addons that can be automatically spun up in the
466
+ # cluster, enabling additional functionality.
467
+ # Corresponds to the JSON property `desiredAddonsConfig`
468
+ # @return [Google::Apis::ContainerV1::AddonsConfig]
469
+ attr_accessor :desired_addons_config
456
470
 
457
- # A list of operations in the project in the specified zone.
458
- # Corresponds to the JSON property `operations`
459
- # @return [Array<Google::Apis::ContainerV1::Operation>]
460
- attr_accessor :operations
471
+ # The desired image type for the node pool.
472
+ # NOTE: Set the "desired_node_pool" field as well.
473
+ # Corresponds to the JSON property `desiredImageType`
474
+ # @return [String]
475
+ attr_accessor :desired_image_type
461
476
 
462
- # If any zones are listed here, the list of operations returned
463
- # may be missing the operations from those zones.
464
- # Corresponds to the JSON property `missingZones`
477
+ # The desired list of Google Compute Engine
478
+ # [locations](/compute/docs/zones#available) in which the cluster's nodes
479
+ # should be located. Changing the locations a cluster is in will result
480
+ # in nodes being either created or removed from the cluster, depending on
481
+ # whether locations are being added or removed.
482
+ # This list must always include the cluster's primary zone.
483
+ # Corresponds to the JSON property `desiredLocations`
465
484
  # @return [Array<String>]
466
- attr_accessor :missing_zones
467
-
468
- def initialize(**args)
469
- update!(**args)
470
- end
485
+ attr_accessor :desired_locations
471
486
 
472
- # Update properties of this object
473
- def update!(**args)
474
- @operations = args[:operations] if args.key?(:operations)
475
- @missing_zones = args[:missing_zones] if args.key?(:missing_zones)
476
- end
477
- end
487
+ # Master authorized networks is a Beta feature.
488
+ # Configuration options for the master authorized networks feature. Enabled
489
+ # master authorized networks will disallow all external traffic to access
490
+ # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
491
+ # Google Compute Engine Public IPs and Google Prod IPs.
492
+ # Corresponds to the JSON property `desiredMasterAuthorizedNetworksConfig`
493
+ # @return [Google::Apis::ContainerV1::MasterAuthorizedNetworksConfig]
494
+ attr_accessor :desired_master_authorized_networks_config
478
495
 
479
- # SetMonitoringServiceRequest sets the monitoring service of a cluster.
480
- class SetMonitoringServiceRequest
481
- include Google::Apis::Core::Hashable
496
+ # The Kubernetes version to change the master to. The only valid value is the
497
+ # latest supported version. Use "-" to have the server automatically select
498
+ # the latest version.
499
+ # Corresponds to the JSON property `desiredMasterVersion`
500
+ # @return [String]
501
+ attr_accessor :desired_master_version
482
502
 
483
503
  # The monitoring service the cluster should use to write metrics.
484
504
  # Currently available options:
485
505
  # * "monitoring.googleapis.com" - the Google Cloud Monitoring service
486
506
  # * "none" - no metrics will be exported from the cluster
487
- # Corresponds to the JSON property `monitoringService`
507
+ # Corresponds to the JSON property `desiredMonitoringService`
488
508
  # @return [String]
489
- attr_accessor :monitoring_service
509
+ attr_accessor :desired_monitoring_service
490
510
 
491
- def initialize(**args)
492
- update!(**args)
493
- end
511
+ # NodePoolAutoscaling contains information required by cluster autoscaler to
512
+ # adjust the size of the node pool to the current cluster usage.
513
+ # Corresponds to the JSON property `desiredNodePoolAutoscaling`
514
+ # @return [Google::Apis::ContainerV1::NodePoolAutoscaling]
515
+ attr_accessor :desired_node_pool_autoscaling
494
516
 
495
- # Update properties of this object
517
+ # The node pool to be upgraded. This field is mandatory if
518
+ # "desired_node_version", "desired_image_family" or
519
+ # "desired_node_pool_autoscaling" is specified and there is more than one
520
+ # node pool on the cluster.
521
+ # Corresponds to the JSON property `desiredNodePoolId`
522
+ # @return [String]
523
+ attr_accessor :desired_node_pool_id
524
+
525
+ # The Kubernetes version to change the nodes to (typically an
526
+ # upgrade). Use `-` to upgrade to the latest version supported by
527
+ # the server.
528
+ # Corresponds to the JSON property `desiredNodeVersion`
529
+ # @return [String]
530
+ attr_accessor :desired_node_version
531
+
532
+ def initialize(**args)
533
+ update!(**args)
534
+ end
535
+
536
+ # Update properties of this object
496
537
  def update!(**args)
497
- @monitoring_service = args[:monitoring_service] if args.key?(:monitoring_service)
538
+ @desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_config)
539
+ @desired_image_type = args[:desired_image_type] if args.key?(:desired_image_type)
540
+ @desired_locations = args[:desired_locations] if args.key?(:desired_locations)
541
+ @desired_master_authorized_networks_config = args[:desired_master_authorized_networks_config] if args.key?(:desired_master_authorized_networks_config)
542
+ @desired_master_version = args[:desired_master_version] if args.key?(:desired_master_version)
543
+ @desired_monitoring_service = args[:desired_monitoring_service] if args.key?(:desired_monitoring_service)
544
+ @desired_node_pool_autoscaling = args[:desired_node_pool_autoscaling] if args.key?(:desired_node_pool_autoscaling)
545
+ @desired_node_pool_id = args[:desired_node_pool_id] if args.key?(:desired_node_pool_id)
546
+ @desired_node_version = args[:desired_node_version] if args.key?(:desired_node_version)
498
547
  end
499
548
  end
500
549
 
501
- # Container Engine service configuration.
502
- class ServerConfig
550
+ # CompleteIPRotationRequest moves the cluster master back into single-IP mode.
551
+ class CompleteIpRotationRequest
503
552
  include Google::Apis::Core::Hashable
504
553
 
505
- # List of valid master versions.
506
- # Corresponds to the JSON property `validMasterVersions`
507
- # @return [Array<String>]
508
- attr_accessor :valid_master_versions
554
+ def initialize(**args)
555
+ update!(**args)
556
+ end
509
557
 
510
- # Default image type.
511
- # Corresponds to the JSON property `defaultImageType`
512
- # @return [String]
513
- attr_accessor :default_image_type
558
+ # Update properties of this object
559
+ def update!(**args)
560
+ end
561
+ end
514
562
 
515
- # Version of Kubernetes the service deploys by default.
516
- # Corresponds to the JSON property `defaultClusterVersion`
517
- # @return [String]
518
- attr_accessor :default_cluster_version
563
+ # CreateClusterRequest creates a cluster.
564
+ class CreateClusterRequest
565
+ include Google::Apis::Core::Hashable
519
566
 
520
- # List of valid image types.
521
- # Corresponds to the JSON property `validImageTypes`
522
- # @return [Array<String>]
523
- attr_accessor :valid_image_types
567
+ # A Google Container Engine cluster.
568
+ # Corresponds to the JSON property `cluster`
569
+ # @return [Google::Apis::ContainerV1::Cluster]
570
+ attr_accessor :cluster
524
571
 
525
- # List of valid node upgrade target versions.
526
- # Corresponds to the JSON property `validNodeVersions`
527
- # @return [Array<String>]
528
- attr_accessor :valid_node_versions
572
+ def initialize(**args)
573
+ update!(**args)
574
+ end
575
+
576
+ # Update properties of this object
577
+ def update!(**args)
578
+ @cluster = args[:cluster] if args.key?(:cluster)
579
+ end
580
+ end
581
+
582
+ # CreateNodePoolRequest creates a node pool for a cluster.
583
+ class CreateNodePoolRequest
584
+ include Google::Apis::Core::Hashable
585
+
586
+ # NodePool contains the name and configuration for a cluster's node pool.
587
+ # Node pools are a set of nodes (i.e. VM's), with a common configuration and
588
+ # specification, under the control of the cluster master. They may have a set
589
+ # of Kubernetes labels applied to them, which may be used to reference them
590
+ # during pod scheduling. They may also be resized up or down, to accommodate
591
+ # the workload.
592
+ # Corresponds to the JSON property `nodePool`
593
+ # @return [Google::Apis::ContainerV1::NodePool]
594
+ attr_accessor :node_pool
529
595
 
530
596
  def initialize(**args)
531
597
  update!(**args)
@@ -533,57 +599,140 @@ module Google
533
599
 
534
600
  # Update properties of this object
535
601
  def update!(**args)
536
- @valid_master_versions = args[:valid_master_versions] if args.key?(:valid_master_versions)
537
- @default_image_type = args[:default_image_type] if args.key?(:default_image_type)
538
- @default_cluster_version = args[:default_cluster_version] if args.key?(:default_cluster_version)
539
- @valid_image_types = args[:valid_image_types] if args.key?(:valid_image_types)
540
- @valid_node_versions = args[:valid_node_versions] if args.key?(:valid_node_versions)
602
+ @node_pool = args[:node_pool] if args.key?(:node_pool)
541
603
  end
542
604
  end
543
605
 
544
- # The authentication information for accessing the master endpoint.
545
- # Authentication can be done using HTTP basic auth or using client
546
- # certificates.
547
- class MasterAuth
606
+ # A generic empty message that you can re-use to avoid defining duplicated
607
+ # empty messages in your APIs. A typical example is to use it as the request
608
+ # or the response type of an API method. For instance:
609
+ # service Foo `
610
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
611
+ # `
612
+ # The JSON representation for `Empty` is empty JSON object ````.
613
+ class Empty
548
614
  include Google::Apis::Core::Hashable
549
615
 
550
- # [Output only] Base64-encoded public certificate used by clients to
551
- # authenticate to the cluster endpoint.
552
- # Corresponds to the JSON property `clientCertificate`
553
- # @return [String]
554
- attr_accessor :client_certificate
616
+ def initialize(**args)
617
+ update!(**args)
618
+ end
555
619
 
556
- # The username to use for HTTP basic authentication to the master endpoint.
557
- # For clusters v1.6.0 and later, you can disable basic authentication by
558
- # providing an empty username.
559
- # Corresponds to the JSON property `username`
560
- # @return [String]
561
- attr_accessor :username
620
+ # Update properties of this object
621
+ def update!(**args)
622
+ end
623
+ end
562
624
 
563
- # The password to use for HTTP basic authentication to the master endpoint.
564
- # Because the master endpoint is open to the Internet, you should create a
565
- # strong password. If a password is provided for cluster creation, username
566
- # must be non-empty.
567
- # Corresponds to the JSON property `password`
625
+ # Configuration options for the horizontal pod autoscaling feature, which
626
+ # increases or decreases the number of replica pods a replication controller
627
+ # has based on the resource usage of the existing pods.
628
+ class HorizontalPodAutoscaling
629
+ include Google::Apis::Core::Hashable
630
+
631
+ # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
632
+ # When enabled, it ensures that a Heapster pod is running in the cluster,
633
+ # which is also used by the Cloud Monitoring service.
634
+ # Corresponds to the JSON property `disabled`
635
+ # @return [Boolean]
636
+ attr_accessor :disabled
637
+ alias_method :disabled?, :disabled
638
+
639
+ def initialize(**args)
640
+ update!(**args)
641
+ end
642
+
643
+ # Update properties of this object
644
+ def update!(**args)
645
+ @disabled = args[:disabled] if args.key?(:disabled)
646
+ end
647
+ end
648
+
649
+ # Configuration options for the HTTP (L7) load balancing controller addon,
650
+ # which makes it easy to set up HTTP load balancers for services in a cluster.
651
+ class HttpLoadBalancing
652
+ include Google::Apis::Core::Hashable
653
+
654
+ # Whether the HTTP Load Balancing controller is enabled in the cluster.
655
+ # When enabled, it runs a small pod in the cluster that manages the load
656
+ # balancers.
657
+ # Corresponds to the JSON property `disabled`
658
+ # @return [Boolean]
659
+ attr_accessor :disabled
660
+ alias_method :disabled?, :disabled
661
+
662
+ def initialize(**args)
663
+ update!(**args)
664
+ end
665
+
666
+ # Update properties of this object
667
+ def update!(**args)
668
+ @disabled = args[:disabled] if args.key?(:disabled)
669
+ end
670
+ end
671
+
672
+ # Configuration for controlling how IPs are allocated in the cluster.
673
+ class IpAllocationPolicy
674
+ include Google::Apis::Core::Hashable
675
+
676
+ # The IP address range for the cluster pod IPs. If this field is set, then
677
+ # `cluster.cluster_ipv4_cidr` must be left blank.
678
+ # This field is only applicable when `use_ip_aliases` is true.
679
+ # Set to blank to have a range will be chosen with the default size.
680
+ # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
681
+ # netmask.
682
+ # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
683
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
684
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
685
+ # to use.
686
+ # Corresponds to the JSON property `clusterIpv4Cidr`
568
687
  # @return [String]
569
- attr_accessor :password
688
+ attr_accessor :cluster_ipv4_cidr
570
689
 
571
- # Configuration for client certificates on the cluster.
572
- # Corresponds to the JSON property `clientCertificateConfig`
573
- # @return [Google::Apis::ContainerV1::ClientCertificateConfig]
574
- attr_accessor :client_certificate_config
690
+ # Whether a new subnetwork will be created automatically for the cluster.
691
+ # This field is only applicable when `use_ip_aliases` is true.
692
+ # Corresponds to the JSON property `createSubnetwork`
693
+ # @return [Boolean]
694
+ attr_accessor :create_subnetwork
695
+ alias_method :create_subnetwork?, :create_subnetwork
575
696
 
576
- # [Output only] Base64-encoded private key used by clients to authenticate
577
- # to the cluster endpoint.
578
- # Corresponds to the JSON property `clientKey`
697
+ # The IP address range of the instance IPs in this cluster.
698
+ # This is applicable only if `create_subnetwork` is true.
699
+ # Set to blank to have a range will be chosen with the default size.
700
+ # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
701
+ # netmask.
702
+ # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
703
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
704
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
705
+ # to use.
706
+ # Corresponds to the JSON property `nodeIpv4Cidr`
579
707
  # @return [String]
580
- attr_accessor :client_key
708
+ attr_accessor :node_ipv4_cidr
581
709
 
582
- # [Output only] Base64-encoded public certificate that is the root of
583
- # trust for the cluster.
584
- # Corresponds to the JSON property `clusterCaCertificate`
710
+ # The IP address range of the services IPs in this cluster. If blank, a range
711
+ # will be automatically chosen with the default size.
712
+ # This field is only applicable when `use_ip_aliases` is true.
713
+ # Set to blank to have a range will be chosen with the default size.
714
+ # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
715
+ # netmask.
716
+ # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
717
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
718
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
719
+ # to use.
720
+ # Corresponds to the JSON property `servicesIpv4Cidr`
585
721
  # @return [String]
586
- attr_accessor :cluster_ca_certificate
722
+ attr_accessor :services_ipv4_cidr
723
+
724
+ # A custom subnetwork name to be used if `create_subnetwork` is true. If
725
+ # this field is empty, then an automatic name will be chosen for the new
726
+ # subnetwork.
727
+ # Corresponds to the JSON property `subnetworkName`
728
+ # @return [String]
729
+ attr_accessor :subnetwork_name
730
+
731
+ # Whether alias IPs will be used for pod IPs in the cluster.
732
+ # Corresponds to the JSON property `useIpAliases`
733
+ # @return [Boolean]
734
+ attr_accessor :use_ip_aliases
735
+ alias_method :use_ip_aliases?, :use_ip_aliases
587
736
 
588
737
  def initialize(**args)
589
738
  update!(**args)
@@ -591,112 +740,74 @@ module Google
591
740
 
592
741
  # Update properties of this object
593
742
  def update!(**args)
594
- @client_certificate = args[:client_certificate] if args.key?(:client_certificate)
595
- @username = args[:username] if args.key?(:username)
596
- @password = args[:password] if args.key?(:password)
597
- @client_certificate_config = args[:client_certificate_config] if args.key?(:client_certificate_config)
598
- @client_key = args[:client_key] if args.key?(:client_key)
599
- @cluster_ca_certificate = args[:cluster_ca_certificate] if args.key?(:cluster_ca_certificate)
743
+ @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr)
744
+ @create_subnetwork = args[:create_subnetwork] if args.key?(:create_subnetwork)
745
+ @node_ipv4_cidr = args[:node_ipv4_cidr] if args.key?(:node_ipv4_cidr)
746
+ @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr)
747
+ @subnetwork_name = args[:subnetwork_name] if args.key?(:subnetwork_name)
748
+ @use_ip_aliases = args[:use_ip_aliases] if args.key?(:use_ip_aliases)
600
749
  end
601
750
  end
602
751
 
603
- # Parameters that describe the nodes in a cluster.
604
- class NodeConfig
752
+ # Configuration for the Kubernetes Dashboard.
753
+ class KubernetesDashboard
605
754
  include Google::Apis::Core::Hashable
606
755
 
607
- # Whether the nodes are created as preemptible VM instances. See:
608
- # https://cloud.google.com/compute/docs/instances/preemptible for more
609
- # information about preemptible VM instances.
610
- # Corresponds to the JSON property `preemptible`
756
+ # Whether the Kubernetes Dashboard is enabled for this cluster.
757
+ # Corresponds to the JSON property `disabled`
611
758
  # @return [Boolean]
612
- attr_accessor :preemptible
613
- alias_method :preemptible?, :preemptible
759
+ attr_accessor :disabled
760
+ alias_method :disabled?, :disabled
614
761
 
615
- # The map of Kubernetes labels (key/value pairs) to be applied to each node.
616
- # These will added in addition to any default label(s) that
617
- # Kubernetes may apply to the node.
618
- # In case of conflict in label keys, the applied set may differ depending on
619
- # the Kubernetes version -- it's best to assume the behavior is undefined
620
- # and conflicts should be avoided.
621
- # For more information, including usage and the valid values, see:
622
- # http://kubernetes.io/v1.1/docs/user-guide/labels.html
623
- # Corresponds to the JSON property `labels`
624
- # @return [Hash<String,String>]
625
- attr_accessor :labels
762
+ def initialize(**args)
763
+ update!(**args)
764
+ end
626
765
 
627
- # The number of local SSD disks to be attached to the node.
628
- # The limit for this value is dependant upon the maximum number of
629
- # disks available on a machine per zone. See:
630
- # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
631
- # for more information.
632
- # Corresponds to the JSON property `localSsdCount`
633
- # @return [Fixnum]
634
- attr_accessor :local_ssd_count
766
+ # Update properties of this object
767
+ def update!(**args)
768
+ @disabled = args[:disabled] if args.key?(:disabled)
769
+ end
770
+ end
635
771
 
636
- # The metadata key/value pairs assigned to instances in the cluster.
637
- # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
638
- # in length. These are reflected as part of a URL in the metadata server.
639
- # Additionally, to avoid ambiguity, keys must not conflict with any other
640
- # metadata keys for the project or be one of the four reserved keys:
641
- # "instance-template", "kube-env", "startup-script", and "user-data"
642
- # Values are free-form strings, and only have meaning as interpreted by
643
- # the image running in the instance. The only restriction placed on them is
644
- # that each value's size must be less than or equal to 32 KB.
645
- # The total size of all keys and values must be less than 512 KB.
646
- # Corresponds to the JSON property `metadata`
647
- # @return [Hash<String,String>]
648
- attr_accessor :metadata
772
+ # Configuration for the legacy Attribute Based Access Control authorization
773
+ # mode.
774
+ class LegacyAbac
775
+ include Google::Apis::Core::Hashable
649
776
 
650
- # Size of the disk attached to each node, specified in GB.
651
- # The smallest allowed disk size is 10GB.
652
- # If unspecified, the default disk size is 100GB.
653
- # Corresponds to the JSON property `diskSizeGb`
654
- # @return [Fixnum]
655
- attr_accessor :disk_size_gb
777
+ # Whether the ABAC authorizer is enabled for this cluster. When enabled,
778
+ # identities in the system, including service accounts, nodes, and
779
+ # controllers, will have statically granted permissions beyond those
780
+ # provided by the RBAC configuration or IAM.
781
+ # Corresponds to the JSON property `enabled`
782
+ # @return [Boolean]
783
+ attr_accessor :enabled
784
+ alias_method :enabled?, :enabled
656
785
 
657
- # The list of instance tags applied to all nodes. Tags are used to identify
658
- # valid sources or targets for network firewalls and are specified by
659
- # the client during cluster or node pool creation. Each tag within the list
660
- # must comply with RFC1035.
661
- # Corresponds to the JSON property `tags`
662
- # @return [Array<String>]
663
- attr_accessor :tags
786
+ def initialize(**args)
787
+ update!(**args)
788
+ end
664
789
 
665
- # The Google Cloud Platform Service Account to be used by the node VMs. If
666
- # no Service Account is specified, the "default" service account is used.
667
- # Corresponds to the JSON property `serviceAccount`
668
- # @return [String]
669
- attr_accessor :service_account
790
+ # Update properties of this object
791
+ def update!(**args)
792
+ @enabled = args[:enabled] if args.key?(:enabled)
793
+ end
794
+ end
670
795
 
671
- # The name of a Google Compute Engine [machine
672
- # type](/compute/docs/machine-types) (e.g.
673
- # `n1-standard-1`).
674
- # If unspecified, the default machine type is
675
- # `n1-standard-1`.
676
- # Corresponds to the JSON property `machineType`
677
- # @return [String]
678
- attr_accessor :machine_type
796
+ # ListClustersResponse is the result of ListClustersRequest.
797
+ class ListClustersResponse
798
+ include Google::Apis::Core::Hashable
679
799
 
680
- # The image type to use for this node. Note that for a given image type,
681
- # the latest version of it will be used.
682
- # Corresponds to the JSON property `imageType`
683
- # @return [String]
684
- attr_accessor :image_type
800
+ # A list of clusters in the project in the specified zone, or
801
+ # across all ones.
802
+ # Corresponds to the JSON property `clusters`
803
+ # @return [Array<Google::Apis::ContainerV1::Cluster>]
804
+ attr_accessor :clusters
685
805
 
686
- # The set of Google API scopes to be made available on all of the
687
- # node VMs under the "default" service account.
688
- # The following scopes are recommended, but not required, and by default are
689
- # not included:
690
- # * `https://www.googleapis.com/auth/compute` is required for mounting
691
- # persistent storage on your nodes.
692
- # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
693
- # communicating with **gcr.io**
694
- # (the [Google Container Registry](/container-registry/)).
695
- # If unspecified, no scopes are added, unless Cloud Logging or Cloud
696
- # Monitoring are enabled, in which case their required scopes will be added.
697
- # Corresponds to the JSON property `oauthScopes`
806
+ # If any zones are listed here, the list of clusters returned
807
+ # may be missing those zones.
808
+ # Corresponds to the JSON property `missingZones`
698
809
  # @return [Array<String>]
699
- attr_accessor :oauth_scopes
810
+ attr_accessor :missing_zones
700
811
 
701
812
  def initialize(**args)
702
813
  update!(**args)
@@ -704,36 +815,19 @@ module Google
704
815
 
705
816
  # Update properties of this object
706
817
  def update!(**args)
707
- @preemptible = args[:preemptible] if args.key?(:preemptible)
708
- @labels = args[:labels] if args.key?(:labels)
709
- @local_ssd_count = args[:local_ssd_count] if args.key?(:local_ssd_count)
710
- @metadata = args[:metadata] if args.key?(:metadata)
711
- @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
712
- @tags = args[:tags] if args.key?(:tags)
713
- @service_account = args[:service_account] if args.key?(:service_account)
714
- @machine_type = args[:machine_type] if args.key?(:machine_type)
715
- @image_type = args[:image_type] if args.key?(:image_type)
716
- @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes)
818
+ @clusters = args[:clusters] if args.key?(:clusters)
819
+ @missing_zones = args[:missing_zones] if args.key?(:missing_zones)
717
820
  end
718
821
  end
719
822
 
720
- # AutoUpgradeOptions defines the set of options for the user to control how
721
- # the Auto Upgrades will proceed.
722
- class AutoUpgradeOptions
823
+ # ListNodePoolsResponse is the result of ListNodePoolsRequest.
824
+ class ListNodePoolsResponse
723
825
  include Google::Apis::Core::Hashable
724
826
 
725
- # [Output only] This field is set when upgrades are about to commence
726
- # with the description of the upgrade.
727
- # Corresponds to the JSON property `description`
728
- # @return [String]
729
- attr_accessor :description
730
-
731
- # [Output only] This field is set when upgrades are about to commence
732
- # with the approximate start time for the upgrades, in
733
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
734
- # Corresponds to the JSON property `autoUpgradeStartTime`
735
- # @return [String]
736
- attr_accessor :auto_upgrade_start_time
827
+ # A list of node pools for a cluster.
828
+ # Corresponds to the JSON property `nodePools`
829
+ # @return [Array<Google::Apis::ContainerV1::NodePool>]
830
+ attr_accessor :node_pools
737
831
 
738
832
  def initialize(**args)
739
833
  update!(**args)
@@ -741,50 +835,79 @@ module Google
741
835
 
742
836
  # Update properties of this object
743
837
  def update!(**args)
744
- @description = args[:description] if args.key?(:description)
745
- @auto_upgrade_start_time = args[:auto_upgrade_start_time] if args.key?(:auto_upgrade_start_time)
838
+ @node_pools = args[:node_pools] if args.key?(:node_pools)
746
839
  end
747
840
  end
748
841
 
749
- # ListClustersResponse is the result of ListClustersRequest.
750
- class ListClustersResponse
842
+ # ListOperationsResponse is the result of ListOperationsRequest.
843
+ class ListOperationsResponse
751
844
  include Google::Apis::Core::Hashable
752
845
 
753
- # A list of clusters in the project in the specified zone, or
754
- # across all ones.
755
- # Corresponds to the JSON property `clusters`
756
- # @return [Array<Google::Apis::ContainerV1::Cluster>]
757
- attr_accessor :clusters
758
-
759
- # If any zones are listed here, the list of clusters returned
760
- # may be missing those zones.
846
+ # If any zones are listed here, the list of operations returned
847
+ # may be missing the operations from those zones.
761
848
  # Corresponds to the JSON property `missingZones`
762
849
  # @return [Array<String>]
763
850
  attr_accessor :missing_zones
764
851
 
852
+ # A list of operations in the project in the specified zone.
853
+ # Corresponds to the JSON property `operations`
854
+ # @return [Array<Google::Apis::ContainerV1::Operation>]
855
+ attr_accessor :operations
856
+
765
857
  def initialize(**args)
766
858
  update!(**args)
767
859
  end
768
860
 
769
861
  # Update properties of this object
770
862
  def update!(**args)
771
- @clusters = args[:clusters] if args.key?(:clusters)
772
863
  @missing_zones = args[:missing_zones] if args.key?(:missing_zones)
864
+ @operations = args[:operations] if args.key?(:operations)
773
865
  end
774
866
  end
775
867
 
776
- # Configuration options for the HTTP (L7) load balancing controller addon,
777
- # which makes it easy to set up HTTP load balancers for services in a cluster.
778
- class HttpLoadBalancing
868
+ # The authentication information for accessing the master endpoint.
869
+ # Authentication can be done using HTTP basic auth or using client
870
+ # certificates.
871
+ class MasterAuth
779
872
  include Google::Apis::Core::Hashable
780
873
 
781
- # Whether the HTTP Load Balancing controller is enabled in the cluster.
782
- # When enabled, it runs a small pod in the cluster that manages the load
783
- # balancers.
784
- # Corresponds to the JSON property `disabled`
785
- # @return [Boolean]
786
- attr_accessor :disabled
787
- alias_method :disabled?, :disabled
874
+ # [Output only] Base64-encoded public certificate used by clients to
875
+ # authenticate to the cluster endpoint.
876
+ # Corresponds to the JSON property `clientCertificate`
877
+ # @return [String]
878
+ attr_accessor :client_certificate
879
+
880
+ # Configuration for client certificates on the cluster.
881
+ # Corresponds to the JSON property `clientCertificateConfig`
882
+ # @return [Google::Apis::ContainerV1::ClientCertificateConfig]
883
+ attr_accessor :client_certificate_config
884
+
885
+ # [Output only] Base64-encoded private key used by clients to authenticate
886
+ # to the cluster endpoint.
887
+ # Corresponds to the JSON property `clientKey`
888
+ # @return [String]
889
+ attr_accessor :client_key
890
+
891
+ # [Output only] Base64-encoded public certificate that is the root of
892
+ # trust for the cluster.
893
+ # Corresponds to the JSON property `clusterCaCertificate`
894
+ # @return [String]
895
+ attr_accessor :cluster_ca_certificate
896
+
897
+ # The password to use for HTTP basic authentication to the master endpoint.
898
+ # Because the master endpoint is open to the Internet, you should create a
899
+ # strong password. If a password is provided for cluster creation, username
900
+ # must be non-empty.
901
+ # Corresponds to the JSON property `password`
902
+ # @return [String]
903
+ attr_accessor :password
904
+
905
+ # The username to use for HTTP basic authentication to the master endpoint.
906
+ # For clusters v1.6.0 and later, you can disable basic authentication by
907
+ # providing an empty username.
908
+ # Corresponds to the JSON property `username`
909
+ # @return [String]
910
+ attr_accessor :username
788
911
 
789
912
  def initialize(**args)
790
913
  update!(**args)
@@ -792,19 +915,34 @@ module Google
792
915
 
793
916
  # Update properties of this object
794
917
  def update!(**args)
795
- @disabled = args[:disabled] if args.key?(:disabled)
918
+ @client_certificate = args[:client_certificate] if args.key?(:client_certificate)
919
+ @client_certificate_config = args[:client_certificate_config] if args.key?(:client_certificate_config)
920
+ @client_key = args[:client_key] if args.key?(:client_key)
921
+ @cluster_ca_certificate = args[:cluster_ca_certificate] if args.key?(:cluster_ca_certificate)
922
+ @password = args[:password] if args.key?(:password)
923
+ @username = args[:username] if args.key?(:username)
796
924
  end
797
925
  end
798
926
 
799
- # Configuration for client certificates on the cluster.
800
- class ClientCertificateConfig
927
+ # Master authorized networks is a Beta feature.
928
+ # Configuration options for the master authorized networks feature. Enabled
929
+ # master authorized networks will disallow all external traffic to access
930
+ # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
931
+ # Google Compute Engine Public IPs and Google Prod IPs.
932
+ class MasterAuthorizedNetworksConfig
801
933
  include Google::Apis::Core::Hashable
802
934
 
803
- # Issue a client certificate.
804
- # Corresponds to the JSON property `issueClientCertificate`
935
+ # cidr_blocks define up to 10 external networks that could access
936
+ # Kubernetes master through HTTPS.
937
+ # Corresponds to the JSON property `cidrBlocks`
938
+ # @return [Array<Google::Apis::ContainerV1::CidrBlock>]
939
+ attr_accessor :cidr_blocks
940
+
941
+ # Whether or not master authorized networks is enabled.
942
+ # Corresponds to the JSON property `enabled`
805
943
  # @return [Boolean]
806
- attr_accessor :issue_client_certificate
807
- alias_method :issue_client_certificate?, :issue_client_certificate
944
+ attr_accessor :enabled
945
+ alias_method :enabled?, :enabled
808
946
 
809
947
  def initialize(**args)
810
948
  update!(**args)
@@ -812,60 +950,142 @@ module Google
812
950
 
813
951
  # Update properties of this object
814
952
  def update!(**args)
815
- @issue_client_certificate = args[:issue_client_certificate] if args.key?(:issue_client_certificate)
953
+ @cidr_blocks = args[:cidr_blocks] if args.key?(:cidr_blocks)
954
+ @enabled = args[:enabled] if args.key?(:enabled)
816
955
  end
817
956
  end
818
957
 
819
- # NodePoolAutoscaling contains information required by cluster autoscaler to
820
- # adjust the size of the node pool to the current cluster usage.
821
- class NodePoolAutoscaling
958
+ # Configuration options for the NetworkPolicy feature.
959
+ # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
960
+ class NetworkPolicy
822
961
  include Google::Apis::Core::Hashable
823
962
 
824
- # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
825
- # has to enough quota to scale up the cluster.
826
- # Corresponds to the JSON property `maxNodeCount`
827
- # @return [Fixnum]
828
- attr_accessor :max_node_count
829
-
830
- # Minimum number of nodes in the NodePool. Must be >= 1 and <=
831
- # max_node_count.
832
- # Corresponds to the JSON property `minNodeCount`
833
- # @return [Fixnum]
834
- attr_accessor :min_node_count
835
-
836
- # Is autoscaling enabled for this node pool.
963
+ # Whether network policy is enabled on the cluster.
837
964
  # Corresponds to the JSON property `enabled`
838
965
  # @return [Boolean]
839
966
  attr_accessor :enabled
840
967
  alias_method :enabled?, :enabled
841
968
 
969
+ # The selected network policy provider.
970
+ # Corresponds to the JSON property `provider`
971
+ # @return [String]
972
+ attr_accessor :provider
973
+
842
974
  def initialize(**args)
843
975
  update!(**args)
844
976
  end
845
977
 
846
978
  # Update properties of this object
847
979
  def update!(**args)
848
- @max_node_count = args[:max_node_count] if args.key?(:max_node_count)
849
- @min_node_count = args[:min_node_count] if args.key?(:min_node_count)
850
980
  @enabled = args[:enabled] if args.key?(:enabled)
981
+ @provider = args[:provider] if args.key?(:provider)
851
982
  end
852
983
  end
853
984
 
854
- # SetMasterAuthRequest updates the admin password of a cluster.
855
- class SetMasterAuthRequest
985
+ # Parameters that describe the nodes in a cluster.
986
+ class NodeConfig
856
987
  include Google::Apis::Core::Hashable
857
988
 
858
- # The authentication information for accessing the master endpoint.
859
- # Authentication can be done using HTTP basic auth or using client
860
- # certificates.
861
- # Corresponds to the JSON property `update`
862
- # @return [Google::Apis::ContainerV1::MasterAuth]
863
- attr_accessor :update
989
+ # A list of hardware accelerators to be attached to each node.
990
+ # See https://cloud.google.com/compute/docs/gpus for more information about
991
+ # support for GPUs.
992
+ # Corresponds to the JSON property `accelerators`
993
+ # @return [Array<Google::Apis::ContainerV1::AcceleratorConfig>]
994
+ attr_accessor :accelerators
864
995
 
865
- # The exact form of action to be taken on the master auth
866
- # Corresponds to the JSON property `action`
996
+ # Size of the disk attached to each node, specified in GB.
997
+ # The smallest allowed disk size is 10GB.
998
+ # If unspecified, the default disk size is 100GB.
999
+ # Corresponds to the JSON property `diskSizeGb`
1000
+ # @return [Fixnum]
1001
+ attr_accessor :disk_size_gb
1002
+
1003
+ # The image type to use for this node. Note that for a given image type,
1004
+ # the latest version of it will be used.
1005
+ # Corresponds to the JSON property `imageType`
867
1006
  # @return [String]
868
- attr_accessor :action
1007
+ attr_accessor :image_type
1008
+
1009
+ # The map of Kubernetes labels (key/value pairs) to be applied to each node.
1010
+ # These will added in addition to any default label(s) that
1011
+ # Kubernetes may apply to the node.
1012
+ # In case of conflict in label keys, the applied set may differ depending on
1013
+ # the Kubernetes version -- it's best to assume the behavior is undefined
1014
+ # and conflicts should be avoided.
1015
+ # For more information, including usage and the valid values, see:
1016
+ # http://kubernetes.io/v1.1/docs/user-guide/labels.html
1017
+ # Corresponds to the JSON property `labels`
1018
+ # @return [Hash<String,String>]
1019
+ attr_accessor :labels
1020
+
1021
+ # The number of local SSD disks to be attached to the node.
1022
+ # The limit for this value is dependant upon the maximum number of
1023
+ # disks available on a machine per zone. See:
1024
+ # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
1025
+ # for more information.
1026
+ # Corresponds to the JSON property `localSsdCount`
1027
+ # @return [Fixnum]
1028
+ attr_accessor :local_ssd_count
1029
+
1030
+ # The name of a Google Compute Engine [machine
1031
+ # type](/compute/docs/machine-types) (e.g.
1032
+ # `n1-standard-1`).
1033
+ # If unspecified, the default machine type is
1034
+ # `n1-standard-1`.
1035
+ # Corresponds to the JSON property `machineType`
1036
+ # @return [String]
1037
+ attr_accessor :machine_type
1038
+
1039
+ # The metadata key/value pairs assigned to instances in the cluster.
1040
+ # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
1041
+ # in length. These are reflected as part of a URL in the metadata server.
1042
+ # Additionally, to avoid ambiguity, keys must not conflict with any other
1043
+ # metadata keys for the project or be one of the four reserved keys:
1044
+ # "instance-template", "kube-env", "startup-script", and "user-data"
1045
+ # Values are free-form strings, and only have meaning as interpreted by
1046
+ # the image running in the instance. The only restriction placed on them is
1047
+ # that each value's size must be less than or equal to 32 KB.
1048
+ # The total size of all keys and values must be less than 512 KB.
1049
+ # Corresponds to the JSON property `metadata`
1050
+ # @return [Hash<String,String>]
1051
+ attr_accessor :metadata
1052
+
1053
+ # The set of Google API scopes to be made available on all of the
1054
+ # node VMs under the "default" service account.
1055
+ # The following scopes are recommended, but not required, and by default are
1056
+ # not included:
1057
+ # * `https://www.googleapis.com/auth/compute` is required for mounting
1058
+ # persistent storage on your nodes.
1059
+ # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
1060
+ # communicating with **gcr.io**
1061
+ # (the [Google Container Registry](/container-registry/)).
1062
+ # If unspecified, no scopes are added, unless Cloud Logging or Cloud
1063
+ # Monitoring are enabled, in which case their required scopes will be added.
1064
+ # Corresponds to the JSON property `oauthScopes`
1065
+ # @return [Array<String>]
1066
+ attr_accessor :oauth_scopes
1067
+
1068
+ # Whether the nodes are created as preemptible VM instances. See:
1069
+ # https://cloud.google.com/compute/docs/instances/preemptible for more
1070
+ # information about preemptible VM instances.
1071
+ # Corresponds to the JSON property `preemptible`
1072
+ # @return [Boolean]
1073
+ attr_accessor :preemptible
1074
+ alias_method :preemptible?, :preemptible
1075
+
1076
+ # The Google Cloud Platform Service Account to be used by the node VMs. If
1077
+ # no Service Account is specified, the "default" service account is used.
1078
+ # Corresponds to the JSON property `serviceAccount`
1079
+ # @return [String]
1080
+ attr_accessor :service_account
1081
+
1082
+ # The list of instance tags applied to all nodes. Tags are used to identify
1083
+ # valid sources or targets for network firewalls and are specified by
1084
+ # the client during cluster or node pool creation. Each tag within the list
1085
+ # must comply with RFC1035.
1086
+ # Corresponds to the JSON property `tags`
1087
+ # @return [Array<String>]
1088
+ attr_accessor :tags
869
1089
 
870
1090
  def initialize(**args)
871
1091
  update!(**args)
@@ -873,20 +1093,47 @@ module Google
873
1093
 
874
1094
  # Update properties of this object
875
1095
  def update!(**args)
876
- @update = args[:update] if args.key?(:update)
877
- @action = args[:action] if args.key?(:action)
1096
+ @accelerators = args[:accelerators] if args.key?(:accelerators)
1097
+ @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
1098
+ @image_type = args[:image_type] if args.key?(:image_type)
1099
+ @labels = args[:labels] if args.key?(:labels)
1100
+ @local_ssd_count = args[:local_ssd_count] if args.key?(:local_ssd_count)
1101
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
1102
+ @metadata = args[:metadata] if args.key?(:metadata)
1103
+ @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes)
1104
+ @preemptible = args[:preemptible] if args.key?(:preemptible)
1105
+ @service_account = args[:service_account] if args.key?(:service_account)
1106
+ @tags = args[:tags] if args.key?(:tags)
878
1107
  end
879
1108
  end
880
1109
 
881
- # SetNetworkPolicyRequest enables/disables network policy for a cluster.
882
- class SetNetworkPolicyRequest
1110
+ # NodeManagement defines the set of node management services turned on for the
1111
+ # node pool.
1112
+ class NodeManagement
883
1113
  include Google::Apis::Core::Hashable
884
1114
 
885
- # Configuration options for the NetworkPolicy feature.
886
- # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
887
- # Corresponds to the JSON property `networkPolicy`
888
- # @return [Google::Apis::ContainerV1::NetworkPolicy]
889
- attr_accessor :network_policy
1115
+ # A flag that specifies whether the node auto-repair is enabled for the node
1116
+ # pool. If enabled, the nodes in this node pool will be monitored and, if
1117
+ # they fail health checks too many times, an automatic repair action will be
1118
+ # triggered.
1119
+ # Corresponds to the JSON property `autoRepair`
1120
+ # @return [Boolean]
1121
+ attr_accessor :auto_repair
1122
+ alias_method :auto_repair?, :auto_repair
1123
+
1124
+ # A flag that specifies whether node auto-upgrade is enabled for the node
1125
+ # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
1126
+ # up to date with the latest release version of Kubernetes.
1127
+ # Corresponds to the JSON property `autoUpgrade`
1128
+ # @return [Boolean]
1129
+ attr_accessor :auto_upgrade
1130
+ alias_method :auto_upgrade?, :auto_upgrade
1131
+
1132
+ # AutoUpgradeOptions defines the set of options for the user to control how
1133
+ # the Auto Upgrades will proceed.
1134
+ # Corresponds to the JSON property `upgradeOptions`
1135
+ # @return [Google::Apis::ContainerV1::AutoUpgradeOptions]
1136
+ attr_accessor :upgrade_options
890
1137
 
891
1138
  def initialize(**args)
892
1139
  update!(**args)
@@ -894,73 +1141,78 @@ module Google
894
1141
 
895
1142
  # Update properties of this object
896
1143
  def update!(**args)
897
- @network_policy = args[:network_policy] if args.key?(:network_policy)
1144
+ @auto_repair = args[:auto_repair] if args.key?(:auto_repair)
1145
+ @auto_upgrade = args[:auto_upgrade] if args.key?(:auto_upgrade)
1146
+ @upgrade_options = args[:upgrade_options] if args.key?(:upgrade_options)
898
1147
  end
899
1148
  end
900
1149
 
901
- # ClusterUpdate describes an update to the cluster. Exactly one update can
902
- # be applied to a cluster with each request, so at most one field can be
903
- # provided.
904
- class ClusterUpdate
1150
+ # NodePool contains the name and configuration for a cluster's node pool.
1151
+ # Node pools are a set of nodes (i.e. VM's), with a common configuration and
1152
+ # specification, under the control of the cluster master. They may have a set
1153
+ # of Kubernetes labels applied to them, which may be used to reference them
1154
+ # during pod scheduling. They may also be resized up or down, to accommodate
1155
+ # the workload.
1156
+ class NodePool
905
1157
  include Google::Apis::Core::Hashable
906
1158
 
907
- # The desired list of Google Compute Engine
908
- # [locations](/compute/docs/zones#available) in which the cluster's nodes
909
- # should be located. Changing the locations a cluster is in will result
910
- # in nodes being either created or removed from the cluster, depending on
911
- # whether locations are being added or removed.
912
- # This list must always include the cluster's primary zone.
913
- # Corresponds to the JSON property `desiredLocations`
914
- # @return [Array<String>]
915
- attr_accessor :desired_locations
916
-
917
1159
  # NodePoolAutoscaling contains information required by cluster autoscaler to
918
1160
  # adjust the size of the node pool to the current cluster usage.
919
- # Corresponds to the JSON property `desiredNodePoolAutoscaling`
1161
+ # Corresponds to the JSON property `autoscaling`
920
1162
  # @return [Google::Apis::ContainerV1::NodePoolAutoscaling]
921
- attr_accessor :desired_node_pool_autoscaling
1163
+ attr_accessor :autoscaling
922
1164
 
923
- # The monitoring service the cluster should use to write metrics.
924
- # Currently available options:
925
- # * "monitoring.googleapis.com" - the Google Cloud Monitoring service
926
- # * "none" - no metrics will be exported from the cluster
927
- # Corresponds to the JSON property `desiredMonitoringService`
928
- # @return [String]
929
- attr_accessor :desired_monitoring_service
1165
+ # Parameters that describe the nodes in a cluster.
1166
+ # Corresponds to the JSON property `config`
1167
+ # @return [Google::Apis::ContainerV1::NodeConfig]
1168
+ attr_accessor :config
930
1169
 
931
- # The desired image type for the node pool.
932
- # NOTE: Set the "desired_node_pool" field as well.
933
- # Corresponds to the JSON property `desiredImageType`
1170
+ # The initial node count for the pool. You must ensure that your
1171
+ # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
1172
+ # is sufficient for this number of instances. You must also have available
1173
+ # firewall and routes quota.
1174
+ # Corresponds to the JSON property `initialNodeCount`
1175
+ # @return [Fixnum]
1176
+ attr_accessor :initial_node_count
1177
+
1178
+ # [Output only] The resource URLs of [instance
1179
+ # groups](/compute/docs/instance-groups/) associated with this
1180
+ # node pool.
1181
+ # Corresponds to the JSON property `instanceGroupUrls`
1182
+ # @return [Array<String>]
1183
+ attr_accessor :instance_group_urls
1184
+
1185
+ # NodeManagement defines the set of node management services turned on for the
1186
+ # node pool.
1187
+ # Corresponds to the JSON property `management`
1188
+ # @return [Google::Apis::ContainerV1::NodeManagement]
1189
+ attr_accessor :management
1190
+
1191
+ # The name of the node pool.
1192
+ # Corresponds to the JSON property `name`
934
1193
  # @return [String]
935
- attr_accessor :desired_image_type
1194
+ attr_accessor :name
936
1195
 
937
- # Configuration for the addons that can be automatically spun up in the
938
- # cluster, enabling additional functionality.
939
- # Corresponds to the JSON property `desiredAddonsConfig`
940
- # @return [Google::Apis::ContainerV1::AddonsConfig]
941
- attr_accessor :desired_addons_config
1196
+ # [Output only] Server-defined URL for the resource.
1197
+ # Corresponds to the JSON property `selfLink`
1198
+ # @return [String]
1199
+ attr_accessor :self_link
942
1200
 
943
- # The node pool to be upgraded. This field is mandatory if
944
- # "desired_node_version", "desired_image_family" or
945
- # "desired_node_pool_autoscaling" is specified and there is more than one
946
- # node pool on the cluster.
947
- # Corresponds to the JSON property `desiredNodePoolId`
1201
+ # [Output only] The status of the nodes in this pool instance.
1202
+ # Corresponds to the JSON property `status`
948
1203
  # @return [String]
949
- attr_accessor :desired_node_pool_id
1204
+ attr_accessor :status
950
1205
 
951
- # The Kubernetes version to change the nodes to (typically an
952
- # upgrade). Use `-` to upgrade to the latest version supported by
953
- # the server.
954
- # Corresponds to the JSON property `desiredNodeVersion`
1206
+ # [Output only] Additional information about the current status of this
1207
+ # node pool instance, if available.
1208
+ # Corresponds to the JSON property `statusMessage`
955
1209
  # @return [String]
956
- attr_accessor :desired_node_version
1210
+ attr_accessor :status_message
957
1211
 
958
- # The Kubernetes version to change the master to. The only valid value is the
959
- # latest supported version. Use "-" to have the server automatically select
960
- # the latest version.
961
- # Corresponds to the JSON property `desiredMasterVersion`
1212
+ # [Output only] The version of the Kubernetes of this node.
1213
+ # Corresponds to the JSON property `version`
962
1214
  # @return [String]
963
- attr_accessor :desired_master_version
1215
+ attr_accessor :version
964
1216
 
965
1217
  def initialize(**args)
966
1218
  update!(**args)
@@ -968,81 +1220,41 @@ module Google
968
1220
 
969
1221
  # Update properties of this object
970
1222
  def update!(**args)
971
- @desired_locations = args[:desired_locations] if args.key?(:desired_locations)
972
- @desired_node_pool_autoscaling = args[:desired_node_pool_autoscaling] if args.key?(:desired_node_pool_autoscaling)
973
- @desired_monitoring_service = args[:desired_monitoring_service] if args.key?(:desired_monitoring_service)
974
- @desired_image_type = args[:desired_image_type] if args.key?(:desired_image_type)
975
- @desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_config)
976
- @desired_node_pool_id = args[:desired_node_pool_id] if args.key?(:desired_node_pool_id)
977
- @desired_node_version = args[:desired_node_version] if args.key?(:desired_node_version)
978
- @desired_master_version = args[:desired_master_version] if args.key?(:desired_master_version)
1223
+ @autoscaling = args[:autoscaling] if args.key?(:autoscaling)
1224
+ @config = args[:config] if args.key?(:config)
1225
+ @initial_node_count = args[:initial_node_count] if args.key?(:initial_node_count)
1226
+ @instance_group_urls = args[:instance_group_urls] if args.key?(:instance_group_urls)
1227
+ @management = args[:management] if args.key?(:management)
1228
+ @name = args[:name] if args.key?(:name)
1229
+ @self_link = args[:self_link] if args.key?(:self_link)
1230
+ @status = args[:status] if args.key?(:status)
1231
+ @status_message = args[:status_message] if args.key?(:status_message)
1232
+ @version = args[:version] if args.key?(:version)
979
1233
  end
980
1234
  end
981
1235
 
982
- # Configuration for controlling how IPs are allocated in the cluster.
983
- class IpAllocationPolicy
1236
+ # NodePoolAutoscaling contains information required by cluster autoscaler to
1237
+ # adjust the size of the node pool to the current cluster usage.
1238
+ class NodePoolAutoscaling
984
1239
  include Google::Apis::Core::Hashable
985
1240
 
986
- # Whether a new subnetwork will be created automatically for the cluster.
987
- # This field is only applicable when `use_ip_aliases` is true.
988
- # Corresponds to the JSON property `createSubnetwork`
989
- # @return [Boolean]
990
- attr_accessor :create_subnetwork
991
- alias_method :create_subnetwork?, :create_subnetwork
992
-
993
- # Whether alias IPs will be used for pod IPs in the cluster.
994
- # Corresponds to the JSON property `useIpAliases`
1241
+ # Is autoscaling enabled for this node pool.
1242
+ # Corresponds to the JSON property `enabled`
995
1243
  # @return [Boolean]
996
- attr_accessor :use_ip_aliases
997
- alias_method :use_ip_aliases?, :use_ip_aliases
998
-
999
- # A custom subnetwork name to be used if `create_subnetwork` is true. If
1000
- # this field is empty, then an automatic name will choosen for the new
1001
- # subnetwork.
1002
- # Corresponds to the JSON property `subnetworkName`
1003
- # @return [String]
1004
- attr_accessor :subnetwork_name
1005
-
1006
- # The IP address range for the cluster pod IPs. If this field is set, then
1007
- # `cluster.cluster_ipv4_cidr` must be left blank.
1008
- # This field is only applicable when `use_ip_aliases` is true.
1009
- # Set to blank to have a range will be chosen with the default size.
1010
- # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
1011
- # netmask.
1012
- # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1013
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1014
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1015
- # to use.
1016
- # Corresponds to the JSON property `clusterIpv4Cidr`
1017
- # @return [String]
1018
- attr_accessor :cluster_ipv4_cidr
1244
+ attr_accessor :enabled
1245
+ alias_method :enabled?, :enabled
1019
1246
 
1020
- # The IP address range of the instance IPs in this cluster.
1021
- # This is applicable only if `create_subnetwork` is true.
1022
- # Set to blank to have a range will be chosen with the default size.
1023
- # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
1024
- # netmask.
1025
- # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1026
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1027
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1028
- # to use.
1029
- # Corresponds to the JSON property `nodeIpv4Cidr`
1030
- # @return [String]
1031
- attr_accessor :node_ipv4_cidr
1247
+ # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
1248
+ # has to enough quota to scale up the cluster.
1249
+ # Corresponds to the JSON property `maxNodeCount`
1250
+ # @return [Fixnum]
1251
+ attr_accessor :max_node_count
1032
1252
 
1033
- # The IP address range of the services IPs in this cluster. If blank, a range
1034
- # will be automatically chosen with the default size.
1035
- # This field is only applicable when `use_ip_aliases` is true.
1036
- # Set to blank to have a range will be chosen with the default size.
1037
- # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
1038
- # netmask.
1039
- # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1040
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1041
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1042
- # to use.
1043
- # Corresponds to the JSON property `servicesIpv4Cidr`
1044
- # @return [String]
1045
- attr_accessor :services_ipv4_cidr
1253
+ # Minimum number of nodes in the NodePool. Must be >= 1 and <=
1254
+ # max_node_count.
1255
+ # Corresponds to the JSON property `minNodeCount`
1256
+ # @return [Fixnum]
1257
+ attr_accessor :min_node_count
1046
1258
 
1047
1259
  def initialize(**args)
1048
1260
  update!(**args)
@@ -1050,50 +1262,58 @@ module Google
1050
1262
 
1051
1263
  # Update properties of this object
1052
1264
  def update!(**args)
1053
- @create_subnetwork = args[:create_subnetwork] if args.key?(:create_subnetwork)
1054
- @use_ip_aliases = args[:use_ip_aliases] if args.key?(:use_ip_aliases)
1055
- @subnetwork_name = args[:subnetwork_name] if args.key?(:subnetwork_name)
1056
- @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr)
1057
- @node_ipv4_cidr = args[:node_ipv4_cidr] if args.key?(:node_ipv4_cidr)
1058
- @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr)
1265
+ @enabled = args[:enabled] if args.key?(:enabled)
1266
+ @max_node_count = args[:max_node_count] if args.key?(:max_node_count)
1267
+ @min_node_count = args[:min_node_count] if args.key?(:min_node_count)
1059
1268
  end
1060
1269
  end
1061
1270
 
1062
- # SetLoggingServiceRequest sets the logging service of a cluster.
1063
- class SetLoggingServiceRequest
1271
+ # This operation resource represents operations that may have happened or are
1272
+ # happening on the cluster. All fields are output only.
1273
+ class Operation
1064
1274
  include Google::Apis::Core::Hashable
1065
1275
 
1066
- # The logging service the cluster should use to write metrics.
1067
- # Currently available options:
1068
- # * "logging.googleapis.com" - the Google Cloud Logging service
1069
- # * "none" - no metrics will be exported from the cluster
1070
- # Corresponds to the JSON property `loggingService`
1276
+ # Detailed operation progress, if available.
1277
+ # Corresponds to the JSON property `detail`
1278
+ # @return [String]
1279
+ attr_accessor :detail
1280
+
1281
+ # The server-assigned ID for the operation.
1282
+ # Corresponds to the JSON property `name`
1283
+ # @return [String]
1284
+ attr_accessor :name
1285
+
1286
+ # The operation type.
1287
+ # Corresponds to the JSON property `operationType`
1288
+ # @return [String]
1289
+ attr_accessor :operation_type
1290
+
1291
+ # Server-defined URL for the resource.
1292
+ # Corresponds to the JSON property `selfLink`
1071
1293
  # @return [String]
1072
- attr_accessor :logging_service
1294
+ attr_accessor :self_link
1073
1295
 
1074
- def initialize(**args)
1075
- update!(**args)
1076
- end
1296
+ # The current status of the operation.
1297
+ # Corresponds to the JSON property `status`
1298
+ # @return [String]
1299
+ attr_accessor :status
1077
1300
 
1078
- # Update properties of this object
1079
- def update!(**args)
1080
- @logging_service = args[:logging_service] if args.key?(:logging_service)
1081
- end
1082
- end
1301
+ # If an error has occurred, a textual description of the error.
1302
+ # Corresponds to the JSON property `statusMessage`
1303
+ # @return [String]
1304
+ attr_accessor :status_message
1083
1305
 
1084
- # Configuration options for the horizontal pod autoscaling feature, which
1085
- # increases or decreases the number of replica pods a replication controller
1086
- # has based on the resource usage of the existing pods.
1087
- class HorizontalPodAutoscaling
1088
- include Google::Apis::Core::Hashable
1306
+ # Server-defined URL for the target of the operation.
1307
+ # Corresponds to the JSON property `targetLink`
1308
+ # @return [String]
1309
+ attr_accessor :target_link
1089
1310
 
1090
- # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
1091
- # When enabled, it ensures that a Heapster pod is running in the cluster,
1092
- # which is also used by the Cloud Monitoring service.
1093
- # Corresponds to the JSON property `disabled`
1094
- # @return [Boolean]
1095
- attr_accessor :disabled
1096
- alias_method :disabled?, :disabled
1311
+ # The name of the Google Compute Engine
1312
+ # [zone](/compute/docs/zones#available) in which the operation
1313
+ # is taking place.
1314
+ # Corresponds to the JSON property `zone`
1315
+ # @return [String]
1316
+ attr_accessor :zone
1097
1317
 
1098
1318
  def initialize(**args)
1099
1319
  update!(**args)
@@ -1101,18 +1321,21 @@ module Google
1101
1321
 
1102
1322
  # Update properties of this object
1103
1323
  def update!(**args)
1104
- @disabled = args[:disabled] if args.key?(:disabled)
1324
+ @detail = args[:detail] if args.key?(:detail)
1325
+ @name = args[:name] if args.key?(:name)
1326
+ @operation_type = args[:operation_type] if args.key?(:operation_type)
1327
+ @self_link = args[:self_link] if args.key?(:self_link)
1328
+ @status = args[:status] if args.key?(:status)
1329
+ @status_message = args[:status_message] if args.key?(:status_message)
1330
+ @target_link = args[:target_link] if args.key?(:target_link)
1331
+ @zone = args[:zone] if args.key?(:zone)
1105
1332
  end
1106
1333
  end
1107
1334
 
1108
- # A generic empty message that you can re-use to avoid defining duplicated
1109
- # empty messages in your APIs. A typical example is to use it as the request
1110
- # or the response type of an API method. For instance:
1111
- # service Foo `
1112
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
1113
- # `
1114
- # The JSON representation for `Empty` is empty JSON object ````.
1115
- class Empty
1335
+ # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
1336
+ # NodePool upgrade. This will be an no-op if the last upgrade successfully
1337
+ # completed.
1338
+ class RollbackNodePoolUpgradeRequest
1116
1339
  include Google::Apis::Core::Hashable
1117
1340
 
1118
1341
  def initialize(**args)
@@ -1124,16 +1347,34 @@ module Google
1124
1347
  end
1125
1348
  end
1126
1349
 
1127
- # SetNodePoolManagementRequest sets the node management properties of a node
1128
- # pool.
1129
- class SetNodePoolManagementRequest
1350
+ # Container Engine service configuration.
1351
+ class ServerConfig
1130
1352
  include Google::Apis::Core::Hashable
1131
1353
 
1132
- # NodeManagement defines the set of node management services turned on for the
1133
- # node pool.
1134
- # Corresponds to the JSON property `management`
1135
- # @return [Google::Apis::ContainerV1::NodeManagement]
1136
- attr_accessor :management
1354
+ # Version of Kubernetes the service deploys by default.
1355
+ # Corresponds to the JSON property `defaultClusterVersion`
1356
+ # @return [String]
1357
+ attr_accessor :default_cluster_version
1358
+
1359
+ # Default image type.
1360
+ # Corresponds to the JSON property `defaultImageType`
1361
+ # @return [String]
1362
+ attr_accessor :default_image_type
1363
+
1364
+ # List of valid image types.
1365
+ # Corresponds to the JSON property `validImageTypes`
1366
+ # @return [Array<String>]
1367
+ attr_accessor :valid_image_types
1368
+
1369
+ # List of valid master versions.
1370
+ # Corresponds to the JSON property `validMasterVersions`
1371
+ # @return [Array<String>]
1372
+ attr_accessor :valid_master_versions
1373
+
1374
+ # List of valid node upgrade target versions.
1375
+ # Corresponds to the JSON property `validNodeVersions`
1376
+ # @return [Array<String>]
1377
+ attr_accessor :valid_node_versions
1137
1378
 
1138
1379
  def initialize(**args)
1139
1380
  update!(**args)
@@ -1141,19 +1382,23 @@ module Google
1141
1382
 
1142
1383
  # Update properties of this object
1143
1384
  def update!(**args)
1144
- @management = args[:management] if args.key?(:management)
1385
+ @default_cluster_version = args[:default_cluster_version] if args.key?(:default_cluster_version)
1386
+ @default_image_type = args[:default_image_type] if args.key?(:default_image_type)
1387
+ @valid_image_types = args[:valid_image_types] if args.key?(:valid_image_types)
1388
+ @valid_master_versions = args[:valid_master_versions] if args.key?(:valid_master_versions)
1389
+ @valid_node_versions = args[:valid_node_versions] if args.key?(:valid_node_versions)
1145
1390
  end
1146
1391
  end
1147
1392
 
1148
- # SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.
1149
- class SetNodePoolAutoscalingRequest
1393
+ # SetAddonsConfigRequest sets the addons associated with the cluster.
1394
+ class SetAddonsConfigRequest
1150
1395
  include Google::Apis::Core::Hashable
1151
1396
 
1152
- # NodePoolAutoscaling contains information required by cluster autoscaler to
1153
- # adjust the size of the node pool to the current cluster usage.
1154
- # Corresponds to the JSON property `autoscaling`
1155
- # @return [Google::Apis::ContainerV1::NodePoolAutoscaling]
1156
- attr_accessor :autoscaling
1397
+ # Configuration for the addons that can be automatically spun up in the
1398
+ # cluster, enabling additional functionality.
1399
+ # Corresponds to the JSON property `addonsConfig`
1400
+ # @return [Google::Apis::ContainerV1::AddonsConfig]
1401
+ attr_accessor :addons_config
1157
1402
 
1158
1403
  def initialize(**args)
1159
1404
  update!(**args)
@@ -1161,18 +1406,30 @@ module Google
1161
1406
 
1162
1407
  # Update properties of this object
1163
1408
  def update!(**args)
1164
- @autoscaling = args[:autoscaling] if args.key?(:autoscaling)
1409
+ @addons_config = args[:addons_config] if args.key?(:addons_config)
1165
1410
  end
1166
1411
  end
1167
1412
 
1168
- # CreateClusterRequest creates a cluster.
1169
- class CreateClusterRequest
1413
+ # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
1414
+ # Engine cluster, which will in turn set them for Google Compute Engine
1415
+ # resources used by that cluster
1416
+ class SetLabelsRequest
1170
1417
  include Google::Apis::Core::Hashable
1171
1418
 
1172
- # A Google Container Engine cluster.
1173
- # Corresponds to the JSON property `cluster`
1174
- # @return [Google::Apis::ContainerV1::Cluster]
1175
- attr_accessor :cluster
1419
+ # The fingerprint of the previous set of labels for this resource,
1420
+ # used to detect conflicts. The fingerprint is initially generated by
1421
+ # Container Engine and changes after every request to modify or update
1422
+ # labels. You must always provide an up-to-date fingerprint hash when
1423
+ # updating or changing labels. Make a <code>get()</code> request to the
1424
+ # resource to get the latest fingerprint.
1425
+ # Corresponds to the JSON property `labelFingerprint`
1426
+ # @return [String]
1427
+ attr_accessor :label_fingerprint
1428
+
1429
+ # The labels to set for that cluster.
1430
+ # Corresponds to the JSON property `resourceLabels`
1431
+ # @return [Hash<String,String>]
1432
+ attr_accessor :resource_labels
1176
1433
 
1177
1434
  def initialize(**args)
1178
1435
  update!(**args)
@@ -1180,18 +1437,21 @@ module Google
1180
1437
 
1181
1438
  # Update properties of this object
1182
1439
  def update!(**args)
1183
- @cluster = args[:cluster] if args.key?(:cluster)
1440
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
1441
+ @resource_labels = args[:resource_labels] if args.key?(:resource_labels)
1184
1442
  end
1185
1443
  end
1186
1444
 
1187
- # ListNodePoolsResponse is the result of ListNodePoolsRequest.
1188
- class ListNodePoolsResponse
1445
+ # SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for
1446
+ # a cluster.
1447
+ class SetLegacyAbacRequest
1189
1448
  include Google::Apis::Core::Hashable
1190
1449
 
1191
- # A list of node pools for a cluster.
1192
- # Corresponds to the JSON property `nodePools`
1193
- # @return [Array<Google::Apis::ContainerV1::NodePool>]
1194
- attr_accessor :node_pools
1450
+ # Whether ABAC authorization will be enabled in the cluster.
1451
+ # Corresponds to the JSON property `enabled`
1452
+ # @return [Boolean]
1453
+ attr_accessor :enabled
1454
+ alias_method :enabled?, :enabled
1195
1455
 
1196
1456
  def initialize(**args)
1197
1457
  update!(**args)
@@ -1199,52 +1459,71 @@ module Google
1199
1459
 
1200
1460
  # Update properties of this object
1201
1461
  def update!(**args)
1202
- @node_pools = args[:node_pools] if args.key?(:node_pools)
1462
+ @enabled = args[:enabled] if args.key?(:enabled)
1203
1463
  end
1204
1464
  end
1205
1465
 
1206
- # CompleteIPRotationRequest moves the cluster master back into single-IP mode.
1207
- class CompleteIpRotationRequest
1466
+ # SetLocationsRequest sets the locations of the cluster.
1467
+ class SetLocationsRequest
1208
1468
  include Google::Apis::Core::Hashable
1209
1469
 
1470
+ # The desired list of Google Compute Engine
1471
+ # [locations](/compute/docs/zones#available) in which the cluster's nodes
1472
+ # should be located. Changing the locations a cluster is in will result
1473
+ # in nodes being either created or removed from the cluster, depending on
1474
+ # whether locations are being added or removed.
1475
+ # This list must always include the cluster's primary zone.
1476
+ # Corresponds to the JSON property `locations`
1477
+ # @return [Array<String>]
1478
+ attr_accessor :locations
1479
+
1210
1480
  def initialize(**args)
1211
1481
  update!(**args)
1212
1482
  end
1213
1483
 
1214
1484
  # Update properties of this object
1215
1485
  def update!(**args)
1486
+ @locations = args[:locations] if args.key?(:locations)
1216
1487
  end
1217
1488
  end
1218
1489
 
1219
- # StartIPRotationRequest creates a new IP for the cluster and then performs
1220
- # a node upgrade on each node pool to point to the new IP.
1221
- class StartIpRotationRequest
1490
+ # SetLoggingServiceRequest sets the logging service of a cluster.
1491
+ class SetLoggingServiceRequest
1222
1492
  include Google::Apis::Core::Hashable
1223
1493
 
1494
+ # The logging service the cluster should use to write metrics.
1495
+ # Currently available options:
1496
+ # * "logging.googleapis.com" - the Google Cloud Logging service
1497
+ # * "none" - no metrics will be exported from the cluster
1498
+ # Corresponds to the JSON property `loggingService`
1499
+ # @return [String]
1500
+ attr_accessor :logging_service
1501
+
1224
1502
  def initialize(**args)
1225
1503
  update!(**args)
1226
1504
  end
1227
1505
 
1228
1506
  # Update properties of this object
1229
1507
  def update!(**args)
1508
+ @logging_service = args[:logging_service] if args.key?(:logging_service)
1230
1509
  end
1231
1510
  end
1232
1511
 
1233
- # UpdateNodePoolRequests update a node pool's image and/or version.
1234
- class UpdateNodePoolRequest
1512
+ # SetMasterAuthRequest updates the admin password of a cluster.
1513
+ class SetMasterAuthRequest
1235
1514
  include Google::Apis::Core::Hashable
1236
1515
 
1237
- # The desired image type for the node pool.
1238
- # Corresponds to the JSON property `imageType`
1516
+ # The exact form of action to be taken on the master auth
1517
+ # Corresponds to the JSON property `action`
1239
1518
  # @return [String]
1240
- attr_accessor :image_type
1519
+ attr_accessor :action
1241
1520
 
1242
- # The Kubernetes version to change the nodes to (typically an
1243
- # upgrade). Use `-` to upgrade to the latest version supported by
1244
- # the server.
1245
- # Corresponds to the JSON property `nodeVersion`
1246
- # @return [String]
1247
- attr_accessor :node_version
1521
+ # The authentication information for accessing the master endpoint.
1522
+ # Authentication can be done using HTTP basic auth or using client
1523
+ # certificates.
1524
+ # Corresponds to the JSON property `update`
1525
+ # @return [Google::Apis::ContainerV1::MasterAuth]
1526
+ attr_accessor :update
1248
1527
 
1249
1528
  def initialize(**args)
1250
1529
  update!(**args)
@@ -1252,24 +1531,22 @@ module Google
1252
1531
 
1253
1532
  # Update properties of this object
1254
1533
  def update!(**args)
1255
- @image_type = args[:image_type] if args.key?(:image_type)
1256
- @node_version = args[:node_version] if args.key?(:node_version)
1534
+ @action = args[:action] if args.key?(:action)
1535
+ @update = args[:update] if args.key?(:update)
1257
1536
  end
1258
1537
  end
1259
1538
 
1260
- # Configuration for the legacy Attribute Based Access Control authorization
1261
- # mode.
1262
- class LegacyAbac
1539
+ # SetMonitoringServiceRequest sets the monitoring service of a cluster.
1540
+ class SetMonitoringServiceRequest
1263
1541
  include Google::Apis::Core::Hashable
1264
1542
 
1265
- # Whether the ABAC authorizer is enabled for this cluster. When enabled,
1266
- # identities in the system, including service accounts, nodes, and
1267
- # controllers, will have statically granted permissions beyond those
1268
- # provided by the RBAC configuration or IAM.
1269
- # Corresponds to the JSON property `enabled`
1270
- # @return [Boolean]
1271
- attr_accessor :enabled
1272
- alias_method :enabled?, :enabled
1543
+ # The monitoring service the cluster should use to write metrics.
1544
+ # Currently available options:
1545
+ # * "monitoring.googleapis.com" - the Google Cloud Monitoring service
1546
+ # * "none" - no metrics will be exported from the cluster
1547
+ # Corresponds to the JSON property `monitoringService`
1548
+ # @return [String]
1549
+ attr_accessor :monitoring_service
1273
1550
 
1274
1551
  def initialize(**args)
1275
1552
  update!(**args)
@@ -1277,19 +1554,19 @@ module Google
1277
1554
 
1278
1555
  # Update properties of this object
1279
1556
  def update!(**args)
1280
- @enabled = args[:enabled] if args.key?(:enabled)
1557
+ @monitoring_service = args[:monitoring_service] if args.key?(:monitoring_service)
1281
1558
  end
1282
1559
  end
1283
1560
 
1284
- # SetAddonsConfigRequest sets the addons associated with the cluster.
1285
- class SetAddonsConfigRequest
1286
- include Google::Apis::Core::Hashable
1287
-
1288
- # Configuration for the addons that can be automatically spun up in the
1289
- # cluster, enabling additional functionality.
1290
- # Corresponds to the JSON property `addonsConfig`
1291
- # @return [Google::Apis::ContainerV1::AddonsConfig]
1292
- attr_accessor :addons_config
1561
+ # SetNetworkPolicyRequest enables/disables network policy for a cluster.
1562
+ class SetNetworkPolicyRequest
1563
+ include Google::Apis::Core::Hashable
1564
+
1565
+ # Configuration options for the NetworkPolicy feature.
1566
+ # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
1567
+ # Corresponds to the JSON property `networkPolicy`
1568
+ # @return [Google::Apis::ContainerV1::NetworkPolicy]
1569
+ attr_accessor :network_policy
1293
1570
 
1294
1571
  def initialize(**args)
1295
1572
  update!(**args)
@@ -1297,116 +1574,40 @@ module Google
1297
1574
 
1298
1575
  # Update properties of this object
1299
1576
  def update!(**args)
1300
- @addons_config = args[:addons_config] if args.key?(:addons_config)
1577
+ @network_policy = args[:network_policy] if args.key?(:network_policy)
1301
1578
  end
1302
1579
  end
1303
1580
 
1304
- # NodePool contains the name and configuration for a cluster's node pool.
1305
- # Node pools are a set of nodes (i.e. VM's), with a common configuration and
1306
- # specification, under the control of the cluster master. They may have a set
1307
- # of Kubernetes labels applied to them, which may be used to reference them
1308
- # during pod scheduling. They may also be resized up or down, to accommodate
1309
- # the workload.
1310
- class NodePool
1581
+ # SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.
1582
+ class SetNodePoolAutoscalingRequest
1311
1583
  include Google::Apis::Core::Hashable
1312
1584
 
1313
- # The name of the node pool.
1314
- # Corresponds to the JSON property `name`
1315
- # @return [String]
1316
- attr_accessor :name
1317
-
1318
- # [Output only] Additional information about the current status of this
1319
- # node pool instance, if available.
1320
- # Corresponds to the JSON property `statusMessage`
1321
- # @return [String]
1322
- attr_accessor :status_message
1323
-
1324
1585
  # NodePoolAutoscaling contains information required by cluster autoscaler to
1325
1586
  # adjust the size of the node pool to the current cluster usage.
1326
1587
  # Corresponds to the JSON property `autoscaling`
1327
1588
  # @return [Google::Apis::ContainerV1::NodePoolAutoscaling]
1328
1589
  attr_accessor :autoscaling
1329
1590
 
1330
- # NodeManagement defines the set of node management services turned on for the
1331
- # node pool.
1332
- # Corresponds to the JSON property `management`
1333
- # @return [Google::Apis::ContainerV1::NodeManagement]
1334
- attr_accessor :management
1335
-
1336
- # The initial node count for the pool. You must ensure that your
1337
- # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
1338
- # is sufficient for this number of instances. You must also have available
1339
- # firewall and routes quota.
1340
- # Corresponds to the JSON property `initialNodeCount`
1341
- # @return [Fixnum]
1342
- attr_accessor :initial_node_count
1343
-
1344
- # [Output only] Server-defined URL for the resource.
1345
- # Corresponds to the JSON property `selfLink`
1346
- # @return [String]
1347
- attr_accessor :self_link
1348
-
1349
- # [Output only] The version of the Kubernetes of this node.
1350
- # Corresponds to the JSON property `version`
1351
- # @return [String]
1352
- attr_accessor :version
1353
-
1354
- # [Output only] The resource URLs of [instance
1355
- # groups](/compute/docs/instance-groups/) associated with this
1356
- # node pool.
1357
- # Corresponds to the JSON property `instanceGroupUrls`
1358
- # @return [Array<String>]
1359
- attr_accessor :instance_group_urls
1360
-
1361
- # [Output only] The status of the nodes in this pool instance.
1362
- # Corresponds to the JSON property `status`
1363
- # @return [String]
1364
- attr_accessor :status
1365
-
1366
- # Parameters that describe the nodes in a cluster.
1367
- # Corresponds to the JSON property `config`
1368
- # @return [Google::Apis::ContainerV1::NodeConfig]
1369
- attr_accessor :config
1370
-
1371
1591
  def initialize(**args)
1372
1592
  update!(**args)
1373
1593
  end
1374
1594
 
1375
1595
  # Update properties of this object
1376
1596
  def update!(**args)
1377
- @name = args[:name] if args.key?(:name)
1378
- @status_message = args[:status_message] if args.key?(:status_message)
1379
1597
  @autoscaling = args[:autoscaling] if args.key?(:autoscaling)
1380
- @management = args[:management] if args.key?(:management)
1381
- @initial_node_count = args[:initial_node_count] if args.key?(:initial_node_count)
1382
- @self_link = args[:self_link] if args.key?(:self_link)
1383
- @version = args[:version] if args.key?(:version)
1384
- @instance_group_urls = args[:instance_group_urls] if args.key?(:instance_group_urls)
1385
- @status = args[:status] if args.key?(:status)
1386
- @config = args[:config] if args.key?(:config)
1387
1598
  end
1388
1599
  end
1389
1600
 
1390
- # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
1391
- # Engine cluster, which will in turn set them for Google Compute Engine
1392
- # resources used by that cluster
1393
- class SetLabelsRequest
1601
+ # SetNodePoolManagementRequest sets the node management properties of a node
1602
+ # pool.
1603
+ class SetNodePoolManagementRequest
1394
1604
  include Google::Apis::Core::Hashable
1395
1605
 
1396
- # The fingerprint of the previous set of labels for this resource,
1397
- # used to detect conflicts. The fingerprint is initially generated by
1398
- # Container Engine and changes after every request to modify or update
1399
- # labels. You must always provide an up-to-date fingerprint hash when
1400
- # updating or changing labels. Make a <code>get()</code> request to the
1401
- # resource to get the latest fingerprint.
1402
- # Corresponds to the JSON property `labelFingerprint`
1403
- # @return [String]
1404
- attr_accessor :label_fingerprint
1405
-
1406
- # The labels to set for that cluster.
1407
- # Corresponds to the JSON property `resourceLabels`
1408
- # @return [Hash<String,String>]
1409
- attr_accessor :resource_labels
1606
+ # NodeManagement defines the set of node management services turned on for the
1607
+ # node pool.
1608
+ # Corresponds to the JSON property `management`
1609
+ # @return [Google::Apis::ContainerV1::NodeManagement]
1610
+ attr_accessor :management
1410
1611
 
1411
1612
  def initialize(**args)
1412
1613
  update!(**args)
@@ -1414,38 +1615,19 @@ module Google
1414
1615
 
1415
1616
  # Update properties of this object
1416
1617
  def update!(**args)
1417
- @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
1418
- @resource_labels = args[:resource_labels] if args.key?(:resource_labels)
1618
+ @management = args[:management] if args.key?(:management)
1419
1619
  end
1420
1620
  end
1421
1621
 
1422
- # NodeManagement defines the set of node management services turned on for the
1423
- # node pool.
1424
- class NodeManagement
1622
+ # SetNodePoolSizeRequest sets the size a node
1623
+ # pool.
1624
+ class SetNodePoolSizeRequest
1425
1625
  include Google::Apis::Core::Hashable
1426
1626
 
1427
- # A flag that specifies whether the node auto-repair is enabled for the node
1428
- # pool. If enabled, the nodes in this node pool will be monitored and, if
1429
- # they fail health checks too many times, an automatic repair action will be
1430
- # triggered.
1431
- # Corresponds to the JSON property `autoRepair`
1432
- # @return [Boolean]
1433
- attr_accessor :auto_repair
1434
- alias_method :auto_repair?, :auto_repair
1435
-
1436
- # A flag that specifies whether node auto-upgrade is enabled for the node
1437
- # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
1438
- # up to date with the latest release version of Kubernetes.
1439
- # Corresponds to the JSON property `autoUpgrade`
1440
- # @return [Boolean]
1441
- attr_accessor :auto_upgrade
1442
- alias_method :auto_upgrade?, :auto_upgrade
1443
-
1444
- # AutoUpgradeOptions defines the set of options for the user to control how
1445
- # the Auto Upgrades will proceed.
1446
- # Corresponds to the JSON property `upgradeOptions`
1447
- # @return [Google::Apis::ContainerV1::AutoUpgradeOptions]
1448
- attr_accessor :upgrade_options
1627
+ # The desired node count for the pool.
1628
+ # Corresponds to the JSON property `nodeCount`
1629
+ # @return [Fixnum]
1630
+ attr_accessor :node_count
1449
1631
 
1450
1632
  def initialize(**args)
1451
1633
  update!(**args)
@@ -1453,14 +1635,13 @@ module Google
1453
1635
 
1454
1636
  # Update properties of this object
1455
1637
  def update!(**args)
1456
- @auto_repair = args[:auto_repair] if args.key?(:auto_repair)
1457
- @auto_upgrade = args[:auto_upgrade] if args.key?(:auto_upgrade)
1458
- @upgrade_options = args[:upgrade_options] if args.key?(:upgrade_options)
1638
+ @node_count = args[:node_count] if args.key?(:node_count)
1459
1639
  end
1460
1640
  end
1461
1641
 
1462
- # CancelOperationRequest cancels a single operation.
1463
- class CancelOperationRequest
1642
+ # StartIPRotationRequest creates a new IP for the cluster and then performs
1643
+ # a node upgrade on each node pool to point to the new IP.
1644
+ class StartIpRotationRequest
1464
1645
  include Google::Apis::Core::Hashable
1465
1646
 
1466
1647
  def initialize(**args)
@@ -1472,16 +1653,16 @@ module Google
1472
1653
  end
1473
1654
  end
1474
1655
 
1475
- # SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for
1476
- # a cluster.
1477
- class SetLegacyAbacRequest
1656
+ # UpdateClusterRequest updates the settings of a cluster.
1657
+ class UpdateClusterRequest
1478
1658
  include Google::Apis::Core::Hashable
1479
1659
 
1480
- # Whether ABAC authorization will be enabled in the cluster.
1481
- # Corresponds to the JSON property `enabled`
1482
- # @return [Boolean]
1483
- attr_accessor :enabled
1484
- alias_method :enabled?, :enabled
1660
+ # ClusterUpdate describes an update to the cluster. Exactly one update can
1661
+ # be applied to a cluster with each request, so at most one field can be
1662
+ # provided.
1663
+ # Corresponds to the JSON property `update`
1664
+ # @return [Google::Apis::ContainerV1::ClusterUpdate]
1665
+ attr_accessor :update
1485
1666
 
1486
1667
  def initialize(**args)
1487
1668
  update!(**args)
@@ -1489,56 +1670,20 @@ module Google
1489
1670
 
1490
1671
  # Update properties of this object
1491
1672
  def update!(**args)
1492
- @enabled = args[:enabled] if args.key?(:enabled)
1673
+ @update = args[:update] if args.key?(:update)
1493
1674
  end
1494
1675
  end
1495
1676
 
1496
- # This operation resource represents operations that may have happened or are
1497
- # happening on the cluster. All fields are output only.
1498
- class Operation
1677
+ # UpdateMasterRequest updates the master of the cluster.
1678
+ class UpdateMasterRequest
1499
1679
  include Google::Apis::Core::Hashable
1500
1680
 
1501
- # The name of the Google Compute Engine
1502
- # [zone](/compute/docs/zones#available) in which the operation
1503
- # is taking place.
1504
- # Corresponds to the JSON property `zone`
1505
- # @return [String]
1506
- attr_accessor :zone
1507
-
1508
- # The current status of the operation.
1509
- # Corresponds to the JSON property `status`
1510
- # @return [String]
1511
- attr_accessor :status
1512
-
1513
- # If an error has occurred, a textual description of the error.
1514
- # Corresponds to the JSON property `statusMessage`
1515
- # @return [String]
1516
- attr_accessor :status_message
1517
-
1518
- # The server-assigned ID for the operation.
1519
- # Corresponds to the JSON property `name`
1520
- # @return [String]
1521
- attr_accessor :name
1522
-
1523
- # Server-defined URL for the resource.
1524
- # Corresponds to the JSON property `selfLink`
1525
- # @return [String]
1526
- attr_accessor :self_link
1527
-
1528
- # Server-defined URL for the target of the operation.
1529
- # Corresponds to the JSON property `targetLink`
1530
- # @return [String]
1531
- attr_accessor :target_link
1532
-
1533
- # Detailed operation progress, if available.
1534
- # Corresponds to the JSON property `detail`
1535
- # @return [String]
1536
- attr_accessor :detail
1537
-
1538
- # The operation type.
1539
- # Corresponds to the JSON property `operationType`
1681
+ # The Kubernetes version to change the master to. The only valid value is the
1682
+ # latest supported version. Use "-" to have the server automatically select
1683
+ # the latest version.
1684
+ # Corresponds to the JSON property `masterVersion`
1540
1685
  # @return [String]
1541
- attr_accessor :operation_type
1686
+ attr_accessor :master_version
1542
1687
 
1543
1688
  def initialize(**args)
1544
1689
  update!(**args)
@@ -1546,34 +1691,25 @@ module Google
1546
1691
 
1547
1692
  # Update properties of this object
1548
1693
  def update!(**args)
1549
- @zone = args[:zone] if args.key?(:zone)
1550
- @status = args[:status] if args.key?(:status)
1551
- @status_message = args[:status_message] if args.key?(:status_message)
1552
- @name = args[:name] if args.key?(:name)
1553
- @self_link = args[:self_link] if args.key?(:self_link)
1554
- @target_link = args[:target_link] if args.key?(:target_link)
1555
- @detail = args[:detail] if args.key?(:detail)
1556
- @operation_type = args[:operation_type] if args.key?(:operation_type)
1694
+ @master_version = args[:master_version] if args.key?(:master_version)
1557
1695
  end
1558
1696
  end
1559
1697
 
1560
- # Configuration for the addons that can be automatically spun up in the
1561
- # cluster, enabling additional functionality.
1562
- class AddonsConfig
1698
+ # UpdateNodePoolRequests update a node pool's image and/or version.
1699
+ class UpdateNodePoolRequest
1563
1700
  include Google::Apis::Core::Hashable
1564
1701
 
1565
- # Configuration options for the horizontal pod autoscaling feature, which
1566
- # increases or decreases the number of replica pods a replication controller
1567
- # has based on the resource usage of the existing pods.
1568
- # Corresponds to the JSON property `horizontalPodAutoscaling`
1569
- # @return [Google::Apis::ContainerV1::HorizontalPodAutoscaling]
1570
- attr_accessor :horizontal_pod_autoscaling
1702
+ # The desired image type for the node pool.
1703
+ # Corresponds to the JSON property `imageType`
1704
+ # @return [String]
1705
+ attr_accessor :image_type
1571
1706
 
1572
- # Configuration options for the HTTP (L7) load balancing controller addon,
1573
- # which makes it easy to set up HTTP load balancers for services in a cluster.
1574
- # Corresponds to the JSON property `httpLoadBalancing`
1575
- # @return [Google::Apis::ContainerV1::HttpLoadBalancing]
1576
- attr_accessor :http_load_balancing
1707
+ # The Kubernetes version to change the nodes to (typically an
1708
+ # upgrade). Use `-` to upgrade to the latest version supported by
1709
+ # the server.
1710
+ # Corresponds to the JSON property `nodeVersion`
1711
+ # @return [String]
1712
+ attr_accessor :node_version
1577
1713
 
1578
1714
  def initialize(**args)
1579
1715
  update!(**args)
@@ -1581,8 +1717,8 @@ module Google
1581
1717
 
1582
1718
  # Update properties of this object
1583
1719
  def update!(**args)
1584
- @horizontal_pod_autoscaling = args[:horizontal_pod_autoscaling] if args.key?(:horizontal_pod_autoscaling)
1585
- @http_load_balancing = args[:http_load_balancing] if args.key?(:http_load_balancing)
1720
+ @image_type = args[:image_type] if args.key?(:image_type)
1721
+ @node_version = args[:node_version] if args.key?(:node_version)
1586
1722
  end
1587
1723
  end
1588
1724
  end