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,339 @@
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
+ 'GetLoadbalancerResult',
20
+ 'AwaitableGetLoadbalancerResult',
21
+ 'get_loadbalancer',
22
+ 'get_loadbalancer_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetLoadbalancerResult:
27
+ """
28
+ A collection of values returned by getLoadbalancer.
29
+ """
30
+ def __init__(__self__, assign_flexible_ip=None, assign_flexible_ipv6=None, description=None, id=None, ip_address=None, ip_id=None, ip_ids=None, ipv6_address=None, lb_id=None, name=None, organization_id=None, private_networks=None, project_id=None, region=None, release_ip=None, ssl_compatibility_level=None, tags=None, type=None, zone=None):
31
+ if assign_flexible_ip and not isinstance(assign_flexible_ip, bool):
32
+ raise TypeError("Expected argument 'assign_flexible_ip' to be a bool")
33
+ pulumi.set(__self__, "assign_flexible_ip", assign_flexible_ip)
34
+ if assign_flexible_ipv6 and not isinstance(assign_flexible_ipv6, bool):
35
+ raise TypeError("Expected argument 'assign_flexible_ipv6' to be a bool")
36
+ pulumi.set(__self__, "assign_flexible_ipv6", assign_flexible_ipv6)
37
+ if description and not isinstance(description, str):
38
+ raise TypeError("Expected argument 'description' to be a str")
39
+ pulumi.set(__self__, "description", description)
40
+ if id and not isinstance(id, str):
41
+ raise TypeError("Expected argument 'id' to be a str")
42
+ pulumi.set(__self__, "id", id)
43
+ if ip_address and not isinstance(ip_address, str):
44
+ raise TypeError("Expected argument 'ip_address' to be a str")
45
+ pulumi.set(__self__, "ip_address", ip_address)
46
+ if ip_id and not isinstance(ip_id, str):
47
+ raise TypeError("Expected argument 'ip_id' to be a str")
48
+ pulumi.set(__self__, "ip_id", ip_id)
49
+ if ip_ids and not isinstance(ip_ids, list):
50
+ raise TypeError("Expected argument 'ip_ids' to be a list")
51
+ pulumi.set(__self__, "ip_ids", ip_ids)
52
+ if ipv6_address and not isinstance(ipv6_address, str):
53
+ raise TypeError("Expected argument 'ipv6_address' to be a str")
54
+ pulumi.set(__self__, "ipv6_address", ipv6_address)
55
+ if lb_id and not isinstance(lb_id, str):
56
+ raise TypeError("Expected argument 'lb_id' to be a str")
57
+ pulumi.set(__self__, "lb_id", lb_id)
58
+ if name and not isinstance(name, str):
59
+ raise TypeError("Expected argument 'name' to be a str")
60
+ pulumi.set(__self__, "name", name)
61
+ if organization_id and not isinstance(organization_id, str):
62
+ raise TypeError("Expected argument 'organization_id' to be a str")
63
+ pulumi.set(__self__, "organization_id", organization_id)
64
+ if private_networks and not isinstance(private_networks, list):
65
+ raise TypeError("Expected argument 'private_networks' to be a list")
66
+ pulumi.set(__self__, "private_networks", private_networks)
67
+ if project_id and not isinstance(project_id, str):
68
+ raise TypeError("Expected argument 'project_id' to be a str")
69
+ pulumi.set(__self__, "project_id", project_id)
70
+ if region and not isinstance(region, str):
71
+ raise TypeError("Expected argument 'region' to be a str")
72
+ pulumi.set(__self__, "region", region)
73
+ if release_ip and not isinstance(release_ip, bool):
74
+ raise TypeError("Expected argument 'release_ip' to be a bool")
75
+ pulumi.set(__self__, "release_ip", release_ip)
76
+ if ssl_compatibility_level and not isinstance(ssl_compatibility_level, str):
77
+ raise TypeError("Expected argument 'ssl_compatibility_level' to be a str")
78
+ pulumi.set(__self__, "ssl_compatibility_level", ssl_compatibility_level)
79
+ if tags and not isinstance(tags, list):
80
+ raise TypeError("Expected argument 'tags' to be a list")
81
+ pulumi.set(__self__, "tags", tags)
82
+ if type and not isinstance(type, str):
83
+ raise TypeError("Expected argument 'type' to be a str")
84
+ pulumi.set(__self__, "type", type)
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(name="assignFlexibleIp")
91
+ def assign_flexible_ip(self) -> bool:
92
+ return pulumi.get(self, "assign_flexible_ip")
93
+
94
+ @property
95
+ @pulumi.getter(name="assignFlexibleIpv6")
96
+ def assign_flexible_ipv6(self) -> bool:
97
+ return pulumi.get(self, "assign_flexible_ipv6")
98
+
99
+ @property
100
+ @pulumi.getter
101
+ def description(self) -> str:
102
+ return pulumi.get(self, "description")
103
+
104
+ @property
105
+ @pulumi.getter
106
+ def id(self) -> str:
107
+ """
108
+ The provider-assigned unique ID for this managed resource.
109
+ """
110
+ return pulumi.get(self, "id")
111
+
112
+ @property
113
+ @pulumi.getter(name="ipAddress")
114
+ def ip_address(self) -> str:
115
+ """
116
+ The Load Balancer public IP address.
117
+ """
118
+ return pulumi.get(self, "ip_address")
119
+
120
+ @property
121
+ @pulumi.getter(name="ipId")
122
+ def ip_id(self) -> str:
123
+ return pulumi.get(self, "ip_id")
124
+
125
+ @property
126
+ @pulumi.getter(name="ipIds")
127
+ def ip_ids(self) -> Sequence[str]:
128
+ return pulumi.get(self, "ip_ids")
129
+
130
+ @property
131
+ @pulumi.getter(name="ipv6Address")
132
+ def ipv6_address(self) -> str:
133
+ return pulumi.get(self, "ipv6_address")
134
+
135
+ @property
136
+ @pulumi.getter(name="lbId")
137
+ def lb_id(self) -> Optional[str]:
138
+ return pulumi.get(self, "lb_id")
139
+
140
+ @property
141
+ @pulumi.getter
142
+ def name(self) -> Optional[str]:
143
+ return pulumi.get(self, "name")
144
+
145
+ @property
146
+ @pulumi.getter(name="organizationId")
147
+ def organization_id(self) -> str:
148
+ return pulumi.get(self, "organization_id")
149
+
150
+ @property
151
+ @pulumi.getter(name="privateNetworks")
152
+ def private_networks(self) -> Sequence['outputs.GetLoadbalancerPrivateNetworkResult']:
153
+ return pulumi.get(self, "private_networks")
154
+
155
+ @property
156
+ @pulumi.getter(name="projectId")
157
+ def project_id(self) -> Optional[str]:
158
+ return pulumi.get(self, "project_id")
159
+
160
+ @property
161
+ @pulumi.getter
162
+ def region(self) -> str:
163
+ return pulumi.get(self, "region")
164
+
165
+ @property
166
+ @pulumi.getter(name="releaseIp")
167
+ def release_ip(self) -> Optional[bool]:
168
+ return pulumi.get(self, "release_ip")
169
+
170
+ @property
171
+ @pulumi.getter(name="sslCompatibilityLevel")
172
+ def ssl_compatibility_level(self) -> str:
173
+ return pulumi.get(self, "ssl_compatibility_level")
174
+
175
+ @property
176
+ @pulumi.getter
177
+ def tags(self) -> Sequence[str]:
178
+ """
179
+ The tags associated with the Load Balancer.
180
+ """
181
+ return pulumi.get(self, "tags")
182
+
183
+ @property
184
+ @pulumi.getter
185
+ def type(self) -> str:
186
+ """
187
+ The Load Balancer type.
188
+ """
189
+ return pulumi.get(self, "type")
190
+
191
+ @property
192
+ @pulumi.getter
193
+ def zone(self) -> Optional[str]:
194
+ """
195
+ (Defaults to provider `zone`) The zone in which the Load Balancer exists.
196
+ """
197
+ return pulumi.get(self, "zone")
198
+
199
+
200
+ class AwaitableGetLoadbalancerResult(GetLoadbalancerResult):
201
+ # pylint: disable=using-constant-test
202
+ def __await__(self):
203
+ if False:
204
+ yield self
205
+ return GetLoadbalancerResult(
206
+ assign_flexible_ip=self.assign_flexible_ip,
207
+ assign_flexible_ipv6=self.assign_flexible_ipv6,
208
+ description=self.description,
209
+ id=self.id,
210
+ ip_address=self.ip_address,
211
+ ip_id=self.ip_id,
212
+ ip_ids=self.ip_ids,
213
+ ipv6_address=self.ipv6_address,
214
+ lb_id=self.lb_id,
215
+ name=self.name,
216
+ organization_id=self.organization_id,
217
+ private_networks=self.private_networks,
218
+ project_id=self.project_id,
219
+ region=self.region,
220
+ release_ip=self.release_ip,
221
+ ssl_compatibility_level=self.ssl_compatibility_level,
222
+ tags=self.tags,
223
+ type=self.type,
224
+ zone=self.zone)
225
+
226
+
227
+ def get_loadbalancer(lb_id: Optional[str] = None,
228
+ name: Optional[str] = None,
229
+ project_id: Optional[str] = None,
230
+ release_ip: Optional[bool] = None,
231
+ zone: Optional[str] = None,
232
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetLoadbalancerResult:
233
+ """
234
+ Gets information about a Load Balancer.
235
+
236
+ For more information, see the [main documentation](https://www.scaleway.com/en/docs/network/load-balancer/concepts/#load-balancers) or [API documentation](https://www.scaleway.com/en/developers/api/load-balancer/zoned-api/#path-load-balancer-list-load-balancers).
237
+
238
+ ## Example Usage
239
+
240
+ ```python
241
+ import pulumi
242
+ import pulumi_scaleway as scaleway
243
+
244
+ # Get info by name
245
+ by_name = scaleway.get_loadbalancer(name="foobar")
246
+ # Get info by ID
247
+ by_id = scaleway.get_loadbalancer(lb_id="11111111-1111-1111-1111-111111111111")
248
+ ```
249
+
250
+
251
+ :param str name: The Load Balancer name.
252
+ :param str project_id: The ID of the Project the Load Balancer is associated with.
253
+ :param str zone: (Defaults to provider `zone`) The zone in which the Load Balancer exists.
254
+ """
255
+ __args__ = dict()
256
+ __args__['lbId'] = lb_id
257
+ __args__['name'] = name
258
+ __args__['projectId'] = project_id
259
+ __args__['releaseIp'] = release_ip
260
+ __args__['zone'] = zone
261
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
262
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getLoadbalancer:getLoadbalancer', __args__, opts=opts, typ=GetLoadbalancerResult).value
263
+
264
+ return AwaitableGetLoadbalancerResult(
265
+ assign_flexible_ip=pulumi.get(__ret__, 'assign_flexible_ip'),
266
+ assign_flexible_ipv6=pulumi.get(__ret__, 'assign_flexible_ipv6'),
267
+ description=pulumi.get(__ret__, 'description'),
268
+ id=pulumi.get(__ret__, 'id'),
269
+ ip_address=pulumi.get(__ret__, 'ip_address'),
270
+ ip_id=pulumi.get(__ret__, 'ip_id'),
271
+ ip_ids=pulumi.get(__ret__, 'ip_ids'),
272
+ ipv6_address=pulumi.get(__ret__, 'ipv6_address'),
273
+ lb_id=pulumi.get(__ret__, 'lb_id'),
274
+ name=pulumi.get(__ret__, 'name'),
275
+ organization_id=pulumi.get(__ret__, 'organization_id'),
276
+ private_networks=pulumi.get(__ret__, 'private_networks'),
277
+ project_id=pulumi.get(__ret__, 'project_id'),
278
+ region=pulumi.get(__ret__, 'region'),
279
+ release_ip=pulumi.get(__ret__, 'release_ip'),
280
+ ssl_compatibility_level=pulumi.get(__ret__, 'ssl_compatibility_level'),
281
+ tags=pulumi.get(__ret__, 'tags'),
282
+ type=pulumi.get(__ret__, 'type'),
283
+ zone=pulumi.get(__ret__, 'zone'))
284
+ def get_loadbalancer_output(lb_id: Optional[pulumi.Input[Optional[str]]] = None,
285
+ name: Optional[pulumi.Input[Optional[str]]] = None,
286
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
287
+ release_ip: Optional[pulumi.Input[Optional[bool]]] = None,
288
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
289
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetLoadbalancerResult]:
290
+ """
291
+ Gets information about a Load Balancer.
292
+
293
+ For more information, see the [main documentation](https://www.scaleway.com/en/docs/network/load-balancer/concepts/#load-balancers) or [API documentation](https://www.scaleway.com/en/developers/api/load-balancer/zoned-api/#path-load-balancer-list-load-balancers).
294
+
295
+ ## Example Usage
296
+
297
+ ```python
298
+ import pulumi
299
+ import pulumi_scaleway as scaleway
300
+
301
+ # Get info by name
302
+ by_name = scaleway.get_loadbalancer(name="foobar")
303
+ # Get info by ID
304
+ by_id = scaleway.get_loadbalancer(lb_id="11111111-1111-1111-1111-111111111111")
305
+ ```
306
+
307
+
308
+ :param str name: The Load Balancer name.
309
+ :param str project_id: The ID of the Project the Load Balancer is associated with.
310
+ :param str zone: (Defaults to provider `zone`) The zone in which the Load Balancer exists.
311
+ """
312
+ __args__ = dict()
313
+ __args__['lbId'] = lb_id
314
+ __args__['name'] = name
315
+ __args__['projectId'] = project_id
316
+ __args__['releaseIp'] = release_ip
317
+ __args__['zone'] = zone
318
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
319
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getLoadbalancer:getLoadbalancer', __args__, opts=opts, typ=GetLoadbalancerResult)
320
+ return __ret__.apply(lambda __response__: GetLoadbalancerResult(
321
+ assign_flexible_ip=pulumi.get(__response__, 'assign_flexible_ip'),
322
+ assign_flexible_ipv6=pulumi.get(__response__, 'assign_flexible_ipv6'),
323
+ description=pulumi.get(__response__, 'description'),
324
+ id=pulumi.get(__response__, 'id'),
325
+ ip_address=pulumi.get(__response__, 'ip_address'),
326
+ ip_id=pulumi.get(__response__, 'ip_id'),
327
+ ip_ids=pulumi.get(__response__, 'ip_ids'),
328
+ ipv6_address=pulumi.get(__response__, 'ipv6_address'),
329
+ lb_id=pulumi.get(__response__, 'lb_id'),
330
+ name=pulumi.get(__response__, 'name'),
331
+ organization_id=pulumi.get(__response__, 'organization_id'),
332
+ private_networks=pulumi.get(__response__, 'private_networks'),
333
+ project_id=pulumi.get(__response__, 'project_id'),
334
+ region=pulumi.get(__response__, 'region'),
335
+ release_ip=pulumi.get(__response__, 'release_ip'),
336
+ ssl_compatibility_level=pulumi.get(__response__, 'ssl_compatibility_level'),
337
+ tags=pulumi.get(__response__, 'tags'),
338
+ type=pulumi.get(__response__, 'type'),
339
+ zone=pulumi.get(__response__, 'zone')))
@@ -0,0 +1,230 @@
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
+ 'GetLoadbalancerCertificateResult',
20
+ 'AwaitableGetLoadbalancerCertificateResult',
21
+ 'get_loadbalancer_certificate',
22
+ 'get_loadbalancer_certificate_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetLoadbalancerCertificateResult:
27
+ """
28
+ A collection of values returned by getLoadbalancerCertificate.
29
+ """
30
+ def __init__(__self__, certificate_id=None, common_name=None, custom_certificates=None, fingerprint=None, id=None, lb_id=None, letsencrypts=None, name=None, not_valid_after=None, not_valid_before=None, status=None, subject_alternative_names=None):
31
+ if certificate_id and not isinstance(certificate_id, str):
32
+ raise TypeError("Expected argument 'certificate_id' to be a str")
33
+ pulumi.set(__self__, "certificate_id", certificate_id)
34
+ if common_name and not isinstance(common_name, str):
35
+ raise TypeError("Expected argument 'common_name' to be a str")
36
+ pulumi.set(__self__, "common_name", common_name)
37
+ if custom_certificates and not isinstance(custom_certificates, list):
38
+ raise TypeError("Expected argument 'custom_certificates' to be a list")
39
+ pulumi.set(__self__, "custom_certificates", custom_certificates)
40
+ if fingerprint and not isinstance(fingerprint, str):
41
+ raise TypeError("Expected argument 'fingerprint' to be a str")
42
+ pulumi.set(__self__, "fingerprint", fingerprint)
43
+ if id and not isinstance(id, str):
44
+ raise TypeError("Expected argument 'id' to be a str")
45
+ pulumi.set(__self__, "id", id)
46
+ if lb_id and not isinstance(lb_id, str):
47
+ raise TypeError("Expected argument 'lb_id' to be a str")
48
+ pulumi.set(__self__, "lb_id", lb_id)
49
+ if letsencrypts and not isinstance(letsencrypts, list):
50
+ raise TypeError("Expected argument 'letsencrypts' to be a list")
51
+ pulumi.set(__self__, "letsencrypts", letsencrypts)
52
+ if name and not isinstance(name, str):
53
+ raise TypeError("Expected argument 'name' to be a str")
54
+ pulumi.set(__self__, "name", name)
55
+ if not_valid_after and not isinstance(not_valid_after, str):
56
+ raise TypeError("Expected argument 'not_valid_after' to be a str")
57
+ pulumi.set(__self__, "not_valid_after", not_valid_after)
58
+ if not_valid_before and not isinstance(not_valid_before, str):
59
+ raise TypeError("Expected argument 'not_valid_before' to be a str")
60
+ pulumi.set(__self__, "not_valid_before", not_valid_before)
61
+ if status and not isinstance(status, str):
62
+ raise TypeError("Expected argument 'status' to be a str")
63
+ pulumi.set(__self__, "status", status)
64
+ if subject_alternative_names and not isinstance(subject_alternative_names, list):
65
+ raise TypeError("Expected argument 'subject_alternative_names' to be a list")
66
+ pulumi.set(__self__, "subject_alternative_names", subject_alternative_names)
67
+
68
+ @property
69
+ @pulumi.getter(name="certificateId")
70
+ def certificate_id(self) -> Optional[str]:
71
+ return pulumi.get(self, "certificate_id")
72
+
73
+ @property
74
+ @pulumi.getter(name="commonName")
75
+ def common_name(self) -> str:
76
+ return pulumi.get(self, "common_name")
77
+
78
+ @property
79
+ @pulumi.getter(name="customCertificates")
80
+ def custom_certificates(self) -> Sequence['outputs.GetLoadbalancerCertificateCustomCertificateResult']:
81
+ return pulumi.get(self, "custom_certificates")
82
+
83
+ @property
84
+ @pulumi.getter
85
+ def fingerprint(self) -> str:
86
+ return pulumi.get(self, "fingerprint")
87
+
88
+ @property
89
+ @pulumi.getter
90
+ def id(self) -> str:
91
+ """
92
+ The provider-assigned unique ID for this managed resource.
93
+ """
94
+ return pulumi.get(self, "id")
95
+
96
+ @property
97
+ @pulumi.getter(name="lbId")
98
+ def lb_id(self) -> Optional[str]:
99
+ return pulumi.get(self, "lb_id")
100
+
101
+ @property
102
+ @pulumi.getter
103
+ def letsencrypts(self) -> Sequence['outputs.GetLoadbalancerCertificateLetsencryptResult']:
104
+ return pulumi.get(self, "letsencrypts")
105
+
106
+ @property
107
+ @pulumi.getter
108
+ def name(self) -> Optional[str]:
109
+ return pulumi.get(self, "name")
110
+
111
+ @property
112
+ @pulumi.getter(name="notValidAfter")
113
+ def not_valid_after(self) -> str:
114
+ return pulumi.get(self, "not_valid_after")
115
+
116
+ @property
117
+ @pulumi.getter(name="notValidBefore")
118
+ def not_valid_before(self) -> str:
119
+ return pulumi.get(self, "not_valid_before")
120
+
121
+ @property
122
+ @pulumi.getter
123
+ def status(self) -> str:
124
+ return pulumi.get(self, "status")
125
+
126
+ @property
127
+ @pulumi.getter(name="subjectAlternativeNames")
128
+ def subject_alternative_names(self) -> Sequence[str]:
129
+ return pulumi.get(self, "subject_alternative_names")
130
+
131
+
132
+ class AwaitableGetLoadbalancerCertificateResult(GetLoadbalancerCertificateResult):
133
+ # pylint: disable=using-constant-test
134
+ def __await__(self):
135
+ if False:
136
+ yield self
137
+ return GetLoadbalancerCertificateResult(
138
+ certificate_id=self.certificate_id,
139
+ common_name=self.common_name,
140
+ custom_certificates=self.custom_certificates,
141
+ fingerprint=self.fingerprint,
142
+ id=self.id,
143
+ lb_id=self.lb_id,
144
+ letsencrypts=self.letsencrypts,
145
+ name=self.name,
146
+ not_valid_after=self.not_valid_after,
147
+ not_valid_before=self.not_valid_before,
148
+ status=self.status,
149
+ subject_alternative_names=self.subject_alternative_names)
150
+
151
+
152
+ def get_loadbalancer_certificate(certificate_id: Optional[str] = None,
153
+ lb_id: Optional[str] = None,
154
+ name: Optional[str] = None,
155
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetLoadbalancerCertificateResult:
156
+ """
157
+ Get information about Scaleway Load Balancer certificates.
158
+
159
+ This data source can prove useful when a module accepts a Load Balancer certificate as an input variable and needs to, for example, determine the security of a certificate for the frontend associated with your domain.
160
+
161
+ For more information, see the [main documentation](https://www.scaleway.com/en/docs/network/load-balancer/how-to/add-certificate/) or [API documentation](https://www.scaleway.com/en/developers/api/load-balancer/zoned-api/#path-certificate).
162
+
163
+ ## Examples
164
+
165
+
166
+ :param str certificate_id: The certificate ID.
167
+ - Only one of `name` and `certificate_id` should be specified.
168
+ :param str lb_id: The Load Balancer ID this certificate is attached to.
169
+ :param str name: The name of the Load Balancer certificate.
170
+ - When using a certificate `name` you should specify the `lb-id`
171
+ """
172
+ __args__ = dict()
173
+ __args__['certificateId'] = certificate_id
174
+ __args__['lbId'] = lb_id
175
+ __args__['name'] = name
176
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
177
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getLoadbalancerCertificate:getLoadbalancerCertificate', __args__, opts=opts, typ=GetLoadbalancerCertificateResult).value
178
+
179
+ return AwaitableGetLoadbalancerCertificateResult(
180
+ certificate_id=pulumi.get(__ret__, 'certificate_id'),
181
+ common_name=pulumi.get(__ret__, 'common_name'),
182
+ custom_certificates=pulumi.get(__ret__, 'custom_certificates'),
183
+ fingerprint=pulumi.get(__ret__, 'fingerprint'),
184
+ id=pulumi.get(__ret__, 'id'),
185
+ lb_id=pulumi.get(__ret__, 'lb_id'),
186
+ letsencrypts=pulumi.get(__ret__, 'letsencrypts'),
187
+ name=pulumi.get(__ret__, 'name'),
188
+ not_valid_after=pulumi.get(__ret__, 'not_valid_after'),
189
+ not_valid_before=pulumi.get(__ret__, 'not_valid_before'),
190
+ status=pulumi.get(__ret__, 'status'),
191
+ subject_alternative_names=pulumi.get(__ret__, 'subject_alternative_names'))
192
+ def get_loadbalancer_certificate_output(certificate_id: Optional[pulumi.Input[Optional[str]]] = None,
193
+ lb_id: Optional[pulumi.Input[Optional[str]]] = None,
194
+ name: Optional[pulumi.Input[Optional[str]]] = None,
195
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetLoadbalancerCertificateResult]:
196
+ """
197
+ Get information about Scaleway Load Balancer certificates.
198
+
199
+ This data source can prove useful when a module accepts a Load Balancer certificate as an input variable and needs to, for example, determine the security of a certificate for the frontend associated with your domain.
200
+
201
+ For more information, see the [main documentation](https://www.scaleway.com/en/docs/network/load-balancer/how-to/add-certificate/) or [API documentation](https://www.scaleway.com/en/developers/api/load-balancer/zoned-api/#path-certificate).
202
+
203
+ ## Examples
204
+
205
+
206
+ :param str certificate_id: The certificate ID.
207
+ - Only one of `name` and `certificate_id` should be specified.
208
+ :param str lb_id: The Load Balancer ID this certificate is attached to.
209
+ :param str name: The name of the Load Balancer certificate.
210
+ - When using a certificate `name` you should specify the `lb-id`
211
+ """
212
+ __args__ = dict()
213
+ __args__['certificateId'] = certificate_id
214
+ __args__['lbId'] = lb_id
215
+ __args__['name'] = name
216
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
217
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getLoadbalancerCertificate:getLoadbalancerCertificate', __args__, opts=opts, typ=GetLoadbalancerCertificateResult)
218
+ return __ret__.apply(lambda __response__: GetLoadbalancerCertificateResult(
219
+ certificate_id=pulumi.get(__response__, 'certificate_id'),
220
+ common_name=pulumi.get(__response__, 'common_name'),
221
+ custom_certificates=pulumi.get(__response__, 'custom_certificates'),
222
+ fingerprint=pulumi.get(__response__, 'fingerprint'),
223
+ id=pulumi.get(__response__, 'id'),
224
+ lb_id=pulumi.get(__response__, 'lb_id'),
225
+ letsencrypts=pulumi.get(__response__, 'letsencrypts'),
226
+ name=pulumi.get(__response__, 'name'),
227
+ not_valid_after=pulumi.get(__response__, 'not_valid_after'),
228
+ not_valid_before=pulumi.get(__response__, 'not_valid_before'),
229
+ status=pulumi.get(__response__, 'status'),
230
+ subject_alternative_names=pulumi.get(__response__, 'subject_alternative_names')))