pulumiverse-scaleway 1.23.0a1736837529__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.

Potentially problematic release.


This version of pulumiverse-scaleway might be problematic. Click here for more details.

Files changed (205) hide show
  1. pulumiverse_scaleway/__init__.py +1065 -0
  2. pulumiverse_scaleway/_inputs.py +8688 -0
  3. pulumiverse_scaleway/_utilities.py +327 -0
  4. pulumiverse_scaleway/account_project.py +316 -0
  5. pulumiverse_scaleway/account_ssh_key.py +454 -0
  6. pulumiverse_scaleway/apple_silicon_server.py +564 -0
  7. pulumiverse_scaleway/baremetal_server.py +1579 -0
  8. pulumiverse_scaleway/block_snapshot.py +401 -0
  9. pulumiverse_scaleway/block_volume.py +527 -0
  10. pulumiverse_scaleway/cockpit.py +314 -0
  11. pulumiverse_scaleway/cockpit_alert_manager.py +401 -0
  12. pulumiverse_scaleway/cockpit_grafana_user.py +362 -0
  13. pulumiverse_scaleway/cockpit_source.py +567 -0
  14. pulumiverse_scaleway/cockpit_token.py +479 -0
  15. pulumiverse_scaleway/config/__init__.py +8 -0
  16. pulumiverse_scaleway/config/__init__.pyi +56 -0
  17. pulumiverse_scaleway/config/vars.py +78 -0
  18. pulumiverse_scaleway/container.py +1373 -0
  19. pulumiverse_scaleway/container_cron.py +458 -0
  20. pulumiverse_scaleway/container_domain.py +406 -0
  21. pulumiverse_scaleway/container_namespace.py +636 -0
  22. pulumiverse_scaleway/container_token.py +452 -0
  23. pulumiverse_scaleway/container_trigger.py +480 -0
  24. pulumiverse_scaleway/database.py +407 -0
  25. pulumiverse_scaleway/database_acl.py +332 -0
  26. pulumiverse_scaleway/database_backup.py +574 -0
  27. pulumiverse_scaleway/database_instance.py +1641 -0
  28. pulumiverse_scaleway/database_privilege.py +422 -0
  29. pulumiverse_scaleway/database_read_replica.py +528 -0
  30. pulumiverse_scaleway/database_user.py +446 -0
  31. pulumiverse_scaleway/domain_record.py +1116 -0
  32. pulumiverse_scaleway/domain_zone.py +430 -0
  33. pulumiverse_scaleway/flexible_ip.py +702 -0
  34. pulumiverse_scaleway/flexible_ip_mac_address.py +510 -0
  35. pulumiverse_scaleway/function.py +1103 -0
  36. pulumiverse_scaleway/function_cron.py +462 -0
  37. pulumiverse_scaleway/function_domain.py +370 -0
  38. pulumiverse_scaleway/function_namespace.py +580 -0
  39. pulumiverse_scaleway/function_token.py +460 -0
  40. pulumiverse_scaleway/function_trigger.py +480 -0
  41. pulumiverse_scaleway/get_account_project.py +170 -0
  42. pulumiverse_scaleway/get_account_ssh_key.py +205 -0
  43. pulumiverse_scaleway/get_availability_zones.py +139 -0
  44. pulumiverse_scaleway/get_baremetal_offer.py +245 -0
  45. pulumiverse_scaleway/get_baremetal_option.py +168 -0
  46. pulumiverse_scaleway/get_baremetal_os.py +174 -0
  47. pulumiverse_scaleway/get_baremetal_server.py +422 -0
  48. pulumiverse_scaleway/get_billing_consumptions.py +134 -0
  49. pulumiverse_scaleway/get_billing_invoices.py +154 -0
  50. pulumiverse_scaleway/get_block_snapshot.py +174 -0
  51. pulumiverse_scaleway/get_block_volume.py +188 -0
  52. pulumiverse_scaleway/get_cockpit.py +204 -0
  53. pulumiverse_scaleway/get_cockpit_plan.py +125 -0
  54. pulumiverse_scaleway/get_cockpit_source.py +262 -0
  55. pulumiverse_scaleway/get_config.py +180 -0
  56. pulumiverse_scaleway/get_container.py +522 -0
  57. pulumiverse_scaleway/get_container_namespace.py +283 -0
  58. pulumiverse_scaleway/get_database.py +187 -0
  59. pulumiverse_scaleway/get_database_acl.py +143 -0
  60. pulumiverse_scaleway/get_database_backup.py +253 -0
  61. pulumiverse_scaleway/get_database_instance.py +404 -0
  62. pulumiverse_scaleway/get_database_privilege.py +181 -0
  63. pulumiverse_scaleway/get_domain_record.py +340 -0
  64. pulumiverse_scaleway/get_domain_zone.py +201 -0
  65. pulumiverse_scaleway/get_flexible_ip.py +247 -0
  66. pulumiverse_scaleway/get_flexible_ips.py +240 -0
  67. pulumiverse_scaleway/get_function.py +365 -0
  68. pulumiverse_scaleway/get_function_namespace.py +238 -0
  69. pulumiverse_scaleway/get_iam_api_key.py +210 -0
  70. pulumiverse_scaleway/get_iam_application.py +210 -0
  71. pulumiverse_scaleway/get_iam_group.py +236 -0
  72. pulumiverse_scaleway/get_iam_ssh_key.py +212 -0
  73. pulumiverse_scaleway/get_iam_user.py +177 -0
  74. pulumiverse_scaleway/get_instance_image.py +305 -0
  75. pulumiverse_scaleway/get_instance_ip.py +204 -0
  76. pulumiverse_scaleway/get_instance_placement_group.py +212 -0
  77. pulumiverse_scaleway/get_instance_private_nic.py +226 -0
  78. pulumiverse_scaleway/get_instance_security_group.py +268 -0
  79. pulumiverse_scaleway/get_instance_server.py +502 -0
  80. pulumiverse_scaleway/get_instance_servers.py +187 -0
  81. pulumiverse_scaleway/get_instance_snapshot.py +248 -0
  82. pulumiverse_scaleway/get_instance_volume.py +215 -0
  83. pulumiverse_scaleway/get_iot_device.py +257 -0
  84. pulumiverse_scaleway/get_iot_hub.py +322 -0
  85. pulumiverse_scaleway/get_ipam_ip.py +419 -0
  86. pulumiverse_scaleway/get_ipam_ips.py +358 -0
  87. pulumiverse_scaleway/get_k8s_version.py +196 -0
  88. pulumiverse_scaleway/get_kubernetes_cluster.py +417 -0
  89. pulumiverse_scaleway/get_kubernetes_node_pool.py +436 -0
  90. pulumiverse_scaleway/get_lb_acls.py +198 -0
  91. pulumiverse_scaleway/get_lb_backend.py +486 -0
  92. pulumiverse_scaleway/get_lb_backends.py +196 -0
  93. pulumiverse_scaleway/get_lb_frontend.py +274 -0
  94. pulumiverse_scaleway/get_lb_frontends.py +196 -0
  95. pulumiverse_scaleway/get_lb_ips.py +198 -0
  96. pulumiverse_scaleway/get_lb_route.py +217 -0
  97. pulumiverse_scaleway/get_lb_routes.py +179 -0
  98. pulumiverse_scaleway/get_lbs.py +187 -0
  99. pulumiverse_scaleway/get_loadbalancer.py +339 -0
  100. pulumiverse_scaleway/get_loadbalancer_certificate.py +230 -0
  101. pulumiverse_scaleway/get_loadbalancer_ip.py +228 -0
  102. pulumiverse_scaleway/get_marketplace_image.py +147 -0
  103. pulumiverse_scaleway/get_mnq_sns.py +150 -0
  104. pulumiverse_scaleway/get_mnq_sqs.py +150 -0
  105. pulumiverse_scaleway/get_mongo_db_instance.py +324 -0
  106. pulumiverse_scaleway/get_object_bucket.py +290 -0
  107. pulumiverse_scaleway/get_object_bucket_policy.py +163 -0
  108. pulumiverse_scaleway/get_redis_cluster.py +347 -0
  109. pulumiverse_scaleway/get_registry_image.py +239 -0
  110. pulumiverse_scaleway/get_registry_image_tag.py +229 -0
  111. pulumiverse_scaleway/get_registry_namespace.py +199 -0
  112. pulumiverse_scaleway/get_secret.py +338 -0
  113. pulumiverse_scaleway/get_secret_version.py +340 -0
  114. pulumiverse_scaleway/get_tem_domain.py +378 -0
  115. pulumiverse_scaleway/get_vpc.py +246 -0
  116. pulumiverse_scaleway/get_vpc_gateway_network.py +287 -0
  117. pulumiverse_scaleway/get_vpc_private_network.py +282 -0
  118. pulumiverse_scaleway/get_vpc_public_gateway.py +304 -0
  119. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +305 -0
  120. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +382 -0
  121. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +199 -0
  122. pulumiverse_scaleway/get_vpc_public_pat_rule.py +313 -0
  123. pulumiverse_scaleway/get_vpc_routes.py +208 -0
  124. pulumiverse_scaleway/get_vpcs.py +174 -0
  125. pulumiverse_scaleway/get_web_host_offer.py +192 -0
  126. pulumiverse_scaleway/get_webhosting.py +332 -0
  127. pulumiverse_scaleway/iam_api_key.py +620 -0
  128. pulumiverse_scaleway/iam_application.py +417 -0
  129. pulumiverse_scaleway/iam_group.py +566 -0
  130. pulumiverse_scaleway/iam_group_membership.py +323 -0
  131. pulumiverse_scaleway/iam_policy.py +773 -0
  132. pulumiverse_scaleway/iam_ssh_key.py +455 -0
  133. pulumiverse_scaleway/iam_user.py +513 -0
  134. pulumiverse_scaleway/inference_deployment.py +822 -0
  135. pulumiverse_scaleway/instance_image.py +750 -0
  136. pulumiverse_scaleway/instance_ip.py +483 -0
  137. pulumiverse_scaleway/instance_ip_reverse_dns.py +308 -0
  138. pulumiverse_scaleway/instance_placement_group.py +479 -0
  139. pulumiverse_scaleway/instance_private_nic.py +555 -0
  140. pulumiverse_scaleway/instance_security_group.py +720 -0
  141. pulumiverse_scaleway/instance_security_group_rules.py +439 -0
  142. pulumiverse_scaleway/instance_server.py +2006 -0
  143. pulumiverse_scaleway/instance_snapshot.py +669 -0
  144. pulumiverse_scaleway/instance_user_data.py +435 -0
  145. pulumiverse_scaleway/instance_volume.py +535 -0
  146. pulumiverse_scaleway/iot_device.py +750 -0
  147. pulumiverse_scaleway/iot_hub.py +896 -0
  148. pulumiverse_scaleway/iot_network.py +472 -0
  149. pulumiverse_scaleway/iot_route.py +660 -0
  150. pulumiverse_scaleway/ipam_ip.py +757 -0
  151. pulumiverse_scaleway/ipam_ip_reverse_dns.py +318 -0
  152. pulumiverse_scaleway/job_definition.py +692 -0
  153. pulumiverse_scaleway/kubernetes_cluster.py +1538 -0
  154. pulumiverse_scaleway/kubernetes_node_pool.py +1255 -0
  155. pulumiverse_scaleway/loadbalancer.py +1061 -0
  156. pulumiverse_scaleway/loadbalancer_acl.py +520 -0
  157. pulumiverse_scaleway/loadbalancer_backend.py +1588 -0
  158. pulumiverse_scaleway/loadbalancer_certificate.py +460 -0
  159. pulumiverse_scaleway/loadbalancer_frontend.py +829 -0
  160. pulumiverse_scaleway/loadbalancer_ip.py +514 -0
  161. pulumiverse_scaleway/loadbalancer_route.py +523 -0
  162. pulumiverse_scaleway/mnq_nats_account.py +334 -0
  163. pulumiverse_scaleway/mnq_nats_credentials.py +330 -0
  164. pulumiverse_scaleway/mnq_sns.py +306 -0
  165. pulumiverse_scaleway/mnq_sns_credentials.py +413 -0
  166. pulumiverse_scaleway/mnq_sns_topic.py +659 -0
  167. pulumiverse_scaleway/mnq_sns_topic_subscription.py +699 -0
  168. pulumiverse_scaleway/mnq_sqs.py +304 -0
  169. pulumiverse_scaleway/mnq_sqs_credentials.py +413 -0
  170. pulumiverse_scaleway/mnq_sqs_queue.py +800 -0
  171. pulumiverse_scaleway/mongo_db_instance.py +907 -0
  172. pulumiverse_scaleway/mongo_db_snapshot.py +521 -0
  173. pulumiverse_scaleway/object_bucket.py +874 -0
  174. pulumiverse_scaleway/object_bucket_acl.py +596 -0
  175. pulumiverse_scaleway/object_bucket_lock_configuration.py +395 -0
  176. pulumiverse_scaleway/object_bucket_policy.py +673 -0
  177. pulumiverse_scaleway/object_bucket_website_configuration.py +534 -0
  178. pulumiverse_scaleway/object_item.py +776 -0
  179. pulumiverse_scaleway/outputs.py +11808 -0
  180. pulumiverse_scaleway/provider.py +327 -0
  181. pulumiverse_scaleway/pulumi-plugin.json +6 -0
  182. pulumiverse_scaleway/py.typed +0 -0
  183. pulumiverse_scaleway/redis_cluster.py +1201 -0
  184. pulumiverse_scaleway/registry_namespace.py +458 -0
  185. pulumiverse_scaleway/sdb_database.py +432 -0
  186. pulumiverse_scaleway/secret.py +663 -0
  187. pulumiverse_scaleway/secret_version.py +487 -0
  188. pulumiverse_scaleway/tem_domain.py +1030 -0
  189. pulumiverse_scaleway/tem_domain_validation.py +303 -0
  190. pulumiverse_scaleway/tem_webhook.py +640 -0
  191. pulumiverse_scaleway/vpc.py +536 -0
  192. pulumiverse_scaleway/vpc_gateway_network.py +866 -0
  193. pulumiverse_scaleway/vpc_private_network.py +734 -0
  194. pulumiverse_scaleway/vpc_public_gateway.py +789 -0
  195. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +933 -0
  196. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +514 -0
  197. pulumiverse_scaleway/vpc_public_gateway_ip.py +457 -0
  198. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +306 -0
  199. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +591 -0
  200. pulumiverse_scaleway/vpc_route.py +577 -0
  201. pulumiverse_scaleway/webhosting.py +805 -0
  202. pulumiverse_scaleway-1.23.0a1736837529.dist-info/METADATA +77 -0
  203. pulumiverse_scaleway-1.23.0a1736837529.dist-info/RECORD +205 -0
  204. pulumiverse_scaleway-1.23.0a1736837529.dist-info/WHEEL +5 -0
  205. pulumiverse_scaleway-1.23.0a1736837529.dist-info/top_level.txt +1 -0
@@ -0,0 +1,163 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+
17
+ __all__ = [
18
+ 'GetObjectBucketPolicyResult',
19
+ 'AwaitableGetObjectBucketPolicyResult',
20
+ 'get_object_bucket_policy',
21
+ 'get_object_bucket_policy_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetObjectBucketPolicyResult:
26
+ """
27
+ A collection of values returned by getObjectBucketPolicy.
28
+ """
29
+ def __init__(__self__, bucket=None, id=None, policy=None, project_id=None, region=None):
30
+ if bucket and not isinstance(bucket, str):
31
+ raise TypeError("Expected argument 'bucket' to be a str")
32
+ pulumi.set(__self__, "bucket", bucket)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if policy and not isinstance(policy, str):
37
+ raise TypeError("Expected argument 'policy' to be a str")
38
+ pulumi.set(__self__, "policy", policy)
39
+ if project_id and not isinstance(project_id, str):
40
+ raise TypeError("Expected argument 'project_id' to be a str")
41
+ pulumi.set(__self__, "project_id", project_id)
42
+ if region and not isinstance(region, str):
43
+ raise TypeError("Expected argument 'region' to be a str")
44
+ pulumi.set(__self__, "region", region)
45
+
46
+ @property
47
+ @pulumi.getter
48
+ def bucket(self) -> str:
49
+ return pulumi.get(self, "bucket")
50
+
51
+ @property
52
+ @pulumi.getter
53
+ def id(self) -> str:
54
+ """
55
+ The provider-assigned unique ID for this managed resource.
56
+ """
57
+ return pulumi.get(self, "id")
58
+
59
+ @property
60
+ @pulumi.getter
61
+ def policy(self) -> str:
62
+ """
63
+ The content of the bucket policy in JSON format.
64
+ """
65
+ return pulumi.get(self, "policy")
66
+
67
+ @property
68
+ @pulumi.getter(name="projectId")
69
+ def project_id(self) -> Optional[str]:
70
+ return pulumi.get(self, "project_id")
71
+
72
+ @property
73
+ @pulumi.getter
74
+ def region(self) -> Optional[str]:
75
+ return pulumi.get(self, "region")
76
+
77
+
78
+ class AwaitableGetObjectBucketPolicyResult(GetObjectBucketPolicyResult):
79
+ # pylint: disable=using-constant-test
80
+ def __await__(self):
81
+ if False:
82
+ yield self
83
+ return GetObjectBucketPolicyResult(
84
+ bucket=self.bucket,
85
+ id=self.id,
86
+ policy=self.policy,
87
+ project_id=self.project_id,
88
+ region=self.region)
89
+
90
+
91
+ def get_object_bucket_policy(bucket: Optional[str] = None,
92
+ project_id: Optional[str] = None,
93
+ region: Optional[str] = None,
94
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetObjectBucketPolicyResult:
95
+ """
96
+ The `ObjectBucketPolicy` data source is used to retrieve information about the bucket policy of an Object Storage bucket.
97
+
98
+ Refer to the Object Storage [documentation](https://www.scaleway.com/en/docs/storage/object/api-cli/bucket-policy/) for more information.
99
+
100
+ ## Retrieve the bucket policy of a bucket
101
+
102
+ The following command allows you to retrieve a bucket policy by its bucket.
103
+
104
+ ```python
105
+ import pulumi
106
+ import pulumi_scaleway as scaleway
107
+
108
+ main = scaleway.get_object_bucket_policy(bucket="bucket.test.com")
109
+ ```
110
+
111
+
112
+ :param str bucket: The name of the bucket.
113
+ :param str region: `region`) The region in which the Object Storage exists.
114
+ """
115
+ __args__ = dict()
116
+ __args__['bucket'] = bucket
117
+ __args__['projectId'] = project_id
118
+ __args__['region'] = region
119
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
120
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getObjectBucketPolicy:getObjectBucketPolicy', __args__, opts=opts, typ=GetObjectBucketPolicyResult).value
121
+
122
+ return AwaitableGetObjectBucketPolicyResult(
123
+ bucket=pulumi.get(__ret__, 'bucket'),
124
+ id=pulumi.get(__ret__, 'id'),
125
+ policy=pulumi.get(__ret__, 'policy'),
126
+ project_id=pulumi.get(__ret__, 'project_id'),
127
+ region=pulumi.get(__ret__, 'region'))
128
+ def get_object_bucket_policy_output(bucket: Optional[pulumi.Input[str]] = None,
129
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
130
+ region: Optional[pulumi.Input[Optional[str]]] = None,
131
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetObjectBucketPolicyResult]:
132
+ """
133
+ The `ObjectBucketPolicy` data source is used to retrieve information about the bucket policy of an Object Storage bucket.
134
+
135
+ Refer to the Object Storage [documentation](https://www.scaleway.com/en/docs/storage/object/api-cli/bucket-policy/) for more information.
136
+
137
+ ## Retrieve the bucket policy of a bucket
138
+
139
+ The following command allows you to retrieve a bucket policy by its bucket.
140
+
141
+ ```python
142
+ import pulumi
143
+ import pulumi_scaleway as scaleway
144
+
145
+ main = scaleway.get_object_bucket_policy(bucket="bucket.test.com")
146
+ ```
147
+
148
+
149
+ :param str bucket: The name of the bucket.
150
+ :param str region: `region`) The region in which the Object Storage exists.
151
+ """
152
+ __args__ = dict()
153
+ __args__['bucket'] = bucket
154
+ __args__['projectId'] = project_id
155
+ __args__['region'] = region
156
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
157
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getObjectBucketPolicy:getObjectBucketPolicy', __args__, opts=opts, typ=GetObjectBucketPolicyResult)
158
+ return __ret__.apply(lambda __response__: GetObjectBucketPolicyResult(
159
+ bucket=pulumi.get(__response__, 'bucket'),
160
+ id=pulumi.get(__response__, 'id'),
161
+ policy=pulumi.get(__response__, 'policy'),
162
+ project_id=pulumi.get(__response__, 'project_id'),
163
+ region=pulumi.get(__response__, 'region')))
@@ -0,0 +1,347 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetRedisClusterResult',
20
+ 'AwaitableGetRedisClusterResult',
21
+ 'get_redis_cluster',
22
+ 'get_redis_cluster_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetRedisClusterResult:
27
+ """
28
+ A collection of values returned by getRedisCluster.
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):
31
+ if acls and not isinstance(acls, list):
32
+ raise TypeError("Expected argument 'acls' to be a list")
33
+ pulumi.set(__self__, "acls", acls)
34
+ if certificate and not isinstance(certificate, str):
35
+ raise TypeError("Expected argument 'certificate' to be a str")
36
+ pulumi.set(__self__, "certificate", certificate)
37
+ if cluster_id and not isinstance(cluster_id, str):
38
+ raise TypeError("Expected argument 'cluster_id' to be a str")
39
+ pulumi.set(__self__, "cluster_id", cluster_id)
40
+ if cluster_size and not isinstance(cluster_size, int):
41
+ raise TypeError("Expected argument 'cluster_size' to be a int")
42
+ pulumi.set(__self__, "cluster_size", cluster_size)
43
+ if created_at and not isinstance(created_at, str):
44
+ raise TypeError("Expected argument 'created_at' to be a str")
45
+ pulumi.set(__self__, "created_at", created_at)
46
+ if id and not isinstance(id, str):
47
+ raise TypeError("Expected argument 'id' to be a str")
48
+ pulumi.set(__self__, "id", id)
49
+ if name and not isinstance(name, str):
50
+ raise TypeError("Expected argument 'name' to be a str")
51
+ pulumi.set(__self__, "name", name)
52
+ if node_type and not isinstance(node_type, str):
53
+ raise TypeError("Expected argument 'node_type' to be a str")
54
+ pulumi.set(__self__, "node_type", node_type)
55
+ if password and not isinstance(password, str):
56
+ raise TypeError("Expected argument 'password' to be a str")
57
+ pulumi.set(__self__, "password", password)
58
+ if private_networks and not isinstance(private_networks, list):
59
+ raise TypeError("Expected argument 'private_networks' to be a list")
60
+ pulumi.set(__self__, "private_networks", private_networks)
61
+ if project_id and not isinstance(project_id, str):
62
+ raise TypeError("Expected argument 'project_id' to be a str")
63
+ pulumi.set(__self__, "project_id", project_id)
64
+ if public_networks and not isinstance(public_networks, list):
65
+ raise TypeError("Expected argument 'public_networks' to be a list")
66
+ pulumi.set(__self__, "public_networks", public_networks)
67
+ if settings and not isinstance(settings, dict):
68
+ raise TypeError("Expected argument 'settings' to be a dict")
69
+ pulumi.set(__self__, "settings", settings)
70
+ if tags and not isinstance(tags, list):
71
+ raise TypeError("Expected argument 'tags' to be a list")
72
+ pulumi.set(__self__, "tags", tags)
73
+ if tls_enabled and not isinstance(tls_enabled, bool):
74
+ raise TypeError("Expected argument 'tls_enabled' to be a bool")
75
+ pulumi.set(__self__, "tls_enabled", tls_enabled)
76
+ if updated_at and not isinstance(updated_at, str):
77
+ raise TypeError("Expected argument 'updated_at' to be a str")
78
+ pulumi.set(__self__, "updated_at", updated_at)
79
+ if user_name and not isinstance(user_name, str):
80
+ raise TypeError("Expected argument 'user_name' to be a str")
81
+ pulumi.set(__self__, "user_name", user_name)
82
+ if version and not isinstance(version, str):
83
+ raise TypeError("Expected argument 'version' to be a str")
84
+ pulumi.set(__self__, "version", version)
85
+ if zone and not isinstance(zone, str):
86
+ raise TypeError("Expected argument 'zone' to be a str")
87
+ pulumi.set(__self__, "zone", zone)
88
+
89
+ @property
90
+ @pulumi.getter
91
+ def acls(self) -> Sequence['outputs.GetRedisClusterAclResult']:
92
+ """
93
+ List of acl rules.
94
+ """
95
+ return pulumi.get(self, "acls")
96
+
97
+ @property
98
+ @pulumi.getter
99
+ def certificate(self) -> str:
100
+ """
101
+ The PEM of the certificate used by redis, only when `tls_enabled` is true.
102
+ """
103
+ return pulumi.get(self, "certificate")
104
+
105
+ @property
106
+ @pulumi.getter(name="clusterId")
107
+ def cluster_id(self) -> Optional[str]:
108
+ return pulumi.get(self, "cluster_id")
109
+
110
+ @property
111
+ @pulumi.getter(name="clusterSize")
112
+ def cluster_size(self) -> int:
113
+ """
114
+ The number of nodes in the Redis Cluster.
115
+ """
116
+ return pulumi.get(self, "cluster_size")
117
+
118
+ @property
119
+ @pulumi.getter(name="createdAt")
120
+ def created_at(self) -> str:
121
+ """
122
+ The date and time of creation of the Redis Cluster.
123
+ """
124
+ return pulumi.get(self, "created_at")
125
+
126
+ @property
127
+ @pulumi.getter
128
+ def id(self) -> str:
129
+ """
130
+ The provider-assigned unique ID for this managed resource.
131
+ """
132
+ return pulumi.get(self, "id")
133
+
134
+ @property
135
+ @pulumi.getter
136
+ def name(self) -> Optional[str]:
137
+ return pulumi.get(self, "name")
138
+
139
+ @property
140
+ @pulumi.getter(name="nodeType")
141
+ def node_type(self) -> str:
142
+ """
143
+ The type of Redis Cluster (e.g. `RED1-M`).
144
+ """
145
+ return pulumi.get(self, "node_type")
146
+
147
+ @property
148
+ @pulumi.getter
149
+ def password(self) -> str:
150
+ """
151
+ Password of the first user of the Redis Cluster.
152
+ """
153
+ return pulumi.get(self, "password")
154
+
155
+ @property
156
+ @pulumi.getter(name="privateNetworks")
157
+ def private_networks(self) -> Sequence['outputs.GetRedisClusterPrivateNetworkResult']:
158
+ """
159
+ List of private networks endpoints of the Redis Cluster.
160
+ """
161
+ return pulumi.get(self, "private_networks")
162
+
163
+ @property
164
+ @pulumi.getter(name="projectId")
165
+ def project_id(self) -> Optional[str]:
166
+ return pulumi.get(self, "project_id")
167
+
168
+ @property
169
+ @pulumi.getter(name="publicNetworks")
170
+ def public_networks(self) -> Sequence['outputs.GetRedisClusterPublicNetworkResult']:
171
+ """
172
+ Public network details.
173
+ """
174
+ return pulumi.get(self, "public_networks")
175
+
176
+ @property
177
+ @pulumi.getter
178
+ def settings(self) -> Mapping[str, str]:
179
+ """
180
+ Map of settings for redis cluster.
181
+ """
182
+ return pulumi.get(self, "settings")
183
+
184
+ @property
185
+ @pulumi.getter
186
+ def tags(self) -> Sequence[str]:
187
+ """
188
+ The tags associated with the Redis Cluster.
189
+ """
190
+ return pulumi.get(self, "tags")
191
+
192
+ @property
193
+ @pulumi.getter(name="tlsEnabled")
194
+ def tls_enabled(self) -> bool:
195
+ """
196
+ Whether TLS is enabled or not.
197
+ """
198
+ return pulumi.get(self, "tls_enabled")
199
+
200
+ @property
201
+ @pulumi.getter(name="updatedAt")
202
+ def updated_at(self) -> str:
203
+ """
204
+ The date and time of the last update of the Redis Cluster.
205
+ """
206
+ return pulumi.get(self, "updated_at")
207
+
208
+ @property
209
+ @pulumi.getter(name="userName")
210
+ def user_name(self) -> str:
211
+ """
212
+ The first user of the Redis Cluster.
213
+ """
214
+ return pulumi.get(self, "user_name")
215
+
216
+ @property
217
+ @pulumi.getter
218
+ def version(self) -> str:
219
+ """
220
+ Redis's Cluster version (e.g. `6.2.7`).
221
+ """
222
+ return pulumi.get(self, "version")
223
+
224
+ @property
225
+ @pulumi.getter
226
+ def zone(self) -> Optional[str]:
227
+ return pulumi.get(self, "zone")
228
+
229
+
230
+ class AwaitableGetRedisClusterResult(GetRedisClusterResult):
231
+ # pylint: disable=using-constant-test
232
+ def __await__(self):
233
+ if False:
234
+ yield self
235
+ return GetRedisClusterResult(
236
+ acls=self.acls,
237
+ certificate=self.certificate,
238
+ cluster_id=self.cluster_id,
239
+ cluster_size=self.cluster_size,
240
+ created_at=self.created_at,
241
+ id=self.id,
242
+ name=self.name,
243
+ node_type=self.node_type,
244
+ password=self.password,
245
+ private_networks=self.private_networks,
246
+ project_id=self.project_id,
247
+ public_networks=self.public_networks,
248
+ settings=self.settings,
249
+ tags=self.tags,
250
+ tls_enabled=self.tls_enabled,
251
+ updated_at=self.updated_at,
252
+ user_name=self.user_name,
253
+ version=self.version,
254
+ zone=self.zone)
255
+
256
+
257
+ def get_redis_cluster(cluster_id: Optional[str] = None,
258
+ name: Optional[str] = None,
259
+ project_id: Optional[str] = None,
260
+ zone: Optional[str] = None,
261
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRedisClusterResult:
262
+ """
263
+ Gets information about a Redis™ cluster.
264
+
265
+ For further information refer to the Managed Database for Redis™ [API documentation](https://developers.scaleway.com/en/products/redis/api/v1alpha1/#clusters-a85816).
266
+
267
+
268
+ :param str cluster_id: The Redis cluster ID.
269
+
270
+ > **Note** You must specify at least one: `name` and/or `cluster_id`.
271
+ :param str name: The name of the Redis cluster.
272
+ :param str project_id: The ID of the project the Redis cluster is associated with.
273
+ :param str zone: `region`) The zone in which the server exists.
274
+ """
275
+ __args__ = dict()
276
+ __args__['clusterId'] = cluster_id
277
+ __args__['name'] = name
278
+ __args__['projectId'] = project_id
279
+ __args__['zone'] = zone
280
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
281
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getRedisCluster:getRedisCluster', __args__, opts=opts, typ=GetRedisClusterResult).value
282
+
283
+ return AwaitableGetRedisClusterResult(
284
+ acls=pulumi.get(__ret__, 'acls'),
285
+ certificate=pulumi.get(__ret__, 'certificate'),
286
+ cluster_id=pulumi.get(__ret__, 'cluster_id'),
287
+ cluster_size=pulumi.get(__ret__, 'cluster_size'),
288
+ created_at=pulumi.get(__ret__, 'created_at'),
289
+ id=pulumi.get(__ret__, 'id'),
290
+ name=pulumi.get(__ret__, 'name'),
291
+ node_type=pulumi.get(__ret__, 'node_type'),
292
+ password=pulumi.get(__ret__, 'password'),
293
+ private_networks=pulumi.get(__ret__, 'private_networks'),
294
+ project_id=pulumi.get(__ret__, 'project_id'),
295
+ public_networks=pulumi.get(__ret__, 'public_networks'),
296
+ settings=pulumi.get(__ret__, 'settings'),
297
+ tags=pulumi.get(__ret__, 'tags'),
298
+ tls_enabled=pulumi.get(__ret__, 'tls_enabled'),
299
+ updated_at=pulumi.get(__ret__, 'updated_at'),
300
+ user_name=pulumi.get(__ret__, 'user_name'),
301
+ version=pulumi.get(__ret__, 'version'),
302
+ zone=pulumi.get(__ret__, 'zone'))
303
+ def get_redis_cluster_output(cluster_id: Optional[pulumi.Input[Optional[str]]] = None,
304
+ name: Optional[pulumi.Input[Optional[str]]] = None,
305
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
306
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
307
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRedisClusterResult]:
308
+ """
309
+ Gets information about a Redis™ cluster.
310
+
311
+ For further information refer to the Managed Database for Redis™ [API documentation](https://developers.scaleway.com/en/products/redis/api/v1alpha1/#clusters-a85816).
312
+
313
+
314
+ :param str cluster_id: The Redis cluster ID.
315
+
316
+ > **Note** You must specify at least one: `name` and/or `cluster_id`.
317
+ :param str name: The name of the Redis cluster.
318
+ :param str project_id: The ID of the project the Redis cluster is associated with.
319
+ :param str zone: `region`) The zone in which the server exists.
320
+ """
321
+ __args__ = dict()
322
+ __args__['clusterId'] = cluster_id
323
+ __args__['name'] = name
324
+ __args__['projectId'] = project_id
325
+ __args__['zone'] = zone
326
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
327
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getRedisCluster:getRedisCluster', __args__, opts=opts, typ=GetRedisClusterResult)
328
+ return __ret__.apply(lambda __response__: GetRedisClusterResult(
329
+ acls=pulumi.get(__response__, 'acls'),
330
+ certificate=pulumi.get(__response__, 'certificate'),
331
+ cluster_id=pulumi.get(__response__, 'cluster_id'),
332
+ cluster_size=pulumi.get(__response__, 'cluster_size'),
333
+ created_at=pulumi.get(__response__, 'created_at'),
334
+ id=pulumi.get(__response__, 'id'),
335
+ name=pulumi.get(__response__, 'name'),
336
+ node_type=pulumi.get(__response__, 'node_type'),
337
+ password=pulumi.get(__response__, 'password'),
338
+ private_networks=pulumi.get(__response__, 'private_networks'),
339
+ project_id=pulumi.get(__response__, 'project_id'),
340
+ public_networks=pulumi.get(__response__, 'public_networks'),
341
+ settings=pulumi.get(__response__, 'settings'),
342
+ tags=pulumi.get(__response__, 'tags'),
343
+ tls_enabled=pulumi.get(__response__, 'tls_enabled'),
344
+ updated_at=pulumi.get(__response__, 'updated_at'),
345
+ user_name=pulumi.get(__response__, 'user_name'),
346
+ version=pulumi.get(__response__, 'version'),
347
+ zone=pulumi.get(__response__, 'zone')))