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,502 @@
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
+ 'GetInstanceServerResult',
20
+ 'AwaitableGetInstanceServerResult',
21
+ 'get_instance_server',
22
+ 'get_instance_server_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetInstanceServerResult:
27
+ """
28
+ A collection of values returned by getInstanceServer.
29
+ """
30
+ def __init__(__self__, additional_volume_ids=None, boot_type=None, bootscript_id=None, cloud_init=None, enable_dynamic_ip=None, enable_ipv6=None, id=None, image=None, ip_id=None, ip_ids=None, ipv6_address=None, ipv6_gateway=None, ipv6_prefix_length=None, name=None, organization_id=None, placement_group_id=None, placement_group_policy_respected=None, private_ip=None, private_networks=None, project_id=None, public_ip=None, public_ips=None, replace_on_type_change=None, root_volumes=None, routed_ip_enabled=None, security_group_id=None, server_id=None, state=None, tags=None, type=None, user_data=None, zone=None):
31
+ if additional_volume_ids and not isinstance(additional_volume_ids, list):
32
+ raise TypeError("Expected argument 'additional_volume_ids' to be a list")
33
+ pulumi.set(__self__, "additional_volume_ids", additional_volume_ids)
34
+ if boot_type and not isinstance(boot_type, str):
35
+ raise TypeError("Expected argument 'boot_type' to be a str")
36
+ pulumi.set(__self__, "boot_type", boot_type)
37
+ if bootscript_id and not isinstance(bootscript_id, str):
38
+ raise TypeError("Expected argument 'bootscript_id' to be a str")
39
+ pulumi.set(__self__, "bootscript_id", bootscript_id)
40
+ if cloud_init and not isinstance(cloud_init, str):
41
+ raise TypeError("Expected argument 'cloud_init' to be a str")
42
+ pulumi.set(__self__, "cloud_init", cloud_init)
43
+ if enable_dynamic_ip and not isinstance(enable_dynamic_ip, bool):
44
+ raise TypeError("Expected argument 'enable_dynamic_ip' to be a bool")
45
+ pulumi.set(__self__, "enable_dynamic_ip", enable_dynamic_ip)
46
+ if enable_ipv6 and not isinstance(enable_ipv6, bool):
47
+ raise TypeError("Expected argument 'enable_ipv6' to be a bool")
48
+ pulumi.set(__self__, "enable_ipv6", enable_ipv6)
49
+ if id and not isinstance(id, str):
50
+ raise TypeError("Expected argument 'id' to be a str")
51
+ pulumi.set(__self__, "id", id)
52
+ if image and not isinstance(image, str):
53
+ raise TypeError("Expected argument 'image' to be a str")
54
+ pulumi.set(__self__, "image", image)
55
+ if ip_id and not isinstance(ip_id, str):
56
+ raise TypeError("Expected argument 'ip_id' to be a str")
57
+ pulumi.set(__self__, "ip_id", ip_id)
58
+ if ip_ids and not isinstance(ip_ids, list):
59
+ raise TypeError("Expected argument 'ip_ids' to be a list")
60
+ pulumi.set(__self__, "ip_ids", ip_ids)
61
+ if ipv6_address and not isinstance(ipv6_address, str):
62
+ raise TypeError("Expected argument 'ipv6_address' to be a str")
63
+ pulumi.set(__self__, "ipv6_address", ipv6_address)
64
+ if ipv6_gateway and not isinstance(ipv6_gateway, str):
65
+ raise TypeError("Expected argument 'ipv6_gateway' to be a str")
66
+ pulumi.set(__self__, "ipv6_gateway", ipv6_gateway)
67
+ if ipv6_prefix_length and not isinstance(ipv6_prefix_length, int):
68
+ raise TypeError("Expected argument 'ipv6_prefix_length' to be a int")
69
+ pulumi.set(__self__, "ipv6_prefix_length", ipv6_prefix_length)
70
+ if name and not isinstance(name, str):
71
+ raise TypeError("Expected argument 'name' to be a str")
72
+ pulumi.set(__self__, "name", name)
73
+ if organization_id and not isinstance(organization_id, str):
74
+ raise TypeError("Expected argument 'organization_id' to be a str")
75
+ pulumi.set(__self__, "organization_id", organization_id)
76
+ if placement_group_id and not isinstance(placement_group_id, str):
77
+ raise TypeError("Expected argument 'placement_group_id' to be a str")
78
+ pulumi.set(__self__, "placement_group_id", placement_group_id)
79
+ if placement_group_policy_respected and not isinstance(placement_group_policy_respected, bool):
80
+ raise TypeError("Expected argument 'placement_group_policy_respected' to be a bool")
81
+ pulumi.set(__self__, "placement_group_policy_respected", placement_group_policy_respected)
82
+ if private_ip and not isinstance(private_ip, str):
83
+ raise TypeError("Expected argument 'private_ip' to be a str")
84
+ pulumi.set(__self__, "private_ip", private_ip)
85
+ if private_networks and not isinstance(private_networks, list):
86
+ raise TypeError("Expected argument 'private_networks' to be a list")
87
+ pulumi.set(__self__, "private_networks", private_networks)
88
+ if project_id and not isinstance(project_id, str):
89
+ raise TypeError("Expected argument 'project_id' to be a str")
90
+ pulumi.set(__self__, "project_id", project_id)
91
+ if public_ip and not isinstance(public_ip, str):
92
+ raise TypeError("Expected argument 'public_ip' to be a str")
93
+ pulumi.set(__self__, "public_ip", public_ip)
94
+ if public_ips and not isinstance(public_ips, list):
95
+ raise TypeError("Expected argument 'public_ips' to be a list")
96
+ pulumi.set(__self__, "public_ips", public_ips)
97
+ if replace_on_type_change and not isinstance(replace_on_type_change, bool):
98
+ raise TypeError("Expected argument 'replace_on_type_change' to be a bool")
99
+ pulumi.set(__self__, "replace_on_type_change", replace_on_type_change)
100
+ if root_volumes and not isinstance(root_volumes, list):
101
+ raise TypeError("Expected argument 'root_volumes' to be a list")
102
+ pulumi.set(__self__, "root_volumes", root_volumes)
103
+ if routed_ip_enabled and not isinstance(routed_ip_enabled, bool):
104
+ raise TypeError("Expected argument 'routed_ip_enabled' to be a bool")
105
+ pulumi.set(__self__, "routed_ip_enabled", routed_ip_enabled)
106
+ if security_group_id and not isinstance(security_group_id, str):
107
+ raise TypeError("Expected argument 'security_group_id' to be a str")
108
+ pulumi.set(__self__, "security_group_id", security_group_id)
109
+ if server_id and not isinstance(server_id, str):
110
+ raise TypeError("Expected argument 'server_id' to be a str")
111
+ pulumi.set(__self__, "server_id", server_id)
112
+ if state and not isinstance(state, str):
113
+ raise TypeError("Expected argument 'state' to be a str")
114
+ pulumi.set(__self__, "state", state)
115
+ if tags and not isinstance(tags, list):
116
+ raise TypeError("Expected argument 'tags' to be a list")
117
+ pulumi.set(__self__, "tags", tags)
118
+ if type and not isinstance(type, str):
119
+ raise TypeError("Expected argument 'type' to be a str")
120
+ pulumi.set(__self__, "type", type)
121
+ if user_data and not isinstance(user_data, dict):
122
+ raise TypeError("Expected argument 'user_data' to be a dict")
123
+ pulumi.set(__self__, "user_data", user_data)
124
+ if zone and not isinstance(zone, str):
125
+ raise TypeError("Expected argument 'zone' to be a str")
126
+ pulumi.set(__self__, "zone", zone)
127
+
128
+ @property
129
+ @pulumi.getter(name="additionalVolumeIds")
130
+ def additional_volume_ids(self) -> Sequence[str]:
131
+ """
132
+ The [additional volumes](https://developers.scaleway.com/en/products/instance/api/#volumes-7e8a39)
133
+ attached to the server.
134
+ """
135
+ return pulumi.get(self, "additional_volume_ids")
136
+
137
+ @property
138
+ @pulumi.getter(name="bootType")
139
+ def boot_type(self) -> str:
140
+ return pulumi.get(self, "boot_type")
141
+
142
+ @property
143
+ @pulumi.getter(name="bootscriptId")
144
+ def bootscript_id(self) -> str:
145
+ return pulumi.get(self, "bootscript_id")
146
+
147
+ @property
148
+ @pulumi.getter(name="cloudInit")
149
+ def cloud_init(self) -> str:
150
+ """
151
+ The cloud init script associated with this server.
152
+ """
153
+ return pulumi.get(self, "cloud_init")
154
+
155
+ @property
156
+ @pulumi.getter(name="enableDynamicIp")
157
+ def enable_dynamic_ip(self) -> bool:
158
+ """
159
+ True if dynamic IP in enable on the server.
160
+ """
161
+ return pulumi.get(self, "enable_dynamic_ip")
162
+
163
+ @property
164
+ @pulumi.getter(name="enableIpv6")
165
+ def enable_ipv6(self) -> bool:
166
+ """
167
+ Determines if IPv6 is enabled for the server.
168
+ """
169
+ return pulumi.get(self, "enable_ipv6")
170
+
171
+ @property
172
+ @pulumi.getter
173
+ def id(self) -> str:
174
+ """
175
+ The provider-assigned unique ID for this managed resource.
176
+ """
177
+ return pulumi.get(self, "id")
178
+
179
+ @property
180
+ @pulumi.getter
181
+ def image(self) -> str:
182
+ """
183
+ The UUID and the label of the base image used by the server.
184
+ """
185
+ return pulumi.get(self, "image")
186
+
187
+ @property
188
+ @pulumi.getter(name="ipId")
189
+ def ip_id(self) -> str:
190
+ return pulumi.get(self, "ip_id")
191
+
192
+ @property
193
+ @pulumi.getter(name="ipIds")
194
+ def ip_ids(self) -> Sequence[str]:
195
+ return pulumi.get(self, "ip_ids")
196
+
197
+ @property
198
+ @pulumi.getter(name="ipv6Address")
199
+ def ipv6_address(self) -> str:
200
+ """
201
+ The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
202
+ """
203
+ return pulumi.get(self, "ipv6_address")
204
+
205
+ @property
206
+ @pulumi.getter(name="ipv6Gateway")
207
+ def ipv6_gateway(self) -> str:
208
+ """
209
+ The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
210
+ """
211
+ return pulumi.get(self, "ipv6_gateway")
212
+
213
+ @property
214
+ @pulumi.getter(name="ipv6PrefixLength")
215
+ def ipv6_prefix_length(self) -> int:
216
+ """
217
+ The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
218
+ """
219
+ return pulumi.get(self, "ipv6_prefix_length")
220
+
221
+ @property
222
+ @pulumi.getter
223
+ def name(self) -> Optional[str]:
224
+ return pulumi.get(self, "name")
225
+
226
+ @property
227
+ @pulumi.getter(name="organizationId")
228
+ def organization_id(self) -> str:
229
+ """
230
+ The ID of the organization the server is associated with.
231
+ """
232
+ return pulumi.get(self, "organization_id")
233
+
234
+ @property
235
+ @pulumi.getter(name="placementGroupId")
236
+ def placement_group_id(self) -> str:
237
+ """
238
+ The [placement group](https://developers.scaleway.com/en/products/instance/api/#placement-groups-d8f653) the server is attached to.
239
+ """
240
+ return pulumi.get(self, "placement_group_id")
241
+
242
+ @property
243
+ @pulumi.getter(name="placementGroupPolicyRespected")
244
+ def placement_group_policy_respected(self) -> bool:
245
+ """
246
+ True when the placement group policy is respected.
247
+ """
248
+ return pulumi.get(self, "placement_group_policy_respected")
249
+
250
+ @property
251
+ @pulumi.getter(name="privateIp")
252
+ def private_ip(self) -> str:
253
+ """
254
+ The Scaleway internal IP address of the server.
255
+ """
256
+ return pulumi.get(self, "private_ip")
257
+
258
+ @property
259
+ @pulumi.getter(name="privateNetworks")
260
+ def private_networks(self) -> Sequence['outputs.GetInstanceServerPrivateNetworkResult']:
261
+ return pulumi.get(self, "private_networks")
262
+
263
+ @property
264
+ @pulumi.getter(name="projectId")
265
+ def project_id(self) -> Optional[str]:
266
+ return pulumi.get(self, "project_id")
267
+
268
+ @property
269
+ @pulumi.getter(name="publicIp")
270
+ def public_ip(self) -> str:
271
+ """
272
+ The public IP address of the server.
273
+ """
274
+ return pulumi.get(self, "public_ip")
275
+
276
+ @property
277
+ @pulumi.getter(name="publicIps")
278
+ def public_ips(self) -> Sequence['outputs.GetInstanceServerPublicIpResult']:
279
+ """
280
+ The list of public IPs of the server
281
+ """
282
+ return pulumi.get(self, "public_ips")
283
+
284
+ @property
285
+ @pulumi.getter(name="replaceOnTypeChange")
286
+ def replace_on_type_change(self) -> bool:
287
+ return pulumi.get(self, "replace_on_type_change")
288
+
289
+ @property
290
+ @pulumi.getter(name="rootVolumes")
291
+ def root_volumes(self) -> Sequence['outputs.GetInstanceServerRootVolumeResult']:
292
+ return pulumi.get(self, "root_volumes")
293
+
294
+ @property
295
+ @pulumi.getter(name="routedIpEnabled")
296
+ def routed_ip_enabled(self) -> bool:
297
+ """
298
+ True if the server support routed ip only.
299
+ """
300
+ return pulumi.get(self, "routed_ip_enabled")
301
+
302
+ @property
303
+ @pulumi.getter(name="securityGroupId")
304
+ def security_group_id(self) -> str:
305
+ """
306
+ The [security group](https://developers.scaleway.com/en/products/instance/api/#security-groups-8d7f89) the server is attached to.
307
+ """
308
+ return pulumi.get(self, "security_group_id")
309
+
310
+ @property
311
+ @pulumi.getter(name="serverId")
312
+ def server_id(self) -> Optional[str]:
313
+ return pulumi.get(self, "server_id")
314
+
315
+ @property
316
+ @pulumi.getter
317
+ def state(self) -> str:
318
+ """
319
+ The state of the server. Possible values are: `started`, `stopped` or `standby`.
320
+ """
321
+ return pulumi.get(self, "state")
322
+
323
+ @property
324
+ @pulumi.getter
325
+ def tags(self) -> Sequence[str]:
326
+ """
327
+ The tags associated with the server.
328
+ """
329
+ return pulumi.get(self, "tags")
330
+
331
+ @property
332
+ @pulumi.getter
333
+ def type(self) -> str:
334
+ """
335
+ The commercial type of the server.
336
+ You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
337
+ """
338
+ return pulumi.get(self, "type")
339
+
340
+ @property
341
+ @pulumi.getter(name="userData")
342
+ def user_data(self) -> Mapping[str, str]:
343
+ """
344
+ The user data associated with the server.
345
+ """
346
+ return pulumi.get(self, "user_data")
347
+
348
+ @property
349
+ @pulumi.getter
350
+ def zone(self) -> Optional[str]:
351
+ return pulumi.get(self, "zone")
352
+
353
+
354
+ class AwaitableGetInstanceServerResult(GetInstanceServerResult):
355
+ # pylint: disable=using-constant-test
356
+ def __await__(self):
357
+ if False:
358
+ yield self
359
+ return GetInstanceServerResult(
360
+ additional_volume_ids=self.additional_volume_ids,
361
+ boot_type=self.boot_type,
362
+ bootscript_id=self.bootscript_id,
363
+ cloud_init=self.cloud_init,
364
+ enable_dynamic_ip=self.enable_dynamic_ip,
365
+ enable_ipv6=self.enable_ipv6,
366
+ id=self.id,
367
+ image=self.image,
368
+ ip_id=self.ip_id,
369
+ ip_ids=self.ip_ids,
370
+ ipv6_address=self.ipv6_address,
371
+ ipv6_gateway=self.ipv6_gateway,
372
+ ipv6_prefix_length=self.ipv6_prefix_length,
373
+ name=self.name,
374
+ organization_id=self.organization_id,
375
+ placement_group_id=self.placement_group_id,
376
+ placement_group_policy_respected=self.placement_group_policy_respected,
377
+ private_ip=self.private_ip,
378
+ private_networks=self.private_networks,
379
+ project_id=self.project_id,
380
+ public_ip=self.public_ip,
381
+ public_ips=self.public_ips,
382
+ replace_on_type_change=self.replace_on_type_change,
383
+ root_volumes=self.root_volumes,
384
+ routed_ip_enabled=self.routed_ip_enabled,
385
+ security_group_id=self.security_group_id,
386
+ server_id=self.server_id,
387
+ state=self.state,
388
+ tags=self.tags,
389
+ type=self.type,
390
+ user_data=self.user_data,
391
+ zone=self.zone)
392
+
393
+
394
+ def get_instance_server(name: Optional[str] = None,
395
+ project_id: Optional[str] = None,
396
+ server_id: Optional[str] = None,
397
+ zone: Optional[str] = None,
398
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetInstanceServerResult:
399
+ """
400
+ Gets information about an instance server.
401
+
402
+
403
+ :param str name: The server name. Only one of `name` and `server_id` should be specified.
404
+ :param str project_id: The ID of the project the instance server is associated with.
405
+ :param str server_id: The server id. Only one of `name` and `server_id` should be specified.
406
+ :param str zone: `zone`) The zone in which the server exists.
407
+ """
408
+ __args__ = dict()
409
+ __args__['name'] = name
410
+ __args__['projectId'] = project_id
411
+ __args__['serverId'] = server_id
412
+ __args__['zone'] = zone
413
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
414
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getInstanceServer:getInstanceServer', __args__, opts=opts, typ=GetInstanceServerResult).value
415
+
416
+ return AwaitableGetInstanceServerResult(
417
+ additional_volume_ids=pulumi.get(__ret__, 'additional_volume_ids'),
418
+ boot_type=pulumi.get(__ret__, 'boot_type'),
419
+ bootscript_id=pulumi.get(__ret__, 'bootscript_id'),
420
+ cloud_init=pulumi.get(__ret__, 'cloud_init'),
421
+ enable_dynamic_ip=pulumi.get(__ret__, 'enable_dynamic_ip'),
422
+ enable_ipv6=pulumi.get(__ret__, 'enable_ipv6'),
423
+ id=pulumi.get(__ret__, 'id'),
424
+ image=pulumi.get(__ret__, 'image'),
425
+ ip_id=pulumi.get(__ret__, 'ip_id'),
426
+ ip_ids=pulumi.get(__ret__, 'ip_ids'),
427
+ ipv6_address=pulumi.get(__ret__, 'ipv6_address'),
428
+ ipv6_gateway=pulumi.get(__ret__, 'ipv6_gateway'),
429
+ ipv6_prefix_length=pulumi.get(__ret__, 'ipv6_prefix_length'),
430
+ name=pulumi.get(__ret__, 'name'),
431
+ organization_id=pulumi.get(__ret__, 'organization_id'),
432
+ placement_group_id=pulumi.get(__ret__, 'placement_group_id'),
433
+ placement_group_policy_respected=pulumi.get(__ret__, 'placement_group_policy_respected'),
434
+ private_ip=pulumi.get(__ret__, 'private_ip'),
435
+ private_networks=pulumi.get(__ret__, 'private_networks'),
436
+ project_id=pulumi.get(__ret__, 'project_id'),
437
+ public_ip=pulumi.get(__ret__, 'public_ip'),
438
+ public_ips=pulumi.get(__ret__, 'public_ips'),
439
+ replace_on_type_change=pulumi.get(__ret__, 'replace_on_type_change'),
440
+ root_volumes=pulumi.get(__ret__, 'root_volumes'),
441
+ routed_ip_enabled=pulumi.get(__ret__, 'routed_ip_enabled'),
442
+ security_group_id=pulumi.get(__ret__, 'security_group_id'),
443
+ server_id=pulumi.get(__ret__, 'server_id'),
444
+ state=pulumi.get(__ret__, 'state'),
445
+ tags=pulumi.get(__ret__, 'tags'),
446
+ type=pulumi.get(__ret__, 'type'),
447
+ user_data=pulumi.get(__ret__, 'user_data'),
448
+ zone=pulumi.get(__ret__, 'zone'))
449
+ def get_instance_server_output(name: Optional[pulumi.Input[Optional[str]]] = None,
450
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
451
+ server_id: Optional[pulumi.Input[Optional[str]]] = None,
452
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
453
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetInstanceServerResult]:
454
+ """
455
+ Gets information about an instance server.
456
+
457
+
458
+ :param str name: The server name. Only one of `name` and `server_id` should be specified.
459
+ :param str project_id: The ID of the project the instance server is associated with.
460
+ :param str server_id: The server id. Only one of `name` and `server_id` should be specified.
461
+ :param str zone: `zone`) The zone in which the server exists.
462
+ """
463
+ __args__ = dict()
464
+ __args__['name'] = name
465
+ __args__['projectId'] = project_id
466
+ __args__['serverId'] = server_id
467
+ __args__['zone'] = zone
468
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
469
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getInstanceServer:getInstanceServer', __args__, opts=opts, typ=GetInstanceServerResult)
470
+ return __ret__.apply(lambda __response__: GetInstanceServerResult(
471
+ additional_volume_ids=pulumi.get(__response__, 'additional_volume_ids'),
472
+ boot_type=pulumi.get(__response__, 'boot_type'),
473
+ bootscript_id=pulumi.get(__response__, 'bootscript_id'),
474
+ cloud_init=pulumi.get(__response__, 'cloud_init'),
475
+ enable_dynamic_ip=pulumi.get(__response__, 'enable_dynamic_ip'),
476
+ enable_ipv6=pulumi.get(__response__, 'enable_ipv6'),
477
+ id=pulumi.get(__response__, 'id'),
478
+ image=pulumi.get(__response__, 'image'),
479
+ ip_id=pulumi.get(__response__, 'ip_id'),
480
+ ip_ids=pulumi.get(__response__, 'ip_ids'),
481
+ ipv6_address=pulumi.get(__response__, 'ipv6_address'),
482
+ ipv6_gateway=pulumi.get(__response__, 'ipv6_gateway'),
483
+ ipv6_prefix_length=pulumi.get(__response__, 'ipv6_prefix_length'),
484
+ name=pulumi.get(__response__, 'name'),
485
+ organization_id=pulumi.get(__response__, 'organization_id'),
486
+ placement_group_id=pulumi.get(__response__, 'placement_group_id'),
487
+ placement_group_policy_respected=pulumi.get(__response__, 'placement_group_policy_respected'),
488
+ private_ip=pulumi.get(__response__, 'private_ip'),
489
+ private_networks=pulumi.get(__response__, 'private_networks'),
490
+ project_id=pulumi.get(__response__, 'project_id'),
491
+ public_ip=pulumi.get(__response__, 'public_ip'),
492
+ public_ips=pulumi.get(__response__, 'public_ips'),
493
+ replace_on_type_change=pulumi.get(__response__, 'replace_on_type_change'),
494
+ root_volumes=pulumi.get(__response__, 'root_volumes'),
495
+ routed_ip_enabled=pulumi.get(__response__, 'routed_ip_enabled'),
496
+ security_group_id=pulumi.get(__response__, 'security_group_id'),
497
+ server_id=pulumi.get(__response__, 'server_id'),
498
+ state=pulumi.get(__response__, 'state'),
499
+ tags=pulumi.get(__response__, 'tags'),
500
+ type=pulumi.get(__response__, 'type'),
501
+ user_data=pulumi.get(__response__, 'user_data'),
502
+ zone=pulumi.get(__response__, 'zone')))
@@ -0,0 +1,187 @@
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
+ 'GetInstanceServersResult',
20
+ 'AwaitableGetInstanceServersResult',
21
+ 'get_instance_servers',
22
+ 'get_instance_servers_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetInstanceServersResult:
27
+ """
28
+ A collection of values returned by getInstanceServers.
29
+ """
30
+ def __init__(__self__, id=None, name=None, organization_id=None, project_id=None, servers=None, tags=None, zone=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 name and not isinstance(name, str):
35
+ raise TypeError("Expected argument 'name' to be a str")
36
+ pulumi.set(__self__, "name", name)
37
+ if organization_id and not isinstance(organization_id, str):
38
+ raise TypeError("Expected argument 'organization_id' to be a str")
39
+ pulumi.set(__self__, "organization_id", organization_id)
40
+ if project_id and not isinstance(project_id, str):
41
+ raise TypeError("Expected argument 'project_id' to be a str")
42
+ pulumi.set(__self__, "project_id", project_id)
43
+ if servers and not isinstance(servers, list):
44
+ raise TypeError("Expected argument 'servers' to be a list")
45
+ pulumi.set(__self__, "servers", servers)
46
+ if tags and not isinstance(tags, list):
47
+ raise TypeError("Expected argument 'tags' to be a list")
48
+ pulumi.set(__self__, "tags", tags)
49
+ if zone and not isinstance(zone, str):
50
+ raise TypeError("Expected argument 'zone' to be a str")
51
+ pulumi.set(__self__, "zone", zone)
52
+
53
+ @property
54
+ @pulumi.getter
55
+ def id(self) -> str:
56
+ """
57
+ The provider-assigned unique ID for this managed resource.
58
+ """
59
+ return pulumi.get(self, "id")
60
+
61
+ @property
62
+ @pulumi.getter
63
+ def name(self) -> Optional[str]:
64
+ """
65
+ The name of the server.
66
+ """
67
+ return pulumi.get(self, "name")
68
+
69
+ @property
70
+ @pulumi.getter(name="organizationId")
71
+ def organization_id(self) -> str:
72
+ """
73
+ The organization ID the server is associated with.
74
+ """
75
+ return pulumi.get(self, "organization_id")
76
+
77
+ @property
78
+ @pulumi.getter(name="projectId")
79
+ def project_id(self) -> str:
80
+ """
81
+ The ID of the project the server is associated with.
82
+ """
83
+ return pulumi.get(self, "project_id")
84
+
85
+ @property
86
+ @pulumi.getter
87
+ def servers(self) -> Sequence['outputs.GetInstanceServersServerResult']:
88
+ """
89
+ List of found servers
90
+ """
91
+ return pulumi.get(self, "servers")
92
+
93
+ @property
94
+ @pulumi.getter
95
+ def tags(self) -> Optional[Sequence[str]]:
96
+ """
97
+ The tags associated with the server.
98
+ """
99
+ return pulumi.get(self, "tags")
100
+
101
+ @property
102
+ @pulumi.getter
103
+ def zone(self) -> str:
104
+ """
105
+ The zone in which the server is.
106
+ """
107
+ return pulumi.get(self, "zone")
108
+
109
+
110
+ class AwaitableGetInstanceServersResult(GetInstanceServersResult):
111
+ # pylint: disable=using-constant-test
112
+ def __await__(self):
113
+ if False:
114
+ yield self
115
+ return GetInstanceServersResult(
116
+ id=self.id,
117
+ name=self.name,
118
+ organization_id=self.organization_id,
119
+ project_id=self.project_id,
120
+ servers=self.servers,
121
+ tags=self.tags,
122
+ zone=self.zone)
123
+
124
+
125
+ def get_instance_servers(name: Optional[str] = None,
126
+ project_id: Optional[str] = None,
127
+ tags: Optional[Sequence[str]] = None,
128
+ zone: Optional[str] = None,
129
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetInstanceServersResult:
130
+ """
131
+ Gets information about multiple instance servers.
132
+
133
+ ## Examples
134
+
135
+
136
+ :param str name: The server name used as filter. Servers with a name like it are listed.
137
+ :param str project_id: The ID of the project the server is associated with.
138
+ :param Sequence[str] tags: List of tags used as filter. Servers with these exact tags are listed.
139
+ :param str zone: `zone`) The zone in which servers exist.
140
+ """
141
+ __args__ = dict()
142
+ __args__['name'] = name
143
+ __args__['projectId'] = project_id
144
+ __args__['tags'] = tags
145
+ __args__['zone'] = zone
146
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
147
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getInstanceServers:getInstanceServers', __args__, opts=opts, typ=GetInstanceServersResult).value
148
+
149
+ return AwaitableGetInstanceServersResult(
150
+ id=pulumi.get(__ret__, 'id'),
151
+ name=pulumi.get(__ret__, 'name'),
152
+ organization_id=pulumi.get(__ret__, 'organization_id'),
153
+ project_id=pulumi.get(__ret__, 'project_id'),
154
+ servers=pulumi.get(__ret__, 'servers'),
155
+ tags=pulumi.get(__ret__, 'tags'),
156
+ zone=pulumi.get(__ret__, 'zone'))
157
+ def get_instance_servers_output(name: Optional[pulumi.Input[Optional[str]]] = None,
158
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
159
+ tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
160
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
161
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetInstanceServersResult]:
162
+ """
163
+ Gets information about multiple instance servers.
164
+
165
+ ## Examples
166
+
167
+
168
+ :param str name: The server name used as filter. Servers with a name like it are listed.
169
+ :param str project_id: The ID of the project the server is associated with.
170
+ :param Sequence[str] tags: List of tags used as filter. Servers with these exact tags are listed.
171
+ :param str zone: `zone`) The zone in which servers exist.
172
+ """
173
+ __args__ = dict()
174
+ __args__['name'] = name
175
+ __args__['projectId'] = project_id
176
+ __args__['tags'] = tags
177
+ __args__['zone'] = zone
178
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
179
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getInstanceServers:getInstanceServers', __args__, opts=opts, typ=GetInstanceServersResult)
180
+ return __ret__.apply(lambda __response__: GetInstanceServersResult(
181
+ id=pulumi.get(__response__, 'id'),
182
+ name=pulumi.get(__response__, 'name'),
183
+ organization_id=pulumi.get(__response__, 'organization_id'),
184
+ project_id=pulumi.get(__response__, 'project_id'),
185
+ servers=pulumi.get(__response__, 'servers'),
186
+ tags=pulumi.get(__response__, 'tags'),
187
+ zone=pulumi.get(__response__, 'zone')))