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,692 @@
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
+ from ._inputs import *
18
+
19
+ __all__ = ['JobDefinitionArgs', 'JobDefinition']
20
+
21
+ @pulumi.input_type
22
+ class JobDefinitionArgs:
23
+ def __init__(__self__, *,
24
+ cpu_limit: pulumi.Input[int],
25
+ memory_limit: pulumi.Input[int],
26
+ command: Optional[pulumi.Input[str]] = None,
27
+ cron: Optional[pulumi.Input['JobDefinitionCronArgs']] = None,
28
+ description: Optional[pulumi.Input[str]] = None,
29
+ env: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
30
+ image_uri: Optional[pulumi.Input[str]] = None,
31
+ name: Optional[pulumi.Input[str]] = None,
32
+ project_id: Optional[pulumi.Input[str]] = None,
33
+ region: Optional[pulumi.Input[str]] = None,
34
+ timeout: Optional[pulumi.Input[str]] = None):
35
+ """
36
+ The set of arguments for constructing a JobDefinition resource.
37
+ :param pulumi.Input[int] cpu_limit: The amount of vCPU computing resources to allocate to each container running the job.
38
+ :param pulumi.Input[int] memory_limit: The memory computing resources in MB to allocate to each container running the job.
39
+ :param pulumi.Input[str] command: The command that will be run in the container if specified.
40
+ :param pulumi.Input['JobDefinitionCronArgs'] cron: The cron configuration
41
+ :param pulumi.Input[str] description: The description of the job
42
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] env: The environment variables of the container.
43
+ :param pulumi.Input[str] image_uri: The uri of the container image that will be used for the job run.
44
+ :param pulumi.Input[str] name: The name of the job.
45
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Job is associated with.
46
+ :param pulumi.Input[str] region: `region`) The region of the Job.
47
+ :param pulumi.Input[str] timeout: The job run timeout, in Go Time format (ex: `2h30m25s`)
48
+ """
49
+ pulumi.set(__self__, "cpu_limit", cpu_limit)
50
+ pulumi.set(__self__, "memory_limit", memory_limit)
51
+ if command is not None:
52
+ pulumi.set(__self__, "command", command)
53
+ if cron is not None:
54
+ pulumi.set(__self__, "cron", cron)
55
+ if description is not None:
56
+ pulumi.set(__self__, "description", description)
57
+ if env is not None:
58
+ pulumi.set(__self__, "env", env)
59
+ if image_uri is not None:
60
+ pulumi.set(__self__, "image_uri", image_uri)
61
+ if name is not None:
62
+ pulumi.set(__self__, "name", name)
63
+ if project_id is not None:
64
+ pulumi.set(__self__, "project_id", project_id)
65
+ if region is not None:
66
+ pulumi.set(__self__, "region", region)
67
+ if timeout is not None:
68
+ pulumi.set(__self__, "timeout", timeout)
69
+
70
+ @property
71
+ @pulumi.getter(name="cpuLimit")
72
+ def cpu_limit(self) -> pulumi.Input[int]:
73
+ """
74
+ The amount of vCPU computing resources to allocate to each container running the job.
75
+ """
76
+ return pulumi.get(self, "cpu_limit")
77
+
78
+ @cpu_limit.setter
79
+ def cpu_limit(self, value: pulumi.Input[int]):
80
+ pulumi.set(self, "cpu_limit", value)
81
+
82
+ @property
83
+ @pulumi.getter(name="memoryLimit")
84
+ def memory_limit(self) -> pulumi.Input[int]:
85
+ """
86
+ The memory computing resources in MB to allocate to each container running the job.
87
+ """
88
+ return pulumi.get(self, "memory_limit")
89
+
90
+ @memory_limit.setter
91
+ def memory_limit(self, value: pulumi.Input[int]):
92
+ pulumi.set(self, "memory_limit", value)
93
+
94
+ @property
95
+ @pulumi.getter
96
+ def command(self) -> Optional[pulumi.Input[str]]:
97
+ """
98
+ The command that will be run in the container if specified.
99
+ """
100
+ return pulumi.get(self, "command")
101
+
102
+ @command.setter
103
+ def command(self, value: Optional[pulumi.Input[str]]):
104
+ pulumi.set(self, "command", value)
105
+
106
+ @property
107
+ @pulumi.getter
108
+ def cron(self) -> Optional[pulumi.Input['JobDefinitionCronArgs']]:
109
+ """
110
+ The cron configuration
111
+ """
112
+ return pulumi.get(self, "cron")
113
+
114
+ @cron.setter
115
+ def cron(self, value: Optional[pulumi.Input['JobDefinitionCronArgs']]):
116
+ pulumi.set(self, "cron", value)
117
+
118
+ @property
119
+ @pulumi.getter
120
+ def description(self) -> Optional[pulumi.Input[str]]:
121
+ """
122
+ The description of the job
123
+ """
124
+ return pulumi.get(self, "description")
125
+
126
+ @description.setter
127
+ def description(self, value: Optional[pulumi.Input[str]]):
128
+ pulumi.set(self, "description", value)
129
+
130
+ @property
131
+ @pulumi.getter
132
+ def env(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
133
+ """
134
+ The environment variables of the container.
135
+ """
136
+ return pulumi.get(self, "env")
137
+
138
+ @env.setter
139
+ def env(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
140
+ pulumi.set(self, "env", value)
141
+
142
+ @property
143
+ @pulumi.getter(name="imageUri")
144
+ def image_uri(self) -> Optional[pulumi.Input[str]]:
145
+ """
146
+ The uri of the container image that will be used for the job run.
147
+ """
148
+ return pulumi.get(self, "image_uri")
149
+
150
+ @image_uri.setter
151
+ def image_uri(self, value: Optional[pulumi.Input[str]]):
152
+ pulumi.set(self, "image_uri", value)
153
+
154
+ @property
155
+ @pulumi.getter
156
+ def name(self) -> Optional[pulumi.Input[str]]:
157
+ """
158
+ The name of the job.
159
+ """
160
+ return pulumi.get(self, "name")
161
+
162
+ @name.setter
163
+ def name(self, value: Optional[pulumi.Input[str]]):
164
+ pulumi.set(self, "name", value)
165
+
166
+ @property
167
+ @pulumi.getter(name="projectId")
168
+ def project_id(self) -> Optional[pulumi.Input[str]]:
169
+ """
170
+ `project_id`) The ID of the project the Job is associated with.
171
+ """
172
+ return pulumi.get(self, "project_id")
173
+
174
+ @project_id.setter
175
+ def project_id(self, value: Optional[pulumi.Input[str]]):
176
+ pulumi.set(self, "project_id", value)
177
+
178
+ @property
179
+ @pulumi.getter
180
+ def region(self) -> Optional[pulumi.Input[str]]:
181
+ """
182
+ `region`) The region of the Job.
183
+ """
184
+ return pulumi.get(self, "region")
185
+
186
+ @region.setter
187
+ def region(self, value: Optional[pulumi.Input[str]]):
188
+ pulumi.set(self, "region", value)
189
+
190
+ @property
191
+ @pulumi.getter
192
+ def timeout(self) -> Optional[pulumi.Input[str]]:
193
+ """
194
+ The job run timeout, in Go Time format (ex: `2h30m25s`)
195
+ """
196
+ return pulumi.get(self, "timeout")
197
+
198
+ @timeout.setter
199
+ def timeout(self, value: Optional[pulumi.Input[str]]):
200
+ pulumi.set(self, "timeout", value)
201
+
202
+
203
+ @pulumi.input_type
204
+ class _JobDefinitionState:
205
+ def __init__(__self__, *,
206
+ command: Optional[pulumi.Input[str]] = None,
207
+ cpu_limit: Optional[pulumi.Input[int]] = None,
208
+ cron: Optional[pulumi.Input['JobDefinitionCronArgs']] = None,
209
+ description: Optional[pulumi.Input[str]] = None,
210
+ env: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
211
+ image_uri: Optional[pulumi.Input[str]] = None,
212
+ memory_limit: Optional[pulumi.Input[int]] = None,
213
+ name: Optional[pulumi.Input[str]] = None,
214
+ project_id: Optional[pulumi.Input[str]] = None,
215
+ region: Optional[pulumi.Input[str]] = None,
216
+ timeout: Optional[pulumi.Input[str]] = None):
217
+ """
218
+ Input properties used for looking up and filtering JobDefinition resources.
219
+ :param pulumi.Input[str] command: The command that will be run in the container if specified.
220
+ :param pulumi.Input[int] cpu_limit: The amount of vCPU computing resources to allocate to each container running the job.
221
+ :param pulumi.Input['JobDefinitionCronArgs'] cron: The cron configuration
222
+ :param pulumi.Input[str] description: The description of the job
223
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] env: The environment variables of the container.
224
+ :param pulumi.Input[str] image_uri: The uri of the container image that will be used for the job run.
225
+ :param pulumi.Input[int] memory_limit: The memory computing resources in MB to allocate to each container running the job.
226
+ :param pulumi.Input[str] name: The name of the job.
227
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Job is associated with.
228
+ :param pulumi.Input[str] region: `region`) The region of the Job.
229
+ :param pulumi.Input[str] timeout: The job run timeout, in Go Time format (ex: `2h30m25s`)
230
+ """
231
+ if command is not None:
232
+ pulumi.set(__self__, "command", command)
233
+ if cpu_limit is not None:
234
+ pulumi.set(__self__, "cpu_limit", cpu_limit)
235
+ if cron is not None:
236
+ pulumi.set(__self__, "cron", cron)
237
+ if description is not None:
238
+ pulumi.set(__self__, "description", description)
239
+ if env is not None:
240
+ pulumi.set(__self__, "env", env)
241
+ if image_uri is not None:
242
+ pulumi.set(__self__, "image_uri", image_uri)
243
+ if memory_limit is not None:
244
+ pulumi.set(__self__, "memory_limit", memory_limit)
245
+ if name is not None:
246
+ pulumi.set(__self__, "name", name)
247
+ if project_id is not None:
248
+ pulumi.set(__self__, "project_id", project_id)
249
+ if region is not None:
250
+ pulumi.set(__self__, "region", region)
251
+ if timeout is not None:
252
+ pulumi.set(__self__, "timeout", timeout)
253
+
254
+ @property
255
+ @pulumi.getter
256
+ def command(self) -> Optional[pulumi.Input[str]]:
257
+ """
258
+ The command that will be run in the container if specified.
259
+ """
260
+ return pulumi.get(self, "command")
261
+
262
+ @command.setter
263
+ def command(self, value: Optional[pulumi.Input[str]]):
264
+ pulumi.set(self, "command", value)
265
+
266
+ @property
267
+ @pulumi.getter(name="cpuLimit")
268
+ def cpu_limit(self) -> Optional[pulumi.Input[int]]:
269
+ """
270
+ The amount of vCPU computing resources to allocate to each container running the job.
271
+ """
272
+ return pulumi.get(self, "cpu_limit")
273
+
274
+ @cpu_limit.setter
275
+ def cpu_limit(self, value: Optional[pulumi.Input[int]]):
276
+ pulumi.set(self, "cpu_limit", value)
277
+
278
+ @property
279
+ @pulumi.getter
280
+ def cron(self) -> Optional[pulumi.Input['JobDefinitionCronArgs']]:
281
+ """
282
+ The cron configuration
283
+ """
284
+ return pulumi.get(self, "cron")
285
+
286
+ @cron.setter
287
+ def cron(self, value: Optional[pulumi.Input['JobDefinitionCronArgs']]):
288
+ pulumi.set(self, "cron", value)
289
+
290
+ @property
291
+ @pulumi.getter
292
+ def description(self) -> Optional[pulumi.Input[str]]:
293
+ """
294
+ The description of the job
295
+ """
296
+ return pulumi.get(self, "description")
297
+
298
+ @description.setter
299
+ def description(self, value: Optional[pulumi.Input[str]]):
300
+ pulumi.set(self, "description", value)
301
+
302
+ @property
303
+ @pulumi.getter
304
+ def env(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
305
+ """
306
+ The environment variables of the container.
307
+ """
308
+ return pulumi.get(self, "env")
309
+
310
+ @env.setter
311
+ def env(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
312
+ pulumi.set(self, "env", value)
313
+
314
+ @property
315
+ @pulumi.getter(name="imageUri")
316
+ def image_uri(self) -> Optional[pulumi.Input[str]]:
317
+ """
318
+ The uri of the container image that will be used for the job run.
319
+ """
320
+ return pulumi.get(self, "image_uri")
321
+
322
+ @image_uri.setter
323
+ def image_uri(self, value: Optional[pulumi.Input[str]]):
324
+ pulumi.set(self, "image_uri", value)
325
+
326
+ @property
327
+ @pulumi.getter(name="memoryLimit")
328
+ def memory_limit(self) -> Optional[pulumi.Input[int]]:
329
+ """
330
+ The memory computing resources in MB to allocate to each container running the job.
331
+ """
332
+ return pulumi.get(self, "memory_limit")
333
+
334
+ @memory_limit.setter
335
+ def memory_limit(self, value: Optional[pulumi.Input[int]]):
336
+ pulumi.set(self, "memory_limit", value)
337
+
338
+ @property
339
+ @pulumi.getter
340
+ def name(self) -> Optional[pulumi.Input[str]]:
341
+ """
342
+ The name of the job.
343
+ """
344
+ return pulumi.get(self, "name")
345
+
346
+ @name.setter
347
+ def name(self, value: Optional[pulumi.Input[str]]):
348
+ pulumi.set(self, "name", value)
349
+
350
+ @property
351
+ @pulumi.getter(name="projectId")
352
+ def project_id(self) -> Optional[pulumi.Input[str]]:
353
+ """
354
+ `project_id`) The ID of the project the Job is associated with.
355
+ """
356
+ return pulumi.get(self, "project_id")
357
+
358
+ @project_id.setter
359
+ def project_id(self, value: Optional[pulumi.Input[str]]):
360
+ pulumi.set(self, "project_id", value)
361
+
362
+ @property
363
+ @pulumi.getter
364
+ def region(self) -> Optional[pulumi.Input[str]]:
365
+ """
366
+ `region`) The region of the Job.
367
+ """
368
+ return pulumi.get(self, "region")
369
+
370
+ @region.setter
371
+ def region(self, value: Optional[pulumi.Input[str]]):
372
+ pulumi.set(self, "region", value)
373
+
374
+ @property
375
+ @pulumi.getter
376
+ def timeout(self) -> Optional[pulumi.Input[str]]:
377
+ """
378
+ The job run timeout, in Go Time format (ex: `2h30m25s`)
379
+ """
380
+ return pulumi.get(self, "timeout")
381
+
382
+ @timeout.setter
383
+ def timeout(self, value: Optional[pulumi.Input[str]]):
384
+ pulumi.set(self, "timeout", value)
385
+
386
+
387
+ class JobDefinition(pulumi.CustomResource):
388
+ @overload
389
+ def __init__(__self__,
390
+ resource_name: str,
391
+ opts: Optional[pulumi.ResourceOptions] = None,
392
+ command: Optional[pulumi.Input[str]] = None,
393
+ cpu_limit: Optional[pulumi.Input[int]] = None,
394
+ cron: Optional[pulumi.Input[Union['JobDefinitionCronArgs', 'JobDefinitionCronArgsDict']]] = None,
395
+ description: Optional[pulumi.Input[str]] = None,
396
+ env: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
397
+ image_uri: Optional[pulumi.Input[str]] = None,
398
+ memory_limit: Optional[pulumi.Input[int]] = None,
399
+ name: Optional[pulumi.Input[str]] = None,
400
+ project_id: Optional[pulumi.Input[str]] = None,
401
+ region: Optional[pulumi.Input[str]] = None,
402
+ timeout: Optional[pulumi.Input[str]] = None,
403
+ __props__=None):
404
+ """
405
+ Creates and manages a Scaleway Serverless Job Definition. For more information, see [the documentation](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/jobs/v1alpha1).
406
+
407
+ ## Example Usage
408
+
409
+ ### Basic
410
+
411
+ ```python
412
+ import pulumi
413
+ import pulumiverse_scaleway as scaleway
414
+
415
+ main = scaleway.JobDefinition("main",
416
+ name="testjob",
417
+ cpu_limit=140,
418
+ memory_limit=256,
419
+ image_uri="docker.io/alpine:latest",
420
+ command="ls",
421
+ timeout="10m",
422
+ env={
423
+ "foo": "bar",
424
+ },
425
+ cron={
426
+ "schedule": "5 4 1 * *",
427
+ "timezone": "Europe/Paris",
428
+ })
429
+ ```
430
+
431
+ ## Import
432
+
433
+ Serverless Jobs can be imported using the `{region}/{id}`, e.g.
434
+
435
+ bash
436
+
437
+ ```sh
438
+ $ pulumi import scaleway:index/jobDefinition:JobDefinition job fr-par/11111111-1111-1111-1111-111111111111
439
+ ```
440
+
441
+ :param str resource_name: The name of the resource.
442
+ :param pulumi.ResourceOptions opts: Options for the resource.
443
+ :param pulumi.Input[str] command: The command that will be run in the container if specified.
444
+ :param pulumi.Input[int] cpu_limit: The amount of vCPU computing resources to allocate to each container running the job.
445
+ :param pulumi.Input[Union['JobDefinitionCronArgs', 'JobDefinitionCronArgsDict']] cron: The cron configuration
446
+ :param pulumi.Input[str] description: The description of the job
447
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] env: The environment variables of the container.
448
+ :param pulumi.Input[str] image_uri: The uri of the container image that will be used for the job run.
449
+ :param pulumi.Input[int] memory_limit: The memory computing resources in MB to allocate to each container running the job.
450
+ :param pulumi.Input[str] name: The name of the job.
451
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Job is associated with.
452
+ :param pulumi.Input[str] region: `region`) The region of the Job.
453
+ :param pulumi.Input[str] timeout: The job run timeout, in Go Time format (ex: `2h30m25s`)
454
+ """
455
+ ...
456
+ @overload
457
+ def __init__(__self__,
458
+ resource_name: str,
459
+ args: JobDefinitionArgs,
460
+ opts: Optional[pulumi.ResourceOptions] = None):
461
+ """
462
+ Creates and manages a Scaleway Serverless Job Definition. For more information, see [the documentation](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/jobs/v1alpha1).
463
+
464
+ ## Example Usage
465
+
466
+ ### Basic
467
+
468
+ ```python
469
+ import pulumi
470
+ import pulumiverse_scaleway as scaleway
471
+
472
+ main = scaleway.JobDefinition("main",
473
+ name="testjob",
474
+ cpu_limit=140,
475
+ memory_limit=256,
476
+ image_uri="docker.io/alpine:latest",
477
+ command="ls",
478
+ timeout="10m",
479
+ env={
480
+ "foo": "bar",
481
+ },
482
+ cron={
483
+ "schedule": "5 4 1 * *",
484
+ "timezone": "Europe/Paris",
485
+ })
486
+ ```
487
+
488
+ ## Import
489
+
490
+ Serverless Jobs can be imported using the `{region}/{id}`, e.g.
491
+
492
+ bash
493
+
494
+ ```sh
495
+ $ pulumi import scaleway:index/jobDefinition:JobDefinition job fr-par/11111111-1111-1111-1111-111111111111
496
+ ```
497
+
498
+ :param str resource_name: The name of the resource.
499
+ :param JobDefinitionArgs args: The arguments to use to populate this resource's properties.
500
+ :param pulumi.ResourceOptions opts: Options for the resource.
501
+ """
502
+ ...
503
+ def __init__(__self__, resource_name: str, *args, **kwargs):
504
+ resource_args, opts = _utilities.get_resource_args_opts(JobDefinitionArgs, pulumi.ResourceOptions, *args, **kwargs)
505
+ if resource_args is not None:
506
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
507
+ else:
508
+ __self__._internal_init(resource_name, *args, **kwargs)
509
+
510
+ def _internal_init(__self__,
511
+ resource_name: str,
512
+ opts: Optional[pulumi.ResourceOptions] = None,
513
+ command: Optional[pulumi.Input[str]] = None,
514
+ cpu_limit: Optional[pulumi.Input[int]] = None,
515
+ cron: Optional[pulumi.Input[Union['JobDefinitionCronArgs', 'JobDefinitionCronArgsDict']]] = None,
516
+ description: Optional[pulumi.Input[str]] = None,
517
+ env: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
518
+ image_uri: Optional[pulumi.Input[str]] = None,
519
+ memory_limit: Optional[pulumi.Input[int]] = None,
520
+ name: Optional[pulumi.Input[str]] = None,
521
+ project_id: Optional[pulumi.Input[str]] = None,
522
+ region: Optional[pulumi.Input[str]] = None,
523
+ timeout: Optional[pulumi.Input[str]] = None,
524
+ __props__=None):
525
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
526
+ if not isinstance(opts, pulumi.ResourceOptions):
527
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
528
+ if opts.id is None:
529
+ if __props__ is not None:
530
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
531
+ __props__ = JobDefinitionArgs.__new__(JobDefinitionArgs)
532
+
533
+ __props__.__dict__["command"] = command
534
+ if cpu_limit is None and not opts.urn:
535
+ raise TypeError("Missing required property 'cpu_limit'")
536
+ __props__.__dict__["cpu_limit"] = cpu_limit
537
+ __props__.__dict__["cron"] = cron
538
+ __props__.__dict__["description"] = description
539
+ __props__.__dict__["env"] = env
540
+ __props__.__dict__["image_uri"] = image_uri
541
+ if memory_limit is None and not opts.urn:
542
+ raise TypeError("Missing required property 'memory_limit'")
543
+ __props__.__dict__["memory_limit"] = memory_limit
544
+ __props__.__dict__["name"] = name
545
+ __props__.__dict__["project_id"] = project_id
546
+ __props__.__dict__["region"] = region
547
+ __props__.__dict__["timeout"] = timeout
548
+ super(JobDefinition, __self__).__init__(
549
+ 'scaleway:index/jobDefinition:JobDefinition',
550
+ resource_name,
551
+ __props__,
552
+ opts)
553
+
554
+ @staticmethod
555
+ def get(resource_name: str,
556
+ id: pulumi.Input[str],
557
+ opts: Optional[pulumi.ResourceOptions] = None,
558
+ command: Optional[pulumi.Input[str]] = None,
559
+ cpu_limit: Optional[pulumi.Input[int]] = None,
560
+ cron: Optional[pulumi.Input[Union['JobDefinitionCronArgs', 'JobDefinitionCronArgsDict']]] = None,
561
+ description: Optional[pulumi.Input[str]] = None,
562
+ env: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
563
+ image_uri: Optional[pulumi.Input[str]] = None,
564
+ memory_limit: Optional[pulumi.Input[int]] = None,
565
+ name: Optional[pulumi.Input[str]] = None,
566
+ project_id: Optional[pulumi.Input[str]] = None,
567
+ region: Optional[pulumi.Input[str]] = None,
568
+ timeout: Optional[pulumi.Input[str]] = None) -> 'JobDefinition':
569
+ """
570
+ Get an existing JobDefinition resource's state with the given name, id, and optional extra
571
+ properties used to qualify the lookup.
572
+
573
+ :param str resource_name: The unique name of the resulting resource.
574
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
575
+ :param pulumi.ResourceOptions opts: Options for the resource.
576
+ :param pulumi.Input[str] command: The command that will be run in the container if specified.
577
+ :param pulumi.Input[int] cpu_limit: The amount of vCPU computing resources to allocate to each container running the job.
578
+ :param pulumi.Input[Union['JobDefinitionCronArgs', 'JobDefinitionCronArgsDict']] cron: The cron configuration
579
+ :param pulumi.Input[str] description: The description of the job
580
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] env: The environment variables of the container.
581
+ :param pulumi.Input[str] image_uri: The uri of the container image that will be used for the job run.
582
+ :param pulumi.Input[int] memory_limit: The memory computing resources in MB to allocate to each container running the job.
583
+ :param pulumi.Input[str] name: The name of the job.
584
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the Job is associated with.
585
+ :param pulumi.Input[str] region: `region`) The region of the Job.
586
+ :param pulumi.Input[str] timeout: The job run timeout, in Go Time format (ex: `2h30m25s`)
587
+ """
588
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
589
+
590
+ __props__ = _JobDefinitionState.__new__(_JobDefinitionState)
591
+
592
+ __props__.__dict__["command"] = command
593
+ __props__.__dict__["cpu_limit"] = cpu_limit
594
+ __props__.__dict__["cron"] = cron
595
+ __props__.__dict__["description"] = description
596
+ __props__.__dict__["env"] = env
597
+ __props__.__dict__["image_uri"] = image_uri
598
+ __props__.__dict__["memory_limit"] = memory_limit
599
+ __props__.__dict__["name"] = name
600
+ __props__.__dict__["project_id"] = project_id
601
+ __props__.__dict__["region"] = region
602
+ __props__.__dict__["timeout"] = timeout
603
+ return JobDefinition(resource_name, opts=opts, __props__=__props__)
604
+
605
+ @property
606
+ @pulumi.getter
607
+ def command(self) -> pulumi.Output[Optional[str]]:
608
+ """
609
+ The command that will be run in the container if specified.
610
+ """
611
+ return pulumi.get(self, "command")
612
+
613
+ @property
614
+ @pulumi.getter(name="cpuLimit")
615
+ def cpu_limit(self) -> pulumi.Output[int]:
616
+ """
617
+ The amount of vCPU computing resources to allocate to each container running the job.
618
+ """
619
+ return pulumi.get(self, "cpu_limit")
620
+
621
+ @property
622
+ @pulumi.getter
623
+ def cron(self) -> pulumi.Output[Optional['outputs.JobDefinitionCron']]:
624
+ """
625
+ The cron configuration
626
+ """
627
+ return pulumi.get(self, "cron")
628
+
629
+ @property
630
+ @pulumi.getter
631
+ def description(self) -> pulumi.Output[Optional[str]]:
632
+ """
633
+ The description of the job
634
+ """
635
+ return pulumi.get(self, "description")
636
+
637
+ @property
638
+ @pulumi.getter
639
+ def env(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
640
+ """
641
+ The environment variables of the container.
642
+ """
643
+ return pulumi.get(self, "env")
644
+
645
+ @property
646
+ @pulumi.getter(name="imageUri")
647
+ def image_uri(self) -> pulumi.Output[Optional[str]]:
648
+ """
649
+ The uri of the container image that will be used for the job run.
650
+ """
651
+ return pulumi.get(self, "image_uri")
652
+
653
+ @property
654
+ @pulumi.getter(name="memoryLimit")
655
+ def memory_limit(self) -> pulumi.Output[int]:
656
+ """
657
+ The memory computing resources in MB to allocate to each container running the job.
658
+ """
659
+ return pulumi.get(self, "memory_limit")
660
+
661
+ @property
662
+ @pulumi.getter
663
+ def name(self) -> pulumi.Output[str]:
664
+ """
665
+ The name of the job.
666
+ """
667
+ return pulumi.get(self, "name")
668
+
669
+ @property
670
+ @pulumi.getter(name="projectId")
671
+ def project_id(self) -> pulumi.Output[str]:
672
+ """
673
+ `project_id`) The ID of the project the Job is associated with.
674
+ """
675
+ return pulumi.get(self, "project_id")
676
+
677
+ @property
678
+ @pulumi.getter
679
+ def region(self) -> pulumi.Output[str]:
680
+ """
681
+ `region`) The region of the Job.
682
+ """
683
+ return pulumi.get(self, "region")
684
+
685
+ @property
686
+ @pulumi.getter
687
+ def timeout(self) -> pulumi.Output[str]:
688
+ """
689
+ The job run timeout, in Go Time format (ex: `2h30m25s`)
690
+ """
691
+ return pulumi.get(self, "timeout")
692
+