pulumi-gcp 8.24.0a1743177741__py3-none-any.whl → 8.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.
Files changed (126) hide show
  1. pulumi_gcp/__init__.py +104 -0
  2. pulumi_gcp/_inputs.py +48 -0
  3. pulumi_gcp/accesscontextmanager/_inputs.py +324 -12
  4. pulumi_gcp/accesscontextmanager/outputs.py +204 -12
  5. pulumi_gcp/accesscontextmanager/service_perimeter.py +0 -2
  6. pulumi_gcp/apigee/__init__.py +1 -0
  7. pulumi_gcp/apigee/_inputs.py +58 -0
  8. pulumi_gcp/apigee/dns_zone.py +491 -0
  9. pulumi_gcp/apigee/outputs.py +53 -0
  10. pulumi_gcp/bigquery/reservation_assignment.py +7 -7
  11. pulumi_gcp/bigtable/table.py +8 -8
  12. pulumi_gcp/chronicle/data_access_label.py +2 -2
  13. pulumi_gcp/chronicle/data_access_scope.py +16 -0
  14. pulumi_gcp/chronicle/reference_list.py +16 -0
  15. pulumi_gcp/chronicle/retrohunt.py +16 -0
  16. pulumi_gcp/chronicle/rule.py +16 -0
  17. pulumi_gcp/chronicle/rule_deployment.py +16 -0
  18. pulumi_gcp/chronicle/watchlist.py +16 -0
  19. pulumi_gcp/cloudfunctionsv2/_inputs.py +20 -0
  20. pulumi_gcp/cloudfunctionsv2/outputs.py +25 -0
  21. pulumi_gcp/cloudrunv2/_inputs.py +20 -0
  22. pulumi_gcp/cloudrunv2/outputs.py +25 -0
  23. pulumi_gcp/compute/__init__.py +1 -0
  24. pulumi_gcp/compute/_inputs.py +2011 -43
  25. pulumi_gcp/compute/backend_service.py +121 -3
  26. pulumi_gcp/compute/get_backend_service.py +15 -4
  27. pulumi_gcp/compute/get_instance.py +12 -1
  28. pulumi_gcp/compute/get_region_backend_service.py +482 -0
  29. pulumi_gcp/compute/get_router.py +12 -1
  30. pulumi_gcp/compute/get_subnetwork.py +43 -1
  31. pulumi_gcp/compute/instance.py +47 -0
  32. pulumi_gcp/compute/instance_from_machine_image.py +94 -0
  33. pulumi_gcp/compute/instance_from_template.py +47 -0
  34. pulumi_gcp/compute/outputs.py +3578 -139
  35. pulumi_gcp/compute/public_delegated_prefix.py +69 -15
  36. pulumi_gcp/compute/router.py +54 -0
  37. pulumi_gcp/compute/subnetwork.py +35 -5
  38. pulumi_gcp/config/__init__.pyi +2 -0
  39. pulumi_gcp/config/outputs.py +27 -0
  40. pulumi_gcp/config/vars.py +4 -0
  41. pulumi_gcp/container/_inputs.py +12 -12
  42. pulumi_gcp/container/cluster.py +47 -0
  43. pulumi_gcp/container/get_cluster.py +12 -1
  44. pulumi_gcp/container/get_registry_image.py +4 -0
  45. pulumi_gcp/container/get_registry_repository.py +4 -0
  46. pulumi_gcp/container/outputs.py +8 -8
  47. pulumi_gcp/container/registry.py +4 -0
  48. pulumi_gcp/datafusion/instance.py +68 -0
  49. pulumi_gcp/dataproc/__init__.py +8 -0
  50. pulumi_gcp/dataproc/_inputs.py +196 -0
  51. pulumi_gcp/dataproc/get_metastore_database_iam_policy.py +193 -0
  52. pulumi_gcp/dataproc/get_metastore_table_iam_policy.py +210 -0
  53. pulumi_gcp/dataproc/metastore_database_iam_binding.py +848 -0
  54. pulumi_gcp/dataproc/metastore_database_iam_member.py +848 -0
  55. pulumi_gcp/dataproc/metastore_database_iam_policy.py +687 -0
  56. pulumi_gcp/dataproc/metastore_federation.py +38 -2
  57. pulumi_gcp/dataproc/metastore_table_iam_binding.py +895 -0
  58. pulumi_gcp/dataproc/metastore_table_iam_member.py +895 -0
  59. pulumi_gcp/dataproc/metastore_table_iam_policy.py +734 -0
  60. pulumi_gcp/dataproc/outputs.py +112 -0
  61. pulumi_gcp/datastream/_inputs.py +311 -94
  62. pulumi_gcp/datastream/connection_profile.py +40 -0
  63. pulumi_gcp/datastream/outputs.py +244 -51
  64. pulumi_gcp/datastream/stream.py +216 -0
  65. pulumi_gcp/discoveryengine/__init__.py +1 -0
  66. pulumi_gcp/discoveryengine/sitemap.py +504 -0
  67. pulumi_gcp/eventarc/__init__.py +1 -0
  68. pulumi_gcp/eventarc/enrollment.py +980 -0
  69. pulumi_gcp/firebase/__init__.py +1 -0
  70. pulumi_gcp/firebase/_inputs.py +484 -0
  71. pulumi_gcp/firebase/app_hosting_build.py +1232 -0
  72. pulumi_gcp/firebase/outputs.py +333 -0
  73. pulumi_gcp/identityplatform/_inputs.py +91 -0
  74. pulumi_gcp/identityplatform/outputs.py +73 -0
  75. pulumi_gcp/identityplatform/tenant.py +56 -0
  76. pulumi_gcp/managedkafka/cluster.py +2 -2
  77. pulumi_gcp/memorystore/__init__.py +1 -0
  78. pulumi_gcp/memorystore/_inputs.py +826 -0
  79. pulumi_gcp/memorystore/get_instance.py +23 -1
  80. pulumi_gcp/memorystore/instance.py +344 -23
  81. pulumi_gcp/memorystore/instance_desired_user_created_endpoints.py +843 -0
  82. pulumi_gcp/memorystore/outputs.py +889 -8
  83. pulumi_gcp/networksecurity/_inputs.py +473 -0
  84. pulumi_gcp/networksecurity/mirroring_deployment_group.py +44 -16
  85. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +94 -36
  86. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +53 -8
  87. pulumi_gcp/networksecurity/outputs.py +291 -1
  88. pulumi_gcp/networksecurity/security_profile.py +8 -0
  89. pulumi_gcp/organizations/__init__.py +1 -0
  90. pulumi_gcp/organizations/get_iam_custom_roles.py +164 -0
  91. pulumi_gcp/organizations/outputs.py +96 -0
  92. pulumi_gcp/parametermanager/get_parameter.py +16 -1
  93. pulumi_gcp/parametermanager/get_parameter_version.py +19 -1
  94. pulumi_gcp/parametermanager/get_parameter_version_render.py +4 -0
  95. pulumi_gcp/parametermanager/get_parameters.py +4 -0
  96. pulumi_gcp/parametermanager/get_regional_parameter.py +4 -0
  97. pulumi_gcp/parametermanager/get_regional_parameter_version.py +4 -0
  98. pulumi_gcp/parametermanager/get_regional_parameter_version_render.py +8 -0
  99. pulumi_gcp/parametermanager/get_regional_parameters.py +4 -0
  100. pulumi_gcp/parametermanager/outputs.py +11 -0
  101. pulumi_gcp/parametermanager/parameter.py +88 -0
  102. pulumi_gcp/parametermanager/parameter_version.py +74 -0
  103. pulumi_gcp/parametermanager/regional_parameter.py +12 -0
  104. pulumi_gcp/parametermanager/regional_parameter_version.py +12 -0
  105. pulumi_gcp/provider.py +15 -0
  106. pulumi_gcp/pulumi-plugin.json +1 -1
  107. pulumi_gcp/redis/_inputs.py +136 -0
  108. pulumi_gcp/redis/cluster.py +54 -0
  109. pulumi_gcp/redis/outputs.py +114 -0
  110. pulumi_gcp/secretmanager/regional_secret_version.py +0 -16
  111. pulumi_gcp/storage/__init__.py +4 -0
  112. pulumi_gcp/storage/_inputs.py +596 -0
  113. pulumi_gcp/storage/bucket.py +7 -7
  114. pulumi_gcp/storage/control_folder_intelligence_config.py +420 -0
  115. pulumi_gcp/storage/control_organization_intelligence_config.py +420 -0
  116. pulumi_gcp/storage/control_project_intelligence_config.py +49 -7
  117. pulumi_gcp/storage/get_bucket_object_content.py +16 -1
  118. pulumi_gcp/storage/get_control_folder_intelligence_config.py +160 -0
  119. pulumi_gcp/storage/get_control_organization_intelligence_config.py +160 -0
  120. pulumi_gcp/storage/get_control_project_intelligence_config.py +32 -2
  121. pulumi_gcp/storage/outputs.py +2132 -1312
  122. pulumi_gcp/workbench/instance.py +14 -2
  123. {pulumi_gcp-8.24.0a1743177741.dist-info → pulumi_gcp-8.25.0.dist-info}/METADATA +1 -1
  124. {pulumi_gcp-8.24.0a1743177741.dist-info → pulumi_gcp-8.25.0.dist-info}/RECORD +126 -107
  125. {pulumi_gcp-8.24.0a1743177741.dist-info → pulumi_gcp-8.25.0.dist-info}/WHEEL +0 -0
  126. {pulumi_gcp-8.24.0a1743177741.dist-info → pulumi_gcp-8.25.0.dist-info}/top_level.txt +0 -0
@@ -113,14 +113,26 @@ __all__ = [
113
113
  'InterceptEndpointGroupConnectedDeploymentGroupLocationArgsDict',
114
114
  'MirroringDeploymentGroupConnectedEndpointGroupArgs',
115
115
  'MirroringDeploymentGroupConnectedEndpointGroupArgsDict',
116
+ 'MirroringDeploymentGroupLocationArgs',
117
+ 'MirroringDeploymentGroupLocationArgsDict',
118
+ 'MirroringEndpointGroupAssociationArgs',
119
+ 'MirroringEndpointGroupAssociationArgsDict',
120
+ 'MirroringEndpointGroupAssociationLocationArgs',
121
+ 'MirroringEndpointGroupAssociationLocationArgsDict',
116
122
  'MirroringEndpointGroupAssociationLocationsDetailArgs',
117
123
  'MirroringEndpointGroupAssociationLocationsDetailArgsDict',
124
+ 'MirroringEndpointGroupConnectedDeploymentGroupArgs',
125
+ 'MirroringEndpointGroupConnectedDeploymentGroupArgsDict',
126
+ 'MirroringEndpointGroupConnectedDeploymentGroupLocationArgs',
127
+ 'MirroringEndpointGroupConnectedDeploymentGroupLocationArgsDict',
118
128
  'SecurityProfileCustomInterceptProfileArgs',
119
129
  'SecurityProfileCustomInterceptProfileArgsDict',
120
130
  'SecurityProfileCustomMirroringProfileArgs',
121
131
  'SecurityProfileCustomMirroringProfileArgsDict',
122
132
  'SecurityProfileThreatPreventionProfileArgs',
123
133
  'SecurityProfileThreatPreventionProfileArgsDict',
134
+ 'SecurityProfileThreatPreventionProfileAntivirusOverrideArgs',
135
+ 'SecurityProfileThreatPreventionProfileAntivirusOverrideArgsDict',
124
136
  'SecurityProfileThreatPreventionProfileSeverityOverrideArgs',
125
137
  'SecurityProfileThreatPreventionProfileSeverityOverrideArgsDict',
126
138
  'SecurityProfileThreatPreventionProfileThreatOverrideArgs',
@@ -3735,6 +3747,254 @@ class MirroringDeploymentGroupConnectedEndpointGroupArgs:
3735
3747
  pulumi.set(self, "name", value)
3736
3748
 
3737
3749
 
3750
+ if not MYPY:
3751
+ class MirroringDeploymentGroupLocationArgsDict(TypedDict):
3752
+ location: NotRequired[pulumi.Input[str]]
3753
+ """
3754
+ The cloud location of the deployment group, currently restricted to `global`.
3755
+ """
3756
+ state: NotRequired[pulumi.Input[str]]
3757
+ """
3758
+ (Output)
3759
+ The current state of the association in this location.
3760
+ Possible values:
3761
+ STATE_UNSPECIFIED
3762
+ ACTIVE
3763
+ OUT_OF_SYNC
3764
+ """
3765
+ elif False:
3766
+ MirroringDeploymentGroupLocationArgsDict: TypeAlias = Mapping[str, Any]
3767
+
3768
+ @pulumi.input_type
3769
+ class MirroringDeploymentGroupLocationArgs:
3770
+ def __init__(__self__, *,
3771
+ location: Optional[pulumi.Input[str]] = None,
3772
+ state: Optional[pulumi.Input[str]] = None):
3773
+ """
3774
+ :param pulumi.Input[str] location: The cloud location of the deployment group, currently restricted to `global`.
3775
+ :param pulumi.Input[str] state: (Output)
3776
+ The current state of the association in this location.
3777
+ Possible values:
3778
+ STATE_UNSPECIFIED
3779
+ ACTIVE
3780
+ OUT_OF_SYNC
3781
+ """
3782
+ if location is not None:
3783
+ pulumi.set(__self__, "location", location)
3784
+ if state is not None:
3785
+ pulumi.set(__self__, "state", state)
3786
+
3787
+ @property
3788
+ @pulumi.getter
3789
+ def location(self) -> Optional[pulumi.Input[str]]:
3790
+ """
3791
+ The cloud location of the deployment group, currently restricted to `global`.
3792
+ """
3793
+ return pulumi.get(self, "location")
3794
+
3795
+ @location.setter
3796
+ def location(self, value: Optional[pulumi.Input[str]]):
3797
+ pulumi.set(self, "location", value)
3798
+
3799
+ @property
3800
+ @pulumi.getter
3801
+ def state(self) -> Optional[pulumi.Input[str]]:
3802
+ """
3803
+ (Output)
3804
+ The current state of the association in this location.
3805
+ Possible values:
3806
+ STATE_UNSPECIFIED
3807
+ ACTIVE
3808
+ OUT_OF_SYNC
3809
+ """
3810
+ return pulumi.get(self, "state")
3811
+
3812
+ @state.setter
3813
+ def state(self, value: Optional[pulumi.Input[str]]):
3814
+ pulumi.set(self, "state", value)
3815
+
3816
+
3817
+ if not MYPY:
3818
+ class MirroringEndpointGroupAssociationArgsDict(TypedDict):
3819
+ name: NotRequired[pulumi.Input[str]]
3820
+ """
3821
+ (Output)
3822
+ The connected deployment group's resource name, for example:
3823
+ `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
3824
+ See https://google.aip.dev/124.
3825
+ """
3826
+ network: NotRequired[pulumi.Input[str]]
3827
+ """
3828
+ (Output)
3829
+ The associated network, for example:
3830
+ projects/123456789/global/networks/my-network.
3831
+ See https://google.aip.dev/124.
3832
+ """
3833
+ state: NotRequired[pulumi.Input[str]]
3834
+ """
3835
+ (Output)
3836
+ The current state of the association in this location.
3837
+ Possible values:
3838
+ STATE_UNSPECIFIED
3839
+ ACTIVE
3840
+ OUT_OF_SYNC
3841
+ """
3842
+ elif False:
3843
+ MirroringEndpointGroupAssociationArgsDict: TypeAlias = Mapping[str, Any]
3844
+
3845
+ @pulumi.input_type
3846
+ class MirroringEndpointGroupAssociationArgs:
3847
+ def __init__(__self__, *,
3848
+ name: Optional[pulumi.Input[str]] = None,
3849
+ network: Optional[pulumi.Input[str]] = None,
3850
+ state: Optional[pulumi.Input[str]] = None):
3851
+ """
3852
+ :param pulumi.Input[str] name: (Output)
3853
+ The connected deployment group's resource name, for example:
3854
+ `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
3855
+ See https://google.aip.dev/124.
3856
+ :param pulumi.Input[str] network: (Output)
3857
+ The associated network, for example:
3858
+ projects/123456789/global/networks/my-network.
3859
+ See https://google.aip.dev/124.
3860
+ :param pulumi.Input[str] state: (Output)
3861
+ The current state of the association in this location.
3862
+ Possible values:
3863
+ STATE_UNSPECIFIED
3864
+ ACTIVE
3865
+ OUT_OF_SYNC
3866
+ """
3867
+ if name is not None:
3868
+ pulumi.set(__self__, "name", name)
3869
+ if network is not None:
3870
+ pulumi.set(__self__, "network", network)
3871
+ if state is not None:
3872
+ pulumi.set(__self__, "state", state)
3873
+
3874
+ @property
3875
+ @pulumi.getter
3876
+ def name(self) -> Optional[pulumi.Input[str]]:
3877
+ """
3878
+ (Output)
3879
+ The connected deployment group's resource name, for example:
3880
+ `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
3881
+ See https://google.aip.dev/124.
3882
+ """
3883
+ return pulumi.get(self, "name")
3884
+
3885
+ @name.setter
3886
+ def name(self, value: Optional[pulumi.Input[str]]):
3887
+ pulumi.set(self, "name", value)
3888
+
3889
+ @property
3890
+ @pulumi.getter
3891
+ def network(self) -> Optional[pulumi.Input[str]]:
3892
+ """
3893
+ (Output)
3894
+ The associated network, for example:
3895
+ projects/123456789/global/networks/my-network.
3896
+ See https://google.aip.dev/124.
3897
+ """
3898
+ return pulumi.get(self, "network")
3899
+
3900
+ @network.setter
3901
+ def network(self, value: Optional[pulumi.Input[str]]):
3902
+ pulumi.set(self, "network", value)
3903
+
3904
+ @property
3905
+ @pulumi.getter
3906
+ def state(self) -> Optional[pulumi.Input[str]]:
3907
+ """
3908
+ (Output)
3909
+ The current state of the association in this location.
3910
+ Possible values:
3911
+ STATE_UNSPECIFIED
3912
+ ACTIVE
3913
+ OUT_OF_SYNC
3914
+ """
3915
+ return pulumi.get(self, "state")
3916
+
3917
+ @state.setter
3918
+ def state(self, value: Optional[pulumi.Input[str]]):
3919
+ pulumi.set(self, "state", value)
3920
+
3921
+
3922
+ if not MYPY:
3923
+ class MirroringEndpointGroupAssociationLocationArgsDict(TypedDict):
3924
+ location: NotRequired[pulumi.Input[str]]
3925
+ """
3926
+ The cloud location of the association, currently restricted to `global`.
3927
+
3928
+
3929
+ - - -
3930
+ """
3931
+ state: NotRequired[pulumi.Input[str]]
3932
+ """
3933
+ (Output)
3934
+ The current state of the association in this location.
3935
+ Possible values:
3936
+ STATE_UNSPECIFIED
3937
+ ACTIVE
3938
+ OUT_OF_SYNC
3939
+ """
3940
+ elif False:
3941
+ MirroringEndpointGroupAssociationLocationArgsDict: TypeAlias = Mapping[str, Any]
3942
+
3943
+ @pulumi.input_type
3944
+ class MirroringEndpointGroupAssociationLocationArgs:
3945
+ def __init__(__self__, *,
3946
+ location: Optional[pulumi.Input[str]] = None,
3947
+ state: Optional[pulumi.Input[str]] = None):
3948
+ """
3949
+ :param pulumi.Input[str] location: The cloud location of the association, currently restricted to `global`.
3950
+
3951
+
3952
+ - - -
3953
+ :param pulumi.Input[str] state: (Output)
3954
+ The current state of the association in this location.
3955
+ Possible values:
3956
+ STATE_UNSPECIFIED
3957
+ ACTIVE
3958
+ OUT_OF_SYNC
3959
+ """
3960
+ if location is not None:
3961
+ pulumi.set(__self__, "location", location)
3962
+ if state is not None:
3963
+ pulumi.set(__self__, "state", state)
3964
+
3965
+ @property
3966
+ @pulumi.getter
3967
+ def location(self) -> Optional[pulumi.Input[str]]:
3968
+ """
3969
+ The cloud location of the association, currently restricted to `global`.
3970
+
3971
+
3972
+ - - -
3973
+ """
3974
+ return pulumi.get(self, "location")
3975
+
3976
+ @location.setter
3977
+ def location(self, value: Optional[pulumi.Input[str]]):
3978
+ pulumi.set(self, "location", value)
3979
+
3980
+ @property
3981
+ @pulumi.getter
3982
+ def state(self) -> Optional[pulumi.Input[str]]:
3983
+ """
3984
+ (Output)
3985
+ The current state of the association in this location.
3986
+ Possible values:
3987
+ STATE_UNSPECIFIED
3988
+ ACTIVE
3989
+ OUT_OF_SYNC
3990
+ """
3991
+ return pulumi.get(self, "state")
3992
+
3993
+ @state.setter
3994
+ def state(self, value: Optional[pulumi.Input[str]]):
3995
+ pulumi.set(self, "state", value)
3996
+
3997
+
3738
3998
  if not MYPY:
3739
3999
  class MirroringEndpointGroupAssociationLocationsDetailArgsDict(TypedDict):
3740
4000
  location: NotRequired[pulumi.Input[str]]
@@ -3811,6 +4071,140 @@ class MirroringEndpointGroupAssociationLocationsDetailArgs:
3811
4071
  pulumi.set(self, "state", value)
3812
4072
 
3813
4073
 
4074
+ if not MYPY:
4075
+ class MirroringEndpointGroupConnectedDeploymentGroupArgsDict(TypedDict):
4076
+ locations: NotRequired[pulumi.Input[Sequence[pulumi.Input['MirroringEndpointGroupConnectedDeploymentGroupLocationArgsDict']]]]
4077
+ """
4078
+ (Output)
4079
+ The list of locations where the deployment group is present.
4080
+ Structure is documented below.
4081
+ """
4082
+ name: NotRequired[pulumi.Input[str]]
4083
+ """
4084
+ (Output)
4085
+ The connected deployment group's resource name, for example:
4086
+ `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
4087
+ See https://google.aip.dev/124.
4088
+ """
4089
+ elif False:
4090
+ MirroringEndpointGroupConnectedDeploymentGroupArgsDict: TypeAlias = Mapping[str, Any]
4091
+
4092
+ @pulumi.input_type
4093
+ class MirroringEndpointGroupConnectedDeploymentGroupArgs:
4094
+ def __init__(__self__, *,
4095
+ locations: Optional[pulumi.Input[Sequence[pulumi.Input['MirroringEndpointGroupConnectedDeploymentGroupLocationArgs']]]] = None,
4096
+ name: Optional[pulumi.Input[str]] = None):
4097
+ """
4098
+ :param pulumi.Input[Sequence[pulumi.Input['MirroringEndpointGroupConnectedDeploymentGroupLocationArgs']]] locations: (Output)
4099
+ The list of locations where the deployment group is present.
4100
+ Structure is documented below.
4101
+ :param pulumi.Input[str] name: (Output)
4102
+ The connected deployment group's resource name, for example:
4103
+ `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
4104
+ See https://google.aip.dev/124.
4105
+ """
4106
+ if locations is not None:
4107
+ pulumi.set(__self__, "locations", locations)
4108
+ if name is not None:
4109
+ pulumi.set(__self__, "name", name)
4110
+
4111
+ @property
4112
+ @pulumi.getter
4113
+ def locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MirroringEndpointGroupConnectedDeploymentGroupLocationArgs']]]]:
4114
+ """
4115
+ (Output)
4116
+ The list of locations where the deployment group is present.
4117
+ Structure is documented below.
4118
+ """
4119
+ return pulumi.get(self, "locations")
4120
+
4121
+ @locations.setter
4122
+ def locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MirroringEndpointGroupConnectedDeploymentGroupLocationArgs']]]]):
4123
+ pulumi.set(self, "locations", value)
4124
+
4125
+ @property
4126
+ @pulumi.getter
4127
+ def name(self) -> Optional[pulumi.Input[str]]:
4128
+ """
4129
+ (Output)
4130
+ The connected deployment group's resource name, for example:
4131
+ `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
4132
+ See https://google.aip.dev/124.
4133
+ """
4134
+ return pulumi.get(self, "name")
4135
+
4136
+ @name.setter
4137
+ def name(self, value: Optional[pulumi.Input[str]]):
4138
+ pulumi.set(self, "name", value)
4139
+
4140
+
4141
+ if not MYPY:
4142
+ class MirroringEndpointGroupConnectedDeploymentGroupLocationArgsDict(TypedDict):
4143
+ location: NotRequired[pulumi.Input[str]]
4144
+ """
4145
+ The cloud location of the endpoint group, currently restricted to `global`.
4146
+ """
4147
+ state: NotRequired[pulumi.Input[str]]
4148
+ """
4149
+ (Output)
4150
+ The current state of the association in this location.
4151
+ Possible values:
4152
+ STATE_UNSPECIFIED
4153
+ ACTIVE
4154
+ OUT_OF_SYNC
4155
+ """
4156
+ elif False:
4157
+ MirroringEndpointGroupConnectedDeploymentGroupLocationArgsDict: TypeAlias = Mapping[str, Any]
4158
+
4159
+ @pulumi.input_type
4160
+ class MirroringEndpointGroupConnectedDeploymentGroupLocationArgs:
4161
+ def __init__(__self__, *,
4162
+ location: Optional[pulumi.Input[str]] = None,
4163
+ state: Optional[pulumi.Input[str]] = None):
4164
+ """
4165
+ :param pulumi.Input[str] location: The cloud location of the endpoint group, currently restricted to `global`.
4166
+ :param pulumi.Input[str] state: (Output)
4167
+ The current state of the association in this location.
4168
+ Possible values:
4169
+ STATE_UNSPECIFIED
4170
+ ACTIVE
4171
+ OUT_OF_SYNC
4172
+ """
4173
+ if location is not None:
4174
+ pulumi.set(__self__, "location", location)
4175
+ if state is not None:
4176
+ pulumi.set(__self__, "state", state)
4177
+
4178
+ @property
4179
+ @pulumi.getter
4180
+ def location(self) -> Optional[pulumi.Input[str]]:
4181
+ """
4182
+ The cloud location of the endpoint group, currently restricted to `global`.
4183
+ """
4184
+ return pulumi.get(self, "location")
4185
+
4186
+ @location.setter
4187
+ def location(self, value: Optional[pulumi.Input[str]]):
4188
+ pulumi.set(self, "location", value)
4189
+
4190
+ @property
4191
+ @pulumi.getter
4192
+ def state(self) -> Optional[pulumi.Input[str]]:
4193
+ """
4194
+ (Output)
4195
+ The current state of the association in this location.
4196
+ Possible values:
4197
+ STATE_UNSPECIFIED
4198
+ ACTIVE
4199
+ OUT_OF_SYNC
4200
+ """
4201
+ return pulumi.get(self, "state")
4202
+
4203
+ @state.setter
4204
+ def state(self, value: Optional[pulumi.Input[str]]):
4205
+ pulumi.set(self, "state", value)
4206
+
4207
+
3814
4208
  if not MYPY:
3815
4209
  class SecurityProfileCustomInterceptProfileArgsDict(TypedDict):
3816
4210
  intercept_endpoint_group: pulumi.Input[str]
@@ -3881,6 +4275,11 @@ class SecurityProfileCustomMirroringProfileArgs:
3881
4275
 
3882
4276
  if not MYPY:
3883
4277
  class SecurityProfileThreatPreventionProfileArgsDict(TypedDict):
4278
+ antivirus_overrides: NotRequired[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileAntivirusOverrideArgsDict']]]]
4279
+ """
4280
+ Defines what action to take for antivirus threats per protocol.
4281
+ Structure is documented below.
4282
+ """
3884
4283
  severity_overrides: NotRequired[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileSeverityOverrideArgsDict']]]]
3885
4284
  """
3886
4285
  The configuration for overriding threats actions by severity match.
@@ -3899,9 +4298,12 @@ elif False:
3899
4298
  @pulumi.input_type
3900
4299
  class SecurityProfileThreatPreventionProfileArgs:
3901
4300
  def __init__(__self__, *,
4301
+ antivirus_overrides: Optional[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileAntivirusOverrideArgs']]]] = None,
3902
4302
  severity_overrides: Optional[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileSeverityOverrideArgs']]]] = None,
3903
4303
  threat_overrides: Optional[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileThreatOverrideArgs']]]] = None):
3904
4304
  """
4305
+ :param pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileAntivirusOverrideArgs']]] antivirus_overrides: Defines what action to take for antivirus threats per protocol.
4306
+ Structure is documented below.
3905
4307
  :param pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileSeverityOverrideArgs']]] severity_overrides: The configuration for overriding threats actions by severity match.
3906
4308
  Structure is documented below.
3907
4309
  :param pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileThreatOverrideArgs']]] threat_overrides: The configuration for overriding threats actions by threat id match.
@@ -3909,11 +4311,26 @@ class SecurityProfileThreatPreventionProfileArgs:
3909
4311
  and threat overrides, the threat overrides action is applied.
3910
4312
  Structure is documented below.
3911
4313
  """
4314
+ if antivirus_overrides is not None:
4315
+ pulumi.set(__self__, "antivirus_overrides", antivirus_overrides)
3912
4316
  if severity_overrides is not None:
3913
4317
  pulumi.set(__self__, "severity_overrides", severity_overrides)
3914
4318
  if threat_overrides is not None:
3915
4319
  pulumi.set(__self__, "threat_overrides", threat_overrides)
3916
4320
 
4321
+ @property
4322
+ @pulumi.getter(name="antivirusOverrides")
4323
+ def antivirus_overrides(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileAntivirusOverrideArgs']]]]:
4324
+ """
4325
+ Defines what action to take for antivirus threats per protocol.
4326
+ Structure is documented below.
4327
+ """
4328
+ return pulumi.get(self, "antivirus_overrides")
4329
+
4330
+ @antivirus_overrides.setter
4331
+ def antivirus_overrides(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileAntivirusOverrideArgs']]]]):
4332
+ pulumi.set(self, "antivirus_overrides", value)
4333
+
3917
4334
  @property
3918
4335
  @pulumi.getter(name="severityOverrides")
3919
4336
  def severity_overrides(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileSeverityOverrideArgs']]]]:
@@ -3943,6 +4360,62 @@ class SecurityProfileThreatPreventionProfileArgs:
3943
4360
  pulumi.set(self, "threat_overrides", value)
3944
4361
 
3945
4362
 
4363
+ if not MYPY:
4364
+ class SecurityProfileThreatPreventionProfileAntivirusOverrideArgsDict(TypedDict):
4365
+ action: pulumi.Input[str]
4366
+ """
4367
+ Threat action override. For some threat types, only a subset of actions applies.
4368
+ Possible values are: `ALERT`, `ALLOW`, `DEFAULT_ACTION`, `DENY`.
4369
+ """
4370
+ protocol: pulumi.Input[str]
4371
+ """
4372
+ Required protocol to match.
4373
+ Possible values are: `SMTP`, `SMB`, `POP3`, `IMAP`, `HTTP2`, `HTTP`, `FTP`.
4374
+ """
4375
+ elif False:
4376
+ SecurityProfileThreatPreventionProfileAntivirusOverrideArgsDict: TypeAlias = Mapping[str, Any]
4377
+
4378
+ @pulumi.input_type
4379
+ class SecurityProfileThreatPreventionProfileAntivirusOverrideArgs:
4380
+ def __init__(__self__, *,
4381
+ action: pulumi.Input[str],
4382
+ protocol: pulumi.Input[str]):
4383
+ """
4384
+ :param pulumi.Input[str] action: Threat action override. For some threat types, only a subset of actions applies.
4385
+ Possible values are: `ALERT`, `ALLOW`, `DEFAULT_ACTION`, `DENY`.
4386
+ :param pulumi.Input[str] protocol: Required protocol to match.
4387
+ Possible values are: `SMTP`, `SMB`, `POP3`, `IMAP`, `HTTP2`, `HTTP`, `FTP`.
4388
+ """
4389
+ pulumi.set(__self__, "action", action)
4390
+ pulumi.set(__self__, "protocol", protocol)
4391
+
4392
+ @property
4393
+ @pulumi.getter
4394
+ def action(self) -> pulumi.Input[str]:
4395
+ """
4396
+ Threat action override. For some threat types, only a subset of actions applies.
4397
+ Possible values are: `ALERT`, `ALLOW`, `DEFAULT_ACTION`, `DENY`.
4398
+ """
4399
+ return pulumi.get(self, "action")
4400
+
4401
+ @action.setter
4402
+ def action(self, value: pulumi.Input[str]):
4403
+ pulumi.set(self, "action", value)
4404
+
4405
+ @property
4406
+ @pulumi.getter
4407
+ def protocol(self) -> pulumi.Input[str]:
4408
+ """
4409
+ Required protocol to match.
4410
+ Possible values are: `SMTP`, `SMB`, `POP3`, `IMAP`, `HTTP2`, `HTTP`, `FTP`.
4411
+ """
4412
+ return pulumi.get(self, "protocol")
4413
+
4414
+ @protocol.setter
4415
+ def protocol(self, value: pulumi.Input[str]):
4416
+ pulumi.set(self, "protocol", value)
4417
+
4418
+
3946
4419
  if not MYPY:
3947
4420
  class SecurityProfileThreatPreventionProfileSeverityOverrideArgsDict(TypedDict):
3948
4421
  action: pulumi.Input[str]