pulumiverse-scaleway 1.27.0a1744869119__py3-none-any.whl → 1.39.0a1764841480__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.
Files changed (515) hide show
  1. pulumiverse_scaleway/__init__.py +109 -2
  2. pulumiverse_scaleway/_inputs.py +3936 -2603
  3. pulumiverse_scaleway/_utilities.py +1 -1
  4. pulumiverse_scaleway/account/__init__.py +4 -1
  5. pulumiverse_scaleway/account/get_availability_zones.py +12 -12
  6. pulumiverse_scaleway/account/get_project.py +28 -28
  7. pulumiverse_scaleway/account/get_projects.py +241 -0
  8. pulumiverse_scaleway/account/get_ssh_key.py +34 -34
  9. pulumiverse_scaleway/account/outputs.py +95 -0
  10. pulumiverse_scaleway/account/project.py +72 -71
  11. pulumiverse_scaleway/account/ssh_key.py +107 -106
  12. pulumiverse_scaleway/account_project.py +72 -71
  13. pulumiverse_scaleway/account_ssh_key.py +107 -106
  14. pulumiverse_scaleway/apple_silicon_server.py +334 -201
  15. pulumiverse_scaleway/applesilicon/__init__.py +2 -1
  16. pulumiverse_scaleway/applesilicon/_inputs.py +105 -51
  17. pulumiverse_scaleway/applesilicon/outputs.py +65 -33
  18. pulumiverse_scaleway/applesilicon/server.py +334 -201
  19. pulumiverse_scaleway/audittrail/__init__.py +10 -0
  20. pulumiverse_scaleway/audittrail/get_event.py +410 -0
  21. pulumiverse_scaleway/audittrail/outputs.py +234 -0
  22. pulumiverse_scaleway/autoscaling/__init__.py +13 -0
  23. pulumiverse_scaleway/autoscaling/_inputs.py +558 -0
  24. pulumiverse_scaleway/autoscaling/instance_group.py +807 -0
  25. pulumiverse_scaleway/autoscaling/instance_policy.py +634 -0
  26. pulumiverse_scaleway/autoscaling/instance_template.py +878 -0
  27. pulumiverse_scaleway/autoscaling/outputs.py +438 -0
  28. pulumiverse_scaleway/baremetal_server.py +622 -524
  29. pulumiverse_scaleway/billing/__init__.py +2 -1
  30. pulumiverse_scaleway/billing/get_consumptions.py +19 -15
  31. pulumiverse_scaleway/billing/get_invoices.py +25 -25
  32. pulumiverse_scaleway/billing/outputs.py +96 -96
  33. pulumiverse_scaleway/block/__init__.py +4 -1
  34. pulumiverse_scaleway/block/_inputs.py +125 -0
  35. pulumiverse_scaleway/block/get_snapshot.py +60 -37
  36. pulumiverse_scaleway/block/get_volume.py +38 -38
  37. pulumiverse_scaleway/block/outputs.py +139 -0
  38. pulumiverse_scaleway/block/snapshot.py +272 -98
  39. pulumiverse_scaleway/block/volume.py +145 -144
  40. pulumiverse_scaleway/block_snapshot.py +272 -98
  41. pulumiverse_scaleway/block_volume.py +145 -144
  42. pulumiverse_scaleway/cockpit.py +71 -49
  43. pulumiverse_scaleway/cockpit_alert_manager.py +66 -65
  44. pulumiverse_scaleway/cockpit_grafana_user.py +72 -113
  45. pulumiverse_scaleway/cockpit_source.py +142 -141
  46. pulumiverse_scaleway/cockpit_token.py +84 -83
  47. pulumiverse_scaleway/config/__init__.py +2 -1
  48. pulumiverse_scaleway/config/__init__.pyi +2 -2
  49. pulumiverse_scaleway/config/vars.py +11 -11
  50. pulumiverse_scaleway/container.py +653 -424
  51. pulumiverse_scaleway/container_cron.py +97 -96
  52. pulumiverse_scaleway/container_domain.py +63 -62
  53. pulumiverse_scaleway/container_namespace.py +251 -172
  54. pulumiverse_scaleway/container_token.py +97 -96
  55. pulumiverse_scaleway/container_trigger.py +77 -76
  56. pulumiverse_scaleway/containers/__init__.py +2 -1
  57. pulumiverse_scaleway/containers/_inputs.py +87 -87
  58. pulumiverse_scaleway/containers/container.py +653 -424
  59. pulumiverse_scaleway/containers/cron.py +97 -96
  60. pulumiverse_scaleway/containers/domain.py +63 -62
  61. pulumiverse_scaleway/containers/get_container.py +117 -73
  62. pulumiverse_scaleway/containers/get_namespace.py +56 -45
  63. pulumiverse_scaleway/containers/namespace.py +251 -172
  64. pulumiverse_scaleway/containers/outputs.py +84 -84
  65. pulumiverse_scaleway/containers/token.py +97 -96
  66. pulumiverse_scaleway/containers/trigger.py +77 -76
  67. pulumiverse_scaleway/database.py +81 -80
  68. pulumiverse_scaleway/database_acl.py +148 -39
  69. pulumiverse_scaleway/database_backup.py +124 -123
  70. pulumiverse_scaleway/database_instance.py +531 -436
  71. pulumiverse_scaleway/database_privilege.py +88 -87
  72. pulumiverse_scaleway/database_read_replica.py +60 -59
  73. pulumiverse_scaleway/database_user.py +171 -98
  74. pulumiverse_scaleway/databases/__init__.py +2 -1
  75. pulumiverse_scaleway/databases/_inputs.py +364 -216
  76. pulumiverse_scaleway/databases/acl.py +148 -39
  77. pulumiverse_scaleway/databases/database.py +81 -80
  78. pulumiverse_scaleway/databases/database_backup.py +124 -123
  79. pulumiverse_scaleway/databases/get_acl.py +17 -17
  80. pulumiverse_scaleway/databases/get_database.py +26 -26
  81. pulumiverse_scaleway/databases/get_database_backup.py +46 -46
  82. pulumiverse_scaleway/databases/get_instance.py +95 -73
  83. pulumiverse_scaleway/databases/get_privilege.py +30 -30
  84. pulumiverse_scaleway/databases/instance.py +531 -436
  85. pulumiverse_scaleway/databases/outputs.py +419 -232
  86. pulumiverse_scaleway/databases/privilege.py +88 -87
  87. pulumiverse_scaleway/databases/read_replica.py +60 -59
  88. pulumiverse_scaleway/databases/serverless_database.py +97 -96
  89. pulumiverse_scaleway/databases/snapshot.py +127 -126
  90. pulumiverse_scaleway/databases/user.py +171 -98
  91. pulumiverse_scaleway/datawarehouse/__init__.py +13 -0
  92. pulumiverse_scaleway/datawarehouse/_inputs.py +149 -0
  93. pulumiverse_scaleway/datawarehouse/database.py +338 -0
  94. pulumiverse_scaleway/datawarehouse/deployment.py +821 -0
  95. pulumiverse_scaleway/datawarehouse/outputs.py +113 -0
  96. pulumiverse_scaleway/datawarehouse/user.py +451 -0
  97. pulumiverse_scaleway/domain/__init__.py +2 -1
  98. pulumiverse_scaleway/domain/_inputs.py +661 -661
  99. pulumiverse_scaleway/domain/get_record.py +53 -64
  100. pulumiverse_scaleway/domain/get_zone.py +36 -30
  101. pulumiverse_scaleway/domain/outputs.py +501 -501
  102. pulumiverse_scaleway/domain/record.py +156 -202
  103. pulumiverse_scaleway/domain/registration.py +123 -122
  104. pulumiverse_scaleway/domain/zone.py +108 -107
  105. pulumiverse_scaleway/domain_record.py +156 -202
  106. pulumiverse_scaleway/domain_zone.py +108 -107
  107. pulumiverse_scaleway/edge_services_backend_stage.py +61 -60
  108. pulumiverse_scaleway/edge_services_cache_stage.py +283 -111
  109. pulumiverse_scaleway/edge_services_dns_stage.py +169 -140
  110. pulumiverse_scaleway/edge_services_head_stage.py +37 -36
  111. pulumiverse_scaleway/edge_services_pipeline.py +125 -82
  112. pulumiverse_scaleway/edge_services_plan.py +37 -36
  113. pulumiverse_scaleway/edge_services_route_stage.py +75 -74
  114. pulumiverse_scaleway/edge_services_tls_stage.py +219 -124
  115. pulumiverse_scaleway/edge_services_waf_stage.py +106 -105
  116. pulumiverse_scaleway/elasticmetal/__init__.py +3 -1
  117. pulumiverse_scaleway/elasticmetal/_inputs.py +203 -129
  118. pulumiverse_scaleway/elasticmetal/get_ip.py +70 -54
  119. pulumiverse_scaleway/elasticmetal/get_ips.py +31 -31
  120. pulumiverse_scaleway/elasticmetal/get_offer.py +43 -41
  121. pulumiverse_scaleway/elasticmetal/get_option.py +24 -24
  122. pulumiverse_scaleway/elasticmetal/get_os.py +28 -28
  123. pulumiverse_scaleway/elasticmetal/get_partition_schema.py +215 -0
  124. pulumiverse_scaleway/elasticmetal/get_server.py +101 -68
  125. pulumiverse_scaleway/elasticmetal/ip.py +170 -169
  126. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +107 -106
  127. pulumiverse_scaleway/elasticmetal/outputs.py +379 -287
  128. pulumiverse_scaleway/elasticmetal/server.py +622 -524
  129. pulumiverse_scaleway/file_filesystem.py +555 -0
  130. pulumiverse_scaleway/flexible_ip.py +170 -169
  131. pulumiverse_scaleway/flexible_ip_mac_address.py +107 -106
  132. pulumiverse_scaleway/function.py +457 -348
  133. pulumiverse_scaleway/function_cron.py +97 -96
  134. pulumiverse_scaleway/function_domain.py +63 -62
  135. pulumiverse_scaleway/function_namespace.py +234 -155
  136. pulumiverse_scaleway/function_token.py +97 -96
  137. pulumiverse_scaleway/function_trigger.py +77 -76
  138. pulumiverse_scaleway/functions/__init__.py +2 -1
  139. pulumiverse_scaleway/functions/_inputs.py +50 -50
  140. pulumiverse_scaleway/functions/cron.py +97 -96
  141. pulumiverse_scaleway/functions/domain.py +63 -62
  142. pulumiverse_scaleway/functions/function.py +457 -348
  143. pulumiverse_scaleway/functions/get_function.py +93 -71
  144. pulumiverse_scaleway/functions/get_namespace.py +54 -43
  145. pulumiverse_scaleway/functions/namespace.py +234 -155
  146. pulumiverse_scaleway/functions/outputs.py +34 -34
  147. pulumiverse_scaleway/functions/token.py +97 -96
  148. pulumiverse_scaleway/functions/trigger.py +77 -76
  149. pulumiverse_scaleway/get_account_project.py +28 -28
  150. pulumiverse_scaleway/get_account_ssh_key.py +34 -34
  151. pulumiverse_scaleway/get_availability_zones.py +12 -12
  152. pulumiverse_scaleway/get_baremetal_offer.py +43 -41
  153. pulumiverse_scaleway/get_baremetal_option.py +24 -24
  154. pulumiverse_scaleway/get_baremetal_os.py +28 -28
  155. pulumiverse_scaleway/get_baremetal_server.py +101 -68
  156. pulumiverse_scaleway/get_billing_consumptions.py +19 -15
  157. pulumiverse_scaleway/get_billing_invoices.py +25 -25
  158. pulumiverse_scaleway/get_block_snapshot.py +60 -37
  159. pulumiverse_scaleway/get_block_volume.py +38 -38
  160. pulumiverse_scaleway/get_cockpit.py +16 -16
  161. pulumiverse_scaleway/get_cockpit_source.py +88 -45
  162. pulumiverse_scaleway/get_config.py +24 -24
  163. pulumiverse_scaleway/get_container.py +117 -73
  164. pulumiverse_scaleway/get_container_namespace.py +56 -45
  165. pulumiverse_scaleway/get_database.py +26 -26
  166. pulumiverse_scaleway/get_database_acl.py +17 -17
  167. pulumiverse_scaleway/get_database_backup.py +46 -46
  168. pulumiverse_scaleway/get_database_instance.py +95 -73
  169. pulumiverse_scaleway/get_database_privilege.py +30 -30
  170. pulumiverse_scaleway/get_domain_record.py +53 -64
  171. pulumiverse_scaleway/get_domain_zone.py +36 -30
  172. pulumiverse_scaleway/get_flexible_ip.py +70 -54
  173. pulumiverse_scaleway/get_flexible_ips.py +31 -31
  174. pulumiverse_scaleway/get_function.py +93 -71
  175. pulumiverse_scaleway/get_function_namespace.py +54 -43
  176. pulumiverse_scaleway/get_iam_api_key.py +28 -28
  177. pulumiverse_scaleway/get_iam_application.py +32 -32
  178. pulumiverse_scaleway/get_iam_group.py +36 -36
  179. pulumiverse_scaleway/get_iam_ssh_key.py +34 -34
  180. pulumiverse_scaleway/get_iam_user.py +30 -30
  181. pulumiverse_scaleway/get_instance_image.py +58 -58
  182. pulumiverse_scaleway/get_instance_ip.py +42 -30
  183. pulumiverse_scaleway/get_instance_placement_group.py +38 -38
  184. pulumiverse_scaleway/get_instance_private_nic.py +53 -41
  185. pulumiverse_scaleway/get_instance_security_group.py +46 -46
  186. pulumiverse_scaleway/get_instance_server.py +108 -145
  187. pulumiverse_scaleway/get_instance_servers.py +31 -31
  188. pulumiverse_scaleway/get_instance_snapshot.py +41 -41
  189. pulumiverse_scaleway/get_instance_volume.py +42 -42
  190. pulumiverse_scaleway/get_iot_device.py +46 -46
  191. pulumiverse_scaleway/get_iot_hub.py +60 -60
  192. pulumiverse_scaleway/get_ipam_ip.py +65 -65
  193. pulumiverse_scaleway/get_ipam_ips.py +56 -56
  194. pulumiverse_scaleway/get_k8s_version.py +34 -23
  195. pulumiverse_scaleway/get_kubernetes_cluster.py +98 -65
  196. pulumiverse_scaleway/get_kubernetes_node_pool.py +86 -75
  197. pulumiverse_scaleway/get_lb_acls.py +29 -29
  198. pulumiverse_scaleway/get_lb_backend.py +75 -75
  199. pulumiverse_scaleway/get_lb_backends.py +29 -29
  200. pulumiverse_scaleway/get_lb_frontend.py +76 -43
  201. pulumiverse_scaleway/get_lb_frontends.py +29 -29
  202. pulumiverse_scaleway/get_lb_ips.py +37 -37
  203. pulumiverse_scaleway/get_lb_route.py +36 -25
  204. pulumiverse_scaleway/get_lb_routes.py +23 -23
  205. pulumiverse_scaleway/get_lbs.py +31 -31
  206. pulumiverse_scaleway/get_loadbalancer.py +78 -56
  207. pulumiverse_scaleway/get_loadbalancer_certificate.py +96 -36
  208. pulumiverse_scaleway/get_loadbalancer_ip.py +40 -40
  209. pulumiverse_scaleway/get_marketplace_image.py +28 -28
  210. pulumiverse_scaleway/get_mnq_sns.py +18 -18
  211. pulumiverse_scaleway/get_mnq_sqs.py +18 -18
  212. pulumiverse_scaleway/get_mongo_db_instance.py +110 -55
  213. pulumiverse_scaleway/get_object_bucket.py +35 -35
  214. pulumiverse_scaleway/get_object_bucket_policy.py +22 -22
  215. pulumiverse_scaleway/get_redis_cluster.py +65 -54
  216. pulumiverse_scaleway/get_registry_image.py +48 -48
  217. pulumiverse_scaleway/get_registry_image_tag.py +44 -44
  218. pulumiverse_scaleway/get_registry_namespace.py +36 -36
  219. pulumiverse_scaleway/get_secret.py +58 -58
  220. pulumiverse_scaleway/get_secret_version.py +46 -46
  221. pulumiverse_scaleway/get_tem_domain.py +103 -70
  222. pulumiverse_scaleway/get_vpc.py +58 -47
  223. pulumiverse_scaleway/get_vpc_gateway_network.py +55 -44
  224. pulumiverse_scaleway/get_vpc_private_network.py +58 -47
  225. pulumiverse_scaleway/get_vpc_public_gateway.py +56 -56
  226. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +44 -44
  227. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +44 -44
  228. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +24 -24
  229. pulumiverse_scaleway/get_vpc_public_pat_rule.py +32 -32
  230. pulumiverse_scaleway/get_vpc_routes.py +47 -47
  231. pulumiverse_scaleway/get_vpcs.py +31 -31
  232. pulumiverse_scaleway/get_web_host_offer.py +34 -34
  233. pulumiverse_scaleway/get_webhosting.py +58 -58
  234. pulumiverse_scaleway/hosting/__init__.py +2 -1
  235. pulumiverse_scaleway/hosting/_inputs.py +117 -75
  236. pulumiverse_scaleway/hosting/get_hosting.py +58 -58
  237. pulumiverse_scaleway/hosting/get_offer.py +34 -34
  238. pulumiverse_scaleway/hosting/hosting.py +213 -212
  239. pulumiverse_scaleway/hosting/outputs.py +276 -192
  240. pulumiverse_scaleway/iam/__init__.py +3 -1
  241. pulumiverse_scaleway/iam/_inputs.py +26 -26
  242. pulumiverse_scaleway/iam/api_key.py +142 -141
  243. pulumiverse_scaleway/iam/application.py +98 -97
  244. pulumiverse_scaleway/iam/get_api_key.py +28 -28
  245. pulumiverse_scaleway/iam/get_application.py +32 -32
  246. pulumiverse_scaleway/iam/get_group.py +36 -36
  247. pulumiverse_scaleway/iam/get_policy.py +293 -0
  248. pulumiverse_scaleway/iam/get_ssh_key.py +34 -34
  249. pulumiverse_scaleway/iam/get_user.py +30 -30
  250. pulumiverse_scaleway/iam/group.py +140 -139
  251. pulumiverse_scaleway/iam/group_membership.py +54 -53
  252. pulumiverse_scaleway/iam/outputs.py +70 -18
  253. pulumiverse_scaleway/iam/policy.py +169 -168
  254. pulumiverse_scaleway/iam/ssh_key.py +107 -106
  255. pulumiverse_scaleway/iam/user.py +598 -134
  256. pulumiverse_scaleway/iam_api_key.py +142 -141
  257. pulumiverse_scaleway/iam_application.py +98 -97
  258. pulumiverse_scaleway/iam_group.py +140 -139
  259. pulumiverse_scaleway/iam_group_membership.py +54 -53
  260. pulumiverse_scaleway/iam_policy.py +169 -168
  261. pulumiverse_scaleway/iam_ssh_key.py +107 -106
  262. pulumiverse_scaleway/iam_user.py +598 -134
  263. pulumiverse_scaleway/inference/__init__.py +4 -1
  264. pulumiverse_scaleway/inference/_inputs.py +232 -50
  265. pulumiverse_scaleway/inference/deployment.py +319 -220
  266. pulumiverse_scaleway/inference/get_model.py +299 -0
  267. pulumiverse_scaleway/inference/model.py +684 -0
  268. pulumiverse_scaleway/inference/outputs.py +250 -34
  269. pulumiverse_scaleway/inference_deployment.py +319 -220
  270. pulumiverse_scaleway/instance/__init__.py +3 -1
  271. pulumiverse_scaleway/instance/_inputs.py +650 -437
  272. pulumiverse_scaleway/instance/get_image.py +58 -58
  273. pulumiverse_scaleway/instance/get_ip.py +42 -30
  274. pulumiverse_scaleway/instance/get_placement_group.py +38 -38
  275. pulumiverse_scaleway/instance/get_private_nic.py +53 -41
  276. pulumiverse_scaleway/instance/get_security_group.py +46 -46
  277. pulumiverse_scaleway/instance/get_server.py +108 -145
  278. pulumiverse_scaleway/instance/get_server_type.py +271 -0
  279. pulumiverse_scaleway/instance/get_servers.py +31 -31
  280. pulumiverse_scaleway/instance/get_snapshot.py +41 -41
  281. pulumiverse_scaleway/instance/get_volume.py +42 -42
  282. pulumiverse_scaleway/instance/image.py +260 -205
  283. pulumiverse_scaleway/instance/ip.py +116 -115
  284. pulumiverse_scaleway/instance/ip_reverse_dns.py +54 -53
  285. pulumiverse_scaleway/instance/outputs.py +981 -548
  286. pulumiverse_scaleway/instance/placement_group.py +123 -122
  287. pulumiverse_scaleway/instance/private_nic.py +163 -113
  288. pulumiverse_scaleway/instance/security_group.py +188 -187
  289. pulumiverse_scaleway/instance/security_group_rules.py +42 -41
  290. pulumiverse_scaleway/instance/server.py +590 -562
  291. pulumiverse_scaleway/instance/snapshot.py +150 -157
  292. pulumiverse_scaleway/instance/user_data.py +75 -74
  293. pulumiverse_scaleway/instance/volume.py +174 -159
  294. pulumiverse_scaleway/instance_image.py +260 -205
  295. pulumiverse_scaleway/instance_ip.py +116 -115
  296. pulumiverse_scaleway/instance_ip_reverse_dns.py +54 -53
  297. pulumiverse_scaleway/instance_placement_group.py +123 -122
  298. pulumiverse_scaleway/instance_private_nic.py +163 -113
  299. pulumiverse_scaleway/instance_security_group.py +188 -187
  300. pulumiverse_scaleway/instance_security_group_rules.py +42 -41
  301. pulumiverse_scaleway/instance_server.py +590 -562
  302. pulumiverse_scaleway/instance_snapshot.py +150 -157
  303. pulumiverse_scaleway/instance_user_data.py +75 -74
  304. pulumiverse_scaleway/instance_volume.py +174 -159
  305. pulumiverse_scaleway/iot/__init__.py +2 -1
  306. pulumiverse_scaleway/iot/_inputs.py +119 -119
  307. pulumiverse_scaleway/iot/device.py +156 -193
  308. pulumiverse_scaleway/iot/get_device.py +46 -46
  309. pulumiverse_scaleway/iot/get_hub.py +60 -60
  310. pulumiverse_scaleway/iot/hub.py +259 -258
  311. pulumiverse_scaleway/iot/network.py +115 -114
  312. pulumiverse_scaleway/iot/outputs.py +107 -107
  313. pulumiverse_scaleway/iot/route.py +109 -108
  314. pulumiverse_scaleway/iot_device.py +156 -193
  315. pulumiverse_scaleway/iot_hub.py +259 -258
  316. pulumiverse_scaleway/iot_network.py +115 -114
  317. pulumiverse_scaleway/iot_route.py +109 -108
  318. pulumiverse_scaleway/ipam/__init__.py +2 -1
  319. pulumiverse_scaleway/ipam/_inputs.py +108 -108
  320. pulumiverse_scaleway/ipam/get_ip.py +65 -65
  321. pulumiverse_scaleway/ipam/get_ips.py +56 -56
  322. pulumiverse_scaleway/ipam/ip.py +160 -131
  323. pulumiverse_scaleway/ipam/ip_reverse_dns.py +141 -70
  324. pulumiverse_scaleway/ipam/outputs.py +122 -122
  325. pulumiverse_scaleway/ipam_ip.py +160 -131
  326. pulumiverse_scaleway/ipam_ip_reverse_dns.py +141 -70
  327. pulumiverse_scaleway/job/__init__.py +2 -1
  328. pulumiverse_scaleway/job/_inputs.py +127 -14
  329. pulumiverse_scaleway/job/definition.py +283 -175
  330. pulumiverse_scaleway/job/outputs.py +98 -10
  331. pulumiverse_scaleway/job_definition.py +283 -175
  332. pulumiverse_scaleway/key_manager_key.py +939 -0
  333. pulumiverse_scaleway/kubernetes/__init__.py +3 -1
  334. pulumiverse_scaleway/kubernetes/_inputs.py +388 -185
  335. pulumiverse_scaleway/kubernetes/acl.py +447 -0
  336. pulumiverse_scaleway/kubernetes/cluster.py +594 -307
  337. pulumiverse_scaleway/kubernetes/get_cluster.py +98 -65
  338. pulumiverse_scaleway/kubernetes/get_pool.py +86 -75
  339. pulumiverse_scaleway/kubernetes/get_version.py +34 -23
  340. pulumiverse_scaleway/kubernetes/outputs.py +444 -250
  341. pulumiverse_scaleway/kubernetes/pool.py +427 -365
  342. pulumiverse_scaleway/kubernetes_cluster.py +594 -307
  343. pulumiverse_scaleway/kubernetes_node_pool.py +427 -365
  344. pulumiverse_scaleway/loadbalancer.py +329 -246
  345. pulumiverse_scaleway/loadbalancer_acl.py +102 -101
  346. pulumiverse_scaleway/loadbalancer_backend.py +534 -487
  347. pulumiverse_scaleway/loadbalancer_certificate.py +97 -96
  348. pulumiverse_scaleway/loadbalancer_frontend.py +271 -167
  349. pulumiverse_scaleway/loadbalancer_ip.py +124 -123
  350. pulumiverse_scaleway/loadbalancer_route.py +244 -119
  351. pulumiverse_scaleway/loadbalancers/__init__.py +3 -1
  352. pulumiverse_scaleway/loadbalancers/_inputs.py +367 -273
  353. pulumiverse_scaleway/loadbalancers/acl.py +102 -101
  354. pulumiverse_scaleway/loadbalancers/backend.py +534 -487
  355. pulumiverse_scaleway/loadbalancers/certificate.py +97 -96
  356. pulumiverse_scaleway/loadbalancers/frontend.py +271 -167
  357. pulumiverse_scaleway/loadbalancers/get_acls.py +29 -29
  358. pulumiverse_scaleway/loadbalancers/get_backend.py +75 -75
  359. pulumiverse_scaleway/loadbalancers/get_backends.py +29 -29
  360. pulumiverse_scaleway/loadbalancers/get_certificate.py +96 -36
  361. pulumiverse_scaleway/loadbalancers/get_frontend.py +76 -43
  362. pulumiverse_scaleway/loadbalancers/get_frontends.py +29 -29
  363. pulumiverse_scaleway/loadbalancers/get_ip.py +40 -40
  364. pulumiverse_scaleway/loadbalancers/get_ips.py +37 -37
  365. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +78 -56
  366. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +31 -31
  367. pulumiverse_scaleway/loadbalancers/get_route.py +36 -25
  368. pulumiverse_scaleway/loadbalancers/get_routes.py +23 -23
  369. pulumiverse_scaleway/loadbalancers/ip.py +124 -123
  370. pulumiverse_scaleway/loadbalancers/load_balancer.py +329 -246
  371. pulumiverse_scaleway/loadbalancers/outputs.py +870 -716
  372. pulumiverse_scaleway/loadbalancers/private_network.py +505 -0
  373. pulumiverse_scaleway/loadbalancers/route.py +244 -119
  374. pulumiverse_scaleway/mnq/__init__.py +2 -1
  375. pulumiverse_scaleway/mnq/_inputs.py +90 -38
  376. pulumiverse_scaleway/mnq/get_sns.py +18 -18
  377. pulumiverse_scaleway/mnq/get_sqs.py +18 -18
  378. pulumiverse_scaleway/mnq/nats_account.py +63 -62
  379. pulumiverse_scaleway/mnq/nats_credentials.py +63 -62
  380. pulumiverse_scaleway/mnq/outputs.py +73 -26
  381. pulumiverse_scaleway/mnq/sns.py +46 -45
  382. pulumiverse_scaleway/mnq/sns_credentials.py +82 -81
  383. pulumiverse_scaleway/mnq/sns_topic.py +174 -173
  384. pulumiverse_scaleway/mnq/sns_topic_subscription.py +182 -181
  385. pulumiverse_scaleway/mnq/sqs.py +46 -45
  386. pulumiverse_scaleway/mnq/sqs_credentials.py +82 -81
  387. pulumiverse_scaleway/mnq/sqs_queue.py +392 -232
  388. pulumiverse_scaleway/mnq_nats_account.py +63 -62
  389. pulumiverse_scaleway/mnq_nats_credentials.py +63 -62
  390. pulumiverse_scaleway/mnq_sns.py +46 -45
  391. pulumiverse_scaleway/mnq_sns_credentials.py +82 -81
  392. pulumiverse_scaleway/mnq_sns_topic.py +174 -173
  393. pulumiverse_scaleway/mnq_sns_topic_subscription.py +182 -181
  394. pulumiverse_scaleway/mnq_sqs.py +46 -45
  395. pulumiverse_scaleway/mnq_sqs_credentials.py +82 -81
  396. pulumiverse_scaleway/mnq_sqs_queue.py +392 -232
  397. pulumiverse_scaleway/mongo_db_instance.py +569 -268
  398. pulumiverse_scaleway/mongo_db_snapshot.py +127 -126
  399. pulumiverse_scaleway/mongodb/__init__.py +3 -1
  400. pulumiverse_scaleway/mongodb/_inputs.py +178 -51
  401. pulumiverse_scaleway/mongodb/get_instance.py +110 -55
  402. pulumiverse_scaleway/mongodb/instance.py +569 -268
  403. pulumiverse_scaleway/mongodb/outputs.py +192 -68
  404. pulumiverse_scaleway/mongodb/snapshot.py +127 -126
  405. pulumiverse_scaleway/mongodb/user.py +507 -0
  406. pulumiverse_scaleway/network/__init__.py +2 -1
  407. pulumiverse_scaleway/network/_inputs.py +209 -155
  408. pulumiverse_scaleway/network/acl.py +100 -101
  409. pulumiverse_scaleway/network/gateway_network.py +228 -180
  410. pulumiverse_scaleway/network/get_gateway_network.py +55 -44
  411. pulumiverse_scaleway/network/get_private_network.py +58 -47
  412. pulumiverse_scaleway/network/get_public_gateway.py +56 -56
  413. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +44 -44
  414. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +44 -44
  415. pulumiverse_scaleway/network/get_public_gateway_ip.py +24 -24
  416. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +32 -32
  417. pulumiverse_scaleway/network/get_routes.py +47 -47
  418. pulumiverse_scaleway/network/get_vpc.py +58 -47
  419. pulumiverse_scaleway/network/get_vpcs.py +31 -31
  420. pulumiverse_scaleway/network/outputs.py +338 -270
  421. pulumiverse_scaleway/network/private_network.py +203 -155
  422. pulumiverse_scaleway/network/public_gateway.py +261 -260
  423. pulumiverse_scaleway/network/public_gateway_dhcp.py +285 -284
  424. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +107 -106
  425. pulumiverse_scaleway/network/public_gateway_ip.py +107 -106
  426. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +54 -53
  427. pulumiverse_scaleway/network/public_gateway_pat_rule.py +132 -131
  428. pulumiverse_scaleway/network/route.py +230 -141
  429. pulumiverse_scaleway/network/vpc.py +172 -124
  430. pulumiverse_scaleway/object/__init__.py +3 -1
  431. pulumiverse_scaleway/object/_inputs.py +202 -166
  432. pulumiverse_scaleway/object/bucket.py +162 -148
  433. pulumiverse_scaleway/object/bucket_acl.py +97 -94
  434. pulumiverse_scaleway/object/bucket_lock_configuration.py +57 -56
  435. pulumiverse_scaleway/object/bucket_policy.py +71 -134
  436. pulumiverse_scaleway/object/bucket_website_configuration.py +104 -85
  437. pulumiverse_scaleway/object/get.py +290 -0
  438. pulumiverse_scaleway/object/get_bucket.py +35 -35
  439. pulumiverse_scaleway/object/get_bucket_policy.py +22 -22
  440. pulumiverse_scaleway/object/item.py +301 -223
  441. pulumiverse_scaleway/object/outputs.py +210 -166
  442. pulumiverse_scaleway/object_bucket.py +162 -148
  443. pulumiverse_scaleway/object_bucket_acl.py +97 -94
  444. pulumiverse_scaleway/object_bucket_lock_configuration.py +57 -56
  445. pulumiverse_scaleway/object_bucket_policy.py +71 -134
  446. pulumiverse_scaleway/object_bucket_website_configuration.py +104 -85
  447. pulumiverse_scaleway/object_item.py +301 -223
  448. pulumiverse_scaleway/observability/__init__.py +4 -2
  449. pulumiverse_scaleway/observability/_inputs.py +106 -106
  450. pulumiverse_scaleway/observability/alert_manager.py +66 -65
  451. pulumiverse_scaleway/observability/cockpit.py +71 -49
  452. pulumiverse_scaleway/observability/get_grafana.py +103 -0
  453. pulumiverse_scaleway/observability/get_instance.py +16 -16
  454. pulumiverse_scaleway/observability/get_source.py +88 -45
  455. pulumiverse_scaleway/observability/get_sources.py +375 -0
  456. pulumiverse_scaleway/observability/grafana_user.py +72 -113
  457. pulumiverse_scaleway/observability/outputs.py +241 -101
  458. pulumiverse_scaleway/observability/source.py +142 -141
  459. pulumiverse_scaleway/observability/token.py +84 -83
  460. pulumiverse_scaleway/outputs.py +5235 -3665
  461. pulumiverse_scaleway/provider.py +107 -82
  462. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  463. pulumiverse_scaleway/rdb_snapshot.py +127 -126
  464. pulumiverse_scaleway/redis/__init__.py +2 -1
  465. pulumiverse_scaleway/redis/_inputs.py +163 -69
  466. pulumiverse_scaleway/redis/cluster.py +273 -225
  467. pulumiverse_scaleway/redis/get_cluster.py +65 -54
  468. pulumiverse_scaleway/redis/outputs.py +199 -87
  469. pulumiverse_scaleway/redis_cluster.py +273 -225
  470. pulumiverse_scaleway/registry/__init__.py +2 -1
  471. pulumiverse_scaleway/registry/get_image.py +48 -48
  472. pulumiverse_scaleway/registry/get_image_tag.py +44 -44
  473. pulumiverse_scaleway/registry/get_namespace.py +36 -36
  474. pulumiverse_scaleway/registry/namespace.py +106 -105
  475. pulumiverse_scaleway/registry_namespace.py +106 -105
  476. pulumiverse_scaleway/sdb_database.py +97 -96
  477. pulumiverse_scaleway/secret.py +188 -179
  478. pulumiverse_scaleway/secret_version.py +107 -106
  479. pulumiverse_scaleway/secrets/__init__.py +2 -1
  480. pulumiverse_scaleway/secrets/_inputs.py +63 -63
  481. pulumiverse_scaleway/secrets/get_secret.py +58 -58
  482. pulumiverse_scaleway/secrets/get_version.py +46 -46
  483. pulumiverse_scaleway/secrets/outputs.py +84 -84
  484. pulumiverse_scaleway/secrets/secret.py +188 -179
  485. pulumiverse_scaleway/secrets/version.py +107 -106
  486. pulumiverse_scaleway/tem/__init__.py +2 -1
  487. pulumiverse_scaleway/tem/_inputs.py +33 -33
  488. pulumiverse_scaleway/tem/blocked_list.py +105 -104
  489. pulumiverse_scaleway/tem/domain.py +384 -257
  490. pulumiverse_scaleway/tem/domain_validation.py +63 -62
  491. pulumiverse_scaleway/tem/get_domain.py +103 -70
  492. pulumiverse_scaleway/tem/get_offer_subscription.py +34 -34
  493. pulumiverse_scaleway/tem/outputs.py +44 -44
  494. pulumiverse_scaleway/tem/webhook.py +132 -131
  495. pulumiverse_scaleway/tem_domain.py +384 -257
  496. pulumiverse_scaleway/tem_domain_validation.py +63 -62
  497. pulumiverse_scaleway/tem_webhook.py +132 -131
  498. pulumiverse_scaleway/vpc.py +172 -124
  499. pulumiverse_scaleway/vpc_gateway_network.py +228 -180
  500. pulumiverse_scaleway/vpc_private_network.py +203 -155
  501. pulumiverse_scaleway/vpc_public_gateway.py +261 -260
  502. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +285 -284
  503. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +107 -106
  504. pulumiverse_scaleway/vpc_public_gateway_ip.py +107 -106
  505. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +54 -53
  506. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +132 -131
  507. pulumiverse_scaleway/vpc_route.py +230 -141
  508. pulumiverse_scaleway/webhosting.py +213 -212
  509. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/METADATA +2 -2
  510. pulumiverse_scaleway-1.39.0a1764841480.dist-info/RECORD +513 -0
  511. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/WHEEL +1 -1
  512. pulumiverse_scaleway/get_cockpit_plan.py +0 -129
  513. pulumiverse_scaleway/observability/get_plan.py +0 -125
  514. pulumiverse_scaleway-1.27.0a1744869119.dist-info/RECORD +0 -483
  515. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
7
  import sys
8
8
  import pulumi
@@ -19,36 +19,38 @@ __all__ = ['ObjectItemArgs', 'ObjectItem']
19
19
  @pulumi.input_type
20
20
  class ObjectItemArgs:
21
21
  def __init__(__self__, *,
22
- bucket: pulumi.Input[str],
23
- key: pulumi.Input[str],
24
- content: Optional[pulumi.Input[str]] = None,
25
- content_base64: Optional[pulumi.Input[str]] = None,
26
- file: Optional[pulumi.Input[str]] = None,
27
- hash: Optional[pulumi.Input[str]] = None,
28
- metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
29
- project_id: Optional[pulumi.Input[str]] = None,
30
- region: Optional[pulumi.Input[str]] = None,
31
- sse_customer_key: Optional[pulumi.Input[str]] = None,
32
- storage_class: Optional[pulumi.Input[str]] = None,
33
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
34
- visibility: Optional[pulumi.Input[str]] = None):
22
+ bucket: pulumi.Input[_builtins.str],
23
+ key: pulumi.Input[_builtins.str],
24
+ content: Optional[pulumi.Input[_builtins.str]] = None,
25
+ content_base64: Optional[pulumi.Input[_builtins.str]] = None,
26
+ content_type: Optional[pulumi.Input[_builtins.str]] = None,
27
+ file: Optional[pulumi.Input[_builtins.str]] = None,
28
+ hash: Optional[pulumi.Input[_builtins.str]] = None,
29
+ metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
30
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
31
+ region: Optional[pulumi.Input[_builtins.str]] = None,
32
+ sse_customer_key: Optional[pulumi.Input[_builtins.str]] = None,
33
+ storage_class: Optional[pulumi.Input[_builtins.str]] = None,
34
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
35
+ visibility: Optional[pulumi.Input[_builtins.str]] = None):
35
36
  """
36
37
  The set of arguments for constructing a ObjectItem resource.
37
- :param pulumi.Input[str] bucket: The bucket's name or regional ID.
38
- :param pulumi.Input[str] key: The path to the object.
39
- :param pulumi.Input[str] content: The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
40
- :param pulumi.Input[str] content_base64: The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
38
+ :param pulumi.Input[_builtins.str] bucket: The bucket's name or regional ID.
39
+ :param pulumi.Input[_builtins.str] key: The path to the object.
40
+ :param pulumi.Input[_builtins.str] content: The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
41
+ :param pulumi.Input[_builtins.str] content_base64: The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
41
42
 
42
43
  > **Note:** Only one of `file`, `content` or `content_base64` can be defined.
43
- :param pulumi.Input[str] file: The name of the file to upload, defaults to an empty file.
44
- :param pulumi.Input[str] hash: Hash of the file, used to trigger the upload on file change.
45
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Map of metadata used for the object (keys must be lowercase).
46
- :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
47
- :param pulumi.Input[str] region: The Scaleway region the bucket resides in.
48
- :param pulumi.Input[str] sse_customer_key: Customer's encryption keys to encrypt data (SSE-C)
49
- :param pulumi.Input[str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
50
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags.
51
- :param pulumi.Input[str] visibility: Visibility of the object, `public-read` or `private`.
44
+ :param pulumi.Input[_builtins.str] content_type: The standard MIME type of the object's content (e.g., 'application/json', 'text/plain'). This specifies how the object should be interpreted by clients. See RFC 9110: <https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type>
45
+ :param pulumi.Input[_builtins.str] file: The name of the file to upload, defaults to an empty file.
46
+ :param pulumi.Input[_builtins.str] hash: Hash of the file, used to trigger the upload on file change.
47
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] metadata: Map of metadata used for the object (keys must be lowercase).
48
+ :param pulumi.Input[_builtins.str] project_id: The project_id you want to attach the resource to
49
+ :param pulumi.Input[_builtins.str] region: The Scaleway region the bucket resides in.
50
+ :param pulumi.Input[_builtins.str] sse_customer_key: Customer's encryption keys to encrypt data (SSE-C)
51
+ :param pulumi.Input[_builtins.str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
52
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Map of tags.
53
+ :param pulumi.Input[_builtins.str] visibility: Visibility of the object, `public-read` or `private`.
52
54
  """
53
55
  pulumi.set(__self__, "bucket", bucket)
54
56
  pulumi.set(__self__, "key", key)
@@ -56,6 +58,8 @@ class ObjectItemArgs:
56
58
  pulumi.set(__self__, "content", content)
57
59
  if content_base64 is not None:
58
60
  pulumi.set(__self__, "content_base64", content_base64)
61
+ if content_type is not None:
62
+ pulumi.set(__self__, "content_type", content_type)
59
63
  if file is not None:
60
64
  pulumi.set(__self__, "file", file)
61
65
  if hash is not None:
@@ -75,45 +79,45 @@ class ObjectItemArgs:
75
79
  if visibility is not None:
76
80
  pulumi.set(__self__, "visibility", visibility)
77
81
 
78
- @property
82
+ @_builtins.property
79
83
  @pulumi.getter
80
- def bucket(self) -> pulumi.Input[str]:
84
+ def bucket(self) -> pulumi.Input[_builtins.str]:
81
85
  """
82
86
  The bucket's name or regional ID.
83
87
  """
84
88
  return pulumi.get(self, "bucket")
85
89
 
86
90
  @bucket.setter
87
- def bucket(self, value: pulumi.Input[str]):
91
+ def bucket(self, value: pulumi.Input[_builtins.str]):
88
92
  pulumi.set(self, "bucket", value)
89
93
 
90
- @property
94
+ @_builtins.property
91
95
  @pulumi.getter
92
- def key(self) -> pulumi.Input[str]:
96
+ def key(self) -> pulumi.Input[_builtins.str]:
93
97
  """
94
98
  The path to the object.
95
99
  """
96
100
  return pulumi.get(self, "key")
97
101
 
98
102
  @key.setter
99
- def key(self, value: pulumi.Input[str]):
103
+ def key(self, value: pulumi.Input[_builtins.str]):
100
104
  pulumi.set(self, "key", value)
101
105
 
102
- @property
106
+ @_builtins.property
103
107
  @pulumi.getter
104
- def content(self) -> Optional[pulumi.Input[str]]:
108
+ def content(self) -> Optional[pulumi.Input[_builtins.str]]:
105
109
  """
106
110
  The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
107
111
  """
108
112
  return pulumi.get(self, "content")
109
113
 
110
114
  @content.setter
111
- def content(self, value: Optional[pulumi.Input[str]]):
115
+ def content(self, value: Optional[pulumi.Input[_builtins.str]]):
112
116
  pulumi.set(self, "content", value)
113
117
 
114
- @property
118
+ @_builtins.property
115
119
  @pulumi.getter(name="contentBase64")
116
- def content_base64(self) -> Optional[pulumi.Input[str]]:
120
+ def content_base64(self) -> Optional[pulumi.Input[_builtins.str]]:
117
121
  """
118
122
  The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
119
123
 
@@ -122,151 +126,165 @@ class ObjectItemArgs:
122
126
  return pulumi.get(self, "content_base64")
123
127
 
124
128
  @content_base64.setter
125
- def content_base64(self, value: Optional[pulumi.Input[str]]):
129
+ def content_base64(self, value: Optional[pulumi.Input[_builtins.str]]):
126
130
  pulumi.set(self, "content_base64", value)
127
131
 
128
- @property
132
+ @_builtins.property
133
+ @pulumi.getter(name="contentType")
134
+ def content_type(self) -> Optional[pulumi.Input[_builtins.str]]:
135
+ """
136
+ The standard MIME type of the object's content (e.g., 'application/json', 'text/plain'). This specifies how the object should be interpreted by clients. See RFC 9110: <https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type>
137
+ """
138
+ return pulumi.get(self, "content_type")
139
+
140
+ @content_type.setter
141
+ def content_type(self, value: Optional[pulumi.Input[_builtins.str]]):
142
+ pulumi.set(self, "content_type", value)
143
+
144
+ @_builtins.property
129
145
  @pulumi.getter
130
- def file(self) -> Optional[pulumi.Input[str]]:
146
+ def file(self) -> Optional[pulumi.Input[_builtins.str]]:
131
147
  """
132
148
  The name of the file to upload, defaults to an empty file.
133
149
  """
134
150
  return pulumi.get(self, "file")
135
151
 
136
152
  @file.setter
137
- def file(self, value: Optional[pulumi.Input[str]]):
153
+ def file(self, value: Optional[pulumi.Input[_builtins.str]]):
138
154
  pulumi.set(self, "file", value)
139
155
 
140
- @property
156
+ @_builtins.property
141
157
  @pulumi.getter
142
- def hash(self) -> Optional[pulumi.Input[str]]:
158
+ def hash(self) -> Optional[pulumi.Input[_builtins.str]]:
143
159
  """
144
160
  Hash of the file, used to trigger the upload on file change.
145
161
  """
146
162
  return pulumi.get(self, "hash")
147
163
 
148
164
  @hash.setter
149
- def hash(self, value: Optional[pulumi.Input[str]]):
165
+ def hash(self, value: Optional[pulumi.Input[_builtins.str]]):
150
166
  pulumi.set(self, "hash", value)
151
167
 
152
- @property
168
+ @_builtins.property
153
169
  @pulumi.getter
154
- def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
170
+ def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
155
171
  """
156
172
  Map of metadata used for the object (keys must be lowercase).
157
173
  """
158
174
  return pulumi.get(self, "metadata")
159
175
 
160
176
  @metadata.setter
161
- def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
177
+ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
162
178
  pulumi.set(self, "metadata", value)
163
179
 
164
- @property
180
+ @_builtins.property
165
181
  @pulumi.getter(name="projectId")
166
- def project_id(self) -> Optional[pulumi.Input[str]]:
182
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
167
183
  """
168
184
  The project_id you want to attach the resource to
169
185
  """
170
186
  return pulumi.get(self, "project_id")
171
187
 
172
188
  @project_id.setter
173
- def project_id(self, value: Optional[pulumi.Input[str]]):
189
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
174
190
  pulumi.set(self, "project_id", value)
175
191
 
176
- @property
192
+ @_builtins.property
177
193
  @pulumi.getter
178
- def region(self) -> Optional[pulumi.Input[str]]:
194
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
179
195
  """
180
196
  The Scaleway region the bucket resides in.
181
197
  """
182
198
  return pulumi.get(self, "region")
183
199
 
184
200
  @region.setter
185
- def region(self, value: Optional[pulumi.Input[str]]):
201
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
186
202
  pulumi.set(self, "region", value)
187
203
 
188
- @property
204
+ @_builtins.property
189
205
  @pulumi.getter(name="sseCustomerKey")
190
- def sse_customer_key(self) -> Optional[pulumi.Input[str]]:
206
+ def sse_customer_key(self) -> Optional[pulumi.Input[_builtins.str]]:
191
207
  """
192
208
  Customer's encryption keys to encrypt data (SSE-C)
193
209
  """
194
210
  return pulumi.get(self, "sse_customer_key")
195
211
 
196
212
  @sse_customer_key.setter
197
- def sse_customer_key(self, value: Optional[pulumi.Input[str]]):
213
+ def sse_customer_key(self, value: Optional[pulumi.Input[_builtins.str]]):
198
214
  pulumi.set(self, "sse_customer_key", value)
199
215
 
200
- @property
216
+ @_builtins.property
201
217
  @pulumi.getter(name="storageClass")
202
- def storage_class(self) -> Optional[pulumi.Input[str]]:
218
+ def storage_class(self) -> Optional[pulumi.Input[_builtins.str]]:
203
219
  """
204
220
  Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
205
221
  """
206
222
  return pulumi.get(self, "storage_class")
207
223
 
208
224
  @storage_class.setter
209
- def storage_class(self, value: Optional[pulumi.Input[str]]):
225
+ def storage_class(self, value: Optional[pulumi.Input[_builtins.str]]):
210
226
  pulumi.set(self, "storage_class", value)
211
227
 
212
- @property
228
+ @_builtins.property
213
229
  @pulumi.getter
214
- def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
230
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
215
231
  """
216
232
  Map of tags.
217
233
  """
218
234
  return pulumi.get(self, "tags")
219
235
 
220
236
  @tags.setter
221
- def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
237
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
222
238
  pulumi.set(self, "tags", value)
223
239
 
224
- @property
240
+ @_builtins.property
225
241
  @pulumi.getter
226
- def visibility(self) -> Optional[pulumi.Input[str]]:
242
+ def visibility(self) -> Optional[pulumi.Input[_builtins.str]]:
227
243
  """
228
244
  Visibility of the object, `public-read` or `private`.
229
245
  """
230
246
  return pulumi.get(self, "visibility")
231
247
 
232
248
  @visibility.setter
233
- def visibility(self, value: Optional[pulumi.Input[str]]):
249
+ def visibility(self, value: Optional[pulumi.Input[_builtins.str]]):
234
250
  pulumi.set(self, "visibility", value)
235
251
 
236
252
 
237
253
  @pulumi.input_type
238
254
  class _ObjectItemState:
239
255
  def __init__(__self__, *,
240
- bucket: Optional[pulumi.Input[str]] = None,
241
- content: Optional[pulumi.Input[str]] = None,
242
- content_base64: Optional[pulumi.Input[str]] = None,
243
- file: Optional[pulumi.Input[str]] = None,
244
- hash: Optional[pulumi.Input[str]] = None,
245
- key: Optional[pulumi.Input[str]] = None,
246
- metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
247
- project_id: Optional[pulumi.Input[str]] = None,
248
- region: Optional[pulumi.Input[str]] = None,
249
- sse_customer_key: Optional[pulumi.Input[str]] = None,
250
- storage_class: Optional[pulumi.Input[str]] = None,
251
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
252
- visibility: Optional[pulumi.Input[str]] = None):
256
+ bucket: Optional[pulumi.Input[_builtins.str]] = None,
257
+ content: Optional[pulumi.Input[_builtins.str]] = None,
258
+ content_base64: Optional[pulumi.Input[_builtins.str]] = None,
259
+ content_type: Optional[pulumi.Input[_builtins.str]] = None,
260
+ file: Optional[pulumi.Input[_builtins.str]] = None,
261
+ hash: Optional[pulumi.Input[_builtins.str]] = None,
262
+ key: Optional[pulumi.Input[_builtins.str]] = None,
263
+ metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
264
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
265
+ region: Optional[pulumi.Input[_builtins.str]] = None,
266
+ sse_customer_key: Optional[pulumi.Input[_builtins.str]] = None,
267
+ storage_class: Optional[pulumi.Input[_builtins.str]] = None,
268
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
269
+ visibility: Optional[pulumi.Input[_builtins.str]] = None):
253
270
  """
254
271
  Input properties used for looking up and filtering ObjectItem resources.
255
- :param pulumi.Input[str] bucket: The bucket's name or regional ID.
256
- :param pulumi.Input[str] content: The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
257
- :param pulumi.Input[str] content_base64: The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
272
+ :param pulumi.Input[_builtins.str] bucket: The bucket's name or regional ID.
273
+ :param pulumi.Input[_builtins.str] content: The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
274
+ :param pulumi.Input[_builtins.str] content_base64: The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
258
275
 
259
276
  > **Note:** Only one of `file`, `content` or `content_base64` can be defined.
260
- :param pulumi.Input[str] file: The name of the file to upload, defaults to an empty file.
261
- :param pulumi.Input[str] hash: Hash of the file, used to trigger the upload on file change.
262
- :param pulumi.Input[str] key: The path to the object.
263
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Map of metadata used for the object (keys must be lowercase).
264
- :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
265
- :param pulumi.Input[str] region: The Scaleway region the bucket resides in.
266
- :param pulumi.Input[str] sse_customer_key: Customer's encryption keys to encrypt data (SSE-C)
267
- :param pulumi.Input[str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
268
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags.
269
- :param pulumi.Input[str] visibility: Visibility of the object, `public-read` or `private`.
277
+ :param pulumi.Input[_builtins.str] content_type: The standard MIME type of the object's content (e.g., 'application/json', 'text/plain'). This specifies how the object should be interpreted by clients. See RFC 9110: <https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type>
278
+ :param pulumi.Input[_builtins.str] file: The name of the file to upload, defaults to an empty file.
279
+ :param pulumi.Input[_builtins.str] hash: Hash of the file, used to trigger the upload on file change.
280
+ :param pulumi.Input[_builtins.str] key: The path to the object.
281
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] metadata: Map of metadata used for the object (keys must be lowercase).
282
+ :param pulumi.Input[_builtins.str] project_id: The project_id you want to attach the resource to
283
+ :param pulumi.Input[_builtins.str] region: The Scaleway region the bucket resides in.
284
+ :param pulumi.Input[_builtins.str] sse_customer_key: Customer's encryption keys to encrypt data (SSE-C)
285
+ :param pulumi.Input[_builtins.str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
286
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Map of tags.
287
+ :param pulumi.Input[_builtins.str] visibility: Visibility of the object, `public-read` or `private`.
270
288
  """
271
289
  if bucket is not None:
272
290
  pulumi.set(__self__, "bucket", bucket)
@@ -274,6 +292,8 @@ class _ObjectItemState:
274
292
  pulumi.set(__self__, "content", content)
275
293
  if content_base64 is not None:
276
294
  pulumi.set(__self__, "content_base64", content_base64)
295
+ if content_type is not None:
296
+ pulumi.set(__self__, "content_type", content_type)
277
297
  if file is not None:
278
298
  pulumi.set(__self__, "file", file)
279
299
  if hash is not None:
@@ -295,33 +315,33 @@ class _ObjectItemState:
295
315
  if visibility is not None:
296
316
  pulumi.set(__self__, "visibility", visibility)
297
317
 
298
- @property
318
+ @_builtins.property
299
319
  @pulumi.getter
300
- def bucket(self) -> Optional[pulumi.Input[str]]:
320
+ def bucket(self) -> Optional[pulumi.Input[_builtins.str]]:
301
321
  """
302
322
  The bucket's name or regional ID.
303
323
  """
304
324
  return pulumi.get(self, "bucket")
305
325
 
306
326
  @bucket.setter
307
- def bucket(self, value: Optional[pulumi.Input[str]]):
327
+ def bucket(self, value: Optional[pulumi.Input[_builtins.str]]):
308
328
  pulumi.set(self, "bucket", value)
309
329
 
310
- @property
330
+ @_builtins.property
311
331
  @pulumi.getter
312
- def content(self) -> Optional[pulumi.Input[str]]:
332
+ def content(self) -> Optional[pulumi.Input[_builtins.str]]:
313
333
  """
314
334
  The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
315
335
  """
316
336
  return pulumi.get(self, "content")
317
337
 
318
338
  @content.setter
319
- def content(self, value: Optional[pulumi.Input[str]]):
339
+ def content(self, value: Optional[pulumi.Input[_builtins.str]]):
320
340
  pulumi.set(self, "content", value)
321
341
 
322
- @property
342
+ @_builtins.property
323
343
  @pulumi.getter(name="contentBase64")
324
- def content_base64(self) -> Optional[pulumi.Input[str]]:
344
+ def content_base64(self) -> Optional[pulumi.Input[_builtins.str]]:
325
345
  """
326
346
  The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
327
347
 
@@ -330,133 +350,146 @@ class _ObjectItemState:
330
350
  return pulumi.get(self, "content_base64")
331
351
 
332
352
  @content_base64.setter
333
- def content_base64(self, value: Optional[pulumi.Input[str]]):
353
+ def content_base64(self, value: Optional[pulumi.Input[_builtins.str]]):
334
354
  pulumi.set(self, "content_base64", value)
335
355
 
336
- @property
356
+ @_builtins.property
357
+ @pulumi.getter(name="contentType")
358
+ def content_type(self) -> Optional[pulumi.Input[_builtins.str]]:
359
+ """
360
+ The standard MIME type of the object's content (e.g., 'application/json', 'text/plain'). This specifies how the object should be interpreted by clients. See RFC 9110: <https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type>
361
+ """
362
+ return pulumi.get(self, "content_type")
363
+
364
+ @content_type.setter
365
+ def content_type(self, value: Optional[pulumi.Input[_builtins.str]]):
366
+ pulumi.set(self, "content_type", value)
367
+
368
+ @_builtins.property
337
369
  @pulumi.getter
338
- def file(self) -> Optional[pulumi.Input[str]]:
370
+ def file(self) -> Optional[pulumi.Input[_builtins.str]]:
339
371
  """
340
372
  The name of the file to upload, defaults to an empty file.
341
373
  """
342
374
  return pulumi.get(self, "file")
343
375
 
344
376
  @file.setter
345
- def file(self, value: Optional[pulumi.Input[str]]):
377
+ def file(self, value: Optional[pulumi.Input[_builtins.str]]):
346
378
  pulumi.set(self, "file", value)
347
379
 
348
- @property
380
+ @_builtins.property
349
381
  @pulumi.getter
350
- def hash(self) -> Optional[pulumi.Input[str]]:
382
+ def hash(self) -> Optional[pulumi.Input[_builtins.str]]:
351
383
  """
352
384
  Hash of the file, used to trigger the upload on file change.
353
385
  """
354
386
  return pulumi.get(self, "hash")
355
387
 
356
388
  @hash.setter
357
- def hash(self, value: Optional[pulumi.Input[str]]):
389
+ def hash(self, value: Optional[pulumi.Input[_builtins.str]]):
358
390
  pulumi.set(self, "hash", value)
359
391
 
360
- @property
392
+ @_builtins.property
361
393
  @pulumi.getter
362
- def key(self) -> Optional[pulumi.Input[str]]:
394
+ def key(self) -> Optional[pulumi.Input[_builtins.str]]:
363
395
  """
364
396
  The path to the object.
365
397
  """
366
398
  return pulumi.get(self, "key")
367
399
 
368
400
  @key.setter
369
- def key(self, value: Optional[pulumi.Input[str]]):
401
+ def key(self, value: Optional[pulumi.Input[_builtins.str]]):
370
402
  pulumi.set(self, "key", value)
371
403
 
372
- @property
404
+ @_builtins.property
373
405
  @pulumi.getter
374
- def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
406
+ def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
375
407
  """
376
408
  Map of metadata used for the object (keys must be lowercase).
377
409
  """
378
410
  return pulumi.get(self, "metadata")
379
411
 
380
412
  @metadata.setter
381
- def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
413
+ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
382
414
  pulumi.set(self, "metadata", value)
383
415
 
384
- @property
416
+ @_builtins.property
385
417
  @pulumi.getter(name="projectId")
386
- def project_id(self) -> Optional[pulumi.Input[str]]:
418
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
387
419
  """
388
420
  The project_id you want to attach the resource to
389
421
  """
390
422
  return pulumi.get(self, "project_id")
391
423
 
392
424
  @project_id.setter
393
- def project_id(self, value: Optional[pulumi.Input[str]]):
425
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
394
426
  pulumi.set(self, "project_id", value)
395
427
 
396
- @property
428
+ @_builtins.property
397
429
  @pulumi.getter
398
- def region(self) -> Optional[pulumi.Input[str]]:
430
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
399
431
  """
400
432
  The Scaleway region the bucket resides in.
401
433
  """
402
434
  return pulumi.get(self, "region")
403
435
 
404
436
  @region.setter
405
- def region(self, value: Optional[pulumi.Input[str]]):
437
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
406
438
  pulumi.set(self, "region", value)
407
439
 
408
- @property
440
+ @_builtins.property
409
441
  @pulumi.getter(name="sseCustomerKey")
410
- def sse_customer_key(self) -> Optional[pulumi.Input[str]]:
442
+ def sse_customer_key(self) -> Optional[pulumi.Input[_builtins.str]]:
411
443
  """
412
444
  Customer's encryption keys to encrypt data (SSE-C)
413
445
  """
414
446
  return pulumi.get(self, "sse_customer_key")
415
447
 
416
448
  @sse_customer_key.setter
417
- def sse_customer_key(self, value: Optional[pulumi.Input[str]]):
449
+ def sse_customer_key(self, value: Optional[pulumi.Input[_builtins.str]]):
418
450
  pulumi.set(self, "sse_customer_key", value)
419
451
 
420
- @property
452
+ @_builtins.property
421
453
  @pulumi.getter(name="storageClass")
422
- def storage_class(self) -> Optional[pulumi.Input[str]]:
454
+ def storage_class(self) -> Optional[pulumi.Input[_builtins.str]]:
423
455
  """
424
456
  Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
425
457
  """
426
458
  return pulumi.get(self, "storage_class")
427
459
 
428
460
  @storage_class.setter
429
- def storage_class(self, value: Optional[pulumi.Input[str]]):
461
+ def storage_class(self, value: Optional[pulumi.Input[_builtins.str]]):
430
462
  pulumi.set(self, "storage_class", value)
431
463
 
432
- @property
464
+ @_builtins.property
433
465
  @pulumi.getter
434
- def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
466
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
435
467
  """
436
468
  Map of tags.
437
469
  """
438
470
  return pulumi.get(self, "tags")
439
471
 
440
472
  @tags.setter
441
- def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
473
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
442
474
  pulumi.set(self, "tags", value)
443
475
 
444
- @property
476
+ @_builtins.property
445
477
  @pulumi.getter
446
- def visibility(self) -> Optional[pulumi.Input[str]]:
478
+ def visibility(self) -> Optional[pulumi.Input[_builtins.str]]:
447
479
  """
448
480
  Visibility of the object, `public-read` or `private`.
449
481
  """
450
482
  return pulumi.get(self, "visibility")
451
483
 
452
484
  @visibility.setter
453
- def visibility(self, value: Optional[pulumi.Input[str]]):
485
+ def visibility(self, value: Optional[pulumi.Input[_builtins.str]]):
454
486
  pulumi.set(self, "visibility", value)
455
487
 
456
488
 
457
489
  warnings.warn("""scaleway.index/objectitem.ObjectItem has been deprecated in favor of scaleway.object/item.Item""", DeprecationWarning)
458
490
 
459
491
 
492
+ @pulumi.type_token("scaleway:index/objectItem:ObjectItem")
460
493
  class ObjectItem(pulumi.CustomResource):
461
494
  warnings.warn("""scaleway.index/objectitem.ObjectItem has been deprecated in favor of scaleway.object/item.Item""", DeprecationWarning)
462
495
 
@@ -464,25 +497,41 @@ class ObjectItem(pulumi.CustomResource):
464
497
  def __init__(__self__,
465
498
  resource_name: str,
466
499
  opts: Optional[pulumi.ResourceOptions] = None,
467
- bucket: Optional[pulumi.Input[str]] = None,
468
- content: Optional[pulumi.Input[str]] = None,
469
- content_base64: Optional[pulumi.Input[str]] = None,
470
- file: Optional[pulumi.Input[str]] = None,
471
- hash: Optional[pulumi.Input[str]] = None,
472
- key: Optional[pulumi.Input[str]] = None,
473
- metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
474
- project_id: Optional[pulumi.Input[str]] = None,
475
- region: Optional[pulumi.Input[str]] = None,
476
- sse_customer_key: Optional[pulumi.Input[str]] = None,
477
- storage_class: Optional[pulumi.Input[str]] = None,
478
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
479
- visibility: Optional[pulumi.Input[str]] = None,
500
+ bucket: Optional[pulumi.Input[_builtins.str]] = None,
501
+ content: Optional[pulumi.Input[_builtins.str]] = None,
502
+ content_base64: Optional[pulumi.Input[_builtins.str]] = None,
503
+ content_type: Optional[pulumi.Input[_builtins.str]] = None,
504
+ file: Optional[pulumi.Input[_builtins.str]] = None,
505
+ hash: Optional[pulumi.Input[_builtins.str]] = None,
506
+ key: Optional[pulumi.Input[_builtins.str]] = None,
507
+ metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
508
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
509
+ region: Optional[pulumi.Input[_builtins.str]] = None,
510
+ sse_customer_key: Optional[pulumi.Input[_builtins.str]] = None,
511
+ storage_class: Optional[pulumi.Input[_builtins.str]] = None,
512
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
513
+ visibility: Optional[pulumi.Input[_builtins.str]] = None,
480
514
  __props__=None):
481
515
  """
482
516
  The `object.Item` resource allows you to create and manage objects for [Scaleway Object storage](https://www.scaleway.com/en/docs/object-storage/).
483
517
 
484
518
  Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/object-storage/how-to/upload-files-into-a-bucket/) for more information on Object Storage objects.
485
519
 
520
+ ## Example Usage
521
+
522
+ ```python
523
+ import pulumi
524
+ import pulumi_std as std
525
+ import pulumiverse_scaleway as scaleway
526
+
527
+ some_bucket = scaleway.object.Bucket("some_bucket", name="some-unique-name")
528
+ some_file = scaleway.object.Item("some_file",
529
+ bucket=some_bucket.id,
530
+ key="object_path",
531
+ file="myfile",
532
+ hash=std.index.filemd5(input="myfile")["result"])
533
+ ```
534
+
486
535
  ## Import
487
536
 
488
537
  Objects can be imported using the `{region}/{bucketName}/{objectKey}` identifier, as shown below:
@@ -505,21 +554,22 @@ class ObjectItem(pulumi.CustomResource):
505
554
 
506
555
  :param str resource_name: The name of the resource.
507
556
  :param pulumi.ResourceOptions opts: Options for the resource.
508
- :param pulumi.Input[str] bucket: The bucket's name or regional ID.
509
- :param pulumi.Input[str] content: The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
510
- :param pulumi.Input[str] content_base64: The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
557
+ :param pulumi.Input[_builtins.str] bucket: The bucket's name or regional ID.
558
+ :param pulumi.Input[_builtins.str] content: The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
559
+ :param pulumi.Input[_builtins.str] content_base64: The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
511
560
 
512
561
  > **Note:** Only one of `file`, `content` or `content_base64` can be defined.
513
- :param pulumi.Input[str] file: The name of the file to upload, defaults to an empty file.
514
- :param pulumi.Input[str] hash: Hash of the file, used to trigger the upload on file change.
515
- :param pulumi.Input[str] key: The path to the object.
516
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Map of metadata used for the object (keys must be lowercase).
517
- :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
518
- :param pulumi.Input[str] region: The Scaleway region the bucket resides in.
519
- :param pulumi.Input[str] sse_customer_key: Customer's encryption keys to encrypt data (SSE-C)
520
- :param pulumi.Input[str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
521
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags.
522
- :param pulumi.Input[str] visibility: Visibility of the object, `public-read` or `private`.
562
+ :param pulumi.Input[_builtins.str] content_type: The standard MIME type of the object's content (e.g., 'application/json', 'text/plain'). This specifies how the object should be interpreted by clients. See RFC 9110: <https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type>
563
+ :param pulumi.Input[_builtins.str] file: The name of the file to upload, defaults to an empty file.
564
+ :param pulumi.Input[_builtins.str] hash: Hash of the file, used to trigger the upload on file change.
565
+ :param pulumi.Input[_builtins.str] key: The path to the object.
566
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] metadata: Map of metadata used for the object (keys must be lowercase).
567
+ :param pulumi.Input[_builtins.str] project_id: The project_id you want to attach the resource to
568
+ :param pulumi.Input[_builtins.str] region: The Scaleway region the bucket resides in.
569
+ :param pulumi.Input[_builtins.str] sse_customer_key: Customer's encryption keys to encrypt data (SSE-C)
570
+ :param pulumi.Input[_builtins.str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
571
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Map of tags.
572
+ :param pulumi.Input[_builtins.str] visibility: Visibility of the object, `public-read` or `private`.
523
573
  """
524
574
  ...
525
575
  @overload
@@ -532,6 +582,21 @@ class ObjectItem(pulumi.CustomResource):
532
582
 
533
583
  Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/object-storage/how-to/upload-files-into-a-bucket/) for more information on Object Storage objects.
534
584
 
585
+ ## Example Usage
586
+
587
+ ```python
588
+ import pulumi
589
+ import pulumi_std as std
590
+ import pulumiverse_scaleway as scaleway
591
+
592
+ some_bucket = scaleway.object.Bucket("some_bucket", name="some-unique-name")
593
+ some_file = scaleway.object.Item("some_file",
594
+ bucket=some_bucket.id,
595
+ key="object_path",
596
+ file="myfile",
597
+ hash=std.index.filemd5(input="myfile")["result"])
598
+ ```
599
+
535
600
  ## Import
536
601
 
537
602
  Objects can be imported using the `{region}/{bucketName}/{objectKey}` identifier, as shown below:
@@ -567,19 +632,20 @@ class ObjectItem(pulumi.CustomResource):
567
632
  def _internal_init(__self__,
568
633
  resource_name: str,
569
634
  opts: Optional[pulumi.ResourceOptions] = None,
570
- bucket: Optional[pulumi.Input[str]] = None,
571
- content: Optional[pulumi.Input[str]] = None,
572
- content_base64: Optional[pulumi.Input[str]] = None,
573
- file: Optional[pulumi.Input[str]] = None,
574
- hash: Optional[pulumi.Input[str]] = None,
575
- key: Optional[pulumi.Input[str]] = None,
576
- metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
577
- project_id: Optional[pulumi.Input[str]] = None,
578
- region: Optional[pulumi.Input[str]] = None,
579
- sse_customer_key: Optional[pulumi.Input[str]] = None,
580
- storage_class: Optional[pulumi.Input[str]] = None,
581
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
582
- visibility: Optional[pulumi.Input[str]] = None,
635
+ bucket: Optional[pulumi.Input[_builtins.str]] = None,
636
+ content: Optional[pulumi.Input[_builtins.str]] = None,
637
+ content_base64: Optional[pulumi.Input[_builtins.str]] = None,
638
+ content_type: Optional[pulumi.Input[_builtins.str]] = None,
639
+ file: Optional[pulumi.Input[_builtins.str]] = None,
640
+ hash: Optional[pulumi.Input[_builtins.str]] = None,
641
+ key: Optional[pulumi.Input[_builtins.str]] = None,
642
+ metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
643
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
644
+ region: Optional[pulumi.Input[_builtins.str]] = None,
645
+ sse_customer_key: Optional[pulumi.Input[_builtins.str]] = None,
646
+ storage_class: Optional[pulumi.Input[_builtins.str]] = None,
647
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
648
+ visibility: Optional[pulumi.Input[_builtins.str]] = None,
583
649
  __props__=None):
584
650
  pulumi.log.warn("""ObjectItem is deprecated: scaleway.index/objectitem.ObjectItem has been deprecated in favor of scaleway.object/item.Item""")
585
651
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -595,6 +661,7 @@ class ObjectItem(pulumi.CustomResource):
595
661
  __props__.__dict__["bucket"] = bucket
596
662
  __props__.__dict__["content"] = content
597
663
  __props__.__dict__["content_base64"] = content_base64
664
+ __props__.__dict__["content_type"] = content_type
598
665
  __props__.__dict__["file"] = file
599
666
  __props__.__dict__["hash"] = hash
600
667
  if key is None and not opts.urn:
@@ -619,19 +686,20 @@ class ObjectItem(pulumi.CustomResource):
619
686
  def get(resource_name: str,
620
687
  id: pulumi.Input[str],
621
688
  opts: Optional[pulumi.ResourceOptions] = None,
622
- bucket: Optional[pulumi.Input[str]] = None,
623
- content: Optional[pulumi.Input[str]] = None,
624
- content_base64: Optional[pulumi.Input[str]] = None,
625
- file: Optional[pulumi.Input[str]] = None,
626
- hash: Optional[pulumi.Input[str]] = None,
627
- key: Optional[pulumi.Input[str]] = None,
628
- metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
629
- project_id: Optional[pulumi.Input[str]] = None,
630
- region: Optional[pulumi.Input[str]] = None,
631
- sse_customer_key: Optional[pulumi.Input[str]] = None,
632
- storage_class: Optional[pulumi.Input[str]] = None,
633
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
634
- visibility: Optional[pulumi.Input[str]] = None) -> 'ObjectItem':
689
+ bucket: Optional[pulumi.Input[_builtins.str]] = None,
690
+ content: Optional[pulumi.Input[_builtins.str]] = None,
691
+ content_base64: Optional[pulumi.Input[_builtins.str]] = None,
692
+ content_type: Optional[pulumi.Input[_builtins.str]] = None,
693
+ file: Optional[pulumi.Input[_builtins.str]] = None,
694
+ hash: Optional[pulumi.Input[_builtins.str]] = None,
695
+ key: Optional[pulumi.Input[_builtins.str]] = None,
696
+ metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
697
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
698
+ region: Optional[pulumi.Input[_builtins.str]] = None,
699
+ sse_customer_key: Optional[pulumi.Input[_builtins.str]] = None,
700
+ storage_class: Optional[pulumi.Input[_builtins.str]] = None,
701
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
702
+ visibility: Optional[pulumi.Input[_builtins.str]] = None) -> 'ObjectItem':
635
703
  """
636
704
  Get an existing ObjectItem resource's state with the given name, id, and optional extra
637
705
  properties used to qualify the lookup.
@@ -639,21 +707,22 @@ class ObjectItem(pulumi.CustomResource):
639
707
  :param str resource_name: The unique name of the resulting resource.
640
708
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
641
709
  :param pulumi.ResourceOptions opts: Options for the resource.
642
- :param pulumi.Input[str] bucket: The bucket's name or regional ID.
643
- :param pulumi.Input[str] content: The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
644
- :param pulumi.Input[str] content_base64: The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
710
+ :param pulumi.Input[_builtins.str] bucket: The bucket's name or regional ID.
711
+ :param pulumi.Input[_builtins.str] content: The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
712
+ :param pulumi.Input[_builtins.str] content_base64: The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
645
713
 
646
714
  > **Note:** Only one of `file`, `content` or `content_base64` can be defined.
647
- :param pulumi.Input[str] file: The name of the file to upload, defaults to an empty file.
648
- :param pulumi.Input[str] hash: Hash of the file, used to trigger the upload on file change.
649
- :param pulumi.Input[str] key: The path to the object.
650
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Map of metadata used for the object (keys must be lowercase).
651
- :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
652
- :param pulumi.Input[str] region: The Scaleway region the bucket resides in.
653
- :param pulumi.Input[str] sse_customer_key: Customer's encryption keys to encrypt data (SSE-C)
654
- :param pulumi.Input[str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
655
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags.
656
- :param pulumi.Input[str] visibility: Visibility of the object, `public-read` or `private`.
715
+ :param pulumi.Input[_builtins.str] content_type: The standard MIME type of the object's content (e.g., 'application/json', 'text/plain'). This specifies how the object should be interpreted by clients. See RFC 9110: <https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type>
716
+ :param pulumi.Input[_builtins.str] file: The name of the file to upload, defaults to an empty file.
717
+ :param pulumi.Input[_builtins.str] hash: Hash of the file, used to trigger the upload on file change.
718
+ :param pulumi.Input[_builtins.str] key: The path to the object.
719
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] metadata: Map of metadata used for the object (keys must be lowercase).
720
+ :param pulumi.Input[_builtins.str] project_id: The project_id you want to attach the resource to
721
+ :param pulumi.Input[_builtins.str] region: The Scaleway region the bucket resides in.
722
+ :param pulumi.Input[_builtins.str] sse_customer_key: Customer's encryption keys to encrypt data (SSE-C)
723
+ :param pulumi.Input[_builtins.str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
724
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Map of tags.
725
+ :param pulumi.Input[_builtins.str] visibility: Visibility of the object, `public-read` or `private`.
657
726
  """
658
727
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
659
728
 
@@ -662,6 +731,7 @@ class ObjectItem(pulumi.CustomResource):
662
731
  __props__.__dict__["bucket"] = bucket
663
732
  __props__.__dict__["content"] = content
664
733
  __props__.__dict__["content_base64"] = content_base64
734
+ __props__.__dict__["content_type"] = content_type
665
735
  __props__.__dict__["file"] = file
666
736
  __props__.__dict__["hash"] = hash
667
737
  __props__.__dict__["key"] = key
@@ -674,25 +744,25 @@ class ObjectItem(pulumi.CustomResource):
674
744
  __props__.__dict__["visibility"] = visibility
675
745
  return ObjectItem(resource_name, opts=opts, __props__=__props__)
676
746
 
677
- @property
747
+ @_builtins.property
678
748
  @pulumi.getter
679
- def bucket(self) -> pulumi.Output[str]:
749
+ def bucket(self) -> pulumi.Output[_builtins.str]:
680
750
  """
681
751
  The bucket's name or regional ID.
682
752
  """
683
753
  return pulumi.get(self, "bucket")
684
754
 
685
- @property
755
+ @_builtins.property
686
756
  @pulumi.getter
687
- def content(self) -> pulumi.Output[Optional[str]]:
757
+ def content(self) -> pulumi.Output[Optional[_builtins.str]]:
688
758
  """
689
759
  The content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
690
760
  """
691
761
  return pulumi.get(self, "content")
692
762
 
693
- @property
763
+ @_builtins.property
694
764
  @pulumi.getter(name="contentBase64")
695
- def content_base64(self) -> pulumi.Output[Optional[str]]:
765
+ def content_base64(self) -> pulumi.Output[Optional[_builtins.str]]:
696
766
  """
697
767
  The base64-encoded content of the file to upload. Only one of `file`, `content` or `content_base64` can be defined.
698
768
 
@@ -700,81 +770,89 @@ class ObjectItem(pulumi.CustomResource):
700
770
  """
701
771
  return pulumi.get(self, "content_base64")
702
772
 
703
- @property
773
+ @_builtins.property
774
+ @pulumi.getter(name="contentType")
775
+ def content_type(self) -> pulumi.Output[_builtins.str]:
776
+ """
777
+ The standard MIME type of the object's content (e.g., 'application/json', 'text/plain'). This specifies how the object should be interpreted by clients. See RFC 9110: <https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type>
778
+ """
779
+ return pulumi.get(self, "content_type")
780
+
781
+ @_builtins.property
704
782
  @pulumi.getter
705
- def file(self) -> pulumi.Output[Optional[str]]:
783
+ def file(self) -> pulumi.Output[Optional[_builtins.str]]:
706
784
  """
707
785
  The name of the file to upload, defaults to an empty file.
708
786
  """
709
787
  return pulumi.get(self, "file")
710
788
 
711
- @property
789
+ @_builtins.property
712
790
  @pulumi.getter
713
- def hash(self) -> pulumi.Output[Optional[str]]:
791
+ def hash(self) -> pulumi.Output[Optional[_builtins.str]]:
714
792
  """
715
793
  Hash of the file, used to trigger the upload on file change.
716
794
  """
717
795
  return pulumi.get(self, "hash")
718
796
 
719
- @property
797
+ @_builtins.property
720
798
  @pulumi.getter
721
- def key(self) -> pulumi.Output[str]:
799
+ def key(self) -> pulumi.Output[_builtins.str]:
722
800
  """
723
801
  The path to the object.
724
802
  """
725
803
  return pulumi.get(self, "key")
726
804
 
727
- @property
805
+ @_builtins.property
728
806
  @pulumi.getter
729
- def metadata(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
807
+ def metadata(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
730
808
  """
731
809
  Map of metadata used for the object (keys must be lowercase).
732
810
  """
733
811
  return pulumi.get(self, "metadata")
734
812
 
735
- @property
813
+ @_builtins.property
736
814
  @pulumi.getter(name="projectId")
737
- def project_id(self) -> pulumi.Output[str]:
815
+ def project_id(self) -> pulumi.Output[_builtins.str]:
738
816
  """
739
817
  The project_id you want to attach the resource to
740
818
  """
741
819
  return pulumi.get(self, "project_id")
742
820
 
743
- @property
821
+ @_builtins.property
744
822
  @pulumi.getter
745
- def region(self) -> pulumi.Output[str]:
823
+ def region(self) -> pulumi.Output[Optional[_builtins.str]]:
746
824
  """
747
825
  The Scaleway region the bucket resides in.
748
826
  """
749
827
  return pulumi.get(self, "region")
750
828
 
751
- @property
829
+ @_builtins.property
752
830
  @pulumi.getter(name="sseCustomerKey")
753
- def sse_customer_key(self) -> pulumi.Output[Optional[str]]:
831
+ def sse_customer_key(self) -> pulumi.Output[Optional[_builtins.str]]:
754
832
  """
755
833
  Customer's encryption keys to encrypt data (SSE-C)
756
834
  """
757
835
  return pulumi.get(self, "sse_customer_key")
758
836
 
759
- @property
837
+ @_builtins.property
760
838
  @pulumi.getter(name="storageClass")
761
- def storage_class(self) -> pulumi.Output[Optional[str]]:
839
+ def storage_class(self) -> pulumi.Output[Optional[_builtins.str]]:
762
840
  """
763
841
  Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) (`STANDARD`, `GLACIER`, or `ONEZONE_IA`) used to store the object.
764
842
  """
765
843
  return pulumi.get(self, "storage_class")
766
844
 
767
- @property
845
+ @_builtins.property
768
846
  @pulumi.getter
769
- def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
847
+ def tags(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
770
848
  """
771
849
  Map of tags.
772
850
  """
773
851
  return pulumi.get(self, "tags")
774
852
 
775
- @property
853
+ @_builtins.property
776
854
  @pulumi.getter
777
- def visibility(self) -> pulumi.Output[str]:
855
+ def visibility(self) -> pulumi.Output[_builtins.str]:
778
856
  """
779
857
  Visibility of the object, `public-read` or `private`.
780
858
  """