pulumiverse-scaleway 1.27.0a1744869119__py3-none-any.whl → 1.39.0a1764841480__py3-none-any.whl

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 (515) hide show
  1. pulumiverse_scaleway/__init__.py +109 -2
  2. pulumiverse_scaleway/_inputs.py +3936 -2603
  3. pulumiverse_scaleway/_utilities.py +1 -1
  4. pulumiverse_scaleway/account/__init__.py +4 -1
  5. pulumiverse_scaleway/account/get_availability_zones.py +12 -12
  6. pulumiverse_scaleway/account/get_project.py +28 -28
  7. pulumiverse_scaleway/account/get_projects.py +241 -0
  8. pulumiverse_scaleway/account/get_ssh_key.py +34 -34
  9. pulumiverse_scaleway/account/outputs.py +95 -0
  10. pulumiverse_scaleway/account/project.py +72 -71
  11. pulumiverse_scaleway/account/ssh_key.py +107 -106
  12. pulumiverse_scaleway/account_project.py +72 -71
  13. pulumiverse_scaleway/account_ssh_key.py +107 -106
  14. pulumiverse_scaleway/apple_silicon_server.py +334 -201
  15. pulumiverse_scaleway/applesilicon/__init__.py +2 -1
  16. pulumiverse_scaleway/applesilicon/_inputs.py +105 -51
  17. pulumiverse_scaleway/applesilicon/outputs.py +65 -33
  18. pulumiverse_scaleway/applesilicon/server.py +334 -201
  19. pulumiverse_scaleway/audittrail/__init__.py +10 -0
  20. pulumiverse_scaleway/audittrail/get_event.py +410 -0
  21. pulumiverse_scaleway/audittrail/outputs.py +234 -0
  22. pulumiverse_scaleway/autoscaling/__init__.py +13 -0
  23. pulumiverse_scaleway/autoscaling/_inputs.py +558 -0
  24. pulumiverse_scaleway/autoscaling/instance_group.py +807 -0
  25. pulumiverse_scaleway/autoscaling/instance_policy.py +634 -0
  26. pulumiverse_scaleway/autoscaling/instance_template.py +878 -0
  27. pulumiverse_scaleway/autoscaling/outputs.py +438 -0
  28. pulumiverse_scaleway/baremetal_server.py +622 -524
  29. pulumiverse_scaleway/billing/__init__.py +2 -1
  30. pulumiverse_scaleway/billing/get_consumptions.py +19 -15
  31. pulumiverse_scaleway/billing/get_invoices.py +25 -25
  32. pulumiverse_scaleway/billing/outputs.py +96 -96
  33. pulumiverse_scaleway/block/__init__.py +4 -1
  34. pulumiverse_scaleway/block/_inputs.py +125 -0
  35. pulumiverse_scaleway/block/get_snapshot.py +60 -37
  36. pulumiverse_scaleway/block/get_volume.py +38 -38
  37. pulumiverse_scaleway/block/outputs.py +139 -0
  38. pulumiverse_scaleway/block/snapshot.py +272 -98
  39. pulumiverse_scaleway/block/volume.py +145 -144
  40. pulumiverse_scaleway/block_snapshot.py +272 -98
  41. pulumiverse_scaleway/block_volume.py +145 -144
  42. pulumiverse_scaleway/cockpit.py +71 -49
  43. pulumiverse_scaleway/cockpit_alert_manager.py +66 -65
  44. pulumiverse_scaleway/cockpit_grafana_user.py +72 -113
  45. pulumiverse_scaleway/cockpit_source.py +142 -141
  46. pulumiverse_scaleway/cockpit_token.py +84 -83
  47. pulumiverse_scaleway/config/__init__.py +2 -1
  48. pulumiverse_scaleway/config/__init__.pyi +2 -2
  49. pulumiverse_scaleway/config/vars.py +11 -11
  50. pulumiverse_scaleway/container.py +653 -424
  51. pulumiverse_scaleway/container_cron.py +97 -96
  52. pulumiverse_scaleway/container_domain.py +63 -62
  53. pulumiverse_scaleway/container_namespace.py +251 -172
  54. pulumiverse_scaleway/container_token.py +97 -96
  55. pulumiverse_scaleway/container_trigger.py +77 -76
  56. pulumiverse_scaleway/containers/__init__.py +2 -1
  57. pulumiverse_scaleway/containers/_inputs.py +87 -87
  58. pulumiverse_scaleway/containers/container.py +653 -424
  59. pulumiverse_scaleway/containers/cron.py +97 -96
  60. pulumiverse_scaleway/containers/domain.py +63 -62
  61. pulumiverse_scaleway/containers/get_container.py +117 -73
  62. pulumiverse_scaleway/containers/get_namespace.py +56 -45
  63. pulumiverse_scaleway/containers/namespace.py +251 -172
  64. pulumiverse_scaleway/containers/outputs.py +84 -84
  65. pulumiverse_scaleway/containers/token.py +97 -96
  66. pulumiverse_scaleway/containers/trigger.py +77 -76
  67. pulumiverse_scaleway/database.py +81 -80
  68. pulumiverse_scaleway/database_acl.py +148 -39
  69. pulumiverse_scaleway/database_backup.py +124 -123
  70. pulumiverse_scaleway/database_instance.py +531 -436
  71. pulumiverse_scaleway/database_privilege.py +88 -87
  72. pulumiverse_scaleway/database_read_replica.py +60 -59
  73. pulumiverse_scaleway/database_user.py +171 -98
  74. pulumiverse_scaleway/databases/__init__.py +2 -1
  75. pulumiverse_scaleway/databases/_inputs.py +364 -216
  76. pulumiverse_scaleway/databases/acl.py +148 -39
  77. pulumiverse_scaleway/databases/database.py +81 -80
  78. pulumiverse_scaleway/databases/database_backup.py +124 -123
  79. pulumiverse_scaleway/databases/get_acl.py +17 -17
  80. pulumiverse_scaleway/databases/get_database.py +26 -26
  81. pulumiverse_scaleway/databases/get_database_backup.py +46 -46
  82. pulumiverse_scaleway/databases/get_instance.py +95 -73
  83. pulumiverse_scaleway/databases/get_privilege.py +30 -30
  84. pulumiverse_scaleway/databases/instance.py +531 -436
  85. pulumiverse_scaleway/databases/outputs.py +419 -232
  86. pulumiverse_scaleway/databases/privilege.py +88 -87
  87. pulumiverse_scaleway/databases/read_replica.py +60 -59
  88. pulumiverse_scaleway/databases/serverless_database.py +97 -96
  89. pulumiverse_scaleway/databases/snapshot.py +127 -126
  90. pulumiverse_scaleway/databases/user.py +171 -98
  91. pulumiverse_scaleway/datawarehouse/__init__.py +13 -0
  92. pulumiverse_scaleway/datawarehouse/_inputs.py +149 -0
  93. pulumiverse_scaleway/datawarehouse/database.py +338 -0
  94. pulumiverse_scaleway/datawarehouse/deployment.py +821 -0
  95. pulumiverse_scaleway/datawarehouse/outputs.py +113 -0
  96. pulumiverse_scaleway/datawarehouse/user.py +451 -0
  97. pulumiverse_scaleway/domain/__init__.py +2 -1
  98. pulumiverse_scaleway/domain/_inputs.py +661 -661
  99. pulumiverse_scaleway/domain/get_record.py +53 -64
  100. pulumiverse_scaleway/domain/get_zone.py +36 -30
  101. pulumiverse_scaleway/domain/outputs.py +501 -501
  102. pulumiverse_scaleway/domain/record.py +156 -202
  103. pulumiverse_scaleway/domain/registration.py +123 -122
  104. pulumiverse_scaleway/domain/zone.py +108 -107
  105. pulumiverse_scaleway/domain_record.py +156 -202
  106. pulumiverse_scaleway/domain_zone.py +108 -107
  107. pulumiverse_scaleway/edge_services_backend_stage.py +61 -60
  108. pulumiverse_scaleway/edge_services_cache_stage.py +283 -111
  109. pulumiverse_scaleway/edge_services_dns_stage.py +169 -140
  110. pulumiverse_scaleway/edge_services_head_stage.py +37 -36
  111. pulumiverse_scaleway/edge_services_pipeline.py +125 -82
  112. pulumiverse_scaleway/edge_services_plan.py +37 -36
  113. pulumiverse_scaleway/edge_services_route_stage.py +75 -74
  114. pulumiverse_scaleway/edge_services_tls_stage.py +219 -124
  115. pulumiverse_scaleway/edge_services_waf_stage.py +106 -105
  116. pulumiverse_scaleway/elasticmetal/__init__.py +3 -1
  117. pulumiverse_scaleway/elasticmetal/_inputs.py +203 -129
  118. pulumiverse_scaleway/elasticmetal/get_ip.py +70 -54
  119. pulumiverse_scaleway/elasticmetal/get_ips.py +31 -31
  120. pulumiverse_scaleway/elasticmetal/get_offer.py +43 -41
  121. pulumiverse_scaleway/elasticmetal/get_option.py +24 -24
  122. pulumiverse_scaleway/elasticmetal/get_os.py +28 -28
  123. pulumiverse_scaleway/elasticmetal/get_partition_schema.py +215 -0
  124. pulumiverse_scaleway/elasticmetal/get_server.py +101 -68
  125. pulumiverse_scaleway/elasticmetal/ip.py +170 -169
  126. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +107 -106
  127. pulumiverse_scaleway/elasticmetal/outputs.py +379 -287
  128. pulumiverse_scaleway/elasticmetal/server.py +622 -524
  129. pulumiverse_scaleway/file_filesystem.py +555 -0
  130. pulumiverse_scaleway/flexible_ip.py +170 -169
  131. pulumiverse_scaleway/flexible_ip_mac_address.py +107 -106
  132. pulumiverse_scaleway/function.py +457 -348
  133. pulumiverse_scaleway/function_cron.py +97 -96
  134. pulumiverse_scaleway/function_domain.py +63 -62
  135. pulumiverse_scaleway/function_namespace.py +234 -155
  136. pulumiverse_scaleway/function_token.py +97 -96
  137. pulumiverse_scaleway/function_trigger.py +77 -76
  138. pulumiverse_scaleway/functions/__init__.py +2 -1
  139. pulumiverse_scaleway/functions/_inputs.py +50 -50
  140. pulumiverse_scaleway/functions/cron.py +97 -96
  141. pulumiverse_scaleway/functions/domain.py +63 -62
  142. pulumiverse_scaleway/functions/function.py +457 -348
  143. pulumiverse_scaleway/functions/get_function.py +93 -71
  144. pulumiverse_scaleway/functions/get_namespace.py +54 -43
  145. pulumiverse_scaleway/functions/namespace.py +234 -155
  146. pulumiverse_scaleway/functions/outputs.py +34 -34
  147. pulumiverse_scaleway/functions/token.py +97 -96
  148. pulumiverse_scaleway/functions/trigger.py +77 -76
  149. pulumiverse_scaleway/get_account_project.py +28 -28
  150. pulumiverse_scaleway/get_account_ssh_key.py +34 -34
  151. pulumiverse_scaleway/get_availability_zones.py +12 -12
  152. pulumiverse_scaleway/get_baremetal_offer.py +43 -41
  153. pulumiverse_scaleway/get_baremetal_option.py +24 -24
  154. pulumiverse_scaleway/get_baremetal_os.py +28 -28
  155. pulumiverse_scaleway/get_baremetal_server.py +101 -68
  156. pulumiverse_scaleway/get_billing_consumptions.py +19 -15
  157. pulumiverse_scaleway/get_billing_invoices.py +25 -25
  158. pulumiverse_scaleway/get_block_snapshot.py +60 -37
  159. pulumiverse_scaleway/get_block_volume.py +38 -38
  160. pulumiverse_scaleway/get_cockpit.py +16 -16
  161. pulumiverse_scaleway/get_cockpit_source.py +88 -45
  162. pulumiverse_scaleway/get_config.py +24 -24
  163. pulumiverse_scaleway/get_container.py +117 -73
  164. pulumiverse_scaleway/get_container_namespace.py +56 -45
  165. pulumiverse_scaleway/get_database.py +26 -26
  166. pulumiverse_scaleway/get_database_acl.py +17 -17
  167. pulumiverse_scaleway/get_database_backup.py +46 -46
  168. pulumiverse_scaleway/get_database_instance.py +95 -73
  169. pulumiverse_scaleway/get_database_privilege.py +30 -30
  170. pulumiverse_scaleway/get_domain_record.py +53 -64
  171. pulumiverse_scaleway/get_domain_zone.py +36 -30
  172. pulumiverse_scaleway/get_flexible_ip.py +70 -54
  173. pulumiverse_scaleway/get_flexible_ips.py +31 -31
  174. pulumiverse_scaleway/get_function.py +93 -71
  175. pulumiverse_scaleway/get_function_namespace.py +54 -43
  176. pulumiverse_scaleway/get_iam_api_key.py +28 -28
  177. pulumiverse_scaleway/get_iam_application.py +32 -32
  178. pulumiverse_scaleway/get_iam_group.py +36 -36
  179. pulumiverse_scaleway/get_iam_ssh_key.py +34 -34
  180. pulumiverse_scaleway/get_iam_user.py +30 -30
  181. pulumiverse_scaleway/get_instance_image.py +58 -58
  182. pulumiverse_scaleway/get_instance_ip.py +42 -30
  183. pulumiverse_scaleway/get_instance_placement_group.py +38 -38
  184. pulumiverse_scaleway/get_instance_private_nic.py +53 -41
  185. pulumiverse_scaleway/get_instance_security_group.py +46 -46
  186. pulumiverse_scaleway/get_instance_server.py +108 -145
  187. pulumiverse_scaleway/get_instance_servers.py +31 -31
  188. pulumiverse_scaleway/get_instance_snapshot.py +41 -41
  189. pulumiverse_scaleway/get_instance_volume.py +42 -42
  190. pulumiverse_scaleway/get_iot_device.py +46 -46
  191. pulumiverse_scaleway/get_iot_hub.py +60 -60
  192. pulumiverse_scaleway/get_ipam_ip.py +65 -65
  193. pulumiverse_scaleway/get_ipam_ips.py +56 -56
  194. pulumiverse_scaleway/get_k8s_version.py +34 -23
  195. pulumiverse_scaleway/get_kubernetes_cluster.py +98 -65
  196. pulumiverse_scaleway/get_kubernetes_node_pool.py +86 -75
  197. pulumiverse_scaleway/get_lb_acls.py +29 -29
  198. pulumiverse_scaleway/get_lb_backend.py +75 -75
  199. pulumiverse_scaleway/get_lb_backends.py +29 -29
  200. pulumiverse_scaleway/get_lb_frontend.py +76 -43
  201. pulumiverse_scaleway/get_lb_frontends.py +29 -29
  202. pulumiverse_scaleway/get_lb_ips.py +37 -37
  203. pulumiverse_scaleway/get_lb_route.py +36 -25
  204. pulumiverse_scaleway/get_lb_routes.py +23 -23
  205. pulumiverse_scaleway/get_lbs.py +31 -31
  206. pulumiverse_scaleway/get_loadbalancer.py +78 -56
  207. pulumiverse_scaleway/get_loadbalancer_certificate.py +96 -36
  208. pulumiverse_scaleway/get_loadbalancer_ip.py +40 -40
  209. pulumiverse_scaleway/get_marketplace_image.py +28 -28
  210. pulumiverse_scaleway/get_mnq_sns.py +18 -18
  211. pulumiverse_scaleway/get_mnq_sqs.py +18 -18
  212. pulumiverse_scaleway/get_mongo_db_instance.py +110 -55
  213. pulumiverse_scaleway/get_object_bucket.py +35 -35
  214. pulumiverse_scaleway/get_object_bucket_policy.py +22 -22
  215. pulumiverse_scaleway/get_redis_cluster.py +65 -54
  216. pulumiverse_scaleway/get_registry_image.py +48 -48
  217. pulumiverse_scaleway/get_registry_image_tag.py +44 -44
  218. pulumiverse_scaleway/get_registry_namespace.py +36 -36
  219. pulumiverse_scaleway/get_secret.py +58 -58
  220. pulumiverse_scaleway/get_secret_version.py +46 -46
  221. pulumiverse_scaleway/get_tem_domain.py +103 -70
  222. pulumiverse_scaleway/get_vpc.py +58 -47
  223. pulumiverse_scaleway/get_vpc_gateway_network.py +55 -44
  224. pulumiverse_scaleway/get_vpc_private_network.py +58 -47
  225. pulumiverse_scaleway/get_vpc_public_gateway.py +56 -56
  226. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +44 -44
  227. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +44 -44
  228. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +24 -24
  229. pulumiverse_scaleway/get_vpc_public_pat_rule.py +32 -32
  230. pulumiverse_scaleway/get_vpc_routes.py +47 -47
  231. pulumiverse_scaleway/get_vpcs.py +31 -31
  232. pulumiverse_scaleway/get_web_host_offer.py +34 -34
  233. pulumiverse_scaleway/get_webhosting.py +58 -58
  234. pulumiverse_scaleway/hosting/__init__.py +2 -1
  235. pulumiverse_scaleway/hosting/_inputs.py +117 -75
  236. pulumiverse_scaleway/hosting/get_hosting.py +58 -58
  237. pulumiverse_scaleway/hosting/get_offer.py +34 -34
  238. pulumiverse_scaleway/hosting/hosting.py +213 -212
  239. pulumiverse_scaleway/hosting/outputs.py +276 -192
  240. pulumiverse_scaleway/iam/__init__.py +3 -1
  241. pulumiverse_scaleway/iam/_inputs.py +26 -26
  242. pulumiverse_scaleway/iam/api_key.py +142 -141
  243. pulumiverse_scaleway/iam/application.py +98 -97
  244. pulumiverse_scaleway/iam/get_api_key.py +28 -28
  245. pulumiverse_scaleway/iam/get_application.py +32 -32
  246. pulumiverse_scaleway/iam/get_group.py +36 -36
  247. pulumiverse_scaleway/iam/get_policy.py +293 -0
  248. pulumiverse_scaleway/iam/get_ssh_key.py +34 -34
  249. pulumiverse_scaleway/iam/get_user.py +30 -30
  250. pulumiverse_scaleway/iam/group.py +140 -139
  251. pulumiverse_scaleway/iam/group_membership.py +54 -53
  252. pulumiverse_scaleway/iam/outputs.py +70 -18
  253. pulumiverse_scaleway/iam/policy.py +169 -168
  254. pulumiverse_scaleway/iam/ssh_key.py +107 -106
  255. pulumiverse_scaleway/iam/user.py +598 -134
  256. pulumiverse_scaleway/iam_api_key.py +142 -141
  257. pulumiverse_scaleway/iam_application.py +98 -97
  258. pulumiverse_scaleway/iam_group.py +140 -139
  259. pulumiverse_scaleway/iam_group_membership.py +54 -53
  260. pulumiverse_scaleway/iam_policy.py +169 -168
  261. pulumiverse_scaleway/iam_ssh_key.py +107 -106
  262. pulumiverse_scaleway/iam_user.py +598 -134
  263. pulumiverse_scaleway/inference/__init__.py +4 -1
  264. pulumiverse_scaleway/inference/_inputs.py +232 -50
  265. pulumiverse_scaleway/inference/deployment.py +319 -220
  266. pulumiverse_scaleway/inference/get_model.py +299 -0
  267. pulumiverse_scaleway/inference/model.py +684 -0
  268. pulumiverse_scaleway/inference/outputs.py +250 -34
  269. pulumiverse_scaleway/inference_deployment.py +319 -220
  270. pulumiverse_scaleway/instance/__init__.py +3 -1
  271. pulumiverse_scaleway/instance/_inputs.py +650 -437
  272. pulumiverse_scaleway/instance/get_image.py +58 -58
  273. pulumiverse_scaleway/instance/get_ip.py +42 -30
  274. pulumiverse_scaleway/instance/get_placement_group.py +38 -38
  275. pulumiverse_scaleway/instance/get_private_nic.py +53 -41
  276. pulumiverse_scaleway/instance/get_security_group.py +46 -46
  277. pulumiverse_scaleway/instance/get_server.py +108 -145
  278. pulumiverse_scaleway/instance/get_server_type.py +271 -0
  279. pulumiverse_scaleway/instance/get_servers.py +31 -31
  280. pulumiverse_scaleway/instance/get_snapshot.py +41 -41
  281. pulumiverse_scaleway/instance/get_volume.py +42 -42
  282. pulumiverse_scaleway/instance/image.py +260 -205
  283. pulumiverse_scaleway/instance/ip.py +116 -115
  284. pulumiverse_scaleway/instance/ip_reverse_dns.py +54 -53
  285. pulumiverse_scaleway/instance/outputs.py +981 -548
  286. pulumiverse_scaleway/instance/placement_group.py +123 -122
  287. pulumiverse_scaleway/instance/private_nic.py +163 -113
  288. pulumiverse_scaleway/instance/security_group.py +188 -187
  289. pulumiverse_scaleway/instance/security_group_rules.py +42 -41
  290. pulumiverse_scaleway/instance/server.py +590 -562
  291. pulumiverse_scaleway/instance/snapshot.py +150 -157
  292. pulumiverse_scaleway/instance/user_data.py +75 -74
  293. pulumiverse_scaleway/instance/volume.py +174 -159
  294. pulumiverse_scaleway/instance_image.py +260 -205
  295. pulumiverse_scaleway/instance_ip.py +116 -115
  296. pulumiverse_scaleway/instance_ip_reverse_dns.py +54 -53
  297. pulumiverse_scaleway/instance_placement_group.py +123 -122
  298. pulumiverse_scaleway/instance_private_nic.py +163 -113
  299. pulumiverse_scaleway/instance_security_group.py +188 -187
  300. pulumiverse_scaleway/instance_security_group_rules.py +42 -41
  301. pulumiverse_scaleway/instance_server.py +590 -562
  302. pulumiverse_scaleway/instance_snapshot.py +150 -157
  303. pulumiverse_scaleway/instance_user_data.py +75 -74
  304. pulumiverse_scaleway/instance_volume.py +174 -159
  305. pulumiverse_scaleway/iot/__init__.py +2 -1
  306. pulumiverse_scaleway/iot/_inputs.py +119 -119
  307. pulumiverse_scaleway/iot/device.py +156 -193
  308. pulumiverse_scaleway/iot/get_device.py +46 -46
  309. pulumiverse_scaleway/iot/get_hub.py +60 -60
  310. pulumiverse_scaleway/iot/hub.py +259 -258
  311. pulumiverse_scaleway/iot/network.py +115 -114
  312. pulumiverse_scaleway/iot/outputs.py +107 -107
  313. pulumiverse_scaleway/iot/route.py +109 -108
  314. pulumiverse_scaleway/iot_device.py +156 -193
  315. pulumiverse_scaleway/iot_hub.py +259 -258
  316. pulumiverse_scaleway/iot_network.py +115 -114
  317. pulumiverse_scaleway/iot_route.py +109 -108
  318. pulumiverse_scaleway/ipam/__init__.py +2 -1
  319. pulumiverse_scaleway/ipam/_inputs.py +108 -108
  320. pulumiverse_scaleway/ipam/get_ip.py +65 -65
  321. pulumiverse_scaleway/ipam/get_ips.py +56 -56
  322. pulumiverse_scaleway/ipam/ip.py +160 -131
  323. pulumiverse_scaleway/ipam/ip_reverse_dns.py +141 -70
  324. pulumiverse_scaleway/ipam/outputs.py +122 -122
  325. pulumiverse_scaleway/ipam_ip.py +160 -131
  326. pulumiverse_scaleway/ipam_ip_reverse_dns.py +141 -70
  327. pulumiverse_scaleway/job/__init__.py +2 -1
  328. pulumiverse_scaleway/job/_inputs.py +127 -14
  329. pulumiverse_scaleway/job/definition.py +283 -175
  330. pulumiverse_scaleway/job/outputs.py +98 -10
  331. pulumiverse_scaleway/job_definition.py +283 -175
  332. pulumiverse_scaleway/key_manager_key.py +939 -0
  333. pulumiverse_scaleway/kubernetes/__init__.py +3 -1
  334. pulumiverse_scaleway/kubernetes/_inputs.py +388 -185
  335. pulumiverse_scaleway/kubernetes/acl.py +447 -0
  336. pulumiverse_scaleway/kubernetes/cluster.py +594 -307
  337. pulumiverse_scaleway/kubernetes/get_cluster.py +98 -65
  338. pulumiverse_scaleway/kubernetes/get_pool.py +86 -75
  339. pulumiverse_scaleway/kubernetes/get_version.py +34 -23
  340. pulumiverse_scaleway/kubernetes/outputs.py +444 -250
  341. pulumiverse_scaleway/kubernetes/pool.py +427 -365
  342. pulumiverse_scaleway/kubernetes_cluster.py +594 -307
  343. pulumiverse_scaleway/kubernetes_node_pool.py +427 -365
  344. pulumiverse_scaleway/loadbalancer.py +329 -246
  345. pulumiverse_scaleway/loadbalancer_acl.py +102 -101
  346. pulumiverse_scaleway/loadbalancer_backend.py +534 -487
  347. pulumiverse_scaleway/loadbalancer_certificate.py +97 -96
  348. pulumiverse_scaleway/loadbalancer_frontend.py +271 -167
  349. pulumiverse_scaleway/loadbalancer_ip.py +124 -123
  350. pulumiverse_scaleway/loadbalancer_route.py +244 -119
  351. pulumiverse_scaleway/loadbalancers/__init__.py +3 -1
  352. pulumiverse_scaleway/loadbalancers/_inputs.py +367 -273
  353. pulumiverse_scaleway/loadbalancers/acl.py +102 -101
  354. pulumiverse_scaleway/loadbalancers/backend.py +534 -487
  355. pulumiverse_scaleway/loadbalancers/certificate.py +97 -96
  356. pulumiverse_scaleway/loadbalancers/frontend.py +271 -167
  357. pulumiverse_scaleway/loadbalancers/get_acls.py +29 -29
  358. pulumiverse_scaleway/loadbalancers/get_backend.py +75 -75
  359. pulumiverse_scaleway/loadbalancers/get_backends.py +29 -29
  360. pulumiverse_scaleway/loadbalancers/get_certificate.py +96 -36
  361. pulumiverse_scaleway/loadbalancers/get_frontend.py +76 -43
  362. pulumiverse_scaleway/loadbalancers/get_frontends.py +29 -29
  363. pulumiverse_scaleway/loadbalancers/get_ip.py +40 -40
  364. pulumiverse_scaleway/loadbalancers/get_ips.py +37 -37
  365. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +78 -56
  366. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +31 -31
  367. pulumiverse_scaleway/loadbalancers/get_route.py +36 -25
  368. pulumiverse_scaleway/loadbalancers/get_routes.py +23 -23
  369. pulumiverse_scaleway/loadbalancers/ip.py +124 -123
  370. pulumiverse_scaleway/loadbalancers/load_balancer.py +329 -246
  371. pulumiverse_scaleway/loadbalancers/outputs.py +870 -716
  372. pulumiverse_scaleway/loadbalancers/private_network.py +505 -0
  373. pulumiverse_scaleway/loadbalancers/route.py +244 -119
  374. pulumiverse_scaleway/mnq/__init__.py +2 -1
  375. pulumiverse_scaleway/mnq/_inputs.py +90 -38
  376. pulumiverse_scaleway/mnq/get_sns.py +18 -18
  377. pulumiverse_scaleway/mnq/get_sqs.py +18 -18
  378. pulumiverse_scaleway/mnq/nats_account.py +63 -62
  379. pulumiverse_scaleway/mnq/nats_credentials.py +63 -62
  380. pulumiverse_scaleway/mnq/outputs.py +73 -26
  381. pulumiverse_scaleway/mnq/sns.py +46 -45
  382. pulumiverse_scaleway/mnq/sns_credentials.py +82 -81
  383. pulumiverse_scaleway/mnq/sns_topic.py +174 -173
  384. pulumiverse_scaleway/mnq/sns_topic_subscription.py +182 -181
  385. pulumiverse_scaleway/mnq/sqs.py +46 -45
  386. pulumiverse_scaleway/mnq/sqs_credentials.py +82 -81
  387. pulumiverse_scaleway/mnq/sqs_queue.py +392 -232
  388. pulumiverse_scaleway/mnq_nats_account.py +63 -62
  389. pulumiverse_scaleway/mnq_nats_credentials.py +63 -62
  390. pulumiverse_scaleway/mnq_sns.py +46 -45
  391. pulumiverse_scaleway/mnq_sns_credentials.py +82 -81
  392. pulumiverse_scaleway/mnq_sns_topic.py +174 -173
  393. pulumiverse_scaleway/mnq_sns_topic_subscription.py +182 -181
  394. pulumiverse_scaleway/mnq_sqs.py +46 -45
  395. pulumiverse_scaleway/mnq_sqs_credentials.py +82 -81
  396. pulumiverse_scaleway/mnq_sqs_queue.py +392 -232
  397. pulumiverse_scaleway/mongo_db_instance.py +569 -268
  398. pulumiverse_scaleway/mongo_db_snapshot.py +127 -126
  399. pulumiverse_scaleway/mongodb/__init__.py +3 -1
  400. pulumiverse_scaleway/mongodb/_inputs.py +178 -51
  401. pulumiverse_scaleway/mongodb/get_instance.py +110 -55
  402. pulumiverse_scaleway/mongodb/instance.py +569 -268
  403. pulumiverse_scaleway/mongodb/outputs.py +192 -68
  404. pulumiverse_scaleway/mongodb/snapshot.py +127 -126
  405. pulumiverse_scaleway/mongodb/user.py +507 -0
  406. pulumiverse_scaleway/network/__init__.py +2 -1
  407. pulumiverse_scaleway/network/_inputs.py +209 -155
  408. pulumiverse_scaleway/network/acl.py +100 -101
  409. pulumiverse_scaleway/network/gateway_network.py +228 -180
  410. pulumiverse_scaleway/network/get_gateway_network.py +55 -44
  411. pulumiverse_scaleway/network/get_private_network.py +58 -47
  412. pulumiverse_scaleway/network/get_public_gateway.py +56 -56
  413. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +44 -44
  414. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +44 -44
  415. pulumiverse_scaleway/network/get_public_gateway_ip.py +24 -24
  416. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +32 -32
  417. pulumiverse_scaleway/network/get_routes.py +47 -47
  418. pulumiverse_scaleway/network/get_vpc.py +58 -47
  419. pulumiverse_scaleway/network/get_vpcs.py +31 -31
  420. pulumiverse_scaleway/network/outputs.py +338 -270
  421. pulumiverse_scaleway/network/private_network.py +203 -155
  422. pulumiverse_scaleway/network/public_gateway.py +261 -260
  423. pulumiverse_scaleway/network/public_gateway_dhcp.py +285 -284
  424. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +107 -106
  425. pulumiverse_scaleway/network/public_gateway_ip.py +107 -106
  426. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +54 -53
  427. pulumiverse_scaleway/network/public_gateway_pat_rule.py +132 -131
  428. pulumiverse_scaleway/network/route.py +230 -141
  429. pulumiverse_scaleway/network/vpc.py +172 -124
  430. pulumiverse_scaleway/object/__init__.py +3 -1
  431. pulumiverse_scaleway/object/_inputs.py +202 -166
  432. pulumiverse_scaleway/object/bucket.py +162 -148
  433. pulumiverse_scaleway/object/bucket_acl.py +97 -94
  434. pulumiverse_scaleway/object/bucket_lock_configuration.py +57 -56
  435. pulumiverse_scaleway/object/bucket_policy.py +71 -134
  436. pulumiverse_scaleway/object/bucket_website_configuration.py +104 -85
  437. pulumiverse_scaleway/object/get.py +290 -0
  438. pulumiverse_scaleway/object/get_bucket.py +35 -35
  439. pulumiverse_scaleway/object/get_bucket_policy.py +22 -22
  440. pulumiverse_scaleway/object/item.py +301 -223
  441. pulumiverse_scaleway/object/outputs.py +210 -166
  442. pulumiverse_scaleway/object_bucket.py +162 -148
  443. pulumiverse_scaleway/object_bucket_acl.py +97 -94
  444. pulumiverse_scaleway/object_bucket_lock_configuration.py +57 -56
  445. pulumiverse_scaleway/object_bucket_policy.py +71 -134
  446. pulumiverse_scaleway/object_bucket_website_configuration.py +104 -85
  447. pulumiverse_scaleway/object_item.py +301 -223
  448. pulumiverse_scaleway/observability/__init__.py +4 -2
  449. pulumiverse_scaleway/observability/_inputs.py +106 -106
  450. pulumiverse_scaleway/observability/alert_manager.py +66 -65
  451. pulumiverse_scaleway/observability/cockpit.py +71 -49
  452. pulumiverse_scaleway/observability/get_grafana.py +103 -0
  453. pulumiverse_scaleway/observability/get_instance.py +16 -16
  454. pulumiverse_scaleway/observability/get_source.py +88 -45
  455. pulumiverse_scaleway/observability/get_sources.py +375 -0
  456. pulumiverse_scaleway/observability/grafana_user.py +72 -113
  457. pulumiverse_scaleway/observability/outputs.py +241 -101
  458. pulumiverse_scaleway/observability/source.py +142 -141
  459. pulumiverse_scaleway/observability/token.py +84 -83
  460. pulumiverse_scaleway/outputs.py +5235 -3665
  461. pulumiverse_scaleway/provider.py +107 -82
  462. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  463. pulumiverse_scaleway/rdb_snapshot.py +127 -126
  464. pulumiverse_scaleway/redis/__init__.py +2 -1
  465. pulumiverse_scaleway/redis/_inputs.py +163 -69
  466. pulumiverse_scaleway/redis/cluster.py +273 -225
  467. pulumiverse_scaleway/redis/get_cluster.py +65 -54
  468. pulumiverse_scaleway/redis/outputs.py +199 -87
  469. pulumiverse_scaleway/redis_cluster.py +273 -225
  470. pulumiverse_scaleway/registry/__init__.py +2 -1
  471. pulumiverse_scaleway/registry/get_image.py +48 -48
  472. pulumiverse_scaleway/registry/get_image_tag.py +44 -44
  473. pulumiverse_scaleway/registry/get_namespace.py +36 -36
  474. pulumiverse_scaleway/registry/namespace.py +106 -105
  475. pulumiverse_scaleway/registry_namespace.py +106 -105
  476. pulumiverse_scaleway/sdb_database.py +97 -96
  477. pulumiverse_scaleway/secret.py +188 -179
  478. pulumiverse_scaleway/secret_version.py +107 -106
  479. pulumiverse_scaleway/secrets/__init__.py +2 -1
  480. pulumiverse_scaleway/secrets/_inputs.py +63 -63
  481. pulumiverse_scaleway/secrets/get_secret.py +58 -58
  482. pulumiverse_scaleway/secrets/get_version.py +46 -46
  483. pulumiverse_scaleway/secrets/outputs.py +84 -84
  484. pulumiverse_scaleway/secrets/secret.py +188 -179
  485. pulumiverse_scaleway/secrets/version.py +107 -106
  486. pulumiverse_scaleway/tem/__init__.py +2 -1
  487. pulumiverse_scaleway/tem/_inputs.py +33 -33
  488. pulumiverse_scaleway/tem/blocked_list.py +105 -104
  489. pulumiverse_scaleway/tem/domain.py +384 -257
  490. pulumiverse_scaleway/tem/domain_validation.py +63 -62
  491. pulumiverse_scaleway/tem/get_domain.py +103 -70
  492. pulumiverse_scaleway/tem/get_offer_subscription.py +34 -34
  493. pulumiverse_scaleway/tem/outputs.py +44 -44
  494. pulumiverse_scaleway/tem/webhook.py +132 -131
  495. pulumiverse_scaleway/tem_domain.py +384 -257
  496. pulumiverse_scaleway/tem_domain_validation.py +63 -62
  497. pulumiverse_scaleway/tem_webhook.py +132 -131
  498. pulumiverse_scaleway/vpc.py +172 -124
  499. pulumiverse_scaleway/vpc_gateway_network.py +228 -180
  500. pulumiverse_scaleway/vpc_private_network.py +203 -155
  501. pulumiverse_scaleway/vpc_public_gateway.py +261 -260
  502. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +285 -284
  503. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +107 -106
  504. pulumiverse_scaleway/vpc_public_gateway_ip.py +107 -106
  505. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +54 -53
  506. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +132 -131
  507. pulumiverse_scaleway/vpc_route.py +230 -141
  508. pulumiverse_scaleway/webhosting.py +213 -212
  509. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/METADATA +2 -2
  510. pulumiverse_scaleway-1.39.0a1764841480.dist-info/RECORD +513 -0
  511. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/WHEEL +1 -1
  512. pulumiverse_scaleway/get_cockpit_plan.py +0 -129
  513. pulumiverse_scaleway/observability/get_plan.py +0 -125
  514. pulumiverse_scaleway-1.27.0a1744869119.dist-info/RECORD +0 -483
  515. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
7
  import sys
8
8
  import pulumi
@@ -21,48 +21,63 @@ __all__ = ['KubernetesClusterArgs', 'KubernetesCluster']
21
21
  @pulumi.input_type
22
22
  class KubernetesClusterArgs:
23
23
  def __init__(__self__, *,
24
- cni: pulumi.Input[str],
25
- delete_additional_resources: pulumi.Input[bool],
26
- version: pulumi.Input[str],
27
- admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
28
- apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
24
+ cni: pulumi.Input[_builtins.str],
25
+ delete_additional_resources: pulumi.Input[_builtins.bool],
26
+ version: pulumi.Input[_builtins.str],
27
+ admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
28
+ apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
29
29
  auto_upgrade: Optional[pulumi.Input['KubernetesClusterAutoUpgradeArgs']] = None,
30
30
  autoscaler_config: Optional[pulumi.Input['KubernetesClusterAutoscalerConfigArgs']] = None,
31
- description: Optional[pulumi.Input[str]] = None,
32
- feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
33
- name: Optional[pulumi.Input[str]] = None,
31
+ description: Optional[pulumi.Input[_builtins.str]] = None,
32
+ feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
33
+ name: Optional[pulumi.Input[_builtins.str]] = None,
34
34
  open_id_connect_config: Optional[pulumi.Input['KubernetesClusterOpenIdConnectConfigArgs']] = None,
35
- private_network_id: Optional[pulumi.Input[str]] = None,
36
- project_id: Optional[pulumi.Input[str]] = None,
37
- region: Optional[pulumi.Input[str]] = None,
38
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
39
- type: Optional[pulumi.Input[str]] = None):
35
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
36
+ private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
37
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
38
+ region: Optional[pulumi.Input[_builtins.str]] = None,
39
+ service_cidr: Optional[pulumi.Input[_builtins.str]] = None,
40
+ service_dns_ip: Optional[pulumi.Input[_builtins.str]] = None,
41
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
42
+ type: Optional[pulumi.Input[_builtins.str]] = None):
40
43
  """
41
44
  The set of arguments for constructing a KubernetesCluster resource.
42
- :param pulumi.Input[str] cni: The Container Network Interface (CNI) for the Kubernetes cluster.
45
+ :param pulumi.Input[_builtins.str] cni: The Container Network Interface (CNI) for the Kubernetes cluster.
43
46
  > **Important:** Updates to this field will recreate a new resource.
44
- :param pulumi.Input[bool] delete_additional_resources: Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
47
+ :param pulumi.Input[_builtins.bool] delete_additional_resources: Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
45
48
  > **Important:** Setting this field to `true` means that you will lose all your cluster data and network configuration when you delete your cluster.
46
49
  If you prefer keeping it, you should instead set it as `false`.
47
- :param pulumi.Input[str] version: The version of the Kubernetes cluster.
48
- :param pulumi.Input[Sequence[pulumi.Input[str]]] admission_plugins: The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
49
- :param pulumi.Input[Sequence[pulumi.Input[str]]] apiserver_cert_sans: Additional Subject Alternative Names for the Kubernetes API server certificate
50
+ :param pulumi.Input[_builtins.str] version: The version of the Kubernetes cluster.
51
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] admission_plugins: The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
52
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] apiserver_cert_sans: Additional Subject Alternative Names for the Kubernetes API server certificate
50
53
  :param pulumi.Input['KubernetesClusterAutoUpgradeArgs'] auto_upgrade: The auto upgrade configuration.
51
54
  :param pulumi.Input['KubernetesClusterAutoscalerConfigArgs'] autoscaler_config: The configuration options for the [Kubernetes cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler).
52
- :param pulumi.Input[str] description: A description for the Kubernetes cluster.
53
- :param pulumi.Input[Sequence[pulumi.Input[str]]] feature_gates: The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
54
- :param pulumi.Input[str] name: The name for the Kubernetes cluster.
55
+ :param pulumi.Input[_builtins.str] description: A description for the Kubernetes cluster.
56
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] feature_gates: The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
57
+ :param pulumi.Input[_builtins.str] name: The name for the Kubernetes cluster.
55
58
  :param pulumi.Input['KubernetesClusterOpenIdConnectConfigArgs'] open_id_connect_config: The OpenID Connect configuration of the cluster
56
- :param pulumi.Input[str] private_network_id: The ID of the private network of the cluster.
59
+ :param pulumi.Input[_builtins.str] pod_cidr: The subnet used for the Pod CIDR.
60
+
61
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
62
+ unsetting it to go back to the default value will not have any effect.
63
+ :param pulumi.Input[_builtins.str] private_network_id: The ID of the private network of the cluster.
57
64
 
58
65
  > **Important:** Changes to this field will recreate a new resource.
59
66
 
60
67
  > **Important:** Private Networks are now mandatory with Kapsule Clusters. If you have a legacy cluster (no `private_network_id` set),
61
68
  you can still set it now. In this case it will not destroy and recreate your cluster but migrate it to the Private Network.
62
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the cluster is associated with.
63
- :param pulumi.Input[str] region: `region`) The region in which the cluster should be created.
64
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the Kubernetes cluster.
65
- :param pulumi.Input[str] type: The type of Kubernetes cluster. Possible values are:
69
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the cluster is associated with.
70
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the cluster should be created.
71
+ :param pulumi.Input[_builtins.str] service_cidr: The subnet used for the Service CIDR.
72
+
73
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
74
+ unsetting it to go back to the default value will not have any effect.
75
+ :param pulumi.Input[_builtins.str] service_dns_ip: The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
76
+
77
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
78
+ unsetting it to go back to the default value will not have any effect.
79
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the Kubernetes cluster.
80
+ :param pulumi.Input[_builtins.str] type: The type of Kubernetes cluster. Possible values are:
66
81
 
67
82
  - for mutualized clusters: `kapsule` or `multicloud`
68
83
 
@@ -89,20 +104,26 @@ class KubernetesClusterArgs:
89
104
  pulumi.set(__self__, "name", name)
90
105
  if open_id_connect_config is not None:
91
106
  pulumi.set(__self__, "open_id_connect_config", open_id_connect_config)
107
+ if pod_cidr is not None:
108
+ pulumi.set(__self__, "pod_cidr", pod_cidr)
92
109
  if private_network_id is not None:
93
110
  pulumi.set(__self__, "private_network_id", private_network_id)
94
111
  if project_id is not None:
95
112
  pulumi.set(__self__, "project_id", project_id)
96
113
  if region is not None:
97
114
  pulumi.set(__self__, "region", region)
115
+ if service_cidr is not None:
116
+ pulumi.set(__self__, "service_cidr", service_cidr)
117
+ if service_dns_ip is not None:
118
+ pulumi.set(__self__, "service_dns_ip", service_dns_ip)
98
119
  if tags is not None:
99
120
  pulumi.set(__self__, "tags", tags)
100
121
  if type is not None:
101
122
  pulumi.set(__self__, "type", type)
102
123
 
103
- @property
124
+ @_builtins.property
104
125
  @pulumi.getter
105
- def cni(self) -> pulumi.Input[str]:
126
+ def cni(self) -> pulumi.Input[_builtins.str]:
106
127
  """
107
128
  The Container Network Interface (CNI) for the Kubernetes cluster.
108
129
  > **Important:** Updates to this field will recreate a new resource.
@@ -110,12 +131,12 @@ class KubernetesClusterArgs:
110
131
  return pulumi.get(self, "cni")
111
132
 
112
133
  @cni.setter
113
- def cni(self, value: pulumi.Input[str]):
134
+ def cni(self, value: pulumi.Input[_builtins.str]):
114
135
  pulumi.set(self, "cni", value)
115
136
 
116
- @property
137
+ @_builtins.property
117
138
  @pulumi.getter(name="deleteAdditionalResources")
118
- def delete_additional_resources(self) -> pulumi.Input[bool]:
139
+ def delete_additional_resources(self) -> pulumi.Input[_builtins.bool]:
119
140
  """
120
141
  Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
121
142
  > **Important:** Setting this field to `true` means that you will lose all your cluster data and network configuration when you delete your cluster.
@@ -124,46 +145,46 @@ class KubernetesClusterArgs:
124
145
  return pulumi.get(self, "delete_additional_resources")
125
146
 
126
147
  @delete_additional_resources.setter
127
- def delete_additional_resources(self, value: pulumi.Input[bool]):
148
+ def delete_additional_resources(self, value: pulumi.Input[_builtins.bool]):
128
149
  pulumi.set(self, "delete_additional_resources", value)
129
150
 
130
- @property
151
+ @_builtins.property
131
152
  @pulumi.getter
132
- def version(self) -> pulumi.Input[str]:
153
+ def version(self) -> pulumi.Input[_builtins.str]:
133
154
  """
134
155
  The version of the Kubernetes cluster.
135
156
  """
136
157
  return pulumi.get(self, "version")
137
158
 
138
159
  @version.setter
139
- def version(self, value: pulumi.Input[str]):
160
+ def version(self, value: pulumi.Input[_builtins.str]):
140
161
  pulumi.set(self, "version", value)
141
162
 
142
- @property
163
+ @_builtins.property
143
164
  @pulumi.getter(name="admissionPlugins")
144
- def admission_plugins(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
165
+ def admission_plugins(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
145
166
  """
146
167
  The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
147
168
  """
148
169
  return pulumi.get(self, "admission_plugins")
149
170
 
150
171
  @admission_plugins.setter
151
- def admission_plugins(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
172
+ def admission_plugins(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
152
173
  pulumi.set(self, "admission_plugins", value)
153
174
 
154
- @property
175
+ @_builtins.property
155
176
  @pulumi.getter(name="apiserverCertSans")
156
- def apiserver_cert_sans(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
177
+ def apiserver_cert_sans(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
157
178
  """
158
179
  Additional Subject Alternative Names for the Kubernetes API server certificate
159
180
  """
160
181
  return pulumi.get(self, "apiserver_cert_sans")
161
182
 
162
183
  @apiserver_cert_sans.setter
163
- def apiserver_cert_sans(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
184
+ def apiserver_cert_sans(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
164
185
  pulumi.set(self, "apiserver_cert_sans", value)
165
186
 
166
- @property
187
+ @_builtins.property
167
188
  @pulumi.getter(name="autoUpgrade")
168
189
  def auto_upgrade(self) -> Optional[pulumi.Input['KubernetesClusterAutoUpgradeArgs']]:
169
190
  """
@@ -175,7 +196,7 @@ class KubernetesClusterArgs:
175
196
  def auto_upgrade(self, value: Optional[pulumi.Input['KubernetesClusterAutoUpgradeArgs']]):
176
197
  pulumi.set(self, "auto_upgrade", value)
177
198
 
178
- @property
199
+ @_builtins.property
179
200
  @pulumi.getter(name="autoscalerConfig")
180
201
  def autoscaler_config(self) -> Optional[pulumi.Input['KubernetesClusterAutoscalerConfigArgs']]:
181
202
  """
@@ -187,43 +208,43 @@ class KubernetesClusterArgs:
187
208
  def autoscaler_config(self, value: Optional[pulumi.Input['KubernetesClusterAutoscalerConfigArgs']]):
188
209
  pulumi.set(self, "autoscaler_config", value)
189
210
 
190
- @property
211
+ @_builtins.property
191
212
  @pulumi.getter
192
- def description(self) -> Optional[pulumi.Input[str]]:
213
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
193
214
  """
194
215
  A description for the Kubernetes cluster.
195
216
  """
196
217
  return pulumi.get(self, "description")
197
218
 
198
219
  @description.setter
199
- def description(self, value: Optional[pulumi.Input[str]]):
220
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
200
221
  pulumi.set(self, "description", value)
201
222
 
202
- @property
223
+ @_builtins.property
203
224
  @pulumi.getter(name="featureGates")
204
- def feature_gates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
225
+ def feature_gates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
205
226
  """
206
227
  The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
207
228
  """
208
229
  return pulumi.get(self, "feature_gates")
209
230
 
210
231
  @feature_gates.setter
211
- def feature_gates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
232
+ def feature_gates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
212
233
  pulumi.set(self, "feature_gates", value)
213
234
 
214
- @property
235
+ @_builtins.property
215
236
  @pulumi.getter
216
- def name(self) -> Optional[pulumi.Input[str]]:
237
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
217
238
  """
218
239
  The name for the Kubernetes cluster.
219
240
  """
220
241
  return pulumi.get(self, "name")
221
242
 
222
243
  @name.setter
223
- def name(self, value: Optional[pulumi.Input[str]]):
244
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
224
245
  pulumi.set(self, "name", value)
225
246
 
226
- @property
247
+ @_builtins.property
227
248
  @pulumi.getter(name="openIdConnectConfig")
228
249
  def open_id_connect_config(self) -> Optional[pulumi.Input['KubernetesClusterOpenIdConnectConfigArgs']]:
229
250
  """
@@ -235,9 +256,24 @@ class KubernetesClusterArgs:
235
256
  def open_id_connect_config(self, value: Optional[pulumi.Input['KubernetesClusterOpenIdConnectConfigArgs']]):
236
257
  pulumi.set(self, "open_id_connect_config", value)
237
258
 
238
- @property
259
+ @_builtins.property
260
+ @pulumi.getter(name="podCidr")
261
+ def pod_cidr(self) -> Optional[pulumi.Input[_builtins.str]]:
262
+ """
263
+ The subnet used for the Pod CIDR.
264
+
265
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
266
+ unsetting it to go back to the default value will not have any effect.
267
+ """
268
+ return pulumi.get(self, "pod_cidr")
269
+
270
+ @pod_cidr.setter
271
+ def pod_cidr(self, value: Optional[pulumi.Input[_builtins.str]]):
272
+ pulumi.set(self, "pod_cidr", value)
273
+
274
+ @_builtins.property
239
275
  @pulumi.getter(name="privateNetworkId")
240
- def private_network_id(self) -> Optional[pulumi.Input[str]]:
276
+ def private_network_id(self) -> Optional[pulumi.Input[_builtins.str]]:
241
277
  """
242
278
  The ID of the private network of the cluster.
243
279
 
@@ -249,48 +285,78 @@ class KubernetesClusterArgs:
249
285
  return pulumi.get(self, "private_network_id")
250
286
 
251
287
  @private_network_id.setter
252
- def private_network_id(self, value: Optional[pulumi.Input[str]]):
288
+ def private_network_id(self, value: Optional[pulumi.Input[_builtins.str]]):
253
289
  pulumi.set(self, "private_network_id", value)
254
290
 
255
- @property
291
+ @_builtins.property
256
292
  @pulumi.getter(name="projectId")
257
- def project_id(self) -> Optional[pulumi.Input[str]]:
293
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
258
294
  """
259
295
  `project_id`) The ID of the project the cluster is associated with.
260
296
  """
261
297
  return pulumi.get(self, "project_id")
262
298
 
263
299
  @project_id.setter
264
- def project_id(self, value: Optional[pulumi.Input[str]]):
300
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
265
301
  pulumi.set(self, "project_id", value)
266
302
 
267
- @property
303
+ @_builtins.property
268
304
  @pulumi.getter
269
- def region(self) -> Optional[pulumi.Input[str]]:
305
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
270
306
  """
271
307
  `region`) The region in which the cluster should be created.
272
308
  """
273
309
  return pulumi.get(self, "region")
274
310
 
275
311
  @region.setter
276
- def region(self, value: Optional[pulumi.Input[str]]):
312
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
277
313
  pulumi.set(self, "region", value)
278
314
 
279
- @property
315
+ @_builtins.property
316
+ @pulumi.getter(name="serviceCidr")
317
+ def service_cidr(self) -> Optional[pulumi.Input[_builtins.str]]:
318
+ """
319
+ The subnet used for the Service CIDR.
320
+
321
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
322
+ unsetting it to go back to the default value will not have any effect.
323
+ """
324
+ return pulumi.get(self, "service_cidr")
325
+
326
+ @service_cidr.setter
327
+ def service_cidr(self, value: Optional[pulumi.Input[_builtins.str]]):
328
+ pulumi.set(self, "service_cidr", value)
329
+
330
+ @_builtins.property
331
+ @pulumi.getter(name="serviceDnsIp")
332
+ def service_dns_ip(self) -> Optional[pulumi.Input[_builtins.str]]:
333
+ """
334
+ The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
335
+
336
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
337
+ unsetting it to go back to the default value will not have any effect.
338
+ """
339
+ return pulumi.get(self, "service_dns_ip")
340
+
341
+ @service_dns_ip.setter
342
+ def service_dns_ip(self, value: Optional[pulumi.Input[_builtins.str]]):
343
+ pulumi.set(self, "service_dns_ip", value)
344
+
345
+ @_builtins.property
280
346
  @pulumi.getter
281
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
347
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
282
348
  """
283
349
  The tags associated with the Kubernetes cluster.
284
350
  """
285
351
  return pulumi.get(self, "tags")
286
352
 
287
353
  @tags.setter
288
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
354
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
289
355
  pulumi.set(self, "tags", value)
290
356
 
291
- @property
357
+ @_builtins.property
292
358
  @pulumi.getter
293
- def type(self) -> Optional[pulumi.Input[str]]:
359
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
294
360
  """
295
361
  The type of Kubernetes cluster. Possible values are:
296
362
 
@@ -303,77 +369,92 @@ class KubernetesClusterArgs:
303
369
  return pulumi.get(self, "type")
304
370
 
305
371
  @type.setter
306
- def type(self, value: Optional[pulumi.Input[str]]):
372
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
307
373
  pulumi.set(self, "type", value)
308
374
 
309
375
 
310
376
  @pulumi.input_type
311
377
  class _KubernetesClusterState:
312
378
  def __init__(__self__, *,
313
- admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
314
- apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
315
- apiserver_url: Optional[pulumi.Input[str]] = None,
379
+ admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
380
+ apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
381
+ apiserver_url: Optional[pulumi.Input[_builtins.str]] = None,
316
382
  auto_upgrade: Optional[pulumi.Input['KubernetesClusterAutoUpgradeArgs']] = None,
317
383
  autoscaler_config: Optional[pulumi.Input['KubernetesClusterAutoscalerConfigArgs']] = None,
318
- cni: Optional[pulumi.Input[str]] = None,
319
- created_at: Optional[pulumi.Input[str]] = None,
320
- delete_additional_resources: Optional[pulumi.Input[bool]] = None,
321
- description: Optional[pulumi.Input[str]] = None,
322
- feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
384
+ cni: Optional[pulumi.Input[_builtins.str]] = None,
385
+ created_at: Optional[pulumi.Input[_builtins.str]] = None,
386
+ delete_additional_resources: Optional[pulumi.Input[_builtins.bool]] = None,
387
+ description: Optional[pulumi.Input[_builtins.str]] = None,
388
+ feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
323
389
  kubeconfigs: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeconfigArgs']]]] = None,
324
- name: Optional[pulumi.Input[str]] = None,
390
+ name: Optional[pulumi.Input[_builtins.str]] = None,
325
391
  open_id_connect_config: Optional[pulumi.Input['KubernetesClusterOpenIdConnectConfigArgs']] = None,
326
- organization_id: Optional[pulumi.Input[str]] = None,
327
- private_network_id: Optional[pulumi.Input[str]] = None,
328
- project_id: Optional[pulumi.Input[str]] = None,
329
- region: Optional[pulumi.Input[str]] = None,
330
- status: Optional[pulumi.Input[str]] = None,
331
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
332
- type: Optional[pulumi.Input[str]] = None,
333
- updated_at: Optional[pulumi.Input[str]] = None,
334
- upgrade_available: Optional[pulumi.Input[bool]] = None,
335
- version: Optional[pulumi.Input[str]] = None,
336
- wildcard_dns: Optional[pulumi.Input[str]] = None):
392
+ organization_id: Optional[pulumi.Input[_builtins.str]] = None,
393
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
394
+ private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
395
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
396
+ region: Optional[pulumi.Input[_builtins.str]] = None,
397
+ service_cidr: Optional[pulumi.Input[_builtins.str]] = None,
398
+ service_dns_ip: Optional[pulumi.Input[_builtins.str]] = None,
399
+ status: Optional[pulumi.Input[_builtins.str]] = None,
400
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
401
+ type: Optional[pulumi.Input[_builtins.str]] = None,
402
+ updated_at: Optional[pulumi.Input[_builtins.str]] = None,
403
+ upgrade_available: Optional[pulumi.Input[_builtins.bool]] = None,
404
+ version: Optional[pulumi.Input[_builtins.str]] = None,
405
+ wildcard_dns: Optional[pulumi.Input[_builtins.str]] = None):
337
406
  """
338
407
  Input properties used for looking up and filtering KubernetesCluster resources.
339
- :param pulumi.Input[Sequence[pulumi.Input[str]]] admission_plugins: The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
340
- :param pulumi.Input[Sequence[pulumi.Input[str]]] apiserver_cert_sans: Additional Subject Alternative Names for the Kubernetes API server certificate
341
- :param pulumi.Input[str] apiserver_url: The URL of the Kubernetes API server.
408
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] admission_plugins: The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
409
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] apiserver_cert_sans: Additional Subject Alternative Names for the Kubernetes API server certificate
410
+ :param pulumi.Input[_builtins.str] apiserver_url: The URL of the Kubernetes API server.
342
411
  :param pulumi.Input['KubernetesClusterAutoUpgradeArgs'] auto_upgrade: The auto upgrade configuration.
343
412
  :param pulumi.Input['KubernetesClusterAutoscalerConfigArgs'] autoscaler_config: The configuration options for the [Kubernetes cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler).
344
- :param pulumi.Input[str] cni: The Container Network Interface (CNI) for the Kubernetes cluster.
413
+ :param pulumi.Input[_builtins.str] cni: The Container Network Interface (CNI) for the Kubernetes cluster.
345
414
  > **Important:** Updates to this field will recreate a new resource.
346
- :param pulumi.Input[str] created_at: The creation date of the cluster.
347
- :param pulumi.Input[bool] delete_additional_resources: Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
415
+ :param pulumi.Input[_builtins.str] created_at: The creation date of the cluster.
416
+ :param pulumi.Input[_builtins.bool] delete_additional_resources: Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
348
417
  > **Important:** Setting this field to `true` means that you will lose all your cluster data and network configuration when you delete your cluster.
349
418
  If you prefer keeping it, you should instead set it as `false`.
350
- :param pulumi.Input[str] description: A description for the Kubernetes cluster.
351
- :param pulumi.Input[Sequence[pulumi.Input[str]]] feature_gates: The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
419
+ :param pulumi.Input[_builtins.str] description: A description for the Kubernetes cluster.
420
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] feature_gates: The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
352
421
  :param pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeconfigArgs']]] kubeconfigs: The kubeconfig configuration file of the Kubernetes cluster
353
- :param pulumi.Input[str] name: The name for the Kubernetes cluster.
422
+ :param pulumi.Input[_builtins.str] name: The name for the Kubernetes cluster.
354
423
  :param pulumi.Input['KubernetesClusterOpenIdConnectConfigArgs'] open_id_connect_config: The OpenID Connect configuration of the cluster
355
- :param pulumi.Input[str] organization_id: The organization ID the cluster is associated with.
356
- :param pulumi.Input[str] private_network_id: The ID of the private network of the cluster.
424
+ :param pulumi.Input[_builtins.str] organization_id: The organization ID the cluster is associated with.
425
+ :param pulumi.Input[_builtins.str] pod_cidr: The subnet used for the Pod CIDR.
426
+
427
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
428
+ unsetting it to go back to the default value will not have any effect.
429
+ :param pulumi.Input[_builtins.str] private_network_id: The ID of the private network of the cluster.
357
430
 
358
431
  > **Important:** Changes to this field will recreate a new resource.
359
432
 
360
433
  > **Important:** Private Networks are now mandatory with Kapsule Clusters. If you have a legacy cluster (no `private_network_id` set),
361
434
  you can still set it now. In this case it will not destroy and recreate your cluster but migrate it to the Private Network.
362
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the cluster is associated with.
363
- :param pulumi.Input[str] region: `region`) The region in which the cluster should be created.
364
- :param pulumi.Input[str] status: The status of the Kubernetes cluster.
365
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the Kubernetes cluster.
366
- :param pulumi.Input[str] type: The type of Kubernetes cluster. Possible values are:
435
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the cluster is associated with.
436
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the cluster should be created.
437
+ :param pulumi.Input[_builtins.str] service_cidr: The subnet used for the Service CIDR.
438
+
439
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
440
+ unsetting it to go back to the default value will not have any effect.
441
+ :param pulumi.Input[_builtins.str] service_dns_ip: The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
442
+
443
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
444
+ unsetting it to go back to the default value will not have any effect.
445
+ :param pulumi.Input[_builtins.str] status: The status of the Kubernetes cluster.
446
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the Kubernetes cluster.
447
+ :param pulumi.Input[_builtins.str] type: The type of Kubernetes cluster. Possible values are:
367
448
 
368
449
  - for mutualized clusters: `kapsule` or `multicloud`
369
450
 
370
451
  - for dedicated Kapsule clusters: `kapsule-dedicated-4`, `kapsule-dedicated-8` or `kapsule-dedicated-16`.
371
452
 
372
453
  - for dedicated Kosmos clusters: `multicloud-dedicated-4`, `multicloud-dedicated-8` or `multicloud-dedicated-16`.
373
- :param pulumi.Input[str] updated_at: The last update date of the cluster.
374
- :param pulumi.Input[bool] upgrade_available: Set to `true` if a newer Kubernetes version is available.
375
- :param pulumi.Input[str] version: The version of the Kubernetes cluster.
376
- :param pulumi.Input[str] wildcard_dns: The DNS wildcard that points to all ready nodes.
454
+ :param pulumi.Input[_builtins.str] updated_at: The last update date of the cluster.
455
+ :param pulumi.Input[_builtins.bool] upgrade_available: Set to `true` if a newer Kubernetes version is available.
456
+ :param pulumi.Input[_builtins.str] version: The version of the Kubernetes cluster.
457
+ :param pulumi.Input[_builtins.str] wildcard_dns: The DNS wildcard that points to all ready nodes.
377
458
  """
378
459
  if admission_plugins is not None:
379
460
  pulumi.set(__self__, "admission_plugins", admission_plugins)
@@ -403,12 +484,18 @@ class _KubernetesClusterState:
403
484
  pulumi.set(__self__, "open_id_connect_config", open_id_connect_config)
404
485
  if organization_id is not None:
405
486
  pulumi.set(__self__, "organization_id", organization_id)
487
+ if pod_cidr is not None:
488
+ pulumi.set(__self__, "pod_cidr", pod_cidr)
406
489
  if private_network_id is not None:
407
490
  pulumi.set(__self__, "private_network_id", private_network_id)
408
491
  if project_id is not None:
409
492
  pulumi.set(__self__, "project_id", project_id)
410
493
  if region is not None:
411
494
  pulumi.set(__self__, "region", region)
495
+ if service_cidr is not None:
496
+ pulumi.set(__self__, "service_cidr", service_cidr)
497
+ if service_dns_ip is not None:
498
+ pulumi.set(__self__, "service_dns_ip", service_dns_ip)
412
499
  if status is not None:
413
500
  pulumi.set(__self__, "status", status)
414
501
  if tags is not None:
@@ -424,43 +511,43 @@ class _KubernetesClusterState:
424
511
  if wildcard_dns is not None:
425
512
  pulumi.set(__self__, "wildcard_dns", wildcard_dns)
426
513
 
427
- @property
514
+ @_builtins.property
428
515
  @pulumi.getter(name="admissionPlugins")
429
- def admission_plugins(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
516
+ def admission_plugins(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
430
517
  """
431
518
  The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
432
519
  """
433
520
  return pulumi.get(self, "admission_plugins")
434
521
 
435
522
  @admission_plugins.setter
436
- def admission_plugins(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
523
+ def admission_plugins(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
437
524
  pulumi.set(self, "admission_plugins", value)
438
525
 
439
- @property
526
+ @_builtins.property
440
527
  @pulumi.getter(name="apiserverCertSans")
441
- def apiserver_cert_sans(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
528
+ def apiserver_cert_sans(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
442
529
  """
443
530
  Additional Subject Alternative Names for the Kubernetes API server certificate
444
531
  """
445
532
  return pulumi.get(self, "apiserver_cert_sans")
446
533
 
447
534
  @apiserver_cert_sans.setter
448
- def apiserver_cert_sans(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
535
+ def apiserver_cert_sans(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
449
536
  pulumi.set(self, "apiserver_cert_sans", value)
450
537
 
451
- @property
538
+ @_builtins.property
452
539
  @pulumi.getter(name="apiserverUrl")
453
- def apiserver_url(self) -> Optional[pulumi.Input[str]]:
540
+ def apiserver_url(self) -> Optional[pulumi.Input[_builtins.str]]:
454
541
  """
455
542
  The URL of the Kubernetes API server.
456
543
  """
457
544
  return pulumi.get(self, "apiserver_url")
458
545
 
459
546
  @apiserver_url.setter
460
- def apiserver_url(self, value: Optional[pulumi.Input[str]]):
547
+ def apiserver_url(self, value: Optional[pulumi.Input[_builtins.str]]):
461
548
  pulumi.set(self, "apiserver_url", value)
462
549
 
463
- @property
550
+ @_builtins.property
464
551
  @pulumi.getter(name="autoUpgrade")
465
552
  def auto_upgrade(self) -> Optional[pulumi.Input['KubernetesClusterAutoUpgradeArgs']]:
466
553
  """
@@ -472,7 +559,7 @@ class _KubernetesClusterState:
472
559
  def auto_upgrade(self, value: Optional[pulumi.Input['KubernetesClusterAutoUpgradeArgs']]):
473
560
  pulumi.set(self, "auto_upgrade", value)
474
561
 
475
- @property
562
+ @_builtins.property
476
563
  @pulumi.getter(name="autoscalerConfig")
477
564
  def autoscaler_config(self) -> Optional[pulumi.Input['KubernetesClusterAutoscalerConfigArgs']]:
478
565
  """
@@ -484,9 +571,9 @@ class _KubernetesClusterState:
484
571
  def autoscaler_config(self, value: Optional[pulumi.Input['KubernetesClusterAutoscalerConfigArgs']]):
485
572
  pulumi.set(self, "autoscaler_config", value)
486
573
 
487
- @property
574
+ @_builtins.property
488
575
  @pulumi.getter
489
- def cni(self) -> Optional[pulumi.Input[str]]:
576
+ def cni(self) -> Optional[pulumi.Input[_builtins.str]]:
490
577
  """
491
578
  The Container Network Interface (CNI) for the Kubernetes cluster.
492
579
  > **Important:** Updates to this field will recreate a new resource.
@@ -494,24 +581,24 @@ class _KubernetesClusterState:
494
581
  return pulumi.get(self, "cni")
495
582
 
496
583
  @cni.setter
497
- def cni(self, value: Optional[pulumi.Input[str]]):
584
+ def cni(self, value: Optional[pulumi.Input[_builtins.str]]):
498
585
  pulumi.set(self, "cni", value)
499
586
 
500
- @property
587
+ @_builtins.property
501
588
  @pulumi.getter(name="createdAt")
502
- def created_at(self) -> Optional[pulumi.Input[str]]:
589
+ def created_at(self) -> Optional[pulumi.Input[_builtins.str]]:
503
590
  """
504
591
  The creation date of the cluster.
505
592
  """
506
593
  return pulumi.get(self, "created_at")
507
594
 
508
595
  @created_at.setter
509
- def created_at(self, value: Optional[pulumi.Input[str]]):
596
+ def created_at(self, value: Optional[pulumi.Input[_builtins.str]]):
510
597
  pulumi.set(self, "created_at", value)
511
598
 
512
- @property
599
+ @_builtins.property
513
600
  @pulumi.getter(name="deleteAdditionalResources")
514
- def delete_additional_resources(self) -> Optional[pulumi.Input[bool]]:
601
+ def delete_additional_resources(self) -> Optional[pulumi.Input[_builtins.bool]]:
515
602
  """
516
603
  Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
517
604
  > **Important:** Setting this field to `true` means that you will lose all your cluster data and network configuration when you delete your cluster.
@@ -520,34 +607,34 @@ class _KubernetesClusterState:
520
607
  return pulumi.get(self, "delete_additional_resources")
521
608
 
522
609
  @delete_additional_resources.setter
523
- def delete_additional_resources(self, value: Optional[pulumi.Input[bool]]):
610
+ def delete_additional_resources(self, value: Optional[pulumi.Input[_builtins.bool]]):
524
611
  pulumi.set(self, "delete_additional_resources", value)
525
612
 
526
- @property
613
+ @_builtins.property
527
614
  @pulumi.getter
528
- def description(self) -> Optional[pulumi.Input[str]]:
615
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
529
616
  """
530
617
  A description for the Kubernetes cluster.
531
618
  """
532
619
  return pulumi.get(self, "description")
533
620
 
534
621
  @description.setter
535
- def description(self, value: Optional[pulumi.Input[str]]):
622
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
536
623
  pulumi.set(self, "description", value)
537
624
 
538
- @property
625
+ @_builtins.property
539
626
  @pulumi.getter(name="featureGates")
540
- def feature_gates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
627
+ def feature_gates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
541
628
  """
542
629
  The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
543
630
  """
544
631
  return pulumi.get(self, "feature_gates")
545
632
 
546
633
  @feature_gates.setter
547
- def feature_gates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
634
+ def feature_gates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
548
635
  pulumi.set(self, "feature_gates", value)
549
636
 
550
- @property
637
+ @_builtins.property
551
638
  @pulumi.getter
552
639
  def kubeconfigs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeconfigArgs']]]]:
553
640
  """
@@ -559,19 +646,19 @@ class _KubernetesClusterState:
559
646
  def kubeconfigs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeconfigArgs']]]]):
560
647
  pulumi.set(self, "kubeconfigs", value)
561
648
 
562
- @property
649
+ @_builtins.property
563
650
  @pulumi.getter
564
- def name(self) -> Optional[pulumi.Input[str]]:
651
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
565
652
  """
566
653
  The name for the Kubernetes cluster.
567
654
  """
568
655
  return pulumi.get(self, "name")
569
656
 
570
657
  @name.setter
571
- def name(self, value: Optional[pulumi.Input[str]]):
658
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
572
659
  pulumi.set(self, "name", value)
573
660
 
574
- @property
661
+ @_builtins.property
575
662
  @pulumi.getter(name="openIdConnectConfig")
576
663
  def open_id_connect_config(self) -> Optional[pulumi.Input['KubernetesClusterOpenIdConnectConfigArgs']]:
577
664
  """
@@ -583,21 +670,36 @@ class _KubernetesClusterState:
583
670
  def open_id_connect_config(self, value: Optional[pulumi.Input['KubernetesClusterOpenIdConnectConfigArgs']]):
584
671
  pulumi.set(self, "open_id_connect_config", value)
585
672
 
586
- @property
673
+ @_builtins.property
587
674
  @pulumi.getter(name="organizationId")
588
- def organization_id(self) -> Optional[pulumi.Input[str]]:
675
+ def organization_id(self) -> Optional[pulumi.Input[_builtins.str]]:
589
676
  """
590
677
  The organization ID the cluster is associated with.
591
678
  """
592
679
  return pulumi.get(self, "organization_id")
593
680
 
594
681
  @organization_id.setter
595
- def organization_id(self, value: Optional[pulumi.Input[str]]):
682
+ def organization_id(self, value: Optional[pulumi.Input[_builtins.str]]):
596
683
  pulumi.set(self, "organization_id", value)
597
684
 
598
- @property
685
+ @_builtins.property
686
+ @pulumi.getter(name="podCidr")
687
+ def pod_cidr(self) -> Optional[pulumi.Input[_builtins.str]]:
688
+ """
689
+ The subnet used for the Pod CIDR.
690
+
691
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
692
+ unsetting it to go back to the default value will not have any effect.
693
+ """
694
+ return pulumi.get(self, "pod_cidr")
695
+
696
+ @pod_cidr.setter
697
+ def pod_cidr(self, value: Optional[pulumi.Input[_builtins.str]]):
698
+ pulumi.set(self, "pod_cidr", value)
699
+
700
+ @_builtins.property
599
701
  @pulumi.getter(name="privateNetworkId")
600
- def private_network_id(self) -> Optional[pulumi.Input[str]]:
702
+ def private_network_id(self) -> Optional[pulumi.Input[_builtins.str]]:
601
703
  """
602
704
  The ID of the private network of the cluster.
603
705
 
@@ -609,60 +711,90 @@ class _KubernetesClusterState:
609
711
  return pulumi.get(self, "private_network_id")
610
712
 
611
713
  @private_network_id.setter
612
- def private_network_id(self, value: Optional[pulumi.Input[str]]):
714
+ def private_network_id(self, value: Optional[pulumi.Input[_builtins.str]]):
613
715
  pulumi.set(self, "private_network_id", value)
614
716
 
615
- @property
717
+ @_builtins.property
616
718
  @pulumi.getter(name="projectId")
617
- def project_id(self) -> Optional[pulumi.Input[str]]:
719
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
618
720
  """
619
721
  `project_id`) The ID of the project the cluster is associated with.
620
722
  """
621
723
  return pulumi.get(self, "project_id")
622
724
 
623
725
  @project_id.setter
624
- def project_id(self, value: Optional[pulumi.Input[str]]):
726
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
625
727
  pulumi.set(self, "project_id", value)
626
728
 
627
- @property
729
+ @_builtins.property
628
730
  @pulumi.getter
629
- def region(self) -> Optional[pulumi.Input[str]]:
731
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
630
732
  """
631
733
  `region`) The region in which the cluster should be created.
632
734
  """
633
735
  return pulumi.get(self, "region")
634
736
 
635
737
  @region.setter
636
- def region(self, value: Optional[pulumi.Input[str]]):
738
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
637
739
  pulumi.set(self, "region", value)
638
740
 
639
- @property
741
+ @_builtins.property
742
+ @pulumi.getter(name="serviceCidr")
743
+ def service_cidr(self) -> Optional[pulumi.Input[_builtins.str]]:
744
+ """
745
+ The subnet used for the Service CIDR.
746
+
747
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
748
+ unsetting it to go back to the default value will not have any effect.
749
+ """
750
+ return pulumi.get(self, "service_cidr")
751
+
752
+ @service_cidr.setter
753
+ def service_cidr(self, value: Optional[pulumi.Input[_builtins.str]]):
754
+ pulumi.set(self, "service_cidr", value)
755
+
756
+ @_builtins.property
757
+ @pulumi.getter(name="serviceDnsIp")
758
+ def service_dns_ip(self) -> Optional[pulumi.Input[_builtins.str]]:
759
+ """
760
+ The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
761
+
762
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
763
+ unsetting it to go back to the default value will not have any effect.
764
+ """
765
+ return pulumi.get(self, "service_dns_ip")
766
+
767
+ @service_dns_ip.setter
768
+ def service_dns_ip(self, value: Optional[pulumi.Input[_builtins.str]]):
769
+ pulumi.set(self, "service_dns_ip", value)
770
+
771
+ @_builtins.property
640
772
  @pulumi.getter
641
- def status(self) -> Optional[pulumi.Input[str]]:
773
+ def status(self) -> Optional[pulumi.Input[_builtins.str]]:
642
774
  """
643
775
  The status of the Kubernetes cluster.
644
776
  """
645
777
  return pulumi.get(self, "status")
646
778
 
647
779
  @status.setter
648
- def status(self, value: Optional[pulumi.Input[str]]):
780
+ def status(self, value: Optional[pulumi.Input[_builtins.str]]):
649
781
  pulumi.set(self, "status", value)
650
782
 
651
- @property
783
+ @_builtins.property
652
784
  @pulumi.getter
653
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
785
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
654
786
  """
655
787
  The tags associated with the Kubernetes cluster.
656
788
  """
657
789
  return pulumi.get(self, "tags")
658
790
 
659
791
  @tags.setter
660
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
792
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
661
793
  pulumi.set(self, "tags", value)
662
794
 
663
- @property
795
+ @_builtins.property
664
796
  @pulumi.getter
665
- def type(self) -> Optional[pulumi.Input[str]]:
797
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
666
798
  """
667
799
  The type of Kubernetes cluster. Possible values are:
668
800
 
@@ -675,61 +807,62 @@ class _KubernetesClusterState:
675
807
  return pulumi.get(self, "type")
676
808
 
677
809
  @type.setter
678
- def type(self, value: Optional[pulumi.Input[str]]):
810
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
679
811
  pulumi.set(self, "type", value)
680
812
 
681
- @property
813
+ @_builtins.property
682
814
  @pulumi.getter(name="updatedAt")
683
- def updated_at(self) -> Optional[pulumi.Input[str]]:
815
+ def updated_at(self) -> Optional[pulumi.Input[_builtins.str]]:
684
816
  """
685
817
  The last update date of the cluster.
686
818
  """
687
819
  return pulumi.get(self, "updated_at")
688
820
 
689
821
  @updated_at.setter
690
- def updated_at(self, value: Optional[pulumi.Input[str]]):
822
+ def updated_at(self, value: Optional[pulumi.Input[_builtins.str]]):
691
823
  pulumi.set(self, "updated_at", value)
692
824
 
693
- @property
825
+ @_builtins.property
694
826
  @pulumi.getter(name="upgradeAvailable")
695
- def upgrade_available(self) -> Optional[pulumi.Input[bool]]:
827
+ def upgrade_available(self) -> Optional[pulumi.Input[_builtins.bool]]:
696
828
  """
697
829
  Set to `true` if a newer Kubernetes version is available.
698
830
  """
699
831
  return pulumi.get(self, "upgrade_available")
700
832
 
701
833
  @upgrade_available.setter
702
- def upgrade_available(self, value: Optional[pulumi.Input[bool]]):
834
+ def upgrade_available(self, value: Optional[pulumi.Input[_builtins.bool]]):
703
835
  pulumi.set(self, "upgrade_available", value)
704
836
 
705
- @property
837
+ @_builtins.property
706
838
  @pulumi.getter
707
- def version(self) -> Optional[pulumi.Input[str]]:
839
+ def version(self) -> Optional[pulumi.Input[_builtins.str]]:
708
840
  """
709
841
  The version of the Kubernetes cluster.
710
842
  """
711
843
  return pulumi.get(self, "version")
712
844
 
713
845
  @version.setter
714
- def version(self, value: Optional[pulumi.Input[str]]):
846
+ def version(self, value: Optional[pulumi.Input[_builtins.str]]):
715
847
  pulumi.set(self, "version", value)
716
848
 
717
- @property
849
+ @_builtins.property
718
850
  @pulumi.getter(name="wildcardDns")
719
- def wildcard_dns(self) -> Optional[pulumi.Input[str]]:
851
+ def wildcard_dns(self) -> Optional[pulumi.Input[_builtins.str]]:
720
852
  """
721
853
  The DNS wildcard that points to all ready nodes.
722
854
  """
723
855
  return pulumi.get(self, "wildcard_dns")
724
856
 
725
857
  @wildcard_dns.setter
726
- def wildcard_dns(self, value: Optional[pulumi.Input[str]]):
858
+ def wildcard_dns(self, value: Optional[pulumi.Input[_builtins.str]]):
727
859
  pulumi.set(self, "wildcard_dns", value)
728
860
 
729
861
 
730
862
  warnings.warn("""scaleway.index/kubernetescluster.KubernetesCluster has been deprecated in favor of scaleway.kubernetes/cluster.Cluster""", DeprecationWarning)
731
863
 
732
864
 
865
+ @pulumi.type_token("scaleway:index/kubernetesCluster:KubernetesCluster")
733
866
  class KubernetesCluster(pulumi.CustomResource):
734
867
  warnings.warn("""scaleway.index/kubernetescluster.KubernetesCluster has been deprecated in favor of scaleway.kubernetes/cluster.Cluster""", DeprecationWarning)
735
868
 
@@ -737,22 +870,25 @@ class KubernetesCluster(pulumi.CustomResource):
737
870
  def __init__(__self__,
738
871
  resource_name: str,
739
872
  opts: Optional[pulumi.ResourceOptions] = None,
740
- admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
741
- apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
873
+ admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
874
+ apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
742
875
  auto_upgrade: Optional[pulumi.Input[Union['KubernetesClusterAutoUpgradeArgs', 'KubernetesClusterAutoUpgradeArgsDict']]] = None,
743
876
  autoscaler_config: Optional[pulumi.Input[Union['KubernetesClusterAutoscalerConfigArgs', 'KubernetesClusterAutoscalerConfigArgsDict']]] = None,
744
- cni: Optional[pulumi.Input[str]] = None,
745
- delete_additional_resources: Optional[pulumi.Input[bool]] = None,
746
- description: Optional[pulumi.Input[str]] = None,
747
- feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
748
- name: Optional[pulumi.Input[str]] = None,
877
+ cni: Optional[pulumi.Input[_builtins.str]] = None,
878
+ delete_additional_resources: Optional[pulumi.Input[_builtins.bool]] = None,
879
+ description: Optional[pulumi.Input[_builtins.str]] = None,
880
+ feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
881
+ name: Optional[pulumi.Input[_builtins.str]] = None,
749
882
  open_id_connect_config: Optional[pulumi.Input[Union['KubernetesClusterOpenIdConnectConfigArgs', 'KubernetesClusterOpenIdConnectConfigArgsDict']]] = None,
750
- private_network_id: Optional[pulumi.Input[str]] = None,
751
- project_id: Optional[pulumi.Input[str]] = None,
752
- region: Optional[pulumi.Input[str]] = None,
753
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
754
- type: Optional[pulumi.Input[str]] = None,
755
- version: Optional[pulumi.Input[str]] = None,
883
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
884
+ private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
885
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
886
+ region: Optional[pulumi.Input[_builtins.str]] = None,
887
+ service_cidr: Optional[pulumi.Input[_builtins.str]] = None,
888
+ service_dns_ip: Optional[pulumi.Input[_builtins.str]] = None,
889
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
890
+ type: Optional[pulumi.Input[_builtins.str]] = None,
891
+ version: Optional[pulumi.Input[_builtins.str]] = None,
756
892
  __props__=None):
757
893
  """
758
894
  Creates and manages Scaleway Kubernetes clusters. For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/kubernetes/).
@@ -768,7 +904,7 @@ class KubernetesCluster(pulumi.CustomResource):
768
904
  pn = scaleway.network.PrivateNetwork("pn")
769
905
  cluster = scaleway.kubernetes.Cluster("cluster",
770
906
  name="tf-cluster",
771
- version="1.29.1",
907
+ version="1.32.3",
772
908
  cni="cilium",
773
909
  private_network_id=pn.id,
774
910
  delete_additional_resources=False)
@@ -788,7 +924,7 @@ class KubernetesCluster(pulumi.CustomResource):
788
924
  cluster = scaleway.kubernetes.Cluster("cluster",
789
925
  name="tf-cluster",
790
926
  type="multicloud",
791
- version="1.29.1",
927
+ version="1.32.3",
792
928
  cni="kilo",
793
929
  delete_additional_resources=False)
794
930
  pool = scaleway.kubernetes.Pool("pool",
@@ -811,7 +947,7 @@ class KubernetesCluster(pulumi.CustomResource):
811
947
  cluster = scaleway.kubernetes.Cluster("cluster",
812
948
  name="tf-cluster",
813
949
  description="cluster made in terraform",
814
- version="1.29.1",
950
+ version="1.32.3",
815
951
  cni="calico",
816
952
  tags=["terraform"],
817
953
  private_network_id=pn.id,
@@ -858,7 +994,7 @@ class KubernetesCluster(pulumi.CustomResource):
858
994
  kubeconfig = null.Resource("kubeconfig", triggers={
859
995
  "host": cluster.kubeconfigs[0].host,
860
996
  "token": cluster.kubeconfigs[0].token,
861
- "cluster_ca_certificate": cluster.kubeconfigs[0].cluster_ca_certificate,
997
+ "clusterCaCertificate": cluster.kubeconfigs[0].cluster_ca_certificate,
862
998
  },
863
999
  opts = pulumi.ResourceOptions(depends_on=[pool]))
864
1000
  ```
@@ -889,7 +1025,7 @@ class KubernetesCluster(pulumi.CustomResource):
889
1025
  kubeconfig = null.Resource("kubeconfig", triggers={
890
1026
  "host": cluster.kubeconfigs[0].host,
891
1027
  "token": cluster.kubeconfigs[0].token,
892
- "cluster_ca_certificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1028
+ "clusterCaCertificate": cluster.kubeconfigs[0].cluster_ca_certificate,
893
1029
  },
894
1030
  opts = pulumi.ResourceOptions(depends_on=[pool]))
895
1031
  nginx_ip = scaleway.loadbalancers.Ip("nginx_ip",
@@ -924,6 +1060,47 @@ class KubernetesCluster(pulumi.CustomResource):
924
1060
  ])
925
1061
  ```
926
1062
 
1063
+ ## Deprecation of default_pool
1064
+
1065
+ `default_pool` is deprecated in favour the `kubernetes.Pool` resource. Here is a migration example.
1066
+
1067
+ Before:
1068
+
1069
+ ```python
1070
+ import pulumi
1071
+ import pulumiverse_scaleway as scaleway
1072
+
1073
+ cluster = scaleway.kubernetes.Cluster("cluster",
1074
+ name="tf-cluster",
1075
+ version="1.18.0",
1076
+ cni="cilium",
1077
+ default_pool=[{
1078
+ "nodeType": "DEV1-M",
1079
+ "size": 1,
1080
+ }])
1081
+ ```
1082
+
1083
+ After:
1084
+
1085
+ ```python
1086
+ import pulumi
1087
+ import pulumiverse_scaleway as scaleway
1088
+
1089
+ cluster = scaleway.kubernetes.Cluster("cluster",
1090
+ name="tf-cluster",
1091
+ version="1.18.0",
1092
+ cni="cilium")
1093
+ default = scaleway.kubernetes.Pool("default",
1094
+ cluster_id=jack["id"],
1095
+ name="default",
1096
+ node_type="DEV1-M",
1097
+ size=1)
1098
+ ```
1099
+
1100
+ Once you have moved all the `default_pool` into their own object, you will need to import them. If your pool had the ID 11111111-1111-1111-1111-111111111111 in the `fr-par` region, you can import it by typing:
1101
+
1102
+ Then you will only need to type `pulumi up` to have a smooth migration.
1103
+
927
1104
  ## Import
928
1105
 
929
1106
  Kubernetes clusters can be imported using the `{region}/{id}`, e.g.
@@ -936,36 +1113,48 @@ class KubernetesCluster(pulumi.CustomResource):
936
1113
 
937
1114
  :param str resource_name: The name of the resource.
938
1115
  :param pulumi.ResourceOptions opts: Options for the resource.
939
- :param pulumi.Input[Sequence[pulumi.Input[str]]] admission_plugins: The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
940
- :param pulumi.Input[Sequence[pulumi.Input[str]]] apiserver_cert_sans: Additional Subject Alternative Names for the Kubernetes API server certificate
1116
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] admission_plugins: The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
1117
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] apiserver_cert_sans: Additional Subject Alternative Names for the Kubernetes API server certificate
941
1118
  :param pulumi.Input[Union['KubernetesClusterAutoUpgradeArgs', 'KubernetesClusterAutoUpgradeArgsDict']] auto_upgrade: The auto upgrade configuration.
942
1119
  :param pulumi.Input[Union['KubernetesClusterAutoscalerConfigArgs', 'KubernetesClusterAutoscalerConfigArgsDict']] autoscaler_config: The configuration options for the [Kubernetes cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler).
943
- :param pulumi.Input[str] cni: The Container Network Interface (CNI) for the Kubernetes cluster.
1120
+ :param pulumi.Input[_builtins.str] cni: The Container Network Interface (CNI) for the Kubernetes cluster.
944
1121
  > **Important:** Updates to this field will recreate a new resource.
945
- :param pulumi.Input[bool] delete_additional_resources: Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
1122
+ :param pulumi.Input[_builtins.bool] delete_additional_resources: Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
946
1123
  > **Important:** Setting this field to `true` means that you will lose all your cluster data and network configuration when you delete your cluster.
947
1124
  If you prefer keeping it, you should instead set it as `false`.
948
- :param pulumi.Input[str] description: A description for the Kubernetes cluster.
949
- :param pulumi.Input[Sequence[pulumi.Input[str]]] feature_gates: The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
950
- :param pulumi.Input[str] name: The name for the Kubernetes cluster.
1125
+ :param pulumi.Input[_builtins.str] description: A description for the Kubernetes cluster.
1126
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] feature_gates: The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
1127
+ :param pulumi.Input[_builtins.str] name: The name for the Kubernetes cluster.
951
1128
  :param pulumi.Input[Union['KubernetesClusterOpenIdConnectConfigArgs', 'KubernetesClusterOpenIdConnectConfigArgsDict']] open_id_connect_config: The OpenID Connect configuration of the cluster
952
- :param pulumi.Input[str] private_network_id: The ID of the private network of the cluster.
1129
+ :param pulumi.Input[_builtins.str] pod_cidr: The subnet used for the Pod CIDR.
1130
+
1131
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1132
+ unsetting it to go back to the default value will not have any effect.
1133
+ :param pulumi.Input[_builtins.str] private_network_id: The ID of the private network of the cluster.
953
1134
 
954
1135
  > **Important:** Changes to this field will recreate a new resource.
955
1136
 
956
1137
  > **Important:** Private Networks are now mandatory with Kapsule Clusters. If you have a legacy cluster (no `private_network_id` set),
957
1138
  you can still set it now. In this case it will not destroy and recreate your cluster but migrate it to the Private Network.
958
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the cluster is associated with.
959
- :param pulumi.Input[str] region: `region`) The region in which the cluster should be created.
960
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the Kubernetes cluster.
961
- :param pulumi.Input[str] type: The type of Kubernetes cluster. Possible values are:
1139
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the cluster is associated with.
1140
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the cluster should be created.
1141
+ :param pulumi.Input[_builtins.str] service_cidr: The subnet used for the Service CIDR.
1142
+
1143
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1144
+ unsetting it to go back to the default value will not have any effect.
1145
+ :param pulumi.Input[_builtins.str] service_dns_ip: The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
1146
+
1147
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1148
+ unsetting it to go back to the default value will not have any effect.
1149
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the Kubernetes cluster.
1150
+ :param pulumi.Input[_builtins.str] type: The type of Kubernetes cluster. Possible values are:
962
1151
 
963
1152
  - for mutualized clusters: `kapsule` or `multicloud`
964
1153
 
965
1154
  - for dedicated Kapsule clusters: `kapsule-dedicated-4`, `kapsule-dedicated-8` or `kapsule-dedicated-16`.
966
1155
 
967
1156
  - for dedicated Kosmos clusters: `multicloud-dedicated-4`, `multicloud-dedicated-8` or `multicloud-dedicated-16`.
968
- :param pulumi.Input[str] version: The version of the Kubernetes cluster.
1157
+ :param pulumi.Input[_builtins.str] version: The version of the Kubernetes cluster.
969
1158
  """
970
1159
  ...
971
1160
  @overload
@@ -987,7 +1176,7 @@ class KubernetesCluster(pulumi.CustomResource):
987
1176
  pn = scaleway.network.PrivateNetwork("pn")
988
1177
  cluster = scaleway.kubernetes.Cluster("cluster",
989
1178
  name="tf-cluster",
990
- version="1.29.1",
1179
+ version="1.32.3",
991
1180
  cni="cilium",
992
1181
  private_network_id=pn.id,
993
1182
  delete_additional_resources=False)
@@ -1007,7 +1196,7 @@ class KubernetesCluster(pulumi.CustomResource):
1007
1196
  cluster = scaleway.kubernetes.Cluster("cluster",
1008
1197
  name="tf-cluster",
1009
1198
  type="multicloud",
1010
- version="1.29.1",
1199
+ version="1.32.3",
1011
1200
  cni="kilo",
1012
1201
  delete_additional_resources=False)
1013
1202
  pool = scaleway.kubernetes.Pool("pool",
@@ -1030,7 +1219,7 @@ class KubernetesCluster(pulumi.CustomResource):
1030
1219
  cluster = scaleway.kubernetes.Cluster("cluster",
1031
1220
  name="tf-cluster",
1032
1221
  description="cluster made in terraform",
1033
- version="1.29.1",
1222
+ version="1.32.3",
1034
1223
  cni="calico",
1035
1224
  tags=["terraform"],
1036
1225
  private_network_id=pn.id,
@@ -1077,7 +1266,7 @@ class KubernetesCluster(pulumi.CustomResource):
1077
1266
  kubeconfig = null.Resource("kubeconfig", triggers={
1078
1267
  "host": cluster.kubeconfigs[0].host,
1079
1268
  "token": cluster.kubeconfigs[0].token,
1080
- "cluster_ca_certificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1269
+ "clusterCaCertificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1081
1270
  },
1082
1271
  opts = pulumi.ResourceOptions(depends_on=[pool]))
1083
1272
  ```
@@ -1108,7 +1297,7 @@ class KubernetesCluster(pulumi.CustomResource):
1108
1297
  kubeconfig = null.Resource("kubeconfig", triggers={
1109
1298
  "host": cluster.kubeconfigs[0].host,
1110
1299
  "token": cluster.kubeconfigs[0].token,
1111
- "cluster_ca_certificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1300
+ "clusterCaCertificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1112
1301
  },
1113
1302
  opts = pulumi.ResourceOptions(depends_on=[pool]))
1114
1303
  nginx_ip = scaleway.loadbalancers.Ip("nginx_ip",
@@ -1143,6 +1332,47 @@ class KubernetesCluster(pulumi.CustomResource):
1143
1332
  ])
1144
1333
  ```
1145
1334
 
1335
+ ## Deprecation of default_pool
1336
+
1337
+ `default_pool` is deprecated in favour the `kubernetes.Pool` resource. Here is a migration example.
1338
+
1339
+ Before:
1340
+
1341
+ ```python
1342
+ import pulumi
1343
+ import pulumiverse_scaleway as scaleway
1344
+
1345
+ cluster = scaleway.kubernetes.Cluster("cluster",
1346
+ name="tf-cluster",
1347
+ version="1.18.0",
1348
+ cni="cilium",
1349
+ default_pool=[{
1350
+ "nodeType": "DEV1-M",
1351
+ "size": 1,
1352
+ }])
1353
+ ```
1354
+
1355
+ After:
1356
+
1357
+ ```python
1358
+ import pulumi
1359
+ import pulumiverse_scaleway as scaleway
1360
+
1361
+ cluster = scaleway.kubernetes.Cluster("cluster",
1362
+ name="tf-cluster",
1363
+ version="1.18.0",
1364
+ cni="cilium")
1365
+ default = scaleway.kubernetes.Pool("default",
1366
+ cluster_id=jack["id"],
1367
+ name="default",
1368
+ node_type="DEV1-M",
1369
+ size=1)
1370
+ ```
1371
+
1372
+ Once you have moved all the `default_pool` into their own object, you will need to import them. If your pool had the ID 11111111-1111-1111-1111-111111111111 in the `fr-par` region, you can import it by typing:
1373
+
1374
+ Then you will only need to type `pulumi up` to have a smooth migration.
1375
+
1146
1376
  ## Import
1147
1377
 
1148
1378
  Kubernetes clusters can be imported using the `{region}/{id}`, e.g.
@@ -1168,22 +1398,25 @@ class KubernetesCluster(pulumi.CustomResource):
1168
1398
  def _internal_init(__self__,
1169
1399
  resource_name: str,
1170
1400
  opts: Optional[pulumi.ResourceOptions] = None,
1171
- admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1172
- apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1401
+ admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1402
+ apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1173
1403
  auto_upgrade: Optional[pulumi.Input[Union['KubernetesClusterAutoUpgradeArgs', 'KubernetesClusterAutoUpgradeArgsDict']]] = None,
1174
1404
  autoscaler_config: Optional[pulumi.Input[Union['KubernetesClusterAutoscalerConfigArgs', 'KubernetesClusterAutoscalerConfigArgsDict']]] = None,
1175
- cni: Optional[pulumi.Input[str]] = None,
1176
- delete_additional_resources: Optional[pulumi.Input[bool]] = None,
1177
- description: Optional[pulumi.Input[str]] = None,
1178
- feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1179
- name: Optional[pulumi.Input[str]] = None,
1405
+ cni: Optional[pulumi.Input[_builtins.str]] = None,
1406
+ delete_additional_resources: Optional[pulumi.Input[_builtins.bool]] = None,
1407
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1408
+ feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1409
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1180
1410
  open_id_connect_config: Optional[pulumi.Input[Union['KubernetesClusterOpenIdConnectConfigArgs', 'KubernetesClusterOpenIdConnectConfigArgsDict']]] = None,
1181
- private_network_id: Optional[pulumi.Input[str]] = None,
1182
- project_id: Optional[pulumi.Input[str]] = None,
1183
- region: Optional[pulumi.Input[str]] = None,
1184
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1185
- type: Optional[pulumi.Input[str]] = None,
1186
- version: Optional[pulumi.Input[str]] = None,
1411
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
1412
+ private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
1413
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
1414
+ region: Optional[pulumi.Input[_builtins.str]] = None,
1415
+ service_cidr: Optional[pulumi.Input[_builtins.str]] = None,
1416
+ service_dns_ip: Optional[pulumi.Input[_builtins.str]] = None,
1417
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1418
+ type: Optional[pulumi.Input[_builtins.str]] = None,
1419
+ version: Optional[pulumi.Input[_builtins.str]] = None,
1187
1420
  __props__=None):
1188
1421
  pulumi.log.warn("""KubernetesCluster is deprecated: scaleway.index/kubernetescluster.KubernetesCluster has been deprecated in favor of scaleway.kubernetes/cluster.Cluster""")
1189
1422
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1208,9 +1441,12 @@ class KubernetesCluster(pulumi.CustomResource):
1208
1441
  __props__.__dict__["feature_gates"] = feature_gates
1209
1442
  __props__.__dict__["name"] = name
1210
1443
  __props__.__dict__["open_id_connect_config"] = open_id_connect_config
1444
+ __props__.__dict__["pod_cidr"] = pod_cidr
1211
1445
  __props__.__dict__["private_network_id"] = private_network_id
1212
1446
  __props__.__dict__["project_id"] = project_id
1213
1447
  __props__.__dict__["region"] = region
1448
+ __props__.__dict__["service_cidr"] = service_cidr
1449
+ __props__.__dict__["service_dns_ip"] = service_dns_ip
1214
1450
  __props__.__dict__["tags"] = tags
1215
1451
  __props__.__dict__["type"] = type
1216
1452
  if version is None and not opts.urn:
@@ -1236,30 +1472,33 @@ class KubernetesCluster(pulumi.CustomResource):
1236
1472
  def get(resource_name: str,
1237
1473
  id: pulumi.Input[str],
1238
1474
  opts: Optional[pulumi.ResourceOptions] = None,
1239
- admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1240
- apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1241
- apiserver_url: Optional[pulumi.Input[str]] = None,
1475
+ admission_plugins: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1476
+ apiserver_cert_sans: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1477
+ apiserver_url: Optional[pulumi.Input[_builtins.str]] = None,
1242
1478
  auto_upgrade: Optional[pulumi.Input[Union['KubernetesClusterAutoUpgradeArgs', 'KubernetesClusterAutoUpgradeArgsDict']]] = None,
1243
1479
  autoscaler_config: Optional[pulumi.Input[Union['KubernetesClusterAutoscalerConfigArgs', 'KubernetesClusterAutoscalerConfigArgsDict']]] = None,
1244
- cni: Optional[pulumi.Input[str]] = None,
1245
- created_at: Optional[pulumi.Input[str]] = None,
1246
- delete_additional_resources: Optional[pulumi.Input[bool]] = None,
1247
- description: Optional[pulumi.Input[str]] = None,
1248
- feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1480
+ cni: Optional[pulumi.Input[_builtins.str]] = None,
1481
+ created_at: Optional[pulumi.Input[_builtins.str]] = None,
1482
+ delete_additional_resources: Optional[pulumi.Input[_builtins.bool]] = None,
1483
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1484
+ feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1249
1485
  kubeconfigs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterKubeconfigArgs', 'KubernetesClusterKubeconfigArgsDict']]]]] = None,
1250
- name: Optional[pulumi.Input[str]] = None,
1486
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1251
1487
  open_id_connect_config: Optional[pulumi.Input[Union['KubernetesClusterOpenIdConnectConfigArgs', 'KubernetesClusterOpenIdConnectConfigArgsDict']]] = None,
1252
- organization_id: Optional[pulumi.Input[str]] = None,
1253
- private_network_id: Optional[pulumi.Input[str]] = None,
1254
- project_id: Optional[pulumi.Input[str]] = None,
1255
- region: Optional[pulumi.Input[str]] = None,
1256
- status: Optional[pulumi.Input[str]] = None,
1257
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1258
- type: Optional[pulumi.Input[str]] = None,
1259
- updated_at: Optional[pulumi.Input[str]] = None,
1260
- upgrade_available: Optional[pulumi.Input[bool]] = None,
1261
- version: Optional[pulumi.Input[str]] = None,
1262
- wildcard_dns: Optional[pulumi.Input[str]] = None) -> 'KubernetesCluster':
1488
+ organization_id: Optional[pulumi.Input[_builtins.str]] = None,
1489
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
1490
+ private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
1491
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
1492
+ region: Optional[pulumi.Input[_builtins.str]] = None,
1493
+ service_cidr: Optional[pulumi.Input[_builtins.str]] = None,
1494
+ service_dns_ip: Optional[pulumi.Input[_builtins.str]] = None,
1495
+ status: Optional[pulumi.Input[_builtins.str]] = None,
1496
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1497
+ type: Optional[pulumi.Input[_builtins.str]] = None,
1498
+ updated_at: Optional[pulumi.Input[_builtins.str]] = None,
1499
+ upgrade_available: Optional[pulumi.Input[_builtins.bool]] = None,
1500
+ version: Optional[pulumi.Input[_builtins.str]] = None,
1501
+ wildcard_dns: Optional[pulumi.Input[_builtins.str]] = None) -> 'KubernetesCluster':
1263
1502
  """
1264
1503
  Get an existing KubernetesCluster resource's state with the given name, id, and optional extra
1265
1504
  properties used to qualify the lookup.
@@ -1267,44 +1506,56 @@ class KubernetesCluster(pulumi.CustomResource):
1267
1506
  :param str resource_name: The unique name of the resulting resource.
1268
1507
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1269
1508
  :param pulumi.ResourceOptions opts: Options for the resource.
1270
- :param pulumi.Input[Sequence[pulumi.Input[str]]] admission_plugins: The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
1271
- :param pulumi.Input[Sequence[pulumi.Input[str]]] apiserver_cert_sans: Additional Subject Alternative Names for the Kubernetes API server certificate
1272
- :param pulumi.Input[str] apiserver_url: The URL of the Kubernetes API server.
1509
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] admission_plugins: The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
1510
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] apiserver_cert_sans: Additional Subject Alternative Names for the Kubernetes API server certificate
1511
+ :param pulumi.Input[_builtins.str] apiserver_url: The URL of the Kubernetes API server.
1273
1512
  :param pulumi.Input[Union['KubernetesClusterAutoUpgradeArgs', 'KubernetesClusterAutoUpgradeArgsDict']] auto_upgrade: The auto upgrade configuration.
1274
1513
  :param pulumi.Input[Union['KubernetesClusterAutoscalerConfigArgs', 'KubernetesClusterAutoscalerConfigArgsDict']] autoscaler_config: The configuration options for the [Kubernetes cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler).
1275
- :param pulumi.Input[str] cni: The Container Network Interface (CNI) for the Kubernetes cluster.
1514
+ :param pulumi.Input[_builtins.str] cni: The Container Network Interface (CNI) for the Kubernetes cluster.
1276
1515
  > **Important:** Updates to this field will recreate a new resource.
1277
- :param pulumi.Input[str] created_at: The creation date of the cluster.
1278
- :param pulumi.Input[bool] delete_additional_resources: Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
1516
+ :param pulumi.Input[_builtins.str] created_at: The creation date of the cluster.
1517
+ :param pulumi.Input[_builtins.bool] delete_additional_resources: Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
1279
1518
  > **Important:** Setting this field to `true` means that you will lose all your cluster data and network configuration when you delete your cluster.
1280
1519
  If you prefer keeping it, you should instead set it as `false`.
1281
- :param pulumi.Input[str] description: A description for the Kubernetes cluster.
1282
- :param pulumi.Input[Sequence[pulumi.Input[str]]] feature_gates: The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
1520
+ :param pulumi.Input[_builtins.str] description: A description for the Kubernetes cluster.
1521
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] feature_gates: The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
1283
1522
  :param pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterKubeconfigArgs', 'KubernetesClusterKubeconfigArgsDict']]]] kubeconfigs: The kubeconfig configuration file of the Kubernetes cluster
1284
- :param pulumi.Input[str] name: The name for the Kubernetes cluster.
1523
+ :param pulumi.Input[_builtins.str] name: The name for the Kubernetes cluster.
1285
1524
  :param pulumi.Input[Union['KubernetesClusterOpenIdConnectConfigArgs', 'KubernetesClusterOpenIdConnectConfigArgsDict']] open_id_connect_config: The OpenID Connect configuration of the cluster
1286
- :param pulumi.Input[str] organization_id: The organization ID the cluster is associated with.
1287
- :param pulumi.Input[str] private_network_id: The ID of the private network of the cluster.
1525
+ :param pulumi.Input[_builtins.str] organization_id: The organization ID the cluster is associated with.
1526
+ :param pulumi.Input[_builtins.str] pod_cidr: The subnet used for the Pod CIDR.
1527
+
1528
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1529
+ unsetting it to go back to the default value will not have any effect.
1530
+ :param pulumi.Input[_builtins.str] private_network_id: The ID of the private network of the cluster.
1288
1531
 
1289
1532
  > **Important:** Changes to this field will recreate a new resource.
1290
1533
 
1291
1534
  > **Important:** Private Networks are now mandatory with Kapsule Clusters. If you have a legacy cluster (no `private_network_id` set),
1292
1535
  you can still set it now. In this case it will not destroy and recreate your cluster but migrate it to the Private Network.
1293
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the cluster is associated with.
1294
- :param pulumi.Input[str] region: `region`) The region in which the cluster should be created.
1295
- :param pulumi.Input[str] status: The status of the Kubernetes cluster.
1296
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the Kubernetes cluster.
1297
- :param pulumi.Input[str] type: The type of Kubernetes cluster. Possible values are:
1536
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the cluster is associated with.
1537
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the cluster should be created.
1538
+ :param pulumi.Input[_builtins.str] service_cidr: The subnet used for the Service CIDR.
1539
+
1540
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1541
+ unsetting it to go back to the default value will not have any effect.
1542
+ :param pulumi.Input[_builtins.str] service_dns_ip: The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
1543
+
1544
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1545
+ unsetting it to go back to the default value will not have any effect.
1546
+ :param pulumi.Input[_builtins.str] status: The status of the Kubernetes cluster.
1547
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the Kubernetes cluster.
1548
+ :param pulumi.Input[_builtins.str] type: The type of Kubernetes cluster. Possible values are:
1298
1549
 
1299
1550
  - for mutualized clusters: `kapsule` or `multicloud`
1300
1551
 
1301
1552
  - for dedicated Kapsule clusters: `kapsule-dedicated-4`, `kapsule-dedicated-8` or `kapsule-dedicated-16`.
1302
1553
 
1303
1554
  - for dedicated Kosmos clusters: `multicloud-dedicated-4`, `multicloud-dedicated-8` or `multicloud-dedicated-16`.
1304
- :param pulumi.Input[str] updated_at: The last update date of the cluster.
1305
- :param pulumi.Input[bool] upgrade_available: Set to `true` if a newer Kubernetes version is available.
1306
- :param pulumi.Input[str] version: The version of the Kubernetes cluster.
1307
- :param pulumi.Input[str] wildcard_dns: The DNS wildcard that points to all ready nodes.
1555
+ :param pulumi.Input[_builtins.str] updated_at: The last update date of the cluster.
1556
+ :param pulumi.Input[_builtins.bool] upgrade_available: Set to `true` if a newer Kubernetes version is available.
1557
+ :param pulumi.Input[_builtins.str] version: The version of the Kubernetes cluster.
1558
+ :param pulumi.Input[_builtins.str] wildcard_dns: The DNS wildcard that points to all ready nodes.
1308
1559
  """
1309
1560
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1310
1561
 
@@ -1324,9 +1575,12 @@ class KubernetesCluster(pulumi.CustomResource):
1324
1575
  __props__.__dict__["name"] = name
1325
1576
  __props__.__dict__["open_id_connect_config"] = open_id_connect_config
1326
1577
  __props__.__dict__["organization_id"] = organization_id
1578
+ __props__.__dict__["pod_cidr"] = pod_cidr
1327
1579
  __props__.__dict__["private_network_id"] = private_network_id
1328
1580
  __props__.__dict__["project_id"] = project_id
1329
1581
  __props__.__dict__["region"] = region
1582
+ __props__.__dict__["service_cidr"] = service_cidr
1583
+ __props__.__dict__["service_dns_ip"] = service_dns_ip
1330
1584
  __props__.__dict__["status"] = status
1331
1585
  __props__.__dict__["tags"] = tags
1332
1586
  __props__.__dict__["type"] = type
@@ -1336,31 +1590,31 @@ class KubernetesCluster(pulumi.CustomResource):
1336
1590
  __props__.__dict__["wildcard_dns"] = wildcard_dns
1337
1591
  return KubernetesCluster(resource_name, opts=opts, __props__=__props__)
1338
1592
 
1339
- @property
1593
+ @_builtins.property
1340
1594
  @pulumi.getter(name="admissionPlugins")
1341
- def admission_plugins(self) -> pulumi.Output[Optional[Sequence[str]]]:
1595
+ def admission_plugins(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1342
1596
  """
1343
1597
  The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) to enable on the cluster.
1344
1598
  """
1345
1599
  return pulumi.get(self, "admission_plugins")
1346
1600
 
1347
- @property
1601
+ @_builtins.property
1348
1602
  @pulumi.getter(name="apiserverCertSans")
1349
- def apiserver_cert_sans(self) -> pulumi.Output[Optional[Sequence[str]]]:
1603
+ def apiserver_cert_sans(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1350
1604
  """
1351
1605
  Additional Subject Alternative Names for the Kubernetes API server certificate
1352
1606
  """
1353
1607
  return pulumi.get(self, "apiserver_cert_sans")
1354
1608
 
1355
- @property
1609
+ @_builtins.property
1356
1610
  @pulumi.getter(name="apiserverUrl")
1357
- def apiserver_url(self) -> pulumi.Output[str]:
1611
+ def apiserver_url(self) -> pulumi.Output[_builtins.str]:
1358
1612
  """
1359
1613
  The URL of the Kubernetes API server.
1360
1614
  """
1361
1615
  return pulumi.get(self, "apiserver_url")
1362
1616
 
1363
- @property
1617
+ @_builtins.property
1364
1618
  @pulumi.getter(name="autoUpgrade")
1365
1619
  def auto_upgrade(self) -> pulumi.Output['outputs.KubernetesClusterAutoUpgrade']:
1366
1620
  """
@@ -1368,7 +1622,7 @@ class KubernetesCluster(pulumi.CustomResource):
1368
1622
  """
1369
1623
  return pulumi.get(self, "auto_upgrade")
1370
1624
 
1371
- @property
1625
+ @_builtins.property
1372
1626
  @pulumi.getter(name="autoscalerConfig")
1373
1627
  def autoscaler_config(self) -> pulumi.Output['outputs.KubernetesClusterAutoscalerConfig']:
1374
1628
  """
@@ -1376,26 +1630,26 @@ class KubernetesCluster(pulumi.CustomResource):
1376
1630
  """
1377
1631
  return pulumi.get(self, "autoscaler_config")
1378
1632
 
1379
- @property
1633
+ @_builtins.property
1380
1634
  @pulumi.getter
1381
- def cni(self) -> pulumi.Output[str]:
1635
+ def cni(self) -> pulumi.Output[_builtins.str]:
1382
1636
  """
1383
1637
  The Container Network Interface (CNI) for the Kubernetes cluster.
1384
1638
  > **Important:** Updates to this field will recreate a new resource.
1385
1639
  """
1386
1640
  return pulumi.get(self, "cni")
1387
1641
 
1388
- @property
1642
+ @_builtins.property
1389
1643
  @pulumi.getter(name="createdAt")
1390
- def created_at(self) -> pulumi.Output[str]:
1644
+ def created_at(self) -> pulumi.Output[_builtins.str]:
1391
1645
  """
1392
1646
  The creation date of the cluster.
1393
1647
  """
1394
1648
  return pulumi.get(self, "created_at")
1395
1649
 
1396
- @property
1650
+ @_builtins.property
1397
1651
  @pulumi.getter(name="deleteAdditionalResources")
1398
- def delete_additional_resources(self) -> pulumi.Output[bool]:
1652
+ def delete_additional_resources(self) -> pulumi.Output[_builtins.bool]:
1399
1653
  """
1400
1654
  Delete additional resources like block volumes, load-balancers and the cluster's private network (if empty) that were created in Kubernetes on cluster deletion.
1401
1655
  > **Important:** Setting this field to `true` means that you will lose all your cluster data and network configuration when you delete your cluster.
@@ -1403,23 +1657,23 @@ class KubernetesCluster(pulumi.CustomResource):
1403
1657
  """
1404
1658
  return pulumi.get(self, "delete_additional_resources")
1405
1659
 
1406
- @property
1660
+ @_builtins.property
1407
1661
  @pulumi.getter
1408
- def description(self) -> pulumi.Output[Optional[str]]:
1662
+ def description(self) -> pulumi.Output[Optional[_builtins.str]]:
1409
1663
  """
1410
1664
  A description for the Kubernetes cluster.
1411
1665
  """
1412
1666
  return pulumi.get(self, "description")
1413
1667
 
1414
- @property
1668
+ @_builtins.property
1415
1669
  @pulumi.getter(name="featureGates")
1416
- def feature_gates(self) -> pulumi.Output[Optional[Sequence[str]]]:
1670
+ def feature_gates(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1417
1671
  """
1418
1672
  The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) to enable on the cluster.
1419
1673
  """
1420
1674
  return pulumi.get(self, "feature_gates")
1421
1675
 
1422
- @property
1676
+ @_builtins.property
1423
1677
  @pulumi.getter
1424
1678
  def kubeconfigs(self) -> pulumi.Output[Sequence['outputs.KubernetesClusterKubeconfig']]:
1425
1679
  """
@@ -1427,15 +1681,15 @@ class KubernetesCluster(pulumi.CustomResource):
1427
1681
  """
1428
1682
  return pulumi.get(self, "kubeconfigs")
1429
1683
 
1430
- @property
1684
+ @_builtins.property
1431
1685
  @pulumi.getter
1432
- def name(self) -> pulumi.Output[str]:
1686
+ def name(self) -> pulumi.Output[_builtins.str]:
1433
1687
  """
1434
1688
  The name for the Kubernetes cluster.
1435
1689
  """
1436
1690
  return pulumi.get(self, "name")
1437
1691
 
1438
- @property
1692
+ @_builtins.property
1439
1693
  @pulumi.getter(name="openIdConnectConfig")
1440
1694
  def open_id_connect_config(self) -> pulumi.Output['outputs.KubernetesClusterOpenIdConnectConfig']:
1441
1695
  """
@@ -1443,17 +1697,28 @@ class KubernetesCluster(pulumi.CustomResource):
1443
1697
  """
1444
1698
  return pulumi.get(self, "open_id_connect_config")
1445
1699
 
1446
- @property
1700
+ @_builtins.property
1447
1701
  @pulumi.getter(name="organizationId")
1448
- def organization_id(self) -> pulumi.Output[str]:
1702
+ def organization_id(self) -> pulumi.Output[_builtins.str]:
1449
1703
  """
1450
1704
  The organization ID the cluster is associated with.
1451
1705
  """
1452
1706
  return pulumi.get(self, "organization_id")
1453
1707
 
1454
- @property
1708
+ @_builtins.property
1709
+ @pulumi.getter(name="podCidr")
1710
+ def pod_cidr(self) -> pulumi.Output[_builtins.str]:
1711
+ """
1712
+ The subnet used for the Pod CIDR.
1713
+
1714
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1715
+ unsetting it to go back to the default value will not have any effect.
1716
+ """
1717
+ return pulumi.get(self, "pod_cidr")
1718
+
1719
+ @_builtins.property
1455
1720
  @pulumi.getter(name="privateNetworkId")
1456
- def private_network_id(self) -> pulumi.Output[Optional[str]]:
1721
+ def private_network_id(self) -> pulumi.Output[Optional[_builtins.str]]:
1457
1722
  """
1458
1723
  The ID of the private network of the cluster.
1459
1724
 
@@ -1464,41 +1729,63 @@ class KubernetesCluster(pulumi.CustomResource):
1464
1729
  """
1465
1730
  return pulumi.get(self, "private_network_id")
1466
1731
 
1467
- @property
1732
+ @_builtins.property
1468
1733
  @pulumi.getter(name="projectId")
1469
- def project_id(self) -> pulumi.Output[str]:
1734
+ def project_id(self) -> pulumi.Output[_builtins.str]:
1470
1735
  """
1471
1736
  `project_id`) The ID of the project the cluster is associated with.
1472
1737
  """
1473
1738
  return pulumi.get(self, "project_id")
1474
1739
 
1475
- @property
1740
+ @_builtins.property
1476
1741
  @pulumi.getter
1477
- def region(self) -> pulumi.Output[str]:
1742
+ def region(self) -> pulumi.Output[Optional[_builtins.str]]:
1478
1743
  """
1479
1744
  `region`) The region in which the cluster should be created.
1480
1745
  """
1481
1746
  return pulumi.get(self, "region")
1482
1747
 
1483
- @property
1748
+ @_builtins.property
1749
+ @pulumi.getter(name="serviceCidr")
1750
+ def service_cidr(self) -> pulumi.Output[_builtins.str]:
1751
+ """
1752
+ The subnet used for the Service CIDR.
1753
+
1754
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1755
+ unsetting it to go back to the default value will not have any effect.
1756
+ """
1757
+ return pulumi.get(self, "service_cidr")
1758
+
1759
+ @_builtins.property
1760
+ @pulumi.getter(name="serviceDnsIp")
1761
+ def service_dns_ip(self) -> pulumi.Output[_builtins.str]:
1762
+ """
1763
+ The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
1764
+
1765
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1766
+ unsetting it to go back to the default value will not have any effect.
1767
+ """
1768
+ return pulumi.get(self, "service_dns_ip")
1769
+
1770
+ @_builtins.property
1484
1771
  @pulumi.getter
1485
- def status(self) -> pulumi.Output[str]:
1772
+ def status(self) -> pulumi.Output[_builtins.str]:
1486
1773
  """
1487
1774
  The status of the Kubernetes cluster.
1488
1775
  """
1489
1776
  return pulumi.get(self, "status")
1490
1777
 
1491
- @property
1778
+ @_builtins.property
1492
1779
  @pulumi.getter
1493
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1780
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1494
1781
  """
1495
1782
  The tags associated with the Kubernetes cluster.
1496
1783
  """
1497
1784
  return pulumi.get(self, "tags")
1498
1785
 
1499
- @property
1786
+ @_builtins.property
1500
1787
  @pulumi.getter
1501
- def type(self) -> pulumi.Output[str]:
1788
+ def type(self) -> pulumi.Output[_builtins.str]:
1502
1789
  """
1503
1790
  The type of Kubernetes cluster. Possible values are:
1504
1791
 
@@ -1510,33 +1797,33 @@ class KubernetesCluster(pulumi.CustomResource):
1510
1797
  """
1511
1798
  return pulumi.get(self, "type")
1512
1799
 
1513
- @property
1800
+ @_builtins.property
1514
1801
  @pulumi.getter(name="updatedAt")
1515
- def updated_at(self) -> pulumi.Output[str]:
1802
+ def updated_at(self) -> pulumi.Output[_builtins.str]:
1516
1803
  """
1517
1804
  The last update date of the cluster.
1518
1805
  """
1519
1806
  return pulumi.get(self, "updated_at")
1520
1807
 
1521
- @property
1808
+ @_builtins.property
1522
1809
  @pulumi.getter(name="upgradeAvailable")
1523
- def upgrade_available(self) -> pulumi.Output[bool]:
1810
+ def upgrade_available(self) -> pulumi.Output[_builtins.bool]:
1524
1811
  """
1525
1812
  Set to `true` if a newer Kubernetes version is available.
1526
1813
  """
1527
1814
  return pulumi.get(self, "upgrade_available")
1528
1815
 
1529
- @property
1816
+ @_builtins.property
1530
1817
  @pulumi.getter
1531
- def version(self) -> pulumi.Output[str]:
1818
+ def version(self) -> pulumi.Output[_builtins.str]:
1532
1819
  """
1533
1820
  The version of the Kubernetes cluster.
1534
1821
  """
1535
1822
  return pulumi.get(self, "version")
1536
1823
 
1537
- @property
1824
+ @_builtins.property
1538
1825
  @pulumi.getter(name="wildcardDns")
1539
- def wildcard_dns(self) -> pulumi.Output[str]:
1826
+ def wildcard_dns(self) -> pulumi.Output[_builtins.str]:
1540
1827
  """
1541
1828
  The DNS wildcard that points to all ready nodes.
1542
1829
  """