pulumiverse-scaleway 1.24.0a1741680905__py3-none-any.whl → 1.25.0__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.24.0a1741680905.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/METADATA +2 -2
- pulumiverse_scaleway-1.25.0.dist-info/RECORD +470 -0
- {pulumiverse_scaleway-1.24.0a1741680905.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/WHEEL +1 -1
- pulumiverse_scaleway-1.24.0a1741680905.dist-info/RECORD +0 -206
- {pulumiverse_scaleway-1.24.0a1741680905.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,325 @@
|
|
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__ = ['GroupMembershipArgs', 'GroupMembership']
|
18
|
+
|
19
|
+
@pulumi.input_type
|
20
|
+
class GroupMembershipArgs:
|
21
|
+
def __init__(__self__, *,
|
22
|
+
group_id: pulumi.Input[str],
|
23
|
+
application_id: Optional[pulumi.Input[str]] = None,
|
24
|
+
user_id: Optional[pulumi.Input[str]] = None):
|
25
|
+
"""
|
26
|
+
The set of arguments for constructing a GroupMembership resource.
|
27
|
+
:param pulumi.Input[str] group_id: ID of the group to add members to.
|
28
|
+
:param pulumi.Input[str] application_id: The ID of the application that will be added to the group.
|
29
|
+
:param pulumi.Input[str] user_id: The ID of the user that will be added to the group
|
30
|
+
|
31
|
+
> **Note** You must specify at least one: `application_id` and/or `user_id`.
|
32
|
+
"""
|
33
|
+
pulumi.set(__self__, "group_id", group_id)
|
34
|
+
if application_id is not None:
|
35
|
+
pulumi.set(__self__, "application_id", application_id)
|
36
|
+
if user_id is not None:
|
37
|
+
pulumi.set(__self__, "user_id", user_id)
|
38
|
+
|
39
|
+
@property
|
40
|
+
@pulumi.getter(name="groupId")
|
41
|
+
def group_id(self) -> pulumi.Input[str]:
|
42
|
+
"""
|
43
|
+
ID of the group to add members to.
|
44
|
+
"""
|
45
|
+
return pulumi.get(self, "group_id")
|
46
|
+
|
47
|
+
@group_id.setter
|
48
|
+
def group_id(self, value: pulumi.Input[str]):
|
49
|
+
pulumi.set(self, "group_id", value)
|
50
|
+
|
51
|
+
@property
|
52
|
+
@pulumi.getter(name="applicationId")
|
53
|
+
def application_id(self) -> Optional[pulumi.Input[str]]:
|
54
|
+
"""
|
55
|
+
The ID of the application that will be added to the group.
|
56
|
+
"""
|
57
|
+
return pulumi.get(self, "application_id")
|
58
|
+
|
59
|
+
@application_id.setter
|
60
|
+
def application_id(self, value: Optional[pulumi.Input[str]]):
|
61
|
+
pulumi.set(self, "application_id", value)
|
62
|
+
|
63
|
+
@property
|
64
|
+
@pulumi.getter(name="userId")
|
65
|
+
def user_id(self) -> Optional[pulumi.Input[str]]:
|
66
|
+
"""
|
67
|
+
The ID of the user that will be added to the group
|
68
|
+
|
69
|
+
> **Note** You must specify at least one: `application_id` and/or `user_id`.
|
70
|
+
"""
|
71
|
+
return pulumi.get(self, "user_id")
|
72
|
+
|
73
|
+
@user_id.setter
|
74
|
+
def user_id(self, value: Optional[pulumi.Input[str]]):
|
75
|
+
pulumi.set(self, "user_id", value)
|
76
|
+
|
77
|
+
|
78
|
+
@pulumi.input_type
|
79
|
+
class _GroupMembershipState:
|
80
|
+
def __init__(__self__, *,
|
81
|
+
application_id: Optional[pulumi.Input[str]] = None,
|
82
|
+
group_id: Optional[pulumi.Input[str]] = None,
|
83
|
+
user_id: Optional[pulumi.Input[str]] = None):
|
84
|
+
"""
|
85
|
+
Input properties used for looking up and filtering GroupMembership resources.
|
86
|
+
:param pulumi.Input[str] application_id: The ID of the application that will be added to the group.
|
87
|
+
:param pulumi.Input[str] group_id: ID of the group to add members to.
|
88
|
+
:param pulumi.Input[str] user_id: The ID of the user that will be added to the group
|
89
|
+
|
90
|
+
> **Note** You must specify at least one: `application_id` and/or `user_id`.
|
91
|
+
"""
|
92
|
+
if application_id is not None:
|
93
|
+
pulumi.set(__self__, "application_id", application_id)
|
94
|
+
if group_id is not None:
|
95
|
+
pulumi.set(__self__, "group_id", group_id)
|
96
|
+
if user_id is not None:
|
97
|
+
pulumi.set(__self__, "user_id", user_id)
|
98
|
+
|
99
|
+
@property
|
100
|
+
@pulumi.getter(name="applicationId")
|
101
|
+
def application_id(self) -> Optional[pulumi.Input[str]]:
|
102
|
+
"""
|
103
|
+
The ID of the application that will be added to the group.
|
104
|
+
"""
|
105
|
+
return pulumi.get(self, "application_id")
|
106
|
+
|
107
|
+
@application_id.setter
|
108
|
+
def application_id(self, value: Optional[pulumi.Input[str]]):
|
109
|
+
pulumi.set(self, "application_id", value)
|
110
|
+
|
111
|
+
@property
|
112
|
+
@pulumi.getter(name="groupId")
|
113
|
+
def group_id(self) -> Optional[pulumi.Input[str]]:
|
114
|
+
"""
|
115
|
+
ID of the group to add members to.
|
116
|
+
"""
|
117
|
+
return pulumi.get(self, "group_id")
|
118
|
+
|
119
|
+
@group_id.setter
|
120
|
+
def group_id(self, value: Optional[pulumi.Input[str]]):
|
121
|
+
pulumi.set(self, "group_id", value)
|
122
|
+
|
123
|
+
@property
|
124
|
+
@pulumi.getter(name="userId")
|
125
|
+
def user_id(self) -> Optional[pulumi.Input[str]]:
|
126
|
+
"""
|
127
|
+
The ID of the user that will be added to the group
|
128
|
+
|
129
|
+
> **Note** You must specify at least one: `application_id` and/or `user_id`.
|
130
|
+
"""
|
131
|
+
return pulumi.get(self, "user_id")
|
132
|
+
|
133
|
+
@user_id.setter
|
134
|
+
def user_id(self, value: Optional[pulumi.Input[str]]):
|
135
|
+
pulumi.set(self, "user_id", value)
|
136
|
+
|
137
|
+
|
138
|
+
class GroupMembership(pulumi.CustomResource):
|
139
|
+
@overload
|
140
|
+
def __init__(__self__,
|
141
|
+
resource_name: str,
|
142
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
143
|
+
application_id: Optional[pulumi.Input[str]] = None,
|
144
|
+
group_id: Optional[pulumi.Input[str]] = None,
|
145
|
+
user_id: Optional[pulumi.Input[str]] = None,
|
146
|
+
__props__=None):
|
147
|
+
"""
|
148
|
+
Add members to an IAM group.
|
149
|
+
For more information refer to the [IAM API documentation](https://www.scaleway.com/en/developers/api/iam/#groups-f592eb).
|
150
|
+
|
151
|
+
## Example Usage
|
152
|
+
|
153
|
+
### Application Membership
|
154
|
+
|
155
|
+
```python
|
156
|
+
import pulumi
|
157
|
+
import pulumiverse_scaleway as scaleway
|
158
|
+
|
159
|
+
group = scaleway.iam.Group("group",
|
160
|
+
name="my_group",
|
161
|
+
external_membership=True)
|
162
|
+
app = scaleway.iam.Application("app", name="my_app")
|
163
|
+
member = scaleway.iam.GroupMembership("member",
|
164
|
+
group_id=group.id,
|
165
|
+
application_id=app.id)
|
166
|
+
```
|
167
|
+
|
168
|
+
## Import
|
169
|
+
|
170
|
+
IAM group memberships can be imported using two format:
|
171
|
+
|
172
|
+
- For user: `{group_id}/user/{user_id}`
|
173
|
+
|
174
|
+
- For application: `{group_id}/app/{application_id}`
|
175
|
+
|
176
|
+
bash
|
177
|
+
|
178
|
+
```sh
|
179
|
+
$ pulumi import scaleway:iam/groupMembership:GroupMembership app 11111111-1111-1111-1111-111111111111/app/11111111-1111-1111-1111-111111111111
|
180
|
+
```
|
181
|
+
|
182
|
+
:param str resource_name: The name of the resource.
|
183
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
184
|
+
:param pulumi.Input[str] application_id: The ID of the application that will be added to the group.
|
185
|
+
:param pulumi.Input[str] group_id: ID of the group to add members to.
|
186
|
+
:param pulumi.Input[str] user_id: The ID of the user that will be added to the group
|
187
|
+
|
188
|
+
> **Note** You must specify at least one: `application_id` and/or `user_id`.
|
189
|
+
"""
|
190
|
+
...
|
191
|
+
@overload
|
192
|
+
def __init__(__self__,
|
193
|
+
resource_name: str,
|
194
|
+
args: GroupMembershipArgs,
|
195
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
196
|
+
"""
|
197
|
+
Add members to an IAM group.
|
198
|
+
For more information refer to the [IAM API documentation](https://www.scaleway.com/en/developers/api/iam/#groups-f592eb).
|
199
|
+
|
200
|
+
## Example Usage
|
201
|
+
|
202
|
+
### Application Membership
|
203
|
+
|
204
|
+
```python
|
205
|
+
import pulumi
|
206
|
+
import pulumiverse_scaleway as scaleway
|
207
|
+
|
208
|
+
group = scaleway.iam.Group("group",
|
209
|
+
name="my_group",
|
210
|
+
external_membership=True)
|
211
|
+
app = scaleway.iam.Application("app", name="my_app")
|
212
|
+
member = scaleway.iam.GroupMembership("member",
|
213
|
+
group_id=group.id,
|
214
|
+
application_id=app.id)
|
215
|
+
```
|
216
|
+
|
217
|
+
## Import
|
218
|
+
|
219
|
+
IAM group memberships can be imported using two format:
|
220
|
+
|
221
|
+
- For user: `{group_id}/user/{user_id}`
|
222
|
+
|
223
|
+
- For application: `{group_id}/app/{application_id}`
|
224
|
+
|
225
|
+
bash
|
226
|
+
|
227
|
+
```sh
|
228
|
+
$ pulumi import scaleway:iam/groupMembership:GroupMembership app 11111111-1111-1111-1111-111111111111/app/11111111-1111-1111-1111-111111111111
|
229
|
+
```
|
230
|
+
|
231
|
+
:param str resource_name: The name of the resource.
|
232
|
+
:param GroupMembershipArgs args: The arguments to use to populate this resource's properties.
|
233
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
234
|
+
"""
|
235
|
+
...
|
236
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
237
|
+
resource_args, opts = _utilities.get_resource_args_opts(GroupMembershipArgs, pulumi.ResourceOptions, *args, **kwargs)
|
238
|
+
if resource_args is not None:
|
239
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
240
|
+
else:
|
241
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
242
|
+
|
243
|
+
def _internal_init(__self__,
|
244
|
+
resource_name: str,
|
245
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
246
|
+
application_id: Optional[pulumi.Input[str]] = None,
|
247
|
+
group_id: Optional[pulumi.Input[str]] = None,
|
248
|
+
user_id: Optional[pulumi.Input[str]] = None,
|
249
|
+
__props__=None):
|
250
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
251
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
252
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
253
|
+
if opts.id is None:
|
254
|
+
if __props__ is not None:
|
255
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
256
|
+
__props__ = GroupMembershipArgs.__new__(GroupMembershipArgs)
|
257
|
+
|
258
|
+
__props__.__dict__["application_id"] = application_id
|
259
|
+
if group_id is None and not opts.urn:
|
260
|
+
raise TypeError("Missing required property 'group_id'")
|
261
|
+
__props__.__dict__["group_id"] = group_id
|
262
|
+
__props__.__dict__["user_id"] = user_id
|
263
|
+
alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/iamGroupMembership:IamGroupMembership")])
|
264
|
+
opts = pulumi.ResourceOptions.merge(opts, alias_opts)
|
265
|
+
super(GroupMembership, __self__).__init__(
|
266
|
+
'scaleway:iam/groupMembership:GroupMembership',
|
267
|
+
resource_name,
|
268
|
+
__props__,
|
269
|
+
opts)
|
270
|
+
|
271
|
+
@staticmethod
|
272
|
+
def get(resource_name: str,
|
273
|
+
id: pulumi.Input[str],
|
274
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
275
|
+
application_id: Optional[pulumi.Input[str]] = None,
|
276
|
+
group_id: Optional[pulumi.Input[str]] = None,
|
277
|
+
user_id: Optional[pulumi.Input[str]] = None) -> 'GroupMembership':
|
278
|
+
"""
|
279
|
+
Get an existing GroupMembership resource's state with the given name, id, and optional extra
|
280
|
+
properties used to qualify the lookup.
|
281
|
+
|
282
|
+
:param str resource_name: The unique name of the resulting resource.
|
283
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
284
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
285
|
+
:param pulumi.Input[str] application_id: The ID of the application that will be added to the group.
|
286
|
+
:param pulumi.Input[str] group_id: ID of the group to add members to.
|
287
|
+
:param pulumi.Input[str] user_id: The ID of the user that will be added to the group
|
288
|
+
|
289
|
+
> **Note** You must specify at least one: `application_id` and/or `user_id`.
|
290
|
+
"""
|
291
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
292
|
+
|
293
|
+
__props__ = _GroupMembershipState.__new__(_GroupMembershipState)
|
294
|
+
|
295
|
+
__props__.__dict__["application_id"] = application_id
|
296
|
+
__props__.__dict__["group_id"] = group_id
|
297
|
+
__props__.__dict__["user_id"] = user_id
|
298
|
+
return GroupMembership(resource_name, opts=opts, __props__=__props__)
|
299
|
+
|
300
|
+
@property
|
301
|
+
@pulumi.getter(name="applicationId")
|
302
|
+
def application_id(self) -> pulumi.Output[Optional[str]]:
|
303
|
+
"""
|
304
|
+
The ID of the application that will be added to the group.
|
305
|
+
"""
|
306
|
+
return pulumi.get(self, "application_id")
|
307
|
+
|
308
|
+
@property
|
309
|
+
@pulumi.getter(name="groupId")
|
310
|
+
def group_id(self) -> pulumi.Output[str]:
|
311
|
+
"""
|
312
|
+
ID of the group to add members to.
|
313
|
+
"""
|
314
|
+
return pulumi.get(self, "group_id")
|
315
|
+
|
316
|
+
@property
|
317
|
+
@pulumi.getter(name="userId")
|
318
|
+
def user_id(self) -> pulumi.Output[Optional[str]]:
|
319
|
+
"""
|
320
|
+
The ID of the user that will be added to the group
|
321
|
+
|
322
|
+
> **Note** You must specify at least one: `application_id` and/or `user_id`.
|
323
|
+
"""
|
324
|
+
return pulumi.get(self, "user_id")
|
325
|
+
|
@@ -0,0 +1,111 @@
|
|
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
|
+
'PolicyRule',
|
19
|
+
]
|
20
|
+
|
21
|
+
@pulumi.output_type
|
22
|
+
class PolicyRule(dict):
|
23
|
+
@staticmethod
|
24
|
+
def __key_warning(key: str):
|
25
|
+
suggest = None
|
26
|
+
if key == "permissionSetNames":
|
27
|
+
suggest = "permission_set_names"
|
28
|
+
elif key == "organizationId":
|
29
|
+
suggest = "organization_id"
|
30
|
+
elif key == "projectIds":
|
31
|
+
suggest = "project_ids"
|
32
|
+
|
33
|
+
if suggest:
|
34
|
+
pulumi.log.warn(f"Key '{key}' not found in PolicyRule. Access the value via the '{suggest}' property getter instead.")
|
35
|
+
|
36
|
+
def __getitem__(self, key: str) -> Any:
|
37
|
+
PolicyRule.__key_warning(key)
|
38
|
+
return super().__getitem__(key)
|
39
|
+
|
40
|
+
def get(self, key: str, default = None) -> Any:
|
41
|
+
PolicyRule.__key_warning(key)
|
42
|
+
return super().get(key, default)
|
43
|
+
|
44
|
+
def __init__(__self__, *,
|
45
|
+
permission_set_names: Sequence[str],
|
46
|
+
condition: Optional[str] = None,
|
47
|
+
organization_id: Optional[str] = None,
|
48
|
+
project_ids: Optional[Sequence[str]] = None):
|
49
|
+
"""
|
50
|
+
:param Sequence[str] permission_set_names: Names of permission sets bind to the rule.
|
51
|
+
:param str condition: The condition of the rule.
|
52
|
+
|
53
|
+
**_TIP:_** You can use the Scaleway CLI to list the permissions details. e.g:
|
54
|
+
|
55
|
+
```shell
|
56
|
+
scw iam permission-set list
|
57
|
+
```
|
58
|
+
:param str organization_id: ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization.
|
59
|
+
:param Sequence[str] project_ids: List of project IDs scoped to the rule.
|
60
|
+
|
61
|
+
> **Important** One `organization_id` or `project_ids` must be set per rule.
|
62
|
+
"""
|
63
|
+
pulumi.set(__self__, "permission_set_names", permission_set_names)
|
64
|
+
if condition is not None:
|
65
|
+
pulumi.set(__self__, "condition", condition)
|
66
|
+
if organization_id is not None:
|
67
|
+
pulumi.set(__self__, "organization_id", organization_id)
|
68
|
+
if project_ids is not None:
|
69
|
+
pulumi.set(__self__, "project_ids", project_ids)
|
70
|
+
|
71
|
+
@property
|
72
|
+
@pulumi.getter(name="permissionSetNames")
|
73
|
+
def permission_set_names(self) -> Sequence[str]:
|
74
|
+
"""
|
75
|
+
Names of permission sets bind to the rule.
|
76
|
+
"""
|
77
|
+
return pulumi.get(self, "permission_set_names")
|
78
|
+
|
79
|
+
@property
|
80
|
+
@pulumi.getter
|
81
|
+
def condition(self) -> Optional[str]:
|
82
|
+
"""
|
83
|
+
The condition of the rule.
|
84
|
+
|
85
|
+
**_TIP:_** You can use the Scaleway CLI to list the permissions details. e.g:
|
86
|
+
|
87
|
+
```shell
|
88
|
+
scw iam permission-set list
|
89
|
+
```
|
90
|
+
"""
|
91
|
+
return pulumi.get(self, "condition")
|
92
|
+
|
93
|
+
@property
|
94
|
+
@pulumi.getter(name="organizationId")
|
95
|
+
def organization_id(self) -> Optional[str]:
|
96
|
+
"""
|
97
|
+
ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization.
|
98
|
+
"""
|
99
|
+
return pulumi.get(self, "organization_id")
|
100
|
+
|
101
|
+
@property
|
102
|
+
@pulumi.getter(name="projectIds")
|
103
|
+
def project_ids(self) -> Optional[Sequence[str]]:
|
104
|
+
"""
|
105
|
+
List of project IDs scoped to the rule.
|
106
|
+
|
107
|
+
> **Important** One `organization_id` or `project_ids` must be set per rule.
|
108
|
+
"""
|
109
|
+
return pulumi.get(self, "project_ids")
|
110
|
+
|
111
|
+
|