google-api-client 0.13.2 → 0.13.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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