pulumi-gcp 7.29.0a1719416802__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.0a1719416802.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.0a1719416802.dist-info → pulumi_gcp-7.30.0.dist-info}/WHEEL +1 -1
- pulumi_gcp-7.29.0a1719416802.dist-info/RECORD +0 -1600
- {pulumi_gcp-7.29.0a1719416802.dist-info → pulumi_gcp-7.30.0.dist-info}/top_level.txt +0 -0
@@ -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 *
|
@@ -24,8 +29,27 @@ class RestorePlanIamBindingArgs:
|
|
24
29
|
project: Optional[pulumi.Input[str]] = None):
|
25
30
|
"""
|
26
31
|
The set of arguments for constructing a RestorePlanIamBinding resource.
|
32
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] members: Identities that will be granted the privilege in `role`.
|
33
|
+
Each entry can have one of the following values:
|
34
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
35
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
36
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
37
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
38
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
39
|
+
* **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
|
40
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
41
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
42
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
43
|
+
:param pulumi.Input[str] role: The role that should be applied. Only one
|
44
|
+
`gkebackup.RestorePlanIamBinding` can be used per role. Note that custom roles must be of the format
|
45
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
27
46
|
:param pulumi.Input[str] location: The region of the Restore Plan.
|
28
|
-
|
47
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
48
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
49
|
+
location is specified, it is taken from the provider configuration.
|
50
|
+
:param pulumi.Input[str] name: Used to find the parent resource to bind the IAM policy to
|
51
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
52
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
29
53
|
"""
|
30
54
|
pulumi.set(__self__, "members", members)
|
31
55
|
pulumi.set(__self__, "role", role)
|
@@ -41,6 +65,19 @@ class RestorePlanIamBindingArgs:
|
|
41
65
|
@property
|
42
66
|
@pulumi.getter
|
43
67
|
def members(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
68
|
+
"""
|
69
|
+
Identities that will be granted the privilege in `role`.
|
70
|
+
Each entry can have one of the following values:
|
71
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
72
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
73
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
74
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
75
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
76
|
+
* **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
|
77
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
78
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
79
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
80
|
+
"""
|
44
81
|
return pulumi.get(self, "members")
|
45
82
|
|
46
83
|
@members.setter
|
@@ -50,6 +87,11 @@ class RestorePlanIamBindingArgs:
|
|
50
87
|
@property
|
51
88
|
@pulumi.getter
|
52
89
|
def role(self) -> pulumi.Input[str]:
|
90
|
+
"""
|
91
|
+
The role that should be applied. Only one
|
92
|
+
`gkebackup.RestorePlanIamBinding` can be used per role. Note that custom roles must be of the format
|
93
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
94
|
+
"""
|
53
95
|
return pulumi.get(self, "role")
|
54
96
|
|
55
97
|
@role.setter
|
@@ -70,6 +112,9 @@ class RestorePlanIamBindingArgs:
|
|
70
112
|
def location(self) -> Optional[pulumi.Input[str]]:
|
71
113
|
"""
|
72
114
|
The region of the Restore Plan.
|
115
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
116
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
117
|
+
location is specified, it is taken from the provider configuration.
|
73
118
|
"""
|
74
119
|
return pulumi.get(self, "location")
|
75
120
|
|
@@ -81,7 +126,7 @@ class RestorePlanIamBindingArgs:
|
|
81
126
|
@pulumi.getter
|
82
127
|
def name(self) -> Optional[pulumi.Input[str]]:
|
83
128
|
"""
|
84
|
-
|
129
|
+
Used to find the parent resource to bind the IAM policy to
|
85
130
|
"""
|
86
131
|
return pulumi.get(self, "name")
|
87
132
|
|
@@ -92,6 +137,10 @@ class RestorePlanIamBindingArgs:
|
|
92
137
|
@property
|
93
138
|
@pulumi.getter
|
94
139
|
def project(self) -> Optional[pulumi.Input[str]]:
|
140
|
+
"""
|
141
|
+
The ID of the project in which the resource belongs.
|
142
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
143
|
+
"""
|
95
144
|
return pulumi.get(self, "project")
|
96
145
|
|
97
146
|
@project.setter
|
@@ -111,8 +160,28 @@ class _RestorePlanIamBindingState:
|
|
111
160
|
role: Optional[pulumi.Input[str]] = None):
|
112
161
|
"""
|
113
162
|
Input properties used for looking up and filtering RestorePlanIamBinding resources.
|
163
|
+
:param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
|
114
164
|
:param pulumi.Input[str] location: The region of the Restore Plan.
|
115
|
-
|
165
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
166
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
167
|
+
location is specified, it is taken from the provider configuration.
|
168
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] members: Identities that will be granted the privilege in `role`.
|
169
|
+
Each entry can have one of the following values:
|
170
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
171
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
172
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
173
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
174
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
175
|
+
* **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
|
176
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
177
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
178
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
179
|
+
:param pulumi.Input[str] name: Used to find the parent resource to bind the IAM policy to
|
180
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
181
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
182
|
+
:param pulumi.Input[str] role: The role that should be applied. Only one
|
183
|
+
`gkebackup.RestorePlanIamBinding` can be used per role. Note that custom roles must be of the format
|
184
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
116
185
|
"""
|
117
186
|
if condition is not None:
|
118
187
|
pulumi.set(__self__, "condition", condition)
|
@@ -141,6 +210,9 @@ class _RestorePlanIamBindingState:
|
|
141
210
|
@property
|
142
211
|
@pulumi.getter
|
143
212
|
def etag(self) -> Optional[pulumi.Input[str]]:
|
213
|
+
"""
|
214
|
+
(Computed) The etag of the IAM policy.
|
215
|
+
"""
|
144
216
|
return pulumi.get(self, "etag")
|
145
217
|
|
146
218
|
@etag.setter
|
@@ -152,6 +224,9 @@ class _RestorePlanIamBindingState:
|
|
152
224
|
def location(self) -> Optional[pulumi.Input[str]]:
|
153
225
|
"""
|
154
226
|
The region of the Restore Plan.
|
227
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
228
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
229
|
+
location is specified, it is taken from the provider configuration.
|
155
230
|
"""
|
156
231
|
return pulumi.get(self, "location")
|
157
232
|
|
@@ -162,6 +237,19 @@ class _RestorePlanIamBindingState:
|
|
162
237
|
@property
|
163
238
|
@pulumi.getter
|
164
239
|
def members(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
240
|
+
"""
|
241
|
+
Identities that will be granted the privilege in `role`.
|
242
|
+
Each entry can have one of the following values:
|
243
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
244
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
245
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
246
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
247
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
248
|
+
* **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
|
249
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
250
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
251
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
252
|
+
"""
|
165
253
|
return pulumi.get(self, "members")
|
166
254
|
|
167
255
|
@members.setter
|
@@ -172,7 +260,7 @@ class _RestorePlanIamBindingState:
|
|
172
260
|
@pulumi.getter
|
173
261
|
def name(self) -> Optional[pulumi.Input[str]]:
|
174
262
|
"""
|
175
|
-
|
263
|
+
Used to find the parent resource to bind the IAM policy to
|
176
264
|
"""
|
177
265
|
return pulumi.get(self, "name")
|
178
266
|
|
@@ -183,6 +271,10 @@ class _RestorePlanIamBindingState:
|
|
183
271
|
@property
|
184
272
|
@pulumi.getter
|
185
273
|
def project(self) -> Optional[pulumi.Input[str]]:
|
274
|
+
"""
|
275
|
+
The ID of the project in which the resource belongs.
|
276
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
277
|
+
"""
|
186
278
|
return pulumi.get(self, "project")
|
187
279
|
|
188
280
|
@project.setter
|
@@ -192,6 +284,11 @@ class _RestorePlanIamBindingState:
|
|
192
284
|
@property
|
193
285
|
@pulumi.getter
|
194
286
|
def role(self) -> Optional[pulumi.Input[str]]:
|
287
|
+
"""
|
288
|
+
The role that should be applied. Only one
|
289
|
+
`gkebackup.RestorePlanIamBinding` can be used per role. Note that custom roles must be of the format
|
290
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
291
|
+
"""
|
195
292
|
return pulumi.get(self, "role")
|
196
293
|
|
197
294
|
@role.setter
|
@@ -204,7 +301,7 @@ class RestorePlanIamBinding(pulumi.CustomResource):
|
|
204
301
|
def __init__(__self__,
|
205
302
|
resource_name: str,
|
206
303
|
opts: Optional[pulumi.ResourceOptions] = None,
|
207
|
-
condition: Optional[pulumi.Input[
|
304
|
+
condition: Optional[pulumi.Input[Union['RestorePlanIamBindingConditionArgs', 'RestorePlanIamBindingConditionArgsDict']]] = None,
|
208
305
|
location: Optional[pulumi.Input[str]] = None,
|
209
306
|
members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
210
307
|
name: Optional[pulumi.Input[str]] = None,
|
@@ -212,544 +309,171 @@ class RestorePlanIamBinding(pulumi.CustomResource):
|
|
212
309
|
role: Optional[pulumi.Input[str]] = None,
|
213
310
|
__props__=None):
|
214
311
|
"""
|
215
|
-
|
312
|
+
Three different resources help you manage your IAM policy for Backup for GKE RestorePlan. Each of these resources serves a different use case:
|
216
313
|
|
217
|
-
|
314
|
+
* `gkebackup.RestorePlanIamPolicy`: Authoritative. Sets the IAM policy for the restoreplan and replaces any existing policy already attached.
|
315
|
+
* `gkebackup.RestorePlanIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the restoreplan are preserved.
|
316
|
+
* `gkebackup.RestorePlanIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the restoreplan are preserved.
|
218
317
|
|
219
|
-
|
220
|
-
* How-to Guides
|
221
|
-
* [Official Documentation](https://cloud.google.com/kubernetes-engine/docs/add-on/backup-for-gke)
|
318
|
+
A data source can be used to retrieve policy data in advent you do not need creation
|
222
319
|
|
223
|
-
|
320
|
+
* `gkebackup.RestorePlanIamPolicy`: Retrieves the IAM policy for the restoreplan
|
224
321
|
|
225
|
-
|
322
|
+
> **Note:** `gkebackup.RestorePlanIamPolicy` **cannot** be used in conjunction with `gkebackup.RestorePlanIamBinding` and `gkebackup.RestorePlanIamMember` or they will fight over what your policy should be.
|
226
323
|
|
227
|
-
|
228
|
-
import pulumi
|
229
|
-
import pulumi_gcp as gcp
|
324
|
+
> **Note:** `gkebackup.RestorePlanIamBinding` resources **can be** used in conjunction with `gkebackup.RestorePlanIamMember` resources **only if** they do not grant privilege to the same role.
|
230
325
|
|
231
|
-
|
232
|
-
name="restore-all-ns-cluster",
|
233
|
-
location="us-central1",
|
234
|
-
initial_node_count=1,
|
235
|
-
workload_identity_config=gcp.container.ClusterWorkloadIdentityConfigArgs(
|
236
|
-
workload_pool="my-project-name.svc.id.goog",
|
237
|
-
),
|
238
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
239
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
240
|
-
enabled=True,
|
241
|
-
),
|
242
|
-
),
|
243
|
-
deletion_protection="",
|
244
|
-
network="default",
|
245
|
-
subnetwork="default")
|
246
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
247
|
-
name="restore-all-ns",
|
248
|
-
cluster=primary.id,
|
249
|
-
location="us-central1",
|
250
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
251
|
-
include_volume_data=True,
|
252
|
-
include_secrets=True,
|
253
|
-
all_namespaces=True,
|
254
|
-
))
|
255
|
-
all_ns = gcp.gkebackup.RestorePlan("all_ns",
|
256
|
-
name="restore-all-ns",
|
257
|
-
location="us-central1",
|
258
|
-
backup_plan=basic.id,
|
259
|
-
cluster=primary.id,
|
260
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
261
|
-
all_namespaces=True,
|
262
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
263
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
264
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
265
|
-
all_group_kinds=True,
|
266
|
-
),
|
267
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
268
|
-
))
|
269
|
-
```
|
270
|
-
### Gkebackup Restoreplan Rollback Namespace
|
326
|
+
## gkebackup.RestorePlanIamPolicy
|
271
327
|
|
272
328
|
```python
|
273
329
|
import pulumi
|
274
330
|
import pulumi_gcp as gcp
|
275
331
|
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
enabled=True,
|
286
|
-
),
|
287
|
-
),
|
288
|
-
deletion_protection="",
|
289
|
-
network="default",
|
290
|
-
subnetwork="default")
|
291
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
292
|
-
name="rollback-ns",
|
293
|
-
cluster=primary.id,
|
294
|
-
location="us-central1",
|
295
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
296
|
-
include_volume_data=True,
|
297
|
-
include_secrets=True,
|
298
|
-
all_namespaces=True,
|
299
|
-
))
|
300
|
-
rollback_ns = gcp.gkebackup.RestorePlan("rollback_ns",
|
301
|
-
name="rollback-ns-rp",
|
302
|
-
location="us-central1",
|
303
|
-
backup_plan=basic.id,
|
304
|
-
cluster=primary.id,
|
305
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
306
|
-
selected_namespaces=gcp.gkebackup.RestorePlanRestoreConfigSelectedNamespacesArgs(
|
307
|
-
namespaces=["my-ns"],
|
308
|
-
),
|
309
|
-
namespaced_resource_restore_mode="DELETE_AND_RESTORE",
|
310
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
311
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
312
|
-
selected_group_kinds=[
|
313
|
-
gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeSelectedGroupKindArgs(
|
314
|
-
resource_group="apiextension.k8s.io",
|
315
|
-
resource_kind="CustomResourceDefinition",
|
316
|
-
),
|
317
|
-
gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeSelectedGroupKindArgs(
|
318
|
-
resource_group="storage.k8s.io",
|
319
|
-
resource_kind="StorageClass",
|
320
|
-
),
|
321
|
-
],
|
322
|
-
),
|
323
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
324
|
-
))
|
332
|
+
admin = gcp.organizations.get_iam_policy(bindings=[{
|
333
|
+
"role": "roles/viewer",
|
334
|
+
"members": ["user:jane@example.com"],
|
335
|
+
}])
|
336
|
+
policy = gcp.gkebackup.RestorePlanIamPolicy("policy",
|
337
|
+
project=all_ns["project"],
|
338
|
+
location=all_ns["location"],
|
339
|
+
name=all_ns["name"],
|
340
|
+
policy_data=admin.policy_data)
|
325
341
|
```
|
326
|
-
### Gkebackup Restoreplan Protected Application
|
327
342
|
|
328
|
-
|
329
|
-
import pulumi
|
330
|
-
import pulumi_gcp as gcp
|
331
|
-
|
332
|
-
primary = gcp.container.Cluster("primary",
|
333
|
-
name="rollback-app-cluster",
|
334
|
-
location="us-central1",
|
335
|
-
initial_node_count=1,
|
336
|
-
workload_identity_config=gcp.container.ClusterWorkloadIdentityConfigArgs(
|
337
|
-
workload_pool="my-project-name.svc.id.goog",
|
338
|
-
),
|
339
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
340
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
341
|
-
enabled=True,
|
342
|
-
),
|
343
|
-
),
|
344
|
-
deletion_protection="",
|
345
|
-
network="default",
|
346
|
-
subnetwork="default")
|
347
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
348
|
-
name="rollback-app",
|
349
|
-
cluster=primary.id,
|
350
|
-
location="us-central1",
|
351
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
352
|
-
include_volume_data=True,
|
353
|
-
include_secrets=True,
|
354
|
-
all_namespaces=True,
|
355
|
-
))
|
356
|
-
rollback_app = gcp.gkebackup.RestorePlan("rollback_app",
|
357
|
-
name="rollback-app-rp",
|
358
|
-
location="us-central1",
|
359
|
-
backup_plan=basic.id,
|
360
|
-
cluster=primary.id,
|
361
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
362
|
-
selected_applications=gcp.gkebackup.RestorePlanRestoreConfigSelectedApplicationsArgs(
|
363
|
-
namespaced_names=[gcp.gkebackup.RestorePlanRestoreConfigSelectedApplicationsNamespacedNameArgs(
|
364
|
-
name="my-app",
|
365
|
-
namespace="my-ns",
|
366
|
-
)],
|
367
|
-
),
|
368
|
-
namespaced_resource_restore_mode="DELETE_AND_RESTORE",
|
369
|
-
volume_data_restore_policy="REUSE_VOLUME_HANDLE_FROM_BACKUP",
|
370
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
371
|
-
no_group_kinds=True,
|
372
|
-
),
|
373
|
-
))
|
374
|
-
```
|
375
|
-
### Gkebackup Restoreplan All Cluster Resources
|
343
|
+
## gkebackup.RestorePlanIamBinding
|
376
344
|
|
377
345
|
```python
|
378
346
|
import pulumi
|
379
347
|
import pulumi_gcp as gcp
|
380
348
|
|
381
|
-
|
382
|
-
|
383
|
-
location="
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
),
|
388
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
389
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
390
|
-
enabled=True,
|
391
|
-
),
|
392
|
-
),
|
393
|
-
deletion_protection="",
|
394
|
-
network="default",
|
395
|
-
subnetwork="default")
|
396
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
397
|
-
name="all-groupkinds",
|
398
|
-
cluster=primary.id,
|
399
|
-
location="us-central1",
|
400
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
401
|
-
include_volume_data=True,
|
402
|
-
include_secrets=True,
|
403
|
-
all_namespaces=True,
|
404
|
-
))
|
405
|
-
all_cluster_resources = gcp.gkebackup.RestorePlan("all_cluster_resources",
|
406
|
-
name="all-groupkinds-rp",
|
407
|
-
location="us-central1",
|
408
|
-
backup_plan=basic.id,
|
409
|
-
cluster=primary.id,
|
410
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
411
|
-
no_namespaces=True,
|
412
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
413
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
414
|
-
all_group_kinds=True,
|
415
|
-
),
|
416
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
417
|
-
))
|
349
|
+
binding = gcp.gkebackup.RestorePlanIamBinding("binding",
|
350
|
+
project=all_ns["project"],
|
351
|
+
location=all_ns["location"],
|
352
|
+
name=all_ns["name"],
|
353
|
+
role="roles/viewer",
|
354
|
+
members=["user:jane@example.com"])
|
418
355
|
```
|
419
|
-
### Gkebackup Restoreplan Rename Namespace
|
420
356
|
|
421
|
-
|
422
|
-
import pulumi
|
423
|
-
import pulumi_gcp as gcp
|
424
|
-
|
425
|
-
primary = gcp.container.Cluster("primary",
|
426
|
-
name="rename-ns-cluster",
|
427
|
-
location="us-central1",
|
428
|
-
initial_node_count=1,
|
429
|
-
workload_identity_config=gcp.container.ClusterWorkloadIdentityConfigArgs(
|
430
|
-
workload_pool="my-project-name.svc.id.goog",
|
431
|
-
),
|
432
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
433
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
434
|
-
enabled=True,
|
435
|
-
),
|
436
|
-
),
|
437
|
-
deletion_protection="",
|
438
|
-
network="default",
|
439
|
-
subnetwork="default")
|
440
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
441
|
-
name="rename-ns",
|
442
|
-
cluster=primary.id,
|
443
|
-
location="us-central1",
|
444
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
445
|
-
include_volume_data=True,
|
446
|
-
include_secrets=True,
|
447
|
-
all_namespaces=True,
|
448
|
-
))
|
449
|
-
rename_ns = gcp.gkebackup.RestorePlan("rename_ns",
|
450
|
-
name="rename-ns-rp",
|
451
|
-
location="us-central1",
|
452
|
-
backup_plan=basic.id,
|
453
|
-
cluster=primary.id,
|
454
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
455
|
-
selected_namespaces=gcp.gkebackup.RestorePlanRestoreConfigSelectedNamespacesArgs(
|
456
|
-
namespaces=["ns1"],
|
457
|
-
),
|
458
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
459
|
-
volume_data_restore_policy="REUSE_VOLUME_HANDLE_FROM_BACKUP",
|
460
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
461
|
-
no_group_kinds=True,
|
462
|
-
),
|
463
|
-
transformation_rules=[
|
464
|
-
gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleArgs(
|
465
|
-
description="rename namespace from ns1 to ns2",
|
466
|
-
resource_filter=gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterArgs(
|
467
|
-
group_kinds=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterGroupKindArgs(
|
468
|
-
resource_kind="Namespace",
|
469
|
-
)],
|
470
|
-
json_path=".metadata[?(@.name == 'ns1')]",
|
471
|
-
),
|
472
|
-
field_actions=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleFieldActionArgs(
|
473
|
-
op="REPLACE",
|
474
|
-
path="/metadata/name",
|
475
|
-
value="ns2",
|
476
|
-
)],
|
477
|
-
),
|
478
|
-
gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleArgs(
|
479
|
-
description="move all resources from ns1 to ns2",
|
480
|
-
resource_filter=gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterArgs(
|
481
|
-
namespaces=["ns1"],
|
482
|
-
),
|
483
|
-
field_actions=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleFieldActionArgs(
|
484
|
-
op="REPLACE",
|
485
|
-
path="/metadata/namespace",
|
486
|
-
value="ns2",
|
487
|
-
)],
|
488
|
-
),
|
489
|
-
],
|
490
|
-
))
|
491
|
-
```
|
492
|
-
### Gkebackup Restoreplan Second Transformation
|
357
|
+
## gkebackup.RestorePlanIamMember
|
493
358
|
|
494
359
|
```python
|
495
360
|
import pulumi
|
496
361
|
import pulumi_gcp as gcp
|
497
362
|
|
498
|
-
|
499
|
-
|
500
|
-
location="
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
),
|
505
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
506
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
507
|
-
enabled=True,
|
508
|
-
),
|
509
|
-
),
|
510
|
-
deletion_protection="",
|
511
|
-
network="default",
|
512
|
-
subnetwork="default")
|
513
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
514
|
-
name="transform-rule",
|
515
|
-
cluster=primary.id,
|
516
|
-
location="us-central1",
|
517
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
518
|
-
include_volume_data=True,
|
519
|
-
include_secrets=True,
|
520
|
-
all_namespaces=True,
|
521
|
-
))
|
522
|
-
transform_rule = gcp.gkebackup.RestorePlan("transform_rule",
|
523
|
-
name="transform-rule-rp",
|
524
|
-
description="copy nginx env variables",
|
525
|
-
labels={
|
526
|
-
"app": "nginx",
|
527
|
-
},
|
528
|
-
location="us-central1",
|
529
|
-
backup_plan=basic.id,
|
530
|
-
cluster=primary.id,
|
531
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
532
|
-
excluded_namespaces=gcp.gkebackup.RestorePlanRestoreConfigExcludedNamespacesArgs(
|
533
|
-
namespaces=["my-ns"],
|
534
|
-
),
|
535
|
-
namespaced_resource_restore_mode="DELETE_AND_RESTORE",
|
536
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
537
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
538
|
-
excluded_group_kinds=[gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeExcludedGroupKindArgs(
|
539
|
-
resource_group="apiextension.k8s.io",
|
540
|
-
resource_kind="CustomResourceDefinition",
|
541
|
-
)],
|
542
|
-
),
|
543
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
544
|
-
transformation_rules=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleArgs(
|
545
|
-
description="Copy environment variables from the nginx container to the install init container.",
|
546
|
-
resource_filter=gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterArgs(
|
547
|
-
group_kinds=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterGroupKindArgs(
|
548
|
-
resource_kind="Pod",
|
549
|
-
resource_group="",
|
550
|
-
)],
|
551
|
-
json_path=".metadata[?(@.name == 'nginx')]",
|
552
|
-
),
|
553
|
-
field_actions=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleFieldActionArgs(
|
554
|
-
op="COPY",
|
555
|
-
path="/spec/initContainers/0/env",
|
556
|
-
from_path="/spec/containers/0/env",
|
557
|
-
)],
|
558
|
-
)],
|
559
|
-
))
|
363
|
+
member = gcp.gkebackup.RestorePlanIamMember("member",
|
364
|
+
project=all_ns["project"],
|
365
|
+
location=all_ns["location"],
|
366
|
+
name=all_ns["name"],
|
367
|
+
role="roles/viewer",
|
368
|
+
member="user:jane@example.com")
|
560
369
|
```
|
561
|
-
|
370
|
+
|
371
|
+
## gkebackup.RestorePlanIamPolicy
|
562
372
|
|
563
373
|
```python
|
564
374
|
import pulumi
|
565
375
|
import pulumi_gcp as gcp
|
566
376
|
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
enabled=True,
|
577
|
-
),
|
578
|
-
),
|
579
|
-
deletion_protection="",
|
580
|
-
network="default",
|
581
|
-
subnetwork="default")
|
582
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
583
|
-
name="gitops-mode",
|
584
|
-
cluster=primary.id,
|
585
|
-
location="us-central1",
|
586
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
587
|
-
include_volume_data=True,
|
588
|
-
include_secrets=True,
|
589
|
-
all_namespaces=True,
|
590
|
-
))
|
591
|
-
gitops_mode = gcp.gkebackup.RestorePlan("gitops_mode",
|
592
|
-
name="gitops-mode",
|
593
|
-
location="us-central1",
|
594
|
-
backup_plan=basic.id,
|
595
|
-
cluster=primary.id,
|
596
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
597
|
-
all_namespaces=True,
|
598
|
-
namespaced_resource_restore_mode="MERGE_SKIP_ON_CONFLICT",
|
599
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
600
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
601
|
-
all_group_kinds=True,
|
602
|
-
),
|
603
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
604
|
-
))
|
377
|
+
admin = gcp.organizations.get_iam_policy(bindings=[{
|
378
|
+
"role": "roles/viewer",
|
379
|
+
"members": ["user:jane@example.com"],
|
380
|
+
}])
|
381
|
+
policy = gcp.gkebackup.RestorePlanIamPolicy("policy",
|
382
|
+
project=all_ns["project"],
|
383
|
+
location=all_ns["location"],
|
384
|
+
name=all_ns["name"],
|
385
|
+
policy_data=admin.policy_data)
|
605
386
|
```
|
606
|
-
|
387
|
+
|
388
|
+
## gkebackup.RestorePlanIamBinding
|
607
389
|
|
608
390
|
```python
|
609
391
|
import pulumi
|
610
392
|
import pulumi_gcp as gcp
|
611
393
|
|
612
|
-
|
613
|
-
|
614
|
-
location="
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
),
|
619
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
620
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
621
|
-
enabled=True,
|
622
|
-
),
|
623
|
-
),
|
624
|
-
deletion_protection="",
|
625
|
-
network="default",
|
626
|
-
subnetwork="default")
|
627
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
628
|
-
name="restore-order",
|
629
|
-
cluster=primary.id,
|
630
|
-
location="us-central1",
|
631
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
632
|
-
include_volume_data=True,
|
633
|
-
include_secrets=True,
|
634
|
-
all_namespaces=True,
|
635
|
-
))
|
636
|
-
restore_order = gcp.gkebackup.RestorePlan("restore_order",
|
637
|
-
name="restore-order",
|
638
|
-
location="us-central1",
|
639
|
-
backup_plan=basic.id,
|
640
|
-
cluster=primary.id,
|
641
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
642
|
-
all_namespaces=True,
|
643
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
644
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
645
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
646
|
-
all_group_kinds=True,
|
647
|
-
),
|
648
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
649
|
-
restore_order=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderArgs(
|
650
|
-
group_kind_dependencies=[
|
651
|
-
gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencyArgs(
|
652
|
-
satisfying=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencySatisfyingArgs(
|
653
|
-
resource_group="stable.example.com",
|
654
|
-
resource_kind="kindA",
|
655
|
-
),
|
656
|
-
requiring=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencyRequiringArgs(
|
657
|
-
resource_group="stable.example.com",
|
658
|
-
resource_kind="kindB",
|
659
|
-
),
|
660
|
-
),
|
661
|
-
gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencyArgs(
|
662
|
-
satisfying=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencySatisfyingArgs(
|
663
|
-
resource_group="stable.example.com",
|
664
|
-
resource_kind="kindB",
|
665
|
-
),
|
666
|
-
requiring=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencyRequiringArgs(
|
667
|
-
resource_group="stable.example.com",
|
668
|
-
resource_kind="kindC",
|
669
|
-
),
|
670
|
-
),
|
671
|
-
],
|
672
|
-
),
|
673
|
-
))
|
394
|
+
binding = gcp.gkebackup.RestorePlanIamBinding("binding",
|
395
|
+
project=all_ns["project"],
|
396
|
+
location=all_ns["location"],
|
397
|
+
name=all_ns["name"],
|
398
|
+
role="roles/viewer",
|
399
|
+
members=["user:jane@example.com"])
|
674
400
|
```
|
675
|
-
|
401
|
+
|
402
|
+
## gkebackup.RestorePlanIamMember
|
676
403
|
|
677
404
|
```python
|
678
405
|
import pulumi
|
679
406
|
import pulumi_gcp as gcp
|
680
407
|
|
681
|
-
|
682
|
-
|
683
|
-
location="
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
),
|
688
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
689
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
690
|
-
enabled=True,
|
691
|
-
),
|
692
|
-
),
|
693
|
-
deletion_protection="",
|
694
|
-
network="default",
|
695
|
-
subnetwork="default")
|
696
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
697
|
-
name="volume-res",
|
698
|
-
cluster=primary.id,
|
699
|
-
location="us-central1",
|
700
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
701
|
-
include_volume_data=True,
|
702
|
-
include_secrets=True,
|
703
|
-
all_namespaces=True,
|
704
|
-
))
|
705
|
-
volume_res = gcp.gkebackup.RestorePlan("volume_res",
|
706
|
-
name="volume-res",
|
707
|
-
location="us-central1",
|
708
|
-
backup_plan=basic.id,
|
709
|
-
cluster=primary.id,
|
710
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
711
|
-
all_namespaces=True,
|
712
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
713
|
-
volume_data_restore_policy="NO_VOLUME_DATA_RESTORATION",
|
714
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
715
|
-
all_group_kinds=True,
|
716
|
-
),
|
717
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
718
|
-
volume_data_restore_policy_bindings=[gcp.gkebackup.RestorePlanRestoreConfigVolumeDataRestorePolicyBindingArgs(
|
719
|
-
policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
720
|
-
volume_type="GCE_PERSISTENT_DISK",
|
721
|
-
)],
|
722
|
-
))
|
408
|
+
member = gcp.gkebackup.RestorePlanIamMember("member",
|
409
|
+
project=all_ns["project"],
|
410
|
+
location=all_ns["location"],
|
411
|
+
name=all_ns["name"],
|
412
|
+
role="roles/viewer",
|
413
|
+
member="user:jane@example.com")
|
723
414
|
```
|
724
415
|
|
725
416
|
## Import
|
726
417
|
|
727
|
-
|
418
|
+
For all import syntaxes, the "resource in question" can take any of the following forms:
|
728
419
|
|
729
|
-
*
|
420
|
+
* projects/{{project}}/locations/{{location}}/restorePlans/{{name}}
|
730
421
|
|
731
|
-
*
|
422
|
+
* {{project}}/{{location}}/{{name}}
|
732
423
|
|
733
|
-
*
|
424
|
+
* {{location}}/{{name}}
|
734
425
|
|
735
|
-
|
426
|
+
* {{name}}
|
427
|
+
|
428
|
+
Any variables not passed in the import command will be taken from the provider configuration.
|
429
|
+
|
430
|
+
Backup for GKE restoreplan IAM resources can be imported using the resource identifiers, role, and member.
|
431
|
+
|
432
|
+
IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
|
736
433
|
|
737
434
|
```sh
|
738
|
-
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding
|
435
|
+
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding editor "projects/{{project}}/locations/{{location}}/restorePlans/{{restore_plan}} roles/viewer user:jane@example.com"
|
739
436
|
```
|
740
437
|
|
438
|
+
IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
|
439
|
+
|
741
440
|
```sh
|
742
|
-
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding
|
441
|
+
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding editor "projects/{{project}}/locations/{{location}}/restorePlans/{{restore_plan}} roles/viewer"
|
743
442
|
```
|
744
443
|
|
444
|
+
IAM policy imports use the identifier of the resource in question, e.g.
|
445
|
+
|
745
446
|
```sh
|
746
|
-
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding
|
447
|
+
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding editor projects/{{project}}/locations/{{location}}/restorePlans/{{restore_plan}}
|
747
448
|
```
|
748
449
|
|
450
|
+
-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
|
451
|
+
|
452
|
+
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
453
|
+
|
749
454
|
:param str resource_name: The name of the resource.
|
750
455
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
751
456
|
:param pulumi.Input[str] location: The region of the Restore Plan.
|
752
|
-
|
457
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
458
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
459
|
+
location is specified, it is taken from the provider configuration.
|
460
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] members: Identities that will be granted the privilege in `role`.
|
461
|
+
Each entry can have one of the following values:
|
462
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
463
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
464
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
465
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
466
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
467
|
+
* **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
|
468
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
469
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
470
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
471
|
+
:param pulumi.Input[str] name: Used to find the parent resource to bind the IAM policy to
|
472
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
473
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
474
|
+
:param pulumi.Input[str] role: The role that should be applied. Only one
|
475
|
+
`gkebackup.RestorePlanIamBinding` can be used per role. Note that custom roles must be of the format
|
476
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
753
477
|
"""
|
754
478
|
...
|
755
479
|
@overload
|
@@ -758,540 +482,148 @@ class RestorePlanIamBinding(pulumi.CustomResource):
|
|
758
482
|
args: RestorePlanIamBindingArgs,
|
759
483
|
opts: Optional[pulumi.ResourceOptions] = None):
|
760
484
|
"""
|
761
|
-
|
485
|
+
Three different resources help you manage your IAM policy for Backup for GKE RestorePlan. Each of these resources serves a different use case:
|
762
486
|
|
763
|
-
|
487
|
+
* `gkebackup.RestorePlanIamPolicy`: Authoritative. Sets the IAM policy for the restoreplan and replaces any existing policy already attached.
|
488
|
+
* `gkebackup.RestorePlanIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the restoreplan are preserved.
|
489
|
+
* `gkebackup.RestorePlanIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the restoreplan are preserved.
|
764
490
|
|
765
|
-
|
766
|
-
* How-to Guides
|
767
|
-
* [Official Documentation](https://cloud.google.com/kubernetes-engine/docs/add-on/backup-for-gke)
|
491
|
+
A data source can be used to retrieve policy data in advent you do not need creation
|
768
492
|
|
769
|
-
|
493
|
+
* `gkebackup.RestorePlanIamPolicy`: Retrieves the IAM policy for the restoreplan
|
770
494
|
|
771
|
-
|
495
|
+
> **Note:** `gkebackup.RestorePlanIamPolicy` **cannot** be used in conjunction with `gkebackup.RestorePlanIamBinding` and `gkebackup.RestorePlanIamMember` or they will fight over what your policy should be.
|
772
496
|
|
773
|
-
|
774
|
-
import pulumi
|
775
|
-
import pulumi_gcp as gcp
|
497
|
+
> **Note:** `gkebackup.RestorePlanIamBinding` resources **can be** used in conjunction with `gkebackup.RestorePlanIamMember` resources **only if** they do not grant privilege to the same role.
|
776
498
|
|
777
|
-
|
778
|
-
name="restore-all-ns-cluster",
|
779
|
-
location="us-central1",
|
780
|
-
initial_node_count=1,
|
781
|
-
workload_identity_config=gcp.container.ClusterWorkloadIdentityConfigArgs(
|
782
|
-
workload_pool="my-project-name.svc.id.goog",
|
783
|
-
),
|
784
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
785
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
786
|
-
enabled=True,
|
787
|
-
),
|
788
|
-
),
|
789
|
-
deletion_protection="",
|
790
|
-
network="default",
|
791
|
-
subnetwork="default")
|
792
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
793
|
-
name="restore-all-ns",
|
794
|
-
cluster=primary.id,
|
795
|
-
location="us-central1",
|
796
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
797
|
-
include_volume_data=True,
|
798
|
-
include_secrets=True,
|
799
|
-
all_namespaces=True,
|
800
|
-
))
|
801
|
-
all_ns = gcp.gkebackup.RestorePlan("all_ns",
|
802
|
-
name="restore-all-ns",
|
803
|
-
location="us-central1",
|
804
|
-
backup_plan=basic.id,
|
805
|
-
cluster=primary.id,
|
806
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
807
|
-
all_namespaces=True,
|
808
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
809
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
810
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
811
|
-
all_group_kinds=True,
|
812
|
-
),
|
813
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
814
|
-
))
|
815
|
-
```
|
816
|
-
### Gkebackup Restoreplan Rollback Namespace
|
499
|
+
## gkebackup.RestorePlanIamPolicy
|
817
500
|
|
818
501
|
```python
|
819
502
|
import pulumi
|
820
503
|
import pulumi_gcp as gcp
|
821
504
|
|
822
|
-
|
823
|
-
|
824
|
-
|
825
|
-
|
826
|
-
|
827
|
-
|
828
|
-
|
829
|
-
|
830
|
-
|
831
|
-
enabled=True,
|
832
|
-
),
|
833
|
-
),
|
834
|
-
deletion_protection="",
|
835
|
-
network="default",
|
836
|
-
subnetwork="default")
|
837
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
838
|
-
name="rollback-ns",
|
839
|
-
cluster=primary.id,
|
840
|
-
location="us-central1",
|
841
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
842
|
-
include_volume_data=True,
|
843
|
-
include_secrets=True,
|
844
|
-
all_namespaces=True,
|
845
|
-
))
|
846
|
-
rollback_ns = gcp.gkebackup.RestorePlan("rollback_ns",
|
847
|
-
name="rollback-ns-rp",
|
848
|
-
location="us-central1",
|
849
|
-
backup_plan=basic.id,
|
850
|
-
cluster=primary.id,
|
851
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
852
|
-
selected_namespaces=gcp.gkebackup.RestorePlanRestoreConfigSelectedNamespacesArgs(
|
853
|
-
namespaces=["my-ns"],
|
854
|
-
),
|
855
|
-
namespaced_resource_restore_mode="DELETE_AND_RESTORE",
|
856
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
857
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
858
|
-
selected_group_kinds=[
|
859
|
-
gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeSelectedGroupKindArgs(
|
860
|
-
resource_group="apiextension.k8s.io",
|
861
|
-
resource_kind="CustomResourceDefinition",
|
862
|
-
),
|
863
|
-
gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeSelectedGroupKindArgs(
|
864
|
-
resource_group="storage.k8s.io",
|
865
|
-
resource_kind="StorageClass",
|
866
|
-
),
|
867
|
-
],
|
868
|
-
),
|
869
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
870
|
-
))
|
505
|
+
admin = gcp.organizations.get_iam_policy(bindings=[{
|
506
|
+
"role": "roles/viewer",
|
507
|
+
"members": ["user:jane@example.com"],
|
508
|
+
}])
|
509
|
+
policy = gcp.gkebackup.RestorePlanIamPolicy("policy",
|
510
|
+
project=all_ns["project"],
|
511
|
+
location=all_ns["location"],
|
512
|
+
name=all_ns["name"],
|
513
|
+
policy_data=admin.policy_data)
|
871
514
|
```
|
872
|
-
### Gkebackup Restoreplan Protected Application
|
873
|
-
|
874
|
-
```python
|
875
|
-
import pulumi
|
876
|
-
import pulumi_gcp as gcp
|
877
515
|
|
878
|
-
|
879
|
-
name="rollback-app-cluster",
|
880
|
-
location="us-central1",
|
881
|
-
initial_node_count=1,
|
882
|
-
workload_identity_config=gcp.container.ClusterWorkloadIdentityConfigArgs(
|
883
|
-
workload_pool="my-project-name.svc.id.goog",
|
884
|
-
),
|
885
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
886
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
887
|
-
enabled=True,
|
888
|
-
),
|
889
|
-
),
|
890
|
-
deletion_protection="",
|
891
|
-
network="default",
|
892
|
-
subnetwork="default")
|
893
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
894
|
-
name="rollback-app",
|
895
|
-
cluster=primary.id,
|
896
|
-
location="us-central1",
|
897
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
898
|
-
include_volume_data=True,
|
899
|
-
include_secrets=True,
|
900
|
-
all_namespaces=True,
|
901
|
-
))
|
902
|
-
rollback_app = gcp.gkebackup.RestorePlan("rollback_app",
|
903
|
-
name="rollback-app-rp",
|
904
|
-
location="us-central1",
|
905
|
-
backup_plan=basic.id,
|
906
|
-
cluster=primary.id,
|
907
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
908
|
-
selected_applications=gcp.gkebackup.RestorePlanRestoreConfigSelectedApplicationsArgs(
|
909
|
-
namespaced_names=[gcp.gkebackup.RestorePlanRestoreConfigSelectedApplicationsNamespacedNameArgs(
|
910
|
-
name="my-app",
|
911
|
-
namespace="my-ns",
|
912
|
-
)],
|
913
|
-
),
|
914
|
-
namespaced_resource_restore_mode="DELETE_AND_RESTORE",
|
915
|
-
volume_data_restore_policy="REUSE_VOLUME_HANDLE_FROM_BACKUP",
|
916
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
917
|
-
no_group_kinds=True,
|
918
|
-
),
|
919
|
-
))
|
920
|
-
```
|
921
|
-
### Gkebackup Restoreplan All Cluster Resources
|
516
|
+
## gkebackup.RestorePlanIamBinding
|
922
517
|
|
923
518
|
```python
|
924
519
|
import pulumi
|
925
520
|
import pulumi_gcp as gcp
|
926
521
|
|
927
|
-
|
928
|
-
|
929
|
-
location="
|
930
|
-
|
931
|
-
|
932
|
-
|
933
|
-
),
|
934
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
935
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
936
|
-
enabled=True,
|
937
|
-
),
|
938
|
-
),
|
939
|
-
deletion_protection="",
|
940
|
-
network="default",
|
941
|
-
subnetwork="default")
|
942
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
943
|
-
name="all-groupkinds",
|
944
|
-
cluster=primary.id,
|
945
|
-
location="us-central1",
|
946
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
947
|
-
include_volume_data=True,
|
948
|
-
include_secrets=True,
|
949
|
-
all_namespaces=True,
|
950
|
-
))
|
951
|
-
all_cluster_resources = gcp.gkebackup.RestorePlan("all_cluster_resources",
|
952
|
-
name="all-groupkinds-rp",
|
953
|
-
location="us-central1",
|
954
|
-
backup_plan=basic.id,
|
955
|
-
cluster=primary.id,
|
956
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
957
|
-
no_namespaces=True,
|
958
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
959
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
960
|
-
all_group_kinds=True,
|
961
|
-
),
|
962
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
963
|
-
))
|
522
|
+
binding = gcp.gkebackup.RestorePlanIamBinding("binding",
|
523
|
+
project=all_ns["project"],
|
524
|
+
location=all_ns["location"],
|
525
|
+
name=all_ns["name"],
|
526
|
+
role="roles/viewer",
|
527
|
+
members=["user:jane@example.com"])
|
964
528
|
```
|
965
|
-
### Gkebackup Restoreplan Rename Namespace
|
966
529
|
|
967
|
-
|
968
|
-
import pulumi
|
969
|
-
import pulumi_gcp as gcp
|
970
|
-
|
971
|
-
primary = gcp.container.Cluster("primary",
|
972
|
-
name="rename-ns-cluster",
|
973
|
-
location="us-central1",
|
974
|
-
initial_node_count=1,
|
975
|
-
workload_identity_config=gcp.container.ClusterWorkloadIdentityConfigArgs(
|
976
|
-
workload_pool="my-project-name.svc.id.goog",
|
977
|
-
),
|
978
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
979
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
980
|
-
enabled=True,
|
981
|
-
),
|
982
|
-
),
|
983
|
-
deletion_protection="",
|
984
|
-
network="default",
|
985
|
-
subnetwork="default")
|
986
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
987
|
-
name="rename-ns",
|
988
|
-
cluster=primary.id,
|
989
|
-
location="us-central1",
|
990
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
991
|
-
include_volume_data=True,
|
992
|
-
include_secrets=True,
|
993
|
-
all_namespaces=True,
|
994
|
-
))
|
995
|
-
rename_ns = gcp.gkebackup.RestorePlan("rename_ns",
|
996
|
-
name="rename-ns-rp",
|
997
|
-
location="us-central1",
|
998
|
-
backup_plan=basic.id,
|
999
|
-
cluster=primary.id,
|
1000
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
1001
|
-
selected_namespaces=gcp.gkebackup.RestorePlanRestoreConfigSelectedNamespacesArgs(
|
1002
|
-
namespaces=["ns1"],
|
1003
|
-
),
|
1004
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
1005
|
-
volume_data_restore_policy="REUSE_VOLUME_HANDLE_FROM_BACKUP",
|
1006
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
1007
|
-
no_group_kinds=True,
|
1008
|
-
),
|
1009
|
-
transformation_rules=[
|
1010
|
-
gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleArgs(
|
1011
|
-
description="rename namespace from ns1 to ns2",
|
1012
|
-
resource_filter=gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterArgs(
|
1013
|
-
group_kinds=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterGroupKindArgs(
|
1014
|
-
resource_kind="Namespace",
|
1015
|
-
)],
|
1016
|
-
json_path=".metadata[?(@.name == 'ns1')]",
|
1017
|
-
),
|
1018
|
-
field_actions=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleFieldActionArgs(
|
1019
|
-
op="REPLACE",
|
1020
|
-
path="/metadata/name",
|
1021
|
-
value="ns2",
|
1022
|
-
)],
|
1023
|
-
),
|
1024
|
-
gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleArgs(
|
1025
|
-
description="move all resources from ns1 to ns2",
|
1026
|
-
resource_filter=gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterArgs(
|
1027
|
-
namespaces=["ns1"],
|
1028
|
-
),
|
1029
|
-
field_actions=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleFieldActionArgs(
|
1030
|
-
op="REPLACE",
|
1031
|
-
path="/metadata/namespace",
|
1032
|
-
value="ns2",
|
1033
|
-
)],
|
1034
|
-
),
|
1035
|
-
],
|
1036
|
-
))
|
1037
|
-
```
|
1038
|
-
### Gkebackup Restoreplan Second Transformation
|
530
|
+
## gkebackup.RestorePlanIamMember
|
1039
531
|
|
1040
532
|
```python
|
1041
533
|
import pulumi
|
1042
534
|
import pulumi_gcp as gcp
|
1043
535
|
|
1044
|
-
|
1045
|
-
|
1046
|
-
location="
|
1047
|
-
|
1048
|
-
|
1049
|
-
|
1050
|
-
),
|
1051
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
1052
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
1053
|
-
enabled=True,
|
1054
|
-
),
|
1055
|
-
),
|
1056
|
-
deletion_protection="",
|
1057
|
-
network="default",
|
1058
|
-
subnetwork="default")
|
1059
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
1060
|
-
name="transform-rule",
|
1061
|
-
cluster=primary.id,
|
1062
|
-
location="us-central1",
|
1063
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
1064
|
-
include_volume_data=True,
|
1065
|
-
include_secrets=True,
|
1066
|
-
all_namespaces=True,
|
1067
|
-
))
|
1068
|
-
transform_rule = gcp.gkebackup.RestorePlan("transform_rule",
|
1069
|
-
name="transform-rule-rp",
|
1070
|
-
description="copy nginx env variables",
|
1071
|
-
labels={
|
1072
|
-
"app": "nginx",
|
1073
|
-
},
|
1074
|
-
location="us-central1",
|
1075
|
-
backup_plan=basic.id,
|
1076
|
-
cluster=primary.id,
|
1077
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
1078
|
-
excluded_namespaces=gcp.gkebackup.RestorePlanRestoreConfigExcludedNamespacesArgs(
|
1079
|
-
namespaces=["my-ns"],
|
1080
|
-
),
|
1081
|
-
namespaced_resource_restore_mode="DELETE_AND_RESTORE",
|
1082
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
1083
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
1084
|
-
excluded_group_kinds=[gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeExcludedGroupKindArgs(
|
1085
|
-
resource_group="apiextension.k8s.io",
|
1086
|
-
resource_kind="CustomResourceDefinition",
|
1087
|
-
)],
|
1088
|
-
),
|
1089
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
1090
|
-
transformation_rules=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleArgs(
|
1091
|
-
description="Copy environment variables from the nginx container to the install init container.",
|
1092
|
-
resource_filter=gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterArgs(
|
1093
|
-
group_kinds=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleResourceFilterGroupKindArgs(
|
1094
|
-
resource_kind="Pod",
|
1095
|
-
resource_group="",
|
1096
|
-
)],
|
1097
|
-
json_path=".metadata[?(@.name == 'nginx')]",
|
1098
|
-
),
|
1099
|
-
field_actions=[gcp.gkebackup.RestorePlanRestoreConfigTransformationRuleFieldActionArgs(
|
1100
|
-
op="COPY",
|
1101
|
-
path="/spec/initContainers/0/env",
|
1102
|
-
from_path="/spec/containers/0/env",
|
1103
|
-
)],
|
1104
|
-
)],
|
1105
|
-
))
|
536
|
+
member = gcp.gkebackup.RestorePlanIamMember("member",
|
537
|
+
project=all_ns["project"],
|
538
|
+
location=all_ns["location"],
|
539
|
+
name=all_ns["name"],
|
540
|
+
role="roles/viewer",
|
541
|
+
member="user:jane@example.com")
|
1106
542
|
```
|
1107
|
-
|
543
|
+
|
544
|
+
## gkebackup.RestorePlanIamPolicy
|
1108
545
|
|
1109
546
|
```python
|
1110
547
|
import pulumi
|
1111
548
|
import pulumi_gcp as gcp
|
1112
549
|
|
1113
|
-
|
1114
|
-
|
1115
|
-
|
1116
|
-
|
1117
|
-
|
1118
|
-
|
1119
|
-
|
1120
|
-
|
1121
|
-
|
1122
|
-
enabled=True,
|
1123
|
-
),
|
1124
|
-
),
|
1125
|
-
deletion_protection="",
|
1126
|
-
network="default",
|
1127
|
-
subnetwork="default")
|
1128
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
1129
|
-
name="gitops-mode",
|
1130
|
-
cluster=primary.id,
|
1131
|
-
location="us-central1",
|
1132
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
1133
|
-
include_volume_data=True,
|
1134
|
-
include_secrets=True,
|
1135
|
-
all_namespaces=True,
|
1136
|
-
))
|
1137
|
-
gitops_mode = gcp.gkebackup.RestorePlan("gitops_mode",
|
1138
|
-
name="gitops-mode",
|
1139
|
-
location="us-central1",
|
1140
|
-
backup_plan=basic.id,
|
1141
|
-
cluster=primary.id,
|
1142
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
1143
|
-
all_namespaces=True,
|
1144
|
-
namespaced_resource_restore_mode="MERGE_SKIP_ON_CONFLICT",
|
1145
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
1146
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
1147
|
-
all_group_kinds=True,
|
1148
|
-
),
|
1149
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
1150
|
-
))
|
550
|
+
admin = gcp.organizations.get_iam_policy(bindings=[{
|
551
|
+
"role": "roles/viewer",
|
552
|
+
"members": ["user:jane@example.com"],
|
553
|
+
}])
|
554
|
+
policy = gcp.gkebackup.RestorePlanIamPolicy("policy",
|
555
|
+
project=all_ns["project"],
|
556
|
+
location=all_ns["location"],
|
557
|
+
name=all_ns["name"],
|
558
|
+
policy_data=admin.policy_data)
|
1151
559
|
```
|
1152
|
-
|
560
|
+
|
561
|
+
## gkebackup.RestorePlanIamBinding
|
1153
562
|
|
1154
563
|
```python
|
1155
564
|
import pulumi
|
1156
565
|
import pulumi_gcp as gcp
|
1157
566
|
|
1158
|
-
|
1159
|
-
|
1160
|
-
location="
|
1161
|
-
|
1162
|
-
|
1163
|
-
|
1164
|
-
),
|
1165
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
1166
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
1167
|
-
enabled=True,
|
1168
|
-
),
|
1169
|
-
),
|
1170
|
-
deletion_protection="",
|
1171
|
-
network="default",
|
1172
|
-
subnetwork="default")
|
1173
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
1174
|
-
name="restore-order",
|
1175
|
-
cluster=primary.id,
|
1176
|
-
location="us-central1",
|
1177
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
1178
|
-
include_volume_data=True,
|
1179
|
-
include_secrets=True,
|
1180
|
-
all_namespaces=True,
|
1181
|
-
))
|
1182
|
-
restore_order = gcp.gkebackup.RestorePlan("restore_order",
|
1183
|
-
name="restore-order",
|
1184
|
-
location="us-central1",
|
1185
|
-
backup_plan=basic.id,
|
1186
|
-
cluster=primary.id,
|
1187
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
1188
|
-
all_namespaces=True,
|
1189
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
1190
|
-
volume_data_restore_policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
1191
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
1192
|
-
all_group_kinds=True,
|
1193
|
-
),
|
1194
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
1195
|
-
restore_order=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderArgs(
|
1196
|
-
group_kind_dependencies=[
|
1197
|
-
gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencyArgs(
|
1198
|
-
satisfying=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencySatisfyingArgs(
|
1199
|
-
resource_group="stable.example.com",
|
1200
|
-
resource_kind="kindA",
|
1201
|
-
),
|
1202
|
-
requiring=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencyRequiringArgs(
|
1203
|
-
resource_group="stable.example.com",
|
1204
|
-
resource_kind="kindB",
|
1205
|
-
),
|
1206
|
-
),
|
1207
|
-
gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencyArgs(
|
1208
|
-
satisfying=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencySatisfyingArgs(
|
1209
|
-
resource_group="stable.example.com",
|
1210
|
-
resource_kind="kindB",
|
1211
|
-
),
|
1212
|
-
requiring=gcp.gkebackup.RestorePlanRestoreConfigRestoreOrderGroupKindDependencyRequiringArgs(
|
1213
|
-
resource_group="stable.example.com",
|
1214
|
-
resource_kind="kindC",
|
1215
|
-
),
|
1216
|
-
),
|
1217
|
-
],
|
1218
|
-
),
|
1219
|
-
))
|
567
|
+
binding = gcp.gkebackup.RestorePlanIamBinding("binding",
|
568
|
+
project=all_ns["project"],
|
569
|
+
location=all_ns["location"],
|
570
|
+
name=all_ns["name"],
|
571
|
+
role="roles/viewer",
|
572
|
+
members=["user:jane@example.com"])
|
1220
573
|
```
|
1221
|
-
|
574
|
+
|
575
|
+
## gkebackup.RestorePlanIamMember
|
1222
576
|
|
1223
577
|
```python
|
1224
578
|
import pulumi
|
1225
579
|
import pulumi_gcp as gcp
|
1226
580
|
|
1227
|
-
|
1228
|
-
|
1229
|
-
location="
|
1230
|
-
|
1231
|
-
|
1232
|
-
|
1233
|
-
),
|
1234
|
-
addons_config=gcp.container.ClusterAddonsConfigArgs(
|
1235
|
-
gke_backup_agent_config=gcp.container.ClusterAddonsConfigGkeBackupAgentConfigArgs(
|
1236
|
-
enabled=True,
|
1237
|
-
),
|
1238
|
-
),
|
1239
|
-
deletion_protection="",
|
1240
|
-
network="default",
|
1241
|
-
subnetwork="default")
|
1242
|
-
basic = gcp.gkebackup.BackupPlan("basic",
|
1243
|
-
name="volume-res",
|
1244
|
-
cluster=primary.id,
|
1245
|
-
location="us-central1",
|
1246
|
-
backup_config=gcp.gkebackup.BackupPlanBackupConfigArgs(
|
1247
|
-
include_volume_data=True,
|
1248
|
-
include_secrets=True,
|
1249
|
-
all_namespaces=True,
|
1250
|
-
))
|
1251
|
-
volume_res = gcp.gkebackup.RestorePlan("volume_res",
|
1252
|
-
name="volume-res",
|
1253
|
-
location="us-central1",
|
1254
|
-
backup_plan=basic.id,
|
1255
|
-
cluster=primary.id,
|
1256
|
-
restore_config=gcp.gkebackup.RestorePlanRestoreConfigArgs(
|
1257
|
-
all_namespaces=True,
|
1258
|
-
namespaced_resource_restore_mode="FAIL_ON_CONFLICT",
|
1259
|
-
volume_data_restore_policy="NO_VOLUME_DATA_RESTORATION",
|
1260
|
-
cluster_resource_restore_scope=gcp.gkebackup.RestorePlanRestoreConfigClusterResourceRestoreScopeArgs(
|
1261
|
-
all_group_kinds=True,
|
1262
|
-
),
|
1263
|
-
cluster_resource_conflict_policy="USE_EXISTING_VERSION",
|
1264
|
-
volume_data_restore_policy_bindings=[gcp.gkebackup.RestorePlanRestoreConfigVolumeDataRestorePolicyBindingArgs(
|
1265
|
-
policy="RESTORE_VOLUME_DATA_FROM_BACKUP",
|
1266
|
-
volume_type="GCE_PERSISTENT_DISK",
|
1267
|
-
)],
|
1268
|
-
))
|
581
|
+
member = gcp.gkebackup.RestorePlanIamMember("member",
|
582
|
+
project=all_ns["project"],
|
583
|
+
location=all_ns["location"],
|
584
|
+
name=all_ns["name"],
|
585
|
+
role="roles/viewer",
|
586
|
+
member="user:jane@example.com")
|
1269
587
|
```
|
1270
588
|
|
1271
589
|
## Import
|
1272
590
|
|
1273
|
-
|
591
|
+
For all import syntaxes, the "resource in question" can take any of the following forms:
|
592
|
+
|
593
|
+
* projects/{{project}}/locations/{{location}}/restorePlans/{{name}}
|
594
|
+
|
595
|
+
* {{project}}/{{location}}/{{name}}
|
596
|
+
|
597
|
+
* {{location}}/{{name}}
|
1274
598
|
|
1275
|
-
*
|
599
|
+
* {{name}}
|
1276
600
|
|
1277
|
-
|
601
|
+
Any variables not passed in the import command will be taken from the provider configuration.
|
1278
602
|
|
1279
|
-
|
603
|
+
Backup for GKE restoreplan IAM resources can be imported using the resource identifiers, role, and member.
|
1280
604
|
|
1281
|
-
|
605
|
+
IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
|
1282
606
|
|
1283
607
|
```sh
|
1284
|
-
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding
|
608
|
+
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding editor "projects/{{project}}/locations/{{location}}/restorePlans/{{restore_plan}} roles/viewer user:jane@example.com"
|
1285
609
|
```
|
1286
610
|
|
611
|
+
IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
|
612
|
+
|
1287
613
|
```sh
|
1288
|
-
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding
|
614
|
+
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding editor "projects/{{project}}/locations/{{location}}/restorePlans/{{restore_plan}} roles/viewer"
|
1289
615
|
```
|
1290
616
|
|
617
|
+
IAM policy imports use the identifier of the resource in question, e.g.
|
618
|
+
|
1291
619
|
```sh
|
1292
|
-
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding
|
620
|
+
$ pulumi import gcp:gkebackup/restorePlanIamBinding:RestorePlanIamBinding editor projects/{{project}}/locations/{{location}}/restorePlans/{{restore_plan}}
|
1293
621
|
```
|
1294
622
|
|
623
|
+
-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
|
624
|
+
|
625
|
+
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
626
|
+
|
1295
627
|
:param str resource_name: The name of the resource.
|
1296
628
|
:param RestorePlanIamBindingArgs args: The arguments to use to populate this resource's properties.
|
1297
629
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
@@ -1307,7 +639,7 @@ class RestorePlanIamBinding(pulumi.CustomResource):
|
|
1307
639
|
def _internal_init(__self__,
|
1308
640
|
resource_name: str,
|
1309
641
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1310
|
-
condition: Optional[pulumi.Input[
|
642
|
+
condition: Optional[pulumi.Input[Union['RestorePlanIamBindingConditionArgs', 'RestorePlanIamBindingConditionArgsDict']]] = None,
|
1311
643
|
location: Optional[pulumi.Input[str]] = None,
|
1312
644
|
members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1313
645
|
name: Optional[pulumi.Input[str]] = None,
|
@@ -1343,7 +675,7 @@ class RestorePlanIamBinding(pulumi.CustomResource):
|
|
1343
675
|
def get(resource_name: str,
|
1344
676
|
id: pulumi.Input[str],
|
1345
677
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1346
|
-
condition: Optional[pulumi.Input[
|
678
|
+
condition: Optional[pulumi.Input[Union['RestorePlanIamBindingConditionArgs', 'RestorePlanIamBindingConditionArgsDict']]] = None,
|
1347
679
|
etag: Optional[pulumi.Input[str]] = None,
|
1348
680
|
location: Optional[pulumi.Input[str]] = None,
|
1349
681
|
members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
@@ -1357,8 +689,28 @@ class RestorePlanIamBinding(pulumi.CustomResource):
|
|
1357
689
|
:param str resource_name: The unique name of the resulting resource.
|
1358
690
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
1359
691
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
692
|
+
:param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
|
1360
693
|
:param pulumi.Input[str] location: The region of the Restore Plan.
|
1361
|
-
|
694
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
695
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
696
|
+
location is specified, it is taken from the provider configuration.
|
697
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] members: Identities that will be granted the privilege in `role`.
|
698
|
+
Each entry can have one of the following values:
|
699
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
700
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
701
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
702
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
703
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
704
|
+
* **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
|
705
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
706
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
707
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
708
|
+
:param pulumi.Input[str] name: Used to find the parent resource to bind the IAM policy to
|
709
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
710
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
711
|
+
:param pulumi.Input[str] role: The role that should be applied. Only one
|
712
|
+
`gkebackup.RestorePlanIamBinding` can be used per role. Note that custom roles must be of the format
|
713
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
1362
714
|
"""
|
1363
715
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
1364
716
|
|
@@ -1381,6 +733,9 @@ class RestorePlanIamBinding(pulumi.CustomResource):
|
|
1381
733
|
@property
|
1382
734
|
@pulumi.getter
|
1383
735
|
def etag(self) -> pulumi.Output[str]:
|
736
|
+
"""
|
737
|
+
(Computed) The etag of the IAM policy.
|
738
|
+
"""
|
1384
739
|
return pulumi.get(self, "etag")
|
1385
740
|
|
1386
741
|
@property
|
@@ -1388,29 +743,54 @@ class RestorePlanIamBinding(pulumi.CustomResource):
|
|
1388
743
|
def location(self) -> pulumi.Output[str]:
|
1389
744
|
"""
|
1390
745
|
The region of the Restore Plan.
|
746
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
747
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
748
|
+
location is specified, it is taken from the provider configuration.
|
1391
749
|
"""
|
1392
750
|
return pulumi.get(self, "location")
|
1393
751
|
|
1394
752
|
@property
|
1395
753
|
@pulumi.getter
|
1396
754
|
def members(self) -> pulumi.Output[Sequence[str]]:
|
755
|
+
"""
|
756
|
+
Identities that will be granted the privilege in `role`.
|
757
|
+
Each entry can have one of the following values:
|
758
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
759
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
760
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
761
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
762
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
763
|
+
* **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
|
764
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
765
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
766
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
767
|
+
"""
|
1397
768
|
return pulumi.get(self, "members")
|
1398
769
|
|
1399
770
|
@property
|
1400
771
|
@pulumi.getter
|
1401
772
|
def name(self) -> pulumi.Output[str]:
|
1402
773
|
"""
|
1403
|
-
|
774
|
+
Used to find the parent resource to bind the IAM policy to
|
1404
775
|
"""
|
1405
776
|
return pulumi.get(self, "name")
|
1406
777
|
|
1407
778
|
@property
|
1408
779
|
@pulumi.getter
|
1409
780
|
def project(self) -> pulumi.Output[str]:
|
781
|
+
"""
|
782
|
+
The ID of the project in which the resource belongs.
|
783
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
784
|
+
"""
|
1410
785
|
return pulumi.get(self, "project")
|
1411
786
|
|
1412
787
|
@property
|
1413
788
|
@pulumi.getter
|
1414
789
|
def role(self) -> pulumi.Output[str]:
|
790
|
+
"""
|
791
|
+
The role that should be applied. Only one
|
792
|
+
`gkebackup.RestorePlanIamBinding` can be used per role. Note that custom roles must be of the format
|
793
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
794
|
+
"""
|
1415
795
|
return pulumi.get(self, "role")
|
1416
796
|
|