pulumiverse-scaleway 1.35.0a1761031391__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 (109) hide show
  1. pulumiverse_scaleway/__init__.py +38 -0
  2. pulumiverse_scaleway/_inputs.py +271 -166
  3. pulumiverse_scaleway/audittrail/__init__.py +10 -0
  4. pulumiverse_scaleway/audittrail/get_event.py +410 -0
  5. pulumiverse_scaleway/audittrail/outputs.py +234 -0
  6. pulumiverse_scaleway/baremetal_server.py +159 -0
  7. pulumiverse_scaleway/billing/get_consumptions.py +4 -0
  8. pulumiverse_scaleway/block/snapshot.py +78 -0
  9. pulumiverse_scaleway/block_snapshot.py +78 -0
  10. pulumiverse_scaleway/cockpit_grafana_user.py +0 -42
  11. pulumiverse_scaleway/database_instance.py +105 -55
  12. pulumiverse_scaleway/database_user.py +6 -6
  13. pulumiverse_scaleway/databases/_inputs.py +97 -3
  14. pulumiverse_scaleway/databases/get_instance.py +12 -1
  15. pulumiverse_scaleway/databases/instance.py +105 -55
  16. pulumiverse_scaleway/databases/outputs.py +127 -2
  17. pulumiverse_scaleway/databases/user.py +6 -6
  18. pulumiverse_scaleway/datawarehouse/__init__.py +13 -0
  19. pulumiverse_scaleway/datawarehouse/_inputs.py +149 -0
  20. pulumiverse_scaleway/datawarehouse/database.py +338 -0
  21. pulumiverse_scaleway/datawarehouse/deployment.py +821 -0
  22. pulumiverse_scaleway/datawarehouse/outputs.py +113 -0
  23. pulumiverse_scaleway/datawarehouse/user.py +451 -0
  24. pulumiverse_scaleway/domain/record.py +4 -4
  25. pulumiverse_scaleway/domain_record.py +4 -4
  26. pulumiverse_scaleway/edge_services_cache_stage.py +30 -0
  27. pulumiverse_scaleway/edge_services_dns_stage.py +28 -0
  28. pulumiverse_scaleway/elasticmetal/get_offer.py +2 -0
  29. pulumiverse_scaleway/elasticmetal/get_server.py +12 -1
  30. pulumiverse_scaleway/elasticmetal/server.py +159 -0
  31. pulumiverse_scaleway/file_filesystem.py +39 -35
  32. pulumiverse_scaleway/get_baremetal_offer.py +2 -0
  33. pulumiverse_scaleway/get_baremetal_server.py +12 -1
  34. pulumiverse_scaleway/get_billing_consumptions.py +4 -0
  35. pulumiverse_scaleway/get_database_instance.py +12 -1
  36. pulumiverse_scaleway/get_instance_ip.py +14 -2
  37. pulumiverse_scaleway/get_instance_server.py +13 -83
  38. pulumiverse_scaleway/get_k8s_version.py +12 -1
  39. pulumiverse_scaleway/get_kubernetes_cluster.py +34 -1
  40. pulumiverse_scaleway/get_loadbalancer.py +12 -1
  41. pulumiverse_scaleway/get_loadbalancer_certificate.py +60 -0
  42. pulumiverse_scaleway/iam/__init__.py +1 -0
  43. pulumiverse_scaleway/iam/get_policy.py +293 -0
  44. pulumiverse_scaleway/iam/outputs.py +52 -0
  45. pulumiverse_scaleway/inference/deployment.py +36 -0
  46. pulumiverse_scaleway/inference/model.py +7 -7
  47. pulumiverse_scaleway/inference_deployment.py +36 -0
  48. pulumiverse_scaleway/instance/_inputs.py +155 -144
  49. pulumiverse_scaleway/instance/get_ip.py +14 -2
  50. pulumiverse_scaleway/instance/get_server.py +13 -83
  51. pulumiverse_scaleway/instance/image.py +94 -40
  52. pulumiverse_scaleway/instance/outputs.py +164 -167
  53. pulumiverse_scaleway/instance/server.py +116 -244
  54. pulumiverse_scaleway/instance/user_data.py +4 -4
  55. pulumiverse_scaleway/instance/volume.py +14 -0
  56. pulumiverse_scaleway/instance_image.py +94 -40
  57. pulumiverse_scaleway/instance_server.py +116 -244
  58. pulumiverse_scaleway/instance_user_data.py +4 -4
  59. pulumiverse_scaleway/instance_volume.py +14 -0
  60. pulumiverse_scaleway/iot/device.py +0 -38
  61. pulumiverse_scaleway/iot/hub.py +11 -11
  62. pulumiverse_scaleway/iot/route.py +20 -20
  63. pulumiverse_scaleway/iot_device.py +0 -38
  64. pulumiverse_scaleway/iot_hub.py +11 -11
  65. pulumiverse_scaleway/iot_route.py +20 -20
  66. pulumiverse_scaleway/ipam/_inputs.py +6 -6
  67. pulumiverse_scaleway/ipam/ip.py +35 -7
  68. pulumiverse_scaleway/ipam/ip_reverse_dns.py +70 -0
  69. pulumiverse_scaleway/ipam/outputs.py +4 -4
  70. pulumiverse_scaleway/ipam_ip.py +35 -7
  71. pulumiverse_scaleway/ipam_ip_reverse_dns.py +70 -0
  72. pulumiverse_scaleway/key_manager_key.py +134 -25
  73. pulumiverse_scaleway/kubernetes/cluster.py +290 -4
  74. pulumiverse_scaleway/kubernetes/get_cluster.py +34 -1
  75. pulumiverse_scaleway/kubernetes/get_version.py +12 -1
  76. pulumiverse_scaleway/kubernetes/pool.py +7 -7
  77. pulumiverse_scaleway/kubernetes_cluster.py +290 -4
  78. pulumiverse_scaleway/kubernetes_node_pool.py +7 -7
  79. pulumiverse_scaleway/loadbalancer.py +55 -1
  80. pulumiverse_scaleway/loadbalancers/__init__.py +1 -0
  81. pulumiverse_scaleway/loadbalancers/_inputs.py +13 -13
  82. pulumiverse_scaleway/loadbalancers/get_certificate.py +60 -0
  83. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +12 -1
  84. pulumiverse_scaleway/loadbalancers/load_balancer.py +55 -1
  85. pulumiverse_scaleway/loadbalancers/outputs.py +9 -9
  86. pulumiverse_scaleway/loadbalancers/private_network.py +505 -0
  87. pulumiverse_scaleway/mongo_db_instance.py +14 -14
  88. pulumiverse_scaleway/mongodb/instance.py +14 -14
  89. pulumiverse_scaleway/network/gateway_network.py +7 -7
  90. pulumiverse_scaleway/object/__init__.py +1 -0
  91. pulumiverse_scaleway/object/bucket_policy.py +0 -64
  92. pulumiverse_scaleway/object/get.py +290 -0
  93. pulumiverse_scaleway/object/item.py +37 -7
  94. pulumiverse_scaleway/object_bucket_policy.py +0 -64
  95. pulumiverse_scaleway/object_item.py +37 -7
  96. pulumiverse_scaleway/observability/__init__.py +1 -0
  97. pulumiverse_scaleway/observability/get_grafana.py +103 -0
  98. pulumiverse_scaleway/observability/get_sources.py +6 -6
  99. pulumiverse_scaleway/observability/grafana_user.py +0 -42
  100. pulumiverse_scaleway/observability/outputs.py +2 -2
  101. pulumiverse_scaleway/outputs.py +304 -182
  102. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  103. pulumiverse_scaleway/tem/domain.py +42 -0
  104. pulumiverse_scaleway/tem_domain.py +42 -0
  105. pulumiverse_scaleway/vpc_gateway_network.py +7 -7
  106. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/METADATA +1 -1
  107. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/RECORD +109 -96
  108. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/WHEEL +0 -0
  109. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/top_level.txt +0 -0
@@ -32,9 +32,12 @@ class ClusterArgs:
32
32
  feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
33
33
  name: Optional[pulumi.Input[_builtins.str]] = None,
34
34
  open_id_connect_config: Optional[pulumi.Input['ClusterOpenIdConnectConfigArgs']] = None,
35
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
35
36
  private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
36
37
  project_id: Optional[pulumi.Input[_builtins.str]] = None,
37
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,
38
41
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
39
42
  type: Optional[pulumi.Input[_builtins.str]] = None):
40
43
  """
@@ -53,6 +56,10 @@ class ClusterArgs:
53
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.
54
57
  :param pulumi.Input[_builtins.str] name: The name for the Kubernetes cluster.
55
58
  :param pulumi.Input['ClusterOpenIdConnectConfigArgs'] open_id_connect_config: The OpenID Connect configuration 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.
56
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.
@@ -61,6 +68,14 @@ class ClusterArgs:
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
69
  :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the cluster is associated with.
63
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.
64
79
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the Kubernetes cluster.
65
80
  :param pulumi.Input[_builtins.str] type: The type of Kubernetes cluster. Possible values are:
66
81
 
@@ -89,12 +104,18 @@ class ClusterArgs:
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:
@@ -235,6 +256,21 @@ class ClusterArgs:
235
256
  def open_id_connect_config(self, value: Optional[pulumi.Input['ClusterOpenIdConnectConfigArgs']]):
236
257
  pulumi.set(self, "open_id_connect_config", value)
237
258
 
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
+
238
274
  @_builtins.property
239
275
  @pulumi.getter(name="privateNetworkId")
240
276
  def private_network_id(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -276,6 +312,36 @@ class ClusterArgs:
276
312
  def region(self, value: Optional[pulumi.Input[_builtins.str]]):
277
313
  pulumi.set(self, "region", value)
278
314
 
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
+
279
345
  @_builtins.property
280
346
  @pulumi.getter
281
347
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
@@ -324,9 +390,12 @@ class _ClusterState:
324
390
  name: Optional[pulumi.Input[_builtins.str]] = None,
325
391
  open_id_connect_config: Optional[pulumi.Input['ClusterOpenIdConnectConfigArgs']] = None,
326
392
  organization_id: Optional[pulumi.Input[_builtins.str]] = None,
393
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
327
394
  private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
328
395
  project_id: Optional[pulumi.Input[_builtins.str]] = None,
329
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,
330
399
  status: Optional[pulumi.Input[_builtins.str]] = None,
331
400
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
332
401
  type: Optional[pulumi.Input[_builtins.str]] = None,
@@ -353,6 +422,10 @@ class _ClusterState:
353
422
  :param pulumi.Input[_builtins.str] name: The name for the Kubernetes cluster.
354
423
  :param pulumi.Input['ClusterOpenIdConnectConfigArgs'] open_id_connect_config: The OpenID Connect configuration of the cluster
355
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.
356
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.
@@ -361,6 +434,14 @@ class _ClusterState:
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
435
  :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the cluster is associated with.
363
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.
364
445
  :param pulumi.Input[_builtins.str] status: The status of the Kubernetes cluster.
365
446
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the Kubernetes cluster.
366
447
  :param pulumi.Input[_builtins.str] type: The type of Kubernetes cluster. Possible values are:
@@ -403,12 +484,18 @@ class _ClusterState:
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:
@@ -595,6 +682,21 @@ class _ClusterState:
595
682
  def organization_id(self, value: Optional[pulumi.Input[_builtins.str]]):
596
683
  pulumi.set(self, "organization_id", value)
597
684
 
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
+
598
700
  @_builtins.property
599
701
  @pulumi.getter(name="privateNetworkId")
600
702
  def private_network_id(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -636,6 +738,36 @@ class _ClusterState:
636
738
  def region(self, value: Optional[pulumi.Input[_builtins.str]]):
637
739
  pulumi.set(self, "region", value)
638
740
 
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
+
639
771
  @_builtins.property
640
772
  @pulumi.getter
641
773
  def status(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -743,9 +875,12 @@ class Cluster(pulumi.CustomResource):
743
875
  feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
744
876
  name: Optional[pulumi.Input[_builtins.str]] = None,
745
877
  open_id_connect_config: Optional[pulumi.Input[Union['ClusterOpenIdConnectConfigArgs', 'ClusterOpenIdConnectConfigArgsDict']]] = None,
878
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
746
879
  private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
747
880
  project_id: Optional[pulumi.Input[_builtins.str]] = None,
748
881
  region: Optional[pulumi.Input[_builtins.str]] = None,
882
+ service_cidr: Optional[pulumi.Input[_builtins.str]] = None,
883
+ service_dns_ip: Optional[pulumi.Input[_builtins.str]] = None,
749
884
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
750
885
  type: Optional[pulumi.Input[_builtins.str]] = None,
751
886
  version: Optional[pulumi.Input[_builtins.str]] = None,
@@ -854,7 +989,7 @@ class Cluster(pulumi.CustomResource):
854
989
  kubeconfig = null.Resource("kubeconfig", triggers={
855
990
  "host": cluster.kubeconfigs[0].host,
856
991
  "token": cluster.kubeconfigs[0].token,
857
- "cluster_ca_certificate": cluster.kubeconfigs[0].cluster_ca_certificate,
992
+ "clusterCaCertificate": cluster.kubeconfigs[0].cluster_ca_certificate,
858
993
  },
859
994
  opts = pulumi.ResourceOptions(depends_on=[pool]))
860
995
  ```
@@ -885,7 +1020,7 @@ class Cluster(pulumi.CustomResource):
885
1020
  kubeconfig = null.Resource("kubeconfig", triggers={
886
1021
  "host": cluster.kubeconfigs[0].host,
887
1022
  "token": cluster.kubeconfigs[0].token,
888
- "cluster_ca_certificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1023
+ "clusterCaCertificate": cluster.kubeconfigs[0].cluster_ca_certificate,
889
1024
  },
890
1025
  opts = pulumi.ResourceOptions(depends_on=[pool]))
891
1026
  nginx_ip = scaleway.loadbalancers.Ip("nginx_ip",
@@ -920,6 +1055,47 @@ class Cluster(pulumi.CustomResource):
920
1055
  ])
921
1056
  ```
922
1057
 
1058
+ ## Deprecation of default_pool
1059
+
1060
+ `default_pool` is deprecated in favour the `kubernetes.Pool` resource. Here is a migration example.
1061
+
1062
+ Before:
1063
+
1064
+ ```python
1065
+ import pulumi
1066
+ import pulumiverse_scaleway as scaleway
1067
+
1068
+ cluster = scaleway.kubernetes.Cluster("cluster",
1069
+ name="tf-cluster",
1070
+ version="1.18.0",
1071
+ cni="cilium",
1072
+ default_pool=[{
1073
+ "nodeType": "DEV1-M",
1074
+ "size": 1,
1075
+ }])
1076
+ ```
1077
+
1078
+ After:
1079
+
1080
+ ```python
1081
+ import pulumi
1082
+ import pulumiverse_scaleway as scaleway
1083
+
1084
+ cluster = scaleway.kubernetes.Cluster("cluster",
1085
+ name="tf-cluster",
1086
+ version="1.18.0",
1087
+ cni="cilium")
1088
+ default = scaleway.kubernetes.Pool("default",
1089
+ cluster_id=jack["id"],
1090
+ name="default",
1091
+ node_type="DEV1-M",
1092
+ size=1)
1093
+ ```
1094
+
1095
+ 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:
1096
+
1097
+ Then you will only need to type `pulumi up` to have a smooth migration.
1098
+
923
1099
  ## Import
924
1100
 
925
1101
  Kubernetes clusters can be imported using the `{region}/{id}`, e.g.
@@ -945,6 +1121,10 @@ class Cluster(pulumi.CustomResource):
945
1121
  :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.
946
1122
  :param pulumi.Input[_builtins.str] name: The name for the Kubernetes cluster.
947
1123
  :param pulumi.Input[Union['ClusterOpenIdConnectConfigArgs', 'ClusterOpenIdConnectConfigArgsDict']] open_id_connect_config: The OpenID Connect configuration of the cluster
1124
+ :param pulumi.Input[_builtins.str] pod_cidr: The subnet used for the Pod CIDR.
1125
+
1126
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1127
+ unsetting it to go back to the default value will not have any effect.
948
1128
  :param pulumi.Input[_builtins.str] private_network_id: The ID of the private network of the cluster.
949
1129
 
950
1130
  > **Important:** Changes to this field will recreate a new resource.
@@ -953,6 +1133,14 @@ class Cluster(pulumi.CustomResource):
953
1133
  you can still set it now. In this case it will not destroy and recreate your cluster but migrate it to the Private Network.
954
1134
  :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the cluster is associated with.
955
1135
  :param pulumi.Input[_builtins.str] region: `region`) The region in which the cluster should be created.
1136
+ :param pulumi.Input[_builtins.str] service_cidr: The subnet used for the Service CIDR.
1137
+
1138
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1139
+ unsetting it to go back to the default value will not have any effect.
1140
+ :param pulumi.Input[_builtins.str] service_dns_ip: The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
1141
+
1142
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1143
+ unsetting it to go back to the default value will not have any effect.
956
1144
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the Kubernetes cluster.
957
1145
  :param pulumi.Input[_builtins.str] type: The type of Kubernetes cluster. Possible values are:
958
1146
 
@@ -1073,7 +1261,7 @@ class Cluster(pulumi.CustomResource):
1073
1261
  kubeconfig = null.Resource("kubeconfig", triggers={
1074
1262
  "host": cluster.kubeconfigs[0].host,
1075
1263
  "token": cluster.kubeconfigs[0].token,
1076
- "cluster_ca_certificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1264
+ "clusterCaCertificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1077
1265
  },
1078
1266
  opts = pulumi.ResourceOptions(depends_on=[pool]))
1079
1267
  ```
@@ -1104,7 +1292,7 @@ class Cluster(pulumi.CustomResource):
1104
1292
  kubeconfig = null.Resource("kubeconfig", triggers={
1105
1293
  "host": cluster.kubeconfigs[0].host,
1106
1294
  "token": cluster.kubeconfigs[0].token,
1107
- "cluster_ca_certificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1295
+ "clusterCaCertificate": cluster.kubeconfigs[0].cluster_ca_certificate,
1108
1296
  },
1109
1297
  opts = pulumi.ResourceOptions(depends_on=[pool]))
1110
1298
  nginx_ip = scaleway.loadbalancers.Ip("nginx_ip",
@@ -1139,6 +1327,47 @@ class Cluster(pulumi.CustomResource):
1139
1327
  ])
1140
1328
  ```
1141
1329
 
1330
+ ## Deprecation of default_pool
1331
+
1332
+ `default_pool` is deprecated in favour the `kubernetes.Pool` resource. Here is a migration example.
1333
+
1334
+ Before:
1335
+
1336
+ ```python
1337
+ import pulumi
1338
+ import pulumiverse_scaleway as scaleway
1339
+
1340
+ cluster = scaleway.kubernetes.Cluster("cluster",
1341
+ name="tf-cluster",
1342
+ version="1.18.0",
1343
+ cni="cilium",
1344
+ default_pool=[{
1345
+ "nodeType": "DEV1-M",
1346
+ "size": 1,
1347
+ }])
1348
+ ```
1349
+
1350
+ After:
1351
+
1352
+ ```python
1353
+ import pulumi
1354
+ import pulumiverse_scaleway as scaleway
1355
+
1356
+ cluster = scaleway.kubernetes.Cluster("cluster",
1357
+ name="tf-cluster",
1358
+ version="1.18.0",
1359
+ cni="cilium")
1360
+ default = scaleway.kubernetes.Pool("default",
1361
+ cluster_id=jack["id"],
1362
+ name="default",
1363
+ node_type="DEV1-M",
1364
+ size=1)
1365
+ ```
1366
+
1367
+ 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:
1368
+
1369
+ Then you will only need to type `pulumi up` to have a smooth migration.
1370
+
1142
1371
  ## Import
1143
1372
 
1144
1373
  Kubernetes clusters can be imported using the `{region}/{id}`, e.g.
@@ -1174,9 +1403,12 @@ class Cluster(pulumi.CustomResource):
1174
1403
  feature_gates: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1175
1404
  name: Optional[pulumi.Input[_builtins.str]] = None,
1176
1405
  open_id_connect_config: Optional[pulumi.Input[Union['ClusterOpenIdConnectConfigArgs', 'ClusterOpenIdConnectConfigArgsDict']]] = None,
1406
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
1177
1407
  private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
1178
1408
  project_id: Optional[pulumi.Input[_builtins.str]] = None,
1179
1409
  region: Optional[pulumi.Input[_builtins.str]] = None,
1410
+ service_cidr: Optional[pulumi.Input[_builtins.str]] = None,
1411
+ service_dns_ip: Optional[pulumi.Input[_builtins.str]] = None,
1180
1412
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1181
1413
  type: Optional[pulumi.Input[_builtins.str]] = None,
1182
1414
  version: Optional[pulumi.Input[_builtins.str]] = None,
@@ -1203,9 +1435,12 @@ class Cluster(pulumi.CustomResource):
1203
1435
  __props__.__dict__["feature_gates"] = feature_gates
1204
1436
  __props__.__dict__["name"] = name
1205
1437
  __props__.__dict__["open_id_connect_config"] = open_id_connect_config
1438
+ __props__.__dict__["pod_cidr"] = pod_cidr
1206
1439
  __props__.__dict__["private_network_id"] = private_network_id
1207
1440
  __props__.__dict__["project_id"] = project_id
1208
1441
  __props__.__dict__["region"] = region
1442
+ __props__.__dict__["service_cidr"] = service_cidr
1443
+ __props__.__dict__["service_dns_ip"] = service_dns_ip
1209
1444
  __props__.__dict__["tags"] = tags
1210
1445
  __props__.__dict__["type"] = type
1211
1446
  if version is None and not opts.urn:
@@ -1247,9 +1482,12 @@ class Cluster(pulumi.CustomResource):
1247
1482
  name: Optional[pulumi.Input[_builtins.str]] = None,
1248
1483
  open_id_connect_config: Optional[pulumi.Input[Union['ClusterOpenIdConnectConfigArgs', 'ClusterOpenIdConnectConfigArgsDict']]] = None,
1249
1484
  organization_id: Optional[pulumi.Input[_builtins.str]] = None,
1485
+ pod_cidr: Optional[pulumi.Input[_builtins.str]] = None,
1250
1486
  private_network_id: Optional[pulumi.Input[_builtins.str]] = None,
1251
1487
  project_id: Optional[pulumi.Input[_builtins.str]] = None,
1252
1488
  region: Optional[pulumi.Input[_builtins.str]] = None,
1489
+ service_cidr: Optional[pulumi.Input[_builtins.str]] = None,
1490
+ service_dns_ip: Optional[pulumi.Input[_builtins.str]] = None,
1253
1491
  status: Optional[pulumi.Input[_builtins.str]] = None,
1254
1492
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1255
1493
  type: Optional[pulumi.Input[_builtins.str]] = None,
@@ -1281,6 +1519,10 @@ class Cluster(pulumi.CustomResource):
1281
1519
  :param pulumi.Input[_builtins.str] name: The name for the Kubernetes cluster.
1282
1520
  :param pulumi.Input[Union['ClusterOpenIdConnectConfigArgs', 'ClusterOpenIdConnectConfigArgsDict']] open_id_connect_config: The OpenID Connect configuration of the cluster
1283
1521
  :param pulumi.Input[_builtins.str] organization_id: The organization ID the cluster is associated with.
1522
+ :param pulumi.Input[_builtins.str] pod_cidr: The subnet used for the Pod CIDR.
1523
+
1524
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1525
+ unsetting it to go back to the default value will not have any effect.
1284
1526
  :param pulumi.Input[_builtins.str] private_network_id: The ID of the private network of the cluster.
1285
1527
 
1286
1528
  > **Important:** Changes to this field will recreate a new resource.
@@ -1289,6 +1531,14 @@ class Cluster(pulumi.CustomResource):
1289
1531
  you can still set it now. In this case it will not destroy and recreate your cluster but migrate it to the Private Network.
1290
1532
  :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the cluster is associated with.
1291
1533
  :param pulumi.Input[_builtins.str] region: `region`) The region in which the cluster should be created.
1534
+ :param pulumi.Input[_builtins.str] service_cidr: The subnet used for the Service CIDR.
1535
+
1536
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1537
+ unsetting it to go back to the default value will not have any effect.
1538
+ :param pulumi.Input[_builtins.str] service_dns_ip: The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
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.
1292
1542
  :param pulumi.Input[_builtins.str] status: The status of the Kubernetes cluster.
1293
1543
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the Kubernetes cluster.
1294
1544
  :param pulumi.Input[_builtins.str] type: The type of Kubernetes cluster. Possible values are:
@@ -1321,9 +1571,12 @@ class Cluster(pulumi.CustomResource):
1321
1571
  __props__.__dict__["name"] = name
1322
1572
  __props__.__dict__["open_id_connect_config"] = open_id_connect_config
1323
1573
  __props__.__dict__["organization_id"] = organization_id
1574
+ __props__.__dict__["pod_cidr"] = pod_cidr
1324
1575
  __props__.__dict__["private_network_id"] = private_network_id
1325
1576
  __props__.__dict__["project_id"] = project_id
1326
1577
  __props__.__dict__["region"] = region
1578
+ __props__.__dict__["service_cidr"] = service_cidr
1579
+ __props__.__dict__["service_dns_ip"] = service_dns_ip
1327
1580
  __props__.__dict__["status"] = status
1328
1581
  __props__.__dict__["tags"] = tags
1329
1582
  __props__.__dict__["type"] = type
@@ -1448,6 +1701,17 @@ class Cluster(pulumi.CustomResource):
1448
1701
  """
1449
1702
  return pulumi.get(self, "organization_id")
1450
1703
 
1704
+ @_builtins.property
1705
+ @pulumi.getter(name="podCidr")
1706
+ def pod_cidr(self) -> pulumi.Output[_builtins.str]:
1707
+ """
1708
+ The subnet used for the Pod CIDR.
1709
+
1710
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1711
+ unsetting it to go back to the default value will not have any effect.
1712
+ """
1713
+ return pulumi.get(self, "pod_cidr")
1714
+
1451
1715
  @_builtins.property
1452
1716
  @pulumi.getter(name="privateNetworkId")
1453
1717
  def private_network_id(self) -> pulumi.Output[Optional[_builtins.str]]:
@@ -1477,6 +1741,28 @@ class Cluster(pulumi.CustomResource):
1477
1741
  """
1478
1742
  return pulumi.get(self, "region")
1479
1743
 
1744
+ @_builtins.property
1745
+ @pulumi.getter(name="serviceCidr")
1746
+ def service_cidr(self) -> pulumi.Output[_builtins.str]:
1747
+ """
1748
+ The subnet used for the Service CIDR.
1749
+
1750
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1751
+ unsetting it to go back to the default value will not have any effect.
1752
+ """
1753
+ return pulumi.get(self, "service_cidr")
1754
+
1755
+ @_builtins.property
1756
+ @pulumi.getter(name="serviceDnsIp")
1757
+ def service_dns_ip(self) -> pulumi.Output[_builtins.str]:
1758
+ """
1759
+ The IP used for the DNS Service. If unset, defaults to Service CIDR's network + 10.
1760
+
1761
+ > **Important:** Changes to this field will recreate a new resource. However once it has been set to a custom value,
1762
+ unsetting it to go back to the default value will not have any effect.
1763
+ """
1764
+ return pulumi.get(self, "service_dns_ip")
1765
+
1480
1766
  @_builtins.property
1481
1767
  @pulumi.getter
1482
1768
  def status(self) -> pulumi.Output[_builtins.str]:
@@ -27,7 +27,7 @@ class GetClusterResult:
27
27
  """
28
28
  A collection of values returned by getCluster.
29
29
  """
30
- def __init__(__self__, admission_plugins=None, apiserver_cert_sans=None, apiserver_url=None, auto_upgrades=None, autoscaler_configs=None, cluster_id=None, cni=None, created_at=None, description=None, feature_gates=None, id=None, kubeconfigs=None, name=None, open_id_connect_configs=None, organization_id=None, private_network_id=None, project_id=None, region=None, status=None, tags=None, type=None, updated_at=None, upgrade_available=None, version=None, wildcard_dns=None):
30
+ def __init__(__self__, admission_plugins=None, apiserver_cert_sans=None, apiserver_url=None, auto_upgrades=None, autoscaler_configs=None, cluster_id=None, cni=None, created_at=None, description=None, feature_gates=None, id=None, kubeconfigs=None, name=None, open_id_connect_configs=None, organization_id=None, pod_cidr=None, private_network_id=None, project_id=None, region=None, service_cidr=None, service_dns_ip=None, status=None, tags=None, type=None, updated_at=None, upgrade_available=None, version=None, wildcard_dns=None):
31
31
  if admission_plugins and not isinstance(admission_plugins, list):
32
32
  raise TypeError("Expected argument 'admission_plugins' to be a list")
33
33
  pulumi.set(__self__, "admission_plugins", admission_plugins)
@@ -73,6 +73,9 @@ class GetClusterResult:
73
73
  if organization_id and not isinstance(organization_id, str):
74
74
  raise TypeError("Expected argument 'organization_id' to be a str")
75
75
  pulumi.set(__self__, "organization_id", organization_id)
76
+ if pod_cidr and not isinstance(pod_cidr, str):
77
+ raise TypeError("Expected argument 'pod_cidr' to be a str")
78
+ pulumi.set(__self__, "pod_cidr", pod_cidr)
76
79
  if private_network_id and not isinstance(private_network_id, str):
77
80
  raise TypeError("Expected argument 'private_network_id' to be a str")
78
81
  pulumi.set(__self__, "private_network_id", private_network_id)
@@ -82,6 +85,12 @@ class GetClusterResult:
82
85
  if region and not isinstance(region, str):
83
86
  raise TypeError("Expected argument 'region' to be a str")
84
87
  pulumi.set(__self__, "region", region)
88
+ if service_cidr and not isinstance(service_cidr, str):
89
+ raise TypeError("Expected argument 'service_cidr' to be a str")
90
+ pulumi.set(__self__, "service_cidr", service_cidr)
91
+ if service_dns_ip and not isinstance(service_dns_ip, str):
92
+ raise TypeError("Expected argument 'service_dns_ip' to be a str")
93
+ pulumi.set(__self__, "service_dns_ip", service_dns_ip)
85
94
  if status and not isinstance(status, str):
86
95
  raise TypeError("Expected argument 'status' to be a str")
87
96
  pulumi.set(__self__, "status", status)
@@ -209,6 +218,11 @@ class GetClusterResult:
209
218
  """
210
219
  return pulumi.get(self, "organization_id")
211
220
 
221
+ @_builtins.property
222
+ @pulumi.getter(name="podCidr")
223
+ def pod_cidr(self) -> _builtins.str:
224
+ return pulumi.get(self, "pod_cidr")
225
+
212
226
  @_builtins.property
213
227
  @pulumi.getter(name="privateNetworkId")
214
228
  def private_network_id(self) -> _builtins.str:
@@ -230,6 +244,16 @@ class GetClusterResult:
230
244
  """
231
245
  return pulumi.get(self, "region")
232
246
 
247
+ @_builtins.property
248
+ @pulumi.getter(name="serviceCidr")
249
+ def service_cidr(self) -> _builtins.str:
250
+ return pulumi.get(self, "service_cidr")
251
+
252
+ @_builtins.property
253
+ @pulumi.getter(name="serviceDnsIp")
254
+ def service_dns_ip(self) -> _builtins.str:
255
+ return pulumi.get(self, "service_dns_ip")
256
+
233
257
  @_builtins.property
234
258
  @pulumi.getter
235
259
  def status(self) -> _builtins.str:
@@ -308,9 +332,12 @@ class AwaitableGetClusterResult(GetClusterResult):
308
332
  name=self.name,
309
333
  open_id_connect_configs=self.open_id_connect_configs,
310
334
  organization_id=self.organization_id,
335
+ pod_cidr=self.pod_cidr,
311
336
  private_network_id=self.private_network_id,
312
337
  project_id=self.project_id,
313
338
  region=self.region,
339
+ service_cidr=self.service_cidr,
340
+ service_dns_ip=self.service_dns_ip,
314
341
  status=self.status,
315
342
  tags=self.tags,
316
343
  type=self.type,
@@ -358,9 +385,12 @@ def get_cluster(cluster_id: Optional[_builtins.str] = None,
358
385
  name=pulumi.get(__ret__, 'name'),
359
386
  open_id_connect_configs=pulumi.get(__ret__, 'open_id_connect_configs'),
360
387
  organization_id=pulumi.get(__ret__, 'organization_id'),
388
+ pod_cidr=pulumi.get(__ret__, 'pod_cidr'),
361
389
  private_network_id=pulumi.get(__ret__, 'private_network_id'),
362
390
  project_id=pulumi.get(__ret__, 'project_id'),
363
391
  region=pulumi.get(__ret__, 'region'),
392
+ service_cidr=pulumi.get(__ret__, 'service_cidr'),
393
+ service_dns_ip=pulumi.get(__ret__, 'service_dns_ip'),
364
394
  status=pulumi.get(__ret__, 'status'),
365
395
  tags=pulumi.get(__ret__, 'tags'),
366
396
  type=pulumi.get(__ret__, 'type'),
@@ -405,9 +435,12 @@ def get_cluster_output(cluster_id: Optional[pulumi.Input[Optional[_builtins.str]
405
435
  name=pulumi.get(__response__, 'name'),
406
436
  open_id_connect_configs=pulumi.get(__response__, 'open_id_connect_configs'),
407
437
  organization_id=pulumi.get(__response__, 'organization_id'),
438
+ pod_cidr=pulumi.get(__response__, 'pod_cidr'),
408
439
  private_network_id=pulumi.get(__response__, 'private_network_id'),
409
440
  project_id=pulumi.get(__response__, 'project_id'),
410
441
  region=pulumi.get(__response__, 'region'),
442
+ service_cidr=pulumi.get(__response__, 'service_cidr'),
443
+ service_dns_ip=pulumi.get(__response__, 'service_dns_ip'),
411
444
  status=pulumi.get(__response__, 'status'),
412
445
  tags=pulumi.get(__response__, 'tags'),
413
446
  type=pulumi.get(__response__, 'type'),