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,154 @@
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
+ 'GetBillingInvoicesResult',
20
+ 'AwaitableGetBillingInvoicesResult',
21
+ 'get_billing_invoices',
22
+ 'get_billing_invoices_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetBillingInvoicesResult:
27
+ """
28
+ A collection of values returned by getBillingInvoices.
29
+ """
30
+ def __init__(__self__, id=None, invoice_type=None, invoices=None, organization_id=None, started_after=None, started_before=None):
31
+ if id and not isinstance(id, str):
32
+ raise TypeError("Expected argument 'id' to be a str")
33
+ pulumi.set(__self__, "id", id)
34
+ if invoice_type and not isinstance(invoice_type, str):
35
+ raise TypeError("Expected argument 'invoice_type' to be a str")
36
+ pulumi.set(__self__, "invoice_type", invoice_type)
37
+ if invoices and not isinstance(invoices, list):
38
+ raise TypeError("Expected argument 'invoices' to be a list")
39
+ pulumi.set(__self__, "invoices", invoices)
40
+ if organization_id and not isinstance(organization_id, str):
41
+ raise TypeError("Expected argument 'organization_id' to be a str")
42
+ pulumi.set(__self__, "organization_id", organization_id)
43
+ if started_after and not isinstance(started_after, str):
44
+ raise TypeError("Expected argument 'started_after' to be a str")
45
+ pulumi.set(__self__, "started_after", started_after)
46
+ if started_before and not isinstance(started_before, str):
47
+ raise TypeError("Expected argument 'started_before' to be a str")
48
+ pulumi.set(__self__, "started_before", started_before)
49
+
50
+ @property
51
+ @pulumi.getter
52
+ def id(self) -> str:
53
+ """
54
+ The provider-assigned unique ID for this managed resource.
55
+ """
56
+ return pulumi.get(self, "id")
57
+
58
+ @property
59
+ @pulumi.getter(name="invoiceType")
60
+ def invoice_type(self) -> Optional[str]:
61
+ """
62
+ The type of invoice.
63
+ """
64
+ return pulumi.get(self, "invoice_type")
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def invoices(self) -> Sequence['outputs.GetBillingInvoicesInvoiceResult']:
69
+ """
70
+ List of found invoices
71
+ """
72
+ return pulumi.get(self, "invoices")
73
+
74
+ @property
75
+ @pulumi.getter(name="organizationId")
76
+ def organization_id(self) -> str:
77
+ return pulumi.get(self, "organization_id")
78
+
79
+ @property
80
+ @pulumi.getter(name="startedAfter")
81
+ def started_after(self) -> Optional[str]:
82
+ return pulumi.get(self, "started_after")
83
+
84
+ @property
85
+ @pulumi.getter(name="startedBefore")
86
+ def started_before(self) -> Optional[str]:
87
+ return pulumi.get(self, "started_before")
88
+
89
+
90
+ class AwaitableGetBillingInvoicesResult(GetBillingInvoicesResult):
91
+ # pylint: disable=using-constant-test
92
+ def __await__(self):
93
+ if False:
94
+ yield self
95
+ return GetBillingInvoicesResult(
96
+ id=self.id,
97
+ invoice_type=self.invoice_type,
98
+ invoices=self.invoices,
99
+ organization_id=self.organization_id,
100
+ started_after=self.started_after,
101
+ started_before=self.started_before)
102
+
103
+
104
+ def get_billing_invoices(invoice_type: Optional[str] = None,
105
+ started_after: Optional[str] = None,
106
+ started_before: Optional[str] = None,
107
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetBillingInvoicesResult:
108
+ """
109
+ Gets information about your Scaleway invoices.
110
+
111
+
112
+ :param str invoice_type: Invoices with the given type are listed. Valid values are `periodic` and `purchase`.
113
+ :param str started_after: Invoices with a start date that are greater or equal to `started_after` are listed (RFC 3339 format).
114
+ :param str started_before: Invoices with a start date that precedes `started_before` are listed (RFC 3339 format).
115
+ """
116
+ __args__ = dict()
117
+ __args__['invoiceType'] = invoice_type
118
+ __args__['startedAfter'] = started_after
119
+ __args__['startedBefore'] = started_before
120
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
121
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getBillingInvoices:getBillingInvoices', __args__, opts=opts, typ=GetBillingInvoicesResult).value
122
+
123
+ return AwaitableGetBillingInvoicesResult(
124
+ id=pulumi.get(__ret__, 'id'),
125
+ invoice_type=pulumi.get(__ret__, 'invoice_type'),
126
+ invoices=pulumi.get(__ret__, 'invoices'),
127
+ organization_id=pulumi.get(__ret__, 'organization_id'),
128
+ started_after=pulumi.get(__ret__, 'started_after'),
129
+ started_before=pulumi.get(__ret__, 'started_before'))
130
+ def get_billing_invoices_output(invoice_type: Optional[pulumi.Input[Optional[str]]] = None,
131
+ started_after: Optional[pulumi.Input[Optional[str]]] = None,
132
+ started_before: Optional[pulumi.Input[Optional[str]]] = None,
133
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetBillingInvoicesResult]:
134
+ """
135
+ Gets information about your Scaleway invoices.
136
+
137
+
138
+ :param str invoice_type: Invoices with the given type are listed. Valid values are `periodic` and `purchase`.
139
+ :param str started_after: Invoices with a start date that are greater or equal to `started_after` are listed (RFC 3339 format).
140
+ :param str started_before: Invoices with a start date that precedes `started_before` are listed (RFC 3339 format).
141
+ """
142
+ __args__ = dict()
143
+ __args__['invoiceType'] = invoice_type
144
+ __args__['startedAfter'] = started_after
145
+ __args__['startedBefore'] = started_before
146
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
147
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getBillingInvoices:getBillingInvoices', __args__, opts=opts, typ=GetBillingInvoicesResult)
148
+ return __ret__.apply(lambda __response__: GetBillingInvoicesResult(
149
+ id=pulumi.get(__response__, 'id'),
150
+ invoice_type=pulumi.get(__response__, 'invoice_type'),
151
+ invoices=pulumi.get(__response__, 'invoices'),
152
+ organization_id=pulumi.get(__response__, 'organization_id'),
153
+ started_after=pulumi.get(__response__, 'started_after'),
154
+ started_before=pulumi.get(__response__, 'started_before')))
@@ -0,0 +1,174 @@
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
+ 'GetBlockSnapshotResult',
19
+ 'AwaitableGetBlockSnapshotResult',
20
+ 'get_block_snapshot',
21
+ 'get_block_snapshot_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetBlockSnapshotResult:
26
+ """
27
+ A collection of values returned by getBlockSnapshot.
28
+ """
29
+ def __init__(__self__, id=None, name=None, project_id=None, snapshot_id=None, tags=None, volume_id=None, zone=None):
30
+ if id and not isinstance(id, str):
31
+ raise TypeError("Expected argument 'id' to be a str")
32
+ pulumi.set(__self__, "id", id)
33
+ if name and not isinstance(name, str):
34
+ raise TypeError("Expected argument 'name' to be a str")
35
+ pulumi.set(__self__, "name", name)
36
+ if project_id and not isinstance(project_id, str):
37
+ raise TypeError("Expected argument 'project_id' to be a str")
38
+ pulumi.set(__self__, "project_id", project_id)
39
+ if snapshot_id and not isinstance(snapshot_id, str):
40
+ raise TypeError("Expected argument 'snapshot_id' to be a str")
41
+ pulumi.set(__self__, "snapshot_id", snapshot_id)
42
+ if tags and not isinstance(tags, list):
43
+ raise TypeError("Expected argument 'tags' to be a list")
44
+ pulumi.set(__self__, "tags", tags)
45
+ if volume_id and not isinstance(volume_id, str):
46
+ raise TypeError("Expected argument 'volume_id' to be a str")
47
+ pulumi.set(__self__, "volume_id", volume_id)
48
+ if zone and not isinstance(zone, str):
49
+ raise TypeError("Expected argument 'zone' to be a str")
50
+ pulumi.set(__self__, "zone", zone)
51
+
52
+ @property
53
+ @pulumi.getter
54
+ def id(self) -> str:
55
+ """
56
+ The provider-assigned unique ID for this managed resource.
57
+ """
58
+ return pulumi.get(self, "id")
59
+
60
+ @property
61
+ @pulumi.getter
62
+ def name(self) -> Optional[str]:
63
+ return pulumi.get(self, "name")
64
+
65
+ @property
66
+ @pulumi.getter(name="projectId")
67
+ def project_id(self) -> Optional[str]:
68
+ return pulumi.get(self, "project_id")
69
+
70
+ @property
71
+ @pulumi.getter(name="snapshotId")
72
+ def snapshot_id(self) -> Optional[str]:
73
+ return pulumi.get(self, "snapshot_id")
74
+
75
+ @property
76
+ @pulumi.getter
77
+ def tags(self) -> Sequence[str]:
78
+ return pulumi.get(self, "tags")
79
+
80
+ @property
81
+ @pulumi.getter(name="volumeId")
82
+ def volume_id(self) -> Optional[str]:
83
+ return pulumi.get(self, "volume_id")
84
+
85
+ @property
86
+ @pulumi.getter
87
+ def zone(self) -> Optional[str]:
88
+ return pulumi.get(self, "zone")
89
+
90
+
91
+ class AwaitableGetBlockSnapshotResult(GetBlockSnapshotResult):
92
+ # pylint: disable=using-constant-test
93
+ def __await__(self):
94
+ if False:
95
+ yield self
96
+ return GetBlockSnapshotResult(
97
+ id=self.id,
98
+ name=self.name,
99
+ project_id=self.project_id,
100
+ snapshot_id=self.snapshot_id,
101
+ tags=self.tags,
102
+ volume_id=self.volume_id,
103
+ zone=self.zone)
104
+
105
+
106
+ def get_block_snapshot(name: Optional[str] = None,
107
+ project_id: Optional[str] = None,
108
+ snapshot_id: Optional[str] = None,
109
+ volume_id: Optional[str] = None,
110
+ zone: Optional[str] = None,
111
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetBlockSnapshotResult:
112
+ """
113
+ The `BlockSnapshot` data source is used to retrieve information about a Block Storage volume snapshot.
114
+
115
+ Refer to the Block Storage [product documentation](https://www.scaleway.com/en/docs/storage/block/) and [API documentation](https://www.scaleway.com/en/developers/api/block/) for more information.
116
+
117
+
118
+ :param str name: The name of the snapshot. Only one of name or snapshot_id should be specified.
119
+ :param str project_id: The unique identifier of the Project to which the snapshot is associated.
120
+ :param str snapshot_id: The unique identifier of the snapshot. Only one of `name` and `snapshot_id` should be specified.
121
+ :param str volume_id: The unique identifier of the volume from which the snapshot was created.
122
+ :param str zone: ) The zone in which the snapshot exists.
123
+ """
124
+ __args__ = dict()
125
+ __args__['name'] = name
126
+ __args__['projectId'] = project_id
127
+ __args__['snapshotId'] = snapshot_id
128
+ __args__['volumeId'] = volume_id
129
+ __args__['zone'] = zone
130
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
131
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getBlockSnapshot:getBlockSnapshot', __args__, opts=opts, typ=GetBlockSnapshotResult).value
132
+
133
+ return AwaitableGetBlockSnapshotResult(
134
+ id=pulumi.get(__ret__, 'id'),
135
+ name=pulumi.get(__ret__, 'name'),
136
+ project_id=pulumi.get(__ret__, 'project_id'),
137
+ snapshot_id=pulumi.get(__ret__, 'snapshot_id'),
138
+ tags=pulumi.get(__ret__, 'tags'),
139
+ volume_id=pulumi.get(__ret__, 'volume_id'),
140
+ zone=pulumi.get(__ret__, 'zone'))
141
+ def get_block_snapshot_output(name: Optional[pulumi.Input[Optional[str]]] = None,
142
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
143
+ snapshot_id: Optional[pulumi.Input[Optional[str]]] = None,
144
+ volume_id: Optional[pulumi.Input[Optional[str]]] = None,
145
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
146
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetBlockSnapshotResult]:
147
+ """
148
+ The `BlockSnapshot` data source is used to retrieve information about a Block Storage volume snapshot.
149
+
150
+ Refer to the Block Storage [product documentation](https://www.scaleway.com/en/docs/storage/block/) and [API documentation](https://www.scaleway.com/en/developers/api/block/) for more information.
151
+
152
+
153
+ :param str name: The name of the snapshot. Only one of name or snapshot_id should be specified.
154
+ :param str project_id: The unique identifier of the Project to which the snapshot is associated.
155
+ :param str snapshot_id: The unique identifier of the snapshot. Only one of `name` and `snapshot_id` should be specified.
156
+ :param str volume_id: The unique identifier of the volume from which the snapshot was created.
157
+ :param str zone: ) The zone in which the snapshot exists.
158
+ """
159
+ __args__ = dict()
160
+ __args__['name'] = name
161
+ __args__['projectId'] = project_id
162
+ __args__['snapshotId'] = snapshot_id
163
+ __args__['volumeId'] = volume_id
164
+ __args__['zone'] = zone
165
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
166
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getBlockSnapshot:getBlockSnapshot', __args__, opts=opts, typ=GetBlockSnapshotResult)
167
+ return __ret__.apply(lambda __response__: GetBlockSnapshotResult(
168
+ id=pulumi.get(__response__, 'id'),
169
+ name=pulumi.get(__response__, 'name'),
170
+ project_id=pulumi.get(__response__, 'project_id'),
171
+ snapshot_id=pulumi.get(__response__, 'snapshot_id'),
172
+ tags=pulumi.get(__response__, 'tags'),
173
+ volume_id=pulumi.get(__response__, 'volume_id'),
174
+ zone=pulumi.get(__response__, 'zone')))
@@ -0,0 +1,188 @@
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
+ 'GetBlockVolumeResult',
19
+ 'AwaitableGetBlockVolumeResult',
20
+ 'get_block_volume',
21
+ 'get_block_volume_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetBlockVolumeResult:
26
+ """
27
+ A collection of values returned by getBlockVolume.
28
+ """
29
+ def __init__(__self__, id=None, iops=None, name=None, project_id=None, size_in_gb=None, snapshot_id=None, tags=None, volume_id=None, zone=None):
30
+ if id and not isinstance(id, str):
31
+ raise TypeError("Expected argument 'id' to be a str")
32
+ pulumi.set(__self__, "id", id)
33
+ if iops and not isinstance(iops, int):
34
+ raise TypeError("Expected argument 'iops' to be a int")
35
+ pulumi.set(__self__, "iops", iops)
36
+ if name and not isinstance(name, str):
37
+ raise TypeError("Expected argument 'name' to be a str")
38
+ pulumi.set(__self__, "name", name)
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 size_in_gb and not isinstance(size_in_gb, int):
43
+ raise TypeError("Expected argument 'size_in_gb' to be a int")
44
+ pulumi.set(__self__, "size_in_gb", size_in_gb)
45
+ if snapshot_id and not isinstance(snapshot_id, str):
46
+ raise TypeError("Expected argument 'snapshot_id' to be a str")
47
+ pulumi.set(__self__, "snapshot_id", snapshot_id)
48
+ if tags and not isinstance(tags, list):
49
+ raise TypeError("Expected argument 'tags' to be a list")
50
+ pulumi.set(__self__, "tags", tags)
51
+ if volume_id and not isinstance(volume_id, str):
52
+ raise TypeError("Expected argument 'volume_id' to be a str")
53
+ pulumi.set(__self__, "volume_id", volume_id)
54
+ if zone and not isinstance(zone, str):
55
+ raise TypeError("Expected argument 'zone' to be a str")
56
+ pulumi.set(__self__, "zone", zone)
57
+
58
+ @property
59
+ @pulumi.getter
60
+ def id(self) -> str:
61
+ """
62
+ The provider-assigned unique ID for this managed resource.
63
+ """
64
+ return pulumi.get(self, "id")
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def iops(self) -> int:
69
+ return pulumi.get(self, "iops")
70
+
71
+ @property
72
+ @pulumi.getter
73
+ def name(self) -> Optional[str]:
74
+ return pulumi.get(self, "name")
75
+
76
+ @property
77
+ @pulumi.getter(name="projectId")
78
+ def project_id(self) -> Optional[str]:
79
+ return pulumi.get(self, "project_id")
80
+
81
+ @property
82
+ @pulumi.getter(name="sizeInGb")
83
+ def size_in_gb(self) -> int:
84
+ return pulumi.get(self, "size_in_gb")
85
+
86
+ @property
87
+ @pulumi.getter(name="snapshotId")
88
+ def snapshot_id(self) -> str:
89
+ return pulumi.get(self, "snapshot_id")
90
+
91
+ @property
92
+ @pulumi.getter
93
+ def tags(self) -> Sequence[str]:
94
+ return pulumi.get(self, "tags")
95
+
96
+ @property
97
+ @pulumi.getter(name="volumeId")
98
+ def volume_id(self) -> Optional[str]:
99
+ return pulumi.get(self, "volume_id")
100
+
101
+ @property
102
+ @pulumi.getter
103
+ def zone(self) -> Optional[str]:
104
+ return pulumi.get(self, "zone")
105
+
106
+
107
+ class AwaitableGetBlockVolumeResult(GetBlockVolumeResult):
108
+ # pylint: disable=using-constant-test
109
+ def __await__(self):
110
+ if False:
111
+ yield self
112
+ return GetBlockVolumeResult(
113
+ id=self.id,
114
+ iops=self.iops,
115
+ name=self.name,
116
+ project_id=self.project_id,
117
+ size_in_gb=self.size_in_gb,
118
+ snapshot_id=self.snapshot_id,
119
+ tags=self.tags,
120
+ volume_id=self.volume_id,
121
+ zone=self.zone)
122
+
123
+
124
+ def get_block_volume(name: Optional[str] = None,
125
+ project_id: Optional[str] = None,
126
+ volume_id: Optional[str] = None,
127
+ zone: Optional[str] = None,
128
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetBlockVolumeResult:
129
+ """
130
+ The `BlockVolume` data source is used to retrieve information about a Block Storage volume.
131
+ Refer to the Block Storage [product documentation](https://www.scaleway.com/en/docs/storage/block/) and [API documentation](https://www.scaleway.com/en/developers/api/block/) for more information.
132
+
133
+
134
+ :param str name: The name of the volume. Only one of `name` and `volume_id` should be specified.
135
+ :param str project_id: The unique identifier of the Project to which the volume is associated.
136
+ :param str volume_id: The unique identifier of the volume. Only one of `name` and `volume_id` should be specified.
137
+ :param str zone: ). The zone in which the volume exists.
138
+ """
139
+ __args__ = dict()
140
+ __args__['name'] = name
141
+ __args__['projectId'] = project_id
142
+ __args__['volumeId'] = volume_id
143
+ __args__['zone'] = zone
144
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
145
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getBlockVolume:getBlockVolume', __args__, opts=opts, typ=GetBlockVolumeResult).value
146
+
147
+ return AwaitableGetBlockVolumeResult(
148
+ id=pulumi.get(__ret__, 'id'),
149
+ iops=pulumi.get(__ret__, 'iops'),
150
+ name=pulumi.get(__ret__, 'name'),
151
+ project_id=pulumi.get(__ret__, 'project_id'),
152
+ size_in_gb=pulumi.get(__ret__, 'size_in_gb'),
153
+ snapshot_id=pulumi.get(__ret__, 'snapshot_id'),
154
+ tags=pulumi.get(__ret__, 'tags'),
155
+ volume_id=pulumi.get(__ret__, 'volume_id'),
156
+ zone=pulumi.get(__ret__, 'zone'))
157
+ def get_block_volume_output(name: Optional[pulumi.Input[Optional[str]]] = None,
158
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
159
+ volume_id: Optional[pulumi.Input[Optional[str]]] = None,
160
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
161
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetBlockVolumeResult]:
162
+ """
163
+ The `BlockVolume` data source is used to retrieve information about a Block Storage volume.
164
+ Refer to the Block Storage [product documentation](https://www.scaleway.com/en/docs/storage/block/) and [API documentation](https://www.scaleway.com/en/developers/api/block/) for more information.
165
+
166
+
167
+ :param str name: The name of the volume. Only one of `name` and `volume_id` should be specified.
168
+ :param str project_id: The unique identifier of the Project to which the volume is associated.
169
+ :param str volume_id: The unique identifier of the volume. Only one of `name` and `volume_id` should be specified.
170
+ :param str zone: ). The zone in which the volume exists.
171
+ """
172
+ __args__ = dict()
173
+ __args__['name'] = name
174
+ __args__['projectId'] = project_id
175
+ __args__['volumeId'] = volume_id
176
+ __args__['zone'] = zone
177
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
178
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getBlockVolume:getBlockVolume', __args__, opts=opts, typ=GetBlockVolumeResult)
179
+ return __ret__.apply(lambda __response__: GetBlockVolumeResult(
180
+ id=pulumi.get(__response__, 'id'),
181
+ iops=pulumi.get(__response__, 'iops'),
182
+ name=pulumi.get(__response__, 'name'),
183
+ project_id=pulumi.get(__response__, 'project_id'),
184
+ size_in_gb=pulumi.get(__response__, 'size_in_gb'),
185
+ snapshot_id=pulumi.get(__response__, 'snapshot_id'),
186
+ tags=pulumi.get(__response__, 'tags'),
187
+ volume_id=pulumi.get(__response__, 'volume_id'),
188
+ zone=pulumi.get(__response__, 'zone')))