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,382 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import sys
|
8
|
+
import pulumi
|
9
|
+
import pulumi.runtime
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
11
|
+
if sys.version_info >= (3, 11):
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
13
|
+
else:
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
15
|
+
from .. import _utilities
|
16
|
+
|
17
|
+
__all__ = [
|
18
|
+
'GetPublicGatewayDhcpReservationResult',
|
19
|
+
'AwaitableGetPublicGatewayDhcpReservationResult',
|
20
|
+
'get_public_gateway_dhcp_reservation',
|
21
|
+
'get_public_gateway_dhcp_reservation_output',
|
22
|
+
]
|
23
|
+
|
24
|
+
@pulumi.output_type
|
25
|
+
class GetPublicGatewayDhcpReservationResult:
|
26
|
+
"""
|
27
|
+
A collection of values returned by getPublicGatewayDhcpReservation.
|
28
|
+
"""
|
29
|
+
def __init__(__self__, created_at=None, gateway_network_id=None, hostname=None, id=None, ip_address=None, mac_address=None, reservation_id=None, type=None, updated_at=None, wait_for_dhcp=None, zone=None):
|
30
|
+
if created_at and not isinstance(created_at, str):
|
31
|
+
raise TypeError("Expected argument 'created_at' to be a str")
|
32
|
+
pulumi.set(__self__, "created_at", created_at)
|
33
|
+
if gateway_network_id and not isinstance(gateway_network_id, str):
|
34
|
+
raise TypeError("Expected argument 'gateway_network_id' to be a str")
|
35
|
+
pulumi.set(__self__, "gateway_network_id", gateway_network_id)
|
36
|
+
if hostname and not isinstance(hostname, str):
|
37
|
+
raise TypeError("Expected argument 'hostname' to be a str")
|
38
|
+
pulumi.set(__self__, "hostname", hostname)
|
39
|
+
if id and not isinstance(id, str):
|
40
|
+
raise TypeError("Expected argument 'id' to be a str")
|
41
|
+
pulumi.set(__self__, "id", id)
|
42
|
+
if ip_address and not isinstance(ip_address, str):
|
43
|
+
raise TypeError("Expected argument 'ip_address' to be a str")
|
44
|
+
pulumi.set(__self__, "ip_address", ip_address)
|
45
|
+
if mac_address and not isinstance(mac_address, str):
|
46
|
+
raise TypeError("Expected argument 'mac_address' to be a str")
|
47
|
+
pulumi.set(__self__, "mac_address", mac_address)
|
48
|
+
if reservation_id and not isinstance(reservation_id, str):
|
49
|
+
raise TypeError("Expected argument 'reservation_id' to be a str")
|
50
|
+
pulumi.set(__self__, "reservation_id", reservation_id)
|
51
|
+
if type and not isinstance(type, str):
|
52
|
+
raise TypeError("Expected argument 'type' to be a str")
|
53
|
+
pulumi.set(__self__, "type", type)
|
54
|
+
if updated_at and not isinstance(updated_at, str):
|
55
|
+
raise TypeError("Expected argument 'updated_at' to be a str")
|
56
|
+
pulumi.set(__self__, "updated_at", updated_at)
|
57
|
+
if wait_for_dhcp and not isinstance(wait_for_dhcp, bool):
|
58
|
+
raise TypeError("Expected argument 'wait_for_dhcp' to be a bool")
|
59
|
+
pulumi.set(__self__, "wait_for_dhcp", wait_for_dhcp)
|
60
|
+
if zone and not isinstance(zone, str):
|
61
|
+
raise TypeError("Expected argument 'zone' to be a str")
|
62
|
+
pulumi.set(__self__, "zone", zone)
|
63
|
+
|
64
|
+
@property
|
65
|
+
@pulumi.getter(name="createdAt")
|
66
|
+
def created_at(self) -> str:
|
67
|
+
return pulumi.get(self, "created_at")
|
68
|
+
|
69
|
+
@property
|
70
|
+
@pulumi.getter(name="gatewayNetworkId")
|
71
|
+
def gateway_network_id(self) -> Optional[str]:
|
72
|
+
return pulumi.get(self, "gateway_network_id")
|
73
|
+
|
74
|
+
@property
|
75
|
+
@pulumi.getter
|
76
|
+
def hostname(self) -> str:
|
77
|
+
return pulumi.get(self, "hostname")
|
78
|
+
|
79
|
+
@property
|
80
|
+
@pulumi.getter
|
81
|
+
def id(self) -> str:
|
82
|
+
"""
|
83
|
+
The provider-assigned unique ID for this managed resource.
|
84
|
+
"""
|
85
|
+
return pulumi.get(self, "id")
|
86
|
+
|
87
|
+
@property
|
88
|
+
@pulumi.getter(name="ipAddress")
|
89
|
+
def ip_address(self) -> str:
|
90
|
+
return pulumi.get(self, "ip_address")
|
91
|
+
|
92
|
+
@property
|
93
|
+
@pulumi.getter(name="macAddress")
|
94
|
+
def mac_address(self) -> Optional[str]:
|
95
|
+
return pulumi.get(self, "mac_address")
|
96
|
+
|
97
|
+
@property
|
98
|
+
@pulumi.getter(name="reservationId")
|
99
|
+
def reservation_id(self) -> Optional[str]:
|
100
|
+
return pulumi.get(self, "reservation_id")
|
101
|
+
|
102
|
+
@property
|
103
|
+
@pulumi.getter
|
104
|
+
def type(self) -> str:
|
105
|
+
return pulumi.get(self, "type")
|
106
|
+
|
107
|
+
@property
|
108
|
+
@pulumi.getter(name="updatedAt")
|
109
|
+
def updated_at(self) -> str:
|
110
|
+
return pulumi.get(self, "updated_at")
|
111
|
+
|
112
|
+
@property
|
113
|
+
@pulumi.getter(name="waitForDhcp")
|
114
|
+
def wait_for_dhcp(self) -> Optional[bool]:
|
115
|
+
return pulumi.get(self, "wait_for_dhcp")
|
116
|
+
|
117
|
+
@property
|
118
|
+
@pulumi.getter
|
119
|
+
def zone(self) -> Optional[str]:
|
120
|
+
return pulumi.get(self, "zone")
|
121
|
+
|
122
|
+
|
123
|
+
class AwaitableGetPublicGatewayDhcpReservationResult(GetPublicGatewayDhcpReservationResult):
|
124
|
+
# pylint: disable=using-constant-test
|
125
|
+
def __await__(self):
|
126
|
+
if False:
|
127
|
+
yield self
|
128
|
+
return GetPublicGatewayDhcpReservationResult(
|
129
|
+
created_at=self.created_at,
|
130
|
+
gateway_network_id=self.gateway_network_id,
|
131
|
+
hostname=self.hostname,
|
132
|
+
id=self.id,
|
133
|
+
ip_address=self.ip_address,
|
134
|
+
mac_address=self.mac_address,
|
135
|
+
reservation_id=self.reservation_id,
|
136
|
+
type=self.type,
|
137
|
+
updated_at=self.updated_at,
|
138
|
+
wait_for_dhcp=self.wait_for_dhcp,
|
139
|
+
zone=self.zone)
|
140
|
+
|
141
|
+
|
142
|
+
def get_public_gateway_dhcp_reservation(gateway_network_id: Optional[str] = None,
|
143
|
+
mac_address: Optional[str] = None,
|
144
|
+
reservation_id: Optional[str] = None,
|
145
|
+
wait_for_dhcp: Optional[bool] = None,
|
146
|
+
zone: Optional[str] = None,
|
147
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetPublicGatewayDhcpReservationResult:
|
148
|
+
"""
|
149
|
+
Gets information about a DHCP entry. For further information, please see the
|
150
|
+
[API documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries).
|
151
|
+
|
152
|
+
## Example Dynamic
|
153
|
+
|
154
|
+
```python
|
155
|
+
import pulumi
|
156
|
+
import pulumi_scaleway as scaleway
|
157
|
+
import pulumiverse_scaleway as scaleway
|
158
|
+
|
159
|
+
main = scaleway.network.PrivateNetwork("main")
|
160
|
+
main_server = scaleway.instance.Server("main",
|
161
|
+
image="ubuntu_jammy",
|
162
|
+
type="DEV1-S",
|
163
|
+
zone="fr-par-1")
|
164
|
+
main_private_nic = scaleway.instance.PrivateNic("main",
|
165
|
+
server_id=main_server.id,
|
166
|
+
private_network_id=main.id)
|
167
|
+
main_public_gateway_ip = scaleway.network.PublicGatewayIp("main")
|
168
|
+
main_public_gateway_dhcp = scaleway.network.PublicGatewayDhcp("main", subnet="192.168.1.0/24")
|
169
|
+
main_public_gateway = scaleway.network.PublicGateway("main",
|
170
|
+
name="foobar",
|
171
|
+
type="VPC-GW-S",
|
172
|
+
ip_id=main_public_gateway_ip.id)
|
173
|
+
main_gateway_network = scaleway.network.GatewayNetwork("main",
|
174
|
+
gateway_id=main_public_gateway.id,
|
175
|
+
private_network_id=main.id,
|
176
|
+
dhcp_id=main_public_gateway_dhcp.id,
|
177
|
+
cleanup_dhcp=True,
|
178
|
+
enable_masquerade=True)
|
179
|
+
## Retrieve the dynamic entries generated by mac address & gateway network
|
180
|
+
by_mac_address_and_gw_network = scaleway.network.get_public_gateway_dhcp_reservation_output(mac_address=main_private_nic.mac_address,
|
181
|
+
gateway_network_id=main_gateway_network.id)
|
182
|
+
```
|
183
|
+
|
184
|
+
## Example Static and PAT Rule
|
185
|
+
|
186
|
+
```python
|
187
|
+
import pulumi
|
188
|
+
import pulumi_scaleway as scaleway
|
189
|
+
import pulumiverse_scaleway as scaleway
|
190
|
+
|
191
|
+
main = scaleway.network.PrivateNetwork("main")
|
192
|
+
main_security_group = scaleway.instance.SecurityGroup("main",
|
193
|
+
inbound_default_policy="drop",
|
194
|
+
outbound_default_policy="accept",
|
195
|
+
inbound_rules=[{
|
196
|
+
"action": "accept",
|
197
|
+
"port": 22,
|
198
|
+
}])
|
199
|
+
main_server = scaleway.instance.Server("main",
|
200
|
+
image="ubuntu_jammy",
|
201
|
+
type="DEV1-S",
|
202
|
+
zone="fr-par-1",
|
203
|
+
security_group_id=main_security_group.id)
|
204
|
+
main_private_nic = scaleway.instance.PrivateNic("main",
|
205
|
+
server_id=main_server.id,
|
206
|
+
private_network_id=main.id)
|
207
|
+
main_public_gateway_ip = scaleway.network.PublicGatewayIp("main")
|
208
|
+
main_public_gateway_dhcp = scaleway.network.PublicGatewayDhcp("main", subnet="192.168.1.0/24")
|
209
|
+
main_public_gateway = scaleway.network.PublicGateway("main",
|
210
|
+
name="foobar",
|
211
|
+
type="VPC-GW-S",
|
212
|
+
ip_id=main_public_gateway_ip.id)
|
213
|
+
main_gateway_network = scaleway.network.GatewayNetwork("main",
|
214
|
+
gateway_id=main_public_gateway.id,
|
215
|
+
private_network_id=main.id,
|
216
|
+
dhcp_id=main_public_gateway_dhcp.id,
|
217
|
+
cleanup_dhcp=True,
|
218
|
+
enable_masquerade=True)
|
219
|
+
main_public_gateway_dhcp_reservation = scaleway.network.PublicGatewayDhcpReservation("main",
|
220
|
+
gateway_network_id=main_gateway_network.id,
|
221
|
+
mac_address=main_private_nic.mac_address,
|
222
|
+
ip_address="192.168.1.4")
|
223
|
+
### VPC PAT RULE
|
224
|
+
main_public_gateway_pat_rule = scaleway.network.PublicGatewayPatRule("main",
|
225
|
+
gateway_id=main_public_gateway.id,
|
226
|
+
private_ip=main_public_gateway_dhcp_reservation.ip_address,
|
227
|
+
private_port=22,
|
228
|
+
public_port=2222,
|
229
|
+
protocol="tcp")
|
230
|
+
by_id = scaleway.network.get_public_gateway_dhcp_reservation_output(reservation_id=main_public_gateway_dhcp_reservation.id)
|
231
|
+
```
|
232
|
+
|
233
|
+
|
234
|
+
:param str gateway_network_id: The ID of the owning GatewayNetwork.
|
235
|
+
|
236
|
+
> Only one of `reservation_id` or `mac_address` with `gateway_network_id` should be specified.
|
237
|
+
:param str mac_address: The MAC address of the reservation to retrieve.
|
238
|
+
:param str reservation_id: The ID of the reservation (DHCP entry) to retrieve.
|
239
|
+
:param bool wait_for_dhcp: Whether to wait for `mac_address` to exist in DHCP.
|
240
|
+
:param str zone: `zone`). The zone in which the reservation exists.
|
241
|
+
"""
|
242
|
+
__args__ = dict()
|
243
|
+
__args__['gatewayNetworkId'] = gateway_network_id
|
244
|
+
__args__['macAddress'] = mac_address
|
245
|
+
__args__['reservationId'] = reservation_id
|
246
|
+
__args__['waitForDhcp'] = wait_for_dhcp
|
247
|
+
__args__['zone'] = zone
|
248
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
249
|
+
__ret__ = pulumi.runtime.invoke('scaleway:network/getPublicGatewayDhcpReservation:getPublicGatewayDhcpReservation', __args__, opts=opts, typ=GetPublicGatewayDhcpReservationResult).value
|
250
|
+
|
251
|
+
return AwaitableGetPublicGatewayDhcpReservationResult(
|
252
|
+
created_at=pulumi.get(__ret__, 'created_at'),
|
253
|
+
gateway_network_id=pulumi.get(__ret__, 'gateway_network_id'),
|
254
|
+
hostname=pulumi.get(__ret__, 'hostname'),
|
255
|
+
id=pulumi.get(__ret__, 'id'),
|
256
|
+
ip_address=pulumi.get(__ret__, 'ip_address'),
|
257
|
+
mac_address=pulumi.get(__ret__, 'mac_address'),
|
258
|
+
reservation_id=pulumi.get(__ret__, 'reservation_id'),
|
259
|
+
type=pulumi.get(__ret__, 'type'),
|
260
|
+
updated_at=pulumi.get(__ret__, 'updated_at'),
|
261
|
+
wait_for_dhcp=pulumi.get(__ret__, 'wait_for_dhcp'),
|
262
|
+
zone=pulumi.get(__ret__, 'zone'))
|
263
|
+
def get_public_gateway_dhcp_reservation_output(gateway_network_id: Optional[pulumi.Input[Optional[str]]] = None,
|
264
|
+
mac_address: Optional[pulumi.Input[Optional[str]]] = None,
|
265
|
+
reservation_id: Optional[pulumi.Input[Optional[str]]] = None,
|
266
|
+
wait_for_dhcp: Optional[pulumi.Input[Optional[bool]]] = None,
|
267
|
+
zone: Optional[pulumi.Input[Optional[str]]] = None,
|
268
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetPublicGatewayDhcpReservationResult]:
|
269
|
+
"""
|
270
|
+
Gets information about a DHCP entry. For further information, please see the
|
271
|
+
[API documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries).
|
272
|
+
|
273
|
+
## Example Dynamic
|
274
|
+
|
275
|
+
```python
|
276
|
+
import pulumi
|
277
|
+
import pulumi_scaleway as scaleway
|
278
|
+
import pulumiverse_scaleway as scaleway
|
279
|
+
|
280
|
+
main = scaleway.network.PrivateNetwork("main")
|
281
|
+
main_server = scaleway.instance.Server("main",
|
282
|
+
image="ubuntu_jammy",
|
283
|
+
type="DEV1-S",
|
284
|
+
zone="fr-par-1")
|
285
|
+
main_private_nic = scaleway.instance.PrivateNic("main",
|
286
|
+
server_id=main_server.id,
|
287
|
+
private_network_id=main.id)
|
288
|
+
main_public_gateway_ip = scaleway.network.PublicGatewayIp("main")
|
289
|
+
main_public_gateway_dhcp = scaleway.network.PublicGatewayDhcp("main", subnet="192.168.1.0/24")
|
290
|
+
main_public_gateway = scaleway.network.PublicGateway("main",
|
291
|
+
name="foobar",
|
292
|
+
type="VPC-GW-S",
|
293
|
+
ip_id=main_public_gateway_ip.id)
|
294
|
+
main_gateway_network = scaleway.network.GatewayNetwork("main",
|
295
|
+
gateway_id=main_public_gateway.id,
|
296
|
+
private_network_id=main.id,
|
297
|
+
dhcp_id=main_public_gateway_dhcp.id,
|
298
|
+
cleanup_dhcp=True,
|
299
|
+
enable_masquerade=True)
|
300
|
+
## Retrieve the dynamic entries generated by mac address & gateway network
|
301
|
+
by_mac_address_and_gw_network = scaleway.network.get_public_gateway_dhcp_reservation_output(mac_address=main_private_nic.mac_address,
|
302
|
+
gateway_network_id=main_gateway_network.id)
|
303
|
+
```
|
304
|
+
|
305
|
+
## Example Static and PAT Rule
|
306
|
+
|
307
|
+
```python
|
308
|
+
import pulumi
|
309
|
+
import pulumi_scaleway as scaleway
|
310
|
+
import pulumiverse_scaleway as scaleway
|
311
|
+
|
312
|
+
main = scaleway.network.PrivateNetwork("main")
|
313
|
+
main_security_group = scaleway.instance.SecurityGroup("main",
|
314
|
+
inbound_default_policy="drop",
|
315
|
+
outbound_default_policy="accept",
|
316
|
+
inbound_rules=[{
|
317
|
+
"action": "accept",
|
318
|
+
"port": 22,
|
319
|
+
}])
|
320
|
+
main_server = scaleway.instance.Server("main",
|
321
|
+
image="ubuntu_jammy",
|
322
|
+
type="DEV1-S",
|
323
|
+
zone="fr-par-1",
|
324
|
+
security_group_id=main_security_group.id)
|
325
|
+
main_private_nic = scaleway.instance.PrivateNic("main",
|
326
|
+
server_id=main_server.id,
|
327
|
+
private_network_id=main.id)
|
328
|
+
main_public_gateway_ip = scaleway.network.PublicGatewayIp("main")
|
329
|
+
main_public_gateway_dhcp = scaleway.network.PublicGatewayDhcp("main", subnet="192.168.1.0/24")
|
330
|
+
main_public_gateway = scaleway.network.PublicGateway("main",
|
331
|
+
name="foobar",
|
332
|
+
type="VPC-GW-S",
|
333
|
+
ip_id=main_public_gateway_ip.id)
|
334
|
+
main_gateway_network = scaleway.network.GatewayNetwork("main",
|
335
|
+
gateway_id=main_public_gateway.id,
|
336
|
+
private_network_id=main.id,
|
337
|
+
dhcp_id=main_public_gateway_dhcp.id,
|
338
|
+
cleanup_dhcp=True,
|
339
|
+
enable_masquerade=True)
|
340
|
+
main_public_gateway_dhcp_reservation = scaleway.network.PublicGatewayDhcpReservation("main",
|
341
|
+
gateway_network_id=main_gateway_network.id,
|
342
|
+
mac_address=main_private_nic.mac_address,
|
343
|
+
ip_address="192.168.1.4")
|
344
|
+
### VPC PAT RULE
|
345
|
+
main_public_gateway_pat_rule = scaleway.network.PublicGatewayPatRule("main",
|
346
|
+
gateway_id=main_public_gateway.id,
|
347
|
+
private_ip=main_public_gateway_dhcp_reservation.ip_address,
|
348
|
+
private_port=22,
|
349
|
+
public_port=2222,
|
350
|
+
protocol="tcp")
|
351
|
+
by_id = scaleway.network.get_public_gateway_dhcp_reservation_output(reservation_id=main_public_gateway_dhcp_reservation.id)
|
352
|
+
```
|
353
|
+
|
354
|
+
|
355
|
+
:param str gateway_network_id: The ID of the owning GatewayNetwork.
|
356
|
+
|
357
|
+
> Only one of `reservation_id` or `mac_address` with `gateway_network_id` should be specified.
|
358
|
+
:param str mac_address: The MAC address of the reservation to retrieve.
|
359
|
+
:param str reservation_id: The ID of the reservation (DHCP entry) to retrieve.
|
360
|
+
:param bool wait_for_dhcp: Whether to wait for `mac_address` to exist in DHCP.
|
361
|
+
:param str zone: `zone`). The zone in which the reservation exists.
|
362
|
+
"""
|
363
|
+
__args__ = dict()
|
364
|
+
__args__['gatewayNetworkId'] = gateway_network_id
|
365
|
+
__args__['macAddress'] = mac_address
|
366
|
+
__args__['reservationId'] = reservation_id
|
367
|
+
__args__['waitForDhcp'] = wait_for_dhcp
|
368
|
+
__args__['zone'] = zone
|
369
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
370
|
+
__ret__ = pulumi.runtime.invoke_output('scaleway:network/getPublicGatewayDhcpReservation:getPublicGatewayDhcpReservation', __args__, opts=opts, typ=GetPublicGatewayDhcpReservationResult)
|
371
|
+
return __ret__.apply(lambda __response__: GetPublicGatewayDhcpReservationResult(
|
372
|
+
created_at=pulumi.get(__response__, 'created_at'),
|
373
|
+
gateway_network_id=pulumi.get(__response__, 'gateway_network_id'),
|
374
|
+
hostname=pulumi.get(__response__, 'hostname'),
|
375
|
+
id=pulumi.get(__response__, 'id'),
|
376
|
+
ip_address=pulumi.get(__response__, 'ip_address'),
|
377
|
+
mac_address=pulumi.get(__response__, 'mac_address'),
|
378
|
+
reservation_id=pulumi.get(__response__, 'reservation_id'),
|
379
|
+
type=pulumi.get(__response__, 'type'),
|
380
|
+
updated_at=pulumi.get(__response__, 'updated_at'),
|
381
|
+
wait_for_dhcp=pulumi.get(__response__, 'wait_for_dhcp'),
|
382
|
+
zone=pulumi.get(__response__, 'zone')))
|
@@ -0,0 +1,199 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import sys
|
8
|
+
import pulumi
|
9
|
+
import pulumi.runtime
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
11
|
+
if sys.version_info >= (3, 11):
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
13
|
+
else:
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
15
|
+
from .. import _utilities
|
16
|
+
|
17
|
+
__all__ = [
|
18
|
+
'GetPublicGatewayIpResult',
|
19
|
+
'AwaitableGetPublicGatewayIpResult',
|
20
|
+
'get_public_gateway_ip',
|
21
|
+
'get_public_gateway_ip_output',
|
22
|
+
]
|
23
|
+
|
24
|
+
@pulumi.output_type
|
25
|
+
class GetPublicGatewayIpResult:
|
26
|
+
"""
|
27
|
+
A collection of values returned by getPublicGatewayIp.
|
28
|
+
"""
|
29
|
+
def __init__(__self__, address=None, created_at=None, id=None, ip_id=None, organization_id=None, project_id=None, reverse=None, tags=None, updated_at=None, zone=None):
|
30
|
+
if address and not isinstance(address, str):
|
31
|
+
raise TypeError("Expected argument 'address' to be a str")
|
32
|
+
pulumi.set(__self__, "address", address)
|
33
|
+
if created_at and not isinstance(created_at, str):
|
34
|
+
raise TypeError("Expected argument 'created_at' to be a str")
|
35
|
+
pulumi.set(__self__, "created_at", created_at)
|
36
|
+
if id and not isinstance(id, str):
|
37
|
+
raise TypeError("Expected argument 'id' to be a str")
|
38
|
+
pulumi.set(__self__, "id", id)
|
39
|
+
if ip_id and not isinstance(ip_id, str):
|
40
|
+
raise TypeError("Expected argument 'ip_id' to be a str")
|
41
|
+
pulumi.set(__self__, "ip_id", ip_id)
|
42
|
+
if organization_id and not isinstance(organization_id, str):
|
43
|
+
raise TypeError("Expected argument 'organization_id' to be a str")
|
44
|
+
pulumi.set(__self__, "organization_id", organization_id)
|
45
|
+
if project_id and not isinstance(project_id, str):
|
46
|
+
raise TypeError("Expected argument 'project_id' to be a str")
|
47
|
+
pulumi.set(__self__, "project_id", project_id)
|
48
|
+
if reverse and not isinstance(reverse, str):
|
49
|
+
raise TypeError("Expected argument 'reverse' to be a str")
|
50
|
+
pulumi.set(__self__, "reverse", reverse)
|
51
|
+
if tags and not isinstance(tags, list):
|
52
|
+
raise TypeError("Expected argument 'tags' to be a list")
|
53
|
+
pulumi.set(__self__, "tags", tags)
|
54
|
+
if updated_at and not isinstance(updated_at, str):
|
55
|
+
raise TypeError("Expected argument 'updated_at' to be a str")
|
56
|
+
pulumi.set(__self__, "updated_at", updated_at)
|
57
|
+
if zone and not isinstance(zone, str):
|
58
|
+
raise TypeError("Expected argument 'zone' to be a str")
|
59
|
+
pulumi.set(__self__, "zone", zone)
|
60
|
+
|
61
|
+
@property
|
62
|
+
@pulumi.getter
|
63
|
+
def address(self) -> str:
|
64
|
+
return pulumi.get(self, "address")
|
65
|
+
|
66
|
+
@property
|
67
|
+
@pulumi.getter(name="createdAt")
|
68
|
+
def created_at(self) -> str:
|
69
|
+
return pulumi.get(self, "created_at")
|
70
|
+
|
71
|
+
@property
|
72
|
+
@pulumi.getter
|
73
|
+
def id(self) -> str:
|
74
|
+
"""
|
75
|
+
The provider-assigned unique ID for this managed resource.
|
76
|
+
"""
|
77
|
+
return pulumi.get(self, "id")
|
78
|
+
|
79
|
+
@property
|
80
|
+
@pulumi.getter(name="ipId")
|
81
|
+
def ip_id(self) -> Optional[str]:
|
82
|
+
return pulumi.get(self, "ip_id")
|
83
|
+
|
84
|
+
@property
|
85
|
+
@pulumi.getter(name="organizationId")
|
86
|
+
def organization_id(self) -> str:
|
87
|
+
return pulumi.get(self, "organization_id")
|
88
|
+
|
89
|
+
@property
|
90
|
+
@pulumi.getter(name="projectId")
|
91
|
+
def project_id(self) -> str:
|
92
|
+
return pulumi.get(self, "project_id")
|
93
|
+
|
94
|
+
@property
|
95
|
+
@pulumi.getter
|
96
|
+
def reverse(self) -> str:
|
97
|
+
return pulumi.get(self, "reverse")
|
98
|
+
|
99
|
+
@property
|
100
|
+
@pulumi.getter
|
101
|
+
def tags(self) -> Sequence[str]:
|
102
|
+
return pulumi.get(self, "tags")
|
103
|
+
|
104
|
+
@property
|
105
|
+
@pulumi.getter(name="updatedAt")
|
106
|
+
def updated_at(self) -> str:
|
107
|
+
return pulumi.get(self, "updated_at")
|
108
|
+
|
109
|
+
@property
|
110
|
+
@pulumi.getter
|
111
|
+
def zone(self) -> str:
|
112
|
+
return pulumi.get(self, "zone")
|
113
|
+
|
114
|
+
|
115
|
+
class AwaitableGetPublicGatewayIpResult(GetPublicGatewayIpResult):
|
116
|
+
# pylint: disable=using-constant-test
|
117
|
+
def __await__(self):
|
118
|
+
if False:
|
119
|
+
yield self
|
120
|
+
return GetPublicGatewayIpResult(
|
121
|
+
address=self.address,
|
122
|
+
created_at=self.created_at,
|
123
|
+
id=self.id,
|
124
|
+
ip_id=self.ip_id,
|
125
|
+
organization_id=self.organization_id,
|
126
|
+
project_id=self.project_id,
|
127
|
+
reverse=self.reverse,
|
128
|
+
tags=self.tags,
|
129
|
+
updated_at=self.updated_at,
|
130
|
+
zone=self.zone)
|
131
|
+
|
132
|
+
|
133
|
+
def get_public_gateway_ip(ip_id: Optional[str] = None,
|
134
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetPublicGatewayIpResult:
|
135
|
+
"""
|
136
|
+
Gets information about a Public Gateway public flexible IP address.
|
137
|
+
|
138
|
+
For further information, please see the [API documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-ips-list-ips).
|
139
|
+
|
140
|
+
## Example Usage
|
141
|
+
|
142
|
+
```python
|
143
|
+
import pulumi
|
144
|
+
import pulumi_scaleway as scaleway
|
145
|
+
import pulumiverse_scaleway as scaleway
|
146
|
+
|
147
|
+
main = scaleway.network.PublicGatewayIp("main")
|
148
|
+
ip_by_id = scaleway.network.get_public_gateway_ip_output(ip_id=main.id)
|
149
|
+
```
|
150
|
+
"""
|
151
|
+
__args__ = dict()
|
152
|
+
__args__['ipId'] = ip_id
|
153
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
154
|
+
__ret__ = pulumi.runtime.invoke('scaleway:network/getPublicGatewayIp:getPublicGatewayIp', __args__, opts=opts, typ=GetPublicGatewayIpResult).value
|
155
|
+
|
156
|
+
return AwaitableGetPublicGatewayIpResult(
|
157
|
+
address=pulumi.get(__ret__, 'address'),
|
158
|
+
created_at=pulumi.get(__ret__, 'created_at'),
|
159
|
+
id=pulumi.get(__ret__, 'id'),
|
160
|
+
ip_id=pulumi.get(__ret__, 'ip_id'),
|
161
|
+
organization_id=pulumi.get(__ret__, 'organization_id'),
|
162
|
+
project_id=pulumi.get(__ret__, 'project_id'),
|
163
|
+
reverse=pulumi.get(__ret__, 'reverse'),
|
164
|
+
tags=pulumi.get(__ret__, 'tags'),
|
165
|
+
updated_at=pulumi.get(__ret__, 'updated_at'),
|
166
|
+
zone=pulumi.get(__ret__, 'zone'))
|
167
|
+
def get_public_gateway_ip_output(ip_id: Optional[pulumi.Input[Optional[str]]] = None,
|
168
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetPublicGatewayIpResult]:
|
169
|
+
"""
|
170
|
+
Gets information about a Public Gateway public flexible IP address.
|
171
|
+
|
172
|
+
For further information, please see the [API documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-ips-list-ips).
|
173
|
+
|
174
|
+
## Example Usage
|
175
|
+
|
176
|
+
```python
|
177
|
+
import pulumi
|
178
|
+
import pulumi_scaleway as scaleway
|
179
|
+
import pulumiverse_scaleway as scaleway
|
180
|
+
|
181
|
+
main = scaleway.network.PublicGatewayIp("main")
|
182
|
+
ip_by_id = scaleway.network.get_public_gateway_ip_output(ip_id=main.id)
|
183
|
+
```
|
184
|
+
"""
|
185
|
+
__args__ = dict()
|
186
|
+
__args__['ipId'] = ip_id
|
187
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
188
|
+
__ret__ = pulumi.runtime.invoke_output('scaleway:network/getPublicGatewayIp:getPublicGatewayIp', __args__, opts=opts, typ=GetPublicGatewayIpResult)
|
189
|
+
return __ret__.apply(lambda __response__: GetPublicGatewayIpResult(
|
190
|
+
address=pulumi.get(__response__, 'address'),
|
191
|
+
created_at=pulumi.get(__response__, 'created_at'),
|
192
|
+
id=pulumi.get(__response__, 'id'),
|
193
|
+
ip_id=pulumi.get(__response__, 'ip_id'),
|
194
|
+
organization_id=pulumi.get(__response__, 'organization_id'),
|
195
|
+
project_id=pulumi.get(__response__, 'project_id'),
|
196
|
+
reverse=pulumi.get(__response__, 'reverse'),
|
197
|
+
tags=pulumi.get(__response__, 'tags'),
|
198
|
+
updated_at=pulumi.get(__response__, 'updated_at'),
|
199
|
+
zone=pulumi.get(__response__, 'zone')))
|