pulumi-gcp 7.24.0a1716588893__py3-none-any.whl → 7.25.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pulumi_gcp/__init__.py +88 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +0 -64
- pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +0 -70
- pulumi_gcp/alloydb/backup.py +50 -42
- pulumi_gcp/alloydb/cluster.py +56 -48
- pulumi_gcp/alloydb/instance.py +50 -42
- pulumi_gcp/alloydb/user.py +32 -24
- pulumi_gcp/apigateway/api_config.py +0 -114
- pulumi_gcp/apigateway/gateway.py +0 -44
- pulumi_gcp/apigee/addons_config.py +14 -4
- pulumi_gcp/apigee/endpoint_attachment.py +4 -2
- pulumi_gcp/apigee/env_group.py +4 -2
- pulumi_gcp/apigee/environment.py +4 -2
- pulumi_gcp/apigee/instance.py +22 -8
- pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +26 -10
- pulumi_gcp/apigee/nat_address.py +10 -2
- pulumi_gcp/apigee/organization.py +18 -6
- pulumi_gcp/apigee/sync_authorization.py +8 -4
- pulumi_gcp/apigee/target_server.py +26 -10
- pulumi_gcp/appengine/_inputs.py +18 -0
- pulumi_gcp/appengine/domain_mapping.py +1 -1
- pulumi_gcp/appengine/outputs.py +16 -0
- pulumi_gcp/apphub/service.py +40 -20
- pulumi_gcp/apphub/service_project_attachment.py +16 -8
- pulumi_gcp/apphub/workload.py +0 -418
- pulumi_gcp/applicationintegration/auth_config.py +4 -2
- pulumi_gcp/artifactregistry/repository.py +14 -12
- pulumi_gcp/backupdisasterrecovery/management_server.py +4 -2
- pulumi_gcp/bigquery/_inputs.py +286 -2
- pulumi_gcp/bigquery/data_transfer_config.py +8 -4
- pulumi_gcp/bigquery/job.py +22 -16
- pulumi_gcp/bigquery/outputs.py +289 -2
- pulumi_gcp/bigquery/table.py +77 -35
- pulumi_gcp/certificateauthority/authority.py +10 -2
- pulumi_gcp/certificateauthority/certificate.py +8 -4
- pulumi_gcp/certificatemanager/certificate.py +84 -80
- pulumi_gcp/certificatemanager/certificate_issuance_config.py +32 -30
- pulumi_gcp/cloudbuild/bitbucket_server_config.py +12 -6
- pulumi_gcp/cloudbuild/trigger.py +22 -14
- pulumi_gcp/cloudbuild/worker_pool.py +12 -6
- pulumi_gcp/cloudbuildv2/connection.py +10 -2
- pulumi_gcp/cloudbuildv2/repository.py +10 -2
- pulumi_gcp/cloudfunctionsv2/function.py +110 -66
- pulumi_gcp/cloudids/endpoint.py +4 -2
- pulumi_gcp/cloudrun/_inputs.py +80 -4
- pulumi_gcp/cloudrun/outputs.py +137 -4
- pulumi_gcp/cloudrunv2/job.py +32 -20
- pulumi_gcp/cloudrunv2/service.py +28 -20
- pulumi_gcp/composer/user_workloads_secret.py +4 -4
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +398 -176
- pulumi_gcp/compute/forwarding_rule.py +225 -817
- pulumi_gcp/compute/get_subnetworks.py +157 -0
- pulumi_gcp/compute/global_forwarding_rule.py +0 -766
- pulumi_gcp/compute/instance_group.py +0 -100
- pulumi_gcp/compute/instance_group_membership.py +2 -2
- pulumi_gcp/compute/interconnect_attachment.py +82 -0
- pulumi_gcp/compute/network_endpoint.py +2 -2
- pulumi_gcp/compute/network_endpoint_list.py +2 -2
- pulumi_gcp/compute/outputs.py +609 -161
- pulumi_gcp/compute/packet_mirroring.py +4 -2
- pulumi_gcp/compute/region_security_policy_rule.py +4 -2
- pulumi_gcp/compute/region_ssl_certificate.py +0 -188
- pulumi_gcp/compute/region_ssl_policy.py +39 -40
- pulumi_gcp/compute/route.py +10 -2
- pulumi_gcp/compute/security_policy_rule.py +55 -1
- pulumi_gcp/compute/ssl_certificate.py +0 -166
- pulumi_gcp/compute/target_instance.py +4 -2
- pulumi_gcp/compute/vpn_gateway.py +12 -2
- pulumi_gcp/compute/vpn_tunnel.py +26 -16
- pulumi_gcp/container/_inputs.py +560 -0
- pulumi_gcp/container/outputs.py +1106 -51
- pulumi_gcp/databasemigrationservice/connection_profile.py +32 -16
- pulumi_gcp/datacatalog/policy_tag.py +4 -2
- pulumi_gcp/datafusion/instance.py +14 -12
- pulumi_gcp/dataplex/__init__.py +10 -0
- pulumi_gcp/dataplex/_inputs.py +160 -0
- pulumi_gcp/dataplex/aspect_type.py +1077 -0
- pulumi_gcp/dataplex/aspect_type_iam_binding.py +765 -0
- pulumi_gcp/dataplex/aspect_type_iam_member.py +765 -0
- pulumi_gcp/dataplex/aspect_type_iam_policy.py +604 -0
- pulumi_gcp/dataplex/asset.py +4 -2
- pulumi_gcp/dataplex/datascan.py +16 -14
- pulumi_gcp/dataplex/entry_group.py +722 -0
- pulumi_gcp/dataplex/entry_group_iam_binding.py +765 -0
- pulumi_gcp/dataplex/entry_group_iam_member.py +765 -0
- pulumi_gcp/dataplex/entry_group_iam_policy.py +604 -0
- pulumi_gcp/dataplex/get_aspect_type_iam_policy.py +164 -0
- pulumi_gcp/dataplex/get_entry_group_iam_policy.py +164 -0
- pulumi_gcp/dataplex/outputs.py +112 -0
- pulumi_gcp/datastore/data_store_index.py +4 -2
- pulumi_gcp/datastream/connection_profile.py +47 -0
- pulumi_gcp/datastream/private_connection.py +47 -0
- pulumi_gcp/datastream/stream.py +63 -10
- pulumi_gcp/diagflow/cx_test_case.py +4 -4
- pulumi_gcp/diagflow/entity_type.py +4 -2
- pulumi_gcp/diagflow/fulfillment.py +4 -2
- pulumi_gcp/diagflow/intent.py +8 -4
- pulumi_gcp/dns/get_managed_zone.py +3 -3
- pulumi_gcp/dns/managed_zone.py +7 -7
- pulumi_gcp/dns/outputs.py +2 -2
- pulumi_gcp/edgecontainer/node_pool.py +4 -2
- pulumi_gcp/edgecontainer/vpn_connection.py +4 -2
- pulumi_gcp/eventarc/channel.py +4 -2
- pulumi_gcp/eventarc/google_channel_config.py +4 -2
- pulumi_gcp/firebase/app_check_app_attest_config.py +16 -8
- pulumi_gcp/firebase/app_check_debug_token.py +8 -4
- pulumi_gcp/firebase/app_check_device_check_config.py +8 -4
- pulumi_gcp/firebase/app_check_play_integrity_config.py +16 -8
- pulumi_gcp/firebase/app_check_recaptcha_enterprise_config.py +8 -4
- pulumi_gcp/firebase/app_check_recaptcha_v3_config.py +8 -4
- pulumi_gcp/firebase/app_check_service_config.py +12 -6
- pulumi_gcp/firebase/database_instance.py +4 -2
- pulumi_gcp/firebaserules/release.py +0 -98
- pulumi_gcp/firestore/database.py +24 -20
- pulumi_gcp/firestore/document.py +24 -12
- pulumi_gcp/folder/access_approval_settings.py +4 -2
- pulumi_gcp/gkehub/membership_binding.py +14 -4
- pulumi_gcp/gkehub/membership_rbac_role_binding.py +8 -4
- pulumi_gcp/gkehub/namespace.py +4 -2
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -2
- pulumi_gcp/integrationconnectors/connection.py +4 -2
- pulumi_gcp/integrationconnectors/managed_zone.py +18 -6
- pulumi_gcp/kms/__init__.py +2 -0
- pulumi_gcp/kms/autokey_config.py +366 -0
- pulumi_gcp/kms/key_handle.py +548 -0
- pulumi_gcp/logging/folder_settings.py +12 -10
- pulumi_gcp/logging/linked_dataset.py +4 -2
- pulumi_gcp/logging/organization_settings.py +12 -10
- pulumi_gcp/logging/project_bucket_config.py +4 -2
- pulumi_gcp/looker/instance.py +12 -10
- pulumi_gcp/netapp/volume_replication.py +4 -2
- pulumi_gcp/netapp/volume_snapshot.py +4 -2
- pulumi_gcp/networkconnectivity/internal_range.py +14 -12
- pulumi_gcp/networksecurity/gateway_security_policy.py +16 -4
- pulumi_gcp/networksecurity/tls_inspection_policy.py +22 -4
- pulumi_gcp/networkservices/__init__.py +1 -0
- pulumi_gcp/networkservices/_inputs.py +245 -27
- pulumi_gcp/networkservices/gateway.py +12 -6
- pulumi_gcp/networkservices/lb_route_extension.py +663 -0
- pulumi_gcp/networkservices/lb_traffic_extension.py +28 -540
- pulumi_gcp/networkservices/outputs.py +251 -20
- pulumi_gcp/organizations/access_approval_settings.py +4 -2
- pulumi_gcp/orgpolicy/policy.py +2 -2
- pulumi_gcp/parallelstore/instance.py +20 -18
- pulumi_gcp/projects/access_approval_settings.py +4 -2
- pulumi_gcp/pubsub/_inputs.py +16 -0
- pulumi_gcp/pubsub/outputs.py +25 -0
- pulumi_gcp/pubsub/schema.py +4 -2
- pulumi_gcp/pubsub/subscription.py +102 -66
- pulumi_gcp/pubsub/topic.py +4 -2
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/cluster.py +30 -28
- pulumi_gcp/redis/instance.py +4 -2
- pulumi_gcp/secretmanager/secret.py +4 -2
- pulumi_gcp/securesourcemanager/instance.py +20 -8
- pulumi_gcp/securitycenter/instance_iam_binding.py +14 -12
- pulumi_gcp/securitycenter/instance_iam_member.py +14 -12
- pulumi_gcp/securitycenter/instance_iam_policy.py +14 -12
- pulumi_gcp/serviceaccount/key.py +2 -2
- pulumi_gcp/sql/database_instance.py +4 -2
- pulumi_gcp/sql/user.py +4 -4
- pulumi_gcp/storage/get_project_service_account.py +4 -2
- pulumi_gcp/storage/insights_report_config.py +12 -10
- pulumi_gcp/storage/notification.py +18 -16
- pulumi_gcp/storage/transfer_agent_pool.py +4 -2
- pulumi_gcp/storage/transfer_job.py +14 -4
- pulumi_gcp/tpu/_inputs.py +2 -2
- pulumi_gcp/tpu/outputs.py +2 -2
- pulumi_gcp/tpu/v2_vm.py +10 -6
- pulumi_gcp/vertex/ai_endpoint.py +24 -22
- pulumi_gcp/vertex/ai_index_endpoint.py +20 -18
- pulumi_gcp/vertex/ai_tensorboard.py +14 -12
- pulumi_gcp/vmwareengine/external_address.py +4 -2
- pulumi_gcp/vmwareengine/network.py +8 -4
- {pulumi_gcp-7.24.0a1716588893.dist-info → pulumi_gcp-7.25.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.24.0a1716588893.dist-info → pulumi_gcp-7.25.0.dist-info}/RECORD +179 -165
- {pulumi_gcp-7.24.0a1716588893.dist-info → pulumi_gcp-7.25.0.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.24.0a1716588893.dist-info → pulumi_gcp-7.25.0.dist-info}/top_level.txt +0 -0
@@ -955,6 +955,15 @@ class Subscription(pulumi.CustomResource):
|
|
955
955
|
import pulumi_gcp as gcp
|
956
956
|
|
957
957
|
example = gcp.pubsub.Topic("example", name="example-topic")
|
958
|
+
project = gcp.organizations.get_project()
|
959
|
+
viewer = gcp.projects.IAMMember("viewer",
|
960
|
+
project=project.project_id,
|
961
|
+
role="roles/bigquery.metadataViewer",
|
962
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
963
|
+
editor = gcp.projects.IAMMember("editor",
|
964
|
+
project=project.project_id,
|
965
|
+
role="roles/bigquery.dataEditor",
|
966
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
958
967
|
test = gcp.bigquery.Dataset("test", dataset_id="example_dataset")
|
959
968
|
test_table = gcp.bigquery.Table("test",
|
960
969
|
deletion_protection=False,
|
@@ -974,7 +983,19 @@ class Subscription(pulumi.CustomResource):
|
|
974
983
|
topic=example.id,
|
975
984
|
bigquery_config=gcp.pubsub.SubscriptionBigqueryConfigArgs(
|
976
985
|
table=pulumi.Output.all(test_table.project, test_table.dataset_id, test_table.table_id).apply(lambda project, dataset_id, table_id: f"{project}.{dataset_id}.{table_id}"),
|
977
|
-
)
|
986
|
+
),
|
987
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
988
|
+
viewer,
|
989
|
+
editor,
|
990
|
+
]))
|
991
|
+
```
|
992
|
+
### Pubsub Subscription Push Bq Table Schema
|
993
|
+
|
994
|
+
```python
|
995
|
+
import pulumi
|
996
|
+
import pulumi_gcp as gcp
|
997
|
+
|
998
|
+
example = gcp.pubsub.Topic("example", name="example-topic")
|
978
999
|
project = gcp.organizations.get_project()
|
979
1000
|
viewer = gcp.projects.IAMMember("viewer",
|
980
1001
|
project=project.project_id,
|
@@ -984,14 +1005,6 @@ class Subscription(pulumi.CustomResource):
|
|
984
1005
|
project=project.project_id,
|
985
1006
|
role="roles/bigquery.dataEditor",
|
986
1007
|
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
987
|
-
```
|
988
|
-
### Pubsub Subscription Push Bq Table Schema
|
989
|
-
|
990
|
-
```python
|
991
|
-
import pulumi
|
992
|
-
import pulumi_gcp as gcp
|
993
|
-
|
994
|
-
example = gcp.pubsub.Topic("example", name="example-topic")
|
995
1008
|
test = gcp.bigquery.Dataset("test", dataset_id="example_dataset")
|
996
1009
|
test_table = gcp.bigquery.Table("test",
|
997
1010
|
deletion_protection=False,
|
@@ -1012,16 +1025,11 @@ class Subscription(pulumi.CustomResource):
|
|
1012
1025
|
bigquery_config=gcp.pubsub.SubscriptionBigqueryConfigArgs(
|
1013
1026
|
table=pulumi.Output.all(test_table.project, test_table.dataset_id, test_table.table_id).apply(lambda project, dataset_id, table_id: f"{project}.{dataset_id}.{table_id}"),
|
1014
1027
|
use_table_schema=True,
|
1015
|
-
)
|
1016
|
-
|
1017
|
-
|
1018
|
-
|
1019
|
-
|
1020
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1021
|
-
editor = gcp.projects.IAMMember("editor",
|
1022
|
-
project=project.project_id,
|
1023
|
-
role="roles/bigquery.dataEditor",
|
1024
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1028
|
+
),
|
1029
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
1030
|
+
viewer,
|
1031
|
+
editor,
|
1032
|
+
]))
|
1025
1033
|
```
|
1026
1034
|
### Pubsub Subscription Push Cloudstorage
|
1027
1035
|
|
@@ -1034,21 +1042,26 @@ class Subscription(pulumi.CustomResource):
|
|
1034
1042
|
location="US",
|
1035
1043
|
uniform_bucket_level_access=True)
|
1036
1044
|
example_topic = gcp.pubsub.Topic("example", name="example-topic")
|
1045
|
+
project = gcp.organizations.get_project()
|
1046
|
+
admin = gcp.storage.BucketIAMMember("admin",
|
1047
|
+
bucket=example.name,
|
1048
|
+
role="roles/storage.admin",
|
1049
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1037
1050
|
example_subscription = gcp.pubsub.Subscription("example",
|
1038
1051
|
name="example-subscription",
|
1039
1052
|
topic=example_topic.id,
|
1040
1053
|
cloud_storage_config=gcp.pubsub.SubscriptionCloudStorageConfigArgs(
|
1041
1054
|
bucket=example.name,
|
1042
1055
|
filename_prefix="pre-",
|
1043
|
-
filename_suffix="-
|
1056
|
+
filename_suffix="-_40785",
|
1057
|
+
filename_datetime_format="YYYY-MM-DD/hh_mm_ssZ",
|
1044
1058
|
max_bytes=1000,
|
1045
1059
|
max_duration="300s",
|
1046
|
-
)
|
1047
|
-
|
1048
|
-
|
1049
|
-
|
1050
|
-
|
1051
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1060
|
+
),
|
1061
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
1062
|
+
example,
|
1063
|
+
admin,
|
1064
|
+
]))
|
1052
1065
|
```
|
1053
1066
|
### Pubsub Subscription Push Cloudstorage Avro
|
1054
1067
|
|
@@ -1061,24 +1074,29 @@ class Subscription(pulumi.CustomResource):
|
|
1061
1074
|
location="US",
|
1062
1075
|
uniform_bucket_level_access=True)
|
1063
1076
|
example_topic = gcp.pubsub.Topic("example", name="example-topic")
|
1077
|
+
project = gcp.organizations.get_project()
|
1078
|
+
admin = gcp.storage.BucketIAMMember("admin",
|
1079
|
+
bucket=example.name,
|
1080
|
+
role="roles/storage.admin",
|
1081
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1064
1082
|
example_subscription = gcp.pubsub.Subscription("example",
|
1065
1083
|
name="example-subscription",
|
1066
1084
|
topic=example_topic.id,
|
1067
1085
|
cloud_storage_config=gcp.pubsub.SubscriptionCloudStorageConfigArgs(
|
1068
1086
|
bucket=example.name,
|
1069
1087
|
filename_prefix="pre-",
|
1070
|
-
filename_suffix="-
|
1088
|
+
filename_suffix="-_79169",
|
1089
|
+
filename_datetime_format="YYYY-MM-DD/hh_mm_ssZ",
|
1071
1090
|
max_bytes=1000,
|
1072
1091
|
max_duration="300s",
|
1073
1092
|
avro_config=gcp.pubsub.SubscriptionCloudStorageConfigAvroConfigArgs(
|
1074
1093
|
write_metadata=True,
|
1075
1094
|
),
|
1076
|
-
)
|
1077
|
-
|
1078
|
-
|
1079
|
-
|
1080
|
-
|
1081
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1095
|
+
),
|
1096
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
1097
|
+
example,
|
1098
|
+
admin,
|
1099
|
+
]))
|
1082
1100
|
```
|
1083
1101
|
|
1084
1102
|
## Import
|
@@ -1282,6 +1300,15 @@ class Subscription(pulumi.CustomResource):
|
|
1282
1300
|
import pulumi_gcp as gcp
|
1283
1301
|
|
1284
1302
|
example = gcp.pubsub.Topic("example", name="example-topic")
|
1303
|
+
project = gcp.organizations.get_project()
|
1304
|
+
viewer = gcp.projects.IAMMember("viewer",
|
1305
|
+
project=project.project_id,
|
1306
|
+
role="roles/bigquery.metadataViewer",
|
1307
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1308
|
+
editor = gcp.projects.IAMMember("editor",
|
1309
|
+
project=project.project_id,
|
1310
|
+
role="roles/bigquery.dataEditor",
|
1311
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1285
1312
|
test = gcp.bigquery.Dataset("test", dataset_id="example_dataset")
|
1286
1313
|
test_table = gcp.bigquery.Table("test",
|
1287
1314
|
deletion_protection=False,
|
@@ -1301,7 +1328,19 @@ class Subscription(pulumi.CustomResource):
|
|
1301
1328
|
topic=example.id,
|
1302
1329
|
bigquery_config=gcp.pubsub.SubscriptionBigqueryConfigArgs(
|
1303
1330
|
table=pulumi.Output.all(test_table.project, test_table.dataset_id, test_table.table_id).apply(lambda project, dataset_id, table_id: f"{project}.{dataset_id}.{table_id}"),
|
1304
|
-
)
|
1331
|
+
),
|
1332
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
1333
|
+
viewer,
|
1334
|
+
editor,
|
1335
|
+
]))
|
1336
|
+
```
|
1337
|
+
### Pubsub Subscription Push Bq Table Schema
|
1338
|
+
|
1339
|
+
```python
|
1340
|
+
import pulumi
|
1341
|
+
import pulumi_gcp as gcp
|
1342
|
+
|
1343
|
+
example = gcp.pubsub.Topic("example", name="example-topic")
|
1305
1344
|
project = gcp.organizations.get_project()
|
1306
1345
|
viewer = gcp.projects.IAMMember("viewer",
|
1307
1346
|
project=project.project_id,
|
@@ -1311,14 +1350,6 @@ class Subscription(pulumi.CustomResource):
|
|
1311
1350
|
project=project.project_id,
|
1312
1351
|
role="roles/bigquery.dataEditor",
|
1313
1352
|
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1314
|
-
```
|
1315
|
-
### Pubsub Subscription Push Bq Table Schema
|
1316
|
-
|
1317
|
-
```python
|
1318
|
-
import pulumi
|
1319
|
-
import pulumi_gcp as gcp
|
1320
|
-
|
1321
|
-
example = gcp.pubsub.Topic("example", name="example-topic")
|
1322
1353
|
test = gcp.bigquery.Dataset("test", dataset_id="example_dataset")
|
1323
1354
|
test_table = gcp.bigquery.Table("test",
|
1324
1355
|
deletion_protection=False,
|
@@ -1339,16 +1370,11 @@ class Subscription(pulumi.CustomResource):
|
|
1339
1370
|
bigquery_config=gcp.pubsub.SubscriptionBigqueryConfigArgs(
|
1340
1371
|
table=pulumi.Output.all(test_table.project, test_table.dataset_id, test_table.table_id).apply(lambda project, dataset_id, table_id: f"{project}.{dataset_id}.{table_id}"),
|
1341
1372
|
use_table_schema=True,
|
1342
|
-
)
|
1343
|
-
|
1344
|
-
|
1345
|
-
|
1346
|
-
|
1347
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1348
|
-
editor = gcp.projects.IAMMember("editor",
|
1349
|
-
project=project.project_id,
|
1350
|
-
role="roles/bigquery.dataEditor",
|
1351
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1373
|
+
),
|
1374
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
1375
|
+
viewer,
|
1376
|
+
editor,
|
1377
|
+
]))
|
1352
1378
|
```
|
1353
1379
|
### Pubsub Subscription Push Cloudstorage
|
1354
1380
|
|
@@ -1361,21 +1387,26 @@ class Subscription(pulumi.CustomResource):
|
|
1361
1387
|
location="US",
|
1362
1388
|
uniform_bucket_level_access=True)
|
1363
1389
|
example_topic = gcp.pubsub.Topic("example", name="example-topic")
|
1390
|
+
project = gcp.organizations.get_project()
|
1391
|
+
admin = gcp.storage.BucketIAMMember("admin",
|
1392
|
+
bucket=example.name,
|
1393
|
+
role="roles/storage.admin",
|
1394
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1364
1395
|
example_subscription = gcp.pubsub.Subscription("example",
|
1365
1396
|
name="example-subscription",
|
1366
1397
|
topic=example_topic.id,
|
1367
1398
|
cloud_storage_config=gcp.pubsub.SubscriptionCloudStorageConfigArgs(
|
1368
1399
|
bucket=example.name,
|
1369
1400
|
filename_prefix="pre-",
|
1370
|
-
filename_suffix="-
|
1401
|
+
filename_suffix="-_40785",
|
1402
|
+
filename_datetime_format="YYYY-MM-DD/hh_mm_ssZ",
|
1371
1403
|
max_bytes=1000,
|
1372
1404
|
max_duration="300s",
|
1373
|
-
)
|
1374
|
-
|
1375
|
-
|
1376
|
-
|
1377
|
-
|
1378
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1405
|
+
),
|
1406
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
1407
|
+
example,
|
1408
|
+
admin,
|
1409
|
+
]))
|
1379
1410
|
```
|
1380
1411
|
### Pubsub Subscription Push Cloudstorage Avro
|
1381
1412
|
|
@@ -1388,24 +1419,29 @@ class Subscription(pulumi.CustomResource):
|
|
1388
1419
|
location="US",
|
1389
1420
|
uniform_bucket_level_access=True)
|
1390
1421
|
example_topic = gcp.pubsub.Topic("example", name="example-topic")
|
1422
|
+
project = gcp.organizations.get_project()
|
1423
|
+
admin = gcp.storage.BucketIAMMember("admin",
|
1424
|
+
bucket=example.name,
|
1425
|
+
role="roles/storage.admin",
|
1426
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1391
1427
|
example_subscription = gcp.pubsub.Subscription("example",
|
1392
1428
|
name="example-subscription",
|
1393
1429
|
topic=example_topic.id,
|
1394
1430
|
cloud_storage_config=gcp.pubsub.SubscriptionCloudStorageConfigArgs(
|
1395
1431
|
bucket=example.name,
|
1396
1432
|
filename_prefix="pre-",
|
1397
|
-
filename_suffix="-
|
1433
|
+
filename_suffix="-_79169",
|
1434
|
+
filename_datetime_format="YYYY-MM-DD/hh_mm_ssZ",
|
1398
1435
|
max_bytes=1000,
|
1399
1436
|
max_duration="300s",
|
1400
1437
|
avro_config=gcp.pubsub.SubscriptionCloudStorageConfigAvroConfigArgs(
|
1401
1438
|
write_metadata=True,
|
1402
1439
|
),
|
1403
|
-
)
|
1404
|
-
|
1405
|
-
|
1406
|
-
|
1407
|
-
|
1408
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-pubsub.iam.gserviceaccount.com")
|
1440
|
+
),
|
1441
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
1442
|
+
example,
|
1443
|
+
admin,
|
1444
|
+
]))
|
1409
1445
|
```
|
1410
1446
|
|
1411
1447
|
## Import
|
pulumi_gcp/pubsub/topic.py
CHANGED
@@ -509,7 +509,8 @@ class Topic(pulumi.CustomResource):
|
|
509
509
|
schema_settings=gcp.pubsub.TopicSchemaSettingsArgs(
|
510
510
|
schema="projects/my-project-name/schemas/example",
|
511
511
|
encoding="JSON",
|
512
|
-
)
|
512
|
+
),
|
513
|
+
opts=pulumi.ResourceOptions(depends_on=[example]))
|
513
514
|
```
|
514
515
|
### Pubsub Topic Ingestion Kinesis
|
515
516
|
|
@@ -677,7 +678,8 @@ class Topic(pulumi.CustomResource):
|
|
677
678
|
schema_settings=gcp.pubsub.TopicSchemaSettingsArgs(
|
678
679
|
schema="projects/my-project-name/schemas/example",
|
679
680
|
encoding="JSON",
|
680
|
-
)
|
681
|
+
),
|
682
|
+
opts=pulumi.ResourceOptions(depends_on=[example]))
|
681
683
|
```
|
682
684
|
### Pubsub Topic Ingestion Kinesis
|
683
685
|
|
pulumi_gcp/pulumi-plugin.json
CHANGED
pulumi_gcp/redis/cluster.py
CHANGED
@@ -561,20 +561,6 @@ class Cluster(pulumi.CustomResource):
|
|
561
561
|
producer_net = gcp.compute.Network("producer_net",
|
562
562
|
name="mynetwork",
|
563
563
|
auto_create_subnetworks=False)
|
564
|
-
cluster_ha = gcp.redis.Cluster("cluster-ha",
|
565
|
-
name="ha-cluster",
|
566
|
-
shard_count=3,
|
567
|
-
psc_configs=[gcp.redis.ClusterPscConfigArgs(
|
568
|
-
network=producer_net.id,
|
569
|
-
)],
|
570
|
-
region="us-central1",
|
571
|
-
replica_count=1,
|
572
|
-
node_type="REDIS_SHARED_CORE_NANO",
|
573
|
-
transit_encryption_mode="TRANSIT_ENCRYPTION_MODE_DISABLED",
|
574
|
-
authorization_mode="AUTH_MODE_DISABLED",
|
575
|
-
redis_configs={
|
576
|
-
"maxmemory-policy": "volatile-ttl",
|
577
|
-
})
|
578
564
|
producer_subnet = gcp.compute.Subnetwork("producer_subnet",
|
579
565
|
name="mysubnet",
|
580
566
|
ip_cidr_range="10.0.0.248/29",
|
@@ -589,6 +575,21 @@ class Cluster(pulumi.CustomResource):
|
|
589
575
|
psc_config=gcp.networkconnectivity.ServiceConnectionPolicyPscConfigArgs(
|
590
576
|
subnetworks=[producer_subnet.id],
|
591
577
|
))
|
578
|
+
cluster_ha = gcp.redis.Cluster("cluster-ha",
|
579
|
+
name="ha-cluster",
|
580
|
+
shard_count=3,
|
581
|
+
psc_configs=[gcp.redis.ClusterPscConfigArgs(
|
582
|
+
network=producer_net.id,
|
583
|
+
)],
|
584
|
+
region="us-central1",
|
585
|
+
replica_count=1,
|
586
|
+
node_type="REDIS_SHARED_CORE_NANO",
|
587
|
+
transit_encryption_mode="TRANSIT_ENCRYPTION_MODE_DISABLED",
|
588
|
+
authorization_mode="AUTH_MODE_DISABLED",
|
589
|
+
redis_configs={
|
590
|
+
"maxmemory-policy": "volatile-ttl",
|
591
|
+
},
|
592
|
+
opts=pulumi.ResourceOptions(depends_on=[default]))
|
592
593
|
```
|
593
594
|
|
594
595
|
## Import
|
@@ -670,20 +671,6 @@ class Cluster(pulumi.CustomResource):
|
|
670
671
|
producer_net = gcp.compute.Network("producer_net",
|
671
672
|
name="mynetwork",
|
672
673
|
auto_create_subnetworks=False)
|
673
|
-
cluster_ha = gcp.redis.Cluster("cluster-ha",
|
674
|
-
name="ha-cluster",
|
675
|
-
shard_count=3,
|
676
|
-
psc_configs=[gcp.redis.ClusterPscConfigArgs(
|
677
|
-
network=producer_net.id,
|
678
|
-
)],
|
679
|
-
region="us-central1",
|
680
|
-
replica_count=1,
|
681
|
-
node_type="REDIS_SHARED_CORE_NANO",
|
682
|
-
transit_encryption_mode="TRANSIT_ENCRYPTION_MODE_DISABLED",
|
683
|
-
authorization_mode="AUTH_MODE_DISABLED",
|
684
|
-
redis_configs={
|
685
|
-
"maxmemory-policy": "volatile-ttl",
|
686
|
-
})
|
687
674
|
producer_subnet = gcp.compute.Subnetwork("producer_subnet",
|
688
675
|
name="mysubnet",
|
689
676
|
ip_cidr_range="10.0.0.248/29",
|
@@ -698,6 +685,21 @@ class Cluster(pulumi.CustomResource):
|
|
698
685
|
psc_config=gcp.networkconnectivity.ServiceConnectionPolicyPscConfigArgs(
|
699
686
|
subnetworks=[producer_subnet.id],
|
700
687
|
))
|
688
|
+
cluster_ha = gcp.redis.Cluster("cluster-ha",
|
689
|
+
name="ha-cluster",
|
690
|
+
shard_count=3,
|
691
|
+
psc_configs=[gcp.redis.ClusterPscConfigArgs(
|
692
|
+
network=producer_net.id,
|
693
|
+
)],
|
694
|
+
region="us-central1",
|
695
|
+
replica_count=1,
|
696
|
+
node_type="REDIS_SHARED_CORE_NANO",
|
697
|
+
transit_encryption_mode="TRANSIT_ENCRYPTION_MODE_DISABLED",
|
698
|
+
authorization_mode="AUTH_MODE_DISABLED",
|
699
|
+
redis_configs={
|
700
|
+
"maxmemory-policy": "volatile-ttl",
|
701
|
+
},
|
702
|
+
opts=pulumi.ResourceOptions(depends_on=[default]))
|
701
703
|
```
|
702
704
|
|
703
705
|
## Import
|
pulumi_gcp/redis/instance.py
CHANGED
@@ -1309,7 +1309,8 @@ class Instance(pulumi.CustomResource):
|
|
1309
1309
|
authorized_network=redis_network.id,
|
1310
1310
|
connect_mode="PRIVATE_SERVICE_ACCESS",
|
1311
1311
|
redis_version="REDIS_4_0",
|
1312
|
-
display_name="Test Instance"
|
1312
|
+
display_name="Test Instance",
|
1313
|
+
opts=pulumi.ResourceOptions(depends_on=[private_service_connection]))
|
1313
1314
|
```
|
1314
1315
|
### Redis Instance Mrr
|
1315
1316
|
|
@@ -1604,7 +1605,8 @@ class Instance(pulumi.CustomResource):
|
|
1604
1605
|
authorized_network=redis_network.id,
|
1605
1606
|
connect_mode="PRIVATE_SERVICE_ACCESS",
|
1606
1607
|
redis_version="REDIS_4_0",
|
1607
|
-
display_name="Test Instance"
|
1608
|
+
display_name="Test Instance",
|
1609
|
+
opts=pulumi.ResourceOptions(depends_on=[private_service_connection]))
|
1608
1610
|
```
|
1609
1611
|
### Redis Instance Mrr
|
1610
1612
|
|
@@ -659,7 +659,8 @@ class Secret(pulumi.CustomResource):
|
|
659
659
|
kms_key_name="kms-key",
|
660
660
|
),
|
661
661
|
),
|
662
|
-
)
|
662
|
+
),
|
663
|
+
opts=pulumi.ResourceOptions(depends_on=[kms_secret_binding]))
|
663
664
|
```
|
664
665
|
|
665
666
|
## Import
|
@@ -818,7 +819,8 @@ class Secret(pulumi.CustomResource):
|
|
818
819
|
kms_key_name="kms-key",
|
819
820
|
),
|
820
821
|
),
|
821
|
-
)
|
822
|
+
),
|
823
|
+
opts=pulumi.ResourceOptions(depends_on=[kms_secret_binding]))
|
822
824
|
```
|
823
825
|
|
824
826
|
## Import
|
@@ -439,7 +439,8 @@ class Instance(pulumi.CustomResource):
|
|
439
439
|
default = gcp.securesourcemanager.Instance("default",
|
440
440
|
location="us-central1",
|
441
441
|
instance_id="my-instance",
|
442
|
-
kms_key=crypto_key.id
|
442
|
+
kms_key=crypto_key.id,
|
443
|
+
opts=pulumi.ResourceOptions(depends_on=[crypto_key_binding]))
|
443
444
|
```
|
444
445
|
### Secure Source Manager Instance Private
|
445
446
|
|
@@ -493,15 +494,20 @@ class Instance(pulumi.CustomResource):
|
|
493
494
|
ca_pool=ca_pool.id,
|
494
495
|
role="roles/privateca.certificateRequester",
|
495
496
|
members=[f"serviceAccount:service-{project.number}@gcp-sa-sourcemanager.iam.gserviceaccount.com"])
|
497
|
+
# ca pool IAM permissions can take time to propagate
|
498
|
+
wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
|
499
|
+
opts=pulumi.ResourceOptions(depends_on=[ca_pool_binding]))
|
496
500
|
default = gcp.securesourcemanager.Instance("default",
|
497
501
|
instance_id="my-instance",
|
498
502
|
location="us-central1",
|
499
503
|
private_config=gcp.securesourcemanager.InstancePrivateConfigArgs(
|
500
504
|
is_private=True,
|
501
505
|
ca_pool=ca_pool.id,
|
502
|
-
)
|
503
|
-
|
504
|
-
|
506
|
+
),
|
507
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
508
|
+
root_ca,
|
509
|
+
wait60_seconds,
|
510
|
+
]))
|
505
511
|
```
|
506
512
|
|
507
513
|
## Import
|
@@ -601,7 +607,8 @@ class Instance(pulumi.CustomResource):
|
|
601
607
|
default = gcp.securesourcemanager.Instance("default",
|
602
608
|
location="us-central1",
|
603
609
|
instance_id="my-instance",
|
604
|
-
kms_key=crypto_key.id
|
610
|
+
kms_key=crypto_key.id,
|
611
|
+
opts=pulumi.ResourceOptions(depends_on=[crypto_key_binding]))
|
605
612
|
```
|
606
613
|
### Secure Source Manager Instance Private
|
607
614
|
|
@@ -655,15 +662,20 @@ class Instance(pulumi.CustomResource):
|
|
655
662
|
ca_pool=ca_pool.id,
|
656
663
|
role="roles/privateca.certificateRequester",
|
657
664
|
members=[f"serviceAccount:service-{project.number}@gcp-sa-sourcemanager.iam.gserviceaccount.com"])
|
665
|
+
# ca pool IAM permissions can take time to propagate
|
666
|
+
wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
|
667
|
+
opts=pulumi.ResourceOptions(depends_on=[ca_pool_binding]))
|
658
668
|
default = gcp.securesourcemanager.Instance("default",
|
659
669
|
instance_id="my-instance",
|
660
670
|
location="us-central1",
|
661
671
|
private_config=gcp.securesourcemanager.InstancePrivateConfigArgs(
|
662
672
|
is_private=True,
|
663
673
|
ca_pool=ca_pool.id,
|
664
|
-
)
|
665
|
-
|
666
|
-
|
674
|
+
),
|
675
|
+
opts=pulumi.ResourceOptions(depends_on=[
|
676
|
+
root_ca,
|
677
|
+
wait60_seconds,
|
678
|
+
]))
|
667
679
|
```
|
668
680
|
|
669
681
|
## Import
|
@@ -293,18 +293,19 @@ class InstanceIamBinding(pulumi.CustomResource):
|
|
293
293
|
crypto_key = gcp.kms.CryptoKey("crypto_key",
|
294
294
|
name="my-instance",
|
295
295
|
key_ring=key_ring.id)
|
296
|
+
project = gcp.organizations.get_project()
|
297
|
+
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
|
298
|
+
crypto_key_id=crypto_key.id,
|
299
|
+
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
300
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
|
296
301
|
cmek = gcp.datafusion.Instance("cmek",
|
297
302
|
name="my-instance",
|
298
303
|
region="us-central1",
|
299
304
|
type="BASIC",
|
300
305
|
crypto_key_config=gcp.datafusion.InstanceCryptoKeyConfigArgs(
|
301
306
|
key_reference=crypto_key.id,
|
302
|
-
)
|
303
|
-
|
304
|
-
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
|
305
|
-
crypto_key_id=crypto_key.id,
|
306
|
-
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
307
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
|
307
|
+
),
|
308
|
+
opts=pulumi.ResourceOptions(depends_on=[crypto_key_member]))
|
308
309
|
```
|
309
310
|
### Data Fusion Instance Enterprise
|
310
311
|
|
@@ -460,18 +461,19 @@ class InstanceIamBinding(pulumi.CustomResource):
|
|
460
461
|
crypto_key = gcp.kms.CryptoKey("crypto_key",
|
461
462
|
name="my-instance",
|
462
463
|
key_ring=key_ring.id)
|
464
|
+
project = gcp.organizations.get_project()
|
465
|
+
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
|
466
|
+
crypto_key_id=crypto_key.id,
|
467
|
+
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
468
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
|
463
469
|
cmek = gcp.datafusion.Instance("cmek",
|
464
470
|
name="my-instance",
|
465
471
|
region="us-central1",
|
466
472
|
type="BASIC",
|
467
473
|
crypto_key_config=gcp.datafusion.InstanceCryptoKeyConfigArgs(
|
468
474
|
key_reference=crypto_key.id,
|
469
|
-
)
|
470
|
-
|
471
|
-
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
|
472
|
-
crypto_key_id=crypto_key.id,
|
473
|
-
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
474
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
|
475
|
+
),
|
476
|
+
opts=pulumi.ResourceOptions(depends_on=[crypto_key_member]))
|
475
477
|
```
|
476
478
|
### Data Fusion Instance Enterprise
|
477
479
|
|
@@ -293,18 +293,19 @@ class InstanceIamMember(pulumi.CustomResource):
|
|
293
293
|
crypto_key = gcp.kms.CryptoKey("crypto_key",
|
294
294
|
name="my-instance",
|
295
295
|
key_ring=key_ring.id)
|
296
|
+
project = gcp.organizations.get_project()
|
297
|
+
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
|
298
|
+
crypto_key_id=crypto_key.id,
|
299
|
+
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
300
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
|
296
301
|
cmek = gcp.datafusion.Instance("cmek",
|
297
302
|
name="my-instance",
|
298
303
|
region="us-central1",
|
299
304
|
type="BASIC",
|
300
305
|
crypto_key_config=gcp.datafusion.InstanceCryptoKeyConfigArgs(
|
301
306
|
key_reference=crypto_key.id,
|
302
|
-
)
|
303
|
-
|
304
|
-
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
|
305
|
-
crypto_key_id=crypto_key.id,
|
306
|
-
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
307
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
|
307
|
+
),
|
308
|
+
opts=pulumi.ResourceOptions(depends_on=[crypto_key_member]))
|
308
309
|
```
|
309
310
|
### Data Fusion Instance Enterprise
|
310
311
|
|
@@ -460,18 +461,19 @@ class InstanceIamMember(pulumi.CustomResource):
|
|
460
461
|
crypto_key = gcp.kms.CryptoKey("crypto_key",
|
461
462
|
name="my-instance",
|
462
463
|
key_ring=key_ring.id)
|
464
|
+
project = gcp.organizations.get_project()
|
465
|
+
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
|
466
|
+
crypto_key_id=crypto_key.id,
|
467
|
+
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
468
|
+
member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
|
463
469
|
cmek = gcp.datafusion.Instance("cmek",
|
464
470
|
name="my-instance",
|
465
471
|
region="us-central1",
|
466
472
|
type="BASIC",
|
467
473
|
crypto_key_config=gcp.datafusion.InstanceCryptoKeyConfigArgs(
|
468
474
|
key_reference=crypto_key.id,
|
469
|
-
)
|
470
|
-
|
471
|
-
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
|
472
|
-
crypto_key_id=crypto_key.id,
|
473
|
-
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
474
|
-
member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
|
475
|
+
),
|
476
|
+
opts=pulumi.ResourceOptions(depends_on=[crypto_key_member]))
|
475
477
|
```
|
476
478
|
### Data Fusion Instance Enterprise
|
477
479
|
|