pulumi-gcp 8.11.0a1734157575__py3-none-any.whl → 8.11.0a1734385115__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 (142) hide show
  1. pulumi_gcp/__init__.py +91 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +29 -0
  3. pulumi_gcp/accesscontextmanager/outputs.py +18 -0
  4. pulumi_gcp/accesscontextmanager/service_perimeter.py +36 -0
  5. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +6 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +6 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +6 -0
  8. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +6 -0
  9. pulumi_gcp/apigee/app_group.py +7 -7
  10. pulumi_gcp/applicationintegration/client.py +8 -6
  11. pulumi_gcp/artifactregistry/_inputs.py +24 -15
  12. pulumi_gcp/artifactregistry/outputs.py +32 -20
  13. pulumi_gcp/artifactregistry/repository.py +128 -0
  14. pulumi_gcp/assuredworkloads/workload.py +7 -7
  15. pulumi_gcp/backupdisasterrecovery/__init__.py +2 -0
  16. pulumi_gcp/backupdisasterrecovery/backup_plan.py +2 -2
  17. pulumi_gcp/backupdisasterrecovery/backup_vault.py +12 -8
  18. pulumi_gcp/backupdisasterrecovery/get_backup.py +153 -0
  19. pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +415 -0
  20. pulumi_gcp/backupdisasterrecovery/outputs.py +63 -0
  21. pulumi_gcp/bigquery/app_profile.py +75 -0
  22. pulumi_gcp/billing/_inputs.py +6 -6
  23. pulumi_gcp/billing/outputs.py +4 -4
  24. pulumi_gcp/certificateauthority/_inputs.py +9 -9
  25. pulumi_gcp/certificateauthority/outputs.py +8 -8
  26. pulumi_gcp/cloudbuild/_inputs.py +53 -0
  27. pulumi_gcp/cloudbuild/outputs.py +50 -0
  28. pulumi_gcp/cloudbuild/worker_pool.py +47 -0
  29. pulumi_gcp/clouddeploy/_inputs.py +254 -0
  30. pulumi_gcp/clouddeploy/outputs.py +211 -0
  31. pulumi_gcp/clouddeploy/target.py +47 -0
  32. pulumi_gcp/cloudfunctionsv2/_inputs.py +6 -6
  33. pulumi_gcp/cloudfunctionsv2/outputs.py +8 -8
  34. pulumi_gcp/cloudrunv2/job.py +4 -4
  35. pulumi_gcp/cloudrunv2/service.py +4 -4
  36. pulumi_gcp/composer/get_user_workloads_config_map.py +4 -0
  37. pulumi_gcp/composer/get_user_workloads_secret.py +4 -0
  38. pulumi_gcp/composer/user_workloads_config_map.py +14 -0
  39. pulumi_gcp/composer/user_workloads_secret.py +6 -0
  40. pulumi_gcp/compute/_inputs.py +566 -25
  41. pulumi_gcp/compute/disk.py +21 -7
  42. pulumi_gcp/compute/firewall_policy_rule.py +12 -0
  43. pulumi_gcp/compute/get_forwarding_rules.py +2 -2
  44. pulumi_gcp/compute/get_global_forwarding_rule.py +12 -1
  45. pulumi_gcp/compute/get_instance_group_manager.py +12 -1
  46. pulumi_gcp/compute/get_network.py +35 -1
  47. pulumi_gcp/compute/get_region_instance_group_manager.py +12 -1
  48. pulumi_gcp/compute/get_region_network_endpoint_group.py +12 -1
  49. pulumi_gcp/compute/global_forwarding_rule.py +28 -0
  50. pulumi_gcp/compute/instance_group_manager.py +28 -0
  51. pulumi_gcp/compute/network.py +75 -0
  52. pulumi_gcp/compute/outputs.py +655 -26
  53. pulumi_gcp/compute/region_health_check.py +28 -0
  54. pulumi_gcp/compute/region_instance_group_manager.py +28 -0
  55. pulumi_gcp/compute/region_network_endpoint.py +28 -0
  56. pulumi_gcp/compute/region_network_endpoint_group.py +70 -2
  57. pulumi_gcp/compute/subnetwork.py +30 -2
  58. pulumi_gcp/compute/url_map.py +7 -7
  59. pulumi_gcp/config/__init__.pyi +2 -0
  60. pulumi_gcp/config/vars.py +4 -0
  61. pulumi_gcp/container/_inputs.py +201 -3
  62. pulumi_gcp/container/cluster.py +68 -14
  63. pulumi_gcp/container/get_cluster.py +12 -1
  64. pulumi_gcp/container/outputs.py +249 -3
  65. pulumi_gcp/dataproc/_inputs.py +209 -1
  66. pulumi_gcp/dataproc/batch.py +76 -0
  67. pulumi_gcp/dataproc/outputs.py +169 -3
  68. pulumi_gcp/diagflow/_inputs.py +3 -3
  69. pulumi_gcp/diagflow/outputs.py +2 -2
  70. pulumi_gcp/discoveryengine/search_engine.py +7 -7
  71. pulumi_gcp/firebaserules/release.py +76 -0
  72. pulumi_gcp/firestore/field.py +4 -4
  73. pulumi_gcp/gemini/__init__.py +15 -0
  74. pulumi_gcp/gemini/_inputs.py +183 -0
  75. pulumi_gcp/gemini/code_repository_index.py +659 -0
  76. pulumi_gcp/gemini/get_repository_group_iam_policy.py +171 -0
  77. pulumi_gcp/gemini/outputs.py +130 -0
  78. pulumi_gcp/gemini/repository_group.py +586 -0
  79. pulumi_gcp/gemini/repository_group_iam_binding.py +604 -0
  80. pulumi_gcp/gemini/repository_group_iam_member.py +604 -0
  81. pulumi_gcp/gemini/repository_group_iam_policy.py +443 -0
  82. pulumi_gcp/gkehub/_inputs.py +30 -10
  83. pulumi_gcp/gkehub/membership_binding.py +6 -6
  84. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  85. pulumi_gcp/gkehub/namespace.py +4 -4
  86. pulumi_gcp/gkehub/outputs.py +21 -7
  87. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  88. pulumi_gcp/iam/__init__.py +1 -0
  89. pulumi_gcp/iam/_inputs.py +137 -0
  90. pulumi_gcp/iam/folders_policy_binding.py +16 -0
  91. pulumi_gcp/iam/organizations_policy_binding.py +16 -0
  92. pulumi_gcp/iam/outputs.py +99 -0
  93. pulumi_gcp/iam/principal_access_boundary_policy.py +16 -0
  94. pulumi_gcp/iam/projects_policy_binding.py +917 -0
  95. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  96. pulumi_gcp/integrationconnectors/_inputs.py +15 -15
  97. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  98. pulumi_gcp/integrationconnectors/outputs.py +10 -10
  99. pulumi_gcp/monitoring/_inputs.py +13 -6
  100. pulumi_gcp/monitoring/outputs.py +10 -4
  101. pulumi_gcp/netapp/_inputs.py +3 -3
  102. pulumi_gcp/netapp/active_directory.py +7 -7
  103. pulumi_gcp/netapp/outputs.py +2 -2
  104. pulumi_gcp/netapp/volume.py +11 -11
  105. pulumi_gcp/networkconnectivity/spoke.py +10 -10
  106. pulumi_gcp/networksecurity/__init__.py +4 -0
  107. pulumi_gcp/networksecurity/_inputs.py +115 -0
  108. pulumi_gcp/networksecurity/mirroring_deployment.py +848 -0
  109. pulumi_gcp/networksecurity/mirroring_deployment_group.py +752 -0
  110. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +737 -0
  111. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +840 -0
  112. pulumi_gcp/networksecurity/outputs.py +70 -0
  113. pulumi_gcp/oracledatabase/autonomous_database.py +42 -4
  114. pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +42 -4
  115. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +50 -8
  116. pulumi_gcp/oracledatabase/get_autonomous_database.py +12 -1
  117. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +12 -1
  118. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +12 -1
  119. pulumi_gcp/oracledatabase/outputs.py +21 -0
  120. pulumi_gcp/orgpolicy/policy.py +2 -2
  121. pulumi_gcp/parallelstore/instance.py +4 -0
  122. pulumi_gcp/provider.py +20 -0
  123. pulumi_gcp/pubsub/subscription.py +6 -6
  124. pulumi_gcp/pulumi-plugin.json +1 -1
  125. pulumi_gcp/redis/_inputs.py +435 -3
  126. pulumi_gcp/redis/cluster.py +287 -16
  127. pulumi_gcp/redis/outputs.py +304 -2
  128. pulumi_gcp/serviceaccount/get_account_id_token.py +2 -2
  129. pulumi_gcp/serviceaccount/get_account_key.py +2 -2
  130. pulumi_gcp/storage/get_bucket.py +2 -2
  131. pulumi_gcp/storage/get_bucket_object_content.py +2 -2
  132. pulumi_gcp/tpu/__init__.py +1 -0
  133. pulumi_gcp/tpu/_inputs.py +188 -6
  134. pulumi_gcp/tpu/outputs.py +164 -4
  135. pulumi_gcp/tpu/v2_queued_resource.py +434 -0
  136. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  137. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  138. pulumi_gcp/vertex/ai_index_endpoint.py +2 -2
  139. {pulumi_gcp-8.11.0a1734157575.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/METADATA +3 -3
  140. {pulumi_gcp-8.11.0a1734157575.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/RECORD +142 -125
  141. {pulumi_gcp-8.11.0a1734157575.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/WHEEL +0 -0
  142. {pulumi_gcp-8.11.0a1734157575.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,848 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = ['MirroringDeploymentArgs', 'MirroringDeployment']
18
+
19
+ @pulumi.input_type
20
+ class MirroringDeploymentArgs:
21
+ def __init__(__self__, *,
22
+ forwarding_rule: pulumi.Input[str],
23
+ location: pulumi.Input[str],
24
+ mirroring_deployment_group: pulumi.Input[str],
25
+ mirroring_deployment_id: pulumi.Input[str],
26
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
+ project: Optional[pulumi.Input[str]] = None):
28
+ """
29
+ The set of arguments for constructing a MirroringDeployment resource.
30
+ :param pulumi.Input[str] forwarding_rule: Required. Immutable. The regional load balancer which the mirrored traffic should be forwarded
31
+ to. Format is:
32
+ projects/{project}/regions/{region}/forwardingRules/{forwardingRule}
33
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringDeployment`.
34
+ :param pulumi.Input[str] mirroring_deployment_group: Required. Immutable. The Mirroring Deployment Group that this resource is part of. Format is:
35
+ `projects/{project}/locations/global/mirroringDeploymentGroups/{mirroringDeploymentGroup}`
36
+ :param pulumi.Input[str] mirroring_deployment_id: Required. Id of the requesting object
37
+ If auto-generating Id server-side, remove this field and
38
+ mirroring_deployment_id from the method_signature of Create RPC
39
+
40
+
41
+ - - -
42
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
43
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
44
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
45
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
46
+ If it is not provided, the provider project is used.
47
+ """
48
+ pulumi.set(__self__, "forwarding_rule", forwarding_rule)
49
+ pulumi.set(__self__, "location", location)
50
+ pulumi.set(__self__, "mirroring_deployment_group", mirroring_deployment_group)
51
+ pulumi.set(__self__, "mirroring_deployment_id", mirroring_deployment_id)
52
+ if labels is not None:
53
+ pulumi.set(__self__, "labels", labels)
54
+ if project is not None:
55
+ pulumi.set(__self__, "project", project)
56
+
57
+ @property
58
+ @pulumi.getter(name="forwardingRule")
59
+ def forwarding_rule(self) -> pulumi.Input[str]:
60
+ """
61
+ Required. Immutable. The regional load balancer which the mirrored traffic should be forwarded
62
+ to. Format is:
63
+ projects/{project}/regions/{region}/forwardingRules/{forwardingRule}
64
+ """
65
+ return pulumi.get(self, "forwarding_rule")
66
+
67
+ @forwarding_rule.setter
68
+ def forwarding_rule(self, value: pulumi.Input[str]):
69
+ pulumi.set(self, "forwarding_rule", value)
70
+
71
+ @property
72
+ @pulumi.getter
73
+ def location(self) -> pulumi.Input[str]:
74
+ """
75
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringDeployment`.
76
+ """
77
+ return pulumi.get(self, "location")
78
+
79
+ @location.setter
80
+ def location(self, value: pulumi.Input[str]):
81
+ pulumi.set(self, "location", value)
82
+
83
+ @property
84
+ @pulumi.getter(name="mirroringDeploymentGroup")
85
+ def mirroring_deployment_group(self) -> pulumi.Input[str]:
86
+ """
87
+ Required. Immutable. The Mirroring Deployment Group that this resource is part of. Format is:
88
+ `projects/{project}/locations/global/mirroringDeploymentGroups/{mirroringDeploymentGroup}`
89
+ """
90
+ return pulumi.get(self, "mirroring_deployment_group")
91
+
92
+ @mirroring_deployment_group.setter
93
+ def mirroring_deployment_group(self, value: pulumi.Input[str]):
94
+ pulumi.set(self, "mirroring_deployment_group", value)
95
+
96
+ @property
97
+ @pulumi.getter(name="mirroringDeploymentId")
98
+ def mirroring_deployment_id(self) -> pulumi.Input[str]:
99
+ """
100
+ Required. Id of the requesting object
101
+ If auto-generating Id server-side, remove this field and
102
+ mirroring_deployment_id from the method_signature of Create RPC
103
+
104
+
105
+ - - -
106
+ """
107
+ return pulumi.get(self, "mirroring_deployment_id")
108
+
109
+ @mirroring_deployment_id.setter
110
+ def mirroring_deployment_id(self, value: pulumi.Input[str]):
111
+ pulumi.set(self, "mirroring_deployment_id", value)
112
+
113
+ @property
114
+ @pulumi.getter
115
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
116
+ """
117
+ Optional. Labels as key value pairs
118
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
119
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
120
+ """
121
+ return pulumi.get(self, "labels")
122
+
123
+ @labels.setter
124
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
125
+ pulumi.set(self, "labels", value)
126
+
127
+ @property
128
+ @pulumi.getter
129
+ def project(self) -> Optional[pulumi.Input[str]]:
130
+ """
131
+ The ID of the project in which the resource belongs.
132
+ If it is not provided, the provider project is used.
133
+ """
134
+ return pulumi.get(self, "project")
135
+
136
+ @project.setter
137
+ def project(self, value: Optional[pulumi.Input[str]]):
138
+ pulumi.set(self, "project", value)
139
+
140
+
141
+ @pulumi.input_type
142
+ class _MirroringDeploymentState:
143
+ def __init__(__self__, *,
144
+ create_time: Optional[pulumi.Input[str]] = None,
145
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
146
+ forwarding_rule: Optional[pulumi.Input[str]] = None,
147
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
148
+ location: Optional[pulumi.Input[str]] = None,
149
+ mirroring_deployment_group: Optional[pulumi.Input[str]] = None,
150
+ mirroring_deployment_id: Optional[pulumi.Input[str]] = None,
151
+ name: Optional[pulumi.Input[str]] = None,
152
+ project: Optional[pulumi.Input[str]] = None,
153
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
154
+ reconciling: Optional[pulumi.Input[bool]] = None,
155
+ state: Optional[pulumi.Input[str]] = None,
156
+ update_time: Optional[pulumi.Input[str]] = None):
157
+ """
158
+ Input properties used for looking up and filtering MirroringDeployment resources.
159
+ :param pulumi.Input[str] create_time: Output only. [Output only] Create time stamp
160
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
161
+ :param pulumi.Input[str] forwarding_rule: Required. Immutable. The regional load balancer which the mirrored traffic should be forwarded
162
+ to. Format is:
163
+ projects/{project}/regions/{region}/forwardingRules/{forwardingRule}
164
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
165
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
166
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
167
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringDeployment`.
168
+ :param pulumi.Input[str] mirroring_deployment_group: Required. Immutable. The Mirroring Deployment Group that this resource is part of. Format is:
169
+ `projects/{project}/locations/global/mirroringDeploymentGroups/{mirroringDeploymentGroup}`
170
+ :param pulumi.Input[str] mirroring_deployment_id: Required. Id of the requesting object
171
+ If auto-generating Id server-side, remove this field and
172
+ mirroring_deployment_id from the method_signature of Create RPC
173
+
174
+
175
+ - - -
176
+ :param pulumi.Input[str] name: Immutable. Identifier. The name of the MirroringDeployment.
177
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
178
+ If it is not provided, the provider project is used.
179
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
180
+ and default labels configured on the provider.
181
+ :param pulumi.Input[bool] reconciling: Output only. Whether reconciling is in progress, recommended per
182
+ https://google.aip.dev/128.
183
+ :param pulumi.Input[str] state: Output only. Current state of the deployment.
184
+ Possible values:
185
+ STATE_UNSPECIFIED
186
+ ACTIVE
187
+ CREATING
188
+ DELETING
189
+ OUT_OF_SYNC
190
+ DELETE_FAILED
191
+ :param pulumi.Input[str] update_time: Output only. [Output only] Update time stamp
192
+ """
193
+ if create_time is not None:
194
+ pulumi.set(__self__, "create_time", create_time)
195
+ if effective_labels is not None:
196
+ pulumi.set(__self__, "effective_labels", effective_labels)
197
+ if forwarding_rule is not None:
198
+ pulumi.set(__self__, "forwarding_rule", forwarding_rule)
199
+ if labels is not None:
200
+ pulumi.set(__self__, "labels", labels)
201
+ if location is not None:
202
+ pulumi.set(__self__, "location", location)
203
+ if mirroring_deployment_group is not None:
204
+ pulumi.set(__self__, "mirroring_deployment_group", mirroring_deployment_group)
205
+ if mirroring_deployment_id is not None:
206
+ pulumi.set(__self__, "mirroring_deployment_id", mirroring_deployment_id)
207
+ if name is not None:
208
+ pulumi.set(__self__, "name", name)
209
+ if project is not None:
210
+ pulumi.set(__self__, "project", project)
211
+ if pulumi_labels is not None:
212
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
213
+ if reconciling is not None:
214
+ pulumi.set(__self__, "reconciling", reconciling)
215
+ if state is not None:
216
+ pulumi.set(__self__, "state", state)
217
+ if update_time is not None:
218
+ pulumi.set(__self__, "update_time", update_time)
219
+
220
+ @property
221
+ @pulumi.getter(name="createTime")
222
+ def create_time(self) -> Optional[pulumi.Input[str]]:
223
+ """
224
+ Output only. [Output only] Create time stamp
225
+ """
226
+ return pulumi.get(self, "create_time")
227
+
228
+ @create_time.setter
229
+ def create_time(self, value: Optional[pulumi.Input[str]]):
230
+ pulumi.set(self, "create_time", value)
231
+
232
+ @property
233
+ @pulumi.getter(name="effectiveLabels")
234
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
235
+ """
236
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
237
+ """
238
+ return pulumi.get(self, "effective_labels")
239
+
240
+ @effective_labels.setter
241
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
242
+ pulumi.set(self, "effective_labels", value)
243
+
244
+ @property
245
+ @pulumi.getter(name="forwardingRule")
246
+ def forwarding_rule(self) -> Optional[pulumi.Input[str]]:
247
+ """
248
+ Required. Immutable. The regional load balancer which the mirrored traffic should be forwarded
249
+ to. Format is:
250
+ projects/{project}/regions/{region}/forwardingRules/{forwardingRule}
251
+ """
252
+ return pulumi.get(self, "forwarding_rule")
253
+
254
+ @forwarding_rule.setter
255
+ def forwarding_rule(self, value: Optional[pulumi.Input[str]]):
256
+ pulumi.set(self, "forwarding_rule", value)
257
+
258
+ @property
259
+ @pulumi.getter
260
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
261
+ """
262
+ Optional. Labels as key value pairs
263
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
264
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
265
+ """
266
+ return pulumi.get(self, "labels")
267
+
268
+ @labels.setter
269
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
270
+ pulumi.set(self, "labels", value)
271
+
272
+ @property
273
+ @pulumi.getter
274
+ def location(self) -> Optional[pulumi.Input[str]]:
275
+ """
276
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringDeployment`.
277
+ """
278
+ return pulumi.get(self, "location")
279
+
280
+ @location.setter
281
+ def location(self, value: Optional[pulumi.Input[str]]):
282
+ pulumi.set(self, "location", value)
283
+
284
+ @property
285
+ @pulumi.getter(name="mirroringDeploymentGroup")
286
+ def mirroring_deployment_group(self) -> Optional[pulumi.Input[str]]:
287
+ """
288
+ Required. Immutable. The Mirroring Deployment Group that this resource is part of. Format is:
289
+ `projects/{project}/locations/global/mirroringDeploymentGroups/{mirroringDeploymentGroup}`
290
+ """
291
+ return pulumi.get(self, "mirroring_deployment_group")
292
+
293
+ @mirroring_deployment_group.setter
294
+ def mirroring_deployment_group(self, value: Optional[pulumi.Input[str]]):
295
+ pulumi.set(self, "mirroring_deployment_group", value)
296
+
297
+ @property
298
+ @pulumi.getter(name="mirroringDeploymentId")
299
+ def mirroring_deployment_id(self) -> Optional[pulumi.Input[str]]:
300
+ """
301
+ Required. Id of the requesting object
302
+ If auto-generating Id server-side, remove this field and
303
+ mirroring_deployment_id from the method_signature of Create RPC
304
+
305
+
306
+ - - -
307
+ """
308
+ return pulumi.get(self, "mirroring_deployment_id")
309
+
310
+ @mirroring_deployment_id.setter
311
+ def mirroring_deployment_id(self, value: Optional[pulumi.Input[str]]):
312
+ pulumi.set(self, "mirroring_deployment_id", value)
313
+
314
+ @property
315
+ @pulumi.getter
316
+ def name(self) -> Optional[pulumi.Input[str]]:
317
+ """
318
+ Immutable. Identifier. The name of the MirroringDeployment.
319
+ """
320
+ return pulumi.get(self, "name")
321
+
322
+ @name.setter
323
+ def name(self, value: Optional[pulumi.Input[str]]):
324
+ pulumi.set(self, "name", value)
325
+
326
+ @property
327
+ @pulumi.getter
328
+ def project(self) -> Optional[pulumi.Input[str]]:
329
+ """
330
+ The ID of the project in which the resource belongs.
331
+ If it is not provided, the provider project is used.
332
+ """
333
+ return pulumi.get(self, "project")
334
+
335
+ @project.setter
336
+ def project(self, value: Optional[pulumi.Input[str]]):
337
+ pulumi.set(self, "project", value)
338
+
339
+ @property
340
+ @pulumi.getter(name="pulumiLabels")
341
+ def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
342
+ """
343
+ The combination of labels configured directly on the resource
344
+ and default labels configured on the provider.
345
+ """
346
+ return pulumi.get(self, "pulumi_labels")
347
+
348
+ @pulumi_labels.setter
349
+ def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
350
+ pulumi.set(self, "pulumi_labels", value)
351
+
352
+ @property
353
+ @pulumi.getter
354
+ def reconciling(self) -> Optional[pulumi.Input[bool]]:
355
+ """
356
+ Output only. Whether reconciling is in progress, recommended per
357
+ https://google.aip.dev/128.
358
+ """
359
+ return pulumi.get(self, "reconciling")
360
+
361
+ @reconciling.setter
362
+ def reconciling(self, value: Optional[pulumi.Input[bool]]):
363
+ pulumi.set(self, "reconciling", value)
364
+
365
+ @property
366
+ @pulumi.getter
367
+ def state(self) -> Optional[pulumi.Input[str]]:
368
+ """
369
+ Output only. Current state of the deployment.
370
+ Possible values:
371
+ STATE_UNSPECIFIED
372
+ ACTIVE
373
+ CREATING
374
+ DELETING
375
+ OUT_OF_SYNC
376
+ DELETE_FAILED
377
+ """
378
+ return pulumi.get(self, "state")
379
+
380
+ @state.setter
381
+ def state(self, value: Optional[pulumi.Input[str]]):
382
+ pulumi.set(self, "state", value)
383
+
384
+ @property
385
+ @pulumi.getter(name="updateTime")
386
+ def update_time(self) -> Optional[pulumi.Input[str]]:
387
+ """
388
+ Output only. [Output only] Update time stamp
389
+ """
390
+ return pulumi.get(self, "update_time")
391
+
392
+ @update_time.setter
393
+ def update_time(self, value: Optional[pulumi.Input[str]]):
394
+ pulumi.set(self, "update_time", value)
395
+
396
+
397
+ class MirroringDeployment(pulumi.CustomResource):
398
+ @overload
399
+ def __init__(__self__,
400
+ resource_name: str,
401
+ opts: Optional[pulumi.ResourceOptions] = None,
402
+ forwarding_rule: Optional[pulumi.Input[str]] = None,
403
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
404
+ location: Optional[pulumi.Input[str]] = None,
405
+ mirroring_deployment_group: Optional[pulumi.Input[str]] = None,
406
+ mirroring_deployment_id: Optional[pulumi.Input[str]] = None,
407
+ project: Optional[pulumi.Input[str]] = None,
408
+ __props__=None):
409
+ """
410
+ ## Example Usage
411
+
412
+ ### Network Security Mirroring Deployment Basic
413
+
414
+ ```python
415
+ import pulumi
416
+ import pulumi_gcp as gcp
417
+
418
+ network = gcp.compute.Network("network",
419
+ name="example-network",
420
+ auto_create_subnetworks=False)
421
+ subnetwork = gcp.compute.Subnetwork("subnetwork",
422
+ name="example-subnet",
423
+ region="us-central1",
424
+ ip_cidr_range="10.1.0.0/16",
425
+ network=network.name)
426
+ health_check = gcp.compute.RegionHealthCheck("health_check",
427
+ name="example-hc",
428
+ region="us-central1",
429
+ http_health_check={
430
+ "port": 80,
431
+ })
432
+ backend_service = gcp.compute.RegionBackendService("backend_service",
433
+ name="example-bs",
434
+ region="us-central1",
435
+ health_checks=health_check.id,
436
+ protocol="UDP",
437
+ load_balancing_scheme="INTERNAL")
438
+ forwarding_rule = gcp.compute.ForwardingRule("forwarding_rule",
439
+ name="example-fwr",
440
+ region="us-central1",
441
+ network=network.name,
442
+ subnetwork=subnetwork.name,
443
+ backend_service=backend_service.id,
444
+ load_balancing_scheme="INTERNAL",
445
+ ports=["6081"],
446
+ ip_protocol="UDP",
447
+ is_mirroring_collector=True)
448
+ deployment_group = gcp.networksecurity.MirroringDeploymentGroup("deployment_group",
449
+ mirroring_deployment_group_id="example-dg",
450
+ location="global",
451
+ network=network.id)
452
+ default = gcp.networksecurity.MirroringDeployment("default",
453
+ mirroring_deployment_id="example-deployment",
454
+ location="us-central1-a",
455
+ forwarding_rule=forwarding_rule.id,
456
+ mirroring_deployment_group=deployment_group.id,
457
+ labels={
458
+ "foo": "bar",
459
+ })
460
+ ```
461
+
462
+ ## Import
463
+
464
+ MirroringDeployment can be imported using any of these accepted formats:
465
+
466
+ * `projects/{{project}}/locations/{{location}}/mirroringDeployments/{{mirroring_deployment_id}}`
467
+
468
+ * `{{project}}/{{location}}/{{mirroring_deployment_id}}`
469
+
470
+ * `{{location}}/{{mirroring_deployment_id}}`
471
+
472
+ When using the `pulumi import` command, MirroringDeployment can be imported using one of the formats above. For example:
473
+
474
+ ```sh
475
+ $ pulumi import gcp:networksecurity/mirroringDeployment:MirroringDeployment default projects/{{project}}/locations/{{location}}/mirroringDeployments/{{mirroring_deployment_id}}
476
+ ```
477
+
478
+ ```sh
479
+ $ pulumi import gcp:networksecurity/mirroringDeployment:MirroringDeployment default {{project}}/{{location}}/{{mirroring_deployment_id}}
480
+ ```
481
+
482
+ ```sh
483
+ $ pulumi import gcp:networksecurity/mirroringDeployment:MirroringDeployment default {{location}}/{{mirroring_deployment_id}}
484
+ ```
485
+
486
+ :param str resource_name: The name of the resource.
487
+ :param pulumi.ResourceOptions opts: Options for the resource.
488
+ :param pulumi.Input[str] forwarding_rule: Required. Immutable. The regional load balancer which the mirrored traffic should be forwarded
489
+ to. Format is:
490
+ projects/{project}/regions/{region}/forwardingRules/{forwardingRule}
491
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
492
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
493
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
494
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringDeployment`.
495
+ :param pulumi.Input[str] mirroring_deployment_group: Required. Immutable. The Mirroring Deployment Group that this resource is part of. Format is:
496
+ `projects/{project}/locations/global/mirroringDeploymentGroups/{mirroringDeploymentGroup}`
497
+ :param pulumi.Input[str] mirroring_deployment_id: Required. Id of the requesting object
498
+ If auto-generating Id server-side, remove this field and
499
+ mirroring_deployment_id from the method_signature of Create RPC
500
+
501
+
502
+ - - -
503
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
504
+ If it is not provided, the provider project is used.
505
+ """
506
+ ...
507
+ @overload
508
+ def __init__(__self__,
509
+ resource_name: str,
510
+ args: MirroringDeploymentArgs,
511
+ opts: Optional[pulumi.ResourceOptions] = None):
512
+ """
513
+ ## Example Usage
514
+
515
+ ### Network Security Mirroring Deployment Basic
516
+
517
+ ```python
518
+ import pulumi
519
+ import pulumi_gcp as gcp
520
+
521
+ network = gcp.compute.Network("network",
522
+ name="example-network",
523
+ auto_create_subnetworks=False)
524
+ subnetwork = gcp.compute.Subnetwork("subnetwork",
525
+ name="example-subnet",
526
+ region="us-central1",
527
+ ip_cidr_range="10.1.0.0/16",
528
+ network=network.name)
529
+ health_check = gcp.compute.RegionHealthCheck("health_check",
530
+ name="example-hc",
531
+ region="us-central1",
532
+ http_health_check={
533
+ "port": 80,
534
+ })
535
+ backend_service = gcp.compute.RegionBackendService("backend_service",
536
+ name="example-bs",
537
+ region="us-central1",
538
+ health_checks=health_check.id,
539
+ protocol="UDP",
540
+ load_balancing_scheme="INTERNAL")
541
+ forwarding_rule = gcp.compute.ForwardingRule("forwarding_rule",
542
+ name="example-fwr",
543
+ region="us-central1",
544
+ network=network.name,
545
+ subnetwork=subnetwork.name,
546
+ backend_service=backend_service.id,
547
+ load_balancing_scheme="INTERNAL",
548
+ ports=["6081"],
549
+ ip_protocol="UDP",
550
+ is_mirroring_collector=True)
551
+ deployment_group = gcp.networksecurity.MirroringDeploymentGroup("deployment_group",
552
+ mirroring_deployment_group_id="example-dg",
553
+ location="global",
554
+ network=network.id)
555
+ default = gcp.networksecurity.MirroringDeployment("default",
556
+ mirroring_deployment_id="example-deployment",
557
+ location="us-central1-a",
558
+ forwarding_rule=forwarding_rule.id,
559
+ mirroring_deployment_group=deployment_group.id,
560
+ labels={
561
+ "foo": "bar",
562
+ })
563
+ ```
564
+
565
+ ## Import
566
+
567
+ MirroringDeployment can be imported using any of these accepted formats:
568
+
569
+ * `projects/{{project}}/locations/{{location}}/mirroringDeployments/{{mirroring_deployment_id}}`
570
+
571
+ * `{{project}}/{{location}}/{{mirroring_deployment_id}}`
572
+
573
+ * `{{location}}/{{mirroring_deployment_id}}`
574
+
575
+ When using the `pulumi import` command, MirroringDeployment can be imported using one of the formats above. For example:
576
+
577
+ ```sh
578
+ $ pulumi import gcp:networksecurity/mirroringDeployment:MirroringDeployment default projects/{{project}}/locations/{{location}}/mirroringDeployments/{{mirroring_deployment_id}}
579
+ ```
580
+
581
+ ```sh
582
+ $ pulumi import gcp:networksecurity/mirroringDeployment:MirroringDeployment default {{project}}/{{location}}/{{mirroring_deployment_id}}
583
+ ```
584
+
585
+ ```sh
586
+ $ pulumi import gcp:networksecurity/mirroringDeployment:MirroringDeployment default {{location}}/{{mirroring_deployment_id}}
587
+ ```
588
+
589
+ :param str resource_name: The name of the resource.
590
+ :param MirroringDeploymentArgs args: The arguments to use to populate this resource's properties.
591
+ :param pulumi.ResourceOptions opts: Options for the resource.
592
+ """
593
+ ...
594
+ def __init__(__self__, resource_name: str, *args, **kwargs):
595
+ resource_args, opts = _utilities.get_resource_args_opts(MirroringDeploymentArgs, pulumi.ResourceOptions, *args, **kwargs)
596
+ if resource_args is not None:
597
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
598
+ else:
599
+ __self__._internal_init(resource_name, *args, **kwargs)
600
+
601
+ def _internal_init(__self__,
602
+ resource_name: str,
603
+ opts: Optional[pulumi.ResourceOptions] = None,
604
+ forwarding_rule: Optional[pulumi.Input[str]] = None,
605
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
606
+ location: Optional[pulumi.Input[str]] = None,
607
+ mirroring_deployment_group: Optional[pulumi.Input[str]] = None,
608
+ mirroring_deployment_id: Optional[pulumi.Input[str]] = None,
609
+ project: Optional[pulumi.Input[str]] = None,
610
+ __props__=None):
611
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
612
+ if not isinstance(opts, pulumi.ResourceOptions):
613
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
614
+ if opts.id is None:
615
+ if __props__ is not None:
616
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
617
+ __props__ = MirroringDeploymentArgs.__new__(MirroringDeploymentArgs)
618
+
619
+ if forwarding_rule is None and not opts.urn:
620
+ raise TypeError("Missing required property 'forwarding_rule'")
621
+ __props__.__dict__["forwarding_rule"] = forwarding_rule
622
+ __props__.__dict__["labels"] = labels
623
+ if location is None and not opts.urn:
624
+ raise TypeError("Missing required property 'location'")
625
+ __props__.__dict__["location"] = location
626
+ if mirroring_deployment_group is None and not opts.urn:
627
+ raise TypeError("Missing required property 'mirroring_deployment_group'")
628
+ __props__.__dict__["mirroring_deployment_group"] = mirroring_deployment_group
629
+ if mirroring_deployment_id is None and not opts.urn:
630
+ raise TypeError("Missing required property 'mirroring_deployment_id'")
631
+ __props__.__dict__["mirroring_deployment_id"] = mirroring_deployment_id
632
+ __props__.__dict__["project"] = project
633
+ __props__.__dict__["create_time"] = None
634
+ __props__.__dict__["effective_labels"] = None
635
+ __props__.__dict__["name"] = None
636
+ __props__.__dict__["pulumi_labels"] = None
637
+ __props__.__dict__["reconciling"] = None
638
+ __props__.__dict__["state"] = None
639
+ __props__.__dict__["update_time"] = None
640
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
641
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
642
+ super(MirroringDeployment, __self__).__init__(
643
+ 'gcp:networksecurity/mirroringDeployment:MirroringDeployment',
644
+ resource_name,
645
+ __props__,
646
+ opts)
647
+
648
+ @staticmethod
649
+ def get(resource_name: str,
650
+ id: pulumi.Input[str],
651
+ opts: Optional[pulumi.ResourceOptions] = None,
652
+ create_time: Optional[pulumi.Input[str]] = None,
653
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
654
+ forwarding_rule: Optional[pulumi.Input[str]] = None,
655
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
656
+ location: Optional[pulumi.Input[str]] = None,
657
+ mirroring_deployment_group: Optional[pulumi.Input[str]] = None,
658
+ mirroring_deployment_id: Optional[pulumi.Input[str]] = None,
659
+ name: Optional[pulumi.Input[str]] = None,
660
+ project: Optional[pulumi.Input[str]] = None,
661
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
662
+ reconciling: Optional[pulumi.Input[bool]] = None,
663
+ state: Optional[pulumi.Input[str]] = None,
664
+ update_time: Optional[pulumi.Input[str]] = None) -> 'MirroringDeployment':
665
+ """
666
+ Get an existing MirroringDeployment resource's state with the given name, id, and optional extra
667
+ properties used to qualify the lookup.
668
+
669
+ :param str resource_name: The unique name of the resulting resource.
670
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
671
+ :param pulumi.ResourceOptions opts: Options for the resource.
672
+ :param pulumi.Input[str] create_time: Output only. [Output only] Create time stamp
673
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
674
+ :param pulumi.Input[str] forwarding_rule: Required. Immutable. The regional load balancer which the mirrored traffic should be forwarded
675
+ to. Format is:
676
+ projects/{project}/regions/{region}/forwardingRules/{forwardingRule}
677
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
678
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
679
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
680
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringDeployment`.
681
+ :param pulumi.Input[str] mirroring_deployment_group: Required. Immutable. The Mirroring Deployment Group that this resource is part of. Format is:
682
+ `projects/{project}/locations/global/mirroringDeploymentGroups/{mirroringDeploymentGroup}`
683
+ :param pulumi.Input[str] mirroring_deployment_id: Required. Id of the requesting object
684
+ If auto-generating Id server-side, remove this field and
685
+ mirroring_deployment_id from the method_signature of Create RPC
686
+
687
+
688
+ - - -
689
+ :param pulumi.Input[str] name: Immutable. Identifier. The name of the MirroringDeployment.
690
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
691
+ If it is not provided, the provider project is used.
692
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
693
+ and default labels configured on the provider.
694
+ :param pulumi.Input[bool] reconciling: Output only. Whether reconciling is in progress, recommended per
695
+ https://google.aip.dev/128.
696
+ :param pulumi.Input[str] state: Output only. Current state of the deployment.
697
+ Possible values:
698
+ STATE_UNSPECIFIED
699
+ ACTIVE
700
+ CREATING
701
+ DELETING
702
+ OUT_OF_SYNC
703
+ DELETE_FAILED
704
+ :param pulumi.Input[str] update_time: Output only. [Output only] Update time stamp
705
+ """
706
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
707
+
708
+ __props__ = _MirroringDeploymentState.__new__(_MirroringDeploymentState)
709
+
710
+ __props__.__dict__["create_time"] = create_time
711
+ __props__.__dict__["effective_labels"] = effective_labels
712
+ __props__.__dict__["forwarding_rule"] = forwarding_rule
713
+ __props__.__dict__["labels"] = labels
714
+ __props__.__dict__["location"] = location
715
+ __props__.__dict__["mirroring_deployment_group"] = mirroring_deployment_group
716
+ __props__.__dict__["mirroring_deployment_id"] = mirroring_deployment_id
717
+ __props__.__dict__["name"] = name
718
+ __props__.__dict__["project"] = project
719
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
720
+ __props__.__dict__["reconciling"] = reconciling
721
+ __props__.__dict__["state"] = state
722
+ __props__.__dict__["update_time"] = update_time
723
+ return MirroringDeployment(resource_name, opts=opts, __props__=__props__)
724
+
725
+ @property
726
+ @pulumi.getter(name="createTime")
727
+ def create_time(self) -> pulumi.Output[str]:
728
+ """
729
+ Output only. [Output only] Create time stamp
730
+ """
731
+ return pulumi.get(self, "create_time")
732
+
733
+ @property
734
+ @pulumi.getter(name="effectiveLabels")
735
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
736
+ """
737
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
738
+ """
739
+ return pulumi.get(self, "effective_labels")
740
+
741
+ @property
742
+ @pulumi.getter(name="forwardingRule")
743
+ def forwarding_rule(self) -> pulumi.Output[str]:
744
+ """
745
+ Required. Immutable. The regional load balancer which the mirrored traffic should be forwarded
746
+ to. Format is:
747
+ projects/{project}/regions/{region}/forwardingRules/{forwardingRule}
748
+ """
749
+ return pulumi.get(self, "forwarding_rule")
750
+
751
+ @property
752
+ @pulumi.getter
753
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
754
+ """
755
+ Optional. Labels as key value pairs
756
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
757
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
758
+ """
759
+ return pulumi.get(self, "labels")
760
+
761
+ @property
762
+ @pulumi.getter
763
+ def location(self) -> pulumi.Output[str]:
764
+ """
765
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringDeployment`.
766
+ """
767
+ return pulumi.get(self, "location")
768
+
769
+ @property
770
+ @pulumi.getter(name="mirroringDeploymentGroup")
771
+ def mirroring_deployment_group(self) -> pulumi.Output[str]:
772
+ """
773
+ Required. Immutable. The Mirroring Deployment Group that this resource is part of. Format is:
774
+ `projects/{project}/locations/global/mirroringDeploymentGroups/{mirroringDeploymentGroup}`
775
+ """
776
+ return pulumi.get(self, "mirroring_deployment_group")
777
+
778
+ @property
779
+ @pulumi.getter(name="mirroringDeploymentId")
780
+ def mirroring_deployment_id(self) -> pulumi.Output[str]:
781
+ """
782
+ Required. Id of the requesting object
783
+ If auto-generating Id server-side, remove this field and
784
+ mirroring_deployment_id from the method_signature of Create RPC
785
+
786
+
787
+ - - -
788
+ """
789
+ return pulumi.get(self, "mirroring_deployment_id")
790
+
791
+ @property
792
+ @pulumi.getter
793
+ def name(self) -> pulumi.Output[str]:
794
+ """
795
+ Immutable. Identifier. The name of the MirroringDeployment.
796
+ """
797
+ return pulumi.get(self, "name")
798
+
799
+ @property
800
+ @pulumi.getter
801
+ def project(self) -> pulumi.Output[str]:
802
+ """
803
+ The ID of the project in which the resource belongs.
804
+ If it is not provided, the provider project is used.
805
+ """
806
+ return pulumi.get(self, "project")
807
+
808
+ @property
809
+ @pulumi.getter(name="pulumiLabels")
810
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
811
+ """
812
+ The combination of labels configured directly on the resource
813
+ and default labels configured on the provider.
814
+ """
815
+ return pulumi.get(self, "pulumi_labels")
816
+
817
+ @property
818
+ @pulumi.getter
819
+ def reconciling(self) -> pulumi.Output[bool]:
820
+ """
821
+ Output only. Whether reconciling is in progress, recommended per
822
+ https://google.aip.dev/128.
823
+ """
824
+ return pulumi.get(self, "reconciling")
825
+
826
+ @property
827
+ @pulumi.getter
828
+ def state(self) -> pulumi.Output[str]:
829
+ """
830
+ Output only. Current state of the deployment.
831
+ Possible values:
832
+ STATE_UNSPECIFIED
833
+ ACTIVE
834
+ CREATING
835
+ DELETING
836
+ OUT_OF_SYNC
837
+ DELETE_FAILED
838
+ """
839
+ return pulumi.get(self, "state")
840
+
841
+ @property
842
+ @pulumi.getter(name="updateTime")
843
+ def update_time(self) -> pulumi.Output[str]:
844
+ """
845
+ Output only. [Output only] Update time stamp
846
+ """
847
+ return pulumi.get(self, "update_time")
848
+