pulumiverse-scaleway 1.28.0a1747119212__py3-none-any.whl → 1.29.0__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 (102) hide show
  1. pulumiverse_scaleway/__init__.py +16 -1
  2. pulumiverse_scaleway/_inputs.py +604 -6
  3. pulumiverse_scaleway/account/__init__.py +2 -0
  4. pulumiverse_scaleway/account/get_projects.py +235 -0
  5. pulumiverse_scaleway/account/outputs.py +95 -0
  6. pulumiverse_scaleway/baremetal_server.py +67 -258
  7. pulumiverse_scaleway/block/__init__.py +2 -0
  8. pulumiverse_scaleway/block/_inputs.py +73 -0
  9. pulumiverse_scaleway/block/get_snapshot.py +13 -1
  10. pulumiverse_scaleway/block/outputs.py +79 -0
  11. pulumiverse_scaleway/block/snapshot.py +62 -14
  12. pulumiverse_scaleway/block_snapshot.py +62 -14
  13. pulumiverse_scaleway/container.py +2 -2
  14. pulumiverse_scaleway/containers/container.py +2 -2
  15. pulumiverse_scaleway/database_instance.py +61 -21
  16. pulumiverse_scaleway/databases/_inputs.py +54 -0
  17. pulumiverse_scaleway/databases/get_instance.py +12 -1
  18. pulumiverse_scaleway/databases/instance.py +61 -21
  19. pulumiverse_scaleway/databases/outputs.py +62 -0
  20. pulumiverse_scaleway/databases/snapshot.py +2 -2
  21. pulumiverse_scaleway/domain/get_zone.py +7 -1
  22. pulumiverse_scaleway/elasticmetal/__init__.py +1 -1
  23. pulumiverse_scaleway/elasticmetal/_inputs.py +74 -0
  24. pulumiverse_scaleway/elasticmetal/get_partition_schema.py +215 -0
  25. pulumiverse_scaleway/elasticmetal/get_server.py +12 -1
  26. pulumiverse_scaleway/elasticmetal/outputs.py +87 -0
  27. pulumiverse_scaleway/elasticmetal/server.py +67 -258
  28. pulumiverse_scaleway/get_baremetal_server.py +12 -1
  29. pulumiverse_scaleway/get_block_snapshot.py +13 -1
  30. pulumiverse_scaleway/get_cockpit_plan.py +2 -38
  31. pulumiverse_scaleway/get_database_instance.py +12 -1
  32. pulumiverse_scaleway/get_domain_zone.py +7 -1
  33. pulumiverse_scaleway/get_instance_private_nic.py +13 -1
  34. pulumiverse_scaleway/get_instance_server.py +12 -1
  35. pulumiverse_scaleway/get_lb_route.py +12 -1
  36. pulumiverse_scaleway/get_loadbalancer.py +12 -1
  37. pulumiverse_scaleway/get_mongo_db_instance.py +12 -1
  38. pulumiverse_scaleway/get_redis_cluster.py +12 -1
  39. pulumiverse_scaleway/get_vpc_gateway_network.py +12 -1
  40. pulumiverse_scaleway/iam/user.py +468 -14
  41. pulumiverse_scaleway/iam_user.py +468 -14
  42. pulumiverse_scaleway/inference/__init__.py +2 -0
  43. pulumiverse_scaleway/inference/_inputs.py +128 -0
  44. pulumiverse_scaleway/inference/deployment.py +70 -55
  45. pulumiverse_scaleway/inference/get_model.py +299 -0
  46. pulumiverse_scaleway/inference/model.py +683 -0
  47. pulumiverse_scaleway/inference/outputs.py +184 -0
  48. pulumiverse_scaleway/inference_deployment.py +70 -55
  49. pulumiverse_scaleway/instance/_inputs.py +108 -0
  50. pulumiverse_scaleway/instance/get_private_nic.py +13 -1
  51. pulumiverse_scaleway/instance/get_server.py +12 -1
  52. pulumiverse_scaleway/instance/outputs.py +124 -0
  53. pulumiverse_scaleway/instance/private_nic.py +49 -0
  54. pulumiverse_scaleway/instance/server.py +47 -0
  55. pulumiverse_scaleway/instance/snapshot.py +28 -7
  56. pulumiverse_scaleway/instance/volume.py +28 -7
  57. pulumiverse_scaleway/instance_private_nic.py +49 -0
  58. pulumiverse_scaleway/instance_server.py +47 -0
  59. pulumiverse_scaleway/instance_snapshot.py +28 -7
  60. pulumiverse_scaleway/instance_volume.py +28 -7
  61. pulumiverse_scaleway/kubernetes/__init__.py +1 -0
  62. pulumiverse_scaleway/kubernetes/_inputs.py +203 -0
  63. pulumiverse_scaleway/kubernetes/acl.py +446 -0
  64. pulumiverse_scaleway/kubernetes/outputs.py +195 -1
  65. pulumiverse_scaleway/loadbalancer.py +28 -0
  66. pulumiverse_scaleway/loadbalancer_route.py +138 -14
  67. pulumiverse_scaleway/loadbalancers/_inputs.py +54 -0
  68. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +12 -1
  69. pulumiverse_scaleway/loadbalancers/get_route.py +12 -1
  70. pulumiverse_scaleway/loadbalancers/load_balancer.py +28 -0
  71. pulumiverse_scaleway/loadbalancers/outputs.py +62 -0
  72. pulumiverse_scaleway/loadbalancers/route.py +138 -14
  73. pulumiverse_scaleway/mnq/sns_credentials.py +7 -7
  74. pulumiverse_scaleway/mnq/sqs_credentials.py +7 -7
  75. pulumiverse_scaleway/mnq_sns_credentials.py +7 -7
  76. pulumiverse_scaleway/mnq_sqs_credentials.py +7 -7
  77. pulumiverse_scaleway/mongo_db_instance.py +107 -7
  78. pulumiverse_scaleway/mongodb/_inputs.py +54 -0
  79. pulumiverse_scaleway/mongodb/get_instance.py +12 -1
  80. pulumiverse_scaleway/mongodb/instance.py +107 -7
  81. pulumiverse_scaleway/mongodb/outputs.py +62 -0
  82. pulumiverse_scaleway/network/_inputs.py +54 -0
  83. pulumiverse_scaleway/network/gateway_network.py +47 -0
  84. pulumiverse_scaleway/network/get_gateway_network.py +12 -1
  85. pulumiverse_scaleway/network/outputs.py +62 -0
  86. pulumiverse_scaleway/network/route.py +90 -2
  87. pulumiverse_scaleway/observability/__init__.py +0 -1
  88. pulumiverse_scaleway/observability/get_plan.py +2 -38
  89. pulumiverse_scaleway/outputs.py +718 -27
  90. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  91. pulumiverse_scaleway/rdb_snapshot.py +2 -2
  92. pulumiverse_scaleway/redis/_inputs.py +60 -6
  93. pulumiverse_scaleway/redis/cluster.py +47 -0
  94. pulumiverse_scaleway/redis/get_cluster.py +12 -1
  95. pulumiverse_scaleway/redis/outputs.py +66 -4
  96. pulumiverse_scaleway/redis_cluster.py +47 -0
  97. pulumiverse_scaleway/vpc_gateway_network.py +47 -0
  98. pulumiverse_scaleway/vpc_route.py +90 -2
  99. {pulumiverse_scaleway-1.28.0a1747119212.dist-info → pulumiverse_scaleway-1.29.0.dist-info}/METADATA +1 -1
  100. {pulumiverse_scaleway-1.28.0a1747119212.dist-info → pulumiverse_scaleway-1.29.0.dist-info}/RECORD +102 -94
  101. {pulumiverse_scaleway-1.28.0a1747119212.dist-info → pulumiverse_scaleway-1.29.0.dist-info}/WHEEL +1 -1
  102. {pulumiverse_scaleway-1.28.0a1747119212.dist-info → pulumiverse_scaleway-1.29.0.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "scaleway",
4
- "version": "1.28.0-alpha.1747119212",
4
+ "version": "1.29.0",
5
5
  "server": "github://api.github.com/pulumiverse"
6
6
  }
@@ -296,7 +296,7 @@ class RdbSnapshot(pulumi.CustomResource):
296
296
  "scaleway_rdb_instance",
297
297
  "minimal",
298
298
  ],
299
- volume_type="bssd",
299
+ volume_type="sbs_5k",
300
300
  volume_size_in_gb=10)
301
301
  test = scaleway.databases.Snapshot("test",
302
302
  name="initial-snapshot",
@@ -386,7 +386,7 @@ class RdbSnapshot(pulumi.CustomResource):
386
386
  "scaleway_rdb_instance",
387
387
  "minimal",
388
388
  ],
389
- volume_type="bssd",
389
+ volume_type="sbs_5k",
390
390
  volume_size_in_gb=10)
391
391
  test = scaleway.databases.Snapshot("test",
392
392
  name="initial-snapshot",
@@ -17,6 +17,8 @@ from .. import _utilities
17
17
  __all__ = [
18
18
  'ClusterAclArgs',
19
19
  'ClusterAclArgsDict',
20
+ 'ClusterPrivateIpArgs',
21
+ 'ClusterPrivateIpArgsDict',
20
22
  'ClusterPrivateNetworkArgs',
21
23
  'ClusterPrivateNetworkArgsDict',
22
24
  'ClusterPublicNetworkArgs',
@@ -40,7 +42,7 @@ if not MYPY:
40
42
  """
41
43
  id: NotRequired[pulumi.Input[str]]
42
44
  """
43
- (Required) The UUID of the endpoint.
45
+ The ID of the IPv4 address resource.
44
46
  """
45
47
  elif False:
46
48
  ClusterAclArgsDict: TypeAlias = Mapping[str, Any]
@@ -57,7 +59,7 @@ class ClusterAclArgs:
57
59
  :param pulumi.Input[str] description: A text describing this rule. Default description: `Allow IP`
58
60
 
59
61
  > The `acl` conflict with `private_network`. Only one should be specified.
60
- :param pulumi.Input[str] id: (Required) The UUID of the endpoint.
62
+ :param pulumi.Input[str] id: The ID of the IPv4 address resource.
61
63
  """
62
64
  pulumi.set(__self__, "ip", ip)
63
65
  if description is not None:
@@ -96,7 +98,59 @@ class ClusterAclArgs:
96
98
  @pulumi.getter
97
99
  def id(self) -> Optional[pulumi.Input[str]]:
98
100
  """
99
- (Required) The UUID of the endpoint.
101
+ The ID of the IPv4 address resource.
102
+ """
103
+ return pulumi.get(self, "id")
104
+
105
+ @id.setter
106
+ def id(self, value: Optional[pulumi.Input[str]]):
107
+ pulumi.set(self, "id", value)
108
+
109
+
110
+ if not MYPY:
111
+ class ClusterPrivateIpArgsDict(TypedDict):
112
+ address: NotRequired[pulumi.Input[str]]
113
+ """
114
+ The private IPv4 address.
115
+ """
116
+ id: NotRequired[pulumi.Input[str]]
117
+ """
118
+ The ID of the IPv4 address resource.
119
+ """
120
+ elif False:
121
+ ClusterPrivateIpArgsDict: TypeAlias = Mapping[str, Any]
122
+
123
+ @pulumi.input_type
124
+ class ClusterPrivateIpArgs:
125
+ def __init__(__self__, *,
126
+ address: Optional[pulumi.Input[str]] = None,
127
+ id: Optional[pulumi.Input[str]] = None):
128
+ """
129
+ :param pulumi.Input[str] address: The private IPv4 address.
130
+ :param pulumi.Input[str] id: The ID of the IPv4 address resource.
131
+ """
132
+ if address is not None:
133
+ pulumi.set(__self__, "address", address)
134
+ if id is not None:
135
+ pulumi.set(__self__, "id", id)
136
+
137
+ @property
138
+ @pulumi.getter
139
+ def address(self) -> Optional[pulumi.Input[str]]:
140
+ """
141
+ The private IPv4 address.
142
+ """
143
+ return pulumi.get(self, "address")
144
+
145
+ @address.setter
146
+ def address(self, value: Optional[pulumi.Input[str]]):
147
+ pulumi.set(self, "address", value)
148
+
149
+ @property
150
+ @pulumi.getter
151
+ def id(self) -> Optional[pulumi.Input[str]]:
152
+ """
153
+ The ID of the IPv4 address resource.
100
154
  """
101
155
  return pulumi.get(self, "id")
102
156
 
@@ -260,7 +314,7 @@ if not MYPY:
260
314
  class ClusterPublicNetworkArgsDict(TypedDict):
261
315
  id: NotRequired[pulumi.Input[str]]
262
316
  """
263
- (Required) The UUID of the endpoint.
317
+ The ID of the IPv4 address resource.
264
318
  """
265
319
  ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
266
320
  """
@@ -280,7 +334,7 @@ class ClusterPublicNetworkArgs:
280
334
  ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
281
335
  port: Optional[pulumi.Input[int]] = None):
282
336
  """
283
- :param pulumi.Input[str] id: (Required) The UUID of the endpoint.
337
+ :param pulumi.Input[str] id: The ID of the IPv4 address resource.
284
338
  :param pulumi.Input[Sequence[pulumi.Input[str]]] ips: Lis of IPv4 address of the endpoint (IP address).
285
339
  :param pulumi.Input[int] port: TCP port of the endpoint.
286
340
  """
@@ -295,7 +349,7 @@ class ClusterPublicNetworkArgs:
295
349
  @pulumi.getter
296
350
  def id(self) -> Optional[pulumi.Input[str]]:
297
351
  """
298
- (Required) The UUID of the endpoint.
352
+ The ID of the IPv4 address resource.
299
353
  """
300
354
  return pulumi.get(self, "id")
301
355
 
@@ -28,6 +28,7 @@ class ClusterArgs:
28
28
  acls: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterAclArgs']]]] = None,
29
29
  cluster_size: Optional[pulumi.Input[int]] = None,
30
30
  name: Optional[pulumi.Input[str]] = None,
31
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateIpArgs']]]] = None,
31
32
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateNetworkArgs']]]] = None,
32
33
  project_id: Optional[pulumi.Input[str]] = None,
33
34
  public_network: Optional[pulumi.Input['ClusterPublicNetworkArgs']] = None,
@@ -65,6 +66,7 @@ class ClusterArgs:
65
66
  > **Important:** If you are using the Standalone mode (1 node), setting a bigger `cluster_size` will destroy and
66
67
  recreate your cluster as you will be switching to the cluster mode.
67
68
  :param pulumi.Input[str] name: The name of the Redis™ cluster.
69
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterPrivateIpArgs']]] private_ips: The list of private IPv4 addresses associated with the resource.
68
70
  :param pulumi.Input[Sequence[pulumi.Input['ClusterPrivateNetworkArgs']]] private_networks: Describes the Private Network you want to connect to your cluster. If not set, a public
69
71
  network will be provided. More details on the Private Network section
70
72
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Redis™ cluster is
@@ -90,6 +92,8 @@ class ClusterArgs:
90
92
  pulumi.set(__self__, "cluster_size", cluster_size)
91
93
  if name is not None:
92
94
  pulumi.set(__self__, "name", name)
95
+ if private_ips is not None:
96
+ pulumi.set(__self__, "private_ips", private_ips)
93
97
  if private_networks is not None:
94
98
  pulumi.set(__self__, "private_networks", private_networks)
95
99
  if project_id is not None:
@@ -210,6 +214,18 @@ class ClusterArgs:
210
214
  def name(self, value: Optional[pulumi.Input[str]]):
211
215
  pulumi.set(self, "name", value)
212
216
 
217
+ @property
218
+ @pulumi.getter(name="privateIps")
219
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateIpArgs']]]]:
220
+ """
221
+ The list of private IPv4 addresses associated with the resource.
222
+ """
223
+ return pulumi.get(self, "private_ips")
224
+
225
+ @private_ips.setter
226
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateIpArgs']]]]):
227
+ pulumi.set(self, "private_ips", value)
228
+
213
229
  @property
214
230
  @pulumi.getter(name="privateNetworks")
215
231
  def private_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateNetworkArgs']]]]:
@@ -312,6 +328,7 @@ class _ClusterState:
312
328
  name: Optional[pulumi.Input[str]] = None,
313
329
  node_type: Optional[pulumi.Input[str]] = None,
314
330
  password: Optional[pulumi.Input[str]] = None,
331
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateIpArgs']]]] = None,
315
332
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateNetworkArgs']]]] = None,
316
333
  project_id: Optional[pulumi.Input[str]] = None,
317
334
  public_network: Optional[pulumi.Input['ClusterPublicNetworkArgs']] = None,
@@ -349,6 +366,7 @@ class _ClusterState:
349
366
  > **Important:** Updates to `node_type` will migrate the Redis™ cluster to the desired `node_type`. Keep in mind that
350
367
  you cannot downgrade a Redis™ cluster.
351
368
  :param pulumi.Input[str] password: Password for the first user of the Redis™ cluster.
369
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterPrivateIpArgs']]] private_ips: The list of private IPv4 addresses associated with the resource.
352
370
  :param pulumi.Input[Sequence[pulumi.Input['ClusterPrivateNetworkArgs']]] private_networks: Describes the Private Network you want to connect to your cluster. If not set, a public
353
371
  network will be provided. More details on the Private Network section
354
372
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Redis™ cluster is
@@ -384,6 +402,8 @@ class _ClusterState:
384
402
  pulumi.set(__self__, "node_type", node_type)
385
403
  if password is not None:
386
404
  pulumi.set(__self__, "password", password)
405
+ if private_ips is not None:
406
+ pulumi.set(__self__, "private_ips", private_ips)
387
407
  if private_networks is not None:
388
408
  pulumi.set(__self__, "private_networks", private_networks)
389
409
  if project_id is not None:
@@ -507,6 +527,18 @@ class _ClusterState:
507
527
  def password(self, value: Optional[pulumi.Input[str]]):
508
528
  pulumi.set(self, "password", value)
509
529
 
530
+ @property
531
+ @pulumi.getter(name="privateIps")
532
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateIpArgs']]]]:
533
+ """
534
+ The list of private IPv4 addresses associated with the resource.
535
+ """
536
+ return pulumi.get(self, "private_ips")
537
+
538
+ @private_ips.setter
539
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateIpArgs']]]]):
540
+ pulumi.set(self, "private_ips", value)
541
+
510
542
  @property
511
543
  @pulumi.getter(name="privateNetworks")
512
544
  def private_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPrivateNetworkArgs']]]]:
@@ -648,6 +680,7 @@ class Cluster(pulumi.CustomResource):
648
680
  name: Optional[pulumi.Input[str]] = None,
649
681
  node_type: Optional[pulumi.Input[str]] = None,
650
682
  password: Optional[pulumi.Input[str]] = None,
683
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateIpArgs', 'ClusterPrivateIpArgsDict']]]]] = None,
651
684
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateNetworkArgs', 'ClusterPrivateNetworkArgsDict']]]]] = None,
652
685
  project_id: Optional[pulumi.Input[str]] = None,
653
686
  public_network: Optional[pulumi.Input[Union['ClusterPublicNetworkArgs', 'ClusterPublicNetworkArgsDict']]] = None,
@@ -762,6 +795,7 @@ class Cluster(pulumi.CustomResource):
762
795
  > **Important:** Updates to `node_type` will migrate the Redis™ cluster to the desired `node_type`. Keep in mind that
763
796
  you cannot downgrade a Redis™ cluster.
764
797
  :param pulumi.Input[str] password: Password for the first user of the Redis™ cluster.
798
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateIpArgs', 'ClusterPrivateIpArgsDict']]]] private_ips: The list of private IPv4 addresses associated with the resource.
765
799
  :param pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateNetworkArgs', 'ClusterPrivateNetworkArgsDict']]]] private_networks: Describes the Private Network you want to connect to your cluster. If not set, a public
766
800
  network will be provided. More details on the Private Network section
767
801
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Redis™ cluster is
@@ -887,6 +921,7 @@ class Cluster(pulumi.CustomResource):
887
921
  name: Optional[pulumi.Input[str]] = None,
888
922
  node_type: Optional[pulumi.Input[str]] = None,
889
923
  password: Optional[pulumi.Input[str]] = None,
924
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateIpArgs', 'ClusterPrivateIpArgsDict']]]]] = None,
890
925
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateNetworkArgs', 'ClusterPrivateNetworkArgsDict']]]]] = None,
891
926
  project_id: Optional[pulumi.Input[str]] = None,
892
927
  public_network: Optional[pulumi.Input[Union['ClusterPublicNetworkArgs', 'ClusterPublicNetworkArgsDict']]] = None,
@@ -914,6 +949,7 @@ class Cluster(pulumi.CustomResource):
914
949
  if password is None and not opts.urn:
915
950
  raise TypeError("Missing required property 'password'")
916
951
  __props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
952
+ __props__.__dict__["private_ips"] = private_ips
917
953
  __props__.__dict__["private_networks"] = private_networks
918
954
  __props__.__dict__["project_id"] = project_id
919
955
  __props__.__dict__["public_network"] = public_network
@@ -951,6 +987,7 @@ class Cluster(pulumi.CustomResource):
951
987
  name: Optional[pulumi.Input[str]] = None,
952
988
  node_type: Optional[pulumi.Input[str]] = None,
953
989
  password: Optional[pulumi.Input[str]] = None,
990
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateIpArgs', 'ClusterPrivateIpArgsDict']]]]] = None,
954
991
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateNetworkArgs', 'ClusterPrivateNetworkArgsDict']]]]] = None,
955
992
  project_id: Optional[pulumi.Input[str]] = None,
956
993
  public_network: Optional[pulumi.Input[Union['ClusterPublicNetworkArgs', 'ClusterPublicNetworkArgsDict']]] = None,
@@ -993,6 +1030,7 @@ class Cluster(pulumi.CustomResource):
993
1030
  > **Important:** Updates to `node_type` will migrate the Redis™ cluster to the desired `node_type`. Keep in mind that
994
1031
  you cannot downgrade a Redis™ cluster.
995
1032
  :param pulumi.Input[str] password: Password for the first user of the Redis™ cluster.
1033
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateIpArgs', 'ClusterPrivateIpArgsDict']]]] private_ips: The list of private IPv4 addresses associated with the resource.
996
1034
  :param pulumi.Input[Sequence[pulumi.Input[Union['ClusterPrivateNetworkArgs', 'ClusterPrivateNetworkArgsDict']]]] private_networks: Describes the Private Network you want to connect to your cluster. If not set, a public
997
1035
  network will be provided. More details on the Private Network section
998
1036
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Redis™ cluster is
@@ -1025,6 +1063,7 @@ class Cluster(pulumi.CustomResource):
1025
1063
  __props__.__dict__["name"] = name
1026
1064
  __props__.__dict__["node_type"] = node_type
1027
1065
  __props__.__dict__["password"] = password
1066
+ __props__.__dict__["private_ips"] = private_ips
1028
1067
  __props__.__dict__["private_networks"] = private_networks
1029
1068
  __props__.__dict__["project_id"] = project_id
1030
1069
  __props__.__dict__["public_network"] = public_network
@@ -1111,6 +1150,14 @@ class Cluster(pulumi.CustomResource):
1111
1150
  """
1112
1151
  return pulumi.get(self, "password")
1113
1152
 
1153
+ @property
1154
+ @pulumi.getter(name="privateIps")
1155
+ def private_ips(self) -> pulumi.Output[Sequence['outputs.ClusterPrivateIp']]:
1156
+ """
1157
+ The list of private IPv4 addresses associated with the resource.
1158
+ """
1159
+ return pulumi.get(self, "private_ips")
1160
+
1114
1161
  @property
1115
1162
  @pulumi.getter(name="privateNetworks")
1116
1163
  def private_networks(self) -> pulumi.Output[Optional[Sequence['outputs.ClusterPrivateNetwork']]]:
@@ -27,7 +27,7 @@ class GetClusterResult:
27
27
  """
28
28
  A collection of values returned by getCluster.
29
29
  """
30
- def __init__(__self__, acls=None, certificate=None, cluster_id=None, cluster_size=None, created_at=None, id=None, name=None, node_type=None, password=None, private_networks=None, project_id=None, public_networks=None, settings=None, tags=None, tls_enabled=None, updated_at=None, user_name=None, version=None, zone=None):
30
+ def __init__(__self__, acls=None, certificate=None, cluster_id=None, cluster_size=None, created_at=None, id=None, name=None, node_type=None, password=None, private_ips=None, private_networks=None, project_id=None, public_networks=None, settings=None, tags=None, tls_enabled=None, updated_at=None, user_name=None, version=None, zone=None):
31
31
  if acls and not isinstance(acls, list):
32
32
  raise TypeError("Expected argument 'acls' to be a list")
33
33
  pulumi.set(__self__, "acls", acls)
@@ -55,6 +55,9 @@ class GetClusterResult:
55
55
  if password and not isinstance(password, str):
56
56
  raise TypeError("Expected argument 'password' to be a str")
57
57
  pulumi.set(__self__, "password", password)
58
+ if private_ips and not isinstance(private_ips, list):
59
+ raise TypeError("Expected argument 'private_ips' to be a list")
60
+ pulumi.set(__self__, "private_ips", private_ips)
58
61
  if private_networks and not isinstance(private_networks, list):
59
62
  raise TypeError("Expected argument 'private_networks' to be a list")
60
63
  pulumi.set(__self__, "private_networks", private_networks)
@@ -152,6 +155,11 @@ class GetClusterResult:
152
155
  """
153
156
  return pulumi.get(self, "password")
154
157
 
158
+ @property
159
+ @pulumi.getter(name="privateIps")
160
+ def private_ips(self) -> Sequence['outputs.GetClusterPrivateIpResult']:
161
+ return pulumi.get(self, "private_ips")
162
+
155
163
  @property
156
164
  @pulumi.getter(name="privateNetworks")
157
165
  def private_networks(self) -> Sequence['outputs.GetClusterPrivateNetworkResult']:
@@ -242,6 +250,7 @@ class AwaitableGetClusterResult(GetClusterResult):
242
250
  name=self.name,
243
251
  node_type=self.node_type,
244
252
  password=self.password,
253
+ private_ips=self.private_ips,
245
254
  private_networks=self.private_networks,
246
255
  project_id=self.project_id,
247
256
  public_networks=self.public_networks,
@@ -290,6 +299,7 @@ def get_cluster(cluster_id: Optional[str] = None,
290
299
  name=pulumi.get(__ret__, 'name'),
291
300
  node_type=pulumi.get(__ret__, 'node_type'),
292
301
  password=pulumi.get(__ret__, 'password'),
302
+ private_ips=pulumi.get(__ret__, 'private_ips'),
293
303
  private_networks=pulumi.get(__ret__, 'private_networks'),
294
304
  project_id=pulumi.get(__ret__, 'project_id'),
295
305
  public_networks=pulumi.get(__ret__, 'public_networks'),
@@ -335,6 +345,7 @@ def get_cluster_output(cluster_id: Optional[pulumi.Input[Optional[str]]] = None,
335
345
  name=pulumi.get(__response__, 'name'),
336
346
  node_type=pulumi.get(__response__, 'node_type'),
337
347
  password=pulumi.get(__response__, 'password'),
348
+ private_ips=pulumi.get(__response__, 'private_ips'),
338
349
  private_networks=pulumi.get(__response__, 'private_networks'),
339
350
  project_id=pulumi.get(__response__, 'project_id'),
340
351
  public_networks=pulumi.get(__response__, 'public_networks'),
@@ -16,9 +16,11 @@ from .. import _utilities
16
16
 
17
17
  __all__ = [
18
18
  'ClusterAcl',
19
+ 'ClusterPrivateIp',
19
20
  'ClusterPrivateNetwork',
20
21
  'ClusterPublicNetwork',
21
22
  'GetClusterAclResult',
23
+ 'GetClusterPrivateIpResult',
22
24
  'GetClusterPrivateNetworkResult',
23
25
  'GetClusterPublicNetworkResult',
24
26
  ]
@@ -35,7 +37,7 @@ class ClusterAcl(dict):
35
37
  :param str description: A text describing this rule. Default description: `Allow IP`
36
38
 
37
39
  > The `acl` conflict with `private_network`. Only one should be specified.
38
- :param str id: (Required) The UUID of the endpoint.
40
+ :param str id: The ID of the IPv4 address resource.
39
41
  """
40
42
  pulumi.set(__self__, "ip", ip)
41
43
  if description is not None:
@@ -66,7 +68,38 @@ class ClusterAcl(dict):
66
68
  @pulumi.getter
67
69
  def id(self) -> Optional[str]:
68
70
  """
69
- (Required) The UUID of the endpoint.
71
+ The ID of the IPv4 address resource.
72
+ """
73
+ return pulumi.get(self, "id")
74
+
75
+
76
+ @pulumi.output_type
77
+ class ClusterPrivateIp(dict):
78
+ def __init__(__self__, *,
79
+ address: Optional[str] = None,
80
+ id: Optional[str] = None):
81
+ """
82
+ :param str address: The private IPv4 address.
83
+ :param str id: The ID of the IPv4 address resource.
84
+ """
85
+ if address is not None:
86
+ pulumi.set(__self__, "address", address)
87
+ if id is not None:
88
+ pulumi.set(__self__, "id", id)
89
+
90
+ @property
91
+ @pulumi.getter
92
+ def address(self) -> Optional[str]:
93
+ """
94
+ The private IPv4 address.
95
+ """
96
+ return pulumi.get(self, "address")
97
+
98
+ @property
99
+ @pulumi.getter
100
+ def id(self) -> Optional[str]:
101
+ """
102
+ The ID of the IPv4 address resource.
70
103
  """
71
104
  return pulumi.get(self, "id")
72
105
 
@@ -191,7 +224,7 @@ class ClusterPublicNetwork(dict):
191
224
  ips: Optional[Sequence[str]] = None,
192
225
  port: Optional[int] = None):
193
226
  """
194
- :param str id: (Required) The UUID of the endpoint.
227
+ :param str id: The ID of the IPv4 address resource.
195
228
  :param Sequence[str] ips: Lis of IPv4 address of the endpoint (IP address).
196
229
  :param int port: TCP port of the endpoint.
197
230
  """
@@ -206,7 +239,7 @@ class ClusterPublicNetwork(dict):
206
239
  @pulumi.getter
207
240
  def id(self) -> Optional[str]:
208
241
  """
209
- (Required) The UUID of the endpoint.
242
+ The ID of the IPv4 address resource.
210
243
  """
211
244
  return pulumi.get(self, "id")
212
245
 
@@ -267,6 +300,35 @@ class GetClusterAclResult(dict):
267
300
  return pulumi.get(self, "ip")
268
301
 
269
302
 
303
+ @pulumi.output_type
304
+ class GetClusterPrivateIpResult(dict):
305
+ def __init__(__self__, *,
306
+ address: str,
307
+ id: str):
308
+ """
309
+ :param str address: The private IPv4 address
310
+ :param str id: The ID of the Redis cluster.
311
+ """
312
+ pulumi.set(__self__, "address", address)
313
+ pulumi.set(__self__, "id", id)
314
+
315
+ @property
316
+ @pulumi.getter
317
+ def address(self) -> str:
318
+ """
319
+ The private IPv4 address
320
+ """
321
+ return pulumi.get(self, "address")
322
+
323
+ @property
324
+ @pulumi.getter
325
+ def id(self) -> str:
326
+ """
327
+ The ID of the Redis cluster.
328
+ """
329
+ return pulumi.get(self, "id")
330
+
331
+
270
332
  @pulumi.output_type
271
333
  class GetClusterPrivateNetworkResult(dict):
272
334
  def __init__(__self__, *,
@@ -28,6 +28,7 @@ class RedisClusterArgs:
28
28
  acls: Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterAclArgs']]]] = None,
29
29
  cluster_size: Optional[pulumi.Input[int]] = None,
30
30
  name: Optional[pulumi.Input[str]] = None,
31
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateIpArgs']]]] = None,
31
32
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateNetworkArgs']]]] = None,
32
33
  project_id: Optional[pulumi.Input[str]] = None,
33
34
  public_network: Optional[pulumi.Input['RedisClusterPublicNetworkArgs']] = None,
@@ -65,6 +66,7 @@ class RedisClusterArgs:
65
66
  > **Important:** If you are using the Standalone mode (1 node), setting a bigger `cluster_size` will destroy and
66
67
  recreate your cluster as you will be switching to the cluster mode.
67
68
  :param pulumi.Input[str] name: The name of the Redis™ cluster.
69
+ :param pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateIpArgs']]] private_ips: The list of private IPv4 addresses associated with the resource.
68
70
  :param pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateNetworkArgs']]] private_networks: Describes the Private Network you want to connect to your cluster. If not set, a public
69
71
  network will be provided. More details on the Private Network section
70
72
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Redis™ cluster is
@@ -90,6 +92,8 @@ class RedisClusterArgs:
90
92
  pulumi.set(__self__, "cluster_size", cluster_size)
91
93
  if name is not None:
92
94
  pulumi.set(__self__, "name", name)
95
+ if private_ips is not None:
96
+ pulumi.set(__self__, "private_ips", private_ips)
93
97
  if private_networks is not None:
94
98
  pulumi.set(__self__, "private_networks", private_networks)
95
99
  if project_id is not None:
@@ -210,6 +214,18 @@ class RedisClusterArgs:
210
214
  def name(self, value: Optional[pulumi.Input[str]]):
211
215
  pulumi.set(self, "name", value)
212
216
 
217
+ @property
218
+ @pulumi.getter(name="privateIps")
219
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateIpArgs']]]]:
220
+ """
221
+ The list of private IPv4 addresses associated with the resource.
222
+ """
223
+ return pulumi.get(self, "private_ips")
224
+
225
+ @private_ips.setter
226
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateIpArgs']]]]):
227
+ pulumi.set(self, "private_ips", value)
228
+
213
229
  @property
214
230
  @pulumi.getter(name="privateNetworks")
215
231
  def private_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateNetworkArgs']]]]:
@@ -312,6 +328,7 @@ class _RedisClusterState:
312
328
  name: Optional[pulumi.Input[str]] = None,
313
329
  node_type: Optional[pulumi.Input[str]] = None,
314
330
  password: Optional[pulumi.Input[str]] = None,
331
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateIpArgs']]]] = None,
315
332
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateNetworkArgs']]]] = None,
316
333
  project_id: Optional[pulumi.Input[str]] = None,
317
334
  public_network: Optional[pulumi.Input['RedisClusterPublicNetworkArgs']] = None,
@@ -349,6 +366,7 @@ class _RedisClusterState:
349
366
  > **Important:** Updates to `node_type` will migrate the Redis™ cluster to the desired `node_type`. Keep in mind that
350
367
  you cannot downgrade a Redis™ cluster.
351
368
  :param pulumi.Input[str] password: Password for the first user of the Redis™ cluster.
369
+ :param pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateIpArgs']]] private_ips: The list of private IPv4 addresses associated with the resource.
352
370
  :param pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateNetworkArgs']]] private_networks: Describes the Private Network you want to connect to your cluster. If not set, a public
353
371
  network will be provided. More details on the Private Network section
354
372
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Redis™ cluster is
@@ -384,6 +402,8 @@ class _RedisClusterState:
384
402
  pulumi.set(__self__, "node_type", node_type)
385
403
  if password is not None:
386
404
  pulumi.set(__self__, "password", password)
405
+ if private_ips is not None:
406
+ pulumi.set(__self__, "private_ips", private_ips)
387
407
  if private_networks is not None:
388
408
  pulumi.set(__self__, "private_networks", private_networks)
389
409
  if project_id is not None:
@@ -507,6 +527,18 @@ class _RedisClusterState:
507
527
  def password(self, value: Optional[pulumi.Input[str]]):
508
528
  pulumi.set(self, "password", value)
509
529
 
530
+ @property
531
+ @pulumi.getter(name="privateIps")
532
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateIpArgs']]]]:
533
+ """
534
+ The list of private IPv4 addresses associated with the resource.
535
+ """
536
+ return pulumi.get(self, "private_ips")
537
+
538
+ @private_ips.setter
539
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateIpArgs']]]]):
540
+ pulumi.set(self, "private_ips", value)
541
+
510
542
  @property
511
543
  @pulumi.getter(name="privateNetworks")
512
544
  def private_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RedisClusterPrivateNetworkArgs']]]]:
@@ -653,6 +685,7 @@ class RedisCluster(pulumi.CustomResource):
653
685
  name: Optional[pulumi.Input[str]] = None,
654
686
  node_type: Optional[pulumi.Input[str]] = None,
655
687
  password: Optional[pulumi.Input[str]] = None,
688
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateIpArgs', 'RedisClusterPrivateIpArgsDict']]]]] = None,
656
689
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateNetworkArgs', 'RedisClusterPrivateNetworkArgsDict']]]]] = None,
657
690
  project_id: Optional[pulumi.Input[str]] = None,
658
691
  public_network: Optional[pulumi.Input[Union['RedisClusterPublicNetworkArgs', 'RedisClusterPublicNetworkArgsDict']]] = None,
@@ -767,6 +800,7 @@ class RedisCluster(pulumi.CustomResource):
767
800
  > **Important:** Updates to `node_type` will migrate the Redis™ cluster to the desired `node_type`. Keep in mind that
768
801
  you cannot downgrade a Redis™ cluster.
769
802
  :param pulumi.Input[str] password: Password for the first user of the Redis™ cluster.
803
+ :param pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateIpArgs', 'RedisClusterPrivateIpArgsDict']]]] private_ips: The list of private IPv4 addresses associated with the resource.
770
804
  :param pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateNetworkArgs', 'RedisClusterPrivateNetworkArgsDict']]]] private_networks: Describes the Private Network you want to connect to your cluster. If not set, a public
771
805
  network will be provided. More details on the Private Network section
772
806
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Redis™ cluster is
@@ -892,6 +926,7 @@ class RedisCluster(pulumi.CustomResource):
892
926
  name: Optional[pulumi.Input[str]] = None,
893
927
  node_type: Optional[pulumi.Input[str]] = None,
894
928
  password: Optional[pulumi.Input[str]] = None,
929
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateIpArgs', 'RedisClusterPrivateIpArgsDict']]]]] = None,
895
930
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateNetworkArgs', 'RedisClusterPrivateNetworkArgsDict']]]]] = None,
896
931
  project_id: Optional[pulumi.Input[str]] = None,
897
932
  public_network: Optional[pulumi.Input[Union['RedisClusterPublicNetworkArgs', 'RedisClusterPublicNetworkArgsDict']]] = None,
@@ -920,6 +955,7 @@ class RedisCluster(pulumi.CustomResource):
920
955
  if password is None and not opts.urn:
921
956
  raise TypeError("Missing required property 'password'")
922
957
  __props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
958
+ __props__.__dict__["private_ips"] = private_ips
923
959
  __props__.__dict__["private_networks"] = private_networks
924
960
  __props__.__dict__["project_id"] = project_id
925
961
  __props__.__dict__["public_network"] = public_network
@@ -955,6 +991,7 @@ class RedisCluster(pulumi.CustomResource):
955
991
  name: Optional[pulumi.Input[str]] = None,
956
992
  node_type: Optional[pulumi.Input[str]] = None,
957
993
  password: Optional[pulumi.Input[str]] = None,
994
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateIpArgs', 'RedisClusterPrivateIpArgsDict']]]]] = None,
958
995
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateNetworkArgs', 'RedisClusterPrivateNetworkArgsDict']]]]] = None,
959
996
  project_id: Optional[pulumi.Input[str]] = None,
960
997
  public_network: Optional[pulumi.Input[Union['RedisClusterPublicNetworkArgs', 'RedisClusterPublicNetworkArgsDict']]] = None,
@@ -997,6 +1034,7 @@ class RedisCluster(pulumi.CustomResource):
997
1034
  > **Important:** Updates to `node_type` will migrate the Redis™ cluster to the desired `node_type`. Keep in mind that
998
1035
  you cannot downgrade a Redis™ cluster.
999
1036
  :param pulumi.Input[str] password: Password for the first user of the Redis™ cluster.
1037
+ :param pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateIpArgs', 'RedisClusterPrivateIpArgsDict']]]] private_ips: The list of private IPv4 addresses associated with the resource.
1000
1038
  :param pulumi.Input[Sequence[pulumi.Input[Union['RedisClusterPrivateNetworkArgs', 'RedisClusterPrivateNetworkArgsDict']]]] private_networks: Describes the Private Network you want to connect to your cluster. If not set, a public
1001
1039
  network will be provided. More details on the Private Network section
1002
1040
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Redis™ cluster is
@@ -1029,6 +1067,7 @@ class RedisCluster(pulumi.CustomResource):
1029
1067
  __props__.__dict__["name"] = name
1030
1068
  __props__.__dict__["node_type"] = node_type
1031
1069
  __props__.__dict__["password"] = password
1070
+ __props__.__dict__["private_ips"] = private_ips
1032
1071
  __props__.__dict__["private_networks"] = private_networks
1033
1072
  __props__.__dict__["project_id"] = project_id
1034
1073
  __props__.__dict__["public_network"] = public_network
@@ -1115,6 +1154,14 @@ class RedisCluster(pulumi.CustomResource):
1115
1154
  """
1116
1155
  return pulumi.get(self, "password")
1117
1156
 
1157
+ @property
1158
+ @pulumi.getter(name="privateIps")
1159
+ def private_ips(self) -> pulumi.Output[Sequence['outputs.RedisClusterPrivateIp']]:
1160
+ """
1161
+ The list of private IPv4 addresses associated with the resource.
1162
+ """
1163
+ return pulumi.get(self, "private_ips")
1164
+
1118
1165
  @property
1119
1166
  @pulumi.getter(name="privateNetworks")
1120
1167
  def private_networks(self) -> pulumi.Output[Optional[Sequence['outputs.RedisClusterPrivateNetwork']]]: