pulumi-gcp 7.29.0a1719417555__py3-none-any.whl → 7.30.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.
- pulumi_gcp/__init__.py +32 -0
- pulumi_gcp/_inputs.py +15 -0
- pulumi_gcp/accessapproval/get_folder_service_account.py +5 -0
- pulumi_gcp/accessapproval/get_organization_service_account.py +5 -0
- pulumi_gcp/accessapproval/get_project_service_account.py +5 -0
- pulumi_gcp/accesscontextmanager/_inputs.py +2066 -6
- pulumi_gcp/accesscontextmanager/access_level.py +37 -32
- pulumi_gcp/accesscontextmanager/access_level_condition.py +53 -48
- pulumi_gcp/accesscontextmanager/access_levels.py +70 -65
- pulumi_gcp/accesscontextmanager/access_policy.py +5 -0
- pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +24 -19
- pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +24 -19
- pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +21 -16
- pulumi_gcp/accesscontextmanager/authorized_orgs_desc.py +5 -0
- pulumi_gcp/accesscontextmanager/egress_policy.py +5 -0
- pulumi_gcp/accesscontextmanager/gcp_user_access_binding.py +33 -28
- pulumi_gcp/accesscontextmanager/get_access_policy_iam_policy.py +5 -0
- pulumi_gcp/accesscontextmanager/ingress_policy.py +5 -0
- pulumi_gcp/accesscontextmanager/outputs.py +5 -0
- pulumi_gcp/accesscontextmanager/service_perimeter.py +201 -196
- pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +11 -6
- pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +15 -10
- pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +15 -10
- pulumi_gcp/accesscontextmanager/service_perimeter_resource.py +11 -6
- pulumi_gcp/accesscontextmanager/service_perimeters.py +60 -55
- pulumi_gcp/activedirectory/domain.py +5 -0
- pulumi_gcp/activedirectory/domain_trust.py +5 -0
- pulumi_gcp/activedirectory/peering.py +5 -0
- pulumi_gcp/alloydb/_inputs.py +535 -0
- pulumi_gcp/alloydb/backup.py +26 -21
- pulumi_gcp/alloydb/cluster.py +177 -172
- pulumi_gcp/alloydb/get_locations.py +5 -0
- pulumi_gcp/alloydb/get_supported_database_flags.py +5 -0
- pulumi_gcp/alloydb/instance.py +77 -72
- pulumi_gcp/alloydb/outputs.py +5 -0
- pulumi_gcp/alloydb/user.py +17 -12
- pulumi_gcp/apigateway/_inputs.py +168 -0
- pulumi_gcp/apigateway/api.py +5 -0
- pulumi_gcp/apigateway/api_config.py +25 -20
- pulumi_gcp/apigateway/api_config_iam_binding.py +24 -19
- pulumi_gcp/apigateway/api_config_iam_member.py +24 -19
- pulumi_gcp/apigateway/api_config_iam_policy.py +21 -16
- pulumi_gcp/apigateway/api_iam_binding.py +24 -19
- pulumi_gcp/apigateway/api_iam_member.py +24 -19
- pulumi_gcp/apigateway/api_iam_policy.py +21 -16
- pulumi_gcp/apigateway/gateway.py +5 -0
- pulumi_gcp/apigateway/gateway_iam_binding.py +24 -19
- pulumi_gcp/apigateway/gateway_iam_member.py +24 -19
- pulumi_gcp/apigateway/gateway_iam_policy.py +21 -16
- pulumi_gcp/apigateway/get_api_config_iam_policy.py +5 -0
- pulumi_gcp/apigateway/get_api_iam_policy.py +5 -0
- pulumi_gcp/apigateway/get_gateway_iam_policy.py +5 -0
- pulumi_gcp/apigateway/outputs.py +5 -0
- pulumi_gcp/apigee/_inputs.py +508 -0
- pulumi_gcp/apigee/addons_config.py +60 -55
- pulumi_gcp/apigee/endpoint_attachment.py +5 -0
- pulumi_gcp/apigee/env_group.py +5 -0
- pulumi_gcp/apigee/env_group_attachment.py +5 -0
- pulumi_gcp/apigee/env_keystore.py +5 -0
- pulumi_gcp/apigee/env_references.py +5 -0
- pulumi_gcp/apigee/environment.py +10 -5
- pulumi_gcp/apigee/environment_iam_binding.py +24 -19
- pulumi_gcp/apigee/environment_iam_member.py +24 -19
- pulumi_gcp/apigee/environment_iam_policy.py +21 -16
- pulumi_gcp/apigee/flowhook.py +5 -0
- pulumi_gcp/apigee/get_environment_iam_policy.py +5 -0
- pulumi_gcp/apigee/instance.py +5 -0
- pulumi_gcp/apigee/instance_attachment.py +5 -0
- pulumi_gcp/apigee/keystores_aliases_key_cert_file.py +10 -5
- pulumi_gcp/apigee/keystores_aliases_pkcs12.py +7 -2
- pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +31 -26
- pulumi_gcp/apigee/nat_address.py +5 -0
- pulumi_gcp/apigee/organization.py +10 -5
- pulumi_gcp/apigee/outputs.py +5 -0
- pulumi_gcp/apigee/sharedflow.py +7 -2
- pulumi_gcp/apigee/sharedflow_deployment.py +5 -0
- pulumi_gcp/apigee/sync_authorization.py +5 -0
- pulumi_gcp/apigee/target_server.py +10 -5
- pulumi_gcp/appengine/_inputs.py +990 -7
- pulumi_gcp/appengine/application.py +17 -12
- pulumi_gcp/appengine/application_url_dispatch_rules.py +46 -41
- pulumi_gcp/appengine/domain_mapping.py +18 -13
- pulumi_gcp/appengine/engine_split_traffic.py +50 -45
- pulumi_gcp/appengine/firewall_rule.py +5 -0
- pulumi_gcp/appengine/flexible_app_version.py +130 -125
- pulumi_gcp/appengine/get_default_service_account.py +5 -0
- pulumi_gcp/appengine/outputs.py +5 -0
- pulumi_gcp/appengine/service_network_settings.py +32 -27
- pulumi_gcp/appengine/standard_app_version.py +109 -104
- pulumi_gcp/apphub/_inputs.py +370 -0
- pulumi_gcp/apphub/application.py +67 -62
- pulumi_gcp/apphub/get_application.py +5 -0
- pulumi_gcp/apphub/get_discovered_service.py +5 -0
- pulumi_gcp/apphub/get_discovered_workload.py +5 -0
- pulumi_gcp/apphub/outputs.py +5 -0
- pulumi_gcp/apphub/service.py +78 -73
- pulumi_gcp/apphub/service_project_attachment.py +5 -0
- pulumi_gcp/apphub/workload.py +14 -9
- pulumi_gcp/applicationintegration/_inputs.py +324 -0
- pulumi_gcp/applicationintegration/auth_config.py +29 -24
- pulumi_gcp/applicationintegration/client.py +24 -19
- pulumi_gcp/applicationintegration/outputs.py +5 -0
- pulumi_gcp/artifactregistry/_inputs.py +392 -0
- pulumi_gcp/artifactregistry/get_docker_image.py +7 -2
- pulumi_gcp/artifactregistry/get_repository.py +5 -0
- pulumi_gcp/artifactregistry/get_repository_iam_policy.py +5 -0
- pulumi_gcp/artifactregistry/outputs.py +5 -0
- pulumi_gcp/artifactregistry/repository.py +338 -333
- pulumi_gcp/artifactregistry/repository_iam_binding.py +24 -19
- pulumi_gcp/artifactregistry/repository_iam_member.py +24 -19
- pulumi_gcp/artifactregistry/repository_iam_policy.py +21 -16
- pulumi_gcp/artifactregistry/vpcsc_config.py +5 -0
- pulumi_gcp/assuredworkloads/_inputs.py +117 -0
- pulumi_gcp/assuredworkloads/outputs.py +5 -0
- pulumi_gcp/assuredworkloads/workload.py +86 -81
- pulumi_gcp/backupdisasterrecovery/_inputs.py +41 -0
- pulumi_gcp/backupdisasterrecovery/get_management_server.py +5 -0
- pulumi_gcp/backupdisasterrecovery/management_server.py +20 -15
- pulumi_gcp/backupdisasterrecovery/outputs.py +5 -0
- pulumi_gcp/beyondcorp/_inputs.py +86 -0
- pulumi_gcp/beyondcorp/app_connection.py +57 -52
- pulumi_gcp/beyondcorp/app_connector.py +30 -25
- pulumi_gcp/beyondcorp/app_gateway.py +7 -2
- pulumi_gcp/beyondcorp/get_app_connection.py +5 -0
- pulumi_gcp/beyondcorp/get_app_connector.py +5 -0
- pulumi_gcp/beyondcorp/get_app_gateway.py +5 -0
- pulumi_gcp/beyondcorp/outputs.py +5 -0
- pulumi_gcp/biglake/_inputs.py +64 -0
- pulumi_gcp/biglake/catalog.py +5 -0
- pulumi_gcp/biglake/database.py +18 -13
- pulumi_gcp/biglake/outputs.py +5 -0
- pulumi_gcp/biglake/table.py +36 -31
- pulumi_gcp/bigquery/_inputs.py +1930 -6
- pulumi_gcp/bigquery/app_profile.py +133 -128
- pulumi_gcp/bigquery/bi_reservation.py +10 -5
- pulumi_gcp/bigquery/capacity_commitment.py +5 -0
- pulumi_gcp/bigquery/connection.py +181 -176
- pulumi_gcp/bigquery/connection_iam_binding.py +24 -19
- pulumi_gcp/bigquery/connection_iam_member.py +24 -19
- pulumi_gcp/bigquery/connection_iam_policy.py +21 -16
- pulumi_gcp/bigquery/data_transfer_config.py +20 -15
- pulumi_gcp/bigquery/dataset.py +132 -127
- pulumi_gcp/bigquery/dataset_access.py +72 -67
- pulumi_gcp/bigquery/dataset_iam_binding.py +24 -19
- pulumi_gcp/bigquery/dataset_iam_member.py +24 -19
- pulumi_gcp/bigquery/dataset_iam_policy.py +21 -16
- pulumi_gcp/bigquery/get_connection_iam_policy.py +5 -0
- pulumi_gcp/bigquery/get_dataset.py +5 -0
- pulumi_gcp/bigquery/get_dataset_iam_policy.py +5 -0
- pulumi_gcp/bigquery/get_default_service_account.py +5 -0
- pulumi_gcp/bigquery/get_table_iam_policy.py +5 -0
- pulumi_gcp/bigquery/iam_binding.py +102 -97
- pulumi_gcp/bigquery/iam_member.py +102 -97
- pulumi_gcp/bigquery/iam_policy.py +97 -92
- pulumi_gcp/bigquery/job.py +229 -224
- pulumi_gcp/bigquery/outputs.py +5 -0
- pulumi_gcp/bigquery/reservation.py +16 -11
- pulumi_gcp/bigquery/reservation_assignment.py +5 -0
- pulumi_gcp/bigquery/routine.py +114 -109
- pulumi_gcp/bigquery/table.py +67 -62
- pulumi_gcp/bigqueryanalyticshub/_inputs.py +97 -0
- pulumi_gcp/bigqueryanalyticshub/data_exchange.py +5 -0
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +24 -19
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +24 -19
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +21 -16
- pulumi_gcp/bigqueryanalyticshub/get_data_exchange_iam_policy.py +5 -0
- pulumi_gcp/bigqueryanalyticshub/get_listing_iam_policy.py +5 -0
- pulumi_gcp/bigqueryanalyticshub/listing.py +45 -40
- pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +24 -19
- pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +24 -19
- pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +21 -16
- pulumi_gcp/bigqueryanalyticshub/outputs.py +5 -0
- pulumi_gcp/bigquerydatapolicy/_inputs.py +40 -0
- pulumi_gcp/bigquerydatapolicy/data_policy.py +24 -19
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +24 -19
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +24 -19
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +21 -16
- pulumi_gcp/bigquerydatapolicy/get_iam_policy.py +5 -0
- pulumi_gcp/bigquerydatapolicy/outputs.py +5 -0
- pulumi_gcp/bigtable/_inputs.py +202 -0
- pulumi_gcp/bigtable/authorized_view.py +10 -5
- pulumi_gcp/bigtable/gc_policy.py +113 -54
- pulumi_gcp/bigtable/get_instance_iam_policy.py +5 -0
- pulumi_gcp/bigtable/get_table_iam_policy.py +5 -0
- pulumi_gcp/bigtable/instance.py +52 -47
- pulumi_gcp/bigtable/instance_iam_binding.py +24 -19
- pulumi_gcp/bigtable/instance_iam_member.py +24 -19
- pulumi_gcp/bigtable/instance_iam_policy.py +21 -16
- pulumi_gcp/bigtable/outputs.py +5 -0
- pulumi_gcp/bigtable/table.py +39 -34
- pulumi_gcp/bigtable/table_iam_binding.py +24 -19
- pulumi_gcp/bigtable/table_iam_member.py +24 -19
- pulumi_gcp/bigtable/table_iam_policy.py +21 -16
- pulumi_gcp/billing/_inputs.py +257 -0
- pulumi_gcp/billing/account_iam_binding.py +24 -19
- pulumi_gcp/billing/account_iam_member.py +24 -19
- pulumi_gcp/billing/account_iam_policy.py +21 -16
- pulumi_gcp/billing/budget.py +225 -220
- pulumi_gcp/billing/get_account_iam_policy.py +5 -0
- pulumi_gcp/billing/outputs.py +5 -0
- pulumi_gcp/billing/project_info.py +5 -0
- pulumi_gcp/billing/sub_account.py +5 -0
- pulumi_gcp/binaryauthorization/_inputs.py +199 -0
- pulumi_gcp/binaryauthorization/attestor.py +68 -63
- pulumi_gcp/binaryauthorization/attestor_iam_binding.py +24 -19
- pulumi_gcp/binaryauthorization/attestor_iam_member.py +24 -19
- pulumi_gcp/binaryauthorization/attestor_iam_policy.py +21 -16
- pulumi_gcp/binaryauthorization/get_attestor_iam_policy.py +5 -0
- pulumi_gcp/binaryauthorization/outputs.py +5 -0
- pulumi_gcp/binaryauthorization/policy.py +88 -83
- pulumi_gcp/blockchainnodeengine/_inputs.py +131 -0
- pulumi_gcp/blockchainnodeengine/blockchain_nodes.py +62 -57
- pulumi_gcp/blockchainnodeengine/outputs.py +5 -0
- pulumi_gcp/certificateauthority/_inputs.py +2157 -36
- pulumi_gcp/certificateauthority/authority.py +398 -393
- pulumi_gcp/certificateauthority/ca_pool.py +189 -184
- pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +102 -97
- pulumi_gcp/certificateauthority/ca_pool_iam_member.py +102 -97
- pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +97 -92
- pulumi_gcp/certificateauthority/certificate.py +636 -631
- pulumi_gcp/certificateauthority/certificate_template.py +134 -129
- pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +102 -97
- pulumi_gcp/certificateauthority/certificate_template_iam_member.py +102 -97
- pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +97 -92
- pulumi_gcp/certificateauthority/get_authority.py +5 -0
- pulumi_gcp/certificateauthority/get_ca_pool_iam_policy.py +5 -0
- pulumi_gcp/certificateauthority/get_certificate_template_iam_policy.py +5 -0
- pulumi_gcp/certificateauthority/outputs.py +5 -0
- pulumi_gcp/certificatemanager/_inputs.py +256 -0
- pulumi_gcp/certificatemanager/certificate.py +203 -198
- pulumi_gcp/certificatemanager/certificate_issuance_config.py +76 -71
- pulumi_gcp/certificatemanager/certificate_map.py +7 -2
- pulumi_gcp/certificatemanager/certificate_map_entry.py +13 -8
- pulumi_gcp/certificatemanager/dns_authorization.py +7 -2
- pulumi_gcp/certificatemanager/get_certificate_map.py +5 -0
- pulumi_gcp/certificatemanager/outputs.py +5 -0
- pulumi_gcp/certificatemanager/trust_config.py +26 -21
- pulumi_gcp/cloudasset/_inputs.py +151 -0
- pulumi_gcp/cloudasset/folder_feed.py +35 -30
- pulumi_gcp/cloudasset/get_resources_search_all.py +5 -0
- pulumi_gcp/cloudasset/get_search_all_resources.py +5 -0
- pulumi_gcp/cloudasset/organization_feed.py +35 -30
- pulumi_gcp/cloudasset/outputs.py +5 -0
- pulumi_gcp/cloudasset/project_feed.py +35 -30
- pulumi_gcp/cloudbuild/_inputs.py +1038 -29
- pulumi_gcp/cloudbuild/bitbucket_server_config.py +61 -56
- pulumi_gcp/cloudbuild/get_trigger.py +5 -0
- pulumi_gcp/cloudbuild/outputs.py +5 -0
- pulumi_gcp/cloudbuild/trigger.py +733 -728
- pulumi_gcp/cloudbuild/worker_pool.py +43 -38
- pulumi_gcp/cloudbuildv2/_inputs.py +335 -0
- pulumi_gcp/cloudbuildv2/connection.py +106 -101
- pulumi_gcp/cloudbuildv2/connection_iam_binding.py +24 -19
- pulumi_gcp/cloudbuildv2/connection_iam_member.py +24 -19
- pulumi_gcp/cloudbuildv2/connection_iam_policy.py +21 -16
- pulumi_gcp/cloudbuildv2/get_connection_iam_policy.py +5 -0
- pulumi_gcp/cloudbuildv2/outputs.py +5 -0
- pulumi_gcp/cloudbuildv2/repository.py +67 -62
- pulumi_gcp/clouddeploy/_inputs.py +700 -0
- pulumi_gcp/clouddeploy/automation.py +101 -96
- pulumi_gcp/clouddeploy/custom_target_type.py +88 -83
- pulumi_gcp/clouddeploy/custom_target_type_iam_binding.py +8 -3
- pulumi_gcp/clouddeploy/custom_target_type_iam_member.py +8 -3
- pulumi_gcp/clouddeploy/custom_target_type_iam_policy.py +5 -0
- pulumi_gcp/clouddeploy/delivery_pipeline.py +162 -157
- pulumi_gcp/clouddeploy/delivery_pipeline_iam_binding.py +8 -3
- pulumi_gcp/clouddeploy/delivery_pipeline_iam_member.py +8 -3
- pulumi_gcp/clouddeploy/delivery_pipeline_iam_policy.py +5 -0
- pulumi_gcp/clouddeploy/get_custom_target_type_iam_policy.py +5 -0
- pulumi_gcp/clouddeploy/get_delivery_pipeline_iam_policy.py +5 -0
- pulumi_gcp/clouddeploy/get_target_iam_policy.py +5 -0
- pulumi_gcp/clouddeploy/outputs.py +5 -0
- pulumi_gcp/clouddeploy/target.py +69 -64
- pulumi_gcp/clouddeploy/target_iam_binding.py +8 -3
- pulumi_gcp/clouddeploy/target_iam_member.py +8 -3
- pulumi_gcp/clouddeploy/target_iam_policy.py +5 -0
- pulumi_gcp/clouddomains/_inputs.py +372 -0
- pulumi_gcp/clouddomains/outputs.py +5 -0
- pulumi_gcp/clouddomains/registration.py +121 -116
- pulumi_gcp/cloudfunctions/_inputs.py +132 -0
- pulumi_gcp/cloudfunctions/function.py +25 -20
- pulumi_gcp/cloudfunctions/function_iam_binding.py +24 -19
- pulumi_gcp/cloudfunctions/function_iam_member.py +24 -19
- pulumi_gcp/cloudfunctions/function_iam_policy.py +21 -16
- pulumi_gcp/cloudfunctions/get_function.py +5 -0
- pulumi_gcp/cloudfunctions/get_function_iam_policy.py +5 -0
- pulumi_gcp/cloudfunctions/outputs.py +5 -0
- pulumi_gcp/cloudfunctionsv2/_inputs.py +454 -0
- pulumi_gcp/cloudfunctionsv2/function.py +746 -509
- pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +24 -19
- pulumi_gcp/cloudfunctionsv2/function_iam_member.py +24 -19
- pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +21 -16
- pulumi_gcp/cloudfunctionsv2/get_function.py +5 -0
- pulumi_gcp/cloudfunctionsv2/get_function_iam_policy.py +5 -0
- pulumi_gcp/cloudfunctionsv2/outputs.py +134 -1
- pulumi_gcp/cloudidentity/_inputs.py +161 -0
- pulumi_gcp/cloudidentity/get_group_lookup.py +9 -4
- pulumi_gcp/cloudidentity/get_group_memberships.py +5 -0
- pulumi_gcp/cloudidentity/get_groups.py +5 -0
- pulumi_gcp/cloudidentity/group.py +18 -13
- pulumi_gcp/cloudidentity/group_membership.py +68 -63
- pulumi_gcp/cloudidentity/outputs.py +5 -0
- pulumi_gcp/cloudids/endpoint.py +5 -0
- pulumi_gcp/cloudquota/_inputs.py +44 -0
- pulumi_gcp/cloudquota/get_s_quota_info.py +5 -0
- pulumi_gcp/cloudquota/get_s_quota_infos.py +5 -0
- pulumi_gcp/cloudquota/outputs.py +5 -0
- pulumi_gcp/cloudquota/s_quota_preference.py +16 -11
- pulumi_gcp/cloudrun/_inputs.py +1165 -15
- pulumi_gcp/cloudrun/domain_mapping.py +49 -44
- pulumi_gcp/cloudrun/get_locations.py +5 -0
- pulumi_gcp/cloudrun/get_service.py +5 -0
- pulumi_gcp/cloudrun/get_service_iam_policy.py +5 -0
- pulumi_gcp/cloudrun/iam_binding.py +24 -19
- pulumi_gcp/cloudrun/iam_member.py +24 -19
- pulumi_gcp/cloudrun/iam_policy.py +21 -16
- pulumi_gcp/cloudrun/outputs.py +5 -0
- pulumi_gcp/cloudrun/service.py +270 -265
- pulumi_gcp/cloudrunv2/_inputs.py +1338 -5
- pulumi_gcp/cloudrunv2/get_job.py +5 -0
- pulumi_gcp/cloudrunv2/get_job_iam_policy.py +5 -0
- pulumi_gcp/cloudrunv2/get_service.py +5 -0
- pulumi_gcp/cloudrunv2/get_service_iam_policy.py +5 -0
- pulumi_gcp/cloudrunv2/job.py +287 -282
- pulumi_gcp/cloudrunv2/job_iam_binding.py +24 -19
- pulumi_gcp/cloudrunv2/job_iam_member.py +24 -19
- pulumi_gcp/cloudrunv2/job_iam_policy.py +21 -16
- pulumi_gcp/cloudrunv2/outputs.py +5 -0
- pulumi_gcp/cloudrunv2/service.py +437 -432
- pulumi_gcp/cloudrunv2/service_iam_binding.py +24 -19
- pulumi_gcp/cloudrunv2/service_iam_member.py +24 -19
- pulumi_gcp/cloudrunv2/service_iam_policy.py +21 -16
- pulumi_gcp/cloudscheduler/_inputs.py +193 -0
- pulumi_gcp/cloudscheduler/job.py +127 -122
- pulumi_gcp/cloudscheduler/outputs.py +5 -0
- pulumi_gcp/cloudtasks/_inputs.py +134 -0
- pulumi_gcp/cloudtasks/get_queue_iam_policy.py +5 -0
- pulumi_gcp/cloudtasks/outputs.py +5 -0
- pulumi_gcp/cloudtasks/queue.py +63 -58
- pulumi_gcp/cloudtasks/queue_iam_binding.py +24 -19
- pulumi_gcp/cloudtasks/queue_iam_member.py +24 -19
- pulumi_gcp/cloudtasks/queue_iam_policy.py +21 -16
- pulumi_gcp/composer/_inputs.py +566 -0
- pulumi_gcp/composer/environment.py +15 -10
- pulumi_gcp/composer/get_environment.py +5 -0
- pulumi_gcp/composer/get_image_versions.py +15 -10
- pulumi_gcp/composer/get_user_workloads_config_map.py +15 -10
- pulumi_gcp/composer/get_user_workloads_secret.py +15 -10
- pulumi_gcp/composer/outputs.py +5 -0
- pulumi_gcp/composer/user_workloads_config_map.py +15 -10
- pulumi_gcp/composer/user_workloads_secret.py +15 -10
- pulumi_gcp/compute/_inputs.py +14134 -145
- pulumi_gcp/compute/address.py +27 -29
- pulumi_gcp/compute/attached_disk.py +21 -16
- pulumi_gcp/compute/autoscaler.py +98 -93
- pulumi_gcp/compute/backend_bucket.py +30 -25
- pulumi_gcp/compute/backend_bucket_iam_binding.py +8 -3
- pulumi_gcp/compute/backend_bucket_iam_member.py +8 -3
- pulumi_gcp/compute/backend_bucket_iam_policy.py +5 -0
- pulumi_gcp/compute/backend_bucket_signed_url_key.py +5 -0
- pulumi_gcp/compute/backend_service.py +204 -213
- pulumi_gcp/compute/backend_service_iam_binding.py +10 -5
- pulumi_gcp/compute/backend_service_iam_member.py +10 -5
- pulumi_gcp/compute/backend_service_iam_policy.py +5 -0
- pulumi_gcp/compute/backend_service_signed_url_key.py +35 -30
- pulumi_gcp/compute/ca_external_account_key.py +5 -0
- pulumi_gcp/compute/disk.py +54 -49
- pulumi_gcp/compute/disk_async_replication.py +10 -5
- pulumi_gcp/compute/disk_iam_binding.py +24 -19
- pulumi_gcp/compute/disk_iam_member.py +24 -19
- pulumi_gcp/compute/disk_iam_policy.py +21 -16
- pulumi_gcp/compute/disk_resource_policy_attachment.py +21 -16
- pulumi_gcp/compute/external_vpn_gateway.py +24 -19
- pulumi_gcp/compute/firewall.py +42 -37
- pulumi_gcp/compute/firewall_policy.py +5 -0
- pulumi_gcp/compute/firewall_policy_association.py +5 -0
- pulumi_gcp/compute/firewall_policy_rule.py +44 -39
- pulumi_gcp/compute/forwarding_rule.py +248 -264
- pulumi_gcp/compute/get_address.py +5 -0
- pulumi_gcp/compute/get_addresses.py +5 -0
- pulumi_gcp/compute/get_backend_bucket.py +5 -0
- pulumi_gcp/compute/get_backend_bucket_iam_policy.py +5 -0
- pulumi_gcp/compute/get_backend_service.py +5 -0
- pulumi_gcp/compute/get_backend_service_iam_policy.py +5 -0
- pulumi_gcp/compute/get_certificate.py +5 -0
- pulumi_gcp/compute/get_default_service_account.py +5 -0
- pulumi_gcp/compute/get_disk.py +13 -8
- pulumi_gcp/compute/get_disk_iam_policy.py +5 -0
- pulumi_gcp/compute/get_forwarding_rule.py +5 -0
- pulumi_gcp/compute/get_forwarding_rules.py +5 -0
- pulumi_gcp/compute/get_global_address.py +5 -0
- pulumi_gcp/compute/get_global_forwarding_rule.py +5 -0
- pulumi_gcp/compute/get_hc_vpn_gateway.py +5 -0
- pulumi_gcp/compute/get_health_check.py +5 -0
- pulumi_gcp/compute/get_image.py +15 -10
- pulumi_gcp/compute/get_image_iam_policy.py +5 -0
- pulumi_gcp/compute/get_instance.py +5 -0
- pulumi_gcp/compute/get_instance_group.py +5 -0
- pulumi_gcp/compute/get_instance_group_manager.py +5 -0
- pulumi_gcp/compute/get_instance_iam_policy.py +5 -0
- pulumi_gcp/compute/get_instance_serial_port.py +29 -24
- pulumi_gcp/compute/get_instance_template.py +5 -0
- pulumi_gcp/compute/get_lbip_ranges.py +5 -0
- pulumi_gcp/compute/get_machine_image_iam_policy.py +5 -0
- pulumi_gcp/compute/get_machine_types.py +5 -0
- pulumi_gcp/compute/get_netblock_ip_ranges.py +5 -0
- pulumi_gcp/compute/get_network.py +5 -0
- pulumi_gcp/compute/get_network_endpoint_group.py +5 -0
- pulumi_gcp/compute/get_network_peering.py +5 -0
- pulumi_gcp/compute/get_networks.py +5 -0
- pulumi_gcp/compute/get_node_types.py +5 -0
- pulumi_gcp/compute/get_region_backend_service_iam_policy.py +5 -0
- pulumi_gcp/compute/get_region_disk.py +5 -0
- pulumi_gcp/compute/get_region_disk_iam_policy.py +5 -0
- pulumi_gcp/compute/get_region_instance_group.py +5 -0
- pulumi_gcp/compute/get_region_instance_template.py +5 -0
- pulumi_gcp/compute/get_region_network_endpoint_group.py +5 -0
- pulumi_gcp/compute/get_region_ssl_certificate.py +5 -0
- pulumi_gcp/compute/get_regions.py +5 -0
- pulumi_gcp/compute/get_reservation.py +5 -0
- pulumi_gcp/compute/get_resource_policy.py +5 -0
- pulumi_gcp/compute/get_router.py +5 -0
- pulumi_gcp/compute/get_router_nat.py +5 -0
- pulumi_gcp/compute/get_router_status.py +5 -0
- pulumi_gcp/compute/get_security_policy.py +5 -0
- pulumi_gcp/compute/get_snapshot.py +5 -0
- pulumi_gcp/compute/get_snapshot_iam_policy.py +5 -0
- pulumi_gcp/compute/get_ssl_policy.py +5 -0
- pulumi_gcp/compute/get_subnetwork.py +5 -0
- pulumi_gcp/compute/get_subnetwork_iam_policy.py +5 -0
- pulumi_gcp/compute/get_subnetworks.py +5 -0
- pulumi_gcp/compute/get_vpn_gateway.py +5 -0
- pulumi_gcp/compute/get_zones.py +5 -0
- pulumi_gcp/compute/global_address.py +5 -0
- pulumi_gcp/compute/global_forwarding_rule.py +211 -227
- pulumi_gcp/compute/global_network_endpoint.py +5 -0
- pulumi_gcp/compute/global_network_endpoint_group.py +5 -0
- pulumi_gcp/compute/ha_vpn_gateway.py +32 -27
- pulumi_gcp/compute/health_check.py +174 -169
- pulumi_gcp/compute/http_health_check.py +5 -0
- pulumi_gcp/compute/https_health_check.py +5 -0
- pulumi_gcp/compute/image.py +50 -45
- pulumi_gcp/compute/image_iam_binding.py +102 -97
- pulumi_gcp/compute/image_iam_member.py +102 -97
- pulumi_gcp/compute/image_iam_policy.py +97 -92
- pulumi_gcp/compute/instance.py +104 -99
- pulumi_gcp/compute/instance_from_machine_image.py +61 -56
- pulumi_gcp/compute/instance_from_template.py +88 -83
- pulumi_gcp/compute/instance_group.py +26 -21
- pulumi_gcp/compute/instance_group_manager.py +138 -133
- pulumi_gcp/compute/instance_group_membership.py +21 -16
- pulumi_gcp/compute/instance_group_named_port.py +13 -8
- pulumi_gcp/compute/instance_iam_binding.py +102 -97
- pulumi_gcp/compute/instance_iam_member.py +102 -97
- pulumi_gcp/compute/instance_iam_policy.py +97 -92
- pulumi_gcp/compute/instance_settings.py +16 -11
- pulumi_gcp/compute/instance_template.py +147 -142
- pulumi_gcp/compute/interconnect.py +14 -9
- pulumi_gcp/compute/interconnect_attachment.py +19 -14
- pulumi_gcp/compute/machine_image.py +48 -43
- pulumi_gcp/compute/machine_image_iam_binding.py +102 -97
- pulumi_gcp/compute/machine_image_iam_member.py +102 -97
- pulumi_gcp/compute/machine_image_iam_policy.py +97 -92
- pulumi_gcp/compute/managed_ssl_certificate.py +40 -42
- pulumi_gcp/compute/manged_ssl_certificate.py +40 -42
- pulumi_gcp/compute/network.py +5 -0
- pulumi_gcp/compute/network_attachment.py +45 -24
- pulumi_gcp/compute/network_edge_security_service.py +5 -0
- pulumi_gcp/compute/network_endpoint.py +23 -18
- pulumi_gcp/compute/network_endpoint_group.py +5 -0
- pulumi_gcp/compute/network_endpoint_list.py +66 -61
- pulumi_gcp/compute/network_firewall_policy.py +5 -0
- pulumi_gcp/compute/network_firewall_policy_association.py +5 -0
- pulumi_gcp/compute/network_firewall_policy_rule.py +41 -36
- pulumi_gcp/compute/network_peering.py +5 -0
- pulumi_gcp/compute/network_peering_routes_config.py +41 -36
- pulumi_gcp/compute/node_group.py +50 -45
- pulumi_gcp/compute/node_template.py +21 -16
- pulumi_gcp/compute/organization_security_policy.py +5 -0
- pulumi_gcp/compute/organization_security_policy_association.py +31 -26
- pulumi_gcp/compute/organization_security_policy_rule.py +36 -31
- pulumi_gcp/compute/outputs.py +509 -8
- pulumi_gcp/compute/packet_mirroring.py +83 -78
- pulumi_gcp/compute/per_instance_config.py +56 -51
- pulumi_gcp/compute/project_cloud_armor_tier.py +5 -0
- pulumi_gcp/compute/project_default_network_tier.py +5 -0
- pulumi_gcp/compute/project_metadata.py +5 -0
- pulumi_gcp/compute/project_metadata_item.py +5 -0
- pulumi_gcp/compute/public_advertised_prefix.py +5 -0
- pulumi_gcp/compute/public_delegated_prefix.py +5 -0
- pulumi_gcp/compute/region_autoscaler.py +60 -55
- pulumi_gcp/compute/region_backend_service.py +203 -212
- pulumi_gcp/compute/region_backend_service_iam_binding.py +10 -5
- pulumi_gcp/compute/region_backend_service_iam_member.py +10 -5
- pulumi_gcp/compute/region_backend_service_iam_policy.py +5 -0
- pulumi_gcp/compute/region_commitment.py +47 -42
- pulumi_gcp/compute/region_disk.py +49 -44
- pulumi_gcp/compute/region_disk_iam_binding.py +146 -114
- pulumi_gcp/compute/region_disk_iam_member.py +146 -114
- pulumi_gcp/compute/region_disk_iam_policy.py +136 -104
- pulumi_gcp/compute/region_disk_resource_policy_attachment.py +21 -16
- pulumi_gcp/compute/region_health_check.py +174 -169
- pulumi_gcp/compute/region_instance_group_manager.py +134 -129
- pulumi_gcp/compute/region_instance_template.py +55 -50
- pulumi_gcp/compute/region_network_endpoint.py +23 -18
- pulumi_gcp/compute/region_network_endpoint_group.py +135 -130
- pulumi_gcp/compute/region_network_firewall_policy.py +5 -0
- pulumi_gcp/compute/region_network_firewall_policy_association.py +5 -0
- pulumi_gcp/compute/region_network_firewall_policy_rule.py +41 -36
- pulumi_gcp/compute/region_per_instance_config.py +66 -61
- pulumi_gcp/compute/region_security_policy.py +49 -44
- pulumi_gcp/compute/region_security_policy_rule.py +161 -156
- pulumi_gcp/compute/region_ssl_certificate.py +5 -7
- pulumi_gcp/compute/region_ssl_policy.py +5 -0
- pulumi_gcp/compute/region_target_http_proxy.py +43 -38
- pulumi_gcp/compute/region_target_https_proxy.py +97 -92
- pulumi_gcp/compute/region_target_tcp_proxy.py +11 -6
- pulumi_gcp/compute/region_url_map.py +824 -819
- pulumi_gcp/compute/reservation.py +29 -24
- pulumi_gcp/compute/resource_policy.py +153 -148
- pulumi_gcp/compute/route.py +17 -12
- pulumi_gcp/compute/router.py +40 -35
- pulumi_gcp/compute/router_interface.py +5 -0
- pulumi_gcp/compute/router_nat.py +98 -93
- pulumi_gcp/compute/router_peer.py +78 -73
- pulumi_gcp/compute/router_status.py +5 -0
- pulumi_gcp/compute/security_policy.py +201 -196
- pulumi_gcp/compute/security_policy_rule.py +80 -75
- pulumi_gcp/compute/security_scan_config.py +15 -10
- pulumi_gcp/compute/service_attachment.py +60 -55
- pulumi_gcp/compute/shared_vpc_host_project.py +5 -0
- pulumi_gcp/compute/shared_vpc_service_project.py +5 -0
- pulumi_gcp/compute/snapshot.py +15 -10
- pulumi_gcp/compute/snapshot_iam_binding.py +24 -19
- pulumi_gcp/compute/snapshot_iam_member.py +24 -19
- pulumi_gcp/compute/snapshot_iam_policy.py +21 -16
- pulumi_gcp/compute/ssl_certificate.py +5 -7
- pulumi_gcp/compute/ssl_policy.py +5 -0
- pulumi_gcp/compute/subnetwork.py +33 -28
- pulumi_gcp/compute/subnetwork_iam_binding.py +102 -97
- pulumi_gcp/compute/subnetwork_iam_member.py +102 -97
- pulumi_gcp/compute/subnetwork_iam_policy.py +97 -92
- pulumi_gcp/compute/target_grpc_proxy.py +129 -124
- pulumi_gcp/compute/target_http_proxy.py +61 -56
- pulumi_gcp/compute/target_https_proxy.py +209 -129
- pulumi_gcp/compute/target_instance.py +63 -58
- pulumi_gcp/compute/target_pool.py +5 -0
- pulumi_gcp/compute/target_ssl_proxy.py +11 -6
- pulumi_gcp/compute/target_tcp_proxy.py +11 -6
- pulumi_gcp/compute/url_map.py +986 -726
- pulumi_gcp/compute/vpn_gateway.py +5 -0
- pulumi_gcp/compute/vpn_tunnel.py +5 -0
- pulumi_gcp/config/__init__.pyi +5 -0
- pulumi_gcp/config/outputs.py +5 -0
- pulumi_gcp/config/vars.py +5 -0
- pulumi_gcp/container/_inputs.py +5502 -823
- pulumi_gcp/container/attached_cluster.py +128 -123
- pulumi_gcp/container/aws_cluster.py +361 -356
- pulumi_gcp/container/aws_node_pool.py +556 -551
- pulumi_gcp/container/azure_client.py +7 -2
- pulumi_gcp/container/azure_cluster.py +135 -130
- pulumi_gcp/container/azure_node_pool.py +117 -112
- pulumi_gcp/container/cluster.py +224 -219
- pulumi_gcp/container/get_attached_install_manifest.py +5 -0
- pulumi_gcp/container/get_attached_versions.py +5 -0
- pulumi_gcp/container/get_aws_versions.py +5 -0
- pulumi_gcp/container/get_azure_versions.py +5 -0
- pulumi_gcp/container/get_cluster.py +5 -0
- pulumi_gcp/container/get_engine_versions.py +5 -0
- pulumi_gcp/container/get_registry_image.py +5 -0
- pulumi_gcp/container/get_registry_repository.py +5 -0
- pulumi_gcp/container/node_pool.py +78 -73
- pulumi_gcp/container/outputs.py +5 -0
- pulumi_gcp/container/registry.py +5 -0
- pulumi_gcp/containeranalysis/_inputs.py +121 -0
- pulumi_gcp/containeranalysis/get_note_iam_policy.py +5 -0
- pulumi_gcp/containeranalysis/note.py +49 -44
- pulumi_gcp/containeranalysis/note_iam_binding.py +24 -19
- pulumi_gcp/containeranalysis/note_iam_member.py +24 -19
- pulumi_gcp/containeranalysis/note_iam_policy.py +21 -16
- pulumi_gcp/containeranalysis/occurence.py +10 -5
- pulumi_gcp/containeranalysis/outputs.py +5 -0
- pulumi_gcp/databasemigrationservice/_inputs.py +578 -0
- pulumi_gcp/databasemigrationservice/connection_profile.py +188 -183
- pulumi_gcp/databasemigrationservice/outputs.py +5 -0
- pulumi_gcp/databasemigrationservice/private_connection.py +20 -15
- pulumi_gcp/datacatalog/_inputs.py +318 -0
- pulumi_gcp/datacatalog/entry.py +20 -15
- pulumi_gcp/datacatalog/entry_group.py +5 -0
- pulumi_gcp/datacatalog/entry_group_iam_binding.py +24 -19
- pulumi_gcp/datacatalog/entry_group_iam_member.py +24 -19
- pulumi_gcp/datacatalog/entry_group_iam_policy.py +21 -16
- pulumi_gcp/datacatalog/get_entry_group_iam_policy.py +5 -0
- pulumi_gcp/datacatalog/get_policy_tag_iam_policy.py +5 -0
- pulumi_gcp/datacatalog/get_tag_template_iam_policy.py +5 -0
- pulumi_gcp/datacatalog/get_taxonomy_iam_policy.py +5 -0
- pulumi_gcp/datacatalog/outputs.py +5 -0
- pulumi_gcp/datacatalog/policy_tag.py +5 -0
- pulumi_gcp/datacatalog/policy_tag_iam_binding.py +24 -19
- pulumi_gcp/datacatalog/policy_tag_iam_member.py +24 -19
- pulumi_gcp/datacatalog/policy_tag_iam_policy.py +21 -16
- pulumi_gcp/datacatalog/tag.py +264 -259
- pulumi_gcp/datacatalog/tag_template.py +76 -71
- pulumi_gcp/datacatalog/tag_template_iam_binding.py +24 -19
- pulumi_gcp/datacatalog/tag_template_iam_member.py +24 -19
- pulumi_gcp/datacatalog/tag_template_iam_policy.py +21 -16
- pulumi_gcp/datacatalog/taxonomy.py +5 -0
- pulumi_gcp/datacatalog/taxonomy_iam_binding.py +24 -19
- pulumi_gcp/datacatalog/taxonomy_iam_member.py +24 -19
- pulumi_gcp/datacatalog/taxonomy_iam_policy.py +21 -16
- pulumi_gcp/dataflow/_inputs.py +316 -0
- pulumi_gcp/dataflow/flex_template_job.py +5 -0
- pulumi_gcp/dataflow/job.py +5 -0
- pulumi_gcp/dataflow/outputs.py +5 -0
- pulumi_gcp/dataflow/pipeline.py +75 -70
- pulumi_gcp/dataform/_inputs.py +251 -0
- pulumi_gcp/dataform/get_repository_iam_policy.py +5 -0
- pulumi_gcp/dataform/outputs.py +5 -0
- pulumi_gcp/dataform/repository.py +41 -36
- pulumi_gcp/dataform/repository_iam_binding.py +8 -3
- pulumi_gcp/dataform/repository_iam_member.py +8 -3
- pulumi_gcp/dataform/repository_iam_policy.py +5 -0
- pulumi_gcp/dataform/repository_release_config.py +58 -53
- pulumi_gcp/dataform/repository_workflow_config.py +94 -89
- pulumi_gcp/datafusion/_inputs.py +224 -8
- pulumi_gcp/datafusion/get_instance_iam_policy.py +5 -0
- pulumi_gcp/datafusion/instance.py +119 -50
- pulumi_gcp/datafusion/outputs.py +132 -7
- pulumi_gcp/dataloss/_inputs.py +6566 -114
- pulumi_gcp/dataloss/outputs.py +5 -0
- pulumi_gcp/dataloss/prevention_deidentify_template.py +226 -221
- pulumi_gcp/dataloss/prevention_discovery_config.py +22 -17
- pulumi_gcp/dataloss/prevention_inspect_template.py +442 -437
- pulumi_gcp/dataloss/prevention_job_trigger.py +701 -696
- pulumi_gcp/dataloss/prevention_stored_info_type.py +62 -57
- pulumi_gcp/dataplex/_inputs.py +1212 -6
- pulumi_gcp/dataplex/aspect_type.py +5 -0
- pulumi_gcp/dataplex/aspect_type_iam_binding.py +24 -19
- pulumi_gcp/dataplex/aspect_type_iam_member.py +24 -19
- pulumi_gcp/dataplex/aspect_type_iam_policy.py +21 -16
- pulumi_gcp/dataplex/asset.py +47 -42
- pulumi_gcp/dataplex/asset_iam_binding.py +24 -19
- pulumi_gcp/dataplex/asset_iam_member.py +24 -19
- pulumi_gcp/dataplex/asset_iam_policy.py +21 -16
- pulumi_gcp/dataplex/datascan.py +289 -284
- pulumi_gcp/dataplex/datascan_iam_binding.py +24 -19
- pulumi_gcp/dataplex/datascan_iam_member.py +24 -19
- pulumi_gcp/dataplex/datascan_iam_policy.py +21 -16
- pulumi_gcp/dataplex/entry_group.py +5 -0
- pulumi_gcp/dataplex/entry_group_iam_binding.py +24 -19
- pulumi_gcp/dataplex/entry_group_iam_member.py +24 -19
- pulumi_gcp/dataplex/entry_group_iam_policy.py +21 -16
- pulumi_gcp/dataplex/entry_type.py +16 -11
- pulumi_gcp/dataplex/entry_type_iam_binding.py +24 -19
- pulumi_gcp/dataplex/entry_type_iam_member.py +24 -19
- pulumi_gcp/dataplex/entry_type_iam_policy.py +21 -16
- pulumi_gcp/dataplex/get_aspect_type_iam_policy.py +5 -0
- pulumi_gcp/dataplex/get_asset_iam_policy.py +5 -0
- pulumi_gcp/dataplex/get_datascan_iam_policy.py +5 -0
- pulumi_gcp/dataplex/get_entry_group_iam_policy.py +5 -0
- pulumi_gcp/dataplex/get_entry_type_iam_policy.py +5 -0
- pulumi_gcp/dataplex/get_lake_iam_policy.py +5 -0
- pulumi_gcp/dataplex/get_task_iam_policy.py +5 -0
- pulumi_gcp/dataplex/get_zone_iam_policy.py +5 -0
- pulumi_gcp/dataplex/lake.py +14 -9
- pulumi_gcp/dataplex/lake_iam_binding.py +24 -19
- pulumi_gcp/dataplex/lake_iam_member.py +24 -19
- pulumi_gcp/dataplex/lake_iam_policy.py +21 -16
- pulumi_gcp/dataplex/outputs.py +5 -0
- pulumi_gcp/dataplex/task.py +173 -168
- pulumi_gcp/dataplex/task_iam_binding.py +24 -19
- pulumi_gcp/dataplex/task_iam_member.py +24 -19
- pulumi_gcp/dataplex/task_iam_policy.py +21 -16
- pulumi_gcp/dataplex/zone.py +29 -24
- pulumi_gcp/dataplex/zone_iam_binding.py +24 -19
- pulumi_gcp/dataplex/zone_iam_member.py +24 -19
- pulumi_gcp/dataplex/zone_iam_policy.py +21 -16
- pulumi_gcp/dataproc/_inputs.py +3214 -39
- pulumi_gcp/dataproc/autoscaling_policy.py +50 -45
- pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +24 -19
- pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +24 -19
- pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +21 -16
- pulumi_gcp/dataproc/cluster.py +109 -104
- pulumi_gcp/dataproc/cluster_iam_binding.py +24 -19
- pulumi_gcp/dataproc/cluster_iam_member.py +24 -19
- pulumi_gcp/dataproc/cluster_iam_policy.py +21 -16
- pulumi_gcp/dataproc/get_autoscaling_policy_iam_policy.py +5 -0
- pulumi_gcp/dataproc/get_cluster_iam_policy.py +5 -0
- pulumi_gcp/dataproc/get_job_iam_policy.py +5 -0
- pulumi_gcp/dataproc/get_metastore_federation_iam_policy.py +5 -0
- pulumi_gcp/dataproc/get_metastore_service.py +5 -0
- pulumi_gcp/dataproc/get_metastore_service_iam_policy.py +5 -0
- pulumi_gcp/dataproc/job.py +95 -90
- pulumi_gcp/dataproc/job_iam_binding.py +24 -19
- pulumi_gcp/dataproc/job_iam_member.py +24 -19
- pulumi_gcp/dataproc/job_iam_policy.py +21 -16
- pulumi_gcp/dataproc/metastore_federation.py +56 -51
- pulumi_gcp/dataproc/metastore_federation_iam_binding.py +24 -19
- pulumi_gcp/dataproc/metastore_federation_iam_member.py +24 -19
- pulumi_gcp/dataproc/metastore_federation_iam_policy.py +21 -16
- pulumi_gcp/dataproc/metastore_service.py +239 -234
- pulumi_gcp/dataproc/metastore_service_iam_binding.py +24 -19
- pulumi_gcp/dataproc/metastore_service_iam_member.py +24 -19
- pulumi_gcp/dataproc/metastore_service_iam_policy.py +21 -16
- pulumi_gcp/dataproc/outputs.py +5 -0
- pulumi_gcp/dataproc/workflow_template.py +112 -107
- pulumi_gcp/datastore/_inputs.py +22 -0
- pulumi_gcp/datastore/data_store_index.py +26 -21
- pulumi_gcp/datastore/outputs.py +5 -0
- pulumi_gcp/datastream/_inputs.py +1631 -35
- pulumi_gcp/datastream/connection_profile.py +251 -246
- pulumi_gcp/datastream/get_static_ips.py +5 -0
- pulumi_gcp/datastream/outputs.py +5 -0
- pulumi_gcp/datastream/private_connection.py +20 -15
- pulumi_gcp/datastream/stream.py +777 -772
- pulumi_gcp/deploymentmanager/_inputs.py +66 -0
- pulumi_gcp/deploymentmanager/deployment.py +33 -28
- pulumi_gcp/deploymentmanager/outputs.py +5 -0
- pulumi_gcp/diagflow/_inputs.py +2590 -41
- pulumi_gcp/diagflow/agent.py +5 -0
- pulumi_gcp/diagflow/cx_agent.py +75 -70
- pulumi_gcp/diagflow/cx_entity_type.py +37 -32
- pulumi_gcp/diagflow/cx_environment.py +22 -17
- pulumi_gcp/diagflow/cx_flow.py +455 -450
- pulumi_gcp/diagflow/cx_intent.py +55 -50
- pulumi_gcp/diagflow/cx_page.py +718 -713
- pulumi_gcp/diagflow/cx_security_settings.py +69 -64
- pulumi_gcp/diagflow/cx_test_case.py +197 -192
- pulumi_gcp/diagflow/cx_version.py +13 -8
- pulumi_gcp/diagflow/cx_webhook.py +27 -22
- pulumi_gcp/diagflow/entity_type.py +26 -21
- pulumi_gcp/diagflow/fulfillment.py +27 -22
- pulumi_gcp/diagflow/intent.py +7 -2
- pulumi_gcp/diagflow/outputs.py +5 -0
- pulumi_gcp/discoveryengine/_inputs.py +183 -0
- pulumi_gcp/discoveryengine/chat_engine.py +37 -32
- pulumi_gcp/discoveryengine/data_store.py +32 -27
- pulumi_gcp/discoveryengine/outputs.py +5 -0
- pulumi_gcp/discoveryengine/search_engine.py +17 -12
- pulumi_gcp/dns/_inputs.py +589 -0
- pulumi_gcp/dns/dns_managed_zone_iam_binding.py +24 -19
- pulumi_gcp/dns/dns_managed_zone_iam_member.py +24 -19
- pulumi_gcp/dns/dns_managed_zone_iam_policy.py +21 -16
- pulumi_gcp/dns/get_keys.py +13 -8
- pulumi_gcp/dns/get_managed_zone.py +5 -0
- pulumi_gcp/dns/get_managed_zone_iam_policy.py +5 -0
- pulumi_gcp/dns/get_managed_zones.py +5 -0
- pulumi_gcp/dns/get_record_set.py +5 -0
- pulumi_gcp/dns/managed_zone.py +183 -178
- pulumi_gcp/dns/outputs.py +5 -0
- pulumi_gcp/dns/policy.py +47 -42
- pulumi_gcp/dns/record_set.py +100 -95
- pulumi_gcp/dns/response_policy.py +81 -76
- pulumi_gcp/dns/response_policy_rule.py +38 -33
- pulumi_gcp/edgecontainer/_inputs.py +464 -0
- pulumi_gcp/edgecontainer/cluster.py +152 -147
- pulumi_gcp/edgecontainer/node_pool.py +109 -104
- pulumi_gcp/edgecontainer/outputs.py +5 -0
- pulumi_gcp/edgecontainer/vpn_connection.py +36 -31
- pulumi_gcp/edgenetwork/network.py +5 -0
- pulumi_gcp/edgenetwork/subnet.py +5 -0
- pulumi_gcp/endpoints/_inputs.py +101 -0
- pulumi_gcp/endpoints/consumers_iam_binding.py +8 -3
- pulumi_gcp/endpoints/consumers_iam_member.py +8 -3
- pulumi_gcp/endpoints/consumers_iam_policy.py +5 -0
- pulumi_gcp/endpoints/get_service_consumers_iam_policy.py +5 -0
- pulumi_gcp/endpoints/get_service_iam_policy.py +5 -0
- pulumi_gcp/endpoints/outputs.py +5 -0
- pulumi_gcp/endpoints/service.py +9 -4
- pulumi_gcp/endpoints/service_iam_binding.py +24 -19
- pulumi_gcp/endpoints/service_iam_member.py +24 -19
- pulumi_gcp/endpoints/service_iam_policy.py +21 -16
- pulumi_gcp/essentialcontacts/_inputs.py +313 -0
- pulumi_gcp/essentialcontacts/contact.py +5 -0
- pulumi_gcp/essentialcontacts/document_ai_processor.py +5 -0
- pulumi_gcp/essentialcontacts/document_ai_processor_default_version.py +5 -0
- pulumi_gcp/essentialcontacts/document_ai_warehouse_document_schema.py +40 -35
- pulumi_gcp/essentialcontacts/document_ai_warehouse_location.py +5 -0
- pulumi_gcp/essentialcontacts/outputs.py +5 -0
- pulumi_gcp/eventarc/_inputs.py +145 -0
- pulumi_gcp/eventarc/channel.py +5 -0
- pulumi_gcp/eventarc/google_channel_config.py +5 -0
- pulumi_gcp/eventarc/outputs.py +5 -0
- pulumi_gcp/eventarc/trigger.py +78 -73
- pulumi_gcp/filestore/_inputs.py +108 -0
- pulumi_gcp/filestore/backup.py +23 -18
- pulumi_gcp/filestore/get_instance.py +5 -0
- pulumi_gcp/filestore/instance.py +107 -102
- pulumi_gcp/filestore/outputs.py +5 -0
- pulumi_gcp/filestore/snapshot.py +37 -32
- pulumi_gcp/firebase/_inputs.py +511 -0
- pulumi_gcp/firebase/android_app.py +21 -16
- pulumi_gcp/firebase/app_check_app_attest_config.py +5 -0
- pulumi_gcp/firebase/app_check_debug_token.py +5 -0
- pulumi_gcp/firebase/app_check_device_check_config.py +5 -0
- pulumi_gcp/firebase/app_check_play_integrity_config.py +5 -0
- pulumi_gcp/firebase/app_check_recaptcha_enterprise_config.py +5 -0
- pulumi_gcp/firebase/app_check_recaptcha_v3_config.py +5 -0
- pulumi_gcp/firebase/app_check_service_config.py +5 -0
- pulumi_gcp/firebase/apple_app.py +15 -10
- pulumi_gcp/firebase/database_instance.py +5 -0
- pulumi_gcp/firebase/extensions_instance.py +30 -25
- pulumi_gcp/firebase/get_android_app.py +5 -0
- pulumi_gcp/firebase/get_android_app_config.py +5 -0
- pulumi_gcp/firebase/get_apple_app.py +5 -0
- pulumi_gcp/firebase/get_apple_app_config.py +5 -0
- pulumi_gcp/firebase/get_hosting_channel.py +5 -0
- pulumi_gcp/firebase/get_web_app.py +5 -0
- pulumi_gcp/firebase/get_web_app_config.py +5 -0
- pulumi_gcp/firebase/hosting_channel.py +5 -0
- pulumi_gcp/firebase/hosting_custom_domain.py +39 -34
- pulumi_gcp/firebase/hosting_release.py +33 -28
- pulumi_gcp/firebase/hosting_site.py +5 -0
- pulumi_gcp/firebase/hosting_version.py +76 -71
- pulumi_gcp/firebase/outputs.py +5 -0
- pulumi_gcp/firebase/project.py +5 -0
- pulumi_gcp/firebase/storage_bucket.py +5 -0
- pulumi_gcp/firebase/web_app.py +15 -10
- pulumi_gcp/firebaserules/_inputs.py +51 -0
- pulumi_gcp/firebaserules/outputs.py +5 -0
- pulumi_gcp/firebaserules/release.py +5 -0
- pulumi_gcp/firebaserules/ruleset.py +40 -35
- pulumi_gcp/firestore/_inputs.py +154 -0
- pulumi_gcp/firestore/backup_schedule.py +23 -18
- pulumi_gcp/firestore/database.py +22 -17
- pulumi_gcp/firestore/document.py +5 -0
- pulumi_gcp/firestore/field.py +63 -58
- pulumi_gcp/firestore/index.py +72 -67
- pulumi_gcp/firestore/outputs.py +5 -0
- pulumi_gcp/folder/_inputs.py +165 -0
- pulumi_gcp/folder/access_approval_settings.py +28 -23
- pulumi_gcp/folder/get_iam_policy.py +5 -0
- pulumi_gcp/folder/get_organization_policy.py +5 -0
- pulumi_gcp/folder/iam_audit_config.py +130 -125
- pulumi_gcp/folder/iam_binding.py +8 -3
- pulumi_gcp/folder/iam_member.py +130 -125
- pulumi_gcp/folder/iam_policy.py +125 -120
- pulumi_gcp/folder/organization_policy.py +54 -49
- pulumi_gcp/folder/outputs.py +5 -0
- pulumi_gcp/gkebackup/_inputs.py +694 -0
- pulumi_gcp/gkebackup/backup_plan.py +436 -431
- pulumi_gcp/gkebackup/backup_plan_iam_binding.py +24 -19
- pulumi_gcp/gkebackup/backup_plan_iam_member.py +24 -19
- pulumi_gcp/gkebackup/backup_plan_iam_policy.py +21 -16
- pulumi_gcp/gkebackup/get_backup_plan_iam_policy.py +5 -0
- pulumi_gcp/gkebackup/get_restore_plan_iam_policy.py +5 -0
- pulumi_gcp/gkebackup/outputs.py +5 -0
- pulumi_gcp/gkebackup/restore_plan.py +580 -575
- pulumi_gcp/gkebackup/restore_plan_iam_binding.py +336 -956
- pulumi_gcp/gkebackup/restore_plan_iam_member.py +336 -956
- pulumi_gcp/gkebackup/restore_plan_iam_policy.py +243 -953
- pulumi_gcp/gkehub/_inputs.py +1204 -6
- pulumi_gcp/gkehub/feature.py +319 -314
- pulumi_gcp/gkehub/feature_iam_binding.py +24 -19
- pulumi_gcp/gkehub/feature_iam_member.py +24 -19
- pulumi_gcp/gkehub/feature_iam_policy.py +21 -16
- pulumi_gcp/gkehub/feature_membership.py +184 -179
- pulumi_gcp/gkehub/fleet.py +24 -19
- pulumi_gcp/gkehub/get_feature_iam_policy.py +5 -0
- pulumi_gcp/gkehub/get_membership_iam_policy.py +5 -0
- pulumi_gcp/gkehub/get_scope_iam_policy.py +5 -0
- pulumi_gcp/gkehub/membership.py +57 -52
- pulumi_gcp/gkehub/membership_binding.py +17 -12
- pulumi_gcp/gkehub/membership_iam_binding.py +24 -19
- pulumi_gcp/gkehub/membership_iam_member.py +24 -19
- pulumi_gcp/gkehub/membership_iam_policy.py +21 -16
- pulumi_gcp/gkehub/membership_rbac_role_binding.py +28 -23
- pulumi_gcp/gkehub/namespace.py +7 -2
- pulumi_gcp/gkehub/outputs.py +5 -0
- pulumi_gcp/gkehub/scope.py +7 -2
- pulumi_gcp/gkehub/scope_iam_binding.py +24 -19
- pulumi_gcp/gkehub/scope_iam_member.py +24 -19
- pulumi_gcp/gkehub/scope_iam_policy.py +21 -16
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +18 -13
- pulumi_gcp/gkeonprem/_inputs.py +2318 -18
- pulumi_gcp/gkeonprem/bare_metal_admin_cluster.py +335 -330
- pulumi_gcp/gkeonprem/bare_metal_cluster.py +528 -523
- pulumi_gcp/gkeonprem/bare_metal_node_pool.py +262 -257
- pulumi_gcp/gkeonprem/outputs.py +5 -0
- pulumi_gcp/gkeonprem/v_mware_cluster.py +399 -394
- pulumi_gcp/gkeonprem/v_mware_node_pool.py +89 -84
- pulumi_gcp/healthcare/_inputs.py +359 -0
- pulumi_gcp/healthcare/consent_store.py +5 -0
- pulumi_gcp/healthcare/consent_store_iam_binding.py +24 -19
- pulumi_gcp/healthcare/consent_store_iam_member.py +24 -19
- pulumi_gcp/healthcare/consent_store_iam_policy.py +21 -16
- pulumi_gcp/healthcare/dataset.py +115 -0
- pulumi_gcp/healthcare/dataset_iam_binding.py +24 -19
- pulumi_gcp/healthcare/dataset_iam_member.py +24 -19
- pulumi_gcp/healthcare/dataset_iam_policy.py +21 -16
- pulumi_gcp/healthcare/dicom_store.py +39 -34
- pulumi_gcp/healthcare/dicom_store_iam_binding.py +24 -19
- pulumi_gcp/healthcare/dicom_store_iam_member.py +24 -19
- pulumi_gcp/healthcare/dicom_store_iam_policy.py +21 -16
- pulumi_gcp/healthcare/fhir_store.py +62 -57
- pulumi_gcp/healthcare/fhir_store_iam_binding.py +24 -19
- pulumi_gcp/healthcare/fhir_store_iam_member.py +24 -19
- pulumi_gcp/healthcare/fhir_store_iam_policy.py +21 -16
- pulumi_gcp/healthcare/get_consent_store_iam_policy.py +5 -0
- pulumi_gcp/healthcare/get_dataset_iam_policy.py +5 -0
- pulumi_gcp/healthcare/get_dicom_store_iam_policy.py +5 -0
- pulumi_gcp/healthcare/get_fhir_store_iam_policy.py +5 -0
- pulumi_gcp/healthcare/get_hl7_v2_store_iam_policy.py +5 -0
- pulumi_gcp/healthcare/hl7_store.py +46 -41
- pulumi_gcp/healthcare/hl7_store_iam_binding.py +24 -19
- pulumi_gcp/healthcare/hl7_store_iam_member.py +24 -19
- pulumi_gcp/healthcare/hl7_store_iam_policy.py +21 -16
- pulumi_gcp/healthcare/outputs.py +48 -0
- pulumi_gcp/iam/_inputs.py +433 -0
- pulumi_gcp/iam/access_boundary_policy.py +54 -49
- pulumi_gcp/iam/deny_policy.py +56 -51
- pulumi_gcp/iam/get_rule.py +5 -0
- pulumi_gcp/iam/get_testable_permissions.py +5 -0
- pulumi_gcp/iam/get_workload_identity_pool.py +5 -0
- pulumi_gcp/iam/get_workload_identity_pool_provider.py +5 -0
- pulumi_gcp/iam/outputs.py +5 -0
- pulumi_gcp/iam/workforce_pool.py +22 -17
- pulumi_gcp/iam/workforce_pool_provider.py +184 -179
- pulumi_gcp/iam/workload_identity_pool.py +5 -0
- pulumi_gcp/iam/workload_identity_pool_provider.py +68 -63
- pulumi_gcp/iap/_inputs.py +411 -0
- pulumi_gcp/iap/app_engine_service_iam_binding.py +102 -97
- pulumi_gcp/iap/app_engine_service_iam_member.py +102 -97
- pulumi_gcp/iap/app_engine_service_iam_policy.py +97 -92
- pulumi_gcp/iap/app_engine_version_iam_binding.py +102 -97
- pulumi_gcp/iap/app_engine_version_iam_member.py +102 -97
- pulumi_gcp/iap/app_engine_version_iam_policy.py +97 -92
- pulumi_gcp/iap/brand.py +5 -0
- pulumi_gcp/iap/client.py +5 -0
- pulumi_gcp/iap/get_app_engine_service_iam_policy.py +5 -0
- pulumi_gcp/iap/get_app_engine_version_iam_policy.py +5 -0
- pulumi_gcp/iap/get_client.py +5 -0
- pulumi_gcp/iap/get_tunnel_dest_group_iam_policy.py +5 -0
- pulumi_gcp/iap/get_tunnel_iam_policy.py +5 -0
- pulumi_gcp/iap/get_tunnel_instance_iam_policy.py +5 -0
- pulumi_gcp/iap/get_web_backend_service_iam_policy.py +5 -0
- pulumi_gcp/iap/get_web_iam_policy.py +5 -0
- pulumi_gcp/iap/get_web_region_backend_service_iam_policy.py +5 -0
- pulumi_gcp/iap/get_web_type_app_engine_iam_policy.py +5 -0
- pulumi_gcp/iap/get_web_type_compute_iam_policy.py +5 -0
- pulumi_gcp/iap/outputs.py +5 -0
- pulumi_gcp/iap/tunnel_dest_group.py +5 -0
- pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +102 -97
- pulumi_gcp/iap/tunnel_dest_group_iam_member.py +102 -97
- pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +97 -92
- pulumi_gcp/iap/tunnel_iam_binding.py +102 -97
- pulumi_gcp/iap/tunnel_iam_member.py +102 -97
- pulumi_gcp/iap/tunnel_iam_policy.py +97 -92
- pulumi_gcp/iap/tunnel_instance_iam_binding.py +102 -97
- pulumi_gcp/iap/tunnel_instance_iam_member.py +102 -97
- pulumi_gcp/iap/tunnel_instance_iam_policy.py +97 -92
- pulumi_gcp/iap/web_backend_service_iam_binding.py +102 -97
- pulumi_gcp/iap/web_backend_service_iam_member.py +102 -97
- pulumi_gcp/iap/web_backend_service_iam_policy.py +97 -92
- pulumi_gcp/iap/web_iam_binding.py +102 -97
- pulumi_gcp/iap/web_iam_member.py +102 -97
- pulumi_gcp/iap/web_iam_policy.py +97 -92
- pulumi_gcp/iap/web_region_backend_service_iam_binding.py +102 -97
- pulumi_gcp/iap/web_region_backend_service_iam_member.py +102 -97
- pulumi_gcp/iap/web_region_backend_service_iam_policy.py +97 -92
- pulumi_gcp/iap/web_type_app_enging_iam_binding.py +102 -97
- pulumi_gcp/iap/web_type_app_enging_iam_member.py +102 -97
- pulumi_gcp/iap/web_type_app_enging_iam_policy.py +97 -92
- pulumi_gcp/iap/web_type_compute_iam_binding.py +102 -97
- pulumi_gcp/iap/web_type_compute_iam_member.py +102 -97
- pulumi_gcp/iap/web_type_compute_iam_policy.py +97 -92
- pulumi_gcp/identityplatform/_inputs.py +576 -0
- pulumi_gcp/identityplatform/config.py +120 -115
- pulumi_gcp/identityplatform/default_supported_idp_config.py +5 -0
- pulumi_gcp/identityplatform/inbound_saml_config.py +39 -34
- pulumi_gcp/identityplatform/oauth_idp_config.py +5 -0
- pulumi_gcp/identityplatform/outputs.py +5 -0
- pulumi_gcp/identityplatform/project_default_config.py +38 -33
- pulumi_gcp/identityplatform/tenant.py +5 -0
- pulumi_gcp/identityplatform/tenant_default_supported_idp_config.py +5 -0
- pulumi_gcp/identityplatform/tenant_inbound_saml_config.py +39 -34
- pulumi_gcp/identityplatform/tenant_oauth_idp_config.py +5 -0
- pulumi_gcp/integrationconnectors/_inputs.py +868 -0
- pulumi_gcp/integrationconnectors/connection.py +465 -460
- pulumi_gcp/integrationconnectors/endpoint_attachment.py +5 -0
- pulumi_gcp/integrationconnectors/managed_zone.py +15 -10
- pulumi_gcp/integrationconnectors/outputs.py +5 -0
- pulumi_gcp/kms/_inputs.py +303 -0
- pulumi_gcp/kms/autokey_config.py +5 -0
- pulumi_gcp/kms/crypto_key.py +18 -13
- pulumi_gcp/kms/crypto_key_iam_binding.py +56 -51
- pulumi_gcp/kms/crypto_key_iam_member.py +56 -51
- pulumi_gcp/kms/crypto_key_iam_policy.py +51 -46
- pulumi_gcp/kms/crypto_key_version.py +12 -7
- pulumi_gcp/kms/ekm_connection.py +24 -19
- pulumi_gcp/kms/get_crypto_key_iam_policy.py +5 -0
- pulumi_gcp/kms/get_key_ring_iam_policy.py +5 -0
- pulumi_gcp/kms/get_kms_crypto_key.py +5 -0
- pulumi_gcp/kms/get_kms_crypto_key_version.py +5 -0
- pulumi_gcp/kms/get_kms_key_ring.py +5 -0
- pulumi_gcp/kms/get_kms_secret.py +11 -6
- pulumi_gcp/kms/get_kms_secret_asymmetric.py +17 -12
- pulumi_gcp/kms/get_kms_secret_ciphertext.py +23 -18
- pulumi_gcp/kms/key_handle.py +5 -0
- pulumi_gcp/kms/key_ring.py +5 -0
- pulumi_gcp/kms/key_ring_iam_binding.py +102 -97
- pulumi_gcp/kms/key_ring_iam_member.py +102 -97
- pulumi_gcp/kms/key_ring_iam_policy.py +97 -92
- pulumi_gcp/kms/key_ring_import_job.py +9 -4
- pulumi_gcp/kms/outputs.py +5 -0
- pulumi_gcp/kms/secret_ciphertext.py +23 -18
- pulumi_gcp/logging/_inputs.py +520 -0
- pulumi_gcp/logging/billing_account_bucket_config.py +16 -11
- pulumi_gcp/logging/billing_account_exclusion.py +5 -0
- pulumi_gcp/logging/billing_account_sink.py +15 -10
- pulumi_gcp/logging/folder_bucket_config.py +16 -11
- pulumi_gcp/logging/folder_exclusion.py +5 -0
- pulumi_gcp/logging/folder_settings.py +5 -0
- pulumi_gcp/logging/folder_sink.py +15 -10
- pulumi_gcp/logging/get_folder_settings.py +5 -0
- pulumi_gcp/logging/get_log_view_iam_policy.py +5 -0
- pulumi_gcp/logging/get_organization_settings.py +5 -0
- pulumi_gcp/logging/get_project_cmek_settings.py +5 -0
- pulumi_gcp/logging/get_project_settings.py +5 -0
- pulumi_gcp/logging/get_sink.py +5 -0
- pulumi_gcp/logging/linked_dataset.py +10 -5
- pulumi_gcp/logging/log_view.py +5 -0
- pulumi_gcp/logging/log_view_iam_binding.py +10 -5
- pulumi_gcp/logging/log_view_iam_member.py +10 -5
- pulumi_gcp/logging/log_view_iam_policy.py +5 -0
- pulumi_gcp/logging/metric.py +97 -92
- pulumi_gcp/logging/organization_bucket_config.py +16 -11
- pulumi_gcp/logging/organization_exclusion.py +5 -0
- pulumi_gcp/logging/organization_settings.py +5 -0
- pulumi_gcp/logging/organization_sink.py +15 -10
- pulumi_gcp/logging/outputs.py +5 -0
- pulumi_gcp/logging/project_bucket_config.py +21 -16
- pulumi_gcp/logging/project_exclusion.py +5 -0
- pulumi_gcp/logging/project_sink.py +15 -10
- pulumi_gcp/looker/_inputs.py +211 -0
- pulumi_gcp/looker/instance.py +204 -199
- pulumi_gcp/looker/outputs.py +5 -0
- pulumi_gcp/managedkafka/_inputs.py +69 -0
- pulumi_gcp/managedkafka/cluster.py +72 -67
- pulumi_gcp/managedkafka/outputs.py +5 -0
- pulumi_gcp/managedkafka/topic.py +27 -22
- pulumi_gcp/memcache/_inputs.py +184 -0
- pulumi_gcp/memcache/instance.py +56 -51
- pulumi_gcp/memcache/outputs.py +5 -0
- pulumi_gcp/migrationcenter/_inputs.py +182 -0
- pulumi_gcp/migrationcenter/group.py +5 -0
- pulumi_gcp/migrationcenter/outputs.py +5 -0
- pulumi_gcp/migrationcenter/preference_set.py +82 -77
- pulumi_gcp/ml/_inputs.py +17 -0
- pulumi_gcp/ml/engine_model.py +10 -5
- pulumi_gcp/ml/outputs.py +5 -0
- pulumi_gcp/monitoring/_inputs.py +1778 -62
- pulumi_gcp/monitoring/alert_policy.py +128 -123
- pulumi_gcp/monitoring/custom_service.py +16 -11
- pulumi_gcp/monitoring/dashboard.py +5 -0
- pulumi_gcp/monitoring/generic_service.py +20 -15
- pulumi_gcp/monitoring/get_app_engine_service.py +21 -16
- pulumi_gcp/monitoring/get_cluster_istio_service.py +5 -0
- pulumi_gcp/monitoring/get_istio_canonical_service.py +5 -0
- pulumi_gcp/monitoring/get_mesh_istio_service.py +5 -0
- pulumi_gcp/monitoring/get_notification_channel.py +29 -24
- pulumi_gcp/monitoring/get_secret_version.py +5 -0
- pulumi_gcp/monitoring/get_uptime_check_i_ps.py +5 -0
- pulumi_gcp/monitoring/group.py +5 -0
- pulumi_gcp/monitoring/metric_descriptor.py +49 -44
- pulumi_gcp/monitoring/monitored_project.py +5 -0
- pulumi_gcp/monitoring/notification_channel.py +16 -11
- pulumi_gcp/monitoring/outputs.py +68 -0
- pulumi_gcp/monitoring/slo.py +120 -115
- pulumi_gcp/monitoring/uptime_check_config.py +241 -236
- pulumi_gcp/netapp/_inputs.py +311 -0
- pulumi_gcp/netapp/active_directory.py +5 -0
- pulumi_gcp/netapp/backup.py +11 -6
- pulumi_gcp/netapp/backup_policy.py +5 -0
- pulumi_gcp/netapp/backup_vault.py +5 -0
- pulumi_gcp/netapp/kmsconfig.py +5 -0
- pulumi_gcp/netapp/outputs.py +5 -0
- pulumi_gcp/netapp/storage_pool.py +5 -0
- pulumi_gcp/netapp/volume.py +27 -22
- pulumi_gcp/netapp/volume_replication.py +24 -19
- pulumi_gcp/netapp/volume_snapshot.py +5 -0
- pulumi_gcp/networkconnectivity/_inputs.py +253 -0
- pulumi_gcp/networkconnectivity/hub.py +7 -2
- pulumi_gcp/networkconnectivity/internal_range.py +5 -0
- pulumi_gcp/networkconnectivity/outputs.py +5 -0
- pulumi_gcp/networkconnectivity/policy_based_route.py +46 -41
- pulumi_gcp/networkconnectivity/regional_endpoint.py +5 -0
- pulumi_gcp/networkconnectivity/service_connection_policy.py +20 -15
- pulumi_gcp/networkconnectivity/spoke.py +71 -66
- pulumi_gcp/networkmanagement/_inputs.py +87 -0
- pulumi_gcp/networkmanagement/connectivity_test.py +85 -80
- pulumi_gcp/networkmanagement/outputs.py +5 -0
- pulumi_gcp/networksecurity/_inputs.py +321 -0
- pulumi_gcp/networksecurity/address_group.py +5 -0
- pulumi_gcp/networksecurity/address_group_iam_binding.py +297 -5
- pulumi_gcp/networksecurity/address_group_iam_member.py +297 -5
- pulumi_gcp/networksecurity/address_group_iam_policy.py +5 -0
- pulumi_gcp/networksecurity/authorization_policy.py +52 -47
- pulumi_gcp/networksecurity/client_tls_policy.py +45 -40
- pulumi_gcp/networksecurity/firewall_endpoint.py +5 -0
- pulumi_gcp/networksecurity/firewall_endpoint_association.py +5 -0
- pulumi_gcp/networksecurity/gateway_security_policy.py +91 -86
- pulumi_gcp/networksecurity/gateway_security_policy_rule.py +5 -0
- pulumi_gcp/networksecurity/get_address_group_iam_policy.py +5 -0
- pulumi_gcp/networksecurity/outputs.py +5 -0
- pulumi_gcp/networksecurity/security_profile.py +40 -35
- pulumi_gcp/networksecurity/security_profile_group.py +5 -0
- pulumi_gcp/networksecurity/server_tls_policy.py +101 -96
- pulumi_gcp/networksecurity/tls_inspection_policy.py +193 -188
- pulumi_gcp/networksecurity/url_list.py +5 -0
- pulumi_gcp/networkservices/_inputs.py +1781 -29
- pulumi_gcp/networkservices/edge_cache_keyset.py +51 -46
- pulumi_gcp/networkservices/edge_cache_origin.py +89 -84
- pulumi_gcp/networkservices/edge_cache_service.py +567 -562
- pulumi_gcp/networkservices/endpoint_policy.py +55 -50
- pulumi_gcp/networkservices/gateway.py +21 -16
- pulumi_gcp/networkservices/grpc_route.py +146 -141
- pulumi_gcp/networkservices/http_route.py +294 -289
- pulumi_gcp/networkservices/lb_route_extension.py +10 -5
- pulumi_gcp/networkservices/lb_traffic_extension.py +10 -5
- pulumi_gcp/networkservices/mesh.py +5 -0
- pulumi_gcp/networkservices/outputs.py +5 -0
- pulumi_gcp/networkservices/service_binding.py +5 -0
- pulumi_gcp/networkservices/service_lb_policies.py +27 -22
- pulumi_gcp/networkservices/tcp_route.py +106 -101
- pulumi_gcp/networkservices/tls_route.py +82 -77
- pulumi_gcp/notebooks/_inputs.py +615 -0
- pulumi_gcp/notebooks/environment.py +21 -16
- pulumi_gcp/notebooks/get_instance_iam_policy.py +5 -0
- pulumi_gcp/notebooks/get_runtime_iam_policy.py +5 -0
- pulumi_gcp/notebooks/instance.py +78 -73
- pulumi_gcp/notebooks/instance_iam_binding.py +24 -19
- pulumi_gcp/notebooks/instance_iam_member.py +24 -19
- pulumi_gcp/notebooks/instance_iam_policy.py +21 -16
- pulumi_gcp/notebooks/location.py +5 -0
- pulumi_gcp/notebooks/outputs.py +5 -0
- pulumi_gcp/notebooks/runtime.py +222 -217
- pulumi_gcp/notebooks/runtime_iam_binding.py +24 -19
- pulumi_gcp/notebooks/runtime_iam_member.py +24 -19
- pulumi_gcp/notebooks/runtime_iam_policy.py +21 -16
- pulumi_gcp/organizations/_inputs.py +231 -0
- pulumi_gcp/organizations/access_approval_settings.py +36 -31
- pulumi_gcp/organizations/folder.py +5 -0
- pulumi_gcp/organizations/get_active_folder.py +5 -0
- pulumi_gcp/organizations/get_billing_account.py +5 -0
- pulumi_gcp/organizations/get_client_config.py +5 -0
- pulumi_gcp/organizations/get_client_open_id_user_info.py +5 -0
- pulumi_gcp/organizations/get_folder.py +5 -0
- pulumi_gcp/organizations/get_folders.py +5 -0
- pulumi_gcp/organizations/get_iam_policy.py +13 -8
- pulumi_gcp/organizations/get_organization.py +5 -0
- pulumi_gcp/organizations/get_project.py +5 -0
- pulumi_gcp/organizations/iam_audit_config.py +18 -13
- pulumi_gcp/organizations/iam_binding.py +8 -3
- pulumi_gcp/organizations/iam_custom_role.py +5 -0
- pulumi_gcp/organizations/iam_member.py +130 -125
- pulumi_gcp/organizations/iam_policy.py +125 -120
- pulumi_gcp/organizations/outputs.py +5 -0
- pulumi_gcp/organizations/policy.py +54 -49
- pulumi_gcp/organizations/project.py +5 -0
- pulumi_gcp/orgpolicy/_inputs.py +183 -0
- pulumi_gcp/orgpolicy/custom_constraint.py +15 -10
- pulumi_gcp/orgpolicy/outputs.py +5 -0
- pulumi_gcp/orgpolicy/policy.py +103 -98
- pulumi_gcp/osconfig/_inputs.py +2235 -30
- pulumi_gcp/osconfig/guest_policies.py +171 -166
- pulumi_gcp/osconfig/os_policy_assignment.py +158 -153
- pulumi_gcp/osconfig/outputs.py +5 -0
- pulumi_gcp/osconfig/patch_deployment.py +326 -321
- pulumi_gcp/oslogin/ssh_public_key.py +5 -0
- pulumi_gcp/parallelstore/instance.py +5 -0
- pulumi_gcp/privilegedaccessmanager/_inputs.py +170 -0
- pulumi_gcp/privilegedaccessmanager/entitlement.py +94 -89
- pulumi_gcp/privilegedaccessmanager/outputs.py +5 -0
- pulumi_gcp/projects/_inputs.py +262 -0
- pulumi_gcp/projects/access_approval_settings.py +30 -25
- pulumi_gcp/projects/api_key.py +88 -83
- pulumi_gcp/projects/default_service_accounts.py +5 -0
- pulumi_gcp/projects/get_iam_policy.py +5 -0
- pulumi_gcp/projects/get_organization_policy.py +5 -0
- pulumi_gcp/projects/get_project.py +5 -0
- pulumi_gcp/projects/get_project_service.py +5 -0
- pulumi_gcp/projects/iam_audit_config.py +130 -125
- pulumi_gcp/projects/iam_binding.py +130 -125
- pulumi_gcp/projects/iam_custom_role.py +5 -0
- pulumi_gcp/projects/iam_member.py +130 -125
- pulumi_gcp/projects/iam_member_remove.py +5 -0
- pulumi_gcp/projects/iam_policy.py +125 -120
- pulumi_gcp/projects/organization_policy.py +54 -49
- pulumi_gcp/projects/outputs.py +5 -0
- pulumi_gcp/projects/service.py +5 -0
- pulumi_gcp/projects/service_identity.py +5 -0
- pulumi_gcp/projects/usage_export_bucket.py +5 -0
- pulumi_gcp/provider.py +7 -2
- pulumi_gcp/pubsub/_inputs.py +438 -0
- pulumi_gcp/pubsub/get_schema_iam_policy.py +5 -0
- pulumi_gcp/pubsub/get_subscription.py +5 -0
- pulumi_gcp/pubsub/get_subscription_iam_policy.py +5 -0
- pulumi_gcp/pubsub/get_topic.py +5 -0
- pulumi_gcp/pubsub/get_topic_iam_policy.py +5 -0
- pulumi_gcp/pubsub/lite_reservation.py +5 -0
- pulumi_gcp/pubsub/lite_subscription.py +36 -31
- pulumi_gcp/pubsub/lite_topic.py +46 -41
- pulumi_gcp/pubsub/outputs.py +5 -0
- pulumi_gcp/pubsub/schema.py +13 -8
- pulumi_gcp/pubsub/schema_iam_binding.py +24 -19
- pulumi_gcp/pubsub/schema_iam_member.py +24 -19
- pulumi_gcp/pubsub/schema_iam_policy.py +21 -16
- pulumi_gcp/pubsub/subscription.py +141 -136
- pulumi_gcp/pubsub/subscription_iam_binding.py +24 -19
- pulumi_gcp/pubsub/subscription_iam_member.py +24 -19
- pulumi_gcp/pubsub/subscription_iam_policy.py +21 -16
- pulumi_gcp/pubsub/topic.py +50 -45
- pulumi_gcp/pubsub/topic_iam_binding.py +24 -19
- pulumi_gcp/pubsub/topic_iam_member.py +24 -19
- pulumi_gcp/pubsub/topic_iam_policy.py +21 -16
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/recaptcha/_inputs.py +89 -0
- pulumi_gcp/recaptcha/enterprise_key.py +132 -127
- pulumi_gcp/recaptcha/outputs.py +5 -0
- pulumi_gcp/redis/_inputs.py +321 -0
- pulumi_gcp/redis/cluster.py +59 -54
- pulumi_gcp/redis/get_instance.py +5 -0
- pulumi_gcp/redis/instance.py +51 -46
- pulumi_gcp/redis/outputs.py +5 -0
- pulumi_gcp/resourcemanager/lien.py +5 -0
- pulumi_gcp/runtimeconfig/_inputs.py +25 -0
- pulumi_gcp/runtimeconfig/config.py +5 -0
- pulumi_gcp/runtimeconfig/config_iam_binding.py +8 -3
- pulumi_gcp/runtimeconfig/config_iam_member.py +8 -3
- pulumi_gcp/runtimeconfig/config_iam_policy.py +5 -0
- pulumi_gcp/runtimeconfig/get_config.py +5 -0
- pulumi_gcp/runtimeconfig/get_config_iam_policy.py +5 -0
- pulumi_gcp/runtimeconfig/get_variable.py +5 -0
- pulumi_gcp/runtimeconfig/outputs.py +5 -0
- pulumi_gcp/runtimeconfig/variable.py +5 -0
- pulumi_gcp/secretmanager/_inputs.py +143 -0
- pulumi_gcp/secretmanager/get_secret.py +5 -0
- pulumi_gcp/secretmanager/get_secret_iam_policy.py +5 -0
- pulumi_gcp/secretmanager/get_secret_version.py +5 -0
- pulumi_gcp/secretmanager/get_secret_version_access.py +5 -0
- pulumi_gcp/secretmanager/get_secrets.py +5 -0
- pulumi_gcp/secretmanager/outputs.py +5 -0
- pulumi_gcp/secretmanager/secret.py +68 -63
- pulumi_gcp/secretmanager/secret_iam_binding.py +102 -97
- pulumi_gcp/secretmanager/secret_iam_member.py +102 -97
- pulumi_gcp/secretmanager/secret_iam_policy.py +97 -92
- pulumi_gcp/secretmanager/secret_version.py +53 -48
- pulumi_gcp/securesourcemanager/_inputs.py +75 -0
- pulumi_gcp/securesourcemanager/get_instance_iam_policy.py +5 -0
- pulumi_gcp/securesourcemanager/instance.py +78 -73
- pulumi_gcp/securesourcemanager/instance_iam_binding.py +8 -3
- pulumi_gcp/securesourcemanager/instance_iam_member.py +8 -3
- pulumi_gcp/securesourcemanager/instance_iam_policy.py +5 -0
- pulumi_gcp/securesourcemanager/outputs.py +5 -0
- pulumi_gcp/securitycenter/_inputs.py +860 -7
- pulumi_gcp/securitycenter/event_threat_detection_custom_module.py +5 -0
- pulumi_gcp/securitycenter/folder_custom_module.py +82 -77
- pulumi_gcp/securitycenter/get_source_iam_policy.py +5 -0
- pulumi_gcp/securitycenter/instance_iam_binding.py +102 -33
- pulumi_gcp/securitycenter/instance_iam_member.py +102 -33
- pulumi_gcp/securitycenter/instance_iam_policy.py +99 -30
- pulumi_gcp/securitycenter/management_folder_security_health_analytics_custom_module.py +82 -77
- pulumi_gcp/securitycenter/management_organization_event_threat_detection_custom_module.py +5 -0
- pulumi_gcp/securitycenter/management_organization_security_health_analytics_custom_module.py +82 -77
- pulumi_gcp/securitycenter/management_project_security_health_analytics_custom_module.py +82 -77
- pulumi_gcp/securitycenter/mute_config.py +5 -0
- pulumi_gcp/securitycenter/notification_config.py +16 -11
- pulumi_gcp/securitycenter/organization_custom_module.py +82 -77
- pulumi_gcp/securitycenter/outputs.py +5 -0
- pulumi_gcp/securitycenter/project_custom_module.py +82 -77
- pulumi_gcp/securitycenter/source.py +5 -0
- pulumi_gcp/securitycenter/source_iam_binding.py +8 -3
- pulumi_gcp/securitycenter/source_iam_member.py +8 -3
- pulumi_gcp/securitycenter/source_iam_policy.py +5 -0
- pulumi_gcp/securityposture/_inputs.py +457 -0
- pulumi_gcp/securityposture/outputs.py +5 -0
- pulumi_gcp/securityposture/posture.py +186 -181
- pulumi_gcp/securityposture/posture_deployment.py +35 -30
- pulumi_gcp/serviceaccount/_inputs.py +51 -0
- pulumi_gcp/serviceaccount/account.py +5 -0
- pulumi_gcp/serviceaccount/get_account.py +5 -0
- pulumi_gcp/serviceaccount/get_account_access_token.py +5 -0
- pulumi_gcp/serviceaccount/get_account_id_token.py +5 -0
- pulumi_gcp/serviceaccount/get_account_jwt.py +5 -0
- pulumi_gcp/serviceaccount/get_account_key.py +5 -0
- pulumi_gcp/serviceaccount/get_iam_policy.py +5 -0
- pulumi_gcp/serviceaccount/iam_binding.py +66 -61
- pulumi_gcp/serviceaccount/iam_member.py +66 -61
- pulumi_gcp/serviceaccount/iam_policy.py +61 -56
- pulumi_gcp/serviceaccount/key.py +5 -0
- pulumi_gcp/serviceaccount/outputs.py +5 -0
- pulumi_gcp/servicedirectory/_inputs.py +43 -0
- pulumi_gcp/servicedirectory/endpoint.py +5 -0
- pulumi_gcp/servicedirectory/get_namespace_iam_policy.py +5 -0
- pulumi_gcp/servicedirectory/get_service_iam_policy.py +5 -0
- pulumi_gcp/servicedirectory/namespace.py +5 -0
- pulumi_gcp/servicedirectory/namespace_iam_binding.py +24 -19
- pulumi_gcp/servicedirectory/namespace_iam_member.py +24 -19
- pulumi_gcp/servicedirectory/namespace_iam_policy.py +21 -16
- pulumi_gcp/servicedirectory/outputs.py +5 -0
- pulumi_gcp/servicedirectory/service.py +5 -0
- pulumi_gcp/servicedirectory/service_iam_binding.py +24 -19
- pulumi_gcp/servicedirectory/service_iam_member.py +24 -19
- pulumi_gcp/servicedirectory/service_iam_policy.py +21 -16
- pulumi_gcp/servicenetworking/connection.py +5 -0
- pulumi_gcp/servicenetworking/get_peered_dns_domain.py +5 -0
- pulumi_gcp/servicenetworking/peered_dns_domain.py +5 -0
- pulumi_gcp/servicenetworking/vpc_service_controls.py +5 -0
- pulumi_gcp/serviceusage/consumer_quota_override.py +5 -0
- pulumi_gcp/sourcerepo/_inputs.py +49 -0
- pulumi_gcp/sourcerepo/get_repository.py +5 -0
- pulumi_gcp/sourcerepo/get_repository_iam_policy.py +5 -0
- pulumi_gcp/sourcerepo/outputs.py +5 -0
- pulumi_gcp/sourcerepo/repository.py +20 -15
- pulumi_gcp/sourcerepo/repository_iam_binding.py +116 -102
- pulumi_gcp/sourcerepo/repository_iam_member.py +116 -102
- pulumi_gcp/sourcerepo/repository_iam_policy.py +106 -92
- pulumi_gcp/spanner/_inputs.py +157 -0
- pulumi_gcp/spanner/database.py +10 -5
- pulumi_gcp/spanner/database_iam_binding.py +102 -97
- pulumi_gcp/spanner/database_iam_member.py +102 -97
- pulumi_gcp/spanner/database_iam_policy.py +97 -92
- pulumi_gcp/spanner/get_database_iam_policy.py +5 -0
- pulumi_gcp/spanner/get_instance.py +5 -0
- pulumi_gcp/spanner/get_instance_iam_policy.py +5 -0
- pulumi_gcp/spanner/instance.py +30 -25
- pulumi_gcp/spanner/instance_config.py +10 -5
- pulumi_gcp/spanner/instance_iam_binding.py +24 -19
- pulumi_gcp/spanner/instance_iam_member.py +24 -19
- pulumi_gcp/spanner/instance_iam_policy.py +21 -16
- pulumi_gcp/spanner/outputs.py +5 -0
- pulumi_gcp/sql/_inputs.py +616 -0
- pulumi_gcp/sql/database.py +17 -12
- pulumi_gcp/sql/database_instance.py +93 -88
- pulumi_gcp/sql/get_backup_run.py +5 -0
- pulumi_gcp/sql/get_ca_certs.py +5 -0
- pulumi_gcp/sql/get_database.py +5 -0
- pulumi_gcp/sql/get_database_instance.py +5 -0
- pulumi_gcp/sql/get_database_instance_latest_recovery_time.py +5 -0
- pulumi_gcp/sql/get_database_instances.py +5 -0
- pulumi_gcp/sql/get_databases.py +5 -0
- pulumi_gcp/sql/get_tiers.py +5 -0
- pulumi_gcp/sql/outputs.py +5 -0
- pulumi_gcp/sql/source_representation_instance.py +5 -0
- pulumi_gcp/sql/ssl_cert.py +11 -6
- pulumi_gcp/sql/user.py +43 -38
- pulumi_gcp/storage/__init__.py +5 -0
- pulumi_gcp/storage/_inputs.py +960 -2
- pulumi_gcp/storage/bucket.py +125 -120
- pulumi_gcp/storage/bucket_access_control.py +5 -0
- pulumi_gcp/storage/bucket_acl.py +5 -0
- pulumi_gcp/storage/bucket_iam_binding.py +102 -97
- pulumi_gcp/storage/bucket_iam_member.py +102 -97
- pulumi_gcp/storage/bucket_iam_policy.py +97 -92
- pulumi_gcp/storage/bucket_object.py +15 -10
- pulumi_gcp/storage/default_object_access_control.py +7 -2
- pulumi_gcp/storage/default_object_acl.py +5 -0
- pulumi_gcp/storage/get_bucket.py +5 -0
- pulumi_gcp/storage/get_bucket_iam_policy.py +5 -0
- pulumi_gcp/storage/get_bucket_object.py +5 -0
- pulumi_gcp/storage/get_bucket_object_content.py +5 -0
- pulumi_gcp/storage/get_bucket_objects.py +5 -0
- pulumi_gcp/storage/get_buckets.py +5 -0
- pulumi_gcp/storage/get_managed_folder_iam_policy.py +115 -0
- pulumi_gcp/storage/get_object_signed_url.py +5 -0
- pulumi_gcp/storage/get_project_service_account.py +11 -6
- pulumi_gcp/storage/get_transfer_project_service_account.py +5 -0
- pulumi_gcp/storage/get_transfer_project_servie_account.py +5 -0
- pulumi_gcp/storage/hmac_key.py +5 -0
- pulumi_gcp/storage/insights_report_config.py +76 -71
- pulumi_gcp/storage/managed_folder.py +440 -0
- pulumi_gcp/storage/managed_folder_iam_binding.py +947 -0
- pulumi_gcp/storage/managed_folder_iam_member.py +947 -0
- pulumi_gcp/storage/managed_folder_iam_policy.py +766 -0
- pulumi_gcp/storage/notification.py +5 -0
- pulumi_gcp/storage/object_access_control.py +7 -2
- pulumi_gcp/storage/object_acl.py +5 -0
- pulumi_gcp/storage/outputs.py +81 -0
- pulumi_gcp/storage/transfer_agent_pool.py +16 -11
- pulumi_gcp/storage/transfer_job.py +113 -108
- pulumi_gcp/tags/_inputs.py +43 -0
- pulumi_gcp/tags/get_tag_key.py +5 -0
- pulumi_gcp/tags/get_tag_key_iam_policy.py +5 -0
- pulumi_gcp/tags/get_tag_keys.py +5 -0
- pulumi_gcp/tags/get_tag_value.py +5 -0
- pulumi_gcp/tags/get_tag_value_iam_policy.py +5 -0
- pulumi_gcp/tags/get_tag_values.py +5 -0
- pulumi_gcp/tags/location_tag_binding.py +5 -0
- pulumi_gcp/tags/outputs.py +5 -0
- pulumi_gcp/tags/tag_binding.py +5 -0
- pulumi_gcp/tags/tag_key.py +5 -0
- pulumi_gcp/tags/tag_key_iam_binding.py +24 -19
- pulumi_gcp/tags/tag_key_iam_member.py +24 -19
- pulumi_gcp/tags/tag_key_iam_policy.py +21 -16
- pulumi_gcp/tags/tag_value.py +5 -0
- pulumi_gcp/tags/tag_value_iam_binding.py +24 -19
- pulumi_gcp/tags/tag_value_iam_member.py +24 -19
- pulumi_gcp/tags/tag_value_iam_policy.py +21 -16
- pulumi_gcp/tpu/_inputs.py +194 -0
- pulumi_gcp/tpu/get_tensorflow_versions.py +5 -0
- pulumi_gcp/tpu/get_v2_accelerator_types.py +5 -0
- pulumi_gcp/tpu/get_v2_runtime_versions.py +5 -0
- pulumi_gcp/tpu/node.py +18 -13
- pulumi_gcp/tpu/outputs.py +5 -0
- pulumi_gcp/tpu/v2_vm.py +87 -82
- pulumi_gcp/vertex/_inputs.py +843 -2
- pulumi_gcp/vertex/ai_dataset.py +10 -5
- pulumi_gcp/vertex/ai_deployment_resource_pool.py +36 -31
- pulumi_gcp/vertex/ai_endpoint.py +18 -13
- pulumi_gcp/vertex/ai_endpoint_iam_binding.py +8 -3
- pulumi_gcp/vertex/ai_endpoint_iam_member.py +8 -3
- pulumi_gcp/vertex/ai_endpoint_iam_policy.py +5 -0
- pulumi_gcp/vertex/ai_feature_group.py +22 -17
- pulumi_gcp/vertex/ai_feature_group_feature.py +17 -12
- pulumi_gcp/vertex/ai_feature_online_store.py +80 -75
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +151 -146
- pulumi_gcp/vertex/ai_feature_store.py +57 -52
- pulumi_gcp/vertex/ai_feature_store_entity_type.py +92 -87
- pulumi_gcp/vertex/ai_feature_store_entity_type_feature.py +41 -36
- pulumi_gcp/vertex/ai_feature_store_entity_type_iam_binding.py +8 -3
- pulumi_gcp/vertex/ai_feature_store_entity_type_iam_member.py +8 -3
- pulumi_gcp/vertex/ai_feature_store_entity_type_iam_policy.py +5 -0
- pulumi_gcp/vertex/ai_feature_store_iam_binding.py +8 -3
- pulumi_gcp/vertex/ai_feature_store_iam_member.py +8 -3
- pulumi_gcp/vertex/ai_feature_store_iam_policy.py +5 -0
- pulumi_gcp/vertex/ai_index.py +68 -63
- pulumi_gcp/vertex/ai_index_endpoint.py +18 -13
- pulumi_gcp/vertex/ai_metadata_store.py +12 -7
- pulumi_gcp/vertex/ai_tensorboard.py +16 -11
- pulumi_gcp/vertex/get_ai_endpoint_iam_policy.py +5 -0
- pulumi_gcp/vertex/get_ai_featurestore_entitytype_iam_policy.py +5 -0
- pulumi_gcp/vertex/get_ai_featurestore_iam_policy.py +5 -0
- pulumi_gcp/vertex/get_ai_index.py +5 -0
- pulumi_gcp/vertex/outputs.py +7 -2
- pulumi_gcp/vmwareengine/_inputs.py +290 -0
- pulumi_gcp/vmwareengine/cluster.py +74 -69
- pulumi_gcp/vmwareengine/external_access_rule.py +61 -56
- pulumi_gcp/vmwareengine/external_address.py +27 -22
- pulumi_gcp/vmwareengine/get_cluster.py +5 -0
- pulumi_gcp/vmwareengine/get_external_access_rule.py +5 -0
- pulumi_gcp/vmwareengine/get_external_address.py +5 -0
- pulumi_gcp/vmwareengine/get_network.py +5 -0
- pulumi_gcp/vmwareengine/get_network_peering.py +5 -0
- pulumi_gcp/vmwareengine/get_network_policy.py +5 -0
- pulumi_gcp/vmwareengine/get_nsx_credentials.py +5 -0
- pulumi_gcp/vmwareengine/get_private_cloud.py +5 -0
- pulumi_gcp/vmwareengine/get_subnet.py +5 -0
- pulumi_gcp/vmwareengine/get_vcenter_credentials.py +5 -0
- pulumi_gcp/vmwareengine/network.py +7 -2
- pulumi_gcp/vmwareengine/network_peering.py +5 -0
- pulumi_gcp/vmwareengine/network_policy.py +27 -22
- pulumi_gcp/vmwareengine/outputs.py +5 -0
- pulumi_gcp/vmwareengine/private_cloud.py +67 -62
- pulumi_gcp/vmwareengine/subnet.py +29 -24
- pulumi_gcp/vpcaccess/_inputs.py +22 -0
- pulumi_gcp/vpcaccess/connector.py +16 -11
- pulumi_gcp/vpcaccess/get_connector.py +5 -0
- pulumi_gcp/vpcaccess/outputs.py +5 -0
- pulumi_gcp/workbench/_inputs.py +319 -0
- pulumi_gcp/workbench/get_instance_iam_policy.py +5 -0
- pulumi_gcp/workbench/instance.py +144 -139
- pulumi_gcp/workbench/instance_iam_binding.py +8 -3
- pulumi_gcp/workbench/instance_iam_member.py +8 -3
- pulumi_gcp/workbench/instance_iam_policy.py +5 -0
- pulumi_gcp/workbench/outputs.py +5 -0
- pulumi_gcp/workflows/workflow.py +5 -0
- pulumi_gcp/workstations/_inputs.py +433 -0
- pulumi_gcp/workstations/get_workstation_config_iam_policy.py +5 -0
- pulumi_gcp/workstations/get_workstation_iam_policy.py +5 -0
- pulumi_gcp/workstations/outputs.py +5 -0
- pulumi_gcp/workstations/workstation.py +19 -14
- pulumi_gcp/workstations/workstation_cluster.py +35 -30
- pulumi_gcp/workstations/workstation_config.py +251 -246
- pulumi_gcp/workstations/workstation_config_iam_binding.py +8 -3
- pulumi_gcp/workstations/workstation_config_iam_member.py +8 -3
- pulumi_gcp/workstations/workstation_config_iam_policy.py +5 -0
- pulumi_gcp/workstations/workstation_iam_binding.py +8 -3
- pulumi_gcp/workstations/workstation_iam_member.py +8 -3
- pulumi_gcp/workstations/workstation_iam_policy.py +5 -0
- {pulumi_gcp-7.29.0a1719417555.dist-info → pulumi_gcp-7.30.0.dist-info}/METADATA +2 -1
- pulumi_gcp-7.30.0.dist-info/RECORD +1605 -0
- {pulumi_gcp-7.29.0a1719417555.dist-info → pulumi_gcp-7.30.0.dist-info}/WHEEL +1 -1
- pulumi_gcp-7.29.0a1719417555.dist-info/RECORD +0 -1600
- {pulumi_gcp-7.29.0a1719417555.dist-info → pulumi_gcp-7.30.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/compute/url_map.py
CHANGED
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
from . import outputs
|
12
17
|
from ._inputs import *
|
@@ -16,6 +21,7 @@ __all__ = ['URLMapArgs', 'URLMap']
|
|
16
21
|
@pulumi.input_type
|
17
22
|
class URLMapArgs:
|
18
23
|
def __init__(__self__, *,
|
24
|
+
default_custom_error_response_policy: Optional[pulumi.Input['URLMapDefaultCustomErrorResponsePolicyArgs']] = None,
|
19
25
|
default_route_action: Optional[pulumi.Input['URLMapDefaultRouteActionArgs']] = None,
|
20
26
|
default_service: Optional[pulumi.Input[str]] = None,
|
21
27
|
default_url_redirect: Optional[pulumi.Input['URLMapDefaultUrlRedirectArgs']] = None,
|
@@ -28,6 +34,15 @@ class URLMapArgs:
|
|
28
34
|
tests: Optional[pulumi.Input[Sequence[pulumi.Input['URLMapTestArgs']]]] = None):
|
29
35
|
"""
|
30
36
|
The set of arguments for constructing a URLMap resource.
|
37
|
+
:param pulumi.Input['URLMapDefaultCustomErrorResponsePolicyArgs'] default_custom_error_response_policy: defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error.
|
38
|
+
This policy takes effect at the PathMatcher level and applies only when no policy has been defined for the error code at lower levels like RouteRule and PathRule within this PathMatcher. If an error code does not have a policy defined in defaultCustomErrorResponsePolicy, then a policy defined for the error code in UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
39
|
+
For example, consider a UrlMap with the following configuration:
|
40
|
+
UrlMap.defaultCustomErrorResponsePolicy is configured with policies for 5xx and 4xx errors
|
41
|
+
A RouteRule for /coming_soon/ is configured for the error code 404.
|
42
|
+
If the request is for www.myotherdomain.com and a 404 is encountered, the policy under UrlMap.defaultCustomErrorResponsePolicy takes effect. If a 404 response is encountered for the request www.example.com/current_events/, the pathMatcher's policy takes effect. If however, the request for www.example.com/coming_soon/ encounters a 404, the policy in RouteRule.customErrorResponsePolicy takes effect. If any of the requests in this example encounter a 500 error code, the policy at UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
43
|
+
When used in conjunction with pathMatcher.defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client.
|
44
|
+
defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
|
45
|
+
Structure is documented below.
|
31
46
|
:param pulumi.Input['URLMapDefaultRouteActionArgs'] default_route_action: defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions
|
32
47
|
like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend.
|
33
48
|
If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService
|
@@ -65,6 +80,8 @@ class URLMapArgs:
|
|
65
80
|
tests per UrlMap.
|
66
81
|
Structure is documented below.
|
67
82
|
"""
|
83
|
+
if default_custom_error_response_policy is not None:
|
84
|
+
pulumi.set(__self__, "default_custom_error_response_policy", default_custom_error_response_policy)
|
68
85
|
if default_route_action is not None:
|
69
86
|
pulumi.set(__self__, "default_route_action", default_route_action)
|
70
87
|
if default_service is not None:
|
@@ -86,6 +103,26 @@ class URLMapArgs:
|
|
86
103
|
if tests is not None:
|
87
104
|
pulumi.set(__self__, "tests", tests)
|
88
105
|
|
106
|
+
@property
|
107
|
+
@pulumi.getter(name="defaultCustomErrorResponsePolicy")
|
108
|
+
def default_custom_error_response_policy(self) -> Optional[pulumi.Input['URLMapDefaultCustomErrorResponsePolicyArgs']]:
|
109
|
+
"""
|
110
|
+
defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error.
|
111
|
+
This policy takes effect at the PathMatcher level and applies only when no policy has been defined for the error code at lower levels like RouteRule and PathRule within this PathMatcher. If an error code does not have a policy defined in defaultCustomErrorResponsePolicy, then a policy defined for the error code in UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
112
|
+
For example, consider a UrlMap with the following configuration:
|
113
|
+
UrlMap.defaultCustomErrorResponsePolicy is configured with policies for 5xx and 4xx errors
|
114
|
+
A RouteRule for /coming_soon/ is configured for the error code 404.
|
115
|
+
If the request is for www.myotherdomain.com and a 404 is encountered, the policy under UrlMap.defaultCustomErrorResponsePolicy takes effect. If a 404 response is encountered for the request www.example.com/current_events/, the pathMatcher's policy takes effect. If however, the request for www.example.com/coming_soon/ encounters a 404, the policy in RouteRule.customErrorResponsePolicy takes effect. If any of the requests in this example encounter a 500 error code, the policy at UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
116
|
+
When used in conjunction with pathMatcher.defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client.
|
117
|
+
defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
|
118
|
+
Structure is documented below.
|
119
|
+
"""
|
120
|
+
return pulumi.get(self, "default_custom_error_response_policy")
|
121
|
+
|
122
|
+
@default_custom_error_response_policy.setter
|
123
|
+
def default_custom_error_response_policy(self, value: Optional[pulumi.Input['URLMapDefaultCustomErrorResponsePolicyArgs']]):
|
124
|
+
pulumi.set(self, "default_custom_error_response_policy", value)
|
125
|
+
|
89
126
|
@property
|
90
127
|
@pulumi.getter(name="defaultRouteAction")
|
91
128
|
def default_route_action(self) -> Optional[pulumi.Input['URLMapDefaultRouteActionArgs']]:
|
@@ -237,6 +274,7 @@ class URLMapArgs:
|
|
237
274
|
class _URLMapState:
|
238
275
|
def __init__(__self__, *,
|
239
276
|
creation_timestamp: Optional[pulumi.Input[str]] = None,
|
277
|
+
default_custom_error_response_policy: Optional[pulumi.Input['URLMapDefaultCustomErrorResponsePolicyArgs']] = None,
|
240
278
|
default_route_action: Optional[pulumi.Input['URLMapDefaultRouteActionArgs']] = None,
|
241
279
|
default_service: Optional[pulumi.Input[str]] = None,
|
242
280
|
default_url_redirect: Optional[pulumi.Input['URLMapDefaultUrlRedirectArgs']] = None,
|
@@ -253,6 +291,15 @@ class _URLMapState:
|
|
253
291
|
"""
|
254
292
|
Input properties used for looking up and filtering URLMap resources.
|
255
293
|
:param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
|
294
|
+
:param pulumi.Input['URLMapDefaultCustomErrorResponsePolicyArgs'] default_custom_error_response_policy: defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error.
|
295
|
+
This policy takes effect at the PathMatcher level and applies only when no policy has been defined for the error code at lower levels like RouteRule and PathRule within this PathMatcher. If an error code does not have a policy defined in defaultCustomErrorResponsePolicy, then a policy defined for the error code in UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
296
|
+
For example, consider a UrlMap with the following configuration:
|
297
|
+
UrlMap.defaultCustomErrorResponsePolicy is configured with policies for 5xx and 4xx errors
|
298
|
+
A RouteRule for /coming_soon/ is configured for the error code 404.
|
299
|
+
If the request is for www.myotherdomain.com and a 404 is encountered, the policy under UrlMap.defaultCustomErrorResponsePolicy takes effect. If a 404 response is encountered for the request www.example.com/current_events/, the pathMatcher's policy takes effect. If however, the request for www.example.com/coming_soon/ encounters a 404, the policy in RouteRule.customErrorResponsePolicy takes effect. If any of the requests in this example encounter a 500 error code, the policy at UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
300
|
+
When used in conjunction with pathMatcher.defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client.
|
301
|
+
defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
|
302
|
+
Structure is documented below.
|
256
303
|
:param pulumi.Input['URLMapDefaultRouteActionArgs'] default_route_action: defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions
|
257
304
|
like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend.
|
258
305
|
If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService
|
@@ -296,6 +343,8 @@ class _URLMapState:
|
|
296
343
|
"""
|
297
344
|
if creation_timestamp is not None:
|
298
345
|
pulumi.set(__self__, "creation_timestamp", creation_timestamp)
|
346
|
+
if default_custom_error_response_policy is not None:
|
347
|
+
pulumi.set(__self__, "default_custom_error_response_policy", default_custom_error_response_policy)
|
299
348
|
if default_route_action is not None:
|
300
349
|
pulumi.set(__self__, "default_route_action", default_route_action)
|
301
350
|
if default_service is not None:
|
@@ -335,6 +384,26 @@ class _URLMapState:
|
|
335
384
|
def creation_timestamp(self, value: Optional[pulumi.Input[str]]):
|
336
385
|
pulumi.set(self, "creation_timestamp", value)
|
337
386
|
|
387
|
+
@property
|
388
|
+
@pulumi.getter(name="defaultCustomErrorResponsePolicy")
|
389
|
+
def default_custom_error_response_policy(self) -> Optional[pulumi.Input['URLMapDefaultCustomErrorResponsePolicyArgs']]:
|
390
|
+
"""
|
391
|
+
defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error.
|
392
|
+
This policy takes effect at the PathMatcher level and applies only when no policy has been defined for the error code at lower levels like RouteRule and PathRule within this PathMatcher. If an error code does not have a policy defined in defaultCustomErrorResponsePolicy, then a policy defined for the error code in UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
393
|
+
For example, consider a UrlMap with the following configuration:
|
394
|
+
UrlMap.defaultCustomErrorResponsePolicy is configured with policies for 5xx and 4xx errors
|
395
|
+
A RouteRule for /coming_soon/ is configured for the error code 404.
|
396
|
+
If the request is for www.myotherdomain.com and a 404 is encountered, the policy under UrlMap.defaultCustomErrorResponsePolicy takes effect. If a 404 response is encountered for the request www.example.com/current_events/, the pathMatcher's policy takes effect. If however, the request for www.example.com/coming_soon/ encounters a 404, the policy in RouteRule.customErrorResponsePolicy takes effect. If any of the requests in this example encounter a 500 error code, the policy at UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
397
|
+
When used in conjunction with pathMatcher.defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client.
|
398
|
+
defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
|
399
|
+
Structure is documented below.
|
400
|
+
"""
|
401
|
+
return pulumi.get(self, "default_custom_error_response_policy")
|
402
|
+
|
403
|
+
@default_custom_error_response_policy.setter
|
404
|
+
def default_custom_error_response_policy(self, value: Optional[pulumi.Input['URLMapDefaultCustomErrorResponsePolicyArgs']]):
|
405
|
+
pulumi.set(self, "default_custom_error_response_policy", value)
|
406
|
+
|
338
407
|
@property
|
339
408
|
@pulumi.getter(name="defaultRouteAction")
|
340
409
|
def default_route_action(self) -> Optional[pulumi.Input['URLMapDefaultRouteActionArgs']]:
|
@@ -524,16 +593,17 @@ class URLMap(pulumi.CustomResource):
|
|
524
593
|
def __init__(__self__,
|
525
594
|
resource_name: str,
|
526
595
|
opts: Optional[pulumi.ResourceOptions] = None,
|
527
|
-
|
596
|
+
default_custom_error_response_policy: Optional[pulumi.Input[Union['URLMapDefaultCustomErrorResponsePolicyArgs', 'URLMapDefaultCustomErrorResponsePolicyArgsDict']]] = None,
|
597
|
+
default_route_action: Optional[pulumi.Input[Union['URLMapDefaultRouteActionArgs', 'URLMapDefaultRouteActionArgsDict']]] = None,
|
528
598
|
default_service: Optional[pulumi.Input[str]] = None,
|
529
|
-
default_url_redirect: Optional[pulumi.Input[
|
599
|
+
default_url_redirect: Optional[pulumi.Input[Union['URLMapDefaultUrlRedirectArgs', 'URLMapDefaultUrlRedirectArgsDict']]] = None,
|
530
600
|
description: Optional[pulumi.Input[str]] = None,
|
531
|
-
header_action: Optional[pulumi.Input[
|
532
|
-
host_rules: Optional[pulumi.Input[Sequence[pulumi.Input[
|
601
|
+
header_action: Optional[pulumi.Input[Union['URLMapHeaderActionArgs', 'URLMapHeaderActionArgsDict']]] = None,
|
602
|
+
host_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapHostRuleArgs', 'URLMapHostRuleArgsDict']]]]] = None,
|
533
603
|
name: Optional[pulumi.Input[str]] = None,
|
534
|
-
path_matchers: Optional[pulumi.Input[Sequence[pulumi.Input[
|
604
|
+
path_matchers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapPathMatcherArgs', 'URLMapPathMatcherArgsDict']]]]] = None,
|
535
605
|
project: Optional[pulumi.Input[str]] = None,
|
536
|
-
tests: Optional[pulumi.Input[Sequence[pulumi.Input[
|
606
|
+
tests: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapTestArgs', 'URLMapTestArgsDict']]]]] = None,
|
537
607
|
__props__=None):
|
538
608
|
"""
|
539
609
|
UrlMaps are used to route requests to a backend service based on rules
|
@@ -574,44 +644,44 @@ class URLMap(pulumi.CustomResource):
|
|
574
644
|
description="a description",
|
575
645
|
default_service=static.id,
|
576
646
|
host_rules=[
|
577
|
-
|
578
|
-
hosts
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
hosts
|
583
|
-
|
584
|
-
|
647
|
+
{
|
648
|
+
"hosts": ["mysite.com"],
|
649
|
+
"pathMatcher": "mysite",
|
650
|
+
},
|
651
|
+
{
|
652
|
+
"hosts": ["myothersite.com"],
|
653
|
+
"pathMatcher": "otherpaths",
|
654
|
+
},
|
585
655
|
],
|
586
656
|
path_matchers=[
|
587
|
-
|
588
|
-
name
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
paths
|
593
|
-
service
|
594
|
-
|
595
|
-
|
596
|
-
paths
|
597
|
-
service
|
598
|
-
|
599
|
-
|
600
|
-
paths
|
601
|
-
service
|
602
|
-
|
657
|
+
{
|
658
|
+
"name": "mysite",
|
659
|
+
"defaultService": static.id,
|
660
|
+
"pathRules": [
|
661
|
+
{
|
662
|
+
"paths": ["/home"],
|
663
|
+
"service": static.id,
|
664
|
+
},
|
665
|
+
{
|
666
|
+
"paths": ["/login"],
|
667
|
+
"service": login.id,
|
668
|
+
},
|
669
|
+
{
|
670
|
+
"paths": ["/static"],
|
671
|
+
"service": static.id,
|
672
|
+
},
|
603
673
|
],
|
604
|
-
|
605
|
-
|
606
|
-
name
|
607
|
-
|
608
|
-
|
674
|
+
},
|
675
|
+
{
|
676
|
+
"name": "otherpaths",
|
677
|
+
"defaultService": static.id,
|
678
|
+
},
|
609
679
|
],
|
610
|
-
tests=[
|
611
|
-
service
|
612
|
-
host
|
613
|
-
path
|
614
|
-
|
680
|
+
tests=[{
|
681
|
+
"service": static.id,
|
682
|
+
"host": "example.com",
|
683
|
+
"path": "/home",
|
684
|
+
}])
|
615
685
|
```
|
616
686
|
### Url Map Traffic Director Route
|
617
687
|
|
@@ -621,9 +691,9 @@ class URLMap(pulumi.CustomResource):
|
|
621
691
|
|
622
692
|
default = gcp.compute.HealthCheck("default",
|
623
693
|
name="health-check",
|
624
|
-
http_health_check=
|
625
|
-
port
|
626
|
-
)
|
694
|
+
http_health_check={
|
695
|
+
"port": 80,
|
696
|
+
})
|
627
697
|
home = gcp.compute.BackendService("home",
|
628
698
|
name="home",
|
629
699
|
port_name="http",
|
@@ -635,63 +705,63 @@ class URLMap(pulumi.CustomResource):
|
|
635
705
|
name="urlmap",
|
636
706
|
description="a description",
|
637
707
|
default_service=home.id,
|
638
|
-
host_rules=[
|
639
|
-
hosts
|
640
|
-
|
641
|
-
|
642
|
-
path_matchers=[
|
643
|
-
name
|
644
|
-
|
645
|
-
|
646
|
-
priority
|
647
|
-
|
648
|
-
|
649
|
-
|
650
|
-
|
651
|
-
|
652
|
-
replace
|
653
|
-
|
654
|
-
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
replace
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
name
|
673
|
-
value
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
name
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
tests=[
|
691
|
-
service
|
692
|
-
host
|
693
|
-
path
|
694
|
-
|
708
|
+
host_rules=[{
|
709
|
+
"hosts": ["mysite.com"],
|
710
|
+
"pathMatcher": "allpaths",
|
711
|
+
}],
|
712
|
+
path_matchers=[{
|
713
|
+
"name": "allpaths",
|
714
|
+
"defaultService": home.id,
|
715
|
+
"routeRules": [{
|
716
|
+
"priority": 1,
|
717
|
+
"headerAction": {
|
718
|
+
"requestHeadersToRemoves": ["RemoveMe2"],
|
719
|
+
"requestHeadersToAdds": [{
|
720
|
+
"headerName": "AddSomethingElse",
|
721
|
+
"headerValue": "MyOtherValue",
|
722
|
+
"replace": True,
|
723
|
+
}],
|
724
|
+
"responseHeadersToRemoves": ["RemoveMe3"],
|
725
|
+
"responseHeadersToAdds": [{
|
726
|
+
"headerName": "AddMe",
|
727
|
+
"headerValue": "MyValue",
|
728
|
+
"replace": False,
|
729
|
+
}],
|
730
|
+
},
|
731
|
+
"matchRules": [{
|
732
|
+
"fullPathMatch": "a full path",
|
733
|
+
"headerMatches": [{
|
734
|
+
"headerName": "someheader",
|
735
|
+
"exactMatch": "match this exactly",
|
736
|
+
"invertMatch": True,
|
737
|
+
}],
|
738
|
+
"ignoreCase": True,
|
739
|
+
"metadataFilters": [{
|
740
|
+
"filterMatchCriteria": "MATCH_ANY",
|
741
|
+
"filterLabels": [{
|
742
|
+
"name": "PLANET",
|
743
|
+
"value": "MARS",
|
744
|
+
}],
|
745
|
+
}],
|
746
|
+
"queryParameterMatches": [{
|
747
|
+
"name": "a query parameter",
|
748
|
+
"presentMatch": True,
|
749
|
+
}],
|
750
|
+
}],
|
751
|
+
"urlRedirect": {
|
752
|
+
"hostRedirect": "A host",
|
753
|
+
"httpsRedirect": False,
|
754
|
+
"pathRedirect": "some/path",
|
755
|
+
"redirectResponseCode": "TEMPORARY_REDIRECT",
|
756
|
+
"stripQuery": True,
|
757
|
+
},
|
758
|
+
}],
|
759
|
+
}],
|
760
|
+
tests=[{
|
761
|
+
"service": home.id,
|
762
|
+
"host": "hi.com",
|
763
|
+
"path": "/home",
|
764
|
+
}])
|
695
765
|
```
|
696
766
|
### Url Map Traffic Director Route Partial
|
697
767
|
|
@@ -701,9 +771,9 @@ class URLMap(pulumi.CustomResource):
|
|
701
771
|
|
702
772
|
default = gcp.compute.HealthCheck("default",
|
703
773
|
name="health-check",
|
704
|
-
http_health_check=
|
705
|
-
port
|
706
|
-
)
|
774
|
+
http_health_check={
|
775
|
+
"port": 80,
|
776
|
+
})
|
707
777
|
home = gcp.compute.BackendService("home",
|
708
778
|
name="home",
|
709
779
|
port_name="http",
|
@@ -715,34 +785,34 @@ class URLMap(pulumi.CustomResource):
|
|
715
785
|
name="urlmap",
|
716
786
|
description="a description",
|
717
787
|
default_service=home.id,
|
718
|
-
host_rules=[
|
719
|
-
hosts
|
720
|
-
|
721
|
-
|
722
|
-
path_matchers=[
|
723
|
-
name
|
724
|
-
|
725
|
-
|
726
|
-
priority
|
727
|
-
|
728
|
-
|
729
|
-
|
730
|
-
|
731
|
-
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
tests=[
|
742
|
-
service
|
743
|
-
host
|
744
|
-
path
|
745
|
-
|
788
|
+
host_rules=[{
|
789
|
+
"hosts": ["mysite.com"],
|
790
|
+
"pathMatcher": "allpaths",
|
791
|
+
}],
|
792
|
+
path_matchers=[{
|
793
|
+
"name": "allpaths",
|
794
|
+
"defaultService": home.id,
|
795
|
+
"routeRules": [{
|
796
|
+
"priority": 1,
|
797
|
+
"matchRules": [{
|
798
|
+
"prefixMatch": "/someprefix",
|
799
|
+
"headerMatches": [{
|
800
|
+
"headerName": "someheader",
|
801
|
+
"exactMatch": "match this exactly",
|
802
|
+
"invertMatch": True,
|
803
|
+
}],
|
804
|
+
}],
|
805
|
+
"urlRedirect": {
|
806
|
+
"pathRedirect": "some/path",
|
807
|
+
"redirectResponseCode": "TEMPORARY_REDIRECT",
|
808
|
+
},
|
809
|
+
}],
|
810
|
+
}],
|
811
|
+
tests=[{
|
812
|
+
"service": home.id,
|
813
|
+
"host": "hi.com",
|
814
|
+
"path": "/home",
|
815
|
+
}])
|
746
816
|
```
|
747
817
|
### Url Map Traffic Director Path
|
748
818
|
|
@@ -752,9 +822,9 @@ class URLMap(pulumi.CustomResource):
|
|
752
822
|
|
753
823
|
default = gcp.compute.HealthCheck("default",
|
754
824
|
name="health-check",
|
755
|
-
http_health_check=
|
756
|
-
port
|
757
|
-
)
|
825
|
+
http_health_check={
|
826
|
+
"port": 80,
|
827
|
+
})
|
758
828
|
home = gcp.compute.BackendService("home",
|
759
829
|
name="home",
|
760
830
|
port_name="http",
|
@@ -766,86 +836,86 @@ class URLMap(pulumi.CustomResource):
|
|
766
836
|
name="urlmap",
|
767
837
|
description="a description",
|
768
838
|
default_service=home.id,
|
769
|
-
host_rules=[
|
770
|
-
hosts
|
771
|
-
|
772
|
-
|
773
|
-
path_matchers=[
|
774
|
-
name
|
775
|
-
|
776
|
-
|
777
|
-
paths
|
778
|
-
|
779
|
-
|
780
|
-
|
781
|
-
|
782
|
-
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
|
787
|
-
disabled
|
788
|
-
|
789
|
-
|
790
|
-
abort
|
791
|
-
|
792
|
-
percentage
|
793
|
-
|
794
|
-
delay
|
795
|
-
|
796
|
-
seconds
|
797
|
-
nanos
|
798
|
-
|
799
|
-
percentage
|
800
|
-
|
801
|
-
|
802
|
-
|
803
|
-
|
804
|
-
|
805
|
-
|
806
|
-
|
807
|
-
|
808
|
-
seconds
|
809
|
-
|
810
|
-
|
839
|
+
host_rules=[{
|
840
|
+
"hosts": ["mysite.com"],
|
841
|
+
"pathMatcher": "allpaths",
|
842
|
+
}],
|
843
|
+
path_matchers=[{
|
844
|
+
"name": "allpaths",
|
845
|
+
"defaultService": home.id,
|
846
|
+
"pathRules": [{
|
847
|
+
"paths": ["/home"],
|
848
|
+
"routeAction": {
|
849
|
+
"corsPolicy": {
|
850
|
+
"allowCredentials": True,
|
851
|
+
"allowHeaders": ["Allowed content"],
|
852
|
+
"allowMethods": ["GET"],
|
853
|
+
"allowOriginRegexes": ["abc.*"],
|
854
|
+
"allowOrigins": ["Allowed origin"],
|
855
|
+
"exposeHeaders": ["Exposed header"],
|
856
|
+
"maxAge": 30,
|
857
|
+
"disabled": False,
|
858
|
+
},
|
859
|
+
"faultInjectionPolicy": {
|
860
|
+
"abort": {
|
861
|
+
"httpStatus": 234,
|
862
|
+
"percentage": 5.6,
|
863
|
+
},
|
864
|
+
"delay": {
|
865
|
+
"fixedDelay": {
|
866
|
+
"seconds": "0",
|
867
|
+
"nanos": 50000,
|
868
|
+
},
|
869
|
+
"percentage": 7.8,
|
870
|
+
},
|
871
|
+
},
|
872
|
+
"requestMirrorPolicy": {
|
873
|
+
"backendService": home.id,
|
874
|
+
},
|
875
|
+
"retryPolicy": {
|
876
|
+
"numRetries": 4,
|
877
|
+
"perTryTimeout": {
|
878
|
+
"seconds": "30",
|
879
|
+
},
|
880
|
+
"retryConditions": [
|
811
881
|
"5xx",
|
812
882
|
"deadline-exceeded",
|
813
883
|
],
|
814
|
-
|
815
|
-
timeout
|
816
|
-
seconds
|
817
|
-
nanos
|
818
|
-
|
819
|
-
|
820
|
-
|
821
|
-
|
822
|
-
|
823
|
-
|
824
|
-
|
825
|
-
weight
|
826
|
-
|
827
|
-
|
828
|
-
|
829
|
-
|
830
|
-
|
831
|
-
replace
|
832
|
-
|
833
|
-
|
834
|
-
|
835
|
-
|
836
|
-
|
837
|
-
replace
|
838
|
-
|
839
|
-
|
840
|
-
|
841
|
-
|
842
|
-
|
843
|
-
|
844
|
-
tests=[
|
845
|
-
service
|
846
|
-
host
|
847
|
-
path
|
848
|
-
|
884
|
+
},
|
885
|
+
"timeout": {
|
886
|
+
"seconds": "20",
|
887
|
+
"nanos": 750000000,
|
888
|
+
},
|
889
|
+
"urlRewrite": {
|
890
|
+
"hostRewrite": "dev.example.com",
|
891
|
+
"pathPrefixRewrite": "/v1/api/",
|
892
|
+
},
|
893
|
+
"weightedBackendServices": [{
|
894
|
+
"backendService": home.id,
|
895
|
+
"weight": 400,
|
896
|
+
"headerAction": {
|
897
|
+
"requestHeadersToRemoves": ["RemoveMe"],
|
898
|
+
"requestHeadersToAdds": [{
|
899
|
+
"headerName": "AddMe",
|
900
|
+
"headerValue": "MyValue",
|
901
|
+
"replace": True,
|
902
|
+
}],
|
903
|
+
"responseHeadersToRemoves": ["RemoveMe"],
|
904
|
+
"responseHeadersToAdds": [{
|
905
|
+
"headerName": "AddMe",
|
906
|
+
"headerValue": "MyValue",
|
907
|
+
"replace": False,
|
908
|
+
}],
|
909
|
+
},
|
910
|
+
}],
|
911
|
+
},
|
912
|
+
}],
|
913
|
+
}],
|
914
|
+
tests=[{
|
915
|
+
"service": home.id,
|
916
|
+
"host": "hi.com",
|
917
|
+
"path": "/home",
|
918
|
+
}])
|
849
919
|
```
|
850
920
|
### Url Map Traffic Director Path Partial
|
851
921
|
|
@@ -855,9 +925,9 @@ class URLMap(pulumi.CustomResource):
|
|
855
925
|
|
856
926
|
default = gcp.compute.HealthCheck("default",
|
857
927
|
name="health-check",
|
858
|
-
http_health_check=
|
859
|
-
port
|
860
|
-
)
|
928
|
+
http_health_check={
|
929
|
+
"port": 80,
|
930
|
+
})
|
861
931
|
home = gcp.compute.BackendService("home",
|
862
932
|
name="home",
|
863
933
|
port_name="http",
|
@@ -869,52 +939,52 @@ class URLMap(pulumi.CustomResource):
|
|
869
939
|
name="urlmap",
|
870
940
|
description="a description",
|
871
941
|
default_service=home.id,
|
872
|
-
host_rules=[
|
873
|
-
hosts
|
874
|
-
|
875
|
-
|
876
|
-
path_matchers=[
|
877
|
-
name
|
878
|
-
|
879
|
-
|
880
|
-
paths
|
881
|
-
|
882
|
-
|
883
|
-
|
884
|
-
|
885
|
-
|
886
|
-
|
887
|
-
|
888
|
-
|
889
|
-
|
890
|
-
disabled
|
891
|
-
|
892
|
-
|
893
|
-
|
894
|
-
weight
|
895
|
-
|
896
|
-
|
897
|
-
|
898
|
-
|
899
|
-
|
900
|
-
replace
|
901
|
-
|
902
|
-
|
903
|
-
|
904
|
-
|
905
|
-
|
906
|
-
replace
|
907
|
-
|
908
|
-
|
909
|
-
|
910
|
-
|
911
|
-
|
912
|
-
|
913
|
-
tests=[
|
914
|
-
service
|
915
|
-
host
|
916
|
-
path
|
917
|
-
|
942
|
+
host_rules=[{
|
943
|
+
"hosts": ["mysite.com"],
|
944
|
+
"pathMatcher": "allpaths",
|
945
|
+
}],
|
946
|
+
path_matchers=[{
|
947
|
+
"name": "allpaths",
|
948
|
+
"defaultService": home.id,
|
949
|
+
"pathRules": [{
|
950
|
+
"paths": ["/home"],
|
951
|
+
"routeAction": {
|
952
|
+
"corsPolicy": {
|
953
|
+
"allowCredentials": True,
|
954
|
+
"allowHeaders": ["Allowed content"],
|
955
|
+
"allowMethods": ["GET"],
|
956
|
+
"allowOriginRegexes": ["abc.*"],
|
957
|
+
"allowOrigins": ["Allowed origin"],
|
958
|
+
"exposeHeaders": ["Exposed header"],
|
959
|
+
"maxAge": 30,
|
960
|
+
"disabled": False,
|
961
|
+
},
|
962
|
+
"weightedBackendServices": [{
|
963
|
+
"backendService": home.id,
|
964
|
+
"weight": 400,
|
965
|
+
"headerAction": {
|
966
|
+
"requestHeadersToRemoves": ["RemoveMe"],
|
967
|
+
"requestHeadersToAdds": [{
|
968
|
+
"headerName": "AddMe",
|
969
|
+
"headerValue": "MyValue",
|
970
|
+
"replace": True,
|
971
|
+
}],
|
972
|
+
"responseHeadersToRemoves": ["RemoveMe"],
|
973
|
+
"responseHeadersToAdds": [{
|
974
|
+
"headerName": "AddMe",
|
975
|
+
"headerValue": "MyValue",
|
976
|
+
"replace": False,
|
977
|
+
}],
|
978
|
+
},
|
979
|
+
}],
|
980
|
+
},
|
981
|
+
}],
|
982
|
+
}],
|
983
|
+
tests=[{
|
984
|
+
"service": home.id,
|
985
|
+
"host": "hi.com",
|
986
|
+
"path": "/home",
|
987
|
+
}])
|
918
988
|
```
|
919
989
|
### Url Map Header Based Routing
|
920
990
|
|
@@ -949,40 +1019,40 @@ class URLMap(pulumi.CustomResource):
|
|
949
1019
|
name="urlmap",
|
950
1020
|
description="header-based routing example",
|
951
1021
|
default_service=default.id,
|
952
|
-
host_rules=[
|
953
|
-
hosts
|
954
|
-
|
955
|
-
|
956
|
-
path_matchers=[
|
957
|
-
name
|
958
|
-
|
959
|
-
|
960
|
-
|
961
|
-
priority
|
962
|
-
service
|
963
|
-
|
964
|
-
|
965
|
-
|
966
|
-
|
967
|
-
|
968
|
-
|
969
|
-
|
970
|
-
|
971
|
-
|
972
|
-
|
973
|
-
priority
|
974
|
-
service
|
975
|
-
|
976
|
-
|
977
|
-
|
978
|
-
|
979
|
-
|
980
|
-
|
981
|
-
|
982
|
-
|
983
|
-
|
1022
|
+
host_rules=[{
|
1023
|
+
"hosts": ["*"],
|
1024
|
+
"pathMatcher": "allpaths",
|
1025
|
+
}],
|
1026
|
+
path_matchers=[{
|
1027
|
+
"name": "allpaths",
|
1028
|
+
"defaultService": default.id,
|
1029
|
+
"routeRules": [
|
1030
|
+
{
|
1031
|
+
"priority": 1,
|
1032
|
+
"service": service_a.id,
|
1033
|
+
"matchRules": [{
|
1034
|
+
"prefixMatch": "/",
|
1035
|
+
"ignoreCase": True,
|
1036
|
+
"headerMatches": [{
|
1037
|
+
"headerName": "abtest",
|
1038
|
+
"exactMatch": "a",
|
1039
|
+
}],
|
1040
|
+
}],
|
1041
|
+
},
|
1042
|
+
{
|
1043
|
+
"priority": 2,
|
1044
|
+
"service": service_b.id,
|
1045
|
+
"matchRules": [{
|
1046
|
+
"ignoreCase": True,
|
1047
|
+
"prefixMatch": "/",
|
1048
|
+
"headerMatches": [{
|
1049
|
+
"headerName": "abtest",
|
1050
|
+
"exactMatch": "b",
|
1051
|
+
}],
|
1052
|
+
}],
|
1053
|
+
},
|
984
1054
|
],
|
985
|
-
|
1055
|
+
}])
|
986
1056
|
```
|
987
1057
|
### Url Map Parameter Based Routing
|
988
1058
|
|
@@ -1017,40 +1087,40 @@ class URLMap(pulumi.CustomResource):
|
|
1017
1087
|
name="urlmap",
|
1018
1088
|
description="parameter-based routing example",
|
1019
1089
|
default_service=default.id,
|
1020
|
-
host_rules=[
|
1021
|
-
hosts
|
1022
|
-
|
1023
|
-
|
1024
|
-
path_matchers=[
|
1025
|
-
name
|
1026
|
-
|
1027
|
-
|
1028
|
-
|
1029
|
-
priority
|
1030
|
-
service
|
1031
|
-
|
1032
|
-
|
1033
|
-
|
1034
|
-
|
1035
|
-
name
|
1036
|
-
|
1037
|
-
|
1038
|
-
|
1039
|
-
|
1040
|
-
|
1041
|
-
priority
|
1042
|
-
service
|
1043
|
-
|
1044
|
-
|
1045
|
-
|
1046
|
-
|
1047
|
-
name
|
1048
|
-
|
1049
|
-
|
1050
|
-
|
1051
|
-
|
1090
|
+
host_rules=[{
|
1091
|
+
"hosts": ["*"],
|
1092
|
+
"pathMatcher": "allpaths",
|
1093
|
+
}],
|
1094
|
+
path_matchers=[{
|
1095
|
+
"name": "allpaths",
|
1096
|
+
"defaultService": default.id,
|
1097
|
+
"routeRules": [
|
1098
|
+
{
|
1099
|
+
"priority": 1,
|
1100
|
+
"service": service_a.id,
|
1101
|
+
"matchRules": [{
|
1102
|
+
"prefixMatch": "/",
|
1103
|
+
"ignoreCase": True,
|
1104
|
+
"queryParameterMatches": [{
|
1105
|
+
"name": "abtest",
|
1106
|
+
"exactMatch": "a",
|
1107
|
+
}],
|
1108
|
+
}],
|
1109
|
+
},
|
1110
|
+
{
|
1111
|
+
"priority": 2,
|
1112
|
+
"service": service_b.id,
|
1113
|
+
"matchRules": [{
|
1114
|
+
"ignoreCase": True,
|
1115
|
+
"prefixMatch": "/",
|
1116
|
+
"queryParameterMatches": [{
|
1117
|
+
"name": "abtest",
|
1118
|
+
"exactMatch": "b",
|
1119
|
+
}],
|
1120
|
+
}],
|
1121
|
+
},
|
1052
1122
|
],
|
1053
|
-
|
1123
|
+
}])
|
1054
1124
|
```
|
1055
1125
|
### Url Map Path Template Match
|
1056
1126
|
|
@@ -1088,35 +1158,111 @@ class URLMap(pulumi.CustomResource):
|
|
1088
1158
|
name="urlmap",
|
1089
1159
|
description="a description",
|
1090
1160
|
default_service=static.id,
|
1091
|
-
host_rules=[
|
1092
|
-
hosts
|
1093
|
-
|
1094
|
-
|
1095
|
-
path_matchers=[
|
1096
|
-
name
|
1097
|
-
|
1098
|
-
|
1099
|
-
|
1100
|
-
|
1101
|
-
|
1102
|
-
|
1103
|
-
service
|
1104
|
-
priority
|
1105
|
-
|
1106
|
-
|
1107
|
-
|
1108
|
-
|
1109
|
-
|
1110
|
-
|
1111
|
-
|
1112
|
-
|
1113
|
-
|
1114
|
-
|
1115
|
-
service
|
1116
|
-
priority
|
1117
|
-
|
1161
|
+
host_rules=[{
|
1162
|
+
"hosts": ["mysite.com"],
|
1163
|
+
"pathMatcher": "mysite",
|
1164
|
+
}],
|
1165
|
+
path_matchers=[{
|
1166
|
+
"name": "mysite",
|
1167
|
+
"defaultService": static.id,
|
1168
|
+
"routeRules": [
|
1169
|
+
{
|
1170
|
+
"matchRules": [{
|
1171
|
+
"pathTemplateMatch": "/xyzwebservices/v2/xyz/users/{username=*}/carts/{cartid=**}",
|
1172
|
+
}],
|
1173
|
+
"service": cart_backend.id,
|
1174
|
+
"priority": 1,
|
1175
|
+
"routeAction": {
|
1176
|
+
"urlRewrite": {
|
1177
|
+
"pathTemplateRewrite": "/{username}-{cartid}/",
|
1178
|
+
},
|
1179
|
+
},
|
1180
|
+
},
|
1181
|
+
{
|
1182
|
+
"matchRules": [{
|
1183
|
+
"pathTemplateMatch": "/xyzwebservices/v2/xyz/users/*/accountinfo/*",
|
1184
|
+
}],
|
1185
|
+
"service": user_backend.id,
|
1186
|
+
"priority": 2,
|
1187
|
+
},
|
1118
1188
|
],
|
1119
|
-
|
1189
|
+
}])
|
1190
|
+
```
|
1191
|
+
### Url Map Custom Error Response Policy
|
1192
|
+
|
1193
|
+
```python
|
1194
|
+
import pulumi
|
1195
|
+
import pulumi_gcp as gcp
|
1196
|
+
|
1197
|
+
default = gcp.compute.HttpHealthCheck("default",
|
1198
|
+
name="health-check",
|
1199
|
+
request_path="/",
|
1200
|
+
check_interval_sec=1,
|
1201
|
+
timeout_sec=1)
|
1202
|
+
example = gcp.compute.BackendService("example",
|
1203
|
+
name="login",
|
1204
|
+
port_name="http",
|
1205
|
+
protocol="HTTP",
|
1206
|
+
timeout_sec=10,
|
1207
|
+
load_balancing_scheme="EXTERNAL_MANAGED",
|
1208
|
+
health_checks=default.id)
|
1209
|
+
error_bucket = gcp.storage.Bucket("error",
|
1210
|
+
name="static-asset-bucket",
|
1211
|
+
location="US")
|
1212
|
+
error = gcp.compute.BackendBucket("error",
|
1213
|
+
name="error-backend-bucket",
|
1214
|
+
bucket_name=error_bucket.name,
|
1215
|
+
enable_cdn=True)
|
1216
|
+
urlmap = gcp.compute.URLMap("urlmap",
|
1217
|
+
name="urlmap",
|
1218
|
+
description="a description",
|
1219
|
+
default_service=example.id,
|
1220
|
+
default_custom_error_response_policy={
|
1221
|
+
"errorResponseRules": [{
|
1222
|
+
"matchResponseCodes": ["5xx"],
|
1223
|
+
"path": "/*",
|
1224
|
+
"overrideResponseCode": 502,
|
1225
|
+
}],
|
1226
|
+
"errorService": error.id,
|
1227
|
+
},
|
1228
|
+
host_rules=[{
|
1229
|
+
"hosts": ["mysite.com"],
|
1230
|
+
"pathMatcher": "mysite",
|
1231
|
+
}],
|
1232
|
+
path_matchers=[{
|
1233
|
+
"name": "mysite",
|
1234
|
+
"defaultService": example.id,
|
1235
|
+
"defaultCustomErrorResponsePolicy": {
|
1236
|
+
"errorResponseRules": [
|
1237
|
+
{
|
1238
|
+
"matchResponseCodes": [
|
1239
|
+
"4xx",
|
1240
|
+
"5xx",
|
1241
|
+
],
|
1242
|
+
"path": "/login",
|
1243
|
+
"overrideResponseCode": 404,
|
1244
|
+
},
|
1245
|
+
{
|
1246
|
+
"matchResponseCodes": ["503"],
|
1247
|
+
"path": "/example",
|
1248
|
+
"overrideResponseCode": 502,
|
1249
|
+
},
|
1250
|
+
],
|
1251
|
+
"errorService": error.id,
|
1252
|
+
},
|
1253
|
+
"pathRules": [{
|
1254
|
+
"paths": ["/*"],
|
1255
|
+
"service": example.id,
|
1256
|
+
"customErrorResponsePolicy": {
|
1257
|
+
"errorResponseRules": [{
|
1258
|
+
"matchResponseCodes": ["4xx"],
|
1259
|
+
"path": "/register",
|
1260
|
+
"overrideResponseCode": 401,
|
1261
|
+
}],
|
1262
|
+
"errorService": error.id,
|
1263
|
+
},
|
1264
|
+
}],
|
1265
|
+
}])
|
1120
1266
|
```
|
1121
1267
|
|
1122
1268
|
## Import
|
@@ -1145,24 +1291,33 @@ class URLMap(pulumi.CustomResource):
|
|
1145
1291
|
|
1146
1292
|
:param str resource_name: The name of the resource.
|
1147
1293
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
1148
|
-
:param pulumi.Input[
|
1294
|
+
:param pulumi.Input[Union['URLMapDefaultCustomErrorResponsePolicyArgs', 'URLMapDefaultCustomErrorResponsePolicyArgsDict']] default_custom_error_response_policy: defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error.
|
1295
|
+
This policy takes effect at the PathMatcher level and applies only when no policy has been defined for the error code at lower levels like RouteRule and PathRule within this PathMatcher. If an error code does not have a policy defined in defaultCustomErrorResponsePolicy, then a policy defined for the error code in UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
1296
|
+
For example, consider a UrlMap with the following configuration:
|
1297
|
+
UrlMap.defaultCustomErrorResponsePolicy is configured with policies for 5xx and 4xx errors
|
1298
|
+
A RouteRule for /coming_soon/ is configured for the error code 404.
|
1299
|
+
If the request is for www.myotherdomain.com and a 404 is encountered, the policy under UrlMap.defaultCustomErrorResponsePolicy takes effect. If a 404 response is encountered for the request www.example.com/current_events/, the pathMatcher's policy takes effect. If however, the request for www.example.com/coming_soon/ encounters a 404, the policy in RouteRule.customErrorResponsePolicy takes effect. If any of the requests in this example encounter a 500 error code, the policy at UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
1300
|
+
When used in conjunction with pathMatcher.defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client.
|
1301
|
+
defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
|
1302
|
+
Structure is documented below.
|
1303
|
+
:param pulumi.Input[Union['URLMapDefaultRouteActionArgs', 'URLMapDefaultRouteActionArgsDict']] default_route_action: defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions
|
1149
1304
|
like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend.
|
1150
1305
|
If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService
|
1151
1306
|
is set, defaultRouteAction cannot contain any weightedBackendServices.
|
1152
1307
|
Only one of defaultRouteAction or defaultUrlRedirect must be set.
|
1153
1308
|
Structure is documented below.
|
1154
1309
|
:param pulumi.Input[str] default_service: The backend service or backend bucket to use when none of the given rules match.
|
1155
|
-
:param pulumi.Input[
|
1310
|
+
:param pulumi.Input[Union['URLMapDefaultUrlRedirectArgs', 'URLMapDefaultUrlRedirectArgsDict']] default_url_redirect: When none of the specified hostRules match, the request is redirected to a URL specified
|
1156
1311
|
by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or
|
1157
1312
|
defaultRouteAction must not be set.
|
1158
1313
|
Structure is documented below.
|
1159
1314
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when you create
|
1160
1315
|
the resource.
|
1161
|
-
:param pulumi.Input[
|
1316
|
+
:param pulumi.Input[Union['URLMapHeaderActionArgs', 'URLMapHeaderActionArgsDict']] header_action: Specifies changes to request and response headers that need to take effect for
|
1162
1317
|
the selected backendService. The headerAction specified here take effect after
|
1163
1318
|
headerAction specified under pathMatcher.
|
1164
1319
|
Structure is documented below.
|
1165
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
1320
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['URLMapHostRuleArgs', 'URLMapHostRuleArgsDict']]]] host_rules: The list of HostRules to use against the URL.
|
1166
1321
|
Structure is documented below.
|
1167
1322
|
:param pulumi.Input[str] name: Name of the resource. Provided by the client when the resource is created. The
|
1168
1323
|
name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
@@ -1173,11 +1328,11 @@ class URLMap(pulumi.CustomResource):
|
|
1173
1328
|
|
1174
1329
|
|
1175
1330
|
- - -
|
1176
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
1331
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['URLMapPathMatcherArgs', 'URLMapPathMatcherArgsDict']]]] path_matchers: The list of named PathMatchers to use against the URL.
|
1177
1332
|
Structure is documented below.
|
1178
1333
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
1179
1334
|
If it is not provided, the provider project is used.
|
1180
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
1335
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['URLMapTestArgs', 'URLMapTestArgsDict']]]] tests: The list of expected URL mapping tests. Request to update this UrlMap will
|
1181
1336
|
succeed only if all of the test cases pass. You can specify a maximum of 100
|
1182
1337
|
tests per UrlMap.
|
1183
1338
|
Structure is documented below.
|
@@ -1227,44 +1382,44 @@ class URLMap(pulumi.CustomResource):
|
|
1227
1382
|
description="a description",
|
1228
1383
|
default_service=static.id,
|
1229
1384
|
host_rules=[
|
1230
|
-
|
1231
|
-
hosts
|
1232
|
-
|
1233
|
-
|
1234
|
-
|
1235
|
-
hosts
|
1236
|
-
|
1237
|
-
|
1385
|
+
{
|
1386
|
+
"hosts": ["mysite.com"],
|
1387
|
+
"pathMatcher": "mysite",
|
1388
|
+
},
|
1389
|
+
{
|
1390
|
+
"hosts": ["myothersite.com"],
|
1391
|
+
"pathMatcher": "otherpaths",
|
1392
|
+
},
|
1238
1393
|
],
|
1239
1394
|
path_matchers=[
|
1240
|
-
|
1241
|
-
name
|
1242
|
-
|
1243
|
-
|
1244
|
-
|
1245
|
-
paths
|
1246
|
-
service
|
1247
|
-
|
1248
|
-
|
1249
|
-
paths
|
1250
|
-
service
|
1251
|
-
|
1252
|
-
|
1253
|
-
paths
|
1254
|
-
service
|
1255
|
-
|
1395
|
+
{
|
1396
|
+
"name": "mysite",
|
1397
|
+
"defaultService": static.id,
|
1398
|
+
"pathRules": [
|
1399
|
+
{
|
1400
|
+
"paths": ["/home"],
|
1401
|
+
"service": static.id,
|
1402
|
+
},
|
1403
|
+
{
|
1404
|
+
"paths": ["/login"],
|
1405
|
+
"service": login.id,
|
1406
|
+
},
|
1407
|
+
{
|
1408
|
+
"paths": ["/static"],
|
1409
|
+
"service": static.id,
|
1410
|
+
},
|
1256
1411
|
],
|
1257
|
-
|
1258
|
-
|
1259
|
-
name
|
1260
|
-
|
1261
|
-
|
1412
|
+
},
|
1413
|
+
{
|
1414
|
+
"name": "otherpaths",
|
1415
|
+
"defaultService": static.id,
|
1416
|
+
},
|
1262
1417
|
],
|
1263
|
-
tests=[
|
1264
|
-
service
|
1265
|
-
host
|
1266
|
-
path
|
1267
|
-
|
1418
|
+
tests=[{
|
1419
|
+
"service": static.id,
|
1420
|
+
"host": "example.com",
|
1421
|
+
"path": "/home",
|
1422
|
+
}])
|
1268
1423
|
```
|
1269
1424
|
### Url Map Traffic Director Route
|
1270
1425
|
|
@@ -1274,9 +1429,9 @@ class URLMap(pulumi.CustomResource):
|
|
1274
1429
|
|
1275
1430
|
default = gcp.compute.HealthCheck("default",
|
1276
1431
|
name="health-check",
|
1277
|
-
http_health_check=
|
1278
|
-
port
|
1279
|
-
)
|
1432
|
+
http_health_check={
|
1433
|
+
"port": 80,
|
1434
|
+
})
|
1280
1435
|
home = gcp.compute.BackendService("home",
|
1281
1436
|
name="home",
|
1282
1437
|
port_name="http",
|
@@ -1288,63 +1443,63 @@ class URLMap(pulumi.CustomResource):
|
|
1288
1443
|
name="urlmap",
|
1289
1444
|
description="a description",
|
1290
1445
|
default_service=home.id,
|
1291
|
-
host_rules=[
|
1292
|
-
hosts
|
1293
|
-
|
1294
|
-
|
1295
|
-
path_matchers=[
|
1296
|
-
name
|
1297
|
-
|
1298
|
-
|
1299
|
-
priority
|
1300
|
-
|
1301
|
-
|
1302
|
-
|
1303
|
-
|
1304
|
-
|
1305
|
-
replace
|
1306
|
-
|
1307
|
-
|
1308
|
-
|
1309
|
-
|
1310
|
-
|
1311
|
-
replace
|
1312
|
-
|
1313
|
-
|
1314
|
-
|
1315
|
-
|
1316
|
-
|
1317
|
-
|
1318
|
-
|
1319
|
-
|
1320
|
-
|
1321
|
-
|
1322
|
-
|
1323
|
-
|
1324
|
-
|
1325
|
-
name
|
1326
|
-
value
|
1327
|
-
|
1328
|
-
|
1329
|
-
|
1330
|
-
name
|
1331
|
-
|
1332
|
-
|
1333
|
-
|
1334
|
-
|
1335
|
-
|
1336
|
-
|
1337
|
-
|
1338
|
-
|
1339
|
-
|
1340
|
-
|
1341
|
-
|
1342
|
-
|
1343
|
-
tests=[
|
1344
|
-
service
|
1345
|
-
host
|
1346
|
-
path
|
1347
|
-
|
1446
|
+
host_rules=[{
|
1447
|
+
"hosts": ["mysite.com"],
|
1448
|
+
"pathMatcher": "allpaths",
|
1449
|
+
}],
|
1450
|
+
path_matchers=[{
|
1451
|
+
"name": "allpaths",
|
1452
|
+
"defaultService": home.id,
|
1453
|
+
"routeRules": [{
|
1454
|
+
"priority": 1,
|
1455
|
+
"headerAction": {
|
1456
|
+
"requestHeadersToRemoves": ["RemoveMe2"],
|
1457
|
+
"requestHeadersToAdds": [{
|
1458
|
+
"headerName": "AddSomethingElse",
|
1459
|
+
"headerValue": "MyOtherValue",
|
1460
|
+
"replace": True,
|
1461
|
+
}],
|
1462
|
+
"responseHeadersToRemoves": ["RemoveMe3"],
|
1463
|
+
"responseHeadersToAdds": [{
|
1464
|
+
"headerName": "AddMe",
|
1465
|
+
"headerValue": "MyValue",
|
1466
|
+
"replace": False,
|
1467
|
+
}],
|
1468
|
+
},
|
1469
|
+
"matchRules": [{
|
1470
|
+
"fullPathMatch": "a full path",
|
1471
|
+
"headerMatches": [{
|
1472
|
+
"headerName": "someheader",
|
1473
|
+
"exactMatch": "match this exactly",
|
1474
|
+
"invertMatch": True,
|
1475
|
+
}],
|
1476
|
+
"ignoreCase": True,
|
1477
|
+
"metadataFilters": [{
|
1478
|
+
"filterMatchCriteria": "MATCH_ANY",
|
1479
|
+
"filterLabels": [{
|
1480
|
+
"name": "PLANET",
|
1481
|
+
"value": "MARS",
|
1482
|
+
}],
|
1483
|
+
}],
|
1484
|
+
"queryParameterMatches": [{
|
1485
|
+
"name": "a query parameter",
|
1486
|
+
"presentMatch": True,
|
1487
|
+
}],
|
1488
|
+
}],
|
1489
|
+
"urlRedirect": {
|
1490
|
+
"hostRedirect": "A host",
|
1491
|
+
"httpsRedirect": False,
|
1492
|
+
"pathRedirect": "some/path",
|
1493
|
+
"redirectResponseCode": "TEMPORARY_REDIRECT",
|
1494
|
+
"stripQuery": True,
|
1495
|
+
},
|
1496
|
+
}],
|
1497
|
+
}],
|
1498
|
+
tests=[{
|
1499
|
+
"service": home.id,
|
1500
|
+
"host": "hi.com",
|
1501
|
+
"path": "/home",
|
1502
|
+
}])
|
1348
1503
|
```
|
1349
1504
|
### Url Map Traffic Director Route Partial
|
1350
1505
|
|
@@ -1354,9 +1509,9 @@ class URLMap(pulumi.CustomResource):
|
|
1354
1509
|
|
1355
1510
|
default = gcp.compute.HealthCheck("default",
|
1356
1511
|
name="health-check",
|
1357
|
-
http_health_check=
|
1358
|
-
port
|
1359
|
-
)
|
1512
|
+
http_health_check={
|
1513
|
+
"port": 80,
|
1514
|
+
})
|
1360
1515
|
home = gcp.compute.BackendService("home",
|
1361
1516
|
name="home",
|
1362
1517
|
port_name="http",
|
@@ -1368,34 +1523,34 @@ class URLMap(pulumi.CustomResource):
|
|
1368
1523
|
name="urlmap",
|
1369
1524
|
description="a description",
|
1370
1525
|
default_service=home.id,
|
1371
|
-
host_rules=[
|
1372
|
-
hosts
|
1373
|
-
|
1374
|
-
|
1375
|
-
path_matchers=[
|
1376
|
-
name
|
1377
|
-
|
1378
|
-
|
1379
|
-
priority
|
1380
|
-
|
1381
|
-
|
1382
|
-
|
1383
|
-
|
1384
|
-
|
1385
|
-
|
1386
|
-
|
1387
|
-
|
1388
|
-
|
1389
|
-
|
1390
|
-
|
1391
|
-
|
1392
|
-
|
1393
|
-
|
1394
|
-
tests=[
|
1395
|
-
service
|
1396
|
-
host
|
1397
|
-
path
|
1398
|
-
|
1526
|
+
host_rules=[{
|
1527
|
+
"hosts": ["mysite.com"],
|
1528
|
+
"pathMatcher": "allpaths",
|
1529
|
+
}],
|
1530
|
+
path_matchers=[{
|
1531
|
+
"name": "allpaths",
|
1532
|
+
"defaultService": home.id,
|
1533
|
+
"routeRules": [{
|
1534
|
+
"priority": 1,
|
1535
|
+
"matchRules": [{
|
1536
|
+
"prefixMatch": "/someprefix",
|
1537
|
+
"headerMatches": [{
|
1538
|
+
"headerName": "someheader",
|
1539
|
+
"exactMatch": "match this exactly",
|
1540
|
+
"invertMatch": True,
|
1541
|
+
}],
|
1542
|
+
}],
|
1543
|
+
"urlRedirect": {
|
1544
|
+
"pathRedirect": "some/path",
|
1545
|
+
"redirectResponseCode": "TEMPORARY_REDIRECT",
|
1546
|
+
},
|
1547
|
+
}],
|
1548
|
+
}],
|
1549
|
+
tests=[{
|
1550
|
+
"service": home.id,
|
1551
|
+
"host": "hi.com",
|
1552
|
+
"path": "/home",
|
1553
|
+
}])
|
1399
1554
|
```
|
1400
1555
|
### Url Map Traffic Director Path
|
1401
1556
|
|
@@ -1405,9 +1560,9 @@ class URLMap(pulumi.CustomResource):
|
|
1405
1560
|
|
1406
1561
|
default = gcp.compute.HealthCheck("default",
|
1407
1562
|
name="health-check",
|
1408
|
-
http_health_check=
|
1409
|
-
port
|
1410
|
-
)
|
1563
|
+
http_health_check={
|
1564
|
+
"port": 80,
|
1565
|
+
})
|
1411
1566
|
home = gcp.compute.BackendService("home",
|
1412
1567
|
name="home",
|
1413
1568
|
port_name="http",
|
@@ -1419,86 +1574,86 @@ class URLMap(pulumi.CustomResource):
|
|
1419
1574
|
name="urlmap",
|
1420
1575
|
description="a description",
|
1421
1576
|
default_service=home.id,
|
1422
|
-
host_rules=[
|
1423
|
-
hosts
|
1424
|
-
|
1425
|
-
|
1426
|
-
path_matchers=[
|
1427
|
-
name
|
1428
|
-
|
1429
|
-
|
1430
|
-
paths
|
1431
|
-
|
1432
|
-
|
1433
|
-
|
1434
|
-
|
1435
|
-
|
1436
|
-
|
1437
|
-
|
1438
|
-
|
1439
|
-
|
1440
|
-
disabled
|
1441
|
-
|
1442
|
-
|
1443
|
-
abort
|
1444
|
-
|
1445
|
-
percentage
|
1446
|
-
|
1447
|
-
delay
|
1448
|
-
|
1449
|
-
seconds
|
1450
|
-
nanos
|
1451
|
-
|
1452
|
-
percentage
|
1453
|
-
|
1454
|
-
|
1455
|
-
|
1456
|
-
|
1457
|
-
|
1458
|
-
|
1459
|
-
|
1460
|
-
|
1461
|
-
seconds
|
1462
|
-
|
1463
|
-
|
1577
|
+
host_rules=[{
|
1578
|
+
"hosts": ["mysite.com"],
|
1579
|
+
"pathMatcher": "allpaths",
|
1580
|
+
}],
|
1581
|
+
path_matchers=[{
|
1582
|
+
"name": "allpaths",
|
1583
|
+
"defaultService": home.id,
|
1584
|
+
"pathRules": [{
|
1585
|
+
"paths": ["/home"],
|
1586
|
+
"routeAction": {
|
1587
|
+
"corsPolicy": {
|
1588
|
+
"allowCredentials": True,
|
1589
|
+
"allowHeaders": ["Allowed content"],
|
1590
|
+
"allowMethods": ["GET"],
|
1591
|
+
"allowOriginRegexes": ["abc.*"],
|
1592
|
+
"allowOrigins": ["Allowed origin"],
|
1593
|
+
"exposeHeaders": ["Exposed header"],
|
1594
|
+
"maxAge": 30,
|
1595
|
+
"disabled": False,
|
1596
|
+
},
|
1597
|
+
"faultInjectionPolicy": {
|
1598
|
+
"abort": {
|
1599
|
+
"httpStatus": 234,
|
1600
|
+
"percentage": 5.6,
|
1601
|
+
},
|
1602
|
+
"delay": {
|
1603
|
+
"fixedDelay": {
|
1604
|
+
"seconds": "0",
|
1605
|
+
"nanos": 50000,
|
1606
|
+
},
|
1607
|
+
"percentage": 7.8,
|
1608
|
+
},
|
1609
|
+
},
|
1610
|
+
"requestMirrorPolicy": {
|
1611
|
+
"backendService": home.id,
|
1612
|
+
},
|
1613
|
+
"retryPolicy": {
|
1614
|
+
"numRetries": 4,
|
1615
|
+
"perTryTimeout": {
|
1616
|
+
"seconds": "30",
|
1617
|
+
},
|
1618
|
+
"retryConditions": [
|
1464
1619
|
"5xx",
|
1465
1620
|
"deadline-exceeded",
|
1466
1621
|
],
|
1467
|
-
|
1468
|
-
timeout
|
1469
|
-
seconds
|
1470
|
-
nanos
|
1471
|
-
|
1472
|
-
|
1473
|
-
|
1474
|
-
|
1475
|
-
|
1476
|
-
|
1477
|
-
|
1478
|
-
weight
|
1479
|
-
|
1480
|
-
|
1481
|
-
|
1482
|
-
|
1483
|
-
|
1484
|
-
replace
|
1485
|
-
|
1486
|
-
|
1487
|
-
|
1488
|
-
|
1489
|
-
|
1490
|
-
replace
|
1491
|
-
|
1492
|
-
|
1493
|
-
|
1494
|
-
|
1495
|
-
|
1496
|
-
|
1497
|
-
tests=[
|
1498
|
-
service
|
1499
|
-
host
|
1500
|
-
path
|
1501
|
-
|
1622
|
+
},
|
1623
|
+
"timeout": {
|
1624
|
+
"seconds": "20",
|
1625
|
+
"nanos": 750000000,
|
1626
|
+
},
|
1627
|
+
"urlRewrite": {
|
1628
|
+
"hostRewrite": "dev.example.com",
|
1629
|
+
"pathPrefixRewrite": "/v1/api/",
|
1630
|
+
},
|
1631
|
+
"weightedBackendServices": [{
|
1632
|
+
"backendService": home.id,
|
1633
|
+
"weight": 400,
|
1634
|
+
"headerAction": {
|
1635
|
+
"requestHeadersToRemoves": ["RemoveMe"],
|
1636
|
+
"requestHeadersToAdds": [{
|
1637
|
+
"headerName": "AddMe",
|
1638
|
+
"headerValue": "MyValue",
|
1639
|
+
"replace": True,
|
1640
|
+
}],
|
1641
|
+
"responseHeadersToRemoves": ["RemoveMe"],
|
1642
|
+
"responseHeadersToAdds": [{
|
1643
|
+
"headerName": "AddMe",
|
1644
|
+
"headerValue": "MyValue",
|
1645
|
+
"replace": False,
|
1646
|
+
}],
|
1647
|
+
},
|
1648
|
+
}],
|
1649
|
+
},
|
1650
|
+
}],
|
1651
|
+
}],
|
1652
|
+
tests=[{
|
1653
|
+
"service": home.id,
|
1654
|
+
"host": "hi.com",
|
1655
|
+
"path": "/home",
|
1656
|
+
}])
|
1502
1657
|
```
|
1503
1658
|
### Url Map Traffic Director Path Partial
|
1504
1659
|
|
@@ -1508,9 +1663,9 @@ class URLMap(pulumi.CustomResource):
|
|
1508
1663
|
|
1509
1664
|
default = gcp.compute.HealthCheck("default",
|
1510
1665
|
name="health-check",
|
1511
|
-
http_health_check=
|
1512
|
-
port
|
1513
|
-
)
|
1666
|
+
http_health_check={
|
1667
|
+
"port": 80,
|
1668
|
+
})
|
1514
1669
|
home = gcp.compute.BackendService("home",
|
1515
1670
|
name="home",
|
1516
1671
|
port_name="http",
|
@@ -1522,52 +1677,52 @@ class URLMap(pulumi.CustomResource):
|
|
1522
1677
|
name="urlmap",
|
1523
1678
|
description="a description",
|
1524
1679
|
default_service=home.id,
|
1525
|
-
host_rules=[
|
1526
|
-
hosts
|
1527
|
-
|
1528
|
-
|
1529
|
-
path_matchers=[
|
1530
|
-
name
|
1531
|
-
|
1532
|
-
|
1533
|
-
paths
|
1534
|
-
|
1535
|
-
|
1536
|
-
|
1537
|
-
|
1538
|
-
|
1539
|
-
|
1540
|
-
|
1541
|
-
|
1542
|
-
|
1543
|
-
disabled
|
1544
|
-
|
1545
|
-
|
1546
|
-
|
1547
|
-
weight
|
1548
|
-
|
1549
|
-
|
1550
|
-
|
1551
|
-
|
1552
|
-
|
1553
|
-
replace
|
1554
|
-
|
1555
|
-
|
1556
|
-
|
1557
|
-
|
1558
|
-
|
1559
|
-
replace
|
1560
|
-
|
1561
|
-
|
1562
|
-
|
1563
|
-
|
1564
|
-
|
1565
|
-
|
1566
|
-
tests=[
|
1567
|
-
service
|
1568
|
-
host
|
1569
|
-
path
|
1570
|
-
|
1680
|
+
host_rules=[{
|
1681
|
+
"hosts": ["mysite.com"],
|
1682
|
+
"pathMatcher": "allpaths",
|
1683
|
+
}],
|
1684
|
+
path_matchers=[{
|
1685
|
+
"name": "allpaths",
|
1686
|
+
"defaultService": home.id,
|
1687
|
+
"pathRules": [{
|
1688
|
+
"paths": ["/home"],
|
1689
|
+
"routeAction": {
|
1690
|
+
"corsPolicy": {
|
1691
|
+
"allowCredentials": True,
|
1692
|
+
"allowHeaders": ["Allowed content"],
|
1693
|
+
"allowMethods": ["GET"],
|
1694
|
+
"allowOriginRegexes": ["abc.*"],
|
1695
|
+
"allowOrigins": ["Allowed origin"],
|
1696
|
+
"exposeHeaders": ["Exposed header"],
|
1697
|
+
"maxAge": 30,
|
1698
|
+
"disabled": False,
|
1699
|
+
},
|
1700
|
+
"weightedBackendServices": [{
|
1701
|
+
"backendService": home.id,
|
1702
|
+
"weight": 400,
|
1703
|
+
"headerAction": {
|
1704
|
+
"requestHeadersToRemoves": ["RemoveMe"],
|
1705
|
+
"requestHeadersToAdds": [{
|
1706
|
+
"headerName": "AddMe",
|
1707
|
+
"headerValue": "MyValue",
|
1708
|
+
"replace": True,
|
1709
|
+
}],
|
1710
|
+
"responseHeadersToRemoves": ["RemoveMe"],
|
1711
|
+
"responseHeadersToAdds": [{
|
1712
|
+
"headerName": "AddMe",
|
1713
|
+
"headerValue": "MyValue",
|
1714
|
+
"replace": False,
|
1715
|
+
}],
|
1716
|
+
},
|
1717
|
+
}],
|
1718
|
+
},
|
1719
|
+
}],
|
1720
|
+
}],
|
1721
|
+
tests=[{
|
1722
|
+
"service": home.id,
|
1723
|
+
"host": "hi.com",
|
1724
|
+
"path": "/home",
|
1725
|
+
}])
|
1571
1726
|
```
|
1572
1727
|
### Url Map Header Based Routing
|
1573
1728
|
|
@@ -1602,40 +1757,40 @@ class URLMap(pulumi.CustomResource):
|
|
1602
1757
|
name="urlmap",
|
1603
1758
|
description="header-based routing example",
|
1604
1759
|
default_service=default.id,
|
1605
|
-
host_rules=[
|
1606
|
-
hosts
|
1607
|
-
|
1608
|
-
|
1609
|
-
path_matchers=[
|
1610
|
-
name
|
1611
|
-
|
1612
|
-
|
1613
|
-
|
1614
|
-
priority
|
1615
|
-
service
|
1616
|
-
|
1617
|
-
|
1618
|
-
|
1619
|
-
|
1620
|
-
|
1621
|
-
|
1622
|
-
|
1623
|
-
|
1624
|
-
|
1625
|
-
|
1626
|
-
priority
|
1627
|
-
service
|
1628
|
-
|
1629
|
-
|
1630
|
-
|
1631
|
-
|
1632
|
-
|
1633
|
-
|
1634
|
-
|
1635
|
-
|
1636
|
-
|
1760
|
+
host_rules=[{
|
1761
|
+
"hosts": ["*"],
|
1762
|
+
"pathMatcher": "allpaths",
|
1763
|
+
}],
|
1764
|
+
path_matchers=[{
|
1765
|
+
"name": "allpaths",
|
1766
|
+
"defaultService": default.id,
|
1767
|
+
"routeRules": [
|
1768
|
+
{
|
1769
|
+
"priority": 1,
|
1770
|
+
"service": service_a.id,
|
1771
|
+
"matchRules": [{
|
1772
|
+
"prefixMatch": "/",
|
1773
|
+
"ignoreCase": True,
|
1774
|
+
"headerMatches": [{
|
1775
|
+
"headerName": "abtest",
|
1776
|
+
"exactMatch": "a",
|
1777
|
+
}],
|
1778
|
+
}],
|
1779
|
+
},
|
1780
|
+
{
|
1781
|
+
"priority": 2,
|
1782
|
+
"service": service_b.id,
|
1783
|
+
"matchRules": [{
|
1784
|
+
"ignoreCase": True,
|
1785
|
+
"prefixMatch": "/",
|
1786
|
+
"headerMatches": [{
|
1787
|
+
"headerName": "abtest",
|
1788
|
+
"exactMatch": "b",
|
1789
|
+
}],
|
1790
|
+
}],
|
1791
|
+
},
|
1637
1792
|
],
|
1638
|
-
|
1793
|
+
}])
|
1639
1794
|
```
|
1640
1795
|
### Url Map Parameter Based Routing
|
1641
1796
|
|
@@ -1670,40 +1825,40 @@ class URLMap(pulumi.CustomResource):
|
|
1670
1825
|
name="urlmap",
|
1671
1826
|
description="parameter-based routing example",
|
1672
1827
|
default_service=default.id,
|
1673
|
-
host_rules=[
|
1674
|
-
hosts
|
1675
|
-
|
1676
|
-
|
1677
|
-
path_matchers=[
|
1678
|
-
name
|
1679
|
-
|
1680
|
-
|
1681
|
-
|
1682
|
-
priority
|
1683
|
-
service
|
1684
|
-
|
1685
|
-
|
1686
|
-
|
1687
|
-
|
1688
|
-
name
|
1689
|
-
|
1690
|
-
|
1691
|
-
|
1692
|
-
|
1693
|
-
|
1694
|
-
priority
|
1695
|
-
service
|
1696
|
-
|
1697
|
-
|
1698
|
-
|
1699
|
-
|
1700
|
-
name
|
1701
|
-
|
1702
|
-
|
1703
|
-
|
1704
|
-
|
1828
|
+
host_rules=[{
|
1829
|
+
"hosts": ["*"],
|
1830
|
+
"pathMatcher": "allpaths",
|
1831
|
+
}],
|
1832
|
+
path_matchers=[{
|
1833
|
+
"name": "allpaths",
|
1834
|
+
"defaultService": default.id,
|
1835
|
+
"routeRules": [
|
1836
|
+
{
|
1837
|
+
"priority": 1,
|
1838
|
+
"service": service_a.id,
|
1839
|
+
"matchRules": [{
|
1840
|
+
"prefixMatch": "/",
|
1841
|
+
"ignoreCase": True,
|
1842
|
+
"queryParameterMatches": [{
|
1843
|
+
"name": "abtest",
|
1844
|
+
"exactMatch": "a",
|
1845
|
+
}],
|
1846
|
+
}],
|
1847
|
+
},
|
1848
|
+
{
|
1849
|
+
"priority": 2,
|
1850
|
+
"service": service_b.id,
|
1851
|
+
"matchRules": [{
|
1852
|
+
"ignoreCase": True,
|
1853
|
+
"prefixMatch": "/",
|
1854
|
+
"queryParameterMatches": [{
|
1855
|
+
"name": "abtest",
|
1856
|
+
"exactMatch": "b",
|
1857
|
+
}],
|
1858
|
+
}],
|
1859
|
+
},
|
1705
1860
|
],
|
1706
|
-
|
1861
|
+
}])
|
1707
1862
|
```
|
1708
1863
|
### Url Map Path Template Match
|
1709
1864
|
|
@@ -1741,35 +1896,111 @@ class URLMap(pulumi.CustomResource):
|
|
1741
1896
|
name="urlmap",
|
1742
1897
|
description="a description",
|
1743
1898
|
default_service=static.id,
|
1744
|
-
host_rules=[
|
1745
|
-
hosts
|
1746
|
-
|
1747
|
-
|
1748
|
-
path_matchers=[
|
1749
|
-
name
|
1750
|
-
|
1751
|
-
|
1752
|
-
|
1753
|
-
|
1754
|
-
|
1755
|
-
|
1756
|
-
service
|
1757
|
-
priority
|
1758
|
-
|
1759
|
-
|
1760
|
-
|
1761
|
-
|
1762
|
-
|
1763
|
-
|
1764
|
-
|
1765
|
-
|
1766
|
-
|
1767
|
-
|
1768
|
-
service
|
1769
|
-
priority
|
1770
|
-
|
1899
|
+
host_rules=[{
|
1900
|
+
"hosts": ["mysite.com"],
|
1901
|
+
"pathMatcher": "mysite",
|
1902
|
+
}],
|
1903
|
+
path_matchers=[{
|
1904
|
+
"name": "mysite",
|
1905
|
+
"defaultService": static.id,
|
1906
|
+
"routeRules": [
|
1907
|
+
{
|
1908
|
+
"matchRules": [{
|
1909
|
+
"pathTemplateMatch": "/xyzwebservices/v2/xyz/users/{username=*}/carts/{cartid=**}",
|
1910
|
+
}],
|
1911
|
+
"service": cart_backend.id,
|
1912
|
+
"priority": 1,
|
1913
|
+
"routeAction": {
|
1914
|
+
"urlRewrite": {
|
1915
|
+
"pathTemplateRewrite": "/{username}-{cartid}/",
|
1916
|
+
},
|
1917
|
+
},
|
1918
|
+
},
|
1919
|
+
{
|
1920
|
+
"matchRules": [{
|
1921
|
+
"pathTemplateMatch": "/xyzwebservices/v2/xyz/users/*/accountinfo/*",
|
1922
|
+
}],
|
1923
|
+
"service": user_backend.id,
|
1924
|
+
"priority": 2,
|
1925
|
+
},
|
1771
1926
|
],
|
1772
|
-
|
1927
|
+
}])
|
1928
|
+
```
|
1929
|
+
### Url Map Custom Error Response Policy
|
1930
|
+
|
1931
|
+
```python
|
1932
|
+
import pulumi
|
1933
|
+
import pulumi_gcp as gcp
|
1934
|
+
|
1935
|
+
default = gcp.compute.HttpHealthCheck("default",
|
1936
|
+
name="health-check",
|
1937
|
+
request_path="/",
|
1938
|
+
check_interval_sec=1,
|
1939
|
+
timeout_sec=1)
|
1940
|
+
example = gcp.compute.BackendService("example",
|
1941
|
+
name="login",
|
1942
|
+
port_name="http",
|
1943
|
+
protocol="HTTP",
|
1944
|
+
timeout_sec=10,
|
1945
|
+
load_balancing_scheme="EXTERNAL_MANAGED",
|
1946
|
+
health_checks=default.id)
|
1947
|
+
error_bucket = gcp.storage.Bucket("error",
|
1948
|
+
name="static-asset-bucket",
|
1949
|
+
location="US")
|
1950
|
+
error = gcp.compute.BackendBucket("error",
|
1951
|
+
name="error-backend-bucket",
|
1952
|
+
bucket_name=error_bucket.name,
|
1953
|
+
enable_cdn=True)
|
1954
|
+
urlmap = gcp.compute.URLMap("urlmap",
|
1955
|
+
name="urlmap",
|
1956
|
+
description="a description",
|
1957
|
+
default_service=example.id,
|
1958
|
+
default_custom_error_response_policy={
|
1959
|
+
"errorResponseRules": [{
|
1960
|
+
"matchResponseCodes": ["5xx"],
|
1961
|
+
"path": "/*",
|
1962
|
+
"overrideResponseCode": 502,
|
1963
|
+
}],
|
1964
|
+
"errorService": error.id,
|
1965
|
+
},
|
1966
|
+
host_rules=[{
|
1967
|
+
"hosts": ["mysite.com"],
|
1968
|
+
"pathMatcher": "mysite",
|
1969
|
+
}],
|
1970
|
+
path_matchers=[{
|
1971
|
+
"name": "mysite",
|
1972
|
+
"defaultService": example.id,
|
1973
|
+
"defaultCustomErrorResponsePolicy": {
|
1974
|
+
"errorResponseRules": [
|
1975
|
+
{
|
1976
|
+
"matchResponseCodes": [
|
1977
|
+
"4xx",
|
1978
|
+
"5xx",
|
1979
|
+
],
|
1980
|
+
"path": "/login",
|
1981
|
+
"overrideResponseCode": 404,
|
1982
|
+
},
|
1983
|
+
{
|
1984
|
+
"matchResponseCodes": ["503"],
|
1985
|
+
"path": "/example",
|
1986
|
+
"overrideResponseCode": 502,
|
1987
|
+
},
|
1988
|
+
],
|
1989
|
+
"errorService": error.id,
|
1990
|
+
},
|
1991
|
+
"pathRules": [{
|
1992
|
+
"paths": ["/*"],
|
1993
|
+
"service": example.id,
|
1994
|
+
"customErrorResponsePolicy": {
|
1995
|
+
"errorResponseRules": [{
|
1996
|
+
"matchResponseCodes": ["4xx"],
|
1997
|
+
"path": "/register",
|
1998
|
+
"overrideResponseCode": 401,
|
1999
|
+
}],
|
2000
|
+
"errorService": error.id,
|
2001
|
+
},
|
2002
|
+
}],
|
2003
|
+
}])
|
1773
2004
|
```
|
1774
2005
|
|
1775
2006
|
## Import
|
@@ -1811,16 +2042,17 @@ class URLMap(pulumi.CustomResource):
|
|
1811
2042
|
def _internal_init(__self__,
|
1812
2043
|
resource_name: str,
|
1813
2044
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1814
|
-
|
2045
|
+
default_custom_error_response_policy: Optional[pulumi.Input[Union['URLMapDefaultCustomErrorResponsePolicyArgs', 'URLMapDefaultCustomErrorResponsePolicyArgsDict']]] = None,
|
2046
|
+
default_route_action: Optional[pulumi.Input[Union['URLMapDefaultRouteActionArgs', 'URLMapDefaultRouteActionArgsDict']]] = None,
|
1815
2047
|
default_service: Optional[pulumi.Input[str]] = None,
|
1816
|
-
default_url_redirect: Optional[pulumi.Input[
|
2048
|
+
default_url_redirect: Optional[pulumi.Input[Union['URLMapDefaultUrlRedirectArgs', 'URLMapDefaultUrlRedirectArgsDict']]] = None,
|
1817
2049
|
description: Optional[pulumi.Input[str]] = None,
|
1818
|
-
header_action: Optional[pulumi.Input[
|
1819
|
-
host_rules: Optional[pulumi.Input[Sequence[pulumi.Input[
|
2050
|
+
header_action: Optional[pulumi.Input[Union['URLMapHeaderActionArgs', 'URLMapHeaderActionArgsDict']]] = None,
|
2051
|
+
host_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapHostRuleArgs', 'URLMapHostRuleArgsDict']]]]] = None,
|
1820
2052
|
name: Optional[pulumi.Input[str]] = None,
|
1821
|
-
path_matchers: Optional[pulumi.Input[Sequence[pulumi.Input[
|
2053
|
+
path_matchers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapPathMatcherArgs', 'URLMapPathMatcherArgsDict']]]]] = None,
|
1822
2054
|
project: Optional[pulumi.Input[str]] = None,
|
1823
|
-
tests: Optional[pulumi.Input[Sequence[pulumi.Input[
|
2055
|
+
tests: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapTestArgs', 'URLMapTestArgsDict']]]]] = None,
|
1824
2056
|
__props__=None):
|
1825
2057
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
1826
2058
|
if not isinstance(opts, pulumi.ResourceOptions):
|
@@ -1830,6 +2062,7 @@ class URLMap(pulumi.CustomResource):
|
|
1830
2062
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
1831
2063
|
__props__ = URLMapArgs.__new__(URLMapArgs)
|
1832
2064
|
|
2065
|
+
__props__.__dict__["default_custom_error_response_policy"] = default_custom_error_response_policy
|
1833
2066
|
__props__.__dict__["default_route_action"] = default_route_action
|
1834
2067
|
__props__.__dict__["default_service"] = default_service
|
1835
2068
|
__props__.__dict__["default_url_redirect"] = default_url_redirect
|
@@ -1855,19 +2088,20 @@ class URLMap(pulumi.CustomResource):
|
|
1855
2088
|
id: pulumi.Input[str],
|
1856
2089
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1857
2090
|
creation_timestamp: Optional[pulumi.Input[str]] = None,
|
1858
|
-
|
2091
|
+
default_custom_error_response_policy: Optional[pulumi.Input[Union['URLMapDefaultCustomErrorResponsePolicyArgs', 'URLMapDefaultCustomErrorResponsePolicyArgsDict']]] = None,
|
2092
|
+
default_route_action: Optional[pulumi.Input[Union['URLMapDefaultRouteActionArgs', 'URLMapDefaultRouteActionArgsDict']]] = None,
|
1859
2093
|
default_service: Optional[pulumi.Input[str]] = None,
|
1860
|
-
default_url_redirect: Optional[pulumi.Input[
|
2094
|
+
default_url_redirect: Optional[pulumi.Input[Union['URLMapDefaultUrlRedirectArgs', 'URLMapDefaultUrlRedirectArgsDict']]] = None,
|
1861
2095
|
description: Optional[pulumi.Input[str]] = None,
|
1862
2096
|
fingerprint: Optional[pulumi.Input[str]] = None,
|
1863
|
-
header_action: Optional[pulumi.Input[
|
1864
|
-
host_rules: Optional[pulumi.Input[Sequence[pulumi.Input[
|
2097
|
+
header_action: Optional[pulumi.Input[Union['URLMapHeaderActionArgs', 'URLMapHeaderActionArgsDict']]] = None,
|
2098
|
+
host_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapHostRuleArgs', 'URLMapHostRuleArgsDict']]]]] = None,
|
1865
2099
|
map_id: Optional[pulumi.Input[int]] = None,
|
1866
2100
|
name: Optional[pulumi.Input[str]] = None,
|
1867
|
-
path_matchers: Optional[pulumi.Input[Sequence[pulumi.Input[
|
2101
|
+
path_matchers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapPathMatcherArgs', 'URLMapPathMatcherArgsDict']]]]] = None,
|
1868
2102
|
project: Optional[pulumi.Input[str]] = None,
|
1869
2103
|
self_link: Optional[pulumi.Input[str]] = None,
|
1870
|
-
tests: Optional[pulumi.Input[Sequence[pulumi.Input[
|
2104
|
+
tests: Optional[pulumi.Input[Sequence[pulumi.Input[Union['URLMapTestArgs', 'URLMapTestArgsDict']]]]] = None) -> 'URLMap':
|
1871
2105
|
"""
|
1872
2106
|
Get an existing URLMap resource's state with the given name, id, and optional extra
|
1873
2107
|
properties used to qualify the lookup.
|
@@ -1876,14 +2110,23 @@ class URLMap(pulumi.CustomResource):
|
|
1876
2110
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
1877
2111
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
1878
2112
|
:param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
|
1879
|
-
:param pulumi.Input[
|
2113
|
+
:param pulumi.Input[Union['URLMapDefaultCustomErrorResponsePolicyArgs', 'URLMapDefaultCustomErrorResponsePolicyArgsDict']] default_custom_error_response_policy: defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error.
|
2114
|
+
This policy takes effect at the PathMatcher level and applies only when no policy has been defined for the error code at lower levels like RouteRule and PathRule within this PathMatcher. If an error code does not have a policy defined in defaultCustomErrorResponsePolicy, then a policy defined for the error code in UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
2115
|
+
For example, consider a UrlMap with the following configuration:
|
2116
|
+
UrlMap.defaultCustomErrorResponsePolicy is configured with policies for 5xx and 4xx errors
|
2117
|
+
A RouteRule for /coming_soon/ is configured for the error code 404.
|
2118
|
+
If the request is for www.myotherdomain.com and a 404 is encountered, the policy under UrlMap.defaultCustomErrorResponsePolicy takes effect. If a 404 response is encountered for the request www.example.com/current_events/, the pathMatcher's policy takes effect. If however, the request for www.example.com/coming_soon/ encounters a 404, the policy in RouteRule.customErrorResponsePolicy takes effect. If any of the requests in this example encounter a 500 error code, the policy at UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
2119
|
+
When used in conjunction with pathMatcher.defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client.
|
2120
|
+
defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
|
2121
|
+
Structure is documented below.
|
2122
|
+
:param pulumi.Input[Union['URLMapDefaultRouteActionArgs', 'URLMapDefaultRouteActionArgsDict']] default_route_action: defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions
|
1880
2123
|
like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend.
|
1881
2124
|
If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService
|
1882
2125
|
is set, defaultRouteAction cannot contain any weightedBackendServices.
|
1883
2126
|
Only one of defaultRouteAction or defaultUrlRedirect must be set.
|
1884
2127
|
Structure is documented below.
|
1885
2128
|
:param pulumi.Input[str] default_service: The backend service or backend bucket to use when none of the given rules match.
|
1886
|
-
:param pulumi.Input[
|
2129
|
+
:param pulumi.Input[Union['URLMapDefaultUrlRedirectArgs', 'URLMapDefaultUrlRedirectArgsDict']] default_url_redirect: When none of the specified hostRules match, the request is redirected to a URL specified
|
1887
2130
|
by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or
|
1888
2131
|
defaultRouteAction must not be set.
|
1889
2132
|
Structure is documented below.
|
@@ -1891,11 +2134,11 @@ class URLMap(pulumi.CustomResource):
|
|
1891
2134
|
the resource.
|
1892
2135
|
:param pulumi.Input[str] fingerprint: Fingerprint of this resource. A hash of the contents stored in this object. This
|
1893
2136
|
field is used in optimistic locking.
|
1894
|
-
:param pulumi.Input[
|
2137
|
+
:param pulumi.Input[Union['URLMapHeaderActionArgs', 'URLMapHeaderActionArgsDict']] header_action: Specifies changes to request and response headers that need to take effect for
|
1895
2138
|
the selected backendService. The headerAction specified here take effect after
|
1896
2139
|
headerAction specified under pathMatcher.
|
1897
2140
|
Structure is documented below.
|
1898
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
2141
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['URLMapHostRuleArgs', 'URLMapHostRuleArgsDict']]]] host_rules: The list of HostRules to use against the URL.
|
1899
2142
|
Structure is documented below.
|
1900
2143
|
:param pulumi.Input[int] map_id: The unique identifier for the resource.
|
1901
2144
|
:param pulumi.Input[str] name: Name of the resource. Provided by the client when the resource is created. The
|
@@ -1907,12 +2150,12 @@ class URLMap(pulumi.CustomResource):
|
|
1907
2150
|
|
1908
2151
|
|
1909
2152
|
- - -
|
1910
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
2153
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['URLMapPathMatcherArgs', 'URLMapPathMatcherArgsDict']]]] path_matchers: The list of named PathMatchers to use against the URL.
|
1911
2154
|
Structure is documented below.
|
1912
2155
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
1913
2156
|
If it is not provided, the provider project is used.
|
1914
2157
|
:param pulumi.Input[str] self_link: The URI of the created resource.
|
1915
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
2158
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['URLMapTestArgs', 'URLMapTestArgsDict']]]] tests: The list of expected URL mapping tests. Request to update this UrlMap will
|
1916
2159
|
succeed only if all of the test cases pass. You can specify a maximum of 100
|
1917
2160
|
tests per UrlMap.
|
1918
2161
|
Structure is documented below.
|
@@ -1922,6 +2165,7 @@ class URLMap(pulumi.CustomResource):
|
|
1922
2165
|
__props__ = _URLMapState.__new__(_URLMapState)
|
1923
2166
|
|
1924
2167
|
__props__.__dict__["creation_timestamp"] = creation_timestamp
|
2168
|
+
__props__.__dict__["default_custom_error_response_policy"] = default_custom_error_response_policy
|
1925
2169
|
__props__.__dict__["default_route_action"] = default_route_action
|
1926
2170
|
__props__.__dict__["default_service"] = default_service
|
1927
2171
|
__props__.__dict__["default_url_redirect"] = default_url_redirect
|
@@ -1945,6 +2189,22 @@ class URLMap(pulumi.CustomResource):
|
|
1945
2189
|
"""
|
1946
2190
|
return pulumi.get(self, "creation_timestamp")
|
1947
2191
|
|
2192
|
+
@property
|
2193
|
+
@pulumi.getter(name="defaultCustomErrorResponsePolicy")
|
2194
|
+
def default_custom_error_response_policy(self) -> pulumi.Output[Optional['outputs.URLMapDefaultCustomErrorResponsePolicy']]:
|
2195
|
+
"""
|
2196
|
+
defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error.
|
2197
|
+
This policy takes effect at the PathMatcher level and applies only when no policy has been defined for the error code at lower levels like RouteRule and PathRule within this PathMatcher. If an error code does not have a policy defined in defaultCustomErrorResponsePolicy, then a policy defined for the error code in UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
2198
|
+
For example, consider a UrlMap with the following configuration:
|
2199
|
+
UrlMap.defaultCustomErrorResponsePolicy is configured with policies for 5xx and 4xx errors
|
2200
|
+
A RouteRule for /coming_soon/ is configured for the error code 404.
|
2201
|
+
If the request is for www.myotherdomain.com and a 404 is encountered, the policy under UrlMap.defaultCustomErrorResponsePolicy takes effect. If a 404 response is encountered for the request www.example.com/current_events/, the pathMatcher's policy takes effect. If however, the request for www.example.com/coming_soon/ encounters a 404, the policy in RouteRule.customErrorResponsePolicy takes effect. If any of the requests in this example encounter a 500 error code, the policy at UrlMap.defaultCustomErrorResponsePolicy takes effect.
|
2202
|
+
When used in conjunction with pathMatcher.defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client.
|
2203
|
+
defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
|
2204
|
+
Structure is documented below.
|
2205
|
+
"""
|
2206
|
+
return pulumi.get(self, "default_custom_error_response_policy")
|
2207
|
+
|
1948
2208
|
@property
|
1949
2209
|
@pulumi.getter(name="defaultRouteAction")
|
1950
2210
|
def default_route_action(self) -> pulumi.Output[Optional['outputs.URLMapDefaultRouteAction']]:
|