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,479 @@
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__ = ['InstancePlacementGroupArgs', 'InstancePlacementGroup']
18
+
19
+ @pulumi.input_type
20
+ class InstancePlacementGroupArgs:
21
+ def __init__(__self__, *,
22
+ name: Optional[pulumi.Input[str]] = None,
23
+ policy_mode: Optional[pulumi.Input[str]] = None,
24
+ policy_type: Optional[pulumi.Input[str]] = None,
25
+ project_id: Optional[pulumi.Input[str]] = None,
26
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
27
+ zone: Optional[pulumi.Input[str]] = None):
28
+ """
29
+ The set of arguments for constructing a InstancePlacementGroup resource.
30
+ :param pulumi.Input[str] name: The name of the placement group.
31
+ :param pulumi.Input[str] policy_mode: The [policy mode](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-group) of the placement group. Possible values are: `optional` or `enforced`.
32
+ :param pulumi.Input[str] policy_type: The [policy type](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-grou) of the placement group. Possible values are: `low_latency` or `max_availability`.
33
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the placement group is associated with.
34
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the placement group.
35
+ :param pulumi.Input[str] zone: `zone`) The zone in which the placement group should be created.
36
+ """
37
+ if name is not None:
38
+ pulumi.set(__self__, "name", name)
39
+ if policy_mode is not None:
40
+ pulumi.set(__self__, "policy_mode", policy_mode)
41
+ if policy_type is not None:
42
+ pulumi.set(__self__, "policy_type", policy_type)
43
+ if project_id is not None:
44
+ pulumi.set(__self__, "project_id", project_id)
45
+ if tags is not None:
46
+ pulumi.set(__self__, "tags", tags)
47
+ if zone is not None:
48
+ pulumi.set(__self__, "zone", zone)
49
+
50
+ @property
51
+ @pulumi.getter
52
+ def name(self) -> Optional[pulumi.Input[str]]:
53
+ """
54
+ The name of the placement group.
55
+ """
56
+ return pulumi.get(self, "name")
57
+
58
+ @name.setter
59
+ def name(self, value: Optional[pulumi.Input[str]]):
60
+ pulumi.set(self, "name", value)
61
+
62
+ @property
63
+ @pulumi.getter(name="policyMode")
64
+ def policy_mode(self) -> Optional[pulumi.Input[str]]:
65
+ """
66
+ The [policy mode](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-group) of the placement group. Possible values are: `optional` or `enforced`.
67
+ """
68
+ return pulumi.get(self, "policy_mode")
69
+
70
+ @policy_mode.setter
71
+ def policy_mode(self, value: Optional[pulumi.Input[str]]):
72
+ pulumi.set(self, "policy_mode", value)
73
+
74
+ @property
75
+ @pulumi.getter(name="policyType")
76
+ def policy_type(self) -> Optional[pulumi.Input[str]]:
77
+ """
78
+ The [policy type](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-grou) of the placement group. Possible values are: `low_latency` or `max_availability`.
79
+ """
80
+ return pulumi.get(self, "policy_type")
81
+
82
+ @policy_type.setter
83
+ def policy_type(self, value: Optional[pulumi.Input[str]]):
84
+ pulumi.set(self, "policy_type", value)
85
+
86
+ @property
87
+ @pulumi.getter(name="projectId")
88
+ def project_id(self) -> Optional[pulumi.Input[str]]:
89
+ """
90
+ `project_id`) The ID of the project the placement group is associated with.
91
+ """
92
+ return pulumi.get(self, "project_id")
93
+
94
+ @project_id.setter
95
+ def project_id(self, value: Optional[pulumi.Input[str]]):
96
+ pulumi.set(self, "project_id", value)
97
+
98
+ @property
99
+ @pulumi.getter
100
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
101
+ """
102
+ A list of tags to apply to the placement group.
103
+ """
104
+ return pulumi.get(self, "tags")
105
+
106
+ @tags.setter
107
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
108
+ pulumi.set(self, "tags", value)
109
+
110
+ @property
111
+ @pulumi.getter
112
+ def zone(self) -> Optional[pulumi.Input[str]]:
113
+ """
114
+ `zone`) The zone in which the placement group should be created.
115
+ """
116
+ return pulumi.get(self, "zone")
117
+
118
+ @zone.setter
119
+ def zone(self, value: Optional[pulumi.Input[str]]):
120
+ pulumi.set(self, "zone", value)
121
+
122
+
123
+ @pulumi.input_type
124
+ class _InstancePlacementGroupState:
125
+ def __init__(__self__, *,
126
+ name: Optional[pulumi.Input[str]] = None,
127
+ organization_id: Optional[pulumi.Input[str]] = None,
128
+ policy_mode: Optional[pulumi.Input[str]] = None,
129
+ policy_respected: Optional[pulumi.Input[bool]] = None,
130
+ policy_type: Optional[pulumi.Input[str]] = None,
131
+ project_id: Optional[pulumi.Input[str]] = None,
132
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
133
+ zone: Optional[pulumi.Input[str]] = None):
134
+ """
135
+ Input properties used for looking up and filtering InstancePlacementGroup resources.
136
+ :param pulumi.Input[str] name: The name of the placement group.
137
+ :param pulumi.Input[str] organization_id: The organization ID the placement group is associated with.
138
+ :param pulumi.Input[str] policy_mode: The [policy mode](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-group) of the placement group. Possible values are: `optional` or `enforced`.
139
+ :param pulumi.Input[bool] policy_respected: Is true when the policy is respected.
140
+ :param pulumi.Input[str] policy_type: The [policy type](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-grou) of the placement group. Possible values are: `low_latency` or `max_availability`.
141
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the placement group is associated with.
142
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the placement group.
143
+ :param pulumi.Input[str] zone: `zone`) The zone in which the placement group should be created.
144
+ """
145
+ if name is not None:
146
+ pulumi.set(__self__, "name", name)
147
+ if organization_id is not None:
148
+ pulumi.set(__self__, "organization_id", organization_id)
149
+ if policy_mode is not None:
150
+ pulumi.set(__self__, "policy_mode", policy_mode)
151
+ if policy_respected is not None:
152
+ pulumi.set(__self__, "policy_respected", policy_respected)
153
+ if policy_type is not None:
154
+ pulumi.set(__self__, "policy_type", policy_type)
155
+ if project_id is not None:
156
+ pulumi.set(__self__, "project_id", project_id)
157
+ if tags is not None:
158
+ pulumi.set(__self__, "tags", tags)
159
+ if zone is not None:
160
+ pulumi.set(__self__, "zone", zone)
161
+
162
+ @property
163
+ @pulumi.getter
164
+ def name(self) -> Optional[pulumi.Input[str]]:
165
+ """
166
+ The name of the placement group.
167
+ """
168
+ return pulumi.get(self, "name")
169
+
170
+ @name.setter
171
+ def name(self, value: Optional[pulumi.Input[str]]):
172
+ pulumi.set(self, "name", value)
173
+
174
+ @property
175
+ @pulumi.getter(name="organizationId")
176
+ def organization_id(self) -> Optional[pulumi.Input[str]]:
177
+ """
178
+ The organization ID the placement group is associated with.
179
+ """
180
+ return pulumi.get(self, "organization_id")
181
+
182
+ @organization_id.setter
183
+ def organization_id(self, value: Optional[pulumi.Input[str]]):
184
+ pulumi.set(self, "organization_id", value)
185
+
186
+ @property
187
+ @pulumi.getter(name="policyMode")
188
+ def policy_mode(self) -> Optional[pulumi.Input[str]]:
189
+ """
190
+ The [policy mode](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-group) of the placement group. Possible values are: `optional` or `enforced`.
191
+ """
192
+ return pulumi.get(self, "policy_mode")
193
+
194
+ @policy_mode.setter
195
+ def policy_mode(self, value: Optional[pulumi.Input[str]]):
196
+ pulumi.set(self, "policy_mode", value)
197
+
198
+ @property
199
+ @pulumi.getter(name="policyRespected")
200
+ def policy_respected(self) -> Optional[pulumi.Input[bool]]:
201
+ """
202
+ Is true when the policy is respected.
203
+ """
204
+ return pulumi.get(self, "policy_respected")
205
+
206
+ @policy_respected.setter
207
+ def policy_respected(self, value: Optional[pulumi.Input[bool]]):
208
+ pulumi.set(self, "policy_respected", value)
209
+
210
+ @property
211
+ @pulumi.getter(name="policyType")
212
+ def policy_type(self) -> Optional[pulumi.Input[str]]:
213
+ """
214
+ The [policy type](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-grou) of the placement group. Possible values are: `low_latency` or `max_availability`.
215
+ """
216
+ return pulumi.get(self, "policy_type")
217
+
218
+ @policy_type.setter
219
+ def policy_type(self, value: Optional[pulumi.Input[str]]):
220
+ pulumi.set(self, "policy_type", value)
221
+
222
+ @property
223
+ @pulumi.getter(name="projectId")
224
+ def project_id(self) -> Optional[pulumi.Input[str]]:
225
+ """
226
+ `project_id`) The ID of the project the placement group is associated with.
227
+ """
228
+ return pulumi.get(self, "project_id")
229
+
230
+ @project_id.setter
231
+ def project_id(self, value: Optional[pulumi.Input[str]]):
232
+ pulumi.set(self, "project_id", value)
233
+
234
+ @property
235
+ @pulumi.getter
236
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
237
+ """
238
+ A list of tags to apply to the placement group.
239
+ """
240
+ return pulumi.get(self, "tags")
241
+
242
+ @tags.setter
243
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
244
+ pulumi.set(self, "tags", value)
245
+
246
+ @property
247
+ @pulumi.getter
248
+ def zone(self) -> Optional[pulumi.Input[str]]:
249
+ """
250
+ `zone`) The zone in which the placement group should be created.
251
+ """
252
+ return pulumi.get(self, "zone")
253
+
254
+ @zone.setter
255
+ def zone(self, value: Optional[pulumi.Input[str]]):
256
+ pulumi.set(self, "zone", value)
257
+
258
+
259
+ class InstancePlacementGroup(pulumi.CustomResource):
260
+ @overload
261
+ def __init__(__self__,
262
+ resource_name: str,
263
+ opts: Optional[pulumi.ResourceOptions] = None,
264
+ name: Optional[pulumi.Input[str]] = None,
265
+ policy_mode: Optional[pulumi.Input[str]] = None,
266
+ policy_type: Optional[pulumi.Input[str]] = None,
267
+ project_id: Optional[pulumi.Input[str]] = None,
268
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
269
+ zone: Optional[pulumi.Input[str]] = None,
270
+ __props__=None):
271
+ """
272
+ Creates and manages Compute Instance Placement Groups. For more information, see [the documentation](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-list-placement-groups).
273
+
274
+ ## Example Usage
275
+
276
+ ```python
277
+ import pulumi
278
+ import pulumiverse_scaleway as scaleway
279
+
280
+ availability_group = scaleway.InstancePlacementGroup("availability_group")
281
+ ```
282
+
283
+ ## Import
284
+
285
+ Placement groups can be imported using the `{zone}/{id}`, e.g.
286
+
287
+ bash
288
+
289
+ ```sh
290
+ $ pulumi import scaleway:index/instancePlacementGroup:InstancePlacementGroup availability_group fr-par-1/11111111-1111-1111-1111-111111111111
291
+ ```
292
+
293
+ :param str resource_name: The name of the resource.
294
+ :param pulumi.ResourceOptions opts: Options for the resource.
295
+ :param pulumi.Input[str] name: The name of the placement group.
296
+ :param pulumi.Input[str] policy_mode: The [policy mode](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-group) of the placement group. Possible values are: `optional` or `enforced`.
297
+ :param pulumi.Input[str] policy_type: The [policy type](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-grou) of the placement group. Possible values are: `low_latency` or `max_availability`.
298
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the placement group is associated with.
299
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the placement group.
300
+ :param pulumi.Input[str] zone: `zone`) The zone in which the placement group should be created.
301
+ """
302
+ ...
303
+ @overload
304
+ def __init__(__self__,
305
+ resource_name: str,
306
+ args: Optional[InstancePlacementGroupArgs] = None,
307
+ opts: Optional[pulumi.ResourceOptions] = None):
308
+ """
309
+ Creates and manages Compute Instance Placement Groups. For more information, see [the documentation](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-list-placement-groups).
310
+
311
+ ## Example Usage
312
+
313
+ ```python
314
+ import pulumi
315
+ import pulumiverse_scaleway as scaleway
316
+
317
+ availability_group = scaleway.InstancePlacementGroup("availability_group")
318
+ ```
319
+
320
+ ## Import
321
+
322
+ Placement groups can be imported using the `{zone}/{id}`, e.g.
323
+
324
+ bash
325
+
326
+ ```sh
327
+ $ pulumi import scaleway:index/instancePlacementGroup:InstancePlacementGroup availability_group fr-par-1/11111111-1111-1111-1111-111111111111
328
+ ```
329
+
330
+ :param str resource_name: The name of the resource.
331
+ :param InstancePlacementGroupArgs args: The arguments to use to populate this resource's properties.
332
+ :param pulumi.ResourceOptions opts: Options for the resource.
333
+ """
334
+ ...
335
+ def __init__(__self__, resource_name: str, *args, **kwargs):
336
+ resource_args, opts = _utilities.get_resource_args_opts(InstancePlacementGroupArgs, pulumi.ResourceOptions, *args, **kwargs)
337
+ if resource_args is not None:
338
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
339
+ else:
340
+ __self__._internal_init(resource_name, *args, **kwargs)
341
+
342
+ def _internal_init(__self__,
343
+ resource_name: str,
344
+ opts: Optional[pulumi.ResourceOptions] = None,
345
+ name: Optional[pulumi.Input[str]] = None,
346
+ policy_mode: Optional[pulumi.Input[str]] = None,
347
+ policy_type: Optional[pulumi.Input[str]] = None,
348
+ project_id: Optional[pulumi.Input[str]] = None,
349
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
350
+ zone: Optional[pulumi.Input[str]] = None,
351
+ __props__=None):
352
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
353
+ if not isinstance(opts, pulumi.ResourceOptions):
354
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
355
+ if opts.id is None:
356
+ if __props__ is not None:
357
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
358
+ __props__ = InstancePlacementGroupArgs.__new__(InstancePlacementGroupArgs)
359
+
360
+ __props__.__dict__["name"] = name
361
+ __props__.__dict__["policy_mode"] = policy_mode
362
+ __props__.__dict__["policy_type"] = policy_type
363
+ __props__.__dict__["project_id"] = project_id
364
+ __props__.__dict__["tags"] = tags
365
+ __props__.__dict__["zone"] = zone
366
+ __props__.__dict__["organization_id"] = None
367
+ __props__.__dict__["policy_respected"] = None
368
+ super(InstancePlacementGroup, __self__).__init__(
369
+ 'scaleway:index/instancePlacementGroup:InstancePlacementGroup',
370
+ resource_name,
371
+ __props__,
372
+ opts)
373
+
374
+ @staticmethod
375
+ def get(resource_name: str,
376
+ id: pulumi.Input[str],
377
+ opts: Optional[pulumi.ResourceOptions] = None,
378
+ name: Optional[pulumi.Input[str]] = None,
379
+ organization_id: Optional[pulumi.Input[str]] = None,
380
+ policy_mode: Optional[pulumi.Input[str]] = None,
381
+ policy_respected: Optional[pulumi.Input[bool]] = None,
382
+ policy_type: Optional[pulumi.Input[str]] = None,
383
+ project_id: Optional[pulumi.Input[str]] = None,
384
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
385
+ zone: Optional[pulumi.Input[str]] = None) -> 'InstancePlacementGroup':
386
+ """
387
+ Get an existing InstancePlacementGroup resource's state with the given name, id, and optional extra
388
+ properties used to qualify the lookup.
389
+
390
+ :param str resource_name: The unique name of the resulting resource.
391
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
392
+ :param pulumi.ResourceOptions opts: Options for the resource.
393
+ :param pulumi.Input[str] name: The name of the placement group.
394
+ :param pulumi.Input[str] organization_id: The organization ID the placement group is associated with.
395
+ :param pulumi.Input[str] policy_mode: The [policy mode](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-group) of the placement group. Possible values are: `optional` or `enforced`.
396
+ :param pulumi.Input[bool] policy_respected: Is true when the policy is respected.
397
+ :param pulumi.Input[str] policy_type: The [policy type](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-grou) of the placement group. Possible values are: `low_latency` or `max_availability`.
398
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the placement group is associated with.
399
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the placement group.
400
+ :param pulumi.Input[str] zone: `zone`) The zone in which the placement group should be created.
401
+ """
402
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
403
+
404
+ __props__ = _InstancePlacementGroupState.__new__(_InstancePlacementGroupState)
405
+
406
+ __props__.__dict__["name"] = name
407
+ __props__.__dict__["organization_id"] = organization_id
408
+ __props__.__dict__["policy_mode"] = policy_mode
409
+ __props__.__dict__["policy_respected"] = policy_respected
410
+ __props__.__dict__["policy_type"] = policy_type
411
+ __props__.__dict__["project_id"] = project_id
412
+ __props__.__dict__["tags"] = tags
413
+ __props__.__dict__["zone"] = zone
414
+ return InstancePlacementGroup(resource_name, opts=opts, __props__=__props__)
415
+
416
+ @property
417
+ @pulumi.getter
418
+ def name(self) -> pulumi.Output[str]:
419
+ """
420
+ The name of the placement group.
421
+ """
422
+ return pulumi.get(self, "name")
423
+
424
+ @property
425
+ @pulumi.getter(name="organizationId")
426
+ def organization_id(self) -> pulumi.Output[str]:
427
+ """
428
+ The organization ID the placement group is associated with.
429
+ """
430
+ return pulumi.get(self, "organization_id")
431
+
432
+ @property
433
+ @pulumi.getter(name="policyMode")
434
+ def policy_mode(self) -> pulumi.Output[Optional[str]]:
435
+ """
436
+ The [policy mode](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-group) of the placement group. Possible values are: `optional` or `enforced`.
437
+ """
438
+ return pulumi.get(self, "policy_mode")
439
+
440
+ @property
441
+ @pulumi.getter(name="policyRespected")
442
+ def policy_respected(self) -> pulumi.Output[bool]:
443
+ """
444
+ Is true when the policy is respected.
445
+ """
446
+ return pulumi.get(self, "policy_respected")
447
+
448
+ @property
449
+ @pulumi.getter(name="policyType")
450
+ def policy_type(self) -> pulumi.Output[Optional[str]]:
451
+ """
452
+ The [policy type](https://www.scaleway.com/en/developers/api/instance/#path-placement-groups-create-a-placement-grou) of the placement group. Possible values are: `low_latency` or `max_availability`.
453
+ """
454
+ return pulumi.get(self, "policy_type")
455
+
456
+ @property
457
+ @pulumi.getter(name="projectId")
458
+ def project_id(self) -> pulumi.Output[str]:
459
+ """
460
+ `project_id`) The ID of the project the placement group is associated with.
461
+ """
462
+ return pulumi.get(self, "project_id")
463
+
464
+ @property
465
+ @pulumi.getter
466
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
467
+ """
468
+ A list of tags to apply to the placement group.
469
+ """
470
+ return pulumi.get(self, "tags")
471
+
472
+ @property
473
+ @pulumi.getter
474
+ def zone(self) -> pulumi.Output[str]:
475
+ """
476
+ `zone`) The zone in which the placement group should be created.
477
+ """
478
+ return pulumi.get(self, "zone")
479
+