pulumi-gcp 8.18.0a1738650987__py3-none-any.whl → 8.19.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 +104 -0
- pulumi_gcp/accesscontextmanager/_inputs.py +288 -78
- pulumi_gcp/accesscontextmanager/outputs.py +186 -54
- pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +28 -0
- pulumi_gcp/alloydb/user.py +10 -1
- pulumi_gcp/appengine/_inputs.py +3 -0
- pulumi_gcp/appengine/outputs.py +2 -0
- pulumi_gcp/assuredworkloads/workload.py +7 -7
- pulumi_gcp/beyondcorp/__init__.py +9 -0
- pulumi_gcp/beyondcorp/_inputs.py +319 -0
- pulumi_gcp/beyondcorp/application.py +604 -0
- pulumi_gcp/beyondcorp/application_iam_binding.py +1049 -0
- pulumi_gcp/beyondcorp/application_iam_member.py +1049 -0
- pulumi_gcp/beyondcorp/application_iam_policy.py +868 -0
- pulumi_gcp/beyondcorp/get_application_iam_policy.py +174 -0
- pulumi_gcp/beyondcorp/get_security_gateway_iam_policy.py +180 -0
- pulumi_gcp/beyondcorp/outputs.py +187 -0
- pulumi_gcp/beyondcorp/security_gateway.py +52 -25
- pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +1075 -0
- pulumi_gcp/beyondcorp/security_gateway_iam_member.py +1075 -0
- pulumi_gcp/beyondcorp/security_gateway_iam_policy.py +894 -0
- pulumi_gcp/bigquery/_inputs.py +33 -0
- pulumi_gcp/bigquery/dataset.py +7 -7
- pulumi_gcp/bigquery/outputs.py +36 -0
- pulumi_gcp/bigquery/table.py +61 -7
- pulumi_gcp/bigqueryanalyticshub/__init__.py +1 -0
- pulumi_gcp/bigqueryanalyticshub/_inputs.py +318 -0
- pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +808 -0
- pulumi_gcp/bigqueryanalyticshub/outputs.py +263 -0
- pulumi_gcp/certificateauthority/_inputs.py +54 -0
- pulumi_gcp/certificateauthority/authority.py +149 -3
- pulumi_gcp/certificateauthority/get_authority.py +15 -4
- pulumi_gcp/certificateauthority/outputs.py +81 -0
- pulumi_gcp/chronicle/retrohunt.py +0 -16
- pulumi_gcp/cloudquota/s_quota_adjuster_settings.py +23 -23
- pulumi_gcp/cloudrunv2/_inputs.py +112 -0
- pulumi_gcp/cloudrunv2/outputs.py +144 -1
- pulumi_gcp/cloudrunv2/service.py +2 -0
- pulumi_gcp/colab/__init__.py +2 -0
- pulumi_gcp/colab/_inputs.py +655 -0
- pulumi_gcp/colab/notebook_execution.py +1259 -0
- pulumi_gcp/colab/outputs.py +512 -0
- pulumi_gcp/colab/runtime.py +266 -2
- pulumi_gcp/colab/runtime_template.py +79 -3
- pulumi_gcp/colab/schedule.py +1318 -0
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +213 -9
- pulumi_gcp/compute/firewall_policy.py +54 -43
- pulumi_gcp/compute/forwarding_rule.py +103 -0
- pulumi_gcp/compute/get_forwarding_rule.py +12 -1
- pulumi_gcp/compute/get_network.py +3 -3
- pulumi_gcp/compute/interconnect_attachment.py +12 -0
- pulumi_gcp/compute/network.py +7 -7
- pulumi_gcp/compute/network_firewall_policy_packet_mirroring_rule.py +1011 -0
- pulumi_gcp/compute/outputs.py +193 -6
- pulumi_gcp/compute/public_advertised_prefix.py +35 -7
- pulumi_gcp/compute/public_delegated_prefix.py +171 -7
- pulumi_gcp/compute/region_resize_request.py +21 -22
- pulumi_gcp/compute/resize_request.py +22 -23
- pulumi_gcp/compute/router_peer.py +112 -0
- pulumi_gcp/compute/subnetwork.py +14 -7
- pulumi_gcp/container/_inputs.py +133 -21
- pulumi_gcp/container/outputs.py +154 -13
- pulumi_gcp/dataproc/_inputs.py +34 -0
- pulumi_gcp/dataproc/outputs.py +37 -0
- pulumi_gcp/dataproc/workflow_template.py +47 -0
- pulumi_gcp/datastream/connection_profile.py +120 -46
- pulumi_gcp/discoveryengine/chat_engine.py +7 -7
- pulumi_gcp/filestore/_inputs.py +222 -0
- pulumi_gcp/filestore/get_instance.py +23 -1
- pulumi_gcp/filestore/instance.py +86 -0
- pulumi_gcp/filestore/outputs.py +282 -0
- pulumi_gcp/firestore/field.py +60 -0
- pulumi_gcp/gemini/__init__.py +2 -0
- pulumi_gcp/gemini/logging_setting.py +671 -0
- pulumi_gcp/gemini/release_channel_setting.py +639 -0
- pulumi_gcp/gkehub/_inputs.py +20 -0
- pulumi_gcp/gkehub/membership_binding.py +6 -6
- pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
- pulumi_gcp/gkehub/namespace.py +4 -4
- pulumi_gcp/gkehub/outputs.py +26 -1
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
- pulumi_gcp/iap/tunnel_dest_group.py +2 -2
- pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
- pulumi_gcp/memorystore/_inputs.py +296 -0
- pulumi_gcp/memorystore/instance.py +32 -28
- pulumi_gcp/memorystore/outputs.py +224 -0
- pulumi_gcp/monitoring/_inputs.py +12 -9
- pulumi_gcp/monitoring/outputs.py +8 -6
- pulumi_gcp/netapp/storage_pool.py +1 -1
- pulumi_gcp/networkconnectivity/spoke.py +76 -14
- pulumi_gcp/networkservices/_inputs.py +89 -0
- pulumi_gcp/networkservices/outputs.py +75 -0
- pulumi_gcp/orgpolicy/policy.py +2 -2
- pulumi_gcp/parametermanager/__init__.py +5 -0
- pulumi_gcp/parametermanager/get_parameter_version.py +216 -0
- pulumi_gcp/parametermanager/get_parameter_version_render.py +199 -0
- pulumi_gcp/parametermanager/get_parameters.py +140 -0
- pulumi_gcp/parametermanager/get_regional_parameter_version.py +235 -0
- pulumi_gcp/parametermanager/get_regional_parameter_version_render.py +220 -0
- pulumi_gcp/parametermanager/outputs.py +156 -0
- pulumi_gcp/privilegedaccessmanager/entitlement.py +14 -0
- pulumi_gcp/pubsub/_inputs.py +264 -0
- pulumi_gcp/pubsub/outputs.py +353 -0
- pulumi_gcp/pubsub/subscription.py +6 -6
- pulumi_gcp/pubsub/topic.py +70 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/resourcemanager/lien.py +12 -0
- pulumi_gcp/secretmanager/regional_secret.py +4 -0
- pulumi_gcp/secretmanager/regional_secret_version.py +12 -0
- pulumi_gcp/secretmanager/secret.py +4 -0
- pulumi_gcp/secretmanager/secret_version.py +12 -0
- pulumi_gcp/securesourcemanager/branch_rule.py +4 -0
- pulumi_gcp/securesourcemanager/repository.py +4 -0
- pulumi_gcp/securityposture/posture.py +4 -0
- pulumi_gcp/securityposture/posture_deployment.py +4 -0
- pulumi_gcp/serviceaccount/get_s.py +98 -8
- pulumi_gcp/spanner/_inputs.py +68 -0
- pulumi_gcp/spanner/backup_schedule.py +70 -4
- pulumi_gcp/spanner/outputs.py +60 -0
- pulumi_gcp/storage/bucket_object.py +8 -0
- pulumi_gcp/storage/get_bucket_object_content.py +4 -4
- pulumi_gcp/vertex/ai_endpoint.py +4 -4
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
- pulumi_gcp/workbench/instance.py +70 -2
- pulumi_gcp/workflows/workflow.py +175 -0
- {pulumi_gcp-8.18.0a1738650987.dist-info → pulumi_gcp-8.19.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.18.0a1738650987.dist-info → pulumi_gcp-8.19.0.dist-info}/RECORD +130 -110
- {pulumi_gcp-8.18.0a1738650987.dist-info → pulumi_gcp-8.19.0.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.18.0a1738650987.dist-info → pulumi_gcp-8.19.0.dist-info}/top_level.txt +0 -0
@@ -634,18 +634,23 @@ class ConnectionProfile(pulumi.CustomResource):
|
|
634
634
|
import pulumi_gcp as gcp
|
635
635
|
import pulumi_random as random
|
636
636
|
|
637
|
-
default = gcp.compute.Network("default",
|
637
|
+
default = gcp.compute.Network("default",
|
638
|
+
name="my-network",
|
639
|
+
auto_create_subnetworks=False)
|
640
|
+
default_subnetwork = gcp.compute.Subnetwork("default",
|
641
|
+
name="my-subnetwork",
|
642
|
+
ip_cidr_range="10.1.0.0/16",
|
643
|
+
region="us-central1",
|
644
|
+
network=default.id)
|
638
645
|
private_connection = gcp.datastream.PrivateConnection("private_connection",
|
639
|
-
display_name="
|
646
|
+
display_name="Private connection",
|
640
647
|
location="us-central1",
|
641
648
|
private_connection_id="my-connection",
|
642
|
-
labels={
|
643
|
-
"key": "value",
|
644
|
-
},
|
645
649
|
vpc_peering_config={
|
646
650
|
"vpc": default.id,
|
647
651
|
"subnet": "10.0.0.0/29",
|
648
652
|
})
|
653
|
+
nat_vm_ip = gcp.compute.Address("nat_vm_ip", name="nat-vm-ip")
|
649
654
|
instance = gcp.sql.DatabaseInstance("instance",
|
650
655
|
name="my-instance",
|
651
656
|
database_version="POSTGRES_14",
|
@@ -653,23 +658,9 @@ class ConnectionProfile(pulumi.CustomResource):
|
|
653
658
|
settings={
|
654
659
|
"tier": "db-f1-micro",
|
655
660
|
"ip_configuration": {
|
656
|
-
"authorized_networks": [
|
657
|
-
|
658
|
-
|
659
|
-
},
|
660
|
-
{
|
661
|
-
"value": "34.72.28.29",
|
662
|
-
},
|
663
|
-
{
|
664
|
-
"value": "34.67.6.157",
|
665
|
-
},
|
666
|
-
{
|
667
|
-
"value": "34.67.234.134",
|
668
|
-
},
|
669
|
-
{
|
670
|
-
"value": "34.72.239.218",
|
671
|
-
},
|
672
|
-
],
|
661
|
+
"authorized_networks": [{
|
662
|
+
"value": nat_vm_ip.address,
|
663
|
+
}],
|
673
664
|
},
|
674
665
|
},
|
675
666
|
deletion_protection=True)
|
@@ -683,15 +674,61 @@ class ConnectionProfile(pulumi.CustomResource):
|
|
683
674
|
name="user",
|
684
675
|
instance=instance.name,
|
685
676
|
password=pwd.result)
|
677
|
+
nat_vm = gcp.compute.Instance("nat_vm",
|
678
|
+
name="nat-vm",
|
679
|
+
machine_type="e2-medium",
|
680
|
+
zone="us-central1-a",
|
681
|
+
desired_status="RUNNING",
|
682
|
+
boot_disk={
|
683
|
+
"initialize_params": {
|
684
|
+
"image": "debian-cloud/debian-12",
|
685
|
+
},
|
686
|
+
},
|
687
|
+
network_interfaces=[{
|
688
|
+
"network": private_connection.vpc_peering_config.vpc,
|
689
|
+
"subnetwork": default_subnetwork.self_link,
|
690
|
+
"access_configs": [{
|
691
|
+
"nat_ip": nat_vm_ip.address,
|
692
|
+
}],
|
693
|
+
}],
|
694
|
+
metadata_startup_script=instance.public_ip_address.apply(lambda public_ip_address: f\"\"\"#! /bin/bash
|
695
|
+
# See https://cloud.google.com/datastream/docs/private-connectivity#set-up-reverse-proxy
|
696
|
+
export DB_ADDR={public_ip_address}
|
697
|
+
export DB_PORT=5432
|
698
|
+
echo 1 > /proc/sys/net/ipv4/ip_forward
|
699
|
+
md_url_prefix="http://169.254.169.254/computeMetadata/v1/instance"
|
700
|
+
vm_nic_ip="$(curl -H "Metadata-Flavor: Google" ${{md_url_prefix}}/network-interfaces/0/ip)"
|
701
|
+
iptables -t nat -F
|
702
|
+
iptables -t nat -A PREROUTING \\
|
703
|
+
-p tcp --dport $DB_PORT \\
|
704
|
+
-j DNAT \\
|
705
|
+
--to-destination $DB_ADDR
|
706
|
+
iptables -t nat -A POSTROUTING \\
|
707
|
+
-p tcp --dport $DB_PORT \\
|
708
|
+
-j SNAT \\
|
709
|
+
--to-source $vm_nic_ip
|
710
|
+
iptables-save
|
711
|
+
\"\"\"))
|
712
|
+
rules = gcp.compute.Firewall("rules",
|
713
|
+
name="ingress-rule",
|
714
|
+
network=private_connection.vpc_peering_config.vpc,
|
715
|
+
description="Allow traffic into NAT VM",
|
716
|
+
direction="INGRESS",
|
717
|
+
allows=[{
|
718
|
+
"protocol": "tcp",
|
719
|
+
"ports": ["5432"],
|
720
|
+
}],
|
721
|
+
source_ranges=[private_connection.vpc_peering_config.subnet])
|
686
722
|
default_connection_profile = gcp.datastream.ConnectionProfile("default",
|
687
723
|
display_name="Connection profile",
|
688
724
|
location="us-central1",
|
689
725
|
connection_profile_id="my-profile",
|
690
726
|
postgresql_profile={
|
691
|
-
"hostname":
|
727
|
+
"hostname": nat_vm.network_interfaces[0].network_ip,
|
692
728
|
"username": user.name,
|
693
729
|
"password": user.password,
|
694
730
|
"database": db.name,
|
731
|
+
"port": 5432,
|
695
732
|
},
|
696
733
|
private_connectivity={
|
697
734
|
"private_connection": private_connection.id,
|
@@ -923,18 +960,23 @@ class ConnectionProfile(pulumi.CustomResource):
|
|
923
960
|
import pulumi_gcp as gcp
|
924
961
|
import pulumi_random as random
|
925
962
|
|
926
|
-
default = gcp.compute.Network("default",
|
963
|
+
default = gcp.compute.Network("default",
|
964
|
+
name="my-network",
|
965
|
+
auto_create_subnetworks=False)
|
966
|
+
default_subnetwork = gcp.compute.Subnetwork("default",
|
967
|
+
name="my-subnetwork",
|
968
|
+
ip_cidr_range="10.1.0.0/16",
|
969
|
+
region="us-central1",
|
970
|
+
network=default.id)
|
927
971
|
private_connection = gcp.datastream.PrivateConnection("private_connection",
|
928
|
-
display_name="
|
972
|
+
display_name="Private connection",
|
929
973
|
location="us-central1",
|
930
974
|
private_connection_id="my-connection",
|
931
|
-
labels={
|
932
|
-
"key": "value",
|
933
|
-
},
|
934
975
|
vpc_peering_config={
|
935
976
|
"vpc": default.id,
|
936
977
|
"subnet": "10.0.0.0/29",
|
937
978
|
})
|
979
|
+
nat_vm_ip = gcp.compute.Address("nat_vm_ip", name="nat-vm-ip")
|
938
980
|
instance = gcp.sql.DatabaseInstance("instance",
|
939
981
|
name="my-instance",
|
940
982
|
database_version="POSTGRES_14",
|
@@ -942,23 +984,9 @@ class ConnectionProfile(pulumi.CustomResource):
|
|
942
984
|
settings={
|
943
985
|
"tier": "db-f1-micro",
|
944
986
|
"ip_configuration": {
|
945
|
-
"authorized_networks": [
|
946
|
-
|
947
|
-
|
948
|
-
},
|
949
|
-
{
|
950
|
-
"value": "34.72.28.29",
|
951
|
-
},
|
952
|
-
{
|
953
|
-
"value": "34.67.6.157",
|
954
|
-
},
|
955
|
-
{
|
956
|
-
"value": "34.67.234.134",
|
957
|
-
},
|
958
|
-
{
|
959
|
-
"value": "34.72.239.218",
|
960
|
-
},
|
961
|
-
],
|
987
|
+
"authorized_networks": [{
|
988
|
+
"value": nat_vm_ip.address,
|
989
|
+
}],
|
962
990
|
},
|
963
991
|
},
|
964
992
|
deletion_protection=True)
|
@@ -972,15 +1000,61 @@ class ConnectionProfile(pulumi.CustomResource):
|
|
972
1000
|
name="user",
|
973
1001
|
instance=instance.name,
|
974
1002
|
password=pwd.result)
|
1003
|
+
nat_vm = gcp.compute.Instance("nat_vm",
|
1004
|
+
name="nat-vm",
|
1005
|
+
machine_type="e2-medium",
|
1006
|
+
zone="us-central1-a",
|
1007
|
+
desired_status="RUNNING",
|
1008
|
+
boot_disk={
|
1009
|
+
"initialize_params": {
|
1010
|
+
"image": "debian-cloud/debian-12",
|
1011
|
+
},
|
1012
|
+
},
|
1013
|
+
network_interfaces=[{
|
1014
|
+
"network": private_connection.vpc_peering_config.vpc,
|
1015
|
+
"subnetwork": default_subnetwork.self_link,
|
1016
|
+
"access_configs": [{
|
1017
|
+
"nat_ip": nat_vm_ip.address,
|
1018
|
+
}],
|
1019
|
+
}],
|
1020
|
+
metadata_startup_script=instance.public_ip_address.apply(lambda public_ip_address: f\"\"\"#! /bin/bash
|
1021
|
+
# See https://cloud.google.com/datastream/docs/private-connectivity#set-up-reverse-proxy
|
1022
|
+
export DB_ADDR={public_ip_address}
|
1023
|
+
export DB_PORT=5432
|
1024
|
+
echo 1 > /proc/sys/net/ipv4/ip_forward
|
1025
|
+
md_url_prefix="http://169.254.169.254/computeMetadata/v1/instance"
|
1026
|
+
vm_nic_ip="$(curl -H "Metadata-Flavor: Google" ${{md_url_prefix}}/network-interfaces/0/ip)"
|
1027
|
+
iptables -t nat -F
|
1028
|
+
iptables -t nat -A PREROUTING \\
|
1029
|
+
-p tcp --dport $DB_PORT \\
|
1030
|
+
-j DNAT \\
|
1031
|
+
--to-destination $DB_ADDR
|
1032
|
+
iptables -t nat -A POSTROUTING \\
|
1033
|
+
-p tcp --dport $DB_PORT \\
|
1034
|
+
-j SNAT \\
|
1035
|
+
--to-source $vm_nic_ip
|
1036
|
+
iptables-save
|
1037
|
+
\"\"\"))
|
1038
|
+
rules = gcp.compute.Firewall("rules",
|
1039
|
+
name="ingress-rule",
|
1040
|
+
network=private_connection.vpc_peering_config.vpc,
|
1041
|
+
description="Allow traffic into NAT VM",
|
1042
|
+
direction="INGRESS",
|
1043
|
+
allows=[{
|
1044
|
+
"protocol": "tcp",
|
1045
|
+
"ports": ["5432"],
|
1046
|
+
}],
|
1047
|
+
source_ranges=[private_connection.vpc_peering_config.subnet])
|
975
1048
|
default_connection_profile = gcp.datastream.ConnectionProfile("default",
|
976
1049
|
display_name="Connection profile",
|
977
1050
|
location="us-central1",
|
978
1051
|
connection_profile_id="my-profile",
|
979
1052
|
postgresql_profile={
|
980
|
-
"hostname":
|
1053
|
+
"hostname": nat_vm.network_interfaces[0].network_ip,
|
981
1054
|
"username": user.name,
|
982
1055
|
"password": user.password,
|
983
1056
|
"database": db.name,
|
1057
|
+
"port": 5432,
|
984
1058
|
},
|
985
1059
|
private_connectivity={
|
986
1060
|
"private_connection": private_connection.id,
|
@@ -35,7 +35,7 @@ class ChatEngineArgs:
|
|
35
35
|
:param pulumi.Input['ChatEngineChatEngineConfigArgs'] chat_engine_config: Configurations for a chat Engine.
|
36
36
|
Structure is documented below.
|
37
37
|
:param pulumi.Input[str] collection_id: The collection ID.
|
38
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_store_ids: The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
38
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_store_ids: The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
39
39
|
:param pulumi.Input[str] display_name: The display name of the engine. Should be human readable. UTF-8 encoded string with limit of 1024 characters.
|
40
40
|
:param pulumi.Input[str] engine_id: The ID to use for chat engine.
|
41
41
|
:param pulumi.Input[str] location: Location.
|
@@ -85,7 +85,7 @@ class ChatEngineArgs:
|
|
85
85
|
@pulumi.getter(name="dataStoreIds")
|
86
86
|
def data_store_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
87
87
|
"""
|
88
|
-
The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
88
|
+
The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
89
89
|
"""
|
90
90
|
return pulumi.get(self, "data_store_ids")
|
91
91
|
|
@@ -189,7 +189,7 @@ class _ChatEngineState:
|
|
189
189
|
:param pulumi.Input[str] collection_id: The collection ID.
|
190
190
|
:param pulumi.Input['ChatEngineCommonConfigArgs'] common_config: Common config spec that specifies the metadata of the engine.
|
191
191
|
:param pulumi.Input[str] create_time: Timestamp the Engine was created at.
|
192
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_store_ids: The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
192
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_store_ids: The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
193
193
|
:param pulumi.Input[str] display_name: The display name of the engine. Should be human readable. UTF-8 encoded string with limit of 1024 characters.
|
194
194
|
:param pulumi.Input[str] engine_id: The ID to use for chat engine.
|
195
195
|
:param pulumi.Input[str] industry_vertical: The industry vertical that the chat engine registers. Vertical on Engine has to match vertical of the DataStore linked
|
@@ -294,7 +294,7 @@ class _ChatEngineState:
|
|
294
294
|
@pulumi.getter(name="dataStoreIds")
|
295
295
|
def data_store_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
296
296
|
"""
|
297
|
-
The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
297
|
+
The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
298
298
|
"""
|
299
299
|
return pulumi.get(self, "data_store_ids")
|
300
300
|
|
@@ -518,7 +518,7 @@ class ChatEngine(pulumi.CustomResource):
|
|
518
518
|
Structure is documented below.
|
519
519
|
:param pulumi.Input[str] collection_id: The collection ID.
|
520
520
|
:param pulumi.Input[Union['ChatEngineCommonConfigArgs', 'ChatEngineCommonConfigArgsDict']] common_config: Common config spec that specifies the metadata of the engine.
|
521
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_store_ids: The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
521
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_store_ids: The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
522
522
|
:param pulumi.Input[str] display_name: The display name of the engine. Should be human readable. UTF-8 encoded string with limit of 1024 characters.
|
523
523
|
:param pulumi.Input[str] engine_id: The ID to use for chat engine.
|
524
524
|
:param pulumi.Input[str] industry_vertical: The industry vertical that the chat engine registers. Vertical on Engine has to match vertical of the DataStore linked
|
@@ -735,7 +735,7 @@ class ChatEngine(pulumi.CustomResource):
|
|
735
735
|
:param pulumi.Input[str] collection_id: The collection ID.
|
736
736
|
:param pulumi.Input[Union['ChatEngineCommonConfigArgs', 'ChatEngineCommonConfigArgsDict']] common_config: Common config spec that specifies the metadata of the engine.
|
737
737
|
:param pulumi.Input[str] create_time: Timestamp the Engine was created at.
|
738
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_store_ids: The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
738
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_store_ids: The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
739
739
|
:param pulumi.Input[str] display_name: The display name of the engine. Should be human readable. UTF-8 encoded string with limit of 1024 characters.
|
740
740
|
:param pulumi.Input[str] engine_id: The ID to use for chat engine.
|
741
741
|
:param pulumi.Input[str] industry_vertical: The industry vertical that the chat engine registers. Vertical on Engine has to match vertical of the DataStore linked
|
@@ -812,7 +812,7 @@ class ChatEngine(pulumi.CustomResource):
|
|
812
812
|
@pulumi.getter(name="dataStoreIds")
|
813
813
|
def data_store_ids(self) -> pulumi.Output[Sequence[str]]:
|
814
814
|
"""
|
815
|
-
The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
815
|
+
The data stores associated with this engine. Multiple DataStores in the same Collection can be associated here. All listed DataStores must be `SOLUTION_TYPE_CHAT`.
|
816
816
|
"""
|
817
817
|
return pulumi.get(self, "data_store_ids")
|
818
818
|
|
pulumi_gcp/filestore/_inputs.py
CHANGED
@@ -15,10 +15,18 @@ else:
|
|
15
15
|
from .. import _utilities
|
16
16
|
|
17
17
|
__all__ = [
|
18
|
+
'InstanceEffectiveReplicationArgs',
|
19
|
+
'InstanceEffectiveReplicationArgsDict',
|
20
|
+
'InstanceEffectiveReplicationReplicaArgs',
|
21
|
+
'InstanceEffectiveReplicationReplicaArgsDict',
|
18
22
|
'InstanceFileSharesArgs',
|
19
23
|
'InstanceFileSharesArgsDict',
|
20
24
|
'InstanceFileSharesNfsExportOptionArgs',
|
21
25
|
'InstanceFileSharesNfsExportOptionArgsDict',
|
26
|
+
'InstanceInitialReplicationArgs',
|
27
|
+
'InstanceInitialReplicationArgsDict',
|
28
|
+
'InstanceInitialReplicationReplicaArgs',
|
29
|
+
'InstanceInitialReplicationReplicaArgsDict',
|
22
30
|
'InstanceNetworkArgs',
|
23
31
|
'InstanceNetworkArgsDict',
|
24
32
|
'InstancePerformanceConfigArgs',
|
@@ -31,6 +39,128 @@ __all__ = [
|
|
31
39
|
|
32
40
|
MYPY = False
|
33
41
|
|
42
|
+
if not MYPY:
|
43
|
+
class InstanceEffectiveReplicationArgsDict(TypedDict):
|
44
|
+
replicas: NotRequired[pulumi.Input[Sequence[pulumi.Input['InstanceEffectiveReplicationReplicaArgsDict']]]]
|
45
|
+
"""
|
46
|
+
The replication role.
|
47
|
+
Structure is documented below.
|
48
|
+
"""
|
49
|
+
elif False:
|
50
|
+
InstanceEffectiveReplicationArgsDict: TypeAlias = Mapping[str, Any]
|
51
|
+
|
52
|
+
@pulumi.input_type
|
53
|
+
class InstanceEffectiveReplicationArgs:
|
54
|
+
def __init__(__self__, *,
|
55
|
+
replicas: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceEffectiveReplicationReplicaArgs']]]] = None):
|
56
|
+
"""
|
57
|
+
:param pulumi.Input[Sequence[pulumi.Input['InstanceEffectiveReplicationReplicaArgs']]] replicas: The replication role.
|
58
|
+
Structure is documented below.
|
59
|
+
"""
|
60
|
+
if replicas is not None:
|
61
|
+
pulumi.set(__self__, "replicas", replicas)
|
62
|
+
|
63
|
+
@property
|
64
|
+
@pulumi.getter
|
65
|
+
def replicas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceEffectiveReplicationReplicaArgs']]]]:
|
66
|
+
"""
|
67
|
+
The replication role.
|
68
|
+
Structure is documented below.
|
69
|
+
"""
|
70
|
+
return pulumi.get(self, "replicas")
|
71
|
+
|
72
|
+
@replicas.setter
|
73
|
+
def replicas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceEffectiveReplicationReplicaArgs']]]]):
|
74
|
+
pulumi.set(self, "replicas", value)
|
75
|
+
|
76
|
+
|
77
|
+
if not MYPY:
|
78
|
+
class InstanceEffectiveReplicationReplicaArgsDict(TypedDict):
|
79
|
+
last_active_sync_time: NotRequired[pulumi.Input[str]]
|
80
|
+
"""
|
81
|
+
(Output)
|
82
|
+
Output only. The timestamp of the latest replication snapshot taken on the active instance and is already replicated safely.
|
83
|
+
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
|
84
|
+
Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
|
85
|
+
"""
|
86
|
+
state: NotRequired[pulumi.Input[str]]
|
87
|
+
"""
|
88
|
+
(Output)
|
89
|
+
Output only. The replica state
|
90
|
+
"""
|
91
|
+
state_reasons: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
92
|
+
"""
|
93
|
+
(Output)
|
94
|
+
Output only. Additional information about the replication state, if available.
|
95
|
+
"""
|
96
|
+
elif False:
|
97
|
+
InstanceEffectiveReplicationReplicaArgsDict: TypeAlias = Mapping[str, Any]
|
98
|
+
|
99
|
+
@pulumi.input_type
|
100
|
+
class InstanceEffectiveReplicationReplicaArgs:
|
101
|
+
def __init__(__self__, *,
|
102
|
+
last_active_sync_time: Optional[pulumi.Input[str]] = None,
|
103
|
+
state: Optional[pulumi.Input[str]] = None,
|
104
|
+
state_reasons: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
105
|
+
"""
|
106
|
+
:param pulumi.Input[str] last_active_sync_time: (Output)
|
107
|
+
Output only. The timestamp of the latest replication snapshot taken on the active instance and is already replicated safely.
|
108
|
+
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
|
109
|
+
Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
|
110
|
+
:param pulumi.Input[str] state: (Output)
|
111
|
+
Output only. The replica state
|
112
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] state_reasons: (Output)
|
113
|
+
Output only. Additional information about the replication state, if available.
|
114
|
+
"""
|
115
|
+
if last_active_sync_time is not None:
|
116
|
+
pulumi.set(__self__, "last_active_sync_time", last_active_sync_time)
|
117
|
+
if state is not None:
|
118
|
+
pulumi.set(__self__, "state", state)
|
119
|
+
if state_reasons is not None:
|
120
|
+
pulumi.set(__self__, "state_reasons", state_reasons)
|
121
|
+
|
122
|
+
@property
|
123
|
+
@pulumi.getter(name="lastActiveSyncTime")
|
124
|
+
def last_active_sync_time(self) -> Optional[pulumi.Input[str]]:
|
125
|
+
"""
|
126
|
+
(Output)
|
127
|
+
Output only. The timestamp of the latest replication snapshot taken on the active instance and is already replicated safely.
|
128
|
+
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
|
129
|
+
Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
|
130
|
+
"""
|
131
|
+
return pulumi.get(self, "last_active_sync_time")
|
132
|
+
|
133
|
+
@last_active_sync_time.setter
|
134
|
+
def last_active_sync_time(self, value: Optional[pulumi.Input[str]]):
|
135
|
+
pulumi.set(self, "last_active_sync_time", value)
|
136
|
+
|
137
|
+
@property
|
138
|
+
@pulumi.getter
|
139
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
140
|
+
"""
|
141
|
+
(Output)
|
142
|
+
Output only. The replica state
|
143
|
+
"""
|
144
|
+
return pulumi.get(self, "state")
|
145
|
+
|
146
|
+
@state.setter
|
147
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
148
|
+
pulumi.set(self, "state", value)
|
149
|
+
|
150
|
+
@property
|
151
|
+
@pulumi.getter(name="stateReasons")
|
152
|
+
def state_reasons(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
153
|
+
"""
|
154
|
+
(Output)
|
155
|
+
Output only. Additional information about the replication state, if available.
|
156
|
+
"""
|
157
|
+
return pulumi.get(self, "state_reasons")
|
158
|
+
|
159
|
+
@state_reasons.setter
|
160
|
+
def state_reasons(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
161
|
+
pulumi.set(self, "state_reasons", value)
|
162
|
+
|
163
|
+
|
34
164
|
if not MYPY:
|
35
165
|
class InstanceFileSharesArgsDict(TypedDict):
|
36
166
|
capacity_gb: pulumi.Input[int]
|
@@ -281,6 +411,98 @@ class InstanceFileSharesNfsExportOptionArgs:
|
|
281
411
|
pulumi.set(self, "squash_mode", value)
|
282
412
|
|
283
413
|
|
414
|
+
if not MYPY:
|
415
|
+
class InstanceInitialReplicationArgsDict(TypedDict):
|
416
|
+
replicas: NotRequired[pulumi.Input[Sequence[pulumi.Input['InstanceInitialReplicationReplicaArgsDict']]]]
|
417
|
+
"""
|
418
|
+
The replication role.
|
419
|
+
Structure is documented below.
|
420
|
+
"""
|
421
|
+
role: NotRequired[pulumi.Input[str]]
|
422
|
+
"""
|
423
|
+
The replication role.
|
424
|
+
Default value is `STANDBY`.
|
425
|
+
Possible values are: `ROLE_UNSPECIFIED`, `ACTIVE`, `STANDBY`.
|
426
|
+
"""
|
427
|
+
elif False:
|
428
|
+
InstanceInitialReplicationArgsDict: TypeAlias = Mapping[str, Any]
|
429
|
+
|
430
|
+
@pulumi.input_type
|
431
|
+
class InstanceInitialReplicationArgs:
|
432
|
+
def __init__(__self__, *,
|
433
|
+
replicas: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceInitialReplicationReplicaArgs']]]] = None,
|
434
|
+
role: Optional[pulumi.Input[str]] = None):
|
435
|
+
"""
|
436
|
+
:param pulumi.Input[Sequence[pulumi.Input['InstanceInitialReplicationReplicaArgs']]] replicas: The replication role.
|
437
|
+
Structure is documented below.
|
438
|
+
:param pulumi.Input[str] role: The replication role.
|
439
|
+
Default value is `STANDBY`.
|
440
|
+
Possible values are: `ROLE_UNSPECIFIED`, `ACTIVE`, `STANDBY`.
|
441
|
+
"""
|
442
|
+
if replicas is not None:
|
443
|
+
pulumi.set(__self__, "replicas", replicas)
|
444
|
+
if role is not None:
|
445
|
+
pulumi.set(__self__, "role", role)
|
446
|
+
|
447
|
+
@property
|
448
|
+
@pulumi.getter
|
449
|
+
def replicas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceInitialReplicationReplicaArgs']]]]:
|
450
|
+
"""
|
451
|
+
The replication role.
|
452
|
+
Structure is documented below.
|
453
|
+
"""
|
454
|
+
return pulumi.get(self, "replicas")
|
455
|
+
|
456
|
+
@replicas.setter
|
457
|
+
def replicas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceInitialReplicationReplicaArgs']]]]):
|
458
|
+
pulumi.set(self, "replicas", value)
|
459
|
+
|
460
|
+
@property
|
461
|
+
@pulumi.getter
|
462
|
+
def role(self) -> Optional[pulumi.Input[str]]:
|
463
|
+
"""
|
464
|
+
The replication role.
|
465
|
+
Default value is `STANDBY`.
|
466
|
+
Possible values are: `ROLE_UNSPECIFIED`, `ACTIVE`, `STANDBY`.
|
467
|
+
"""
|
468
|
+
return pulumi.get(self, "role")
|
469
|
+
|
470
|
+
@role.setter
|
471
|
+
def role(self, value: Optional[pulumi.Input[str]]):
|
472
|
+
pulumi.set(self, "role", value)
|
473
|
+
|
474
|
+
|
475
|
+
if not MYPY:
|
476
|
+
class InstanceInitialReplicationReplicaArgsDict(TypedDict):
|
477
|
+
peer_instance: pulumi.Input[str]
|
478
|
+
"""
|
479
|
+
The peer instance.
|
480
|
+
"""
|
481
|
+
elif False:
|
482
|
+
InstanceInitialReplicationReplicaArgsDict: TypeAlias = Mapping[str, Any]
|
483
|
+
|
484
|
+
@pulumi.input_type
|
485
|
+
class InstanceInitialReplicationReplicaArgs:
|
486
|
+
def __init__(__self__, *,
|
487
|
+
peer_instance: pulumi.Input[str]):
|
488
|
+
"""
|
489
|
+
:param pulumi.Input[str] peer_instance: The peer instance.
|
490
|
+
"""
|
491
|
+
pulumi.set(__self__, "peer_instance", peer_instance)
|
492
|
+
|
493
|
+
@property
|
494
|
+
@pulumi.getter(name="peerInstance")
|
495
|
+
def peer_instance(self) -> pulumi.Input[str]:
|
496
|
+
"""
|
497
|
+
The peer instance.
|
498
|
+
"""
|
499
|
+
return pulumi.get(self, "peer_instance")
|
500
|
+
|
501
|
+
@peer_instance.setter
|
502
|
+
def peer_instance(self, value: pulumi.Input[str]):
|
503
|
+
pulumi.set(self, "peer_instance", value)
|
504
|
+
|
505
|
+
|
284
506
|
if not MYPY:
|
285
507
|
class InstanceNetworkArgsDict(TypedDict):
|
286
508
|
modes: pulumi.Input[Sequence[pulumi.Input[str]]]
|
@@ -27,7 +27,7 @@ class GetInstanceResult:
|
|
27
27
|
"""
|
28
28
|
A collection of values returned by getInstance.
|
29
29
|
"""
|
30
|
-
def __init__(__self__, create_time=None, deletion_protection_enabled=None, deletion_protection_reason=None, description=None, effective_labels=None, etag=None, file_shares=None, id=None, kms_key_name=None, labels=None, location=None, name=None, networks=None, performance_configs=None, project=None, protocol=None, pulumi_labels=None, tags=None, tier=None, zone=None):
|
30
|
+
def __init__(__self__, create_time=None, deletion_protection_enabled=None, deletion_protection_reason=None, description=None, effective_labels=None, effective_replications=None, etag=None, file_shares=None, id=None, initial_replications=None, kms_key_name=None, labels=None, location=None, name=None, networks=None, performance_configs=None, project=None, protocol=None, pulumi_labels=None, tags=None, tier=None, zone=None):
|
31
31
|
if create_time and not isinstance(create_time, str):
|
32
32
|
raise TypeError("Expected argument 'create_time' to be a str")
|
33
33
|
pulumi.set(__self__, "create_time", create_time)
|
@@ -43,6 +43,9 @@ class GetInstanceResult:
|
|
43
43
|
if effective_labels and not isinstance(effective_labels, dict):
|
44
44
|
raise TypeError("Expected argument 'effective_labels' to be a dict")
|
45
45
|
pulumi.set(__self__, "effective_labels", effective_labels)
|
46
|
+
if effective_replications and not isinstance(effective_replications, list):
|
47
|
+
raise TypeError("Expected argument 'effective_replications' to be a list")
|
48
|
+
pulumi.set(__self__, "effective_replications", effective_replications)
|
46
49
|
if etag and not isinstance(etag, str):
|
47
50
|
raise TypeError("Expected argument 'etag' to be a str")
|
48
51
|
pulumi.set(__self__, "etag", etag)
|
@@ -52,6 +55,9 @@ class GetInstanceResult:
|
|
52
55
|
if id and not isinstance(id, str):
|
53
56
|
raise TypeError("Expected argument 'id' to be a str")
|
54
57
|
pulumi.set(__self__, "id", id)
|
58
|
+
if initial_replications and not isinstance(initial_replications, list):
|
59
|
+
raise TypeError("Expected argument 'initial_replications' to be a list")
|
60
|
+
pulumi.set(__self__, "initial_replications", initial_replications)
|
55
61
|
if kms_key_name and not isinstance(kms_key_name, str):
|
56
62
|
raise TypeError("Expected argument 'kms_key_name' to be a str")
|
57
63
|
pulumi.set(__self__, "kms_key_name", kms_key_name)
|
@@ -114,6 +120,11 @@ class GetInstanceResult:
|
|
114
120
|
def effective_labels(self) -> Mapping[str, str]:
|
115
121
|
return pulumi.get(self, "effective_labels")
|
116
122
|
|
123
|
+
@property
|
124
|
+
@pulumi.getter(name="effectiveReplications")
|
125
|
+
def effective_replications(self) -> Sequence['outputs.GetInstanceEffectiveReplicationResult']:
|
126
|
+
return pulumi.get(self, "effective_replications")
|
127
|
+
|
117
128
|
@property
|
118
129
|
@pulumi.getter
|
119
130
|
def etag(self) -> str:
|
@@ -132,6 +143,11 @@ class GetInstanceResult:
|
|
132
143
|
"""
|
133
144
|
return pulumi.get(self, "id")
|
134
145
|
|
146
|
+
@property
|
147
|
+
@pulumi.getter(name="initialReplications")
|
148
|
+
def initial_replications(self) -> Sequence['outputs.GetInstanceInitialReplicationResult']:
|
149
|
+
return pulumi.get(self, "initial_replications")
|
150
|
+
|
135
151
|
@property
|
136
152
|
@pulumi.getter(name="kmsKeyName")
|
137
153
|
def kms_key_name(self) -> str:
|
@@ -204,9 +220,11 @@ class AwaitableGetInstanceResult(GetInstanceResult):
|
|
204
220
|
deletion_protection_reason=self.deletion_protection_reason,
|
205
221
|
description=self.description,
|
206
222
|
effective_labels=self.effective_labels,
|
223
|
+
effective_replications=self.effective_replications,
|
207
224
|
etag=self.etag,
|
208
225
|
file_shares=self.file_shares,
|
209
226
|
id=self.id,
|
227
|
+
initial_replications=self.initial_replications,
|
210
228
|
kms_key_name=self.kms_key_name,
|
211
229
|
labels=self.labels,
|
212
230
|
location=self.location,
|
@@ -263,9 +281,11 @@ def get_instance(location: Optional[str] = None,
|
|
263
281
|
deletion_protection_reason=pulumi.get(__ret__, 'deletion_protection_reason'),
|
264
282
|
description=pulumi.get(__ret__, 'description'),
|
265
283
|
effective_labels=pulumi.get(__ret__, 'effective_labels'),
|
284
|
+
effective_replications=pulumi.get(__ret__, 'effective_replications'),
|
266
285
|
etag=pulumi.get(__ret__, 'etag'),
|
267
286
|
file_shares=pulumi.get(__ret__, 'file_shares'),
|
268
287
|
id=pulumi.get(__ret__, 'id'),
|
288
|
+
initial_replications=pulumi.get(__ret__, 'initial_replications'),
|
269
289
|
kms_key_name=pulumi.get(__ret__, 'kms_key_name'),
|
270
290
|
labels=pulumi.get(__ret__, 'labels'),
|
271
291
|
location=pulumi.get(__ret__, 'location'),
|
@@ -319,9 +339,11 @@ def get_instance_output(location: Optional[pulumi.Input[Optional[str]]] = None,
|
|
319
339
|
deletion_protection_reason=pulumi.get(__response__, 'deletion_protection_reason'),
|
320
340
|
description=pulumi.get(__response__, 'description'),
|
321
341
|
effective_labels=pulumi.get(__response__, 'effective_labels'),
|
342
|
+
effective_replications=pulumi.get(__response__, 'effective_replications'),
|
322
343
|
etag=pulumi.get(__response__, 'etag'),
|
323
344
|
file_shares=pulumi.get(__response__, 'file_shares'),
|
324
345
|
id=pulumi.get(__response__, 'id'),
|
346
|
+
initial_replications=pulumi.get(__response__, 'initial_replications'),
|
325
347
|
kms_key_name=pulumi.get(__response__, 'kms_key_name'),
|
326
348
|
labels=pulumi.get(__response__, 'labels'),
|
327
349
|
location=pulumi.get(__response__, 'location'),
|