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,253 @@
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
+ 'GetDatabaseBackupResult',
19
+ 'AwaitableGetDatabaseBackupResult',
20
+ 'get_database_backup',
21
+ 'get_database_backup_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetDatabaseBackupResult:
26
+ """
27
+ A collection of values returned by getDatabaseBackup.
28
+ """
29
+ def __init__(__self__, backup_id=None, created_at=None, database_name=None, expires_at=None, id=None, instance_id=None, instance_name=None, name=None, project_id=None, region=None, size=None, updated_at=None):
30
+ if backup_id and not isinstance(backup_id, str):
31
+ raise TypeError("Expected argument 'backup_id' to be a str")
32
+ pulumi.set(__self__, "backup_id", backup_id)
33
+ if created_at and not isinstance(created_at, str):
34
+ raise TypeError("Expected argument 'created_at' to be a str")
35
+ pulumi.set(__self__, "created_at", created_at)
36
+ if database_name and not isinstance(database_name, str):
37
+ raise TypeError("Expected argument 'database_name' to be a str")
38
+ pulumi.set(__self__, "database_name", database_name)
39
+ if expires_at and not isinstance(expires_at, str):
40
+ raise TypeError("Expected argument 'expires_at' to be a str")
41
+ pulumi.set(__self__, "expires_at", expires_at)
42
+ if id and not isinstance(id, str):
43
+ raise TypeError("Expected argument 'id' to be a str")
44
+ pulumi.set(__self__, "id", id)
45
+ if instance_id and not isinstance(instance_id, str):
46
+ raise TypeError("Expected argument 'instance_id' to be a str")
47
+ pulumi.set(__self__, "instance_id", instance_id)
48
+ if instance_name and not isinstance(instance_name, str):
49
+ raise TypeError("Expected argument 'instance_name' to be a str")
50
+ pulumi.set(__self__, "instance_name", instance_name)
51
+ if name and not isinstance(name, str):
52
+ raise TypeError("Expected argument 'name' to be a str")
53
+ pulumi.set(__self__, "name", name)
54
+ if project_id and not isinstance(project_id, str):
55
+ raise TypeError("Expected argument 'project_id' to be a str")
56
+ pulumi.set(__self__, "project_id", project_id)
57
+ if region and not isinstance(region, str):
58
+ raise TypeError("Expected argument 'region' to be a str")
59
+ pulumi.set(__self__, "region", region)
60
+ if size and not isinstance(size, int):
61
+ raise TypeError("Expected argument 'size' to be a int")
62
+ pulumi.set(__self__, "size", size)
63
+ if updated_at and not isinstance(updated_at, str):
64
+ raise TypeError("Expected argument 'updated_at' to be a str")
65
+ pulumi.set(__self__, "updated_at", updated_at)
66
+
67
+ @property
68
+ @pulumi.getter(name="backupId")
69
+ def backup_id(self) -> Optional[str]:
70
+ return pulumi.get(self, "backup_id")
71
+
72
+ @property
73
+ @pulumi.getter(name="createdAt")
74
+ def created_at(self) -> str:
75
+ return pulumi.get(self, "created_at")
76
+
77
+ @property
78
+ @pulumi.getter(name="databaseName")
79
+ def database_name(self) -> str:
80
+ return pulumi.get(self, "database_name")
81
+
82
+ @property
83
+ @pulumi.getter(name="expiresAt")
84
+ def expires_at(self) -> str:
85
+ return pulumi.get(self, "expires_at")
86
+
87
+ @property
88
+ @pulumi.getter
89
+ def id(self) -> str:
90
+ """
91
+ The provider-assigned unique ID for this managed resource.
92
+ """
93
+ return pulumi.get(self, "id")
94
+
95
+ @property
96
+ @pulumi.getter(name="instanceId")
97
+ def instance_id(self) -> Optional[str]:
98
+ return pulumi.get(self, "instance_id")
99
+
100
+ @property
101
+ @pulumi.getter(name="instanceName")
102
+ def instance_name(self) -> str:
103
+ return pulumi.get(self, "instance_name")
104
+
105
+ @property
106
+ @pulumi.getter
107
+ def name(self) -> Optional[str]:
108
+ return pulumi.get(self, "name")
109
+
110
+ @property
111
+ @pulumi.getter(name="projectId")
112
+ def project_id(self) -> Optional[str]:
113
+ return pulumi.get(self, "project_id")
114
+
115
+ @property
116
+ @pulumi.getter
117
+ def region(self) -> Optional[str]:
118
+ return pulumi.get(self, "region")
119
+
120
+ @property
121
+ @pulumi.getter
122
+ def size(self) -> int:
123
+ return pulumi.get(self, "size")
124
+
125
+ @property
126
+ @pulumi.getter(name="updatedAt")
127
+ def updated_at(self) -> str:
128
+ return pulumi.get(self, "updated_at")
129
+
130
+
131
+ class AwaitableGetDatabaseBackupResult(GetDatabaseBackupResult):
132
+ # pylint: disable=using-constant-test
133
+ def __await__(self):
134
+ if False:
135
+ yield self
136
+ return GetDatabaseBackupResult(
137
+ backup_id=self.backup_id,
138
+ created_at=self.created_at,
139
+ database_name=self.database_name,
140
+ expires_at=self.expires_at,
141
+ id=self.id,
142
+ instance_id=self.instance_id,
143
+ instance_name=self.instance_name,
144
+ name=self.name,
145
+ project_id=self.project_id,
146
+ region=self.region,
147
+ size=self.size,
148
+ updated_at=self.updated_at)
149
+
150
+
151
+ def get_database_backup(backup_id: Optional[str] = None,
152
+ instance_id: Optional[str] = None,
153
+ name: Optional[str] = None,
154
+ project_id: Optional[str] = None,
155
+ region: Optional[str] = None,
156
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDatabaseBackupResult:
157
+ """
158
+ Gets information about an RDB backup.
159
+
160
+ ## Example Usage
161
+
162
+ ```python
163
+ import pulumi
164
+ import pulumi_scaleway as scaleway
165
+
166
+ find_by_name = scaleway.get_database_backup(name="mybackup")
167
+ find_by_name_and_instance = scaleway.get_database_backup(name="mybackup",
168
+ instance_id="11111111-1111-1111-1111-111111111111")
169
+ find_by_id = scaleway.get_database_backup(backup_id="11111111-1111-1111-1111-111111111111")
170
+ ```
171
+
172
+
173
+ :param str backup_id: The backup ID.
174
+ :param str instance_id: The Database Instance ID.
175
+ :param str name: The name of the RDB instance.
176
+
177
+ > **Note** You must specify at least one: `name` and/or `backup_id`.
178
+ :param str project_id: The ID of the project the Database Backup is associated with.
179
+ :param str region: `region`) The region in which the Database Backup is associated with.
180
+ """
181
+ __args__ = dict()
182
+ __args__['backupId'] = backup_id
183
+ __args__['instanceId'] = instance_id
184
+ __args__['name'] = name
185
+ __args__['projectId'] = project_id
186
+ __args__['region'] = region
187
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
188
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getDatabaseBackup:getDatabaseBackup', __args__, opts=opts, typ=GetDatabaseBackupResult).value
189
+
190
+ return AwaitableGetDatabaseBackupResult(
191
+ backup_id=pulumi.get(__ret__, 'backup_id'),
192
+ created_at=pulumi.get(__ret__, 'created_at'),
193
+ database_name=pulumi.get(__ret__, 'database_name'),
194
+ expires_at=pulumi.get(__ret__, 'expires_at'),
195
+ id=pulumi.get(__ret__, 'id'),
196
+ instance_id=pulumi.get(__ret__, 'instance_id'),
197
+ instance_name=pulumi.get(__ret__, 'instance_name'),
198
+ name=pulumi.get(__ret__, 'name'),
199
+ project_id=pulumi.get(__ret__, 'project_id'),
200
+ region=pulumi.get(__ret__, 'region'),
201
+ size=pulumi.get(__ret__, 'size'),
202
+ updated_at=pulumi.get(__ret__, 'updated_at'))
203
+ def get_database_backup_output(backup_id: Optional[pulumi.Input[Optional[str]]] = None,
204
+ instance_id: Optional[pulumi.Input[Optional[str]]] = None,
205
+ name: Optional[pulumi.Input[Optional[str]]] = None,
206
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
207
+ region: Optional[pulumi.Input[Optional[str]]] = None,
208
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseBackupResult]:
209
+ """
210
+ Gets information about an RDB backup.
211
+
212
+ ## Example Usage
213
+
214
+ ```python
215
+ import pulumi
216
+ import pulumi_scaleway as scaleway
217
+
218
+ find_by_name = scaleway.get_database_backup(name="mybackup")
219
+ find_by_name_and_instance = scaleway.get_database_backup(name="mybackup",
220
+ instance_id="11111111-1111-1111-1111-111111111111")
221
+ find_by_id = scaleway.get_database_backup(backup_id="11111111-1111-1111-1111-111111111111")
222
+ ```
223
+
224
+
225
+ :param str backup_id: The backup ID.
226
+ :param str instance_id: The Database Instance ID.
227
+ :param str name: The name of the RDB instance.
228
+
229
+ > **Note** You must specify at least one: `name` and/or `backup_id`.
230
+ :param str project_id: The ID of the project the Database Backup is associated with.
231
+ :param str region: `region`) The region in which the Database Backup is associated with.
232
+ """
233
+ __args__ = dict()
234
+ __args__['backupId'] = backup_id
235
+ __args__['instanceId'] = instance_id
236
+ __args__['name'] = name
237
+ __args__['projectId'] = project_id
238
+ __args__['region'] = region
239
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
240
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getDatabaseBackup:getDatabaseBackup', __args__, opts=opts, typ=GetDatabaseBackupResult)
241
+ return __ret__.apply(lambda __response__: GetDatabaseBackupResult(
242
+ backup_id=pulumi.get(__response__, 'backup_id'),
243
+ created_at=pulumi.get(__response__, 'created_at'),
244
+ database_name=pulumi.get(__response__, 'database_name'),
245
+ expires_at=pulumi.get(__response__, 'expires_at'),
246
+ id=pulumi.get(__response__, 'id'),
247
+ instance_id=pulumi.get(__response__, 'instance_id'),
248
+ instance_name=pulumi.get(__response__, 'instance_name'),
249
+ name=pulumi.get(__response__, 'name'),
250
+ project_id=pulumi.get(__response__, 'project_id'),
251
+ region=pulumi.get(__response__, 'region'),
252
+ size=pulumi.get(__response__, 'size'),
253
+ updated_at=pulumi.get(__response__, 'updated_at')))
@@ -0,0 +1,404 @@
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
+ 'GetDatabaseInstanceResult',
20
+ 'AwaitableGetDatabaseInstanceResult',
21
+ 'get_database_instance',
22
+ 'get_database_instance_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetDatabaseInstanceResult:
27
+ """
28
+ A collection of values returned by getDatabaseInstance.
29
+ """
30
+ def __init__(__self__, backup_same_region=None, backup_schedule_frequency=None, backup_schedule_retention=None, certificate=None, disable_backup=None, encryption_at_rest=None, endpoint_ip=None, endpoint_port=None, engine=None, id=None, init_settings=None, instance_id=None, is_ha_cluster=None, load_balancers=None, logs_policies=None, name=None, node_type=None, organization_id=None, password=None, private_networks=None, project_id=None, read_replicas=None, region=None, settings=None, tags=None, user_name=None, volume_size_in_gb=None, volume_type=None):
31
+ if backup_same_region and not isinstance(backup_same_region, bool):
32
+ raise TypeError("Expected argument 'backup_same_region' to be a bool")
33
+ pulumi.set(__self__, "backup_same_region", backup_same_region)
34
+ if backup_schedule_frequency and not isinstance(backup_schedule_frequency, int):
35
+ raise TypeError("Expected argument 'backup_schedule_frequency' to be a int")
36
+ pulumi.set(__self__, "backup_schedule_frequency", backup_schedule_frequency)
37
+ if backup_schedule_retention and not isinstance(backup_schedule_retention, int):
38
+ raise TypeError("Expected argument 'backup_schedule_retention' to be a int")
39
+ pulumi.set(__self__, "backup_schedule_retention", backup_schedule_retention)
40
+ if certificate and not isinstance(certificate, str):
41
+ raise TypeError("Expected argument 'certificate' to be a str")
42
+ pulumi.set(__self__, "certificate", certificate)
43
+ if disable_backup and not isinstance(disable_backup, bool):
44
+ raise TypeError("Expected argument 'disable_backup' to be a bool")
45
+ pulumi.set(__self__, "disable_backup", disable_backup)
46
+ if encryption_at_rest and not isinstance(encryption_at_rest, bool):
47
+ raise TypeError("Expected argument 'encryption_at_rest' to be a bool")
48
+ pulumi.set(__self__, "encryption_at_rest", encryption_at_rest)
49
+ if endpoint_ip and not isinstance(endpoint_ip, str):
50
+ raise TypeError("Expected argument 'endpoint_ip' to be a str")
51
+ pulumi.set(__self__, "endpoint_ip", endpoint_ip)
52
+ if endpoint_port and not isinstance(endpoint_port, int):
53
+ raise TypeError("Expected argument 'endpoint_port' to be a int")
54
+ pulumi.set(__self__, "endpoint_port", endpoint_port)
55
+ if engine and not isinstance(engine, str):
56
+ raise TypeError("Expected argument 'engine' to be a str")
57
+ pulumi.set(__self__, "engine", engine)
58
+ if id and not isinstance(id, str):
59
+ raise TypeError("Expected argument 'id' to be a str")
60
+ pulumi.set(__self__, "id", id)
61
+ if init_settings and not isinstance(init_settings, dict):
62
+ raise TypeError("Expected argument 'init_settings' to be a dict")
63
+ pulumi.set(__self__, "init_settings", init_settings)
64
+ if instance_id and not isinstance(instance_id, str):
65
+ raise TypeError("Expected argument 'instance_id' to be a str")
66
+ pulumi.set(__self__, "instance_id", instance_id)
67
+ if is_ha_cluster and not isinstance(is_ha_cluster, bool):
68
+ raise TypeError("Expected argument 'is_ha_cluster' to be a bool")
69
+ pulumi.set(__self__, "is_ha_cluster", is_ha_cluster)
70
+ if load_balancers and not isinstance(load_balancers, list):
71
+ raise TypeError("Expected argument 'load_balancers' to be a list")
72
+ pulumi.set(__self__, "load_balancers", load_balancers)
73
+ if logs_policies and not isinstance(logs_policies, list):
74
+ raise TypeError("Expected argument 'logs_policies' to be a list")
75
+ pulumi.set(__self__, "logs_policies", logs_policies)
76
+ if name and not isinstance(name, str):
77
+ raise TypeError("Expected argument 'name' to be a str")
78
+ pulumi.set(__self__, "name", name)
79
+ if node_type and not isinstance(node_type, str):
80
+ raise TypeError("Expected argument 'node_type' to be a str")
81
+ pulumi.set(__self__, "node_type", node_type)
82
+ if organization_id and not isinstance(organization_id, str):
83
+ raise TypeError("Expected argument 'organization_id' to be a str")
84
+ pulumi.set(__self__, "organization_id", organization_id)
85
+ if password and not isinstance(password, str):
86
+ raise TypeError("Expected argument 'password' to be a str")
87
+ pulumi.set(__self__, "password", password)
88
+ if private_networks and not isinstance(private_networks, list):
89
+ raise TypeError("Expected argument 'private_networks' to be a list")
90
+ pulumi.set(__self__, "private_networks", private_networks)
91
+ if project_id and not isinstance(project_id, str):
92
+ raise TypeError("Expected argument 'project_id' to be a str")
93
+ pulumi.set(__self__, "project_id", project_id)
94
+ if read_replicas and not isinstance(read_replicas, list):
95
+ raise TypeError("Expected argument 'read_replicas' to be a list")
96
+ pulumi.set(__self__, "read_replicas", read_replicas)
97
+ if region and not isinstance(region, str):
98
+ raise TypeError("Expected argument 'region' to be a str")
99
+ pulumi.set(__self__, "region", region)
100
+ if settings and not isinstance(settings, dict):
101
+ raise TypeError("Expected argument 'settings' to be a dict")
102
+ pulumi.set(__self__, "settings", settings)
103
+ if tags and not isinstance(tags, list):
104
+ raise TypeError("Expected argument 'tags' to be a list")
105
+ pulumi.set(__self__, "tags", tags)
106
+ if user_name and not isinstance(user_name, str):
107
+ raise TypeError("Expected argument 'user_name' to be a str")
108
+ pulumi.set(__self__, "user_name", user_name)
109
+ if volume_size_in_gb and not isinstance(volume_size_in_gb, int):
110
+ raise TypeError("Expected argument 'volume_size_in_gb' to be a int")
111
+ pulumi.set(__self__, "volume_size_in_gb", volume_size_in_gb)
112
+ if volume_type and not isinstance(volume_type, str):
113
+ raise TypeError("Expected argument 'volume_type' to be a str")
114
+ pulumi.set(__self__, "volume_type", volume_type)
115
+
116
+ @property
117
+ @pulumi.getter(name="backupSameRegion")
118
+ def backup_same_region(self) -> bool:
119
+ return pulumi.get(self, "backup_same_region")
120
+
121
+ @property
122
+ @pulumi.getter(name="backupScheduleFrequency")
123
+ def backup_schedule_frequency(self) -> int:
124
+ return pulumi.get(self, "backup_schedule_frequency")
125
+
126
+ @property
127
+ @pulumi.getter(name="backupScheduleRetention")
128
+ def backup_schedule_retention(self) -> int:
129
+ return pulumi.get(self, "backup_schedule_retention")
130
+
131
+ @property
132
+ @pulumi.getter
133
+ def certificate(self) -> str:
134
+ return pulumi.get(self, "certificate")
135
+
136
+ @property
137
+ @pulumi.getter(name="disableBackup")
138
+ def disable_backup(self) -> bool:
139
+ return pulumi.get(self, "disable_backup")
140
+
141
+ @property
142
+ @pulumi.getter(name="encryptionAtRest")
143
+ def encryption_at_rest(self) -> bool:
144
+ return pulumi.get(self, "encryption_at_rest")
145
+
146
+ @property
147
+ @pulumi.getter(name="endpointIp")
148
+ def endpoint_ip(self) -> str:
149
+ return pulumi.get(self, "endpoint_ip")
150
+
151
+ @property
152
+ @pulumi.getter(name="endpointPort")
153
+ def endpoint_port(self) -> int:
154
+ return pulumi.get(self, "endpoint_port")
155
+
156
+ @property
157
+ @pulumi.getter
158
+ def engine(self) -> str:
159
+ return pulumi.get(self, "engine")
160
+
161
+ @property
162
+ @pulumi.getter
163
+ def id(self) -> str:
164
+ """
165
+ The provider-assigned unique ID for this managed resource.
166
+ """
167
+ return pulumi.get(self, "id")
168
+
169
+ @property
170
+ @pulumi.getter(name="initSettings")
171
+ def init_settings(self) -> Mapping[str, str]:
172
+ return pulumi.get(self, "init_settings")
173
+
174
+ @property
175
+ @pulumi.getter(name="instanceId")
176
+ def instance_id(self) -> Optional[str]:
177
+ return pulumi.get(self, "instance_id")
178
+
179
+ @property
180
+ @pulumi.getter(name="isHaCluster")
181
+ def is_ha_cluster(self) -> bool:
182
+ return pulumi.get(self, "is_ha_cluster")
183
+
184
+ @property
185
+ @pulumi.getter(name="loadBalancers")
186
+ def load_balancers(self) -> Sequence['outputs.GetDatabaseInstanceLoadBalancerResult']:
187
+ return pulumi.get(self, "load_balancers")
188
+
189
+ @property
190
+ @pulumi.getter(name="logsPolicies")
191
+ def logs_policies(self) -> Sequence['outputs.GetDatabaseInstanceLogsPolicyResult']:
192
+ return pulumi.get(self, "logs_policies")
193
+
194
+ @property
195
+ @pulumi.getter
196
+ def name(self) -> Optional[str]:
197
+ return pulumi.get(self, "name")
198
+
199
+ @property
200
+ @pulumi.getter(name="nodeType")
201
+ def node_type(self) -> str:
202
+ return pulumi.get(self, "node_type")
203
+
204
+ @property
205
+ @pulumi.getter(name="organizationId")
206
+ def organization_id(self) -> str:
207
+ return pulumi.get(self, "organization_id")
208
+
209
+ @property
210
+ @pulumi.getter
211
+ def password(self) -> str:
212
+ return pulumi.get(self, "password")
213
+
214
+ @property
215
+ @pulumi.getter(name="privateNetworks")
216
+ def private_networks(self) -> Sequence['outputs.GetDatabaseInstancePrivateNetworkResult']:
217
+ return pulumi.get(self, "private_networks")
218
+
219
+ @property
220
+ @pulumi.getter(name="projectId")
221
+ def project_id(self) -> Optional[str]:
222
+ return pulumi.get(self, "project_id")
223
+
224
+ @property
225
+ @pulumi.getter(name="readReplicas")
226
+ def read_replicas(self) -> Sequence['outputs.GetDatabaseInstanceReadReplicaResult']:
227
+ return pulumi.get(self, "read_replicas")
228
+
229
+ @property
230
+ @pulumi.getter
231
+ def region(self) -> Optional[str]:
232
+ return pulumi.get(self, "region")
233
+
234
+ @property
235
+ @pulumi.getter
236
+ def settings(self) -> Mapping[str, str]:
237
+ return pulumi.get(self, "settings")
238
+
239
+ @property
240
+ @pulumi.getter
241
+ def tags(self) -> Sequence[str]:
242
+ return pulumi.get(self, "tags")
243
+
244
+ @property
245
+ @pulumi.getter(name="userName")
246
+ def user_name(self) -> str:
247
+ return pulumi.get(self, "user_name")
248
+
249
+ @property
250
+ @pulumi.getter(name="volumeSizeInGb")
251
+ def volume_size_in_gb(self) -> int:
252
+ return pulumi.get(self, "volume_size_in_gb")
253
+
254
+ @property
255
+ @pulumi.getter(name="volumeType")
256
+ def volume_type(self) -> str:
257
+ return pulumi.get(self, "volume_type")
258
+
259
+
260
+ class AwaitableGetDatabaseInstanceResult(GetDatabaseInstanceResult):
261
+ # pylint: disable=using-constant-test
262
+ def __await__(self):
263
+ if False:
264
+ yield self
265
+ return GetDatabaseInstanceResult(
266
+ backup_same_region=self.backup_same_region,
267
+ backup_schedule_frequency=self.backup_schedule_frequency,
268
+ backup_schedule_retention=self.backup_schedule_retention,
269
+ certificate=self.certificate,
270
+ disable_backup=self.disable_backup,
271
+ encryption_at_rest=self.encryption_at_rest,
272
+ endpoint_ip=self.endpoint_ip,
273
+ endpoint_port=self.endpoint_port,
274
+ engine=self.engine,
275
+ id=self.id,
276
+ init_settings=self.init_settings,
277
+ instance_id=self.instance_id,
278
+ is_ha_cluster=self.is_ha_cluster,
279
+ load_balancers=self.load_balancers,
280
+ logs_policies=self.logs_policies,
281
+ name=self.name,
282
+ node_type=self.node_type,
283
+ organization_id=self.organization_id,
284
+ password=self.password,
285
+ private_networks=self.private_networks,
286
+ project_id=self.project_id,
287
+ read_replicas=self.read_replicas,
288
+ region=self.region,
289
+ settings=self.settings,
290
+ tags=self.tags,
291
+ user_name=self.user_name,
292
+ volume_size_in_gb=self.volume_size_in_gb,
293
+ volume_type=self.volume_type)
294
+
295
+
296
+ def get_database_instance(instance_id: Optional[str] = None,
297
+ name: Optional[str] = None,
298
+ project_id: Optional[str] = None,
299
+ region: Optional[str] = None,
300
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDatabaseInstanceResult:
301
+ """
302
+ Gets information about an Database Instance.
303
+
304
+ For further information refer the Managed Databases for PostgreSQL and MySQL [API documentation](https://developers.scaleway.com/en/products/rdb/api/#database-instance)
305
+
306
+
307
+ :param str instance_id: The RDB instance ID.
308
+
309
+ > **Note** You must specify at least one: `name` and/or `instance_id`.
310
+ :param str name: The name of the RDB instance.
311
+ :param str project_id: The ID of the project the Database Instance is in. Can be used to filter instances when using `name`.
312
+ :param str region: `region`) The region in which the Database Instance exists.
313
+ """
314
+ __args__ = dict()
315
+ __args__['instanceId'] = instance_id
316
+ __args__['name'] = name
317
+ __args__['projectId'] = project_id
318
+ __args__['region'] = region
319
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
320
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getDatabaseInstance:getDatabaseInstance', __args__, opts=opts, typ=GetDatabaseInstanceResult).value
321
+
322
+ return AwaitableGetDatabaseInstanceResult(
323
+ backup_same_region=pulumi.get(__ret__, 'backup_same_region'),
324
+ backup_schedule_frequency=pulumi.get(__ret__, 'backup_schedule_frequency'),
325
+ backup_schedule_retention=pulumi.get(__ret__, 'backup_schedule_retention'),
326
+ certificate=pulumi.get(__ret__, 'certificate'),
327
+ disable_backup=pulumi.get(__ret__, 'disable_backup'),
328
+ encryption_at_rest=pulumi.get(__ret__, 'encryption_at_rest'),
329
+ endpoint_ip=pulumi.get(__ret__, 'endpoint_ip'),
330
+ endpoint_port=pulumi.get(__ret__, 'endpoint_port'),
331
+ engine=pulumi.get(__ret__, 'engine'),
332
+ id=pulumi.get(__ret__, 'id'),
333
+ init_settings=pulumi.get(__ret__, 'init_settings'),
334
+ instance_id=pulumi.get(__ret__, 'instance_id'),
335
+ is_ha_cluster=pulumi.get(__ret__, 'is_ha_cluster'),
336
+ load_balancers=pulumi.get(__ret__, 'load_balancers'),
337
+ logs_policies=pulumi.get(__ret__, 'logs_policies'),
338
+ name=pulumi.get(__ret__, 'name'),
339
+ node_type=pulumi.get(__ret__, 'node_type'),
340
+ organization_id=pulumi.get(__ret__, 'organization_id'),
341
+ password=pulumi.get(__ret__, 'password'),
342
+ private_networks=pulumi.get(__ret__, 'private_networks'),
343
+ project_id=pulumi.get(__ret__, 'project_id'),
344
+ read_replicas=pulumi.get(__ret__, 'read_replicas'),
345
+ region=pulumi.get(__ret__, 'region'),
346
+ settings=pulumi.get(__ret__, 'settings'),
347
+ tags=pulumi.get(__ret__, 'tags'),
348
+ user_name=pulumi.get(__ret__, 'user_name'),
349
+ volume_size_in_gb=pulumi.get(__ret__, 'volume_size_in_gb'),
350
+ volume_type=pulumi.get(__ret__, 'volume_type'))
351
+ def get_database_instance_output(instance_id: Optional[pulumi.Input[Optional[str]]] = None,
352
+ name: Optional[pulumi.Input[Optional[str]]] = None,
353
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
354
+ region: Optional[pulumi.Input[Optional[str]]] = None,
355
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseInstanceResult]:
356
+ """
357
+ Gets information about an Database Instance.
358
+
359
+ For further information refer the Managed Databases for PostgreSQL and MySQL [API documentation](https://developers.scaleway.com/en/products/rdb/api/#database-instance)
360
+
361
+
362
+ :param str instance_id: The RDB instance ID.
363
+
364
+ > **Note** You must specify at least one: `name` and/or `instance_id`.
365
+ :param str name: The name of the RDB instance.
366
+ :param str project_id: The ID of the project the Database Instance is in. Can be used to filter instances when using `name`.
367
+ :param str region: `region`) The region in which the Database Instance exists.
368
+ """
369
+ __args__ = dict()
370
+ __args__['instanceId'] = instance_id
371
+ __args__['name'] = name
372
+ __args__['projectId'] = project_id
373
+ __args__['region'] = region
374
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
375
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getDatabaseInstance:getDatabaseInstance', __args__, opts=opts, typ=GetDatabaseInstanceResult)
376
+ return __ret__.apply(lambda __response__: GetDatabaseInstanceResult(
377
+ backup_same_region=pulumi.get(__response__, 'backup_same_region'),
378
+ backup_schedule_frequency=pulumi.get(__response__, 'backup_schedule_frequency'),
379
+ backup_schedule_retention=pulumi.get(__response__, 'backup_schedule_retention'),
380
+ certificate=pulumi.get(__response__, 'certificate'),
381
+ disable_backup=pulumi.get(__response__, 'disable_backup'),
382
+ encryption_at_rest=pulumi.get(__response__, 'encryption_at_rest'),
383
+ endpoint_ip=pulumi.get(__response__, 'endpoint_ip'),
384
+ endpoint_port=pulumi.get(__response__, 'endpoint_port'),
385
+ engine=pulumi.get(__response__, 'engine'),
386
+ id=pulumi.get(__response__, 'id'),
387
+ init_settings=pulumi.get(__response__, 'init_settings'),
388
+ instance_id=pulumi.get(__response__, 'instance_id'),
389
+ is_ha_cluster=pulumi.get(__response__, 'is_ha_cluster'),
390
+ load_balancers=pulumi.get(__response__, 'load_balancers'),
391
+ logs_policies=pulumi.get(__response__, 'logs_policies'),
392
+ name=pulumi.get(__response__, 'name'),
393
+ node_type=pulumi.get(__response__, 'node_type'),
394
+ organization_id=pulumi.get(__response__, 'organization_id'),
395
+ password=pulumi.get(__response__, 'password'),
396
+ private_networks=pulumi.get(__response__, 'private_networks'),
397
+ project_id=pulumi.get(__response__, 'project_id'),
398
+ read_replicas=pulumi.get(__response__, 'read_replicas'),
399
+ region=pulumi.get(__response__, 'region'),
400
+ settings=pulumi.get(__response__, 'settings'),
401
+ tags=pulumi.get(__response__, 'tags'),
402
+ user_name=pulumi.get(__response__, 'user_name'),
403
+ volume_size_in_gb=pulumi.get(__response__, 'volume_size_in_gb'),
404
+ volume_type=pulumi.get(__response__, 'volume_type')))