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
@@ -21,45 +21,57 @@ __all__ = ['InstanceArgs', 'Instance']
21
21
  @pulumi.input_type
22
22
  class InstanceArgs:
23
23
  def __init__(__self__, *,
24
- node_number: pulumi.Input[int],
25
- node_type: pulumi.Input[str],
26
- name: Optional[pulumi.Input[str]] = None,
27
- password: Optional[pulumi.Input[str]] = None,
24
+ node_number: pulumi.Input[_builtins.int],
25
+ node_type: pulumi.Input[_builtins.str],
26
+ is_snapshot_schedule_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
27
+ name: Optional[pulumi.Input[_builtins.str]] = None,
28
+ password: Optional[pulumi.Input[_builtins.str]] = None,
29
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['InstancePrivateIpArgs']]]] = None,
28
30
  private_network: Optional[pulumi.Input['InstancePrivateNetworkArgs']] = None,
29
- project_id: Optional[pulumi.Input[str]] = None,
31
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
30
32
  public_network: Optional[pulumi.Input['InstancePublicNetworkArgs']] = None,
31
- region: Optional[pulumi.Input[str]] = None,
32
- settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
33
- snapshot_id: Optional[pulumi.Input[str]] = None,
34
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
35
- user_name: Optional[pulumi.Input[str]] = None,
36
- version: Optional[pulumi.Input[str]] = None,
37
- volume_size_in_gb: Optional[pulumi.Input[int]] = None,
38
- volume_type: Optional[pulumi.Input[str]] = None):
33
+ region: Optional[pulumi.Input[_builtins.str]] = None,
34
+ settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
35
+ snapshot_id: Optional[pulumi.Input[_builtins.str]] = None,
36
+ snapshot_schedule_frequency_hours: Optional[pulumi.Input[_builtins.int]] = None,
37
+ snapshot_schedule_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
38
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
39
+ user_name: Optional[pulumi.Input[_builtins.str]] = None,
40
+ version: Optional[pulumi.Input[_builtins.str]] = None,
41
+ volume_size_in_gb: Optional[pulumi.Input[_builtins.int]] = None,
42
+ volume_type: Optional[pulumi.Input[_builtins.str]] = None):
39
43
  """
40
44
  The set of arguments for constructing a Instance resource.
41
- :param pulumi.Input[int] node_number: Number of nodes in the instance
42
- :param pulumi.Input[str] node_type: The type of MongoDB® intance to create.
43
- :param pulumi.Input[str] name: Name of the MongoDB® instance.
44
- :param pulumi.Input[str] password: Password of the user.
45
+ :param pulumi.Input[_builtins.int] node_number: Number of nodes in the instance
46
+ :param pulumi.Input[_builtins.str] node_type: The type of MongoDB® instance to create.
47
+ :param pulumi.Input[_builtins.bool] is_snapshot_schedule_enabled: Whether automatic snapshot scheduling is enabled.
48
+ :param pulumi.Input[_builtins.str] name: Name of the MongoDB® instance.
49
+ :param pulumi.Input[_builtins.str] password: Password of the user.
50
+ :param pulumi.Input[Sequence[pulumi.Input['InstancePrivateIpArgs']]] private_ips: The private IPv4 address associated with the instance.
45
51
  :param pulumi.Input['InstancePrivateNetworkArgs'] private_network: Private Network endpoints of the Database Instance.
46
- :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
47
- :param pulumi.Input['InstancePublicNetworkArgs'] public_network: Public network specs details.
48
- :param pulumi.Input[str] region: The region you want to attach the resource to
49
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of settings to define for the instance.
50
- :param pulumi.Input[str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
51
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: List of tags attached to the MongoDB® instance.
52
- :param pulumi.Input[str] user_name: Name of the user created when the intance is created.
53
- :param pulumi.Input[str] version: MongoDB® version of the instance.
54
- :param pulumi.Input[int] volume_size_in_gb: Volume size in GB.
55
- :param pulumi.Input[str] volume_type: Volume type of the instance.
52
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the MongoDB® instance is associated with.
53
+ :param pulumi.Input['InstancePublicNetworkArgs'] public_network: Public network endpoint configuration (no arguments).
54
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the MongoDB® instance should be created.
55
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] settings: Map of settings to define for the instance.
56
+ :param pulumi.Input[_builtins.str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
57
+ :param pulumi.Input[_builtins.int] snapshot_schedule_frequency_hours: Snapshot schedule frequency in hours.
58
+ :param pulumi.Input[_builtins.int] snapshot_schedule_retention_days: Snapshot schedule retention in days.
59
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: List of tags attached to the MongoDB® instance.
60
+ :param pulumi.Input[_builtins.str] user_name: Name of the user created when the instance is created.
61
+ :param pulumi.Input[_builtins.str] version: MongoDB® version of the instance.
62
+ :param pulumi.Input[_builtins.int] volume_size_in_gb: Volume size in GB.
63
+ :param pulumi.Input[_builtins.str] volume_type: Volume type of the instance.
56
64
  """
57
65
  pulumi.set(__self__, "node_number", node_number)
58
66
  pulumi.set(__self__, "node_type", node_type)
67
+ if is_snapshot_schedule_enabled is not None:
68
+ pulumi.set(__self__, "is_snapshot_schedule_enabled", is_snapshot_schedule_enabled)
59
69
  if name is not None:
60
70
  pulumi.set(__self__, "name", name)
61
71
  if password is not None:
62
72
  pulumi.set(__self__, "password", password)
73
+ if private_ips is not None:
74
+ pulumi.set(__self__, "private_ips", private_ips)
63
75
  if private_network is not None:
64
76
  pulumi.set(__self__, "private_network", private_network)
65
77
  if project_id is not None:
@@ -72,6 +84,10 @@ class InstanceArgs:
72
84
  pulumi.set(__self__, "settings", settings)
73
85
  if snapshot_id is not None:
74
86
  pulumi.set(__self__, "snapshot_id", snapshot_id)
87
+ if snapshot_schedule_frequency_hours is not None:
88
+ pulumi.set(__self__, "snapshot_schedule_frequency_hours", snapshot_schedule_frequency_hours)
89
+ if snapshot_schedule_retention_days is not None:
90
+ pulumi.set(__self__, "snapshot_schedule_retention_days", snapshot_schedule_retention_days)
75
91
  if tags is not None:
76
92
  pulumi.set(__self__, "tags", tags)
77
93
  if user_name is not None:
@@ -83,55 +99,79 @@ class InstanceArgs:
83
99
  if volume_type is not None:
84
100
  pulumi.set(__self__, "volume_type", volume_type)
85
101
 
86
- @property
102
+ @_builtins.property
87
103
  @pulumi.getter(name="nodeNumber")
88
- def node_number(self) -> pulumi.Input[int]:
104
+ def node_number(self) -> pulumi.Input[_builtins.int]:
89
105
  """
90
106
  Number of nodes in the instance
91
107
  """
92
108
  return pulumi.get(self, "node_number")
93
109
 
94
110
  @node_number.setter
95
- def node_number(self, value: pulumi.Input[int]):
111
+ def node_number(self, value: pulumi.Input[_builtins.int]):
96
112
  pulumi.set(self, "node_number", value)
97
113
 
98
- @property
114
+ @_builtins.property
99
115
  @pulumi.getter(name="nodeType")
100
- def node_type(self) -> pulumi.Input[str]:
116
+ def node_type(self) -> pulumi.Input[_builtins.str]:
101
117
  """
102
- The type of MongoDB® intance to create.
118
+ The type of MongoDB® instance to create.
103
119
  """
104
120
  return pulumi.get(self, "node_type")
105
121
 
106
122
  @node_type.setter
107
- def node_type(self, value: pulumi.Input[str]):
123
+ def node_type(self, value: pulumi.Input[_builtins.str]):
108
124
  pulumi.set(self, "node_type", value)
109
125
 
110
- @property
126
+ @_builtins.property
127
+ @pulumi.getter(name="isSnapshotScheduleEnabled")
128
+ def is_snapshot_schedule_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
129
+ """
130
+ Whether automatic snapshot scheduling is enabled.
131
+ """
132
+ return pulumi.get(self, "is_snapshot_schedule_enabled")
133
+
134
+ @is_snapshot_schedule_enabled.setter
135
+ def is_snapshot_schedule_enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
136
+ pulumi.set(self, "is_snapshot_schedule_enabled", value)
137
+
138
+ @_builtins.property
111
139
  @pulumi.getter
112
- def name(self) -> Optional[pulumi.Input[str]]:
140
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
113
141
  """
114
142
  Name of the MongoDB® instance.
115
143
  """
116
144
  return pulumi.get(self, "name")
117
145
 
118
146
  @name.setter
119
- def name(self, value: Optional[pulumi.Input[str]]):
147
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
120
148
  pulumi.set(self, "name", value)
121
149
 
122
- @property
150
+ @_builtins.property
123
151
  @pulumi.getter
124
- def password(self) -> Optional[pulumi.Input[str]]:
152
+ def password(self) -> Optional[pulumi.Input[_builtins.str]]:
125
153
  """
126
154
  Password of the user.
127
155
  """
128
156
  return pulumi.get(self, "password")
129
157
 
130
158
  @password.setter
131
- def password(self, value: Optional[pulumi.Input[str]]):
159
+ def password(self, value: Optional[pulumi.Input[_builtins.str]]):
132
160
  pulumi.set(self, "password", value)
133
161
 
134
- @property
162
+ @_builtins.property
163
+ @pulumi.getter(name="privateIps")
164
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstancePrivateIpArgs']]]]:
165
+ """
166
+ The private IPv4 address associated with the instance.
167
+ """
168
+ return pulumi.get(self, "private_ips")
169
+
170
+ @private_ips.setter
171
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstancePrivateIpArgs']]]]):
172
+ pulumi.set(self, "private_ips", value)
173
+
174
+ @_builtins.property
135
175
  @pulumi.getter(name="privateNetwork")
136
176
  def private_network(self) -> Optional[pulumi.Input['InstancePrivateNetworkArgs']]:
137
177
  """
@@ -143,23 +183,23 @@ class InstanceArgs:
143
183
  def private_network(self, value: Optional[pulumi.Input['InstancePrivateNetworkArgs']]):
144
184
  pulumi.set(self, "private_network", value)
145
185
 
146
- @property
186
+ @_builtins.property
147
187
  @pulumi.getter(name="projectId")
148
- def project_id(self) -> Optional[pulumi.Input[str]]:
188
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
149
189
  """
150
- The project_id you want to attach the resource to
190
+ `project_id`) The ID of the project the MongoDB® instance is associated with.
151
191
  """
152
192
  return pulumi.get(self, "project_id")
153
193
 
154
194
  @project_id.setter
155
- def project_id(self, value: Optional[pulumi.Input[str]]):
195
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
156
196
  pulumi.set(self, "project_id", value)
157
197
 
158
- @property
198
+ @_builtins.property
159
199
  @pulumi.getter(name="publicNetwork")
160
200
  def public_network(self) -> Optional[pulumi.Input['InstancePublicNetworkArgs']]:
161
201
  """
162
- Public network specs details.
202
+ Public network endpoint configuration (no arguments).
163
203
  """
164
204
  return pulumi.get(self, "public_network")
165
205
 
@@ -167,145 +207,181 @@ class InstanceArgs:
167
207
  def public_network(self, value: Optional[pulumi.Input['InstancePublicNetworkArgs']]):
168
208
  pulumi.set(self, "public_network", value)
169
209
 
170
- @property
210
+ @_builtins.property
171
211
  @pulumi.getter
172
- def region(self) -> Optional[pulumi.Input[str]]:
212
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
173
213
  """
174
- The region you want to attach the resource to
214
+ `region`) The region in which the MongoDB® instance should be created.
175
215
  """
176
216
  return pulumi.get(self, "region")
177
217
 
178
218
  @region.setter
179
- def region(self, value: Optional[pulumi.Input[str]]):
219
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
180
220
  pulumi.set(self, "region", value)
181
221
 
182
- @property
222
+ @_builtins.property
183
223
  @pulumi.getter
184
- def settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
224
+ def settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
185
225
  """
186
226
  Map of settings to define for the instance.
187
227
  """
188
228
  return pulumi.get(self, "settings")
189
229
 
190
230
  @settings.setter
191
- def settings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
231
+ def settings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
192
232
  pulumi.set(self, "settings", value)
193
233
 
194
- @property
234
+ @_builtins.property
195
235
  @pulumi.getter(name="snapshotId")
196
- def snapshot_id(self) -> Optional[pulumi.Input[str]]:
236
+ def snapshot_id(self) -> Optional[pulumi.Input[_builtins.str]]:
197
237
  """
198
238
  Snapshot ID to restore the MongoDB® instance from.
199
239
  """
200
240
  return pulumi.get(self, "snapshot_id")
201
241
 
202
242
  @snapshot_id.setter
203
- def snapshot_id(self, value: Optional[pulumi.Input[str]]):
243
+ def snapshot_id(self, value: Optional[pulumi.Input[_builtins.str]]):
204
244
  pulumi.set(self, "snapshot_id", value)
205
245
 
206
- @property
246
+ @_builtins.property
247
+ @pulumi.getter(name="snapshotScheduleFrequencyHours")
248
+ def snapshot_schedule_frequency_hours(self) -> Optional[pulumi.Input[_builtins.int]]:
249
+ """
250
+ Snapshot schedule frequency in hours.
251
+ """
252
+ return pulumi.get(self, "snapshot_schedule_frequency_hours")
253
+
254
+ @snapshot_schedule_frequency_hours.setter
255
+ def snapshot_schedule_frequency_hours(self, value: Optional[pulumi.Input[_builtins.int]]):
256
+ pulumi.set(self, "snapshot_schedule_frequency_hours", value)
257
+
258
+ @_builtins.property
259
+ @pulumi.getter(name="snapshotScheduleRetentionDays")
260
+ def snapshot_schedule_retention_days(self) -> Optional[pulumi.Input[_builtins.int]]:
261
+ """
262
+ Snapshot schedule retention in days.
263
+ """
264
+ return pulumi.get(self, "snapshot_schedule_retention_days")
265
+
266
+ @snapshot_schedule_retention_days.setter
267
+ def snapshot_schedule_retention_days(self, value: Optional[pulumi.Input[_builtins.int]]):
268
+ pulumi.set(self, "snapshot_schedule_retention_days", value)
269
+
270
+ @_builtins.property
207
271
  @pulumi.getter
208
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
272
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
209
273
  """
210
274
  List of tags attached to the MongoDB® instance.
211
275
  """
212
276
  return pulumi.get(self, "tags")
213
277
 
214
278
  @tags.setter
215
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
279
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
216
280
  pulumi.set(self, "tags", value)
217
281
 
218
- @property
282
+ @_builtins.property
219
283
  @pulumi.getter(name="userName")
220
- def user_name(self) -> Optional[pulumi.Input[str]]:
284
+ def user_name(self) -> Optional[pulumi.Input[_builtins.str]]:
221
285
  """
222
- Name of the user created when the intance is created.
286
+ Name of the user created when the instance is created.
223
287
  """
224
288
  return pulumi.get(self, "user_name")
225
289
 
226
290
  @user_name.setter
227
- def user_name(self, value: Optional[pulumi.Input[str]]):
291
+ def user_name(self, value: Optional[pulumi.Input[_builtins.str]]):
228
292
  pulumi.set(self, "user_name", value)
229
293
 
230
- @property
294
+ @_builtins.property
231
295
  @pulumi.getter
232
- def version(self) -> Optional[pulumi.Input[str]]:
296
+ def version(self) -> Optional[pulumi.Input[_builtins.str]]:
233
297
  """
234
298
  MongoDB® version of the instance.
235
299
  """
236
300
  return pulumi.get(self, "version")
237
301
 
238
302
  @version.setter
239
- def version(self, value: Optional[pulumi.Input[str]]):
303
+ def version(self, value: Optional[pulumi.Input[_builtins.str]]):
240
304
  pulumi.set(self, "version", value)
241
305
 
242
- @property
306
+ @_builtins.property
243
307
  @pulumi.getter(name="volumeSizeInGb")
244
- def volume_size_in_gb(self) -> Optional[pulumi.Input[int]]:
308
+ def volume_size_in_gb(self) -> Optional[pulumi.Input[_builtins.int]]:
245
309
  """
246
310
  Volume size in GB.
247
311
  """
248
312
  return pulumi.get(self, "volume_size_in_gb")
249
313
 
250
314
  @volume_size_in_gb.setter
251
- def volume_size_in_gb(self, value: Optional[pulumi.Input[int]]):
315
+ def volume_size_in_gb(self, value: Optional[pulumi.Input[_builtins.int]]):
252
316
  pulumi.set(self, "volume_size_in_gb", value)
253
317
 
254
- @property
318
+ @_builtins.property
255
319
  @pulumi.getter(name="volumeType")
256
- def volume_type(self) -> Optional[pulumi.Input[str]]:
320
+ def volume_type(self) -> Optional[pulumi.Input[_builtins.str]]:
257
321
  """
258
322
  Volume type of the instance.
259
323
  """
260
324
  return pulumi.get(self, "volume_type")
261
325
 
262
326
  @volume_type.setter
263
- def volume_type(self, value: Optional[pulumi.Input[str]]):
327
+ def volume_type(self, value: Optional[pulumi.Input[_builtins.str]]):
264
328
  pulumi.set(self, "volume_type", value)
265
329
 
266
330
 
267
331
  @pulumi.input_type
268
332
  class _InstanceState:
269
333
  def __init__(__self__, *,
270
- created_at: Optional[pulumi.Input[str]] = None,
271
- name: Optional[pulumi.Input[str]] = None,
272
- node_number: Optional[pulumi.Input[int]] = None,
273
- node_type: Optional[pulumi.Input[str]] = None,
274
- password: Optional[pulumi.Input[str]] = None,
334
+ created_at: Optional[pulumi.Input[_builtins.str]] = None,
335
+ is_snapshot_schedule_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
336
+ name: Optional[pulumi.Input[_builtins.str]] = None,
337
+ node_number: Optional[pulumi.Input[_builtins.int]] = None,
338
+ node_type: Optional[pulumi.Input[_builtins.str]] = None,
339
+ password: Optional[pulumi.Input[_builtins.str]] = None,
340
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['InstancePrivateIpArgs']]]] = None,
275
341
  private_network: Optional[pulumi.Input['InstancePrivateNetworkArgs']] = None,
276
- project_id: Optional[pulumi.Input[str]] = None,
342
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
277
343
  public_network: Optional[pulumi.Input['InstancePublicNetworkArgs']] = None,
278
- region: Optional[pulumi.Input[str]] = None,
279
- settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
280
- snapshot_id: Optional[pulumi.Input[str]] = None,
281
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
282
- updated_at: Optional[pulumi.Input[str]] = None,
283
- user_name: Optional[pulumi.Input[str]] = None,
284
- version: Optional[pulumi.Input[str]] = None,
285
- volume_size_in_gb: Optional[pulumi.Input[int]] = None,
286
- volume_type: Optional[pulumi.Input[str]] = None):
344
+ region: Optional[pulumi.Input[_builtins.str]] = None,
345
+ settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
346
+ snapshot_id: Optional[pulumi.Input[_builtins.str]] = None,
347
+ snapshot_schedule_frequency_hours: Optional[pulumi.Input[_builtins.int]] = None,
348
+ snapshot_schedule_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
349
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
350
+ tls_certificate: Optional[pulumi.Input[_builtins.str]] = None,
351
+ updated_at: Optional[pulumi.Input[_builtins.str]] = None,
352
+ user_name: Optional[pulumi.Input[_builtins.str]] = None,
353
+ version: Optional[pulumi.Input[_builtins.str]] = None,
354
+ volume_size_in_gb: Optional[pulumi.Input[_builtins.int]] = None,
355
+ volume_type: Optional[pulumi.Input[_builtins.str]] = None):
287
356
  """
288
357
  Input properties used for looking up and filtering Instance resources.
289
- :param pulumi.Input[str] created_at: The date and time of the creation of the MongoDB® instance.
290
- :param pulumi.Input[str] name: Name of the MongoDB® instance.
291
- :param pulumi.Input[int] node_number: Number of nodes in the instance
292
- :param pulumi.Input[str] node_type: The type of MongoDB® intance to create.
293
- :param pulumi.Input[str] password: Password of the user.
358
+ :param pulumi.Input[_builtins.str] created_at: The date and time of the creation of the MongoDB® instance.
359
+ :param pulumi.Input[_builtins.bool] is_snapshot_schedule_enabled: Whether automatic snapshot scheduling is enabled.
360
+ :param pulumi.Input[_builtins.str] name: Name of the MongoDB® instance.
361
+ :param pulumi.Input[_builtins.int] node_number: Number of nodes in the instance
362
+ :param pulumi.Input[_builtins.str] node_type: The type of MongoDB® instance to create.
363
+ :param pulumi.Input[_builtins.str] password: Password of the user.
364
+ :param pulumi.Input[Sequence[pulumi.Input['InstancePrivateIpArgs']]] private_ips: The private IPv4 address associated with the instance.
294
365
  :param pulumi.Input['InstancePrivateNetworkArgs'] private_network: Private Network endpoints of the Database Instance.
295
- :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
296
- :param pulumi.Input['InstancePublicNetworkArgs'] public_network: Public network specs details.
297
- :param pulumi.Input[str] region: The region you want to attach the resource to
298
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of settings to define for the instance.
299
- :param pulumi.Input[str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
300
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: List of tags attached to the MongoDB® instance.
301
- :param pulumi.Input[str] updated_at: The date and time of the last update of the MongoDB® instance.
302
- :param pulumi.Input[str] user_name: Name of the user created when the intance is created.
303
- :param pulumi.Input[str] version: MongoDB® version of the instance.
304
- :param pulumi.Input[int] volume_size_in_gb: Volume size in GB.
305
- :param pulumi.Input[str] volume_type: Volume type of the instance.
366
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the MongoDB® instance is associated with.
367
+ :param pulumi.Input['InstancePublicNetworkArgs'] public_network: Public network endpoint configuration (no arguments).
368
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the MongoDB® instance should be created.
369
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] settings: Map of settings to define for the instance.
370
+ :param pulumi.Input[_builtins.str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
371
+ :param pulumi.Input[_builtins.int] snapshot_schedule_frequency_hours: Snapshot schedule frequency in hours.
372
+ :param pulumi.Input[_builtins.int] snapshot_schedule_retention_days: Snapshot schedule retention in days.
373
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: List of tags attached to the MongoDB® instance.
374
+ :param pulumi.Input[_builtins.str] tls_certificate: The PEM-encoded TLS certificate for the MongoDB® instance, if available.
375
+ :param pulumi.Input[_builtins.str] updated_at: The date and time of the last update of the MongoDB® instance.
376
+ :param pulumi.Input[_builtins.str] user_name: Name of the user created when the instance is created.
377
+ :param pulumi.Input[_builtins.str] version: MongoDB® version of the instance.
378
+ :param pulumi.Input[_builtins.int] volume_size_in_gb: Volume size in GB.
379
+ :param pulumi.Input[_builtins.str] volume_type: Volume type of the instance.
306
380
  """
307
381
  if created_at is not None:
308
382
  pulumi.set(__self__, "created_at", created_at)
383
+ if is_snapshot_schedule_enabled is not None:
384
+ pulumi.set(__self__, "is_snapshot_schedule_enabled", is_snapshot_schedule_enabled)
309
385
  if name is not None:
310
386
  pulumi.set(__self__, "name", name)
311
387
  if node_number is not None:
@@ -314,6 +390,8 @@ class _InstanceState:
314
390
  pulumi.set(__self__, "node_type", node_type)
315
391
  if password is not None:
316
392
  pulumi.set(__self__, "password", password)
393
+ if private_ips is not None:
394
+ pulumi.set(__self__, "private_ips", private_ips)
317
395
  if private_network is not None:
318
396
  pulumi.set(__self__, "private_network", private_network)
319
397
  if project_id is not None:
@@ -326,8 +404,14 @@ class _InstanceState:
326
404
  pulumi.set(__self__, "settings", settings)
327
405
  if snapshot_id is not None:
328
406
  pulumi.set(__self__, "snapshot_id", snapshot_id)
407
+ if snapshot_schedule_frequency_hours is not None:
408
+ pulumi.set(__self__, "snapshot_schedule_frequency_hours", snapshot_schedule_frequency_hours)
409
+ if snapshot_schedule_retention_days is not None:
410
+ pulumi.set(__self__, "snapshot_schedule_retention_days", snapshot_schedule_retention_days)
329
411
  if tags is not None:
330
412
  pulumi.set(__self__, "tags", tags)
413
+ if tls_certificate is not None:
414
+ pulumi.set(__self__, "tls_certificate", tls_certificate)
331
415
  if updated_at is not None:
332
416
  pulumi.set(__self__, "updated_at", updated_at)
333
417
  if user_name is not None:
@@ -339,67 +423,91 @@ class _InstanceState:
339
423
  if volume_type is not None:
340
424
  pulumi.set(__self__, "volume_type", volume_type)
341
425
 
342
- @property
426
+ @_builtins.property
343
427
  @pulumi.getter(name="createdAt")
344
- def created_at(self) -> Optional[pulumi.Input[str]]:
428
+ def created_at(self) -> Optional[pulumi.Input[_builtins.str]]:
345
429
  """
346
430
  The date and time of the creation of the MongoDB® instance.
347
431
  """
348
432
  return pulumi.get(self, "created_at")
349
433
 
350
434
  @created_at.setter
351
- def created_at(self, value: Optional[pulumi.Input[str]]):
435
+ def created_at(self, value: Optional[pulumi.Input[_builtins.str]]):
352
436
  pulumi.set(self, "created_at", value)
353
437
 
354
- @property
438
+ @_builtins.property
439
+ @pulumi.getter(name="isSnapshotScheduleEnabled")
440
+ def is_snapshot_schedule_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
441
+ """
442
+ Whether automatic snapshot scheduling is enabled.
443
+ """
444
+ return pulumi.get(self, "is_snapshot_schedule_enabled")
445
+
446
+ @is_snapshot_schedule_enabled.setter
447
+ def is_snapshot_schedule_enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
448
+ pulumi.set(self, "is_snapshot_schedule_enabled", value)
449
+
450
+ @_builtins.property
355
451
  @pulumi.getter
356
- def name(self) -> Optional[pulumi.Input[str]]:
452
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
357
453
  """
358
454
  Name of the MongoDB® instance.
359
455
  """
360
456
  return pulumi.get(self, "name")
361
457
 
362
458
  @name.setter
363
- def name(self, value: Optional[pulumi.Input[str]]):
459
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
364
460
  pulumi.set(self, "name", value)
365
461
 
366
- @property
462
+ @_builtins.property
367
463
  @pulumi.getter(name="nodeNumber")
368
- def node_number(self) -> Optional[pulumi.Input[int]]:
464
+ def node_number(self) -> Optional[pulumi.Input[_builtins.int]]:
369
465
  """
370
466
  Number of nodes in the instance
371
467
  """
372
468
  return pulumi.get(self, "node_number")
373
469
 
374
470
  @node_number.setter
375
- def node_number(self, value: Optional[pulumi.Input[int]]):
471
+ def node_number(self, value: Optional[pulumi.Input[_builtins.int]]):
376
472
  pulumi.set(self, "node_number", value)
377
473
 
378
- @property
474
+ @_builtins.property
379
475
  @pulumi.getter(name="nodeType")
380
- def node_type(self) -> Optional[pulumi.Input[str]]:
476
+ def node_type(self) -> Optional[pulumi.Input[_builtins.str]]:
381
477
  """
382
- The type of MongoDB® intance to create.
478
+ The type of MongoDB® instance to create.
383
479
  """
384
480
  return pulumi.get(self, "node_type")
385
481
 
386
482
  @node_type.setter
387
- def node_type(self, value: Optional[pulumi.Input[str]]):
483
+ def node_type(self, value: Optional[pulumi.Input[_builtins.str]]):
388
484
  pulumi.set(self, "node_type", value)
389
485
 
390
- @property
486
+ @_builtins.property
391
487
  @pulumi.getter
392
- def password(self) -> Optional[pulumi.Input[str]]:
488
+ def password(self) -> Optional[pulumi.Input[_builtins.str]]:
393
489
  """
394
490
  Password of the user.
395
491
  """
396
492
  return pulumi.get(self, "password")
397
493
 
398
494
  @password.setter
399
- def password(self, value: Optional[pulumi.Input[str]]):
495
+ def password(self, value: Optional[pulumi.Input[_builtins.str]]):
400
496
  pulumi.set(self, "password", value)
401
497
 
402
- @property
498
+ @_builtins.property
499
+ @pulumi.getter(name="privateIps")
500
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstancePrivateIpArgs']]]]:
501
+ """
502
+ The private IPv4 address associated with the instance.
503
+ """
504
+ return pulumi.get(self, "private_ips")
505
+
506
+ @private_ips.setter
507
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstancePrivateIpArgs']]]]):
508
+ pulumi.set(self, "private_ips", value)
509
+
510
+ @_builtins.property
403
511
  @pulumi.getter(name="privateNetwork")
404
512
  def private_network(self) -> Optional[pulumi.Input['InstancePrivateNetworkArgs']]:
405
513
  """
@@ -411,23 +519,23 @@ class _InstanceState:
411
519
  def private_network(self, value: Optional[pulumi.Input['InstancePrivateNetworkArgs']]):
412
520
  pulumi.set(self, "private_network", value)
413
521
 
414
- @property
522
+ @_builtins.property
415
523
  @pulumi.getter(name="projectId")
416
- def project_id(self) -> Optional[pulumi.Input[str]]:
524
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
417
525
  """
418
- The project_id you want to attach the resource to
526
+ `project_id`) The ID of the project the MongoDB® instance is associated with.
419
527
  """
420
528
  return pulumi.get(self, "project_id")
421
529
 
422
530
  @project_id.setter
423
- def project_id(self, value: Optional[pulumi.Input[str]]):
531
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
424
532
  pulumi.set(self, "project_id", value)
425
533
 
426
- @property
534
+ @_builtins.property
427
535
  @pulumi.getter(name="publicNetwork")
428
536
  def public_network(self) -> Optional[pulumi.Input['InstancePublicNetworkArgs']]:
429
537
  """
430
- Public network specs details.
538
+ Public network endpoint configuration (no arguments).
431
539
  """
432
540
  return pulumi.get(self, "public_network")
433
541
 
@@ -435,135 +543,176 @@ class _InstanceState:
435
543
  def public_network(self, value: Optional[pulumi.Input['InstancePublicNetworkArgs']]):
436
544
  pulumi.set(self, "public_network", value)
437
545
 
438
- @property
546
+ @_builtins.property
439
547
  @pulumi.getter
440
- def region(self) -> Optional[pulumi.Input[str]]:
548
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
441
549
  """
442
- The region you want to attach the resource to
550
+ `region`) The region in which the MongoDB® instance should be created.
443
551
  """
444
552
  return pulumi.get(self, "region")
445
553
 
446
554
  @region.setter
447
- def region(self, value: Optional[pulumi.Input[str]]):
555
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
448
556
  pulumi.set(self, "region", value)
449
557
 
450
- @property
558
+ @_builtins.property
451
559
  @pulumi.getter
452
- def settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
560
+ def settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
453
561
  """
454
562
  Map of settings to define for the instance.
455
563
  """
456
564
  return pulumi.get(self, "settings")
457
565
 
458
566
  @settings.setter
459
- def settings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
567
+ def settings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
460
568
  pulumi.set(self, "settings", value)
461
569
 
462
- @property
570
+ @_builtins.property
463
571
  @pulumi.getter(name="snapshotId")
464
- def snapshot_id(self) -> Optional[pulumi.Input[str]]:
572
+ def snapshot_id(self) -> Optional[pulumi.Input[_builtins.str]]:
465
573
  """
466
574
  Snapshot ID to restore the MongoDB® instance from.
467
575
  """
468
576
  return pulumi.get(self, "snapshot_id")
469
577
 
470
578
  @snapshot_id.setter
471
- def snapshot_id(self, value: Optional[pulumi.Input[str]]):
579
+ def snapshot_id(self, value: Optional[pulumi.Input[_builtins.str]]):
472
580
  pulumi.set(self, "snapshot_id", value)
473
581
 
474
- @property
582
+ @_builtins.property
583
+ @pulumi.getter(name="snapshotScheduleFrequencyHours")
584
+ def snapshot_schedule_frequency_hours(self) -> Optional[pulumi.Input[_builtins.int]]:
585
+ """
586
+ Snapshot schedule frequency in hours.
587
+ """
588
+ return pulumi.get(self, "snapshot_schedule_frequency_hours")
589
+
590
+ @snapshot_schedule_frequency_hours.setter
591
+ def snapshot_schedule_frequency_hours(self, value: Optional[pulumi.Input[_builtins.int]]):
592
+ pulumi.set(self, "snapshot_schedule_frequency_hours", value)
593
+
594
+ @_builtins.property
595
+ @pulumi.getter(name="snapshotScheduleRetentionDays")
596
+ def snapshot_schedule_retention_days(self) -> Optional[pulumi.Input[_builtins.int]]:
597
+ """
598
+ Snapshot schedule retention in days.
599
+ """
600
+ return pulumi.get(self, "snapshot_schedule_retention_days")
601
+
602
+ @snapshot_schedule_retention_days.setter
603
+ def snapshot_schedule_retention_days(self, value: Optional[pulumi.Input[_builtins.int]]):
604
+ pulumi.set(self, "snapshot_schedule_retention_days", value)
605
+
606
+ @_builtins.property
475
607
  @pulumi.getter
476
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
608
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
477
609
  """
478
610
  List of tags attached to the MongoDB® instance.
479
611
  """
480
612
  return pulumi.get(self, "tags")
481
613
 
482
614
  @tags.setter
483
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
615
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
484
616
  pulumi.set(self, "tags", value)
485
617
 
486
- @property
618
+ @_builtins.property
619
+ @pulumi.getter(name="tlsCertificate")
620
+ def tls_certificate(self) -> Optional[pulumi.Input[_builtins.str]]:
621
+ """
622
+ The PEM-encoded TLS certificate for the MongoDB® instance, if available.
623
+ """
624
+ return pulumi.get(self, "tls_certificate")
625
+
626
+ @tls_certificate.setter
627
+ def tls_certificate(self, value: Optional[pulumi.Input[_builtins.str]]):
628
+ pulumi.set(self, "tls_certificate", value)
629
+
630
+ @_builtins.property
487
631
  @pulumi.getter(name="updatedAt")
488
- def updated_at(self) -> Optional[pulumi.Input[str]]:
632
+ def updated_at(self) -> Optional[pulumi.Input[_builtins.str]]:
489
633
  """
490
634
  The date and time of the last update of the MongoDB® instance.
491
635
  """
492
636
  return pulumi.get(self, "updated_at")
493
637
 
494
638
  @updated_at.setter
495
- def updated_at(self, value: Optional[pulumi.Input[str]]):
639
+ def updated_at(self, value: Optional[pulumi.Input[_builtins.str]]):
496
640
  pulumi.set(self, "updated_at", value)
497
641
 
498
- @property
642
+ @_builtins.property
499
643
  @pulumi.getter(name="userName")
500
- def user_name(self) -> Optional[pulumi.Input[str]]:
644
+ def user_name(self) -> Optional[pulumi.Input[_builtins.str]]:
501
645
  """
502
- Name of the user created when the intance is created.
646
+ Name of the user created when the instance is created.
503
647
  """
504
648
  return pulumi.get(self, "user_name")
505
649
 
506
650
  @user_name.setter
507
- def user_name(self, value: Optional[pulumi.Input[str]]):
651
+ def user_name(self, value: Optional[pulumi.Input[_builtins.str]]):
508
652
  pulumi.set(self, "user_name", value)
509
653
 
510
- @property
654
+ @_builtins.property
511
655
  @pulumi.getter
512
- def version(self) -> Optional[pulumi.Input[str]]:
656
+ def version(self) -> Optional[pulumi.Input[_builtins.str]]:
513
657
  """
514
658
  MongoDB® version of the instance.
515
659
  """
516
660
  return pulumi.get(self, "version")
517
661
 
518
662
  @version.setter
519
- def version(self, value: Optional[pulumi.Input[str]]):
663
+ def version(self, value: Optional[pulumi.Input[_builtins.str]]):
520
664
  pulumi.set(self, "version", value)
521
665
 
522
- @property
666
+ @_builtins.property
523
667
  @pulumi.getter(name="volumeSizeInGb")
524
- def volume_size_in_gb(self) -> Optional[pulumi.Input[int]]:
668
+ def volume_size_in_gb(self) -> Optional[pulumi.Input[_builtins.int]]:
525
669
  """
526
670
  Volume size in GB.
527
671
  """
528
672
  return pulumi.get(self, "volume_size_in_gb")
529
673
 
530
674
  @volume_size_in_gb.setter
531
- def volume_size_in_gb(self, value: Optional[pulumi.Input[int]]):
675
+ def volume_size_in_gb(self, value: Optional[pulumi.Input[_builtins.int]]):
532
676
  pulumi.set(self, "volume_size_in_gb", value)
533
677
 
534
- @property
678
+ @_builtins.property
535
679
  @pulumi.getter(name="volumeType")
536
- def volume_type(self) -> Optional[pulumi.Input[str]]:
680
+ def volume_type(self) -> Optional[pulumi.Input[_builtins.str]]:
537
681
  """
538
682
  Volume type of the instance.
539
683
  """
540
684
  return pulumi.get(self, "volume_type")
541
685
 
542
686
  @volume_type.setter
543
- def volume_type(self, value: Optional[pulumi.Input[str]]):
687
+ def volume_type(self, value: Optional[pulumi.Input[_builtins.str]]):
544
688
  pulumi.set(self, "volume_type", value)
545
689
 
546
690
 
691
+ @pulumi.type_token("scaleway:mongodb/instance:Instance")
547
692
  class Instance(pulumi.CustomResource):
548
693
  @overload
549
694
  def __init__(__self__,
550
695
  resource_name: str,
551
696
  opts: Optional[pulumi.ResourceOptions] = None,
552
- name: Optional[pulumi.Input[str]] = None,
553
- node_number: Optional[pulumi.Input[int]] = None,
554
- node_type: Optional[pulumi.Input[str]] = None,
555
- password: Optional[pulumi.Input[str]] = None,
697
+ is_snapshot_schedule_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
698
+ name: Optional[pulumi.Input[_builtins.str]] = None,
699
+ node_number: Optional[pulumi.Input[_builtins.int]] = None,
700
+ node_type: Optional[pulumi.Input[_builtins.str]] = None,
701
+ password: Optional[pulumi.Input[_builtins.str]] = None,
702
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstancePrivateIpArgs', 'InstancePrivateIpArgsDict']]]]] = None,
556
703
  private_network: Optional[pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']]] = None,
557
- project_id: Optional[pulumi.Input[str]] = None,
704
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
558
705
  public_network: Optional[pulumi.Input[Union['InstancePublicNetworkArgs', 'InstancePublicNetworkArgsDict']]] = None,
559
- region: Optional[pulumi.Input[str]] = None,
560
- settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
561
- snapshot_id: Optional[pulumi.Input[str]] = None,
562
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
563
- user_name: Optional[pulumi.Input[str]] = None,
564
- version: Optional[pulumi.Input[str]] = None,
565
- volume_size_in_gb: Optional[pulumi.Input[int]] = None,
566
- volume_type: Optional[pulumi.Input[str]] = None,
706
+ region: Optional[pulumi.Input[_builtins.str]] = None,
707
+ settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
708
+ snapshot_id: Optional[pulumi.Input[_builtins.str]] = None,
709
+ snapshot_schedule_frequency_hours: Optional[pulumi.Input[_builtins.int]] = None,
710
+ snapshot_schedule_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
711
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
712
+ user_name: Optional[pulumi.Input[_builtins.str]] = None,
713
+ version: Optional[pulumi.Input[_builtins.str]] = None,
714
+ volume_size_in_gb: Optional[pulumi.Input[_builtins.int]] = None,
715
+ volume_type: Optional[pulumi.Input[_builtins.str]] = None,
567
716
  __props__=None):
568
717
  """
569
718
  Creates and manages Scaleway MongoDB® instance.
@@ -609,6 +758,48 @@ class Instance(pulumi.CustomResource):
609
758
  })
610
759
  ```
611
760
 
761
+ ### Private Network and Public Network
762
+
763
+ ```python
764
+ import pulumi
765
+ import pulumiverse_scaleway as scaleway
766
+
767
+ pn01 = scaleway.network.PrivateNetwork("pn01",
768
+ name="my_private_network",
769
+ region="fr-par")
770
+ main = scaleway.mongodb.Instance("main",
771
+ name="test-mongodb-basic1",
772
+ version="7.0.12",
773
+ node_type="MGDB-PLAY2-NANO",
774
+ node_number=1,
775
+ user_name="my_initial_user",
776
+ password="thiZ_is_v&ry_s3cret",
777
+ volume_size_in_gb=5,
778
+ private_network={
779
+ "pn_id": pn02["id"],
780
+ },
781
+ public_network={})
782
+ ```
783
+
784
+ ### With Snapshot Scheduling
785
+
786
+ ```python
787
+ import pulumi
788
+ import pulumiverse_scaleway as scaleway
789
+
790
+ main = scaleway.mongodb.Instance("main",
791
+ name="test-mongodb-with-snapshots",
792
+ version="7.0.12",
793
+ node_type="MGDB-PLAY2-NANO",
794
+ node_number=1,
795
+ user_name="my_initial_user",
796
+ password="thiZ_is_v&ry_s3cret",
797
+ volume_size_in_gb=5,
798
+ snapshot_schedule_frequency_hours=24,
799
+ snapshot_schedule_retention_days=7,
800
+ is_snapshot_schedule_enabled=True)
801
+ ```
802
+
612
803
  ### Restore From Snapshot
613
804
 
614
805
  ```python
@@ -629,26 +820,30 @@ class Instance(pulumi.CustomResource):
629
820
  bash
630
821
 
631
822
  ```sh
632
- $ pulumi import scaleway:mongodb/instance:Instance main fr-par-1/11111111-1111-1111-1111-111111111111
823
+ $ pulumi import scaleway:mongodb/instance:Instance main fr-par/11111111-1111-1111-1111-111111111111
633
824
  ```
634
825
 
635
826
  :param str resource_name: The name of the resource.
636
827
  :param pulumi.ResourceOptions opts: Options for the resource.
637
- :param pulumi.Input[str] name: Name of the MongoDB® instance.
638
- :param pulumi.Input[int] node_number: Number of nodes in the instance
639
- :param pulumi.Input[str] node_type: The type of MongoDB® intance to create.
640
- :param pulumi.Input[str] password: Password of the user.
828
+ :param pulumi.Input[_builtins.bool] is_snapshot_schedule_enabled: Whether automatic snapshot scheduling is enabled.
829
+ :param pulumi.Input[_builtins.str] name: Name of the MongoDB® instance.
830
+ :param pulumi.Input[_builtins.int] node_number: Number of nodes in the instance
831
+ :param pulumi.Input[_builtins.str] node_type: The type of MongoDB® instance to create.
832
+ :param pulumi.Input[_builtins.str] password: Password of the user.
833
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstancePrivateIpArgs', 'InstancePrivateIpArgsDict']]]] private_ips: The private IPv4 address associated with the instance.
641
834
  :param pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']] private_network: Private Network endpoints of the Database Instance.
642
- :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
643
- :param pulumi.Input[Union['InstancePublicNetworkArgs', 'InstancePublicNetworkArgsDict']] public_network: Public network specs details.
644
- :param pulumi.Input[str] region: The region you want to attach the resource to
645
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of settings to define for the instance.
646
- :param pulumi.Input[str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
647
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: List of tags attached to the MongoDB® instance.
648
- :param pulumi.Input[str] user_name: Name of the user created when the intance is created.
649
- :param pulumi.Input[str] version: MongoDB® version of the instance.
650
- :param pulumi.Input[int] volume_size_in_gb: Volume size in GB.
651
- :param pulumi.Input[str] volume_type: Volume type of the instance.
835
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the MongoDB® instance is associated with.
836
+ :param pulumi.Input[Union['InstancePublicNetworkArgs', 'InstancePublicNetworkArgsDict']] public_network: Public network endpoint configuration (no arguments).
837
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the MongoDB® instance should be created.
838
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] settings: Map of settings to define for the instance.
839
+ :param pulumi.Input[_builtins.str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
840
+ :param pulumi.Input[_builtins.int] snapshot_schedule_frequency_hours: Snapshot schedule frequency in hours.
841
+ :param pulumi.Input[_builtins.int] snapshot_schedule_retention_days: Snapshot schedule retention in days.
842
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: List of tags attached to the MongoDB® instance.
843
+ :param pulumi.Input[_builtins.str] user_name: Name of the user created when the instance is created.
844
+ :param pulumi.Input[_builtins.str] version: MongoDB® version of the instance.
845
+ :param pulumi.Input[_builtins.int] volume_size_in_gb: Volume size in GB.
846
+ :param pulumi.Input[_builtins.str] volume_type: Volume type of the instance.
652
847
  """
653
848
  ...
654
849
  @overload
@@ -700,6 +895,48 @@ class Instance(pulumi.CustomResource):
700
895
  })
701
896
  ```
702
897
 
898
+ ### Private Network and Public Network
899
+
900
+ ```python
901
+ import pulumi
902
+ import pulumiverse_scaleway as scaleway
903
+
904
+ pn01 = scaleway.network.PrivateNetwork("pn01",
905
+ name="my_private_network",
906
+ region="fr-par")
907
+ main = scaleway.mongodb.Instance("main",
908
+ name="test-mongodb-basic1",
909
+ version="7.0.12",
910
+ node_type="MGDB-PLAY2-NANO",
911
+ node_number=1,
912
+ user_name="my_initial_user",
913
+ password="thiZ_is_v&ry_s3cret",
914
+ volume_size_in_gb=5,
915
+ private_network={
916
+ "pn_id": pn02["id"],
917
+ },
918
+ public_network={})
919
+ ```
920
+
921
+ ### With Snapshot Scheduling
922
+
923
+ ```python
924
+ import pulumi
925
+ import pulumiverse_scaleway as scaleway
926
+
927
+ main = scaleway.mongodb.Instance("main",
928
+ name="test-mongodb-with-snapshots",
929
+ version="7.0.12",
930
+ node_type="MGDB-PLAY2-NANO",
931
+ node_number=1,
932
+ user_name="my_initial_user",
933
+ password="thiZ_is_v&ry_s3cret",
934
+ volume_size_in_gb=5,
935
+ snapshot_schedule_frequency_hours=24,
936
+ snapshot_schedule_retention_days=7,
937
+ is_snapshot_schedule_enabled=True)
938
+ ```
939
+
703
940
  ### Restore From Snapshot
704
941
 
705
942
  ```python
@@ -720,7 +957,7 @@ class Instance(pulumi.CustomResource):
720
957
  bash
721
958
 
722
959
  ```sh
723
- $ pulumi import scaleway:mongodb/instance:Instance main fr-par-1/11111111-1111-1111-1111-111111111111
960
+ $ pulumi import scaleway:mongodb/instance:Instance main fr-par/11111111-1111-1111-1111-111111111111
724
961
  ```
725
962
 
726
963
  :param str resource_name: The name of the resource.
@@ -738,21 +975,25 @@ class Instance(pulumi.CustomResource):
738
975
  def _internal_init(__self__,
739
976
  resource_name: str,
740
977
  opts: Optional[pulumi.ResourceOptions] = None,
741
- name: Optional[pulumi.Input[str]] = None,
742
- node_number: Optional[pulumi.Input[int]] = None,
743
- node_type: Optional[pulumi.Input[str]] = None,
744
- password: Optional[pulumi.Input[str]] = None,
978
+ is_snapshot_schedule_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
979
+ name: Optional[pulumi.Input[_builtins.str]] = None,
980
+ node_number: Optional[pulumi.Input[_builtins.int]] = None,
981
+ node_type: Optional[pulumi.Input[_builtins.str]] = None,
982
+ password: Optional[pulumi.Input[_builtins.str]] = None,
983
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstancePrivateIpArgs', 'InstancePrivateIpArgsDict']]]]] = None,
745
984
  private_network: Optional[pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']]] = None,
746
- project_id: Optional[pulumi.Input[str]] = None,
985
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
747
986
  public_network: Optional[pulumi.Input[Union['InstancePublicNetworkArgs', 'InstancePublicNetworkArgsDict']]] = None,
748
- region: Optional[pulumi.Input[str]] = None,
749
- settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
750
- snapshot_id: Optional[pulumi.Input[str]] = None,
751
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
752
- user_name: Optional[pulumi.Input[str]] = None,
753
- version: Optional[pulumi.Input[str]] = None,
754
- volume_size_in_gb: Optional[pulumi.Input[int]] = None,
755
- volume_type: Optional[pulumi.Input[str]] = None,
987
+ region: Optional[pulumi.Input[_builtins.str]] = None,
988
+ settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
989
+ snapshot_id: Optional[pulumi.Input[_builtins.str]] = None,
990
+ snapshot_schedule_frequency_hours: Optional[pulumi.Input[_builtins.int]] = None,
991
+ snapshot_schedule_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
992
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
993
+ user_name: Optional[pulumi.Input[_builtins.str]] = None,
994
+ version: Optional[pulumi.Input[_builtins.str]] = None,
995
+ volume_size_in_gb: Optional[pulumi.Input[_builtins.int]] = None,
996
+ volume_type: Optional[pulumi.Input[_builtins.str]] = None,
756
997
  __props__=None):
757
998
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
758
999
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -762,6 +1003,7 @@ class Instance(pulumi.CustomResource):
762
1003
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
763
1004
  __props__ = InstanceArgs.__new__(InstanceArgs)
764
1005
 
1006
+ __props__.__dict__["is_snapshot_schedule_enabled"] = is_snapshot_schedule_enabled
765
1007
  __props__.__dict__["name"] = name
766
1008
  if node_number is None and not opts.urn:
767
1009
  raise TypeError("Missing required property 'node_number'")
@@ -770,18 +1012,22 @@ class Instance(pulumi.CustomResource):
770
1012
  raise TypeError("Missing required property 'node_type'")
771
1013
  __props__.__dict__["node_type"] = node_type
772
1014
  __props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
1015
+ __props__.__dict__["private_ips"] = private_ips
773
1016
  __props__.__dict__["private_network"] = private_network
774
1017
  __props__.__dict__["project_id"] = project_id
775
1018
  __props__.__dict__["public_network"] = public_network
776
1019
  __props__.__dict__["region"] = region
777
1020
  __props__.__dict__["settings"] = settings
778
1021
  __props__.__dict__["snapshot_id"] = snapshot_id
1022
+ __props__.__dict__["snapshot_schedule_frequency_hours"] = snapshot_schedule_frequency_hours
1023
+ __props__.__dict__["snapshot_schedule_retention_days"] = snapshot_schedule_retention_days
779
1024
  __props__.__dict__["tags"] = tags
780
1025
  __props__.__dict__["user_name"] = user_name
781
1026
  __props__.__dict__["version"] = version
782
1027
  __props__.__dict__["volume_size_in_gb"] = volume_size_in_gb
783
1028
  __props__.__dict__["volume_type"] = volume_type
784
1029
  __props__.__dict__["created_at"] = None
1030
+ __props__.__dict__["tls_certificate"] = None
785
1031
  __props__.__dict__["updated_at"] = None
786
1032
  alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/mongoDbInstance:MongoDbInstance")])
787
1033
  opts = pulumi.ResourceOptions.merge(opts, alias_opts)
@@ -797,23 +1043,28 @@ class Instance(pulumi.CustomResource):
797
1043
  def get(resource_name: str,
798
1044
  id: pulumi.Input[str],
799
1045
  opts: Optional[pulumi.ResourceOptions] = None,
800
- created_at: Optional[pulumi.Input[str]] = None,
801
- name: Optional[pulumi.Input[str]] = None,
802
- node_number: Optional[pulumi.Input[int]] = None,
803
- node_type: Optional[pulumi.Input[str]] = None,
804
- password: Optional[pulumi.Input[str]] = None,
1046
+ created_at: Optional[pulumi.Input[_builtins.str]] = None,
1047
+ is_snapshot_schedule_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
1048
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1049
+ node_number: Optional[pulumi.Input[_builtins.int]] = None,
1050
+ node_type: Optional[pulumi.Input[_builtins.str]] = None,
1051
+ password: Optional[pulumi.Input[_builtins.str]] = None,
1052
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstancePrivateIpArgs', 'InstancePrivateIpArgsDict']]]]] = None,
805
1053
  private_network: Optional[pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']]] = None,
806
- project_id: Optional[pulumi.Input[str]] = None,
1054
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
807
1055
  public_network: Optional[pulumi.Input[Union['InstancePublicNetworkArgs', 'InstancePublicNetworkArgsDict']]] = None,
808
- region: Optional[pulumi.Input[str]] = None,
809
- settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
810
- snapshot_id: Optional[pulumi.Input[str]] = None,
811
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
812
- updated_at: Optional[pulumi.Input[str]] = None,
813
- user_name: Optional[pulumi.Input[str]] = None,
814
- version: Optional[pulumi.Input[str]] = None,
815
- volume_size_in_gb: Optional[pulumi.Input[int]] = None,
816
- volume_type: Optional[pulumi.Input[str]] = None) -> 'Instance':
1056
+ region: Optional[pulumi.Input[_builtins.str]] = None,
1057
+ settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1058
+ snapshot_id: Optional[pulumi.Input[_builtins.str]] = None,
1059
+ snapshot_schedule_frequency_hours: Optional[pulumi.Input[_builtins.int]] = None,
1060
+ snapshot_schedule_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
1061
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1062
+ tls_certificate: Optional[pulumi.Input[_builtins.str]] = None,
1063
+ updated_at: Optional[pulumi.Input[_builtins.str]] = None,
1064
+ user_name: Optional[pulumi.Input[_builtins.str]] = None,
1065
+ version: Optional[pulumi.Input[_builtins.str]] = None,
1066
+ volume_size_in_gb: Optional[pulumi.Input[_builtins.int]] = None,
1067
+ volume_type: Optional[pulumi.Input[_builtins.str]] = None) -> 'Instance':
817
1068
  """
818
1069
  Get an existing Instance resource's state with the given name, id, and optional extra
819
1070
  properties used to qualify the lookup.
@@ -821,40 +1072,50 @@ class Instance(pulumi.CustomResource):
821
1072
  :param str resource_name: The unique name of the resulting resource.
822
1073
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
823
1074
  :param pulumi.ResourceOptions opts: Options for the resource.
824
- :param pulumi.Input[str] created_at: The date and time of the creation of the MongoDB® instance.
825
- :param pulumi.Input[str] name: Name of the MongoDB® instance.
826
- :param pulumi.Input[int] node_number: Number of nodes in the instance
827
- :param pulumi.Input[str] node_type: The type of MongoDB® intance to create.
828
- :param pulumi.Input[str] password: Password of the user.
1075
+ :param pulumi.Input[_builtins.str] created_at: The date and time of the creation of the MongoDB® instance.
1076
+ :param pulumi.Input[_builtins.bool] is_snapshot_schedule_enabled: Whether automatic snapshot scheduling is enabled.
1077
+ :param pulumi.Input[_builtins.str] name: Name of the MongoDB® instance.
1078
+ :param pulumi.Input[_builtins.int] node_number: Number of nodes in the instance
1079
+ :param pulumi.Input[_builtins.str] node_type: The type of MongoDB® instance to create.
1080
+ :param pulumi.Input[_builtins.str] password: Password of the user.
1081
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstancePrivateIpArgs', 'InstancePrivateIpArgsDict']]]] private_ips: The private IPv4 address associated with the instance.
829
1082
  :param pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']] private_network: Private Network endpoints of the Database Instance.
830
- :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
831
- :param pulumi.Input[Union['InstancePublicNetworkArgs', 'InstancePublicNetworkArgsDict']] public_network: Public network specs details.
832
- :param pulumi.Input[str] region: The region you want to attach the resource to
833
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of settings to define for the instance.
834
- :param pulumi.Input[str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
835
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: List of tags attached to the MongoDB® instance.
836
- :param pulumi.Input[str] updated_at: The date and time of the last update of the MongoDB® instance.
837
- :param pulumi.Input[str] user_name: Name of the user created when the intance is created.
838
- :param pulumi.Input[str] version: MongoDB® version of the instance.
839
- :param pulumi.Input[int] volume_size_in_gb: Volume size in GB.
840
- :param pulumi.Input[str] volume_type: Volume type of the instance.
1083
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the MongoDB® instance is associated with.
1084
+ :param pulumi.Input[Union['InstancePublicNetworkArgs', 'InstancePublicNetworkArgsDict']] public_network: Public network endpoint configuration (no arguments).
1085
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the MongoDB® instance should be created.
1086
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] settings: Map of settings to define for the instance.
1087
+ :param pulumi.Input[_builtins.str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
1088
+ :param pulumi.Input[_builtins.int] snapshot_schedule_frequency_hours: Snapshot schedule frequency in hours.
1089
+ :param pulumi.Input[_builtins.int] snapshot_schedule_retention_days: Snapshot schedule retention in days.
1090
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: List of tags attached to the MongoDB® instance.
1091
+ :param pulumi.Input[_builtins.str] tls_certificate: The PEM-encoded TLS certificate for the MongoDB® instance, if available.
1092
+ :param pulumi.Input[_builtins.str] updated_at: The date and time of the last update of the MongoDB® instance.
1093
+ :param pulumi.Input[_builtins.str] user_name: Name of the user created when the instance is created.
1094
+ :param pulumi.Input[_builtins.str] version: MongoDB® version of the instance.
1095
+ :param pulumi.Input[_builtins.int] volume_size_in_gb: Volume size in GB.
1096
+ :param pulumi.Input[_builtins.str] volume_type: Volume type of the instance.
841
1097
  """
842
1098
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
843
1099
 
844
1100
  __props__ = _InstanceState.__new__(_InstanceState)
845
1101
 
846
1102
  __props__.__dict__["created_at"] = created_at
1103
+ __props__.__dict__["is_snapshot_schedule_enabled"] = is_snapshot_schedule_enabled
847
1104
  __props__.__dict__["name"] = name
848
1105
  __props__.__dict__["node_number"] = node_number
849
1106
  __props__.__dict__["node_type"] = node_type
850
1107
  __props__.__dict__["password"] = password
1108
+ __props__.__dict__["private_ips"] = private_ips
851
1109
  __props__.__dict__["private_network"] = private_network
852
1110
  __props__.__dict__["project_id"] = project_id
853
1111
  __props__.__dict__["public_network"] = public_network
854
1112
  __props__.__dict__["region"] = region
855
1113
  __props__.__dict__["settings"] = settings
856
1114
  __props__.__dict__["snapshot_id"] = snapshot_id
1115
+ __props__.__dict__["snapshot_schedule_frequency_hours"] = snapshot_schedule_frequency_hours
1116
+ __props__.__dict__["snapshot_schedule_retention_days"] = snapshot_schedule_retention_days
857
1117
  __props__.__dict__["tags"] = tags
1118
+ __props__.__dict__["tls_certificate"] = tls_certificate
858
1119
  __props__.__dict__["updated_at"] = updated_at
859
1120
  __props__.__dict__["user_name"] = user_name
860
1121
  __props__.__dict__["version"] = version
@@ -862,47 +1123,63 @@ class Instance(pulumi.CustomResource):
862
1123
  __props__.__dict__["volume_type"] = volume_type
863
1124
  return Instance(resource_name, opts=opts, __props__=__props__)
864
1125
 
865
- @property
1126
+ @_builtins.property
866
1127
  @pulumi.getter(name="createdAt")
867
- def created_at(self) -> pulumi.Output[str]:
1128
+ def created_at(self) -> pulumi.Output[_builtins.str]:
868
1129
  """
869
1130
  The date and time of the creation of the MongoDB® instance.
870
1131
  """
871
1132
  return pulumi.get(self, "created_at")
872
1133
 
873
- @property
1134
+ @_builtins.property
1135
+ @pulumi.getter(name="isSnapshotScheduleEnabled")
1136
+ def is_snapshot_schedule_enabled(self) -> pulumi.Output[_builtins.bool]:
1137
+ """
1138
+ Whether automatic snapshot scheduling is enabled.
1139
+ """
1140
+ return pulumi.get(self, "is_snapshot_schedule_enabled")
1141
+
1142
+ @_builtins.property
874
1143
  @pulumi.getter
875
- def name(self) -> pulumi.Output[str]:
1144
+ def name(self) -> pulumi.Output[_builtins.str]:
876
1145
  """
877
1146
  Name of the MongoDB® instance.
878
1147
  """
879
1148
  return pulumi.get(self, "name")
880
1149
 
881
- @property
1150
+ @_builtins.property
882
1151
  @pulumi.getter(name="nodeNumber")
883
- def node_number(self) -> pulumi.Output[int]:
1152
+ def node_number(self) -> pulumi.Output[_builtins.int]:
884
1153
  """
885
1154
  Number of nodes in the instance
886
1155
  """
887
1156
  return pulumi.get(self, "node_number")
888
1157
 
889
- @property
1158
+ @_builtins.property
890
1159
  @pulumi.getter(name="nodeType")
891
- def node_type(self) -> pulumi.Output[str]:
1160
+ def node_type(self) -> pulumi.Output[_builtins.str]:
892
1161
  """
893
- The type of MongoDB® intance to create.
1162
+ The type of MongoDB® instance to create.
894
1163
  """
895
1164
  return pulumi.get(self, "node_type")
896
1165
 
897
- @property
1166
+ @_builtins.property
898
1167
  @pulumi.getter
899
- def password(self) -> pulumi.Output[Optional[str]]:
1168
+ def password(self) -> pulumi.Output[Optional[_builtins.str]]:
900
1169
  """
901
1170
  Password of the user.
902
1171
  """
903
1172
  return pulumi.get(self, "password")
904
1173
 
905
- @property
1174
+ @_builtins.property
1175
+ @pulumi.getter(name="privateIps")
1176
+ def private_ips(self) -> pulumi.Output[Sequence['outputs.InstancePrivateIp']]:
1177
+ """
1178
+ The private IPv4 address associated with the instance.
1179
+ """
1180
+ return pulumi.get(self, "private_ips")
1181
+
1182
+ @_builtins.property
906
1183
  @pulumi.getter(name="privateNetwork")
907
1184
  def private_network(self) -> pulumi.Output[Optional['outputs.InstancePrivateNetwork']]:
908
1185
  """
@@ -910,89 +1187,113 @@ class Instance(pulumi.CustomResource):
910
1187
  """
911
1188
  return pulumi.get(self, "private_network")
912
1189
 
913
- @property
1190
+ @_builtins.property
914
1191
  @pulumi.getter(name="projectId")
915
- def project_id(self) -> pulumi.Output[str]:
1192
+ def project_id(self) -> pulumi.Output[_builtins.str]:
916
1193
  """
917
- The project_id you want to attach the resource to
1194
+ `project_id`) The ID of the project the MongoDB® instance is associated with.
918
1195
  """
919
1196
  return pulumi.get(self, "project_id")
920
1197
 
921
- @property
1198
+ @_builtins.property
922
1199
  @pulumi.getter(name="publicNetwork")
923
1200
  def public_network(self) -> pulumi.Output['outputs.InstancePublicNetwork']:
924
1201
  """
925
- Public network specs details.
1202
+ Public network endpoint configuration (no arguments).
926
1203
  """
927
1204
  return pulumi.get(self, "public_network")
928
1205
 
929
- @property
1206
+ @_builtins.property
930
1207
  @pulumi.getter
931
- def region(self) -> pulumi.Output[str]:
1208
+ def region(self) -> pulumi.Output[Optional[_builtins.str]]:
932
1209
  """
933
- The region you want to attach the resource to
1210
+ `region`) The region in which the MongoDB® instance should be created.
934
1211
  """
935
1212
  return pulumi.get(self, "region")
936
1213
 
937
- @property
1214
+ @_builtins.property
938
1215
  @pulumi.getter
939
- def settings(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
1216
+ def settings(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
940
1217
  """
941
1218
  Map of settings to define for the instance.
942
1219
  """
943
1220
  return pulumi.get(self, "settings")
944
1221
 
945
- @property
1222
+ @_builtins.property
946
1223
  @pulumi.getter(name="snapshotId")
947
- def snapshot_id(self) -> pulumi.Output[Optional[str]]:
1224
+ def snapshot_id(self) -> pulumi.Output[Optional[_builtins.str]]:
948
1225
  """
949
1226
  Snapshot ID to restore the MongoDB® instance from.
950
1227
  """
951
1228
  return pulumi.get(self, "snapshot_id")
952
1229
 
953
- @property
1230
+ @_builtins.property
1231
+ @pulumi.getter(name="snapshotScheduleFrequencyHours")
1232
+ def snapshot_schedule_frequency_hours(self) -> pulumi.Output[_builtins.int]:
1233
+ """
1234
+ Snapshot schedule frequency in hours.
1235
+ """
1236
+ return pulumi.get(self, "snapshot_schedule_frequency_hours")
1237
+
1238
+ @_builtins.property
1239
+ @pulumi.getter(name="snapshotScheduleRetentionDays")
1240
+ def snapshot_schedule_retention_days(self) -> pulumi.Output[_builtins.int]:
1241
+ """
1242
+ Snapshot schedule retention in days.
1243
+ """
1244
+ return pulumi.get(self, "snapshot_schedule_retention_days")
1245
+
1246
+ @_builtins.property
954
1247
  @pulumi.getter
955
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1248
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
956
1249
  """
957
1250
  List of tags attached to the MongoDB® instance.
958
1251
  """
959
1252
  return pulumi.get(self, "tags")
960
1253
 
961
- @property
1254
+ @_builtins.property
1255
+ @pulumi.getter(name="tlsCertificate")
1256
+ def tls_certificate(self) -> pulumi.Output[_builtins.str]:
1257
+ """
1258
+ The PEM-encoded TLS certificate for the MongoDB® instance, if available.
1259
+ """
1260
+ return pulumi.get(self, "tls_certificate")
1261
+
1262
+ @_builtins.property
962
1263
  @pulumi.getter(name="updatedAt")
963
- def updated_at(self) -> pulumi.Output[str]:
1264
+ def updated_at(self) -> pulumi.Output[_builtins.str]:
964
1265
  """
965
1266
  The date and time of the last update of the MongoDB® instance.
966
1267
  """
967
1268
  return pulumi.get(self, "updated_at")
968
1269
 
969
- @property
1270
+ @_builtins.property
970
1271
  @pulumi.getter(name="userName")
971
- def user_name(self) -> pulumi.Output[Optional[str]]:
1272
+ def user_name(self) -> pulumi.Output[Optional[_builtins.str]]:
972
1273
  """
973
- Name of the user created when the intance is created.
1274
+ Name of the user created when the instance is created.
974
1275
  """
975
1276
  return pulumi.get(self, "user_name")
976
1277
 
977
- @property
1278
+ @_builtins.property
978
1279
  @pulumi.getter
979
- def version(self) -> pulumi.Output[str]:
1280
+ def version(self) -> pulumi.Output[_builtins.str]:
980
1281
  """
981
1282
  MongoDB® version of the instance.
982
1283
  """
983
1284
  return pulumi.get(self, "version")
984
1285
 
985
- @property
1286
+ @_builtins.property
986
1287
  @pulumi.getter(name="volumeSizeInGb")
987
- def volume_size_in_gb(self) -> pulumi.Output[int]:
1288
+ def volume_size_in_gb(self) -> pulumi.Output[_builtins.int]:
988
1289
  """
989
1290
  Volume size in GB.
990
1291
  """
991
1292
  return pulumi.get(self, "volume_size_in_gb")
992
1293
 
993
- @property
1294
+ @_builtins.property
994
1295
  @pulumi.getter(name="volumeType")
995
- def volume_type(self) -> pulumi.Output[Optional[str]]:
1296
+ def volume_type(self) -> pulumi.Output[Optional[_builtins.str]]:
996
1297
  """
997
1298
  Volume type of the instance.
998
1299
  """