pulumi-gcp 8.17.0a1738274430__py3-none-any.whl → 8.18.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 (137) hide show
  1. pulumi_gcp/__init__.py +115 -0
  2. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +28 -0
  3. pulumi_gcp/alloydb/cluster.py +75 -7
  4. pulumi_gcp/alloydb/user.py +10 -1
  5. pulumi_gcp/apigee/_inputs.py +91 -0
  6. pulumi_gcp/apigee/endpoint_attachment.py +0 -64
  7. pulumi_gcp/apigee/environment.py +54 -0
  8. pulumi_gcp/apigee/outputs.py +54 -0
  9. pulumi_gcp/apihub/__init__.py +10 -0
  10. pulumi_gcp/apihub/_inputs.py +154 -0
  11. pulumi_gcp/apihub/api_hub_instance.py +784 -0
  12. pulumi_gcp/apihub/outputs.py +124 -0
  13. pulumi_gcp/assuredworkloads/workload.py +7 -7
  14. pulumi_gcp/beyondcorp/__init__.py +4 -0
  15. pulumi_gcp/beyondcorp/_inputs.py +130 -0
  16. pulumi_gcp/beyondcorp/get_security_gateway_iam_policy.py +180 -0
  17. pulumi_gcp/beyondcorp/outputs.py +76 -0
  18. pulumi_gcp/beyondcorp/security_gateway.py +52 -25
  19. pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +1075 -0
  20. pulumi_gcp/beyondcorp/security_gateway_iam_member.py +1075 -0
  21. pulumi_gcp/beyondcorp/security_gateway_iam_policy.py +894 -0
  22. pulumi_gcp/bigquery/_inputs.py +33 -0
  23. pulumi_gcp/bigquery/dataset.py +7 -7
  24. pulumi_gcp/bigquery/outputs.py +36 -0
  25. pulumi_gcp/bigquery/table.py +61 -7
  26. pulumi_gcp/chronicle/__init__.py +1 -0
  27. pulumi_gcp/chronicle/_inputs.py +124 -0
  28. pulumi_gcp/chronicle/outputs.py +112 -0
  29. pulumi_gcp/chronicle/retrohunt.py +629 -0
  30. pulumi_gcp/cloudquota/s_quota_adjuster_settings.py +23 -23
  31. pulumi_gcp/cloudrunv2/_inputs.py +197 -0
  32. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  33. pulumi_gcp/cloudrunv2/outputs.py +256 -0
  34. pulumi_gcp/cloudrunv2/service.py +159 -0
  35. pulumi_gcp/colab/__init__.py +5 -0
  36. pulumi_gcp/colab/_inputs.py +131 -0
  37. pulumi_gcp/colab/get_runtime_template_iam_policy.py +182 -0
  38. pulumi_gcp/colab/outputs.py +92 -0
  39. pulumi_gcp/colab/runtime.py +696 -0
  40. pulumi_gcp/colab/runtime_template_iam_binding.py +828 -0
  41. pulumi_gcp/colab/runtime_template_iam_member.py +828 -0
  42. pulumi_gcp/colab/runtime_template_iam_policy.py +667 -0
  43. pulumi_gcp/compute/__init__.py +4 -0
  44. pulumi_gcp/compute/_inputs.py +535 -9
  45. pulumi_gcp/compute/firewall_policy_rule.py +104 -22
  46. pulumi_gcp/compute/firewall_policy_with_rules.py +114 -42
  47. pulumi_gcp/compute/get_instance_template_iam_policy.py +159 -0
  48. pulumi_gcp/compute/get_network.py +3 -3
  49. pulumi_gcp/compute/instance_template_iam_binding.py +998 -0
  50. pulumi_gcp/compute/instance_template_iam_member.py +998 -0
  51. pulumi_gcp/compute/instance_template_iam_policy.py +817 -0
  52. pulumi_gcp/compute/interconnect_attachment.py +189 -2
  53. pulumi_gcp/compute/network.py +7 -7
  54. pulumi_gcp/compute/network_firewall_policy_rule.py +122 -10
  55. pulumi_gcp/compute/network_firewall_policy_with_rules.py +116 -44
  56. pulumi_gcp/compute/outputs.py +358 -6
  57. pulumi_gcp/compute/project_metadata_item.py +12 -0
  58. pulumi_gcp/compute/public_advertised_prefix.py +87 -0
  59. pulumi_gcp/compute/region_network_firewall_policy_rule.py +130 -10
  60. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +104 -32
  61. pulumi_gcp/compute/router_peer.py +227 -3
  62. pulumi_gcp/config/__init__.pyi +2 -0
  63. pulumi_gcp/config/vars.py +4 -0
  64. pulumi_gcp/container/_inputs.py +79 -20
  65. pulumi_gcp/container/outputs.py +75 -12
  66. pulumi_gcp/dataproc/_inputs.py +34 -0
  67. pulumi_gcp/dataproc/outputs.py +37 -0
  68. pulumi_gcp/dataproc/workflow_template.py +47 -0
  69. pulumi_gcp/filestore/get_instance.py +12 -1
  70. pulumi_gcp/filestore/instance.py +75 -0
  71. pulumi_gcp/firestore/field.py +60 -0
  72. pulumi_gcp/gemini/code_repository_index.py +29 -33
  73. pulumi_gcp/gemini/get_repository_group_iam_policy.py +28 -2
  74. pulumi_gcp/gemini/repository_group.py +76 -26
  75. pulumi_gcp/gemini/repository_group_iam_binding.py +258 -0
  76. pulumi_gcp/gemini/repository_group_iam_member.py +258 -0
  77. pulumi_gcp/gemini/repository_group_iam_policy.py +258 -0
  78. pulumi_gcp/gkehub/_inputs.py +20 -0
  79. pulumi_gcp/gkehub/membership_binding.py +6 -6
  80. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  81. pulumi_gcp/gkehub/namespace.py +4 -4
  82. pulumi_gcp/gkehub/outputs.py +26 -1
  83. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  84. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  85. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  86. pulumi_gcp/kms/__init__.py +1 -0
  87. pulumi_gcp/kms/get_key_handles.py +172 -0
  88. pulumi_gcp/kms/outputs.py +45 -0
  89. pulumi_gcp/netapp/storage_pool.py +1 -1
  90. pulumi_gcp/networkconnectivity/spoke.py +76 -14
  91. pulumi_gcp/networksecurity/_inputs.py +72 -0
  92. pulumi_gcp/networksecurity/outputs.py +76 -0
  93. pulumi_gcp/networksecurity/security_profile.py +233 -7
  94. pulumi_gcp/networksecurity/security_profile_group.py +218 -0
  95. pulumi_gcp/organizations/__init__.py +1 -0
  96. pulumi_gcp/organizations/get_s.py +128 -0
  97. pulumi_gcp/organizations/outputs.py +63 -0
  98. pulumi_gcp/orgpolicy/policy.py +2 -2
  99. pulumi_gcp/parametermanager/__init__.py +6 -0
  100. pulumi_gcp/parametermanager/get_parameter.py +211 -0
  101. pulumi_gcp/parametermanager/get_parameter_version.py +216 -0
  102. pulumi_gcp/parametermanager/get_parameters.py +140 -0
  103. pulumi_gcp/parametermanager/get_regional_parameter_version.py +235 -0
  104. pulumi_gcp/parametermanager/get_regional_parameters.py +157 -0
  105. pulumi_gcp/parametermanager/outputs.py +366 -0
  106. pulumi_gcp/parametermanager/parameter_version.py +496 -0
  107. pulumi_gcp/parametermanager/regional_parameter_version.py +10 -38
  108. pulumi_gcp/provider.py +20 -0
  109. pulumi_gcp/pubsub/_inputs.py +477 -1
  110. pulumi_gcp/pubsub/outputs.py +631 -2
  111. pulumi_gcp/pubsub/subscription.py +6 -6
  112. pulumi_gcp/pubsub/topic.py +112 -0
  113. pulumi_gcp/pulumi-plugin.json +1 -1
  114. pulumi_gcp/redis/__init__.py +1 -0
  115. pulumi_gcp/redis/_inputs.py +342 -6
  116. pulumi_gcp/redis/cluster.py +223 -102
  117. pulumi_gcp/redis/cluster_user_created_connections.py +845 -0
  118. pulumi_gcp/redis/outputs.py +268 -4
  119. pulumi_gcp/resourcemanager/lien.py +12 -0
  120. pulumi_gcp/secretmanager/regional_secret.py +4 -0
  121. pulumi_gcp/secretmanager/regional_secret_version.py +12 -0
  122. pulumi_gcp/secretmanager/secret.py +4 -0
  123. pulumi_gcp/secretmanager/secret_version.py +12 -0
  124. pulumi_gcp/securityposture/posture.py +4 -0
  125. pulumi_gcp/securityposture/posture_deployment.py +4 -0
  126. pulumi_gcp/serviceaccount/get_s.py +98 -8
  127. pulumi_gcp/spanner/_inputs.py +68 -0
  128. pulumi_gcp/spanner/backup_schedule.py +70 -4
  129. pulumi_gcp/spanner/outputs.py +60 -0
  130. pulumi_gcp/storage/get_bucket_object_content.py +4 -4
  131. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  132. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  133. pulumi_gcp/workflows/workflow.py +175 -0
  134. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/METADATA +1 -1
  135. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/RECORD +137 -110
  136. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/WHEEL +0 -0
  137. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,629 @@
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
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['RetrohuntArgs', 'Retrohunt']
20
+
21
+ @pulumi.input_type
22
+ class RetrohuntArgs:
23
+ def __init__(__self__, *,
24
+ instance: pulumi.Input[str],
25
+ location: pulumi.Input[str],
26
+ process_interval: pulumi.Input['RetrohuntProcessIntervalArgs'],
27
+ rule: pulumi.Input[str],
28
+ retrohunt_id: Optional[pulumi.Input[str]] = None,
29
+ project: Optional[pulumi.Input[str]] = None):
30
+ """
31
+ The set of arguments for constructing a Retrohunt resource.
32
+ :param pulumi.Input[str] instance: The unique identifier for the Chronicle instance, which is the same as the customer ID.
33
+ :param pulumi.Input[str] location: The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
34
+ :param pulumi.Input['RetrohuntProcessIntervalArgs'] process_interval: Represents a time interval, encoded as a Timestamp start (inclusive) and a
35
+ Timestamp end (exclusive).
36
+ The start must be less than or equal to the end.
37
+ When the start equals the end, the interval is empty (matches no time).
38
+ When both start and end are unspecified, the interval matches any time.
39
+ Structure is documented below.
40
+ :param pulumi.Input[str] rule: The Rule ID of the rule.
41
+ :param pulumi.Input[str] retrohunt_id: The retrohunt ID of the Retrohunt. A retrohunt is an execution of a Rule over a time range in the past.
42
+ """
43
+ pulumi.set(__self__, "instance", instance)
44
+ pulumi.set(__self__, "location", location)
45
+ pulumi.set(__self__, "process_interval", process_interval)
46
+ pulumi.set(__self__, "rule", rule)
47
+ if retrohunt_id is not None:
48
+ pulumi.set(__self__, "retrohunt_id", retrohunt_id)
49
+ if project is not None:
50
+ pulumi.set(__self__, "project", project)
51
+
52
+ @property
53
+ @pulumi.getter
54
+ def instance(self) -> pulumi.Input[str]:
55
+ """
56
+ The unique identifier for the Chronicle instance, which is the same as the customer ID.
57
+ """
58
+ return pulumi.get(self, "instance")
59
+
60
+ @instance.setter
61
+ def instance(self, value: pulumi.Input[str]):
62
+ pulumi.set(self, "instance", value)
63
+
64
+ @property
65
+ @pulumi.getter
66
+ def location(self) -> pulumi.Input[str]:
67
+ """
68
+ The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
69
+ """
70
+ return pulumi.get(self, "location")
71
+
72
+ @location.setter
73
+ def location(self, value: pulumi.Input[str]):
74
+ pulumi.set(self, "location", value)
75
+
76
+ @property
77
+ @pulumi.getter(name="processInterval")
78
+ def process_interval(self) -> pulumi.Input['RetrohuntProcessIntervalArgs']:
79
+ """
80
+ Represents a time interval, encoded as a Timestamp start (inclusive) and a
81
+ Timestamp end (exclusive).
82
+ The start must be less than or equal to the end.
83
+ When the start equals the end, the interval is empty (matches no time).
84
+ When both start and end are unspecified, the interval matches any time.
85
+ Structure is documented below.
86
+ """
87
+ return pulumi.get(self, "process_interval")
88
+
89
+ @process_interval.setter
90
+ def process_interval(self, value: pulumi.Input['RetrohuntProcessIntervalArgs']):
91
+ pulumi.set(self, "process_interval", value)
92
+
93
+ @property
94
+ @pulumi.getter
95
+ def rule(self) -> pulumi.Input[str]:
96
+ """
97
+ The Rule ID of the rule.
98
+ """
99
+ return pulumi.get(self, "rule")
100
+
101
+ @rule.setter
102
+ def rule(self, value: pulumi.Input[str]):
103
+ pulumi.set(self, "rule", value)
104
+
105
+ @property
106
+ @pulumi.getter(name="RetrohuntId")
107
+ def retrohunt_id(self) -> Optional[pulumi.Input[str]]:
108
+ """
109
+ The retrohunt ID of the Retrohunt. A retrohunt is an execution of a Rule over a time range in the past.
110
+ """
111
+ return pulumi.get(self, "retrohunt_id")
112
+
113
+ @retrohunt_id.setter
114
+ def retrohunt_id(self, value: Optional[pulumi.Input[str]]):
115
+ pulumi.set(self, "retrohunt_id", value)
116
+
117
+ @property
118
+ @pulumi.getter
119
+ def project(self) -> Optional[pulumi.Input[str]]:
120
+ return pulumi.get(self, "project")
121
+
122
+ @project.setter
123
+ def project(self, value: Optional[pulumi.Input[str]]):
124
+ pulumi.set(self, "project", value)
125
+
126
+
127
+ @pulumi.input_type
128
+ class _RetrohuntState:
129
+ def __init__(__self__, *,
130
+ retrohunt_id: Optional[pulumi.Input[str]] = None,
131
+ execution_intervals: Optional[pulumi.Input[Sequence[pulumi.Input['RetrohuntExecutionIntervalArgs']]]] = None,
132
+ instance: Optional[pulumi.Input[str]] = None,
133
+ location: Optional[pulumi.Input[str]] = None,
134
+ name: Optional[pulumi.Input[str]] = None,
135
+ process_interval: Optional[pulumi.Input['RetrohuntProcessIntervalArgs']] = None,
136
+ progress_percentage: Optional[pulumi.Input[float]] = None,
137
+ project: Optional[pulumi.Input[str]] = None,
138
+ rule: Optional[pulumi.Input[str]] = None,
139
+ state: Optional[pulumi.Input[str]] = None):
140
+ """
141
+ Input properties used for looking up and filtering Retrohunt resources.
142
+ :param pulumi.Input[str] retrohunt_id: The retrohunt ID of the Retrohunt. A retrohunt is an execution of a Rule over a time range in the past.
143
+ :param pulumi.Input[Sequence[pulumi.Input['RetrohuntExecutionIntervalArgs']]] execution_intervals: Represents a time interval, encoded as a Timestamp start (inclusive) and a
144
+ Timestamp end (exclusive).
145
+ The start must be less than or equal to the end.
146
+ When the start equals the end, the interval is empty (matches no time).
147
+ When both start and end are unspecified, the interval matches any time.
148
+ Structure is documented below.
149
+ :param pulumi.Input[str] instance: The unique identifier for the Chronicle instance, which is the same as the customer ID.
150
+ :param pulumi.Input[str] location: The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
151
+ :param pulumi.Input[str] name: The resource name of the retrohunt.
152
+ Retrohunt is the child of a rule revision. {rule} in the format below is
153
+ structured as {rule_id@revision_id}.
154
+ Format:
155
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}/retrohunts/{retrohunt}
156
+ :param pulumi.Input['RetrohuntProcessIntervalArgs'] process_interval: Represents a time interval, encoded as a Timestamp start (inclusive) and a
157
+ Timestamp end (exclusive).
158
+ The start must be less than or equal to the end.
159
+ When the start equals the end, the interval is empty (matches no time).
160
+ When both start and end are unspecified, the interval matches any time.
161
+ Structure is documented below.
162
+ :param pulumi.Input[float] progress_percentage: Output only. Percent progress of the retrohunt towards completion, from 0.00 to 100.00.
163
+ :param pulumi.Input[str] rule: The Rule ID of the rule.
164
+ :param pulumi.Input[str] state: Output only. The state of the retrohunt.
165
+ Possible values:
166
+ RUNNING
167
+ DONE
168
+ CANCELLED
169
+ FAILED
170
+ """
171
+ if retrohunt_id is not None:
172
+ pulumi.set(__self__, "retrohunt_id", retrohunt_id)
173
+ if execution_intervals is not None:
174
+ pulumi.set(__self__, "execution_intervals", execution_intervals)
175
+ if instance is not None:
176
+ pulumi.set(__self__, "instance", instance)
177
+ if location is not None:
178
+ pulumi.set(__self__, "location", location)
179
+ if name is not None:
180
+ pulumi.set(__self__, "name", name)
181
+ if process_interval is not None:
182
+ pulumi.set(__self__, "process_interval", process_interval)
183
+ if progress_percentage is not None:
184
+ pulumi.set(__self__, "progress_percentage", progress_percentage)
185
+ if project is not None:
186
+ pulumi.set(__self__, "project", project)
187
+ if rule is not None:
188
+ pulumi.set(__self__, "rule", rule)
189
+ if state is not None:
190
+ pulumi.set(__self__, "state", state)
191
+
192
+ @property
193
+ @pulumi.getter(name="RetrohuntId")
194
+ def retrohunt_id(self) -> Optional[pulumi.Input[str]]:
195
+ """
196
+ The retrohunt ID of the Retrohunt. A retrohunt is an execution of a Rule over a time range in the past.
197
+ """
198
+ return pulumi.get(self, "retrohunt_id")
199
+
200
+ @retrohunt_id.setter
201
+ def retrohunt_id(self, value: Optional[pulumi.Input[str]]):
202
+ pulumi.set(self, "retrohunt_id", value)
203
+
204
+ @property
205
+ @pulumi.getter(name="executionIntervals")
206
+ def execution_intervals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RetrohuntExecutionIntervalArgs']]]]:
207
+ """
208
+ Represents a time interval, encoded as a Timestamp start (inclusive) and a
209
+ Timestamp end (exclusive).
210
+ The start must be less than or equal to the end.
211
+ When the start equals the end, the interval is empty (matches no time).
212
+ When both start and end are unspecified, the interval matches any time.
213
+ Structure is documented below.
214
+ """
215
+ return pulumi.get(self, "execution_intervals")
216
+
217
+ @execution_intervals.setter
218
+ def execution_intervals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RetrohuntExecutionIntervalArgs']]]]):
219
+ pulumi.set(self, "execution_intervals", value)
220
+
221
+ @property
222
+ @pulumi.getter
223
+ def instance(self) -> Optional[pulumi.Input[str]]:
224
+ """
225
+ The unique identifier for the Chronicle instance, which is the same as the customer ID.
226
+ """
227
+ return pulumi.get(self, "instance")
228
+
229
+ @instance.setter
230
+ def instance(self, value: Optional[pulumi.Input[str]]):
231
+ pulumi.set(self, "instance", value)
232
+
233
+ @property
234
+ @pulumi.getter
235
+ def location(self) -> Optional[pulumi.Input[str]]:
236
+ """
237
+ The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
238
+ """
239
+ return pulumi.get(self, "location")
240
+
241
+ @location.setter
242
+ def location(self, value: Optional[pulumi.Input[str]]):
243
+ pulumi.set(self, "location", value)
244
+
245
+ @property
246
+ @pulumi.getter
247
+ def name(self) -> Optional[pulumi.Input[str]]:
248
+ """
249
+ The resource name of the retrohunt.
250
+ Retrohunt is the child of a rule revision. {rule} in the format below is
251
+ structured as {rule_id@revision_id}.
252
+ Format:
253
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}/retrohunts/{retrohunt}
254
+ """
255
+ return pulumi.get(self, "name")
256
+
257
+ @name.setter
258
+ def name(self, value: Optional[pulumi.Input[str]]):
259
+ pulumi.set(self, "name", value)
260
+
261
+ @property
262
+ @pulumi.getter(name="processInterval")
263
+ def process_interval(self) -> Optional[pulumi.Input['RetrohuntProcessIntervalArgs']]:
264
+ """
265
+ Represents a time interval, encoded as a Timestamp start (inclusive) and a
266
+ Timestamp end (exclusive).
267
+ The start must be less than or equal to the end.
268
+ When the start equals the end, the interval is empty (matches no time).
269
+ When both start and end are unspecified, the interval matches any time.
270
+ Structure is documented below.
271
+ """
272
+ return pulumi.get(self, "process_interval")
273
+
274
+ @process_interval.setter
275
+ def process_interval(self, value: Optional[pulumi.Input['RetrohuntProcessIntervalArgs']]):
276
+ pulumi.set(self, "process_interval", value)
277
+
278
+ @property
279
+ @pulumi.getter(name="progressPercentage")
280
+ def progress_percentage(self) -> Optional[pulumi.Input[float]]:
281
+ """
282
+ Output only. Percent progress of the retrohunt towards completion, from 0.00 to 100.00.
283
+ """
284
+ return pulumi.get(self, "progress_percentage")
285
+
286
+ @progress_percentage.setter
287
+ def progress_percentage(self, value: Optional[pulumi.Input[float]]):
288
+ pulumi.set(self, "progress_percentage", value)
289
+
290
+ @property
291
+ @pulumi.getter
292
+ def project(self) -> Optional[pulumi.Input[str]]:
293
+ return pulumi.get(self, "project")
294
+
295
+ @project.setter
296
+ def project(self, value: Optional[pulumi.Input[str]]):
297
+ pulumi.set(self, "project", value)
298
+
299
+ @property
300
+ @pulumi.getter
301
+ def rule(self) -> Optional[pulumi.Input[str]]:
302
+ """
303
+ The Rule ID of the rule.
304
+ """
305
+ return pulumi.get(self, "rule")
306
+
307
+ @rule.setter
308
+ def rule(self, value: Optional[pulumi.Input[str]]):
309
+ pulumi.set(self, "rule", value)
310
+
311
+ @property
312
+ @pulumi.getter
313
+ def state(self) -> Optional[pulumi.Input[str]]:
314
+ """
315
+ Output only. The state of the retrohunt.
316
+ Possible values:
317
+ RUNNING
318
+ DONE
319
+ CANCELLED
320
+ FAILED
321
+ """
322
+ return pulumi.get(self, "state")
323
+
324
+ @state.setter
325
+ def state(self, value: Optional[pulumi.Input[str]]):
326
+ pulumi.set(self, "state", value)
327
+
328
+
329
+ class Retrohunt(pulumi.CustomResource):
330
+ @overload
331
+ def __init__(__self__,
332
+ resource_name: str,
333
+ opts: Optional[pulumi.ResourceOptions] = None,
334
+ retrohunt_id: Optional[pulumi.Input[str]] = None,
335
+ instance: Optional[pulumi.Input[str]] = None,
336
+ location: Optional[pulumi.Input[str]] = None,
337
+ process_interval: Optional[pulumi.Input[Union['RetrohuntProcessIntervalArgs', 'RetrohuntProcessIntervalArgsDict']]] = None,
338
+ project: Optional[pulumi.Input[str]] = None,
339
+ rule: Optional[pulumi.Input[str]] = None,
340
+ __props__=None):
341
+ """
342
+ ## Example Usage
343
+
344
+ ## Import
345
+
346
+ Retrohunt can be imported using any of these accepted formats:
347
+
348
+ * `projects/{{project}}/locations/{{location}}/instances/{{instance}}/rules/{{rule}}/retrohunts/{{retrohunt}}`
349
+
350
+ * `{{project}}/{{location}}/{{instance}}/{{rule}}/{{retrohunt}}`
351
+
352
+ * `{{location}}/{{instance}}/{{rule}}/{{retrohunt}}`
353
+
354
+ When using the `pulumi import` command, Retrohunt can be imported using one of the formats above. For example:
355
+
356
+ ```sh
357
+ $ pulumi import gcp:chronicle/retrohunt:Retrohunt default projects/{{project}}/locations/{{location}}/instances/{{instance}}/rules/{{rule}}/retrohunts/{{retrohunt}}
358
+ ```
359
+
360
+ ```sh
361
+ $ pulumi import gcp:chronicle/retrohunt:Retrohunt default {{project}}/{{location}}/{{instance}}/{{rule}}/{{retrohunt}}
362
+ ```
363
+
364
+ ```sh
365
+ $ pulumi import gcp:chronicle/retrohunt:Retrohunt default {{location}}/{{instance}}/{{rule}}/{{retrohunt}}
366
+ ```
367
+
368
+ :param str resource_name: The name of the resource.
369
+ :param pulumi.ResourceOptions opts: Options for the resource.
370
+ :param pulumi.Input[str] retrohunt_id: The retrohunt ID of the Retrohunt. A retrohunt is an execution of a Rule over a time range in the past.
371
+ :param pulumi.Input[str] instance: The unique identifier for the Chronicle instance, which is the same as the customer ID.
372
+ :param pulumi.Input[str] location: The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
373
+ :param pulumi.Input[Union['RetrohuntProcessIntervalArgs', 'RetrohuntProcessIntervalArgsDict']] process_interval: Represents a time interval, encoded as a Timestamp start (inclusive) and a
374
+ Timestamp end (exclusive).
375
+ The start must be less than or equal to the end.
376
+ When the start equals the end, the interval is empty (matches no time).
377
+ When both start and end are unspecified, the interval matches any time.
378
+ Structure is documented below.
379
+ :param pulumi.Input[str] rule: The Rule ID of the rule.
380
+ """
381
+ ...
382
+ @overload
383
+ def __init__(__self__,
384
+ resource_name: str,
385
+ args: RetrohuntArgs,
386
+ opts: Optional[pulumi.ResourceOptions] = None):
387
+ """
388
+ ## Example Usage
389
+
390
+ ## Import
391
+
392
+ Retrohunt can be imported using any of these accepted formats:
393
+
394
+ * `projects/{{project}}/locations/{{location}}/instances/{{instance}}/rules/{{rule}}/retrohunts/{{retrohunt}}`
395
+
396
+ * `{{project}}/{{location}}/{{instance}}/{{rule}}/{{retrohunt}}`
397
+
398
+ * `{{location}}/{{instance}}/{{rule}}/{{retrohunt}}`
399
+
400
+ When using the `pulumi import` command, Retrohunt can be imported using one of the formats above. For example:
401
+
402
+ ```sh
403
+ $ pulumi import gcp:chronicle/retrohunt:Retrohunt default projects/{{project}}/locations/{{location}}/instances/{{instance}}/rules/{{rule}}/retrohunts/{{retrohunt}}
404
+ ```
405
+
406
+ ```sh
407
+ $ pulumi import gcp:chronicle/retrohunt:Retrohunt default {{project}}/{{location}}/{{instance}}/{{rule}}/{{retrohunt}}
408
+ ```
409
+
410
+ ```sh
411
+ $ pulumi import gcp:chronicle/retrohunt:Retrohunt default {{location}}/{{instance}}/{{rule}}/{{retrohunt}}
412
+ ```
413
+
414
+ :param str resource_name: The name of the resource.
415
+ :param RetrohuntArgs args: The arguments to use to populate this resource's properties.
416
+ :param pulumi.ResourceOptions opts: Options for the resource.
417
+ """
418
+ ...
419
+ def __init__(__self__, resource_name: str, *args, **kwargs):
420
+ resource_args, opts = _utilities.get_resource_args_opts(RetrohuntArgs, pulumi.ResourceOptions, *args, **kwargs)
421
+ if resource_args is not None:
422
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
423
+ else:
424
+ __self__._internal_init(resource_name, *args, **kwargs)
425
+
426
+ def _internal_init(__self__,
427
+ resource_name: str,
428
+ opts: Optional[pulumi.ResourceOptions] = None,
429
+ retrohunt_id: Optional[pulumi.Input[str]] = None,
430
+ instance: Optional[pulumi.Input[str]] = None,
431
+ location: Optional[pulumi.Input[str]] = None,
432
+ process_interval: Optional[pulumi.Input[Union['RetrohuntProcessIntervalArgs', 'RetrohuntProcessIntervalArgsDict']]] = None,
433
+ project: Optional[pulumi.Input[str]] = None,
434
+ rule: Optional[pulumi.Input[str]] = None,
435
+ __props__=None):
436
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
437
+ if not isinstance(opts, pulumi.ResourceOptions):
438
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
439
+ if opts.id is None:
440
+ if __props__ is not None:
441
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
442
+ __props__ = RetrohuntArgs.__new__(RetrohuntArgs)
443
+
444
+ __props__.__dict__["retrohunt_id"] = retrohunt_id
445
+ if instance is None and not opts.urn:
446
+ raise TypeError("Missing required property 'instance'")
447
+ __props__.__dict__["instance"] = instance
448
+ if location is None and not opts.urn:
449
+ raise TypeError("Missing required property 'location'")
450
+ __props__.__dict__["location"] = location
451
+ if process_interval is None and not opts.urn:
452
+ raise TypeError("Missing required property 'process_interval'")
453
+ __props__.__dict__["process_interval"] = process_interval
454
+ __props__.__dict__["project"] = project
455
+ if rule is None and not opts.urn:
456
+ raise TypeError("Missing required property 'rule'")
457
+ __props__.__dict__["rule"] = rule
458
+ __props__.__dict__["execution_intervals"] = None
459
+ __props__.__dict__["name"] = None
460
+ __props__.__dict__["progress_percentage"] = None
461
+ __props__.__dict__["state"] = None
462
+ super(Retrohunt, __self__).__init__(
463
+ 'gcp:chronicle/retrohunt:Retrohunt',
464
+ resource_name,
465
+ __props__,
466
+ opts)
467
+
468
+ @staticmethod
469
+ def get(resource_name: str,
470
+ id: pulumi.Input[str],
471
+ opts: Optional[pulumi.ResourceOptions] = None,
472
+ retrohunt_id: Optional[pulumi.Input[str]] = None,
473
+ execution_intervals: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RetrohuntExecutionIntervalArgs', 'RetrohuntExecutionIntervalArgsDict']]]]] = None,
474
+ instance: Optional[pulumi.Input[str]] = None,
475
+ location: Optional[pulumi.Input[str]] = None,
476
+ name: Optional[pulumi.Input[str]] = None,
477
+ process_interval: Optional[pulumi.Input[Union['RetrohuntProcessIntervalArgs', 'RetrohuntProcessIntervalArgsDict']]] = None,
478
+ progress_percentage: Optional[pulumi.Input[float]] = None,
479
+ project: Optional[pulumi.Input[str]] = None,
480
+ rule: Optional[pulumi.Input[str]] = None,
481
+ state: Optional[pulumi.Input[str]] = None) -> 'Retrohunt':
482
+ """
483
+ Get an existing Retrohunt resource's state with the given name, id, and optional extra
484
+ properties used to qualify the lookup.
485
+
486
+ :param str resource_name: The unique name of the resulting resource.
487
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
488
+ :param pulumi.ResourceOptions opts: Options for the resource.
489
+ :param pulumi.Input[str] retrohunt_id: The retrohunt ID of the Retrohunt. A retrohunt is an execution of a Rule over a time range in the past.
490
+ :param pulumi.Input[Sequence[pulumi.Input[Union['RetrohuntExecutionIntervalArgs', 'RetrohuntExecutionIntervalArgsDict']]]] execution_intervals: Represents a time interval, encoded as a Timestamp start (inclusive) and a
491
+ Timestamp end (exclusive).
492
+ The start must be less than or equal to the end.
493
+ When the start equals the end, the interval is empty (matches no time).
494
+ When both start and end are unspecified, the interval matches any time.
495
+ Structure is documented below.
496
+ :param pulumi.Input[str] instance: The unique identifier for the Chronicle instance, which is the same as the customer ID.
497
+ :param pulumi.Input[str] location: The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
498
+ :param pulumi.Input[str] name: The resource name of the retrohunt.
499
+ Retrohunt is the child of a rule revision. {rule} in the format below is
500
+ structured as {rule_id@revision_id}.
501
+ Format:
502
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}/retrohunts/{retrohunt}
503
+ :param pulumi.Input[Union['RetrohuntProcessIntervalArgs', 'RetrohuntProcessIntervalArgsDict']] process_interval: Represents a time interval, encoded as a Timestamp start (inclusive) and a
504
+ Timestamp end (exclusive).
505
+ The start must be less than or equal to the end.
506
+ When the start equals the end, the interval is empty (matches no time).
507
+ When both start and end are unspecified, the interval matches any time.
508
+ Structure is documented below.
509
+ :param pulumi.Input[float] progress_percentage: Output only. Percent progress of the retrohunt towards completion, from 0.00 to 100.00.
510
+ :param pulumi.Input[str] rule: The Rule ID of the rule.
511
+ :param pulumi.Input[str] state: Output only. The state of the retrohunt.
512
+ Possible values:
513
+ RUNNING
514
+ DONE
515
+ CANCELLED
516
+ FAILED
517
+ """
518
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
519
+
520
+ __props__ = _RetrohuntState.__new__(_RetrohuntState)
521
+
522
+ __props__.__dict__["retrohunt_id"] = retrohunt_id
523
+ __props__.__dict__["execution_intervals"] = execution_intervals
524
+ __props__.__dict__["instance"] = instance
525
+ __props__.__dict__["location"] = location
526
+ __props__.__dict__["name"] = name
527
+ __props__.__dict__["process_interval"] = process_interval
528
+ __props__.__dict__["progress_percentage"] = progress_percentage
529
+ __props__.__dict__["project"] = project
530
+ __props__.__dict__["rule"] = rule
531
+ __props__.__dict__["state"] = state
532
+ return Retrohunt(resource_name, opts=opts, __props__=__props__)
533
+
534
+ @property
535
+ @pulumi.getter(name="RetrohuntId")
536
+ def retrohunt_id(self) -> pulumi.Output[str]:
537
+ """
538
+ The retrohunt ID of the Retrohunt. A retrohunt is an execution of a Rule over a time range in the past.
539
+ """
540
+ return pulumi.get(self, "retrohunt_id")
541
+
542
+ @property
543
+ @pulumi.getter(name="executionIntervals")
544
+ def execution_intervals(self) -> pulumi.Output[Sequence['outputs.RetrohuntExecutionInterval']]:
545
+ """
546
+ Represents a time interval, encoded as a Timestamp start (inclusive) and a
547
+ Timestamp end (exclusive).
548
+ The start must be less than or equal to the end.
549
+ When the start equals the end, the interval is empty (matches no time).
550
+ When both start and end are unspecified, the interval matches any time.
551
+ Structure is documented below.
552
+ """
553
+ return pulumi.get(self, "execution_intervals")
554
+
555
+ @property
556
+ @pulumi.getter
557
+ def instance(self) -> pulumi.Output[str]:
558
+ """
559
+ The unique identifier for the Chronicle instance, which is the same as the customer ID.
560
+ """
561
+ return pulumi.get(self, "instance")
562
+
563
+ @property
564
+ @pulumi.getter
565
+ def location(self) -> pulumi.Output[str]:
566
+ """
567
+ The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
568
+ """
569
+ return pulumi.get(self, "location")
570
+
571
+ @property
572
+ @pulumi.getter
573
+ def name(self) -> pulumi.Output[str]:
574
+ """
575
+ The resource name of the retrohunt.
576
+ Retrohunt is the child of a rule revision. {rule} in the format below is
577
+ structured as {rule_id@revision_id}.
578
+ Format:
579
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}/retrohunts/{retrohunt}
580
+ """
581
+ return pulumi.get(self, "name")
582
+
583
+ @property
584
+ @pulumi.getter(name="processInterval")
585
+ def process_interval(self) -> pulumi.Output['outputs.RetrohuntProcessInterval']:
586
+ """
587
+ Represents a time interval, encoded as a Timestamp start (inclusive) and a
588
+ Timestamp end (exclusive).
589
+ The start must be less than or equal to the end.
590
+ When the start equals the end, the interval is empty (matches no time).
591
+ When both start and end are unspecified, the interval matches any time.
592
+ Structure is documented below.
593
+ """
594
+ return pulumi.get(self, "process_interval")
595
+
596
+ @property
597
+ @pulumi.getter(name="progressPercentage")
598
+ def progress_percentage(self) -> pulumi.Output[float]:
599
+ """
600
+ Output only. Percent progress of the retrohunt towards completion, from 0.00 to 100.00.
601
+ """
602
+ return pulumi.get(self, "progress_percentage")
603
+
604
+ @property
605
+ @pulumi.getter
606
+ def project(self) -> pulumi.Output[str]:
607
+ return pulumi.get(self, "project")
608
+
609
+ @property
610
+ @pulumi.getter
611
+ def rule(self) -> pulumi.Output[str]:
612
+ """
613
+ The Rule ID of the rule.
614
+ """
615
+ return pulumi.get(self, "rule")
616
+
617
+ @property
618
+ @pulumi.getter
619
+ def state(self) -> pulumi.Output[str]:
620
+ """
621
+ Output only. The state of the retrohunt.
622
+ Possible values:
623
+ RUNNING
624
+ DONE
625
+ CANCELLED
626
+ FAILED
627
+ """
628
+ return pulumi.get(self, "state")
629
+