pulumiverse-scaleway 1.25.0a1742288097__py3-none-any.whl → 1.25.0a1742668904__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.
- pulumiverse_scaleway/__init__.py +929 -0
- pulumiverse_scaleway/account/__init__.py +12 -0
- pulumiverse_scaleway/account/get_availability_zones.py +139 -0
- pulumiverse_scaleway/account/get_project.py +170 -0
- pulumiverse_scaleway/account/get_ssh_key.py +205 -0
- pulumiverse_scaleway/account/project.py +318 -0
- pulumiverse_scaleway/account/ssh_key.py +456 -0
- pulumiverse_scaleway/account_project.py +6 -0
- pulumiverse_scaleway/account_ssh_key.py +12 -6
- pulumiverse_scaleway/apple_silicon_server.py +8 -2
- pulumiverse_scaleway/applesilicon/__init__.py +10 -0
- pulumiverse_scaleway/applesilicon/_inputs.py +154 -0
- pulumiverse_scaleway/applesilicon/outputs.py +119 -0
- pulumiverse_scaleway/applesilicon/server.py +690 -0
- pulumiverse_scaleway/baremetal_server.py +64 -58
- pulumiverse_scaleway/billing/__init__.py +10 -0
- pulumiverse_scaleway/billing/get_consumptions.py +134 -0
- pulumiverse_scaleway/billing/get_invoices.py +154 -0
- pulumiverse_scaleway/billing/outputs.py +288 -0
- pulumiverse_scaleway/block/__init__.py +11 -0
- pulumiverse_scaleway/block/get_snapshot.py +174 -0
- pulumiverse_scaleway/block/get_volume.py +199 -0
- pulumiverse_scaleway/block/snapshot.py +403 -0
- pulumiverse_scaleway/block/volume.py +576 -0
- pulumiverse_scaleway/block_snapshot.py +12 -6
- pulumiverse_scaleway/block_volume.py +16 -10
- pulumiverse_scaleway/cockpit.py +10 -4
- pulumiverse_scaleway/cockpit_alert_manager.py +12 -6
- pulumiverse_scaleway/cockpit_grafana_user.py +12 -6
- pulumiverse_scaleway/cockpit_source.py +12 -6
- pulumiverse_scaleway/cockpit_token.py +16 -10
- pulumiverse_scaleway/container.py +16 -10
- pulumiverse_scaleway/container_cron.py +14 -8
- pulumiverse_scaleway/container_domain.py +24 -18
- pulumiverse_scaleway/container_namespace.py +10 -4
- pulumiverse_scaleway/container_token.py +32 -26
- pulumiverse_scaleway/container_trigger.py +12 -6
- pulumiverse_scaleway/containers/__init__.py +17 -0
- pulumiverse_scaleway/containers/_inputs.py +389 -0
- pulumiverse_scaleway/containers/container.py +1635 -0
- pulumiverse_scaleway/containers/cron.py +460 -0
- pulumiverse_scaleway/containers/domain.py +408 -0
- pulumiverse_scaleway/containers/get_container.py +562 -0
- pulumiverse_scaleway/containers/get_namespace.py +283 -0
- pulumiverse_scaleway/containers/namespace.py +638 -0
- pulumiverse_scaleway/containers/outputs.py +412 -0
- pulumiverse_scaleway/containers/token.py +454 -0
- pulumiverse_scaleway/containers/trigger.py +482 -0
- pulumiverse_scaleway/database.py +10 -4
- pulumiverse_scaleway/database_acl.py +10 -4
- pulumiverse_scaleway/database_backup.py +14 -8
- pulumiverse_scaleway/database_instance.py +24 -18
- pulumiverse_scaleway/database_privilege.py +16 -10
- pulumiverse_scaleway/database_read_replica.py +22 -16
- pulumiverse_scaleway/database_user.py +10 -4
- pulumiverse_scaleway/databases/__init__.py +23 -0
- pulumiverse_scaleway/databases/_inputs.py +822 -0
- pulumiverse_scaleway/databases/acl.py +334 -0
- pulumiverse_scaleway/databases/database.py +409 -0
- pulumiverse_scaleway/databases/database_backup.py +576 -0
- pulumiverse_scaleway/databases/get_acl.py +143 -0
- pulumiverse_scaleway/databases/get_database.py +187 -0
- pulumiverse_scaleway/databases/get_database_backup.py +253 -0
- pulumiverse_scaleway/databases/get_instance.py +415 -0
- pulumiverse_scaleway/databases/get_privilege.py +181 -0
- pulumiverse_scaleway/databases/instance.py +1696 -0
- pulumiverse_scaleway/databases/outputs.py +866 -0
- pulumiverse_scaleway/databases/privilege.py +424 -0
- pulumiverse_scaleway/databases/read_replica.py +530 -0
- pulumiverse_scaleway/databases/serverless_database.py +434 -0
- pulumiverse_scaleway/databases/snapshot.py +610 -0
- pulumiverse_scaleway/databases/user.py +448 -0
- pulumiverse_scaleway/domain/__init__.py +13 -0
- pulumiverse_scaleway/domain/_inputs.py +341 -0
- pulumiverse_scaleway/domain/get_record.py +340 -0
- pulumiverse_scaleway/domain/get_zone.py +201 -0
- pulumiverse_scaleway/domain/outputs.py +408 -0
- pulumiverse_scaleway/domain/record.py +1118 -0
- pulumiverse_scaleway/domain/zone.py +432 -0
- pulumiverse_scaleway/domain_record.py +36 -30
- pulumiverse_scaleway/domain_zone.py +6 -0
- pulumiverse_scaleway/elasticmetal/__init__.py +18 -0
- pulumiverse_scaleway/elasticmetal/_inputs.py +509 -0
- pulumiverse_scaleway/elasticmetal/get_ip.py +247 -0
- pulumiverse_scaleway/elasticmetal/get_ips.py +240 -0
- pulumiverse_scaleway/elasticmetal/get_offer.py +245 -0
- pulumiverse_scaleway/elasticmetal/get_option.py +168 -0
- pulumiverse_scaleway/elasticmetal/get_os.py +174 -0
- pulumiverse_scaleway/elasticmetal/get_server.py +422 -0
- pulumiverse_scaleway/elasticmetal/ip.py +704 -0
- pulumiverse_scaleway/elasticmetal/ip_mac_address.py +512 -0
- pulumiverse_scaleway/elasticmetal/outputs.py +974 -0
- pulumiverse_scaleway/elasticmetal/server.py +1591 -0
- pulumiverse_scaleway/flexible_ip.py +22 -16
- pulumiverse_scaleway/flexible_ip_mac_address.py +22 -16
- pulumiverse_scaleway/function.py +6 -0
- pulumiverse_scaleway/function_cron.py +16 -10
- pulumiverse_scaleway/function_domain.py +16 -10
- pulumiverse_scaleway/function_namespace.py +10 -4
- pulumiverse_scaleway/function_token.py +32 -26
- pulumiverse_scaleway/function_trigger.py +12 -6
- pulumiverse_scaleway/functions/__init__.py +17 -0
- pulumiverse_scaleway/functions/_inputs.py +211 -0
- pulumiverse_scaleway/functions/cron.py +464 -0
- pulumiverse_scaleway/functions/domain.py +372 -0
- pulumiverse_scaleway/functions/function.py +1105 -0
- pulumiverse_scaleway/functions/get_function.py +365 -0
- pulumiverse_scaleway/functions/get_namespace.py +238 -0
- pulumiverse_scaleway/functions/namespace.py +582 -0
- pulumiverse_scaleway/functions/outputs.py +168 -0
- pulumiverse_scaleway/functions/token.py +462 -0
- pulumiverse_scaleway/functions/trigger.py +482 -0
- pulumiverse_scaleway/get_account_project.py +6 -2
- pulumiverse_scaleway/get_account_ssh_key.py +6 -2
- pulumiverse_scaleway/get_availability_zones.py +8 -4
- pulumiverse_scaleway/get_baremetal_offer.py +4 -0
- pulumiverse_scaleway/get_baremetal_option.py +8 -4
- pulumiverse_scaleway/get_baremetal_os.py +8 -4
- pulumiverse_scaleway/get_baremetal_server.py +8 -4
- pulumiverse_scaleway/get_billing_consumptions.py +4 -0
- pulumiverse_scaleway/get_billing_invoices.py +4 -0
- pulumiverse_scaleway/get_block_snapshot.py +6 -2
- pulumiverse_scaleway/get_block_volume.py +6 -2
- pulumiverse_scaleway/get_cockpit.py +12 -8
- pulumiverse_scaleway/get_cockpit_plan.py +10 -6
- pulumiverse_scaleway/get_cockpit_source.py +8 -4
- pulumiverse_scaleway/get_container.py +16 -12
- pulumiverse_scaleway/get_container_namespace.py +10 -6
- pulumiverse_scaleway/get_database.py +6 -2
- pulumiverse_scaleway/get_database_acl.py +6 -2
- pulumiverse_scaleway/get_database_backup.py +10 -6
- pulumiverse_scaleway/get_database_instance.py +4 -0
- pulumiverse_scaleway/get_database_privilege.py +6 -2
- pulumiverse_scaleway/get_domain_record.py +10 -6
- pulumiverse_scaleway/get_domain_zone.py +4 -0
- pulumiverse_scaleway/get_flexible_ip.py +4 -0
- pulumiverse_scaleway/get_flexible_ips.py +16 -12
- pulumiverse_scaleway/get_function.py +6 -2
- pulumiverse_scaleway/get_function_namespace.py +6 -2
- pulumiverse_scaleway/get_iam_api_key.py +6 -2
- pulumiverse_scaleway/get_iam_application.py +8 -4
- pulumiverse_scaleway/get_iam_group.py +8 -4
- pulumiverse_scaleway/get_iam_ssh_key.py +4 -0
- pulumiverse_scaleway/get_iam_user.py +8 -4
- pulumiverse_scaleway/get_instance_image.py +4 -0
- pulumiverse_scaleway/get_instance_ip.py +4 -0
- pulumiverse_scaleway/get_instance_placement_group.py +4 -0
- pulumiverse_scaleway/get_instance_private_nic.py +10 -6
- pulumiverse_scaleway/get_instance_security_group.py +4 -0
- pulumiverse_scaleway/get_instance_server.py +4 -0
- pulumiverse_scaleway/get_instance_servers.py +4 -0
- pulumiverse_scaleway/get_instance_snapshot.py +8 -4
- pulumiverse_scaleway/get_instance_volume.py +4 -0
- pulumiverse_scaleway/get_iot_device.py +4 -0
- pulumiverse_scaleway/get_iot_hub.py +4 -0
- pulumiverse_scaleway/get_ipam_ip.py +18 -14
- pulumiverse_scaleway/get_ipam_ips.py +14 -10
- pulumiverse_scaleway/get_k8s_version.py +8 -4
- pulumiverse_scaleway/get_kubernetes_cluster.py +4 -0
- pulumiverse_scaleway/get_kubernetes_node_pool.py +4 -0
- pulumiverse_scaleway/get_lb_acls.py +8 -4
- pulumiverse_scaleway/get_lb_backend.py +18 -14
- pulumiverse_scaleway/get_lb_backends.py +8 -4
- pulumiverse_scaleway/get_lb_frontend.py +16 -12
- pulumiverse_scaleway/get_lb_frontends.py +8 -4
- pulumiverse_scaleway/get_lb_ips.py +4 -0
- pulumiverse_scaleway/get_lb_route.py +16 -12
- pulumiverse_scaleway/get_lb_routes.py +8 -4
- pulumiverse_scaleway/get_lbs.py +4 -0
- pulumiverse_scaleway/get_loadbalancer.py +8 -4
- pulumiverse_scaleway/get_loadbalancer_certificate.py +4 -0
- pulumiverse_scaleway/get_loadbalancer_ip.py +4 -0
- pulumiverse_scaleway/get_mnq_sns.py +8 -4
- pulumiverse_scaleway/get_mnq_sqs.py +8 -4
- pulumiverse_scaleway/get_mongo_db_instance.py +4 -0
- pulumiverse_scaleway/get_object_bucket.py +12 -8
- pulumiverse_scaleway/get_object_bucket_policy.py +8 -4
- pulumiverse_scaleway/get_redis_cluster.py +4 -0
- pulumiverse_scaleway/get_registry_image.py +4 -0
- pulumiverse_scaleway/get_registry_image_tag.py +4 -0
- pulumiverse_scaleway/get_registry_namespace.py +4 -0
- pulumiverse_scaleway/get_secret.py +12 -8
- pulumiverse_scaleway/get_secret_version.py +14 -10
- pulumiverse_scaleway/get_tem_domain.py +4 -0
- pulumiverse_scaleway/get_vpc.py +10 -6
- pulumiverse_scaleway/get_vpc_gateway_network.py +10 -6
- pulumiverse_scaleway/get_vpc_private_network.py +10 -6
- pulumiverse_scaleway/get_vpc_public_gateway.py +10 -6
- pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +8 -4
- pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +70 -66
- pulumiverse_scaleway/get_vpc_public_gateway_ip.py +8 -4
- pulumiverse_scaleway/get_vpc_public_pat_rule.py +26 -22
- pulumiverse_scaleway/get_vpc_routes.py +4 -0
- pulumiverse_scaleway/get_vpcs.py +4 -0
- pulumiverse_scaleway/get_web_host_offer.py +8 -4
- pulumiverse_scaleway/get_webhosting.py +8 -4
- pulumiverse_scaleway/hosting/__init__.py +12 -0
- pulumiverse_scaleway/hosting/_inputs.py +295 -0
- pulumiverse_scaleway/hosting/get_hosting.py +354 -0
- pulumiverse_scaleway/hosting/get_offer.py +229 -0
- pulumiverse_scaleway/hosting/hosting.py +870 -0
- pulumiverse_scaleway/hosting/outputs.py +626 -0
- pulumiverse_scaleway/iam/__init__.py +21 -0
- pulumiverse_scaleway/iam/_inputs.py +138 -0
- pulumiverse_scaleway/iam/api_key.py +622 -0
- pulumiverse_scaleway/iam/application.py +419 -0
- pulumiverse_scaleway/iam/get_api_key.py +210 -0
- pulumiverse_scaleway/iam/get_application.py +210 -0
- pulumiverse_scaleway/iam/get_group.py +236 -0
- pulumiverse_scaleway/iam/get_ssh_key.py +212 -0
- pulumiverse_scaleway/iam/get_user.py +177 -0
- pulumiverse_scaleway/iam/group.py +568 -0
- pulumiverse_scaleway/iam/group_membership.py +325 -0
- pulumiverse_scaleway/iam/outputs.py +111 -0
- pulumiverse_scaleway/iam/policy.py +775 -0
- pulumiverse_scaleway/iam/ssh_key.py +457 -0
- pulumiverse_scaleway/iam/user.py +515 -0
- pulumiverse_scaleway/iam_api_key.py +16 -10
- pulumiverse_scaleway/iam_application.py +8 -2
- pulumiverse_scaleway/iam_group.py +12 -6
- pulumiverse_scaleway/iam_group_membership.py +12 -6
- pulumiverse_scaleway/iam_policy.py +18 -12
- pulumiverse_scaleway/iam_ssh_key.py +8 -2
- pulumiverse_scaleway/iam_user.py +8 -2
- pulumiverse_scaleway/inference/__init__.py +10 -0
- pulumiverse_scaleway/inference/_inputs.py +209 -0
- pulumiverse_scaleway/inference/deployment.py +824 -0
- pulumiverse_scaleway/inference/outputs.py +169 -0
- pulumiverse_scaleway/inference_deployment.py +8 -2
- pulumiverse_scaleway/instance/__init__.py +29 -0
- pulumiverse_scaleway/instance/_inputs.py +1237 -0
- pulumiverse_scaleway/instance/get_image.py +305 -0
- pulumiverse_scaleway/instance/get_ip.py +204 -0
- pulumiverse_scaleway/instance/get_placement_group.py +212 -0
- pulumiverse_scaleway/instance/get_private_nic.py +226 -0
- pulumiverse_scaleway/instance/get_security_group.py +268 -0
- pulumiverse_scaleway/instance/get_server.py +488 -0
- pulumiverse_scaleway/instance/get_servers.py +187 -0
- pulumiverse_scaleway/instance/get_snapshot.py +248 -0
- pulumiverse_scaleway/instance/get_volume.py +226 -0
- pulumiverse_scaleway/instance/image.py +752 -0
- pulumiverse_scaleway/instance/ip.py +471 -0
- pulumiverse_scaleway/instance/ip_reverse_dns.py +310 -0
- pulumiverse_scaleway/instance/outputs.py +1533 -0
- pulumiverse_scaleway/instance/placement_group.py +481 -0
- pulumiverse_scaleway/instance/private_nic.py +557 -0
- pulumiverse_scaleway/instance/security_group.py +722 -0
- pulumiverse_scaleway/instance/security_group_rules.py +441 -0
- pulumiverse_scaleway/instance/server.py +1938 -0
- pulumiverse_scaleway/instance/snapshot.py +671 -0
- pulumiverse_scaleway/instance/user_data.py +437 -0
- pulumiverse_scaleway/instance/volume.py +584 -0
- pulumiverse_scaleway/instance_image.py +18 -12
- pulumiverse_scaleway/instance_ip.py +8 -2
- pulumiverse_scaleway/instance_ip_reverse_dns.py +12 -6
- pulumiverse_scaleway/instance_placement_group.py +8 -2
- pulumiverse_scaleway/instance_private_nic.py +24 -18
- pulumiverse_scaleway/instance_security_group.py +6 -0
- pulumiverse_scaleway/instance_security_group_rules.py +22 -16
- pulumiverse_scaleway/instance_server.py +74 -68
- pulumiverse_scaleway/instance_snapshot.py +22 -16
- pulumiverse_scaleway/instance_user_data.py +16 -10
- pulumiverse_scaleway/instance_volume.py +8 -2
- pulumiverse_scaleway/iot/__init__.py +15 -0
- pulumiverse_scaleway/iot/_inputs.py +539 -0
- pulumiverse_scaleway/iot/device.py +752 -0
- pulumiverse_scaleway/iot/get_device.py +257 -0
- pulumiverse_scaleway/iot/get_hub.py +322 -0
- pulumiverse_scaleway/iot/hub.py +898 -0
- pulumiverse_scaleway/iot/network.py +474 -0
- pulumiverse_scaleway/iot/outputs.py +465 -0
- pulumiverse_scaleway/iot/route.py +662 -0
- pulumiverse_scaleway/iot_device.py +14 -8
- pulumiverse_scaleway/iot_hub.py +8 -2
- pulumiverse_scaleway/iot_network.py +12 -6
- pulumiverse_scaleway/iot_route.py +32 -26
- pulumiverse_scaleway/ipam/__init__.py +13 -0
- pulumiverse_scaleway/ipam/_inputs.py +442 -0
- pulumiverse_scaleway/ipam/get_ip.py +419 -0
- pulumiverse_scaleway/ipam/get_ips.py +358 -0
- pulumiverse_scaleway/ipam/ip.py +759 -0
- pulumiverse_scaleway/ipam/ip_reverse_dns.py +320 -0
- pulumiverse_scaleway/ipam/outputs.py +481 -0
- pulumiverse_scaleway/ipam_ip.py +30 -24
- pulumiverse_scaleway/ipam_ip_reverse_dns.py +6 -0
- pulumiverse_scaleway/job/__init__.py +10 -0
- pulumiverse_scaleway/job/_inputs.py +73 -0
- pulumiverse_scaleway/job/definition.py +694 -0
- pulumiverse_scaleway/job/outputs.py +49 -0
- pulumiverse_scaleway/job_definition.py +8 -2
- pulumiverse_scaleway/kubernetes/__init__.py +14 -0
- pulumiverse_scaleway/kubernetes/_inputs.py +717 -0
- pulumiverse_scaleway/kubernetes/cluster.py +1540 -0
- pulumiverse_scaleway/kubernetes/get_cluster.py +417 -0
- pulumiverse_scaleway/kubernetes/get_pool.py +436 -0
- pulumiverse_scaleway/kubernetes/get_version.py +196 -0
- pulumiverse_scaleway/kubernetes/outputs.py +944 -0
- pulumiverse_scaleway/kubernetes/pool.py +1313 -0
- pulumiverse_scaleway/kubernetes_cluster.py +36 -30
- pulumiverse_scaleway/kubernetes_node_pool.py +6 -0
- pulumiverse_scaleway/loadbalancer.py +35 -29
- pulumiverse_scaleway/loadbalancer_acl.py +8 -2
- pulumiverse_scaleway/loadbalancer_backend.py +10 -4
- pulumiverse_scaleway/loadbalancer_certificate.py +6 -0
- pulumiverse_scaleway/loadbalancer_frontend.py +10 -4
- pulumiverse_scaleway/loadbalancer_ip.py +10 -4
- pulumiverse_scaleway/loadbalancer_route.py +26 -20
- pulumiverse_scaleway/loadbalancers/__init__.py +28 -0
- pulumiverse_scaleway/loadbalancers/_inputs.py +1103 -0
- pulumiverse_scaleway/loadbalancers/acl.py +522 -0
- pulumiverse_scaleway/loadbalancers/backend.py +1590 -0
- pulumiverse_scaleway/loadbalancers/certificate.py +462 -0
- pulumiverse_scaleway/loadbalancers/frontend.py +831 -0
- pulumiverse_scaleway/loadbalancers/get_acls.py +198 -0
- pulumiverse_scaleway/loadbalancers/get_backend.py +486 -0
- pulumiverse_scaleway/loadbalancers/get_backends.py +196 -0
- pulumiverse_scaleway/loadbalancers/get_certificate.py +230 -0
- pulumiverse_scaleway/loadbalancers/get_frontend.py +274 -0
- pulumiverse_scaleway/loadbalancers/get_frontends.py +196 -0
- pulumiverse_scaleway/loadbalancers/get_ip.py +228 -0
- pulumiverse_scaleway/loadbalancers/get_ips.py +198 -0
- pulumiverse_scaleway/loadbalancers/get_load_balancer.py +339 -0
- pulumiverse_scaleway/loadbalancers/get_load_balancers.py +187 -0
- pulumiverse_scaleway/loadbalancers/get_route.py +217 -0
- pulumiverse_scaleway/loadbalancers/get_routes.py +179 -0
- pulumiverse_scaleway/loadbalancers/ip.py +516 -0
- pulumiverse_scaleway/loadbalancers/load_balancer.py +1063 -0
- pulumiverse_scaleway/loadbalancers/outputs.py +2491 -0
- pulumiverse_scaleway/loadbalancers/route.py +525 -0
- pulumiverse_scaleway/mnq/__init__.py +20 -0
- pulumiverse_scaleway/mnq/_inputs.py +169 -0
- pulumiverse_scaleway/mnq/get_sns.py +150 -0
- pulumiverse_scaleway/mnq/get_sqs.py +150 -0
- pulumiverse_scaleway/mnq/nats_account.py +336 -0
- pulumiverse_scaleway/mnq/nats_credentials.py +332 -0
- pulumiverse_scaleway/mnq/outputs.py +149 -0
- pulumiverse_scaleway/mnq/sns.py +308 -0
- pulumiverse_scaleway/mnq/sns_credentials.py +415 -0
- pulumiverse_scaleway/mnq/sns_topic.py +661 -0
- pulumiverse_scaleway/mnq/sns_topic_subscription.py +701 -0
- pulumiverse_scaleway/mnq/sqs.py +306 -0
- pulumiverse_scaleway/mnq/sqs_credentials.py +415 -0
- pulumiverse_scaleway/mnq/sqs_queue.py +802 -0
- pulumiverse_scaleway/mnq_nats_account.py +8 -2
- pulumiverse_scaleway/mnq_nats_credentials.py +10 -4
- pulumiverse_scaleway/mnq_sns.py +12 -6
- pulumiverse_scaleway/mnq_sns_credentials.py +10 -4
- pulumiverse_scaleway/mnq_sns_topic.py +16 -10
- pulumiverse_scaleway/mnq_sns_topic_subscription.py +22 -16
- pulumiverse_scaleway/mnq_sqs.py +12 -6
- pulumiverse_scaleway/mnq_sqs_credentials.py +10 -4
- pulumiverse_scaleway/mnq_sqs_queue.py +16 -10
- pulumiverse_scaleway/mongo_db_instance.py +14 -8
- pulumiverse_scaleway/mongo_db_snapshot.py +8 -2
- pulumiverse_scaleway/mongodb/__init__.py +12 -0
- pulumiverse_scaleway/mongodb/_inputs.py +208 -0
- pulumiverse_scaleway/mongodb/get_instance.py +335 -0
- pulumiverse_scaleway/mongodb/instance.py +1000 -0
- pulumiverse_scaleway/mongodb/outputs.py +270 -0
- pulumiverse_scaleway/mongodb/snapshot.py +523 -0
- pulumiverse_scaleway/network/__init__.py +29 -0
- pulumiverse_scaleway/network/_inputs.py +383 -0
- pulumiverse_scaleway/network/gateway_network.py +868 -0
- pulumiverse_scaleway/network/get_gateway_network.py +287 -0
- pulumiverse_scaleway/network/get_private_network.py +282 -0
- pulumiverse_scaleway/network/get_public_gateway.py +304 -0
- pulumiverse_scaleway/network/get_public_gateway_dhcp.py +305 -0
- pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +382 -0
- pulumiverse_scaleway/network/get_public_gateway_ip.py +199 -0
- pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +313 -0
- pulumiverse_scaleway/network/get_routes.py +208 -0
- pulumiverse_scaleway/network/get_vpc.py +246 -0
- pulumiverse_scaleway/network/get_vpcs.py +174 -0
- pulumiverse_scaleway/network/outputs.py +747 -0
- pulumiverse_scaleway/network/private_network.py +736 -0
- pulumiverse_scaleway/network/public_gateway.py +791 -0
- pulumiverse_scaleway/network/public_gateway_dhcp.py +949 -0
- pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +516 -0
- pulumiverse_scaleway/network/public_gateway_ip.py +459 -0
- pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +308 -0
- pulumiverse_scaleway/network/public_gateway_pat_rule.py +593 -0
- pulumiverse_scaleway/network/route.py +579 -0
- pulumiverse_scaleway/network/vpc.py +538 -0
- pulumiverse_scaleway/object/__init__.py +17 -0
- pulumiverse_scaleway/object/_inputs.py +831 -0
- pulumiverse_scaleway/object/bucket.py +876 -0
- pulumiverse_scaleway/object/bucket_acl.py +598 -0
- pulumiverse_scaleway/object/bucket_lock_configuration.py +397 -0
- pulumiverse_scaleway/object/bucket_policy.py +675 -0
- pulumiverse_scaleway/object/bucket_website_configuration.py +536 -0
- pulumiverse_scaleway/object/get_bucket.py +290 -0
- pulumiverse_scaleway/object/get_bucket_policy.py +163 -0
- pulumiverse_scaleway/object/item.py +778 -0
- pulumiverse_scaleway/object/outputs.py +802 -0
- pulumiverse_scaleway/object_bucket.py +28 -22
- pulumiverse_scaleway/object_bucket_acl.py +14 -8
- pulumiverse_scaleway/object_bucket_lock_configuration.py +12 -6
- pulumiverse_scaleway/object_bucket_policy.py +46 -40
- pulumiverse_scaleway/object_bucket_website_configuration.py +18 -12
- pulumiverse_scaleway/object_item.py +8 -2
- pulumiverse_scaleway/observability/__init__.py +17 -0
- pulumiverse_scaleway/observability/_inputs.py +417 -0
- pulumiverse_scaleway/observability/alert_manager.py +403 -0
- pulumiverse_scaleway/observability/cockpit.py +325 -0
- pulumiverse_scaleway/observability/get_instance.py +205 -0
- pulumiverse_scaleway/observability/get_plan.py +125 -0
- pulumiverse_scaleway/observability/get_source.py +262 -0
- pulumiverse_scaleway/observability/grafana_user.py +364 -0
- pulumiverse_scaleway/observability/outputs.py +425 -0
- pulumiverse_scaleway/observability/source.py +569 -0
- pulumiverse_scaleway/observability/token.py +481 -0
- pulumiverse_scaleway/pulumi-plugin.json +1 -1
- pulumiverse_scaleway/rdb_snapshot.py +16 -10
- pulumiverse_scaleway/redis/__init__.py +11 -0
- pulumiverse_scaleway/redis/_inputs.py +330 -0
- pulumiverse_scaleway/redis/cluster.py +1203 -0
- pulumiverse_scaleway/redis/get_cluster.py +347 -0
- pulumiverse_scaleway/redis/outputs.py +356 -0
- pulumiverse_scaleway/redis_cluster.py +14 -8
- pulumiverse_scaleway/registry/__init__.py +11 -0
- pulumiverse_scaleway/registry/get_image.py +239 -0
- pulumiverse_scaleway/registry/get_image_tag.py +229 -0
- pulumiverse_scaleway/registry/get_namespace.py +199 -0
- pulumiverse_scaleway/registry/namespace.py +460 -0
- pulumiverse_scaleway/registry_namespace.py +8 -2
- pulumiverse_scaleway/sdb_database.py +10 -4
- pulumiverse_scaleway/secret.py +6 -0
- pulumiverse_scaleway/secret_version.py +12 -6
- pulumiverse_scaleway/secrets/__init__.py +13 -0
- pulumiverse_scaleway/secrets/_inputs.py +94 -0
- pulumiverse_scaleway/secrets/get_secret.py +338 -0
- pulumiverse_scaleway/secrets/get_version.py +340 -0
- pulumiverse_scaleway/secrets/outputs.py +120 -0
- pulumiverse_scaleway/secrets/secret.py +665 -0
- pulumiverse_scaleway/secrets/version.py +489 -0
- pulumiverse_scaleway/tem/__init__.py +13 -0
- pulumiverse_scaleway/tem/_inputs.py +135 -0
- pulumiverse_scaleway/tem/domain.py +1032 -0
- pulumiverse_scaleway/tem/domain_validation.py +305 -0
- pulumiverse_scaleway/tem/get_domain.py +378 -0
- pulumiverse_scaleway/tem/outputs.py +171 -0
- pulumiverse_scaleway/tem/webhook.py +642 -0
- pulumiverse_scaleway/tem_domain.py +20 -14
- pulumiverse_scaleway/tem_domain_validation.py +10 -4
- pulumiverse_scaleway/tem_webhook.py +28 -22
- pulumiverse_scaleway/vpc.py +10 -4
- pulumiverse_scaleway/vpc_gateway_network.py +40 -34
- pulumiverse_scaleway/vpc_private_network.py +10 -4
- pulumiverse_scaleway/vpc_public_gateway.py +8 -2
- pulumiverse_scaleway/vpc_public_gateway_dhcp.py +15 -9
- pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +32 -26
- pulumiverse_scaleway/vpc_public_gateway_ip.py +10 -4
- pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +12 -6
- pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +26 -20
- pulumiverse_scaleway/vpc_route.py +16 -10
- pulumiverse_scaleway/webhosting.py +10 -4
- {pulumiverse_scaleway-1.25.0a1742288097.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/METADATA +2 -2
- pulumiverse_scaleway-1.25.0a1742668904.dist-info/RECORD +470 -0
- {pulumiverse_scaleway-1.25.0a1742288097.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/WHEEL +1 -1
- pulumiverse_scaleway-1.25.0a1742288097.dist-info/RECORD +0 -206
- {pulumiverse_scaleway-1.25.0a1742288097.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1696 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import sys
|
8
|
+
import pulumi
|
9
|
+
import pulumi.runtime
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
11
|
+
if sys.version_info >= (3, 11):
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
13
|
+
else:
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
15
|
+
from .. import _utilities
|
16
|
+
from . import outputs
|
17
|
+
from ._inputs import *
|
18
|
+
|
19
|
+
__all__ = ['InstanceArgs', 'Instance']
|
20
|
+
|
21
|
+
@pulumi.input_type
|
22
|
+
class InstanceArgs:
|
23
|
+
def __init__(__self__, *,
|
24
|
+
node_type: pulumi.Input[str],
|
25
|
+
backup_same_region: Optional[pulumi.Input[bool]] = None,
|
26
|
+
backup_schedule_frequency: Optional[pulumi.Input[int]] = None,
|
27
|
+
backup_schedule_retention: Optional[pulumi.Input[int]] = None,
|
28
|
+
disable_backup: Optional[pulumi.Input[bool]] = None,
|
29
|
+
encryption_at_rest: Optional[pulumi.Input[bool]] = None,
|
30
|
+
engine: Optional[pulumi.Input[str]] = None,
|
31
|
+
init_settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
32
|
+
is_ha_cluster: Optional[pulumi.Input[bool]] = None,
|
33
|
+
load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceLoadBalancerArgs']]]] = None,
|
34
|
+
logs_policy: Optional[pulumi.Input['InstanceLogsPolicyArgs']] = None,
|
35
|
+
name: Optional[pulumi.Input[str]] = None,
|
36
|
+
password: Optional[pulumi.Input[str]] = None,
|
37
|
+
private_network: Optional[pulumi.Input['InstancePrivateNetworkArgs']] = None,
|
38
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
39
|
+
region: Optional[pulumi.Input[str]] = None,
|
40
|
+
settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
41
|
+
snapshot_id: Optional[pulumi.Input[str]] = None,
|
42
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
43
|
+
user_name: Optional[pulumi.Input[str]] = None,
|
44
|
+
volume_size_in_gb: Optional[pulumi.Input[int]] = None,
|
45
|
+
volume_type: Optional[pulumi.Input[str]] = None):
|
46
|
+
"""
|
47
|
+
The set of arguments for constructing a Instance resource.
|
48
|
+
:param pulumi.Input[str] node_type: The type of Database Instance you want to create (e.g. `db-dev-s`).
|
49
|
+
|
50
|
+
> **Important** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
|
51
|
+
interruption.
|
52
|
+
|
53
|
+
> **Important** Once your Database Instance reaches `disk_full` status, if you are using `lssd` storage, you should upgrade the `node_type`, and if you are using `bssd` storage, you should increase the volume size before making any other changes to your Database Instance.
|
54
|
+
:param pulumi.Input[bool] backup_same_region: Boolean to store logical backups in the same region as the database instance
|
55
|
+
:param pulumi.Input[int] backup_schedule_frequency: Backup schedule frequency in hours
|
56
|
+
:param pulumi.Input[int] backup_schedule_retention: Backup schedule retention in days
|
57
|
+
:param pulumi.Input[bool] disable_backup: Disable automated backup for the database instance
|
58
|
+
:param pulumi.Input[bool] encryption_at_rest: Enable or disable encryption at rest for the Database Instance.
|
59
|
+
:param pulumi.Input[str] engine: Database Instance's engine version (e.g. `PostgreSQL-11`).
|
60
|
+
|
61
|
+
> **Important** Updates to `engine` will recreate the Database Instance.
|
62
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] init_settings: Map of engine settings to be set at database initialisation.
|
63
|
+
:param pulumi.Input[bool] is_ha_cluster: Enable or disable high availability for the Database Instance.
|
64
|
+
|
65
|
+
> **Important** Updates to `is_ha_cluster` will recreate the Database Instance.
|
66
|
+
:param pulumi.Input[Sequence[pulumi.Input['InstanceLoadBalancerArgs']]] load_balancers: List of Load Balancer endpoints of the Database Instance.
|
67
|
+
:param pulumi.Input['InstanceLogsPolicyArgs'] logs_policy: Logs policy configuration
|
68
|
+
:param pulumi.Input[str] name: The name of the Database Instance.
|
69
|
+
:param pulumi.Input[str] password: Password for the first user of the Database Instance.
|
70
|
+
:param pulumi.Input['InstancePrivateNetworkArgs'] private_network: List of Private Networks endpoints of the Database Instance.
|
71
|
+
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the Database
|
72
|
+
Instance is associated with.
|
73
|
+
:param pulumi.Input[str] region: `region`) The region
|
74
|
+
in which the Database Instance should be created.
|
75
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of engine settings to be set on a running instance.
|
76
|
+
:param pulumi.Input[str] snapshot_id: ID of an existing snapshot to create a new instance from. This allows restoring a database instance to the state
|
77
|
+
captured in the specified snapshot. Conflicts with the `engine` attribute.
|
78
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the Database Instance.
|
79
|
+
:param pulumi.Input[str] user_name: Identifier for the first user of the Database Instance.
|
80
|
+
|
81
|
+
> **Important** Updates to `user_name` will recreate the Database Instance.
|
82
|
+
:param pulumi.Input[int] volume_size_in_gb: Volume size (in GB). Cannot be used when `volume_type` is set to `lssd`.
|
83
|
+
|
84
|
+
> **Important** Once your Database Instance reaches `disk_full` status, you should increase the volume size before making any other change to your Database Instance.
|
85
|
+
:param pulumi.Input[str] volume_type: Type of volume where data are stored (`bssd`, `lssd`, `sbs_5k` or `sbs_15k`).
|
86
|
+
"""
|
87
|
+
pulumi.set(__self__, "node_type", node_type)
|
88
|
+
if backup_same_region is not None:
|
89
|
+
pulumi.set(__self__, "backup_same_region", backup_same_region)
|
90
|
+
if backup_schedule_frequency is not None:
|
91
|
+
pulumi.set(__self__, "backup_schedule_frequency", backup_schedule_frequency)
|
92
|
+
if backup_schedule_retention is not None:
|
93
|
+
pulumi.set(__self__, "backup_schedule_retention", backup_schedule_retention)
|
94
|
+
if disable_backup is not None:
|
95
|
+
pulumi.set(__self__, "disable_backup", disable_backup)
|
96
|
+
if encryption_at_rest is not None:
|
97
|
+
pulumi.set(__self__, "encryption_at_rest", encryption_at_rest)
|
98
|
+
if engine is not None:
|
99
|
+
pulumi.set(__self__, "engine", engine)
|
100
|
+
if init_settings is not None:
|
101
|
+
pulumi.set(__self__, "init_settings", init_settings)
|
102
|
+
if is_ha_cluster is not None:
|
103
|
+
pulumi.set(__self__, "is_ha_cluster", is_ha_cluster)
|
104
|
+
if load_balancers is not None:
|
105
|
+
pulumi.set(__self__, "load_balancers", load_balancers)
|
106
|
+
if logs_policy is not None:
|
107
|
+
pulumi.set(__self__, "logs_policy", logs_policy)
|
108
|
+
if name is not None:
|
109
|
+
pulumi.set(__self__, "name", name)
|
110
|
+
if password is not None:
|
111
|
+
pulumi.set(__self__, "password", password)
|
112
|
+
if private_network is not None:
|
113
|
+
pulumi.set(__self__, "private_network", private_network)
|
114
|
+
if project_id is not None:
|
115
|
+
pulumi.set(__self__, "project_id", project_id)
|
116
|
+
if region is not None:
|
117
|
+
pulumi.set(__self__, "region", region)
|
118
|
+
if settings is not None:
|
119
|
+
pulumi.set(__self__, "settings", settings)
|
120
|
+
if snapshot_id is not None:
|
121
|
+
pulumi.set(__self__, "snapshot_id", snapshot_id)
|
122
|
+
if tags is not None:
|
123
|
+
pulumi.set(__self__, "tags", tags)
|
124
|
+
if user_name is not None:
|
125
|
+
pulumi.set(__self__, "user_name", user_name)
|
126
|
+
if volume_size_in_gb is not None:
|
127
|
+
pulumi.set(__self__, "volume_size_in_gb", volume_size_in_gb)
|
128
|
+
if volume_type is not None:
|
129
|
+
pulumi.set(__self__, "volume_type", volume_type)
|
130
|
+
|
131
|
+
@property
|
132
|
+
@pulumi.getter(name="nodeType")
|
133
|
+
def node_type(self) -> pulumi.Input[str]:
|
134
|
+
"""
|
135
|
+
The type of Database Instance you want to create (e.g. `db-dev-s`).
|
136
|
+
|
137
|
+
> **Important** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
|
138
|
+
interruption.
|
139
|
+
|
140
|
+
> **Important** Once your Database Instance reaches `disk_full` status, if you are using `lssd` storage, you should upgrade the `node_type`, and if you are using `bssd` storage, you should increase the volume size before making any other changes to your Database Instance.
|
141
|
+
"""
|
142
|
+
return pulumi.get(self, "node_type")
|
143
|
+
|
144
|
+
@node_type.setter
|
145
|
+
def node_type(self, value: pulumi.Input[str]):
|
146
|
+
pulumi.set(self, "node_type", value)
|
147
|
+
|
148
|
+
@property
|
149
|
+
@pulumi.getter(name="backupSameRegion")
|
150
|
+
def backup_same_region(self) -> Optional[pulumi.Input[bool]]:
|
151
|
+
"""
|
152
|
+
Boolean to store logical backups in the same region as the database instance
|
153
|
+
"""
|
154
|
+
return pulumi.get(self, "backup_same_region")
|
155
|
+
|
156
|
+
@backup_same_region.setter
|
157
|
+
def backup_same_region(self, value: Optional[pulumi.Input[bool]]):
|
158
|
+
pulumi.set(self, "backup_same_region", value)
|
159
|
+
|
160
|
+
@property
|
161
|
+
@pulumi.getter(name="backupScheduleFrequency")
|
162
|
+
def backup_schedule_frequency(self) -> Optional[pulumi.Input[int]]:
|
163
|
+
"""
|
164
|
+
Backup schedule frequency in hours
|
165
|
+
"""
|
166
|
+
return pulumi.get(self, "backup_schedule_frequency")
|
167
|
+
|
168
|
+
@backup_schedule_frequency.setter
|
169
|
+
def backup_schedule_frequency(self, value: Optional[pulumi.Input[int]]):
|
170
|
+
pulumi.set(self, "backup_schedule_frequency", value)
|
171
|
+
|
172
|
+
@property
|
173
|
+
@pulumi.getter(name="backupScheduleRetention")
|
174
|
+
def backup_schedule_retention(self) -> Optional[pulumi.Input[int]]:
|
175
|
+
"""
|
176
|
+
Backup schedule retention in days
|
177
|
+
"""
|
178
|
+
return pulumi.get(self, "backup_schedule_retention")
|
179
|
+
|
180
|
+
@backup_schedule_retention.setter
|
181
|
+
def backup_schedule_retention(self, value: Optional[pulumi.Input[int]]):
|
182
|
+
pulumi.set(self, "backup_schedule_retention", value)
|
183
|
+
|
184
|
+
@property
|
185
|
+
@pulumi.getter(name="disableBackup")
|
186
|
+
def disable_backup(self) -> Optional[pulumi.Input[bool]]:
|
187
|
+
"""
|
188
|
+
Disable automated backup for the database instance
|
189
|
+
"""
|
190
|
+
return pulumi.get(self, "disable_backup")
|
191
|
+
|
192
|
+
@disable_backup.setter
|
193
|
+
def disable_backup(self, value: Optional[pulumi.Input[bool]]):
|
194
|
+
pulumi.set(self, "disable_backup", value)
|
195
|
+
|
196
|
+
@property
|
197
|
+
@pulumi.getter(name="encryptionAtRest")
|
198
|
+
def encryption_at_rest(self) -> Optional[pulumi.Input[bool]]:
|
199
|
+
"""
|
200
|
+
Enable or disable encryption at rest for the Database Instance.
|
201
|
+
"""
|
202
|
+
return pulumi.get(self, "encryption_at_rest")
|
203
|
+
|
204
|
+
@encryption_at_rest.setter
|
205
|
+
def encryption_at_rest(self, value: Optional[pulumi.Input[bool]]):
|
206
|
+
pulumi.set(self, "encryption_at_rest", value)
|
207
|
+
|
208
|
+
@property
|
209
|
+
@pulumi.getter
|
210
|
+
def engine(self) -> Optional[pulumi.Input[str]]:
|
211
|
+
"""
|
212
|
+
Database Instance's engine version (e.g. `PostgreSQL-11`).
|
213
|
+
|
214
|
+
> **Important** Updates to `engine` will recreate the Database Instance.
|
215
|
+
"""
|
216
|
+
return pulumi.get(self, "engine")
|
217
|
+
|
218
|
+
@engine.setter
|
219
|
+
def engine(self, value: Optional[pulumi.Input[str]]):
|
220
|
+
pulumi.set(self, "engine", value)
|
221
|
+
|
222
|
+
@property
|
223
|
+
@pulumi.getter(name="initSettings")
|
224
|
+
def init_settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
225
|
+
"""
|
226
|
+
Map of engine settings to be set at database initialisation.
|
227
|
+
"""
|
228
|
+
return pulumi.get(self, "init_settings")
|
229
|
+
|
230
|
+
@init_settings.setter
|
231
|
+
def init_settings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
232
|
+
pulumi.set(self, "init_settings", value)
|
233
|
+
|
234
|
+
@property
|
235
|
+
@pulumi.getter(name="isHaCluster")
|
236
|
+
def is_ha_cluster(self) -> Optional[pulumi.Input[bool]]:
|
237
|
+
"""
|
238
|
+
Enable or disable high availability for the Database Instance.
|
239
|
+
|
240
|
+
> **Important** Updates to `is_ha_cluster` will recreate the Database Instance.
|
241
|
+
"""
|
242
|
+
return pulumi.get(self, "is_ha_cluster")
|
243
|
+
|
244
|
+
@is_ha_cluster.setter
|
245
|
+
def is_ha_cluster(self, value: Optional[pulumi.Input[bool]]):
|
246
|
+
pulumi.set(self, "is_ha_cluster", value)
|
247
|
+
|
248
|
+
@property
|
249
|
+
@pulumi.getter(name="loadBalancers")
|
250
|
+
def load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceLoadBalancerArgs']]]]:
|
251
|
+
"""
|
252
|
+
List of Load Balancer endpoints of the Database Instance.
|
253
|
+
"""
|
254
|
+
return pulumi.get(self, "load_balancers")
|
255
|
+
|
256
|
+
@load_balancers.setter
|
257
|
+
def load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceLoadBalancerArgs']]]]):
|
258
|
+
pulumi.set(self, "load_balancers", value)
|
259
|
+
|
260
|
+
@property
|
261
|
+
@pulumi.getter(name="logsPolicy")
|
262
|
+
def logs_policy(self) -> Optional[pulumi.Input['InstanceLogsPolicyArgs']]:
|
263
|
+
"""
|
264
|
+
Logs policy configuration
|
265
|
+
"""
|
266
|
+
return pulumi.get(self, "logs_policy")
|
267
|
+
|
268
|
+
@logs_policy.setter
|
269
|
+
def logs_policy(self, value: Optional[pulumi.Input['InstanceLogsPolicyArgs']]):
|
270
|
+
pulumi.set(self, "logs_policy", value)
|
271
|
+
|
272
|
+
@property
|
273
|
+
@pulumi.getter
|
274
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
275
|
+
"""
|
276
|
+
The name of the Database Instance.
|
277
|
+
"""
|
278
|
+
return pulumi.get(self, "name")
|
279
|
+
|
280
|
+
@name.setter
|
281
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
282
|
+
pulumi.set(self, "name", value)
|
283
|
+
|
284
|
+
@property
|
285
|
+
@pulumi.getter
|
286
|
+
def password(self) -> Optional[pulumi.Input[str]]:
|
287
|
+
"""
|
288
|
+
Password for the first user of the Database Instance.
|
289
|
+
"""
|
290
|
+
return pulumi.get(self, "password")
|
291
|
+
|
292
|
+
@password.setter
|
293
|
+
def password(self, value: Optional[pulumi.Input[str]]):
|
294
|
+
pulumi.set(self, "password", value)
|
295
|
+
|
296
|
+
@property
|
297
|
+
@pulumi.getter(name="privateNetwork")
|
298
|
+
def private_network(self) -> Optional[pulumi.Input['InstancePrivateNetworkArgs']]:
|
299
|
+
"""
|
300
|
+
List of Private Networks endpoints of the Database Instance.
|
301
|
+
"""
|
302
|
+
return pulumi.get(self, "private_network")
|
303
|
+
|
304
|
+
@private_network.setter
|
305
|
+
def private_network(self, value: Optional[pulumi.Input['InstancePrivateNetworkArgs']]):
|
306
|
+
pulumi.set(self, "private_network", value)
|
307
|
+
|
308
|
+
@property
|
309
|
+
@pulumi.getter(name="projectId")
|
310
|
+
def project_id(self) -> Optional[pulumi.Input[str]]:
|
311
|
+
"""
|
312
|
+
`project_id`) The ID of the project the Database
|
313
|
+
Instance is associated with.
|
314
|
+
"""
|
315
|
+
return pulumi.get(self, "project_id")
|
316
|
+
|
317
|
+
@project_id.setter
|
318
|
+
def project_id(self, value: Optional[pulumi.Input[str]]):
|
319
|
+
pulumi.set(self, "project_id", value)
|
320
|
+
|
321
|
+
@property
|
322
|
+
@pulumi.getter
|
323
|
+
def region(self) -> Optional[pulumi.Input[str]]:
|
324
|
+
"""
|
325
|
+
`region`) The region
|
326
|
+
in which the Database Instance should be created.
|
327
|
+
"""
|
328
|
+
return pulumi.get(self, "region")
|
329
|
+
|
330
|
+
@region.setter
|
331
|
+
def region(self, value: Optional[pulumi.Input[str]]):
|
332
|
+
pulumi.set(self, "region", value)
|
333
|
+
|
334
|
+
@property
|
335
|
+
@pulumi.getter
|
336
|
+
def settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
337
|
+
"""
|
338
|
+
Map of engine settings to be set on a running instance.
|
339
|
+
"""
|
340
|
+
return pulumi.get(self, "settings")
|
341
|
+
|
342
|
+
@settings.setter
|
343
|
+
def settings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
344
|
+
pulumi.set(self, "settings", value)
|
345
|
+
|
346
|
+
@property
|
347
|
+
@pulumi.getter(name="snapshotId")
|
348
|
+
def snapshot_id(self) -> Optional[pulumi.Input[str]]:
|
349
|
+
"""
|
350
|
+
ID of an existing snapshot to create a new instance from. This allows restoring a database instance to the state
|
351
|
+
captured in the specified snapshot. Conflicts with the `engine` attribute.
|
352
|
+
"""
|
353
|
+
return pulumi.get(self, "snapshot_id")
|
354
|
+
|
355
|
+
@snapshot_id.setter
|
356
|
+
def snapshot_id(self, value: Optional[pulumi.Input[str]]):
|
357
|
+
pulumi.set(self, "snapshot_id", value)
|
358
|
+
|
359
|
+
@property
|
360
|
+
@pulumi.getter
|
361
|
+
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
362
|
+
"""
|
363
|
+
The tags associated with the Database Instance.
|
364
|
+
"""
|
365
|
+
return pulumi.get(self, "tags")
|
366
|
+
|
367
|
+
@tags.setter
|
368
|
+
def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
369
|
+
pulumi.set(self, "tags", value)
|
370
|
+
|
371
|
+
@property
|
372
|
+
@pulumi.getter(name="userName")
|
373
|
+
def user_name(self) -> Optional[pulumi.Input[str]]:
|
374
|
+
"""
|
375
|
+
Identifier for the first user of the Database Instance.
|
376
|
+
|
377
|
+
> **Important** Updates to `user_name` will recreate the Database Instance.
|
378
|
+
"""
|
379
|
+
return pulumi.get(self, "user_name")
|
380
|
+
|
381
|
+
@user_name.setter
|
382
|
+
def user_name(self, value: Optional[pulumi.Input[str]]):
|
383
|
+
pulumi.set(self, "user_name", value)
|
384
|
+
|
385
|
+
@property
|
386
|
+
@pulumi.getter(name="volumeSizeInGb")
|
387
|
+
def volume_size_in_gb(self) -> Optional[pulumi.Input[int]]:
|
388
|
+
"""
|
389
|
+
Volume size (in GB). Cannot be used when `volume_type` is set to `lssd`.
|
390
|
+
|
391
|
+
> **Important** Once your Database Instance reaches `disk_full` status, you should increase the volume size before making any other change to your Database Instance.
|
392
|
+
"""
|
393
|
+
return pulumi.get(self, "volume_size_in_gb")
|
394
|
+
|
395
|
+
@volume_size_in_gb.setter
|
396
|
+
def volume_size_in_gb(self, value: Optional[pulumi.Input[int]]):
|
397
|
+
pulumi.set(self, "volume_size_in_gb", value)
|
398
|
+
|
399
|
+
@property
|
400
|
+
@pulumi.getter(name="volumeType")
|
401
|
+
def volume_type(self) -> Optional[pulumi.Input[str]]:
|
402
|
+
"""
|
403
|
+
Type of volume where data are stored (`bssd`, `lssd`, `sbs_5k` or `sbs_15k`).
|
404
|
+
"""
|
405
|
+
return pulumi.get(self, "volume_type")
|
406
|
+
|
407
|
+
@volume_type.setter
|
408
|
+
def volume_type(self, value: Optional[pulumi.Input[str]]):
|
409
|
+
pulumi.set(self, "volume_type", value)
|
410
|
+
|
411
|
+
|
412
|
+
@pulumi.input_type
|
413
|
+
class _InstanceState:
|
414
|
+
def __init__(__self__, *,
|
415
|
+
backup_same_region: Optional[pulumi.Input[bool]] = None,
|
416
|
+
backup_schedule_frequency: Optional[pulumi.Input[int]] = None,
|
417
|
+
backup_schedule_retention: Optional[pulumi.Input[int]] = None,
|
418
|
+
certificate: Optional[pulumi.Input[str]] = None,
|
419
|
+
disable_backup: Optional[pulumi.Input[bool]] = None,
|
420
|
+
encryption_at_rest: Optional[pulumi.Input[bool]] = None,
|
421
|
+
endpoint_ip: Optional[pulumi.Input[str]] = None,
|
422
|
+
endpoint_port: Optional[pulumi.Input[int]] = None,
|
423
|
+
engine: Optional[pulumi.Input[str]] = None,
|
424
|
+
init_settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
425
|
+
is_ha_cluster: Optional[pulumi.Input[bool]] = None,
|
426
|
+
load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceLoadBalancerArgs']]]] = None,
|
427
|
+
logs_policy: Optional[pulumi.Input['InstanceLogsPolicyArgs']] = None,
|
428
|
+
name: Optional[pulumi.Input[str]] = None,
|
429
|
+
node_type: Optional[pulumi.Input[str]] = None,
|
430
|
+
organization_id: Optional[pulumi.Input[str]] = None,
|
431
|
+
password: Optional[pulumi.Input[str]] = None,
|
432
|
+
private_network: Optional[pulumi.Input['InstancePrivateNetworkArgs']] = None,
|
433
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
434
|
+
read_replicas: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceReadReplicaArgs']]]] = None,
|
435
|
+
region: Optional[pulumi.Input[str]] = None,
|
436
|
+
settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
437
|
+
snapshot_id: Optional[pulumi.Input[str]] = None,
|
438
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
439
|
+
user_name: Optional[pulumi.Input[str]] = None,
|
440
|
+
volume_size_in_gb: Optional[pulumi.Input[int]] = None,
|
441
|
+
volume_type: Optional[pulumi.Input[str]] = None):
|
442
|
+
"""
|
443
|
+
Input properties used for looking up and filtering Instance resources.
|
444
|
+
:param pulumi.Input[bool] backup_same_region: Boolean to store logical backups in the same region as the database instance
|
445
|
+
:param pulumi.Input[int] backup_schedule_frequency: Backup schedule frequency in hours
|
446
|
+
:param pulumi.Input[int] backup_schedule_retention: Backup schedule retention in days
|
447
|
+
:param pulumi.Input[str] certificate: Certificate of the Database Instance.
|
448
|
+
:param pulumi.Input[bool] disable_backup: Disable automated backup for the database instance
|
449
|
+
:param pulumi.Input[bool] encryption_at_rest: Enable or disable encryption at rest for the Database Instance.
|
450
|
+
:param pulumi.Input[str] endpoint_ip: (Deprecated) The IP of the Database Instance. Please use the private_network or the load_balancer attribute.
|
451
|
+
:param pulumi.Input[int] endpoint_port: (Deprecated) The port of the Database Instance. Please use the private_network or the load_balancer attribute.
|
452
|
+
:param pulumi.Input[str] engine: Database Instance's engine version (e.g. `PostgreSQL-11`).
|
453
|
+
|
454
|
+
> **Important** Updates to `engine` will recreate the Database Instance.
|
455
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] init_settings: Map of engine settings to be set at database initialisation.
|
456
|
+
:param pulumi.Input[bool] is_ha_cluster: Enable or disable high availability for the Database Instance.
|
457
|
+
|
458
|
+
> **Important** Updates to `is_ha_cluster` will recreate the Database Instance.
|
459
|
+
:param pulumi.Input[Sequence[pulumi.Input['InstanceLoadBalancerArgs']]] load_balancers: List of Load Balancer endpoints of the Database Instance.
|
460
|
+
:param pulumi.Input['InstanceLogsPolicyArgs'] logs_policy: Logs policy configuration
|
461
|
+
:param pulumi.Input[str] name: The name of the Database Instance.
|
462
|
+
:param pulumi.Input[str] node_type: The type of Database Instance you want to create (e.g. `db-dev-s`).
|
463
|
+
|
464
|
+
> **Important** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
|
465
|
+
interruption.
|
466
|
+
|
467
|
+
> **Important** Once your Database Instance reaches `disk_full` status, if you are using `lssd` storage, you should upgrade the `node_type`, and if you are using `bssd` storage, you should increase the volume size before making any other changes to your Database Instance.
|
468
|
+
:param pulumi.Input[str] organization_id: The organization ID the Database Instance is associated with.
|
469
|
+
:param pulumi.Input[str] password: Password for the first user of the Database Instance.
|
470
|
+
:param pulumi.Input['InstancePrivateNetworkArgs'] private_network: List of Private Networks endpoints of the Database Instance.
|
471
|
+
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the Database
|
472
|
+
Instance is associated with.
|
473
|
+
:param pulumi.Input[Sequence[pulumi.Input['InstanceReadReplicaArgs']]] read_replicas: List of read replicas of the Database Instance.
|
474
|
+
:param pulumi.Input[str] region: `region`) The region
|
475
|
+
in which the Database Instance should be created.
|
476
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of engine settings to be set on a running instance.
|
477
|
+
:param pulumi.Input[str] snapshot_id: ID of an existing snapshot to create a new instance from. This allows restoring a database instance to the state
|
478
|
+
captured in the specified snapshot. Conflicts with the `engine` attribute.
|
479
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the Database Instance.
|
480
|
+
:param pulumi.Input[str] user_name: Identifier for the first user of the Database Instance.
|
481
|
+
|
482
|
+
> **Important** Updates to `user_name` will recreate the Database Instance.
|
483
|
+
:param pulumi.Input[int] volume_size_in_gb: Volume size (in GB). Cannot be used when `volume_type` is set to `lssd`.
|
484
|
+
|
485
|
+
> **Important** Once your Database Instance reaches `disk_full` status, you should increase the volume size before making any other change to your Database Instance.
|
486
|
+
:param pulumi.Input[str] volume_type: Type of volume where data are stored (`bssd`, `lssd`, `sbs_5k` or `sbs_15k`).
|
487
|
+
"""
|
488
|
+
if backup_same_region is not None:
|
489
|
+
pulumi.set(__self__, "backup_same_region", backup_same_region)
|
490
|
+
if backup_schedule_frequency is not None:
|
491
|
+
pulumi.set(__self__, "backup_schedule_frequency", backup_schedule_frequency)
|
492
|
+
if backup_schedule_retention is not None:
|
493
|
+
pulumi.set(__self__, "backup_schedule_retention", backup_schedule_retention)
|
494
|
+
if certificate is not None:
|
495
|
+
pulumi.set(__self__, "certificate", certificate)
|
496
|
+
if disable_backup is not None:
|
497
|
+
pulumi.set(__self__, "disable_backup", disable_backup)
|
498
|
+
if encryption_at_rest is not None:
|
499
|
+
pulumi.set(__self__, "encryption_at_rest", encryption_at_rest)
|
500
|
+
if endpoint_ip is not None:
|
501
|
+
warnings.warn("""Please use the private_network or the load_balancer attribute""", DeprecationWarning)
|
502
|
+
pulumi.log.warn("""endpoint_ip is deprecated: Please use the private_network or the load_balancer attribute""")
|
503
|
+
if endpoint_ip is not None:
|
504
|
+
pulumi.set(__self__, "endpoint_ip", endpoint_ip)
|
505
|
+
if endpoint_port is not None:
|
506
|
+
warnings.warn("""Please use the private_network or the load_balancer attribute""", DeprecationWarning)
|
507
|
+
pulumi.log.warn("""endpoint_port is deprecated: Please use the private_network or the load_balancer attribute""")
|
508
|
+
if endpoint_port is not None:
|
509
|
+
pulumi.set(__self__, "endpoint_port", endpoint_port)
|
510
|
+
if engine is not None:
|
511
|
+
pulumi.set(__self__, "engine", engine)
|
512
|
+
if init_settings is not None:
|
513
|
+
pulumi.set(__self__, "init_settings", init_settings)
|
514
|
+
if is_ha_cluster is not None:
|
515
|
+
pulumi.set(__self__, "is_ha_cluster", is_ha_cluster)
|
516
|
+
if load_balancers is not None:
|
517
|
+
pulumi.set(__self__, "load_balancers", load_balancers)
|
518
|
+
if logs_policy is not None:
|
519
|
+
pulumi.set(__self__, "logs_policy", logs_policy)
|
520
|
+
if name is not None:
|
521
|
+
pulumi.set(__self__, "name", name)
|
522
|
+
if node_type is not None:
|
523
|
+
pulumi.set(__self__, "node_type", node_type)
|
524
|
+
if organization_id is not None:
|
525
|
+
pulumi.set(__self__, "organization_id", organization_id)
|
526
|
+
if password is not None:
|
527
|
+
pulumi.set(__self__, "password", password)
|
528
|
+
if private_network is not None:
|
529
|
+
pulumi.set(__self__, "private_network", private_network)
|
530
|
+
if project_id is not None:
|
531
|
+
pulumi.set(__self__, "project_id", project_id)
|
532
|
+
if read_replicas is not None:
|
533
|
+
pulumi.set(__self__, "read_replicas", read_replicas)
|
534
|
+
if region is not None:
|
535
|
+
pulumi.set(__self__, "region", region)
|
536
|
+
if settings is not None:
|
537
|
+
pulumi.set(__self__, "settings", settings)
|
538
|
+
if snapshot_id is not None:
|
539
|
+
pulumi.set(__self__, "snapshot_id", snapshot_id)
|
540
|
+
if tags is not None:
|
541
|
+
pulumi.set(__self__, "tags", tags)
|
542
|
+
if user_name is not None:
|
543
|
+
pulumi.set(__self__, "user_name", user_name)
|
544
|
+
if volume_size_in_gb is not None:
|
545
|
+
pulumi.set(__self__, "volume_size_in_gb", volume_size_in_gb)
|
546
|
+
if volume_type is not None:
|
547
|
+
pulumi.set(__self__, "volume_type", volume_type)
|
548
|
+
|
549
|
+
@property
|
550
|
+
@pulumi.getter(name="backupSameRegion")
|
551
|
+
def backup_same_region(self) -> Optional[pulumi.Input[bool]]:
|
552
|
+
"""
|
553
|
+
Boolean to store logical backups in the same region as the database instance
|
554
|
+
"""
|
555
|
+
return pulumi.get(self, "backup_same_region")
|
556
|
+
|
557
|
+
@backup_same_region.setter
|
558
|
+
def backup_same_region(self, value: Optional[pulumi.Input[bool]]):
|
559
|
+
pulumi.set(self, "backup_same_region", value)
|
560
|
+
|
561
|
+
@property
|
562
|
+
@pulumi.getter(name="backupScheduleFrequency")
|
563
|
+
def backup_schedule_frequency(self) -> Optional[pulumi.Input[int]]:
|
564
|
+
"""
|
565
|
+
Backup schedule frequency in hours
|
566
|
+
"""
|
567
|
+
return pulumi.get(self, "backup_schedule_frequency")
|
568
|
+
|
569
|
+
@backup_schedule_frequency.setter
|
570
|
+
def backup_schedule_frequency(self, value: Optional[pulumi.Input[int]]):
|
571
|
+
pulumi.set(self, "backup_schedule_frequency", value)
|
572
|
+
|
573
|
+
@property
|
574
|
+
@pulumi.getter(name="backupScheduleRetention")
|
575
|
+
def backup_schedule_retention(self) -> Optional[pulumi.Input[int]]:
|
576
|
+
"""
|
577
|
+
Backup schedule retention in days
|
578
|
+
"""
|
579
|
+
return pulumi.get(self, "backup_schedule_retention")
|
580
|
+
|
581
|
+
@backup_schedule_retention.setter
|
582
|
+
def backup_schedule_retention(self, value: Optional[pulumi.Input[int]]):
|
583
|
+
pulumi.set(self, "backup_schedule_retention", value)
|
584
|
+
|
585
|
+
@property
|
586
|
+
@pulumi.getter
|
587
|
+
def certificate(self) -> Optional[pulumi.Input[str]]:
|
588
|
+
"""
|
589
|
+
Certificate of the Database Instance.
|
590
|
+
"""
|
591
|
+
return pulumi.get(self, "certificate")
|
592
|
+
|
593
|
+
@certificate.setter
|
594
|
+
def certificate(self, value: Optional[pulumi.Input[str]]):
|
595
|
+
pulumi.set(self, "certificate", value)
|
596
|
+
|
597
|
+
@property
|
598
|
+
@pulumi.getter(name="disableBackup")
|
599
|
+
def disable_backup(self) -> Optional[pulumi.Input[bool]]:
|
600
|
+
"""
|
601
|
+
Disable automated backup for the database instance
|
602
|
+
"""
|
603
|
+
return pulumi.get(self, "disable_backup")
|
604
|
+
|
605
|
+
@disable_backup.setter
|
606
|
+
def disable_backup(self, value: Optional[pulumi.Input[bool]]):
|
607
|
+
pulumi.set(self, "disable_backup", value)
|
608
|
+
|
609
|
+
@property
|
610
|
+
@pulumi.getter(name="encryptionAtRest")
|
611
|
+
def encryption_at_rest(self) -> Optional[pulumi.Input[bool]]:
|
612
|
+
"""
|
613
|
+
Enable or disable encryption at rest for the Database Instance.
|
614
|
+
"""
|
615
|
+
return pulumi.get(self, "encryption_at_rest")
|
616
|
+
|
617
|
+
@encryption_at_rest.setter
|
618
|
+
def encryption_at_rest(self, value: Optional[pulumi.Input[bool]]):
|
619
|
+
pulumi.set(self, "encryption_at_rest", value)
|
620
|
+
|
621
|
+
@property
|
622
|
+
@pulumi.getter(name="endpointIp")
|
623
|
+
@_utilities.deprecated("""Please use the private_network or the load_balancer attribute""")
|
624
|
+
def endpoint_ip(self) -> Optional[pulumi.Input[str]]:
|
625
|
+
"""
|
626
|
+
(Deprecated) The IP of the Database Instance. Please use the private_network or the load_balancer attribute.
|
627
|
+
"""
|
628
|
+
return pulumi.get(self, "endpoint_ip")
|
629
|
+
|
630
|
+
@endpoint_ip.setter
|
631
|
+
def endpoint_ip(self, value: Optional[pulumi.Input[str]]):
|
632
|
+
pulumi.set(self, "endpoint_ip", value)
|
633
|
+
|
634
|
+
@property
|
635
|
+
@pulumi.getter(name="endpointPort")
|
636
|
+
@_utilities.deprecated("""Please use the private_network or the load_balancer attribute""")
|
637
|
+
def endpoint_port(self) -> Optional[pulumi.Input[int]]:
|
638
|
+
"""
|
639
|
+
(Deprecated) The port of the Database Instance. Please use the private_network or the load_balancer attribute.
|
640
|
+
"""
|
641
|
+
return pulumi.get(self, "endpoint_port")
|
642
|
+
|
643
|
+
@endpoint_port.setter
|
644
|
+
def endpoint_port(self, value: Optional[pulumi.Input[int]]):
|
645
|
+
pulumi.set(self, "endpoint_port", value)
|
646
|
+
|
647
|
+
@property
|
648
|
+
@pulumi.getter
|
649
|
+
def engine(self) -> Optional[pulumi.Input[str]]:
|
650
|
+
"""
|
651
|
+
Database Instance's engine version (e.g. `PostgreSQL-11`).
|
652
|
+
|
653
|
+
> **Important** Updates to `engine` will recreate the Database Instance.
|
654
|
+
"""
|
655
|
+
return pulumi.get(self, "engine")
|
656
|
+
|
657
|
+
@engine.setter
|
658
|
+
def engine(self, value: Optional[pulumi.Input[str]]):
|
659
|
+
pulumi.set(self, "engine", value)
|
660
|
+
|
661
|
+
@property
|
662
|
+
@pulumi.getter(name="initSettings")
|
663
|
+
def init_settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
664
|
+
"""
|
665
|
+
Map of engine settings to be set at database initialisation.
|
666
|
+
"""
|
667
|
+
return pulumi.get(self, "init_settings")
|
668
|
+
|
669
|
+
@init_settings.setter
|
670
|
+
def init_settings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
671
|
+
pulumi.set(self, "init_settings", value)
|
672
|
+
|
673
|
+
@property
|
674
|
+
@pulumi.getter(name="isHaCluster")
|
675
|
+
def is_ha_cluster(self) -> Optional[pulumi.Input[bool]]:
|
676
|
+
"""
|
677
|
+
Enable or disable high availability for the Database Instance.
|
678
|
+
|
679
|
+
> **Important** Updates to `is_ha_cluster` will recreate the Database Instance.
|
680
|
+
"""
|
681
|
+
return pulumi.get(self, "is_ha_cluster")
|
682
|
+
|
683
|
+
@is_ha_cluster.setter
|
684
|
+
def is_ha_cluster(self, value: Optional[pulumi.Input[bool]]):
|
685
|
+
pulumi.set(self, "is_ha_cluster", value)
|
686
|
+
|
687
|
+
@property
|
688
|
+
@pulumi.getter(name="loadBalancers")
|
689
|
+
def load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceLoadBalancerArgs']]]]:
|
690
|
+
"""
|
691
|
+
List of Load Balancer endpoints of the Database Instance.
|
692
|
+
"""
|
693
|
+
return pulumi.get(self, "load_balancers")
|
694
|
+
|
695
|
+
@load_balancers.setter
|
696
|
+
def load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceLoadBalancerArgs']]]]):
|
697
|
+
pulumi.set(self, "load_balancers", value)
|
698
|
+
|
699
|
+
@property
|
700
|
+
@pulumi.getter(name="logsPolicy")
|
701
|
+
def logs_policy(self) -> Optional[pulumi.Input['InstanceLogsPolicyArgs']]:
|
702
|
+
"""
|
703
|
+
Logs policy configuration
|
704
|
+
"""
|
705
|
+
return pulumi.get(self, "logs_policy")
|
706
|
+
|
707
|
+
@logs_policy.setter
|
708
|
+
def logs_policy(self, value: Optional[pulumi.Input['InstanceLogsPolicyArgs']]):
|
709
|
+
pulumi.set(self, "logs_policy", value)
|
710
|
+
|
711
|
+
@property
|
712
|
+
@pulumi.getter
|
713
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
714
|
+
"""
|
715
|
+
The name of the Database Instance.
|
716
|
+
"""
|
717
|
+
return pulumi.get(self, "name")
|
718
|
+
|
719
|
+
@name.setter
|
720
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
721
|
+
pulumi.set(self, "name", value)
|
722
|
+
|
723
|
+
@property
|
724
|
+
@pulumi.getter(name="nodeType")
|
725
|
+
def node_type(self) -> Optional[pulumi.Input[str]]:
|
726
|
+
"""
|
727
|
+
The type of Database Instance you want to create (e.g. `db-dev-s`).
|
728
|
+
|
729
|
+
> **Important** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
|
730
|
+
interruption.
|
731
|
+
|
732
|
+
> **Important** Once your Database Instance reaches `disk_full` status, if you are using `lssd` storage, you should upgrade the `node_type`, and if you are using `bssd` storage, you should increase the volume size before making any other changes to your Database Instance.
|
733
|
+
"""
|
734
|
+
return pulumi.get(self, "node_type")
|
735
|
+
|
736
|
+
@node_type.setter
|
737
|
+
def node_type(self, value: Optional[pulumi.Input[str]]):
|
738
|
+
pulumi.set(self, "node_type", value)
|
739
|
+
|
740
|
+
@property
|
741
|
+
@pulumi.getter(name="organizationId")
|
742
|
+
def organization_id(self) -> Optional[pulumi.Input[str]]:
|
743
|
+
"""
|
744
|
+
The organization ID the Database Instance is associated with.
|
745
|
+
"""
|
746
|
+
return pulumi.get(self, "organization_id")
|
747
|
+
|
748
|
+
@organization_id.setter
|
749
|
+
def organization_id(self, value: Optional[pulumi.Input[str]]):
|
750
|
+
pulumi.set(self, "organization_id", value)
|
751
|
+
|
752
|
+
@property
|
753
|
+
@pulumi.getter
|
754
|
+
def password(self) -> Optional[pulumi.Input[str]]:
|
755
|
+
"""
|
756
|
+
Password for the first user of the Database Instance.
|
757
|
+
"""
|
758
|
+
return pulumi.get(self, "password")
|
759
|
+
|
760
|
+
@password.setter
|
761
|
+
def password(self, value: Optional[pulumi.Input[str]]):
|
762
|
+
pulumi.set(self, "password", value)
|
763
|
+
|
764
|
+
@property
|
765
|
+
@pulumi.getter(name="privateNetwork")
|
766
|
+
def private_network(self) -> Optional[pulumi.Input['InstancePrivateNetworkArgs']]:
|
767
|
+
"""
|
768
|
+
List of Private Networks endpoints of the Database Instance.
|
769
|
+
"""
|
770
|
+
return pulumi.get(self, "private_network")
|
771
|
+
|
772
|
+
@private_network.setter
|
773
|
+
def private_network(self, value: Optional[pulumi.Input['InstancePrivateNetworkArgs']]):
|
774
|
+
pulumi.set(self, "private_network", value)
|
775
|
+
|
776
|
+
@property
|
777
|
+
@pulumi.getter(name="projectId")
|
778
|
+
def project_id(self) -> Optional[pulumi.Input[str]]:
|
779
|
+
"""
|
780
|
+
`project_id`) The ID of the project the Database
|
781
|
+
Instance is associated with.
|
782
|
+
"""
|
783
|
+
return pulumi.get(self, "project_id")
|
784
|
+
|
785
|
+
@project_id.setter
|
786
|
+
def project_id(self, value: Optional[pulumi.Input[str]]):
|
787
|
+
pulumi.set(self, "project_id", value)
|
788
|
+
|
789
|
+
@property
|
790
|
+
@pulumi.getter(name="readReplicas")
|
791
|
+
def read_replicas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceReadReplicaArgs']]]]:
|
792
|
+
"""
|
793
|
+
List of read replicas of the Database Instance.
|
794
|
+
"""
|
795
|
+
return pulumi.get(self, "read_replicas")
|
796
|
+
|
797
|
+
@read_replicas.setter
|
798
|
+
def read_replicas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceReadReplicaArgs']]]]):
|
799
|
+
pulumi.set(self, "read_replicas", value)
|
800
|
+
|
801
|
+
@property
|
802
|
+
@pulumi.getter
|
803
|
+
def region(self) -> Optional[pulumi.Input[str]]:
|
804
|
+
"""
|
805
|
+
`region`) The region
|
806
|
+
in which the Database Instance should be created.
|
807
|
+
"""
|
808
|
+
return pulumi.get(self, "region")
|
809
|
+
|
810
|
+
@region.setter
|
811
|
+
def region(self, value: Optional[pulumi.Input[str]]):
|
812
|
+
pulumi.set(self, "region", value)
|
813
|
+
|
814
|
+
@property
|
815
|
+
@pulumi.getter
|
816
|
+
def settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
817
|
+
"""
|
818
|
+
Map of engine settings to be set on a running instance.
|
819
|
+
"""
|
820
|
+
return pulumi.get(self, "settings")
|
821
|
+
|
822
|
+
@settings.setter
|
823
|
+
def settings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
824
|
+
pulumi.set(self, "settings", value)
|
825
|
+
|
826
|
+
@property
|
827
|
+
@pulumi.getter(name="snapshotId")
|
828
|
+
def snapshot_id(self) -> Optional[pulumi.Input[str]]:
|
829
|
+
"""
|
830
|
+
ID of an existing snapshot to create a new instance from. This allows restoring a database instance to the state
|
831
|
+
captured in the specified snapshot. Conflicts with the `engine` attribute.
|
832
|
+
"""
|
833
|
+
return pulumi.get(self, "snapshot_id")
|
834
|
+
|
835
|
+
@snapshot_id.setter
|
836
|
+
def snapshot_id(self, value: Optional[pulumi.Input[str]]):
|
837
|
+
pulumi.set(self, "snapshot_id", value)
|
838
|
+
|
839
|
+
@property
|
840
|
+
@pulumi.getter
|
841
|
+
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
842
|
+
"""
|
843
|
+
The tags associated with the Database Instance.
|
844
|
+
"""
|
845
|
+
return pulumi.get(self, "tags")
|
846
|
+
|
847
|
+
@tags.setter
|
848
|
+
def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
849
|
+
pulumi.set(self, "tags", value)
|
850
|
+
|
851
|
+
@property
|
852
|
+
@pulumi.getter(name="userName")
|
853
|
+
def user_name(self) -> Optional[pulumi.Input[str]]:
|
854
|
+
"""
|
855
|
+
Identifier for the first user of the Database Instance.
|
856
|
+
|
857
|
+
> **Important** Updates to `user_name` will recreate the Database Instance.
|
858
|
+
"""
|
859
|
+
return pulumi.get(self, "user_name")
|
860
|
+
|
861
|
+
@user_name.setter
|
862
|
+
def user_name(self, value: Optional[pulumi.Input[str]]):
|
863
|
+
pulumi.set(self, "user_name", value)
|
864
|
+
|
865
|
+
@property
|
866
|
+
@pulumi.getter(name="volumeSizeInGb")
|
867
|
+
def volume_size_in_gb(self) -> Optional[pulumi.Input[int]]:
|
868
|
+
"""
|
869
|
+
Volume size (in GB). Cannot be used when `volume_type` is set to `lssd`.
|
870
|
+
|
871
|
+
> **Important** Once your Database Instance reaches `disk_full` status, you should increase the volume size before making any other change to your Database Instance.
|
872
|
+
"""
|
873
|
+
return pulumi.get(self, "volume_size_in_gb")
|
874
|
+
|
875
|
+
@volume_size_in_gb.setter
|
876
|
+
def volume_size_in_gb(self, value: Optional[pulumi.Input[int]]):
|
877
|
+
pulumi.set(self, "volume_size_in_gb", value)
|
878
|
+
|
879
|
+
@property
|
880
|
+
@pulumi.getter(name="volumeType")
|
881
|
+
def volume_type(self) -> Optional[pulumi.Input[str]]:
|
882
|
+
"""
|
883
|
+
Type of volume where data are stored (`bssd`, `lssd`, `sbs_5k` or `sbs_15k`).
|
884
|
+
"""
|
885
|
+
return pulumi.get(self, "volume_type")
|
886
|
+
|
887
|
+
@volume_type.setter
|
888
|
+
def volume_type(self, value: Optional[pulumi.Input[str]]):
|
889
|
+
pulumi.set(self, "volume_type", value)
|
890
|
+
|
891
|
+
|
892
|
+
class Instance(pulumi.CustomResource):
|
893
|
+
@overload
|
894
|
+
def __init__(__self__,
|
895
|
+
resource_name: str,
|
896
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
897
|
+
backup_same_region: Optional[pulumi.Input[bool]] = None,
|
898
|
+
backup_schedule_frequency: Optional[pulumi.Input[int]] = None,
|
899
|
+
backup_schedule_retention: Optional[pulumi.Input[int]] = None,
|
900
|
+
disable_backup: Optional[pulumi.Input[bool]] = None,
|
901
|
+
encryption_at_rest: Optional[pulumi.Input[bool]] = None,
|
902
|
+
engine: Optional[pulumi.Input[str]] = None,
|
903
|
+
init_settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
904
|
+
is_ha_cluster: Optional[pulumi.Input[bool]] = None,
|
905
|
+
load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceLoadBalancerArgs', 'InstanceLoadBalancerArgsDict']]]]] = None,
|
906
|
+
logs_policy: Optional[pulumi.Input[Union['InstanceLogsPolicyArgs', 'InstanceLogsPolicyArgsDict']]] = None,
|
907
|
+
name: Optional[pulumi.Input[str]] = None,
|
908
|
+
node_type: Optional[pulumi.Input[str]] = None,
|
909
|
+
password: Optional[pulumi.Input[str]] = None,
|
910
|
+
private_network: Optional[pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']]] = None,
|
911
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
912
|
+
region: Optional[pulumi.Input[str]] = None,
|
913
|
+
settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
914
|
+
snapshot_id: Optional[pulumi.Input[str]] = None,
|
915
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
916
|
+
user_name: Optional[pulumi.Input[str]] = None,
|
917
|
+
volume_size_in_gb: Optional[pulumi.Input[int]] = None,
|
918
|
+
volume_type: Optional[pulumi.Input[str]] = None,
|
919
|
+
__props__=None):
|
920
|
+
"""
|
921
|
+
Creates and manages Scaleway Database Instances.
|
922
|
+
For more information, see refer to the [API documentation](https://www.scaleway.com/en/developers/api/managed-database-postgre-mysql/).
|
923
|
+
|
924
|
+
## Example Usage
|
925
|
+
|
926
|
+
### Example Basic
|
927
|
+
|
928
|
+
```python
|
929
|
+
import pulumi
|
930
|
+
import pulumiverse_scaleway as scaleway
|
931
|
+
|
932
|
+
main = scaleway.databases.Instance("main",
|
933
|
+
name="test-rdb",
|
934
|
+
node_type="DB-DEV-S",
|
935
|
+
engine="PostgreSQL-15",
|
936
|
+
is_ha_cluster=True,
|
937
|
+
disable_backup=True,
|
938
|
+
user_name="my_initial_user",
|
939
|
+
password="thiZ_is_v&ry_s3cret",
|
940
|
+
encryption_at_rest=True)
|
941
|
+
```
|
942
|
+
|
943
|
+
### Example Block Storage Low Latency
|
944
|
+
|
945
|
+
```python
|
946
|
+
import pulumi
|
947
|
+
import pulumiverse_scaleway as scaleway
|
948
|
+
|
949
|
+
main = scaleway.databases.Instance("main",
|
950
|
+
name="test-rdb-sbs",
|
951
|
+
node_type="db-play2-pico",
|
952
|
+
engine="PostgreSQL-15",
|
953
|
+
is_ha_cluster=True,
|
954
|
+
disable_backup=True,
|
955
|
+
user_name="my_initial_user",
|
956
|
+
password="thiZ_is_v&ry_s3cret",
|
957
|
+
volume_type="sbs_15k",
|
958
|
+
volume_size_in_gb=10)
|
959
|
+
```
|
960
|
+
|
961
|
+
### Example with Settings
|
962
|
+
|
963
|
+
```python
|
964
|
+
import pulumi
|
965
|
+
import pulumiverse_scaleway as scaleway
|
966
|
+
|
967
|
+
main = scaleway.databases.Instance("main",
|
968
|
+
name="test-rdb",
|
969
|
+
node_type="db-dev-s",
|
970
|
+
disable_backup=True,
|
971
|
+
engine="MySQL-8",
|
972
|
+
user_name="my_initial_user",
|
973
|
+
password="thiZ_is_v&ry_s3cret",
|
974
|
+
init_settings={
|
975
|
+
"lower_case_table_names": "1",
|
976
|
+
},
|
977
|
+
settings={
|
978
|
+
"max_connections": "350",
|
979
|
+
})
|
980
|
+
```
|
981
|
+
|
982
|
+
### Example with backup schedule
|
983
|
+
|
984
|
+
```python
|
985
|
+
import pulumi
|
986
|
+
import pulumiverse_scaleway as scaleway
|
987
|
+
|
988
|
+
main = scaleway.databases.Instance("main",
|
989
|
+
name="test-rdb",
|
990
|
+
node_type="DB-DEV-S",
|
991
|
+
engine="PostgreSQL-15",
|
992
|
+
is_ha_cluster=True,
|
993
|
+
user_name="my_initial_user",
|
994
|
+
password="thiZ_is_v&ry_s3cret",
|
995
|
+
disable_backup=False,
|
996
|
+
backup_schedule_frequency=24,
|
997
|
+
backup_schedule_retention=7)
|
998
|
+
```
|
999
|
+
|
1000
|
+
### Examples of endpoint configuration
|
1001
|
+
|
1002
|
+
Database Instances can have a maximum of 1 public endpoint and 1 private endpoint. They can have both, or none.
|
1003
|
+
|
1004
|
+
### 1 static Private Network endpoint
|
1005
|
+
|
1006
|
+
```python
|
1007
|
+
import pulumi
|
1008
|
+
import pulumiverse_scaleway as scaleway
|
1009
|
+
|
1010
|
+
pn = scaleway.network.PrivateNetwork("pn", ipv4_subnet={
|
1011
|
+
"subnet": "172.16.20.0/22",
|
1012
|
+
})
|
1013
|
+
main = scaleway.databases.Instance("main",
|
1014
|
+
node_type="db-dev-s",
|
1015
|
+
engine="PostgreSQL-15",
|
1016
|
+
private_network={
|
1017
|
+
"pn_id": pn.id,
|
1018
|
+
"ip_net": "172.16.20.4/22",
|
1019
|
+
})
|
1020
|
+
```
|
1021
|
+
|
1022
|
+
### 1 IPAM Private Network endpoint + 1 public endpoint
|
1023
|
+
|
1024
|
+
```python
|
1025
|
+
import pulumi
|
1026
|
+
import pulumiverse_scaleway as scaleway
|
1027
|
+
|
1028
|
+
pn = scaleway.network.PrivateNetwork("pn")
|
1029
|
+
main = scaleway.databases.Instance("main",
|
1030
|
+
load_balancers=[{}],
|
1031
|
+
node_type="DB-DEV-S",
|
1032
|
+
engine="PostgreSQL-15",
|
1033
|
+
private_network={
|
1034
|
+
"pn_id": pn.id,
|
1035
|
+
"enable_ipam": True,
|
1036
|
+
})
|
1037
|
+
```
|
1038
|
+
|
1039
|
+
### Default: 1 public endpoint
|
1040
|
+
|
1041
|
+
```python
|
1042
|
+
import pulumi
|
1043
|
+
import pulumiverse_scaleway as scaleway
|
1044
|
+
|
1045
|
+
main = scaleway.databases.Instance("main",
|
1046
|
+
node_type="db-dev-s",
|
1047
|
+
engine="PostgreSQL-15")
|
1048
|
+
```
|
1049
|
+
|
1050
|
+
> **Note** If nothing is defined, your Database Instance will have a default public load-balancer endpoint.
|
1051
|
+
|
1052
|
+
## Limitations
|
1053
|
+
|
1054
|
+
The Managed Database product is only compliant with the Private Network in the default availability zone (AZ).
|
1055
|
+
i.e. `fr-par-1`, `nl-ams-1`, `pl-waw-1`. To learn more, read our
|
1056
|
+
section [How to connect a PostgreSQL and MySQL Database Instance to a Private Network](https://www.scaleway.com/en/docs/managed-databases/postgresql-and-mysql/how-to/connect-database-private-network/)
|
1057
|
+
|
1058
|
+
## Import
|
1059
|
+
|
1060
|
+
Database Instance can be imported using the `{region}/{id}`, e.g.
|
1061
|
+
|
1062
|
+
bash
|
1063
|
+
|
1064
|
+
```sh
|
1065
|
+
$ pulumi import scaleway:databases/instance:Instance rdb01 fr-par/11111111-1111-1111-1111-111111111111
|
1066
|
+
```
|
1067
|
+
|
1068
|
+
:param str resource_name: The name of the resource.
|
1069
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
1070
|
+
:param pulumi.Input[bool] backup_same_region: Boolean to store logical backups in the same region as the database instance
|
1071
|
+
:param pulumi.Input[int] backup_schedule_frequency: Backup schedule frequency in hours
|
1072
|
+
:param pulumi.Input[int] backup_schedule_retention: Backup schedule retention in days
|
1073
|
+
:param pulumi.Input[bool] disable_backup: Disable automated backup for the database instance
|
1074
|
+
:param pulumi.Input[bool] encryption_at_rest: Enable or disable encryption at rest for the Database Instance.
|
1075
|
+
:param pulumi.Input[str] engine: Database Instance's engine version (e.g. `PostgreSQL-11`).
|
1076
|
+
|
1077
|
+
> **Important** Updates to `engine` will recreate the Database Instance.
|
1078
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] init_settings: Map of engine settings to be set at database initialisation.
|
1079
|
+
:param pulumi.Input[bool] is_ha_cluster: Enable or disable high availability for the Database Instance.
|
1080
|
+
|
1081
|
+
> **Important** Updates to `is_ha_cluster` will recreate the Database Instance.
|
1082
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['InstanceLoadBalancerArgs', 'InstanceLoadBalancerArgsDict']]]] load_balancers: List of Load Balancer endpoints of the Database Instance.
|
1083
|
+
:param pulumi.Input[Union['InstanceLogsPolicyArgs', 'InstanceLogsPolicyArgsDict']] logs_policy: Logs policy configuration
|
1084
|
+
:param pulumi.Input[str] name: The name of the Database Instance.
|
1085
|
+
:param pulumi.Input[str] node_type: The type of Database Instance you want to create (e.g. `db-dev-s`).
|
1086
|
+
|
1087
|
+
> **Important** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
|
1088
|
+
interruption.
|
1089
|
+
|
1090
|
+
> **Important** Once your Database Instance reaches `disk_full` status, if you are using `lssd` storage, you should upgrade the `node_type`, and if you are using `bssd` storage, you should increase the volume size before making any other changes to your Database Instance.
|
1091
|
+
:param pulumi.Input[str] password: Password for the first user of the Database Instance.
|
1092
|
+
:param pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']] private_network: List of Private Networks endpoints of the Database Instance.
|
1093
|
+
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the Database
|
1094
|
+
Instance is associated with.
|
1095
|
+
:param pulumi.Input[str] region: `region`) The region
|
1096
|
+
in which the Database Instance should be created.
|
1097
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of engine settings to be set on a running instance.
|
1098
|
+
:param pulumi.Input[str] snapshot_id: ID of an existing snapshot to create a new instance from. This allows restoring a database instance to the state
|
1099
|
+
captured in the specified snapshot. Conflicts with the `engine` attribute.
|
1100
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the Database Instance.
|
1101
|
+
:param pulumi.Input[str] user_name: Identifier for the first user of the Database Instance.
|
1102
|
+
|
1103
|
+
> **Important** Updates to `user_name` will recreate the Database Instance.
|
1104
|
+
:param pulumi.Input[int] volume_size_in_gb: Volume size (in GB). Cannot be used when `volume_type` is set to `lssd`.
|
1105
|
+
|
1106
|
+
> **Important** Once your Database Instance reaches `disk_full` status, you should increase the volume size before making any other change to your Database Instance.
|
1107
|
+
:param pulumi.Input[str] volume_type: Type of volume where data are stored (`bssd`, `lssd`, `sbs_5k` or `sbs_15k`).
|
1108
|
+
"""
|
1109
|
+
...
|
1110
|
+
@overload
|
1111
|
+
def __init__(__self__,
|
1112
|
+
resource_name: str,
|
1113
|
+
args: InstanceArgs,
|
1114
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
1115
|
+
"""
|
1116
|
+
Creates and manages Scaleway Database Instances.
|
1117
|
+
For more information, see refer to the [API documentation](https://www.scaleway.com/en/developers/api/managed-database-postgre-mysql/).
|
1118
|
+
|
1119
|
+
## Example Usage
|
1120
|
+
|
1121
|
+
### Example Basic
|
1122
|
+
|
1123
|
+
```python
|
1124
|
+
import pulumi
|
1125
|
+
import pulumiverse_scaleway as scaleway
|
1126
|
+
|
1127
|
+
main = scaleway.databases.Instance("main",
|
1128
|
+
name="test-rdb",
|
1129
|
+
node_type="DB-DEV-S",
|
1130
|
+
engine="PostgreSQL-15",
|
1131
|
+
is_ha_cluster=True,
|
1132
|
+
disable_backup=True,
|
1133
|
+
user_name="my_initial_user",
|
1134
|
+
password="thiZ_is_v&ry_s3cret",
|
1135
|
+
encryption_at_rest=True)
|
1136
|
+
```
|
1137
|
+
|
1138
|
+
### Example Block Storage Low Latency
|
1139
|
+
|
1140
|
+
```python
|
1141
|
+
import pulumi
|
1142
|
+
import pulumiverse_scaleway as scaleway
|
1143
|
+
|
1144
|
+
main = scaleway.databases.Instance("main",
|
1145
|
+
name="test-rdb-sbs",
|
1146
|
+
node_type="db-play2-pico",
|
1147
|
+
engine="PostgreSQL-15",
|
1148
|
+
is_ha_cluster=True,
|
1149
|
+
disable_backup=True,
|
1150
|
+
user_name="my_initial_user",
|
1151
|
+
password="thiZ_is_v&ry_s3cret",
|
1152
|
+
volume_type="sbs_15k",
|
1153
|
+
volume_size_in_gb=10)
|
1154
|
+
```
|
1155
|
+
|
1156
|
+
### Example with Settings
|
1157
|
+
|
1158
|
+
```python
|
1159
|
+
import pulumi
|
1160
|
+
import pulumiverse_scaleway as scaleway
|
1161
|
+
|
1162
|
+
main = scaleway.databases.Instance("main",
|
1163
|
+
name="test-rdb",
|
1164
|
+
node_type="db-dev-s",
|
1165
|
+
disable_backup=True,
|
1166
|
+
engine="MySQL-8",
|
1167
|
+
user_name="my_initial_user",
|
1168
|
+
password="thiZ_is_v&ry_s3cret",
|
1169
|
+
init_settings={
|
1170
|
+
"lower_case_table_names": "1",
|
1171
|
+
},
|
1172
|
+
settings={
|
1173
|
+
"max_connections": "350",
|
1174
|
+
})
|
1175
|
+
```
|
1176
|
+
|
1177
|
+
### Example with backup schedule
|
1178
|
+
|
1179
|
+
```python
|
1180
|
+
import pulumi
|
1181
|
+
import pulumiverse_scaleway as scaleway
|
1182
|
+
|
1183
|
+
main = scaleway.databases.Instance("main",
|
1184
|
+
name="test-rdb",
|
1185
|
+
node_type="DB-DEV-S",
|
1186
|
+
engine="PostgreSQL-15",
|
1187
|
+
is_ha_cluster=True,
|
1188
|
+
user_name="my_initial_user",
|
1189
|
+
password="thiZ_is_v&ry_s3cret",
|
1190
|
+
disable_backup=False,
|
1191
|
+
backup_schedule_frequency=24,
|
1192
|
+
backup_schedule_retention=7)
|
1193
|
+
```
|
1194
|
+
|
1195
|
+
### Examples of endpoint configuration
|
1196
|
+
|
1197
|
+
Database Instances can have a maximum of 1 public endpoint and 1 private endpoint. They can have both, or none.
|
1198
|
+
|
1199
|
+
### 1 static Private Network endpoint
|
1200
|
+
|
1201
|
+
```python
|
1202
|
+
import pulumi
|
1203
|
+
import pulumiverse_scaleway as scaleway
|
1204
|
+
|
1205
|
+
pn = scaleway.network.PrivateNetwork("pn", ipv4_subnet={
|
1206
|
+
"subnet": "172.16.20.0/22",
|
1207
|
+
})
|
1208
|
+
main = scaleway.databases.Instance("main",
|
1209
|
+
node_type="db-dev-s",
|
1210
|
+
engine="PostgreSQL-15",
|
1211
|
+
private_network={
|
1212
|
+
"pn_id": pn.id,
|
1213
|
+
"ip_net": "172.16.20.4/22",
|
1214
|
+
})
|
1215
|
+
```
|
1216
|
+
|
1217
|
+
### 1 IPAM Private Network endpoint + 1 public endpoint
|
1218
|
+
|
1219
|
+
```python
|
1220
|
+
import pulumi
|
1221
|
+
import pulumiverse_scaleway as scaleway
|
1222
|
+
|
1223
|
+
pn = scaleway.network.PrivateNetwork("pn")
|
1224
|
+
main = scaleway.databases.Instance("main",
|
1225
|
+
load_balancers=[{}],
|
1226
|
+
node_type="DB-DEV-S",
|
1227
|
+
engine="PostgreSQL-15",
|
1228
|
+
private_network={
|
1229
|
+
"pn_id": pn.id,
|
1230
|
+
"enable_ipam": True,
|
1231
|
+
})
|
1232
|
+
```
|
1233
|
+
|
1234
|
+
### Default: 1 public endpoint
|
1235
|
+
|
1236
|
+
```python
|
1237
|
+
import pulumi
|
1238
|
+
import pulumiverse_scaleway as scaleway
|
1239
|
+
|
1240
|
+
main = scaleway.databases.Instance("main",
|
1241
|
+
node_type="db-dev-s",
|
1242
|
+
engine="PostgreSQL-15")
|
1243
|
+
```
|
1244
|
+
|
1245
|
+
> **Note** If nothing is defined, your Database Instance will have a default public load-balancer endpoint.
|
1246
|
+
|
1247
|
+
## Limitations
|
1248
|
+
|
1249
|
+
The Managed Database product is only compliant with the Private Network in the default availability zone (AZ).
|
1250
|
+
i.e. `fr-par-1`, `nl-ams-1`, `pl-waw-1`. To learn more, read our
|
1251
|
+
section [How to connect a PostgreSQL and MySQL Database Instance to a Private Network](https://www.scaleway.com/en/docs/managed-databases/postgresql-and-mysql/how-to/connect-database-private-network/)
|
1252
|
+
|
1253
|
+
## Import
|
1254
|
+
|
1255
|
+
Database Instance can be imported using the `{region}/{id}`, e.g.
|
1256
|
+
|
1257
|
+
bash
|
1258
|
+
|
1259
|
+
```sh
|
1260
|
+
$ pulumi import scaleway:databases/instance:Instance rdb01 fr-par/11111111-1111-1111-1111-111111111111
|
1261
|
+
```
|
1262
|
+
|
1263
|
+
:param str resource_name: The name of the resource.
|
1264
|
+
:param InstanceArgs args: The arguments to use to populate this resource's properties.
|
1265
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
1266
|
+
"""
|
1267
|
+
...
|
1268
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
1269
|
+
resource_args, opts = _utilities.get_resource_args_opts(InstanceArgs, pulumi.ResourceOptions, *args, **kwargs)
|
1270
|
+
if resource_args is not None:
|
1271
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
1272
|
+
else:
|
1273
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
1274
|
+
|
1275
|
+
def _internal_init(__self__,
|
1276
|
+
resource_name: str,
|
1277
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
1278
|
+
backup_same_region: Optional[pulumi.Input[bool]] = None,
|
1279
|
+
backup_schedule_frequency: Optional[pulumi.Input[int]] = None,
|
1280
|
+
backup_schedule_retention: Optional[pulumi.Input[int]] = None,
|
1281
|
+
disable_backup: Optional[pulumi.Input[bool]] = None,
|
1282
|
+
encryption_at_rest: Optional[pulumi.Input[bool]] = None,
|
1283
|
+
engine: Optional[pulumi.Input[str]] = None,
|
1284
|
+
init_settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
1285
|
+
is_ha_cluster: Optional[pulumi.Input[bool]] = None,
|
1286
|
+
load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceLoadBalancerArgs', 'InstanceLoadBalancerArgsDict']]]]] = None,
|
1287
|
+
logs_policy: Optional[pulumi.Input[Union['InstanceLogsPolicyArgs', 'InstanceLogsPolicyArgsDict']]] = None,
|
1288
|
+
name: Optional[pulumi.Input[str]] = None,
|
1289
|
+
node_type: Optional[pulumi.Input[str]] = None,
|
1290
|
+
password: Optional[pulumi.Input[str]] = None,
|
1291
|
+
private_network: Optional[pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']]] = None,
|
1292
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
1293
|
+
region: Optional[pulumi.Input[str]] = None,
|
1294
|
+
settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
1295
|
+
snapshot_id: Optional[pulumi.Input[str]] = None,
|
1296
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1297
|
+
user_name: Optional[pulumi.Input[str]] = None,
|
1298
|
+
volume_size_in_gb: Optional[pulumi.Input[int]] = None,
|
1299
|
+
volume_type: Optional[pulumi.Input[str]] = None,
|
1300
|
+
__props__=None):
|
1301
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
1302
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
1303
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
1304
|
+
if opts.id is None:
|
1305
|
+
if __props__ is not None:
|
1306
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
1307
|
+
__props__ = InstanceArgs.__new__(InstanceArgs)
|
1308
|
+
|
1309
|
+
__props__.__dict__["backup_same_region"] = backup_same_region
|
1310
|
+
__props__.__dict__["backup_schedule_frequency"] = backup_schedule_frequency
|
1311
|
+
__props__.__dict__["backup_schedule_retention"] = backup_schedule_retention
|
1312
|
+
__props__.__dict__["disable_backup"] = disable_backup
|
1313
|
+
__props__.__dict__["encryption_at_rest"] = encryption_at_rest
|
1314
|
+
__props__.__dict__["engine"] = engine
|
1315
|
+
__props__.__dict__["init_settings"] = init_settings
|
1316
|
+
__props__.__dict__["is_ha_cluster"] = is_ha_cluster
|
1317
|
+
__props__.__dict__["load_balancers"] = load_balancers
|
1318
|
+
__props__.__dict__["logs_policy"] = logs_policy
|
1319
|
+
__props__.__dict__["name"] = name
|
1320
|
+
if node_type is None and not opts.urn:
|
1321
|
+
raise TypeError("Missing required property 'node_type'")
|
1322
|
+
__props__.__dict__["node_type"] = node_type
|
1323
|
+
__props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
|
1324
|
+
__props__.__dict__["private_network"] = private_network
|
1325
|
+
__props__.__dict__["project_id"] = project_id
|
1326
|
+
__props__.__dict__["region"] = region
|
1327
|
+
__props__.__dict__["settings"] = settings
|
1328
|
+
__props__.__dict__["snapshot_id"] = snapshot_id
|
1329
|
+
__props__.__dict__["tags"] = tags
|
1330
|
+
__props__.__dict__["user_name"] = user_name
|
1331
|
+
__props__.__dict__["volume_size_in_gb"] = volume_size_in_gb
|
1332
|
+
__props__.__dict__["volume_type"] = volume_type
|
1333
|
+
__props__.__dict__["certificate"] = None
|
1334
|
+
__props__.__dict__["endpoint_ip"] = None
|
1335
|
+
__props__.__dict__["endpoint_port"] = None
|
1336
|
+
__props__.__dict__["organization_id"] = None
|
1337
|
+
__props__.__dict__["read_replicas"] = None
|
1338
|
+
alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/databaseInstance:DatabaseInstance")])
|
1339
|
+
opts = pulumi.ResourceOptions.merge(opts, alias_opts)
|
1340
|
+
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["password"])
|
1341
|
+
opts = pulumi.ResourceOptions.merge(opts, secret_opts)
|
1342
|
+
super(Instance, __self__).__init__(
|
1343
|
+
'scaleway:databases/instance:Instance',
|
1344
|
+
resource_name,
|
1345
|
+
__props__,
|
1346
|
+
opts)
|
1347
|
+
|
1348
|
+
@staticmethod
|
1349
|
+
def get(resource_name: str,
|
1350
|
+
id: pulumi.Input[str],
|
1351
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
1352
|
+
backup_same_region: Optional[pulumi.Input[bool]] = None,
|
1353
|
+
backup_schedule_frequency: Optional[pulumi.Input[int]] = None,
|
1354
|
+
backup_schedule_retention: Optional[pulumi.Input[int]] = None,
|
1355
|
+
certificate: Optional[pulumi.Input[str]] = None,
|
1356
|
+
disable_backup: Optional[pulumi.Input[bool]] = None,
|
1357
|
+
encryption_at_rest: Optional[pulumi.Input[bool]] = None,
|
1358
|
+
endpoint_ip: Optional[pulumi.Input[str]] = None,
|
1359
|
+
endpoint_port: Optional[pulumi.Input[int]] = None,
|
1360
|
+
engine: Optional[pulumi.Input[str]] = None,
|
1361
|
+
init_settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
1362
|
+
is_ha_cluster: Optional[pulumi.Input[bool]] = None,
|
1363
|
+
load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceLoadBalancerArgs', 'InstanceLoadBalancerArgsDict']]]]] = None,
|
1364
|
+
logs_policy: Optional[pulumi.Input[Union['InstanceLogsPolicyArgs', 'InstanceLogsPolicyArgsDict']]] = None,
|
1365
|
+
name: Optional[pulumi.Input[str]] = None,
|
1366
|
+
node_type: Optional[pulumi.Input[str]] = None,
|
1367
|
+
organization_id: Optional[pulumi.Input[str]] = None,
|
1368
|
+
password: Optional[pulumi.Input[str]] = None,
|
1369
|
+
private_network: Optional[pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']]] = None,
|
1370
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
1371
|
+
read_replicas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceReadReplicaArgs', 'InstanceReadReplicaArgsDict']]]]] = None,
|
1372
|
+
region: Optional[pulumi.Input[str]] = None,
|
1373
|
+
settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
1374
|
+
snapshot_id: Optional[pulumi.Input[str]] = None,
|
1375
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1376
|
+
user_name: Optional[pulumi.Input[str]] = None,
|
1377
|
+
volume_size_in_gb: Optional[pulumi.Input[int]] = None,
|
1378
|
+
volume_type: Optional[pulumi.Input[str]] = None) -> 'Instance':
|
1379
|
+
"""
|
1380
|
+
Get an existing Instance resource's state with the given name, id, and optional extra
|
1381
|
+
properties used to qualify the lookup.
|
1382
|
+
|
1383
|
+
:param str resource_name: The unique name of the resulting resource.
|
1384
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
1385
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
1386
|
+
:param pulumi.Input[bool] backup_same_region: Boolean to store logical backups in the same region as the database instance
|
1387
|
+
:param pulumi.Input[int] backup_schedule_frequency: Backup schedule frequency in hours
|
1388
|
+
:param pulumi.Input[int] backup_schedule_retention: Backup schedule retention in days
|
1389
|
+
:param pulumi.Input[str] certificate: Certificate of the Database Instance.
|
1390
|
+
:param pulumi.Input[bool] disable_backup: Disable automated backup for the database instance
|
1391
|
+
:param pulumi.Input[bool] encryption_at_rest: Enable or disable encryption at rest for the Database Instance.
|
1392
|
+
:param pulumi.Input[str] endpoint_ip: (Deprecated) The IP of the Database Instance. Please use the private_network or the load_balancer attribute.
|
1393
|
+
:param pulumi.Input[int] endpoint_port: (Deprecated) The port of the Database Instance. Please use the private_network or the load_balancer attribute.
|
1394
|
+
:param pulumi.Input[str] engine: Database Instance's engine version (e.g. `PostgreSQL-11`).
|
1395
|
+
|
1396
|
+
> **Important** Updates to `engine` will recreate the Database Instance.
|
1397
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] init_settings: Map of engine settings to be set at database initialisation.
|
1398
|
+
:param pulumi.Input[bool] is_ha_cluster: Enable or disable high availability for the Database Instance.
|
1399
|
+
|
1400
|
+
> **Important** Updates to `is_ha_cluster` will recreate the Database Instance.
|
1401
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['InstanceLoadBalancerArgs', 'InstanceLoadBalancerArgsDict']]]] load_balancers: List of Load Balancer endpoints of the Database Instance.
|
1402
|
+
:param pulumi.Input[Union['InstanceLogsPolicyArgs', 'InstanceLogsPolicyArgsDict']] logs_policy: Logs policy configuration
|
1403
|
+
:param pulumi.Input[str] name: The name of the Database Instance.
|
1404
|
+
:param pulumi.Input[str] node_type: The type of Database Instance you want to create (e.g. `db-dev-s`).
|
1405
|
+
|
1406
|
+
> **Important** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
|
1407
|
+
interruption.
|
1408
|
+
|
1409
|
+
> **Important** Once your Database Instance reaches `disk_full` status, if you are using `lssd` storage, you should upgrade the `node_type`, and if you are using `bssd` storage, you should increase the volume size before making any other changes to your Database Instance.
|
1410
|
+
:param pulumi.Input[str] organization_id: The organization ID the Database Instance is associated with.
|
1411
|
+
:param pulumi.Input[str] password: Password for the first user of the Database Instance.
|
1412
|
+
:param pulumi.Input[Union['InstancePrivateNetworkArgs', 'InstancePrivateNetworkArgsDict']] private_network: List of Private Networks endpoints of the Database Instance.
|
1413
|
+
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the Database
|
1414
|
+
Instance is associated with.
|
1415
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['InstanceReadReplicaArgs', 'InstanceReadReplicaArgsDict']]]] read_replicas: List of read replicas of the Database Instance.
|
1416
|
+
:param pulumi.Input[str] region: `region`) The region
|
1417
|
+
in which the Database Instance should be created.
|
1418
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of engine settings to be set on a running instance.
|
1419
|
+
:param pulumi.Input[str] snapshot_id: ID of an existing snapshot to create a new instance from. This allows restoring a database instance to the state
|
1420
|
+
captured in the specified snapshot. Conflicts with the `engine` attribute.
|
1421
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the Database Instance.
|
1422
|
+
:param pulumi.Input[str] user_name: Identifier for the first user of the Database Instance.
|
1423
|
+
|
1424
|
+
> **Important** Updates to `user_name` will recreate the Database Instance.
|
1425
|
+
:param pulumi.Input[int] volume_size_in_gb: Volume size (in GB). Cannot be used when `volume_type` is set to `lssd`.
|
1426
|
+
|
1427
|
+
> **Important** Once your Database Instance reaches `disk_full` status, you should increase the volume size before making any other change to your Database Instance.
|
1428
|
+
:param pulumi.Input[str] volume_type: Type of volume where data are stored (`bssd`, `lssd`, `sbs_5k` or `sbs_15k`).
|
1429
|
+
"""
|
1430
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
1431
|
+
|
1432
|
+
__props__ = _InstanceState.__new__(_InstanceState)
|
1433
|
+
|
1434
|
+
__props__.__dict__["backup_same_region"] = backup_same_region
|
1435
|
+
__props__.__dict__["backup_schedule_frequency"] = backup_schedule_frequency
|
1436
|
+
__props__.__dict__["backup_schedule_retention"] = backup_schedule_retention
|
1437
|
+
__props__.__dict__["certificate"] = certificate
|
1438
|
+
__props__.__dict__["disable_backup"] = disable_backup
|
1439
|
+
__props__.__dict__["encryption_at_rest"] = encryption_at_rest
|
1440
|
+
__props__.__dict__["endpoint_ip"] = endpoint_ip
|
1441
|
+
__props__.__dict__["endpoint_port"] = endpoint_port
|
1442
|
+
__props__.__dict__["engine"] = engine
|
1443
|
+
__props__.__dict__["init_settings"] = init_settings
|
1444
|
+
__props__.__dict__["is_ha_cluster"] = is_ha_cluster
|
1445
|
+
__props__.__dict__["load_balancers"] = load_balancers
|
1446
|
+
__props__.__dict__["logs_policy"] = logs_policy
|
1447
|
+
__props__.__dict__["name"] = name
|
1448
|
+
__props__.__dict__["node_type"] = node_type
|
1449
|
+
__props__.__dict__["organization_id"] = organization_id
|
1450
|
+
__props__.__dict__["password"] = password
|
1451
|
+
__props__.__dict__["private_network"] = private_network
|
1452
|
+
__props__.__dict__["project_id"] = project_id
|
1453
|
+
__props__.__dict__["read_replicas"] = read_replicas
|
1454
|
+
__props__.__dict__["region"] = region
|
1455
|
+
__props__.__dict__["settings"] = settings
|
1456
|
+
__props__.__dict__["snapshot_id"] = snapshot_id
|
1457
|
+
__props__.__dict__["tags"] = tags
|
1458
|
+
__props__.__dict__["user_name"] = user_name
|
1459
|
+
__props__.__dict__["volume_size_in_gb"] = volume_size_in_gb
|
1460
|
+
__props__.__dict__["volume_type"] = volume_type
|
1461
|
+
return Instance(resource_name, opts=opts, __props__=__props__)
|
1462
|
+
|
1463
|
+
@property
|
1464
|
+
@pulumi.getter(name="backupSameRegion")
|
1465
|
+
def backup_same_region(self) -> pulumi.Output[bool]:
|
1466
|
+
"""
|
1467
|
+
Boolean to store logical backups in the same region as the database instance
|
1468
|
+
"""
|
1469
|
+
return pulumi.get(self, "backup_same_region")
|
1470
|
+
|
1471
|
+
@property
|
1472
|
+
@pulumi.getter(name="backupScheduleFrequency")
|
1473
|
+
def backup_schedule_frequency(self) -> pulumi.Output[int]:
|
1474
|
+
"""
|
1475
|
+
Backup schedule frequency in hours
|
1476
|
+
"""
|
1477
|
+
return pulumi.get(self, "backup_schedule_frequency")
|
1478
|
+
|
1479
|
+
@property
|
1480
|
+
@pulumi.getter(name="backupScheduleRetention")
|
1481
|
+
def backup_schedule_retention(self) -> pulumi.Output[int]:
|
1482
|
+
"""
|
1483
|
+
Backup schedule retention in days
|
1484
|
+
"""
|
1485
|
+
return pulumi.get(self, "backup_schedule_retention")
|
1486
|
+
|
1487
|
+
@property
|
1488
|
+
@pulumi.getter
|
1489
|
+
def certificate(self) -> pulumi.Output[str]:
|
1490
|
+
"""
|
1491
|
+
Certificate of the Database Instance.
|
1492
|
+
"""
|
1493
|
+
return pulumi.get(self, "certificate")
|
1494
|
+
|
1495
|
+
@property
|
1496
|
+
@pulumi.getter(name="disableBackup")
|
1497
|
+
def disable_backup(self) -> pulumi.Output[Optional[bool]]:
|
1498
|
+
"""
|
1499
|
+
Disable automated backup for the database instance
|
1500
|
+
"""
|
1501
|
+
return pulumi.get(self, "disable_backup")
|
1502
|
+
|
1503
|
+
@property
|
1504
|
+
@pulumi.getter(name="encryptionAtRest")
|
1505
|
+
def encryption_at_rest(self) -> pulumi.Output[Optional[bool]]:
|
1506
|
+
"""
|
1507
|
+
Enable or disable encryption at rest for the Database Instance.
|
1508
|
+
"""
|
1509
|
+
return pulumi.get(self, "encryption_at_rest")
|
1510
|
+
|
1511
|
+
@property
|
1512
|
+
@pulumi.getter(name="endpointIp")
|
1513
|
+
@_utilities.deprecated("""Please use the private_network or the load_balancer attribute""")
|
1514
|
+
def endpoint_ip(self) -> pulumi.Output[str]:
|
1515
|
+
"""
|
1516
|
+
(Deprecated) The IP of the Database Instance. Please use the private_network or the load_balancer attribute.
|
1517
|
+
"""
|
1518
|
+
return pulumi.get(self, "endpoint_ip")
|
1519
|
+
|
1520
|
+
@property
|
1521
|
+
@pulumi.getter(name="endpointPort")
|
1522
|
+
@_utilities.deprecated("""Please use the private_network or the load_balancer attribute""")
|
1523
|
+
def endpoint_port(self) -> pulumi.Output[int]:
|
1524
|
+
"""
|
1525
|
+
(Deprecated) The port of the Database Instance. Please use the private_network or the load_balancer attribute.
|
1526
|
+
"""
|
1527
|
+
return pulumi.get(self, "endpoint_port")
|
1528
|
+
|
1529
|
+
@property
|
1530
|
+
@pulumi.getter
|
1531
|
+
def engine(self) -> pulumi.Output[str]:
|
1532
|
+
"""
|
1533
|
+
Database Instance's engine version (e.g. `PostgreSQL-11`).
|
1534
|
+
|
1535
|
+
> **Important** Updates to `engine` will recreate the Database Instance.
|
1536
|
+
"""
|
1537
|
+
return pulumi.get(self, "engine")
|
1538
|
+
|
1539
|
+
@property
|
1540
|
+
@pulumi.getter(name="initSettings")
|
1541
|
+
def init_settings(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
|
1542
|
+
"""
|
1543
|
+
Map of engine settings to be set at database initialisation.
|
1544
|
+
"""
|
1545
|
+
return pulumi.get(self, "init_settings")
|
1546
|
+
|
1547
|
+
@property
|
1548
|
+
@pulumi.getter(name="isHaCluster")
|
1549
|
+
def is_ha_cluster(self) -> pulumi.Output[Optional[bool]]:
|
1550
|
+
"""
|
1551
|
+
Enable or disable high availability for the Database Instance.
|
1552
|
+
|
1553
|
+
> **Important** Updates to `is_ha_cluster` will recreate the Database Instance.
|
1554
|
+
"""
|
1555
|
+
return pulumi.get(self, "is_ha_cluster")
|
1556
|
+
|
1557
|
+
@property
|
1558
|
+
@pulumi.getter(name="loadBalancers")
|
1559
|
+
def load_balancers(self) -> pulumi.Output[Sequence['outputs.InstanceLoadBalancer']]:
|
1560
|
+
"""
|
1561
|
+
List of Load Balancer endpoints of the Database Instance.
|
1562
|
+
"""
|
1563
|
+
return pulumi.get(self, "load_balancers")
|
1564
|
+
|
1565
|
+
@property
|
1566
|
+
@pulumi.getter(name="logsPolicy")
|
1567
|
+
def logs_policy(self) -> pulumi.Output['outputs.InstanceLogsPolicy']:
|
1568
|
+
"""
|
1569
|
+
Logs policy configuration
|
1570
|
+
"""
|
1571
|
+
return pulumi.get(self, "logs_policy")
|
1572
|
+
|
1573
|
+
@property
|
1574
|
+
@pulumi.getter
|
1575
|
+
def name(self) -> pulumi.Output[str]:
|
1576
|
+
"""
|
1577
|
+
The name of the Database Instance.
|
1578
|
+
"""
|
1579
|
+
return pulumi.get(self, "name")
|
1580
|
+
|
1581
|
+
@property
|
1582
|
+
@pulumi.getter(name="nodeType")
|
1583
|
+
def node_type(self) -> pulumi.Output[str]:
|
1584
|
+
"""
|
1585
|
+
The type of Database Instance you want to create (e.g. `db-dev-s`).
|
1586
|
+
|
1587
|
+
> **Important** Updates to `node_type` will upgrade the Database Instance to the desired `node_type` without any
|
1588
|
+
interruption.
|
1589
|
+
|
1590
|
+
> **Important** Once your Database Instance reaches `disk_full` status, if you are using `lssd` storage, you should upgrade the `node_type`, and if you are using `bssd` storage, you should increase the volume size before making any other changes to your Database Instance.
|
1591
|
+
"""
|
1592
|
+
return pulumi.get(self, "node_type")
|
1593
|
+
|
1594
|
+
@property
|
1595
|
+
@pulumi.getter(name="organizationId")
|
1596
|
+
def organization_id(self) -> pulumi.Output[str]:
|
1597
|
+
"""
|
1598
|
+
The organization ID the Database Instance is associated with.
|
1599
|
+
"""
|
1600
|
+
return pulumi.get(self, "organization_id")
|
1601
|
+
|
1602
|
+
@property
|
1603
|
+
@pulumi.getter
|
1604
|
+
def password(self) -> pulumi.Output[Optional[str]]:
|
1605
|
+
"""
|
1606
|
+
Password for the first user of the Database Instance.
|
1607
|
+
"""
|
1608
|
+
return pulumi.get(self, "password")
|
1609
|
+
|
1610
|
+
@property
|
1611
|
+
@pulumi.getter(name="privateNetwork")
|
1612
|
+
def private_network(self) -> pulumi.Output[Optional['outputs.InstancePrivateNetwork']]:
|
1613
|
+
"""
|
1614
|
+
List of Private Networks endpoints of the Database Instance.
|
1615
|
+
"""
|
1616
|
+
return pulumi.get(self, "private_network")
|
1617
|
+
|
1618
|
+
@property
|
1619
|
+
@pulumi.getter(name="projectId")
|
1620
|
+
def project_id(self) -> pulumi.Output[str]:
|
1621
|
+
"""
|
1622
|
+
`project_id`) The ID of the project the Database
|
1623
|
+
Instance is associated with.
|
1624
|
+
"""
|
1625
|
+
return pulumi.get(self, "project_id")
|
1626
|
+
|
1627
|
+
@property
|
1628
|
+
@pulumi.getter(name="readReplicas")
|
1629
|
+
def read_replicas(self) -> pulumi.Output[Sequence['outputs.InstanceReadReplica']]:
|
1630
|
+
"""
|
1631
|
+
List of read replicas of the Database Instance.
|
1632
|
+
"""
|
1633
|
+
return pulumi.get(self, "read_replicas")
|
1634
|
+
|
1635
|
+
@property
|
1636
|
+
@pulumi.getter
|
1637
|
+
def region(self) -> pulumi.Output[str]:
|
1638
|
+
"""
|
1639
|
+
`region`) The region
|
1640
|
+
in which the Database Instance should be created.
|
1641
|
+
"""
|
1642
|
+
return pulumi.get(self, "region")
|
1643
|
+
|
1644
|
+
@property
|
1645
|
+
@pulumi.getter
|
1646
|
+
def settings(self) -> pulumi.Output[Mapping[str, str]]:
|
1647
|
+
"""
|
1648
|
+
Map of engine settings to be set on a running instance.
|
1649
|
+
"""
|
1650
|
+
return pulumi.get(self, "settings")
|
1651
|
+
|
1652
|
+
@property
|
1653
|
+
@pulumi.getter(name="snapshotId")
|
1654
|
+
def snapshot_id(self) -> pulumi.Output[Optional[str]]:
|
1655
|
+
"""
|
1656
|
+
ID of an existing snapshot to create a new instance from. This allows restoring a database instance to the state
|
1657
|
+
captured in the specified snapshot. Conflicts with the `engine` attribute.
|
1658
|
+
"""
|
1659
|
+
return pulumi.get(self, "snapshot_id")
|
1660
|
+
|
1661
|
+
@property
|
1662
|
+
@pulumi.getter
|
1663
|
+
def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
1664
|
+
"""
|
1665
|
+
The tags associated with the Database Instance.
|
1666
|
+
"""
|
1667
|
+
return pulumi.get(self, "tags")
|
1668
|
+
|
1669
|
+
@property
|
1670
|
+
@pulumi.getter(name="userName")
|
1671
|
+
def user_name(self) -> pulumi.Output[str]:
|
1672
|
+
"""
|
1673
|
+
Identifier for the first user of the Database Instance.
|
1674
|
+
|
1675
|
+
> **Important** Updates to `user_name` will recreate the Database Instance.
|
1676
|
+
"""
|
1677
|
+
return pulumi.get(self, "user_name")
|
1678
|
+
|
1679
|
+
@property
|
1680
|
+
@pulumi.getter(name="volumeSizeInGb")
|
1681
|
+
def volume_size_in_gb(self) -> pulumi.Output[int]:
|
1682
|
+
"""
|
1683
|
+
Volume size (in GB). Cannot be used when `volume_type` is set to `lssd`.
|
1684
|
+
|
1685
|
+
> **Important** Once your Database Instance reaches `disk_full` status, you should increase the volume size before making any other change to your Database Instance.
|
1686
|
+
"""
|
1687
|
+
return pulumi.get(self, "volume_size_in_gb")
|
1688
|
+
|
1689
|
+
@property
|
1690
|
+
@pulumi.getter(name="volumeType")
|
1691
|
+
def volume_type(self) -> pulumi.Output[Optional[str]]:
|
1692
|
+
"""
|
1693
|
+
Type of volume where data are stored (`bssd`, `lssd`, `sbs_5k` or `sbs_15k`).
|
1694
|
+
"""
|
1695
|
+
return pulumi.get(self, "volume_type")
|
1696
|
+
|