pulumi-gcp 8.15.0a1737527599__py3-none-any.whl → 8.15.0a1737577694__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 (77) hide show
  1. pulumi_gcp/__init__.py +78 -0
  2. pulumi_gcp/accesscontextmanager/access_level_condition.py +28 -0
  3. pulumi_gcp/accesscontextmanager/egress_policy.py +28 -0
  4. pulumi_gcp/accesscontextmanager/ingress_policy.py +28 -0
  5. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +28 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +28 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +28 -0
  8. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +28 -0
  9. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +28 -0
  10. pulumi_gcp/accesscontextmanager/service_perimeter_resource.py +56 -0
  11. pulumi_gcp/apigee/__init__.py +1 -0
  12. pulumi_gcp/apigee/environment_addons_config.py +266 -0
  13. pulumi_gcp/artifactregistry/repository.py +32 -2
  14. pulumi_gcp/bigquery/connection.py +2 -2
  15. pulumi_gcp/bigquery/routine.py +2 -2
  16. pulumi_gcp/billing/project_info.py +4 -4
  17. pulumi_gcp/chronicle/__init__.py +3 -0
  18. pulumi_gcp/chronicle/_inputs.py +379 -0
  19. pulumi_gcp/chronicle/data_access_label.py +21 -21
  20. pulumi_gcp/chronicle/outputs.py +302 -0
  21. pulumi_gcp/chronicle/reference_list.py +788 -0
  22. pulumi_gcp/chronicle/rule.py +1308 -0
  23. pulumi_gcp/chronicle/rule_deployment.py +849 -0
  24. pulumi_gcp/colab/__init__.py +10 -0
  25. pulumi_gcp/colab/_inputs.py +359 -0
  26. pulumi_gcp/colab/outputs.py +344 -0
  27. pulumi_gcp/colab/runtime_template.py +1160 -0
  28. pulumi_gcp/compute/_inputs.py +9 -9
  29. pulumi_gcp/compute/interconnect_attachment.py +7 -7
  30. pulumi_gcp/compute/outputs.py +6 -6
  31. pulumi_gcp/compute/route.py +8 -16
  32. pulumi_gcp/compute/subnetwork.py +7 -7
  33. pulumi_gcp/compute/target_instance.py +4 -4
  34. pulumi_gcp/compute/url_map.py +4 -0
  35. pulumi_gcp/config/__init__.pyi +6 -0
  36. pulumi_gcp/config/vars.py +12 -0
  37. pulumi_gcp/databasemigrationservice/connection_profile.py +6 -6
  38. pulumi_gcp/dataplex/entry_type.py +2 -2
  39. pulumi_gcp/dataplex/task.py +16 -16
  40. pulumi_gcp/dataproc/batch.py +10 -10
  41. pulumi_gcp/discoveryengine/_inputs.py +54 -0
  42. pulumi_gcp/discoveryengine/data_store.py +94 -0
  43. pulumi_gcp/discoveryengine/outputs.py +51 -0
  44. pulumi_gcp/edgenetwork/__init__.py +1 -0
  45. pulumi_gcp/edgenetwork/interconnect_attachment.py +941 -0
  46. pulumi_gcp/firestore/field.py +4 -4
  47. pulumi_gcp/gemini/code_repository_index.py +47 -0
  48. pulumi_gcp/gkehub/membership_binding.py +6 -6
  49. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  50. pulumi_gcp/gkehub/namespace.py +4 -4
  51. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  52. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  53. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  54. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  55. pulumi_gcp/networksecurity/authz_policy.py +0 -202
  56. pulumi_gcp/orgpolicy/policy.py +2 -2
  57. pulumi_gcp/parametermanager/__init__.py +13 -0
  58. pulumi_gcp/parametermanager/_inputs.py +174 -0
  59. pulumi_gcp/parametermanager/get_regional_parameter.py +230 -0
  60. pulumi_gcp/parametermanager/outputs.py +191 -0
  61. pulumi_gcp/parametermanager/parameter.py +706 -0
  62. pulumi_gcp/parametermanager/regional_parameter.py +762 -0
  63. pulumi_gcp/parametermanager/regional_parameter_version.py +558 -0
  64. pulumi_gcp/provider.py +60 -0
  65. pulumi_gcp/pubsub/subscription.py +6 -6
  66. pulumi_gcp/pulumi-plugin.json +1 -1
  67. pulumi_gcp/sql/_inputs.py +54 -0
  68. pulumi_gcp/sql/database_instance.py +78 -16
  69. pulumi_gcp/sql/get_database_instance.py +12 -1
  70. pulumi_gcp/sql/outputs.py +122 -0
  71. pulumi_gcp/sql/source_representation_instance.py +7 -14
  72. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  73. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  74. {pulumi_gcp-8.15.0a1737527599.dist-info → pulumi_gcp-8.15.0a1737577694.dist-info}/METADATA +1 -1
  75. {pulumi_gcp-8.15.0a1737527599.dist-info → pulumi_gcp-8.15.0a1737577694.dist-info}/RECORD +77 -61
  76. {pulumi_gcp-8.15.0a1737527599.dist-info → pulumi_gcp-8.15.0a1737577694.dist-info}/WHEEL +0 -0
  77. {pulumi_gcp-8.15.0a1737527599.dist-info → pulumi_gcp-8.15.0a1737577694.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,849 @@
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__ = ['RuleDeploymentArgs', 'RuleDeployment']
18
+
19
+ @pulumi.input_type
20
+ class RuleDeploymentArgs:
21
+ def __init__(__self__, *,
22
+ instance: pulumi.Input[str],
23
+ location: pulumi.Input[str],
24
+ rule: pulumi.Input[str],
25
+ alerting: Optional[pulumi.Input[bool]] = None,
26
+ archived: Optional[pulumi.Input[bool]] = None,
27
+ enabled: Optional[pulumi.Input[bool]] = None,
28
+ project: Optional[pulumi.Input[str]] = None,
29
+ run_frequency: Optional[pulumi.Input[str]] = None):
30
+ """
31
+ The set of arguments for constructing a RuleDeployment 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[str] rule: The Rule ID of the rule.
35
+
36
+
37
+ - - -
38
+ :param pulumi.Input[bool] alerting: Whether detections resulting from this deployment should be considered
39
+ alerts.
40
+ :param pulumi.Input[bool] archived: The archive state of the rule deployment.
41
+ Cannot be set to true unless enabled is set to false.
42
+ If set to true, alerting will automatically be set to false.
43
+ If currently set to true, enabled, alerting, and run_frequency cannot be
44
+ updated.
45
+ :param pulumi.Input[bool] enabled: Whether the rule is currently deployed continuously against incoming data.
46
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
47
+ If it is not provided, the provider project is used.
48
+ :param pulumi.Input[str] run_frequency: The run frequency of the rule deployment.
49
+ Possible values:
50
+ LIVE
51
+ HOURLY
52
+ DAILY
53
+ """
54
+ pulumi.set(__self__, "instance", instance)
55
+ pulumi.set(__self__, "location", location)
56
+ pulumi.set(__self__, "rule", rule)
57
+ if alerting is not None:
58
+ pulumi.set(__self__, "alerting", alerting)
59
+ if archived is not None:
60
+ pulumi.set(__self__, "archived", archived)
61
+ if enabled is not None:
62
+ pulumi.set(__self__, "enabled", enabled)
63
+ if project is not None:
64
+ pulumi.set(__self__, "project", project)
65
+ if run_frequency is not None:
66
+ pulumi.set(__self__, "run_frequency", run_frequency)
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def instance(self) -> pulumi.Input[str]:
71
+ """
72
+ The unique identifier for the Chronicle instance, which is the same as the customer ID.
73
+ """
74
+ return pulumi.get(self, "instance")
75
+
76
+ @instance.setter
77
+ def instance(self, value: pulumi.Input[str]):
78
+ pulumi.set(self, "instance", value)
79
+
80
+ @property
81
+ @pulumi.getter
82
+ def location(self) -> pulumi.Input[str]:
83
+ """
84
+ The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
85
+ """
86
+ return pulumi.get(self, "location")
87
+
88
+ @location.setter
89
+ def location(self, value: pulumi.Input[str]):
90
+ pulumi.set(self, "location", value)
91
+
92
+ @property
93
+ @pulumi.getter
94
+ def rule(self) -> pulumi.Input[str]:
95
+ """
96
+ The Rule ID of the rule.
97
+
98
+
99
+ - - -
100
+ """
101
+ return pulumi.get(self, "rule")
102
+
103
+ @rule.setter
104
+ def rule(self, value: pulumi.Input[str]):
105
+ pulumi.set(self, "rule", value)
106
+
107
+ @property
108
+ @pulumi.getter
109
+ def alerting(self) -> Optional[pulumi.Input[bool]]:
110
+ """
111
+ Whether detections resulting from this deployment should be considered
112
+ alerts.
113
+ """
114
+ return pulumi.get(self, "alerting")
115
+
116
+ @alerting.setter
117
+ def alerting(self, value: Optional[pulumi.Input[bool]]):
118
+ pulumi.set(self, "alerting", value)
119
+
120
+ @property
121
+ @pulumi.getter
122
+ def archived(self) -> Optional[pulumi.Input[bool]]:
123
+ """
124
+ The archive state of the rule deployment.
125
+ Cannot be set to true unless enabled is set to false.
126
+ If set to true, alerting will automatically be set to false.
127
+ If currently set to true, enabled, alerting, and run_frequency cannot be
128
+ updated.
129
+ """
130
+ return pulumi.get(self, "archived")
131
+
132
+ @archived.setter
133
+ def archived(self, value: Optional[pulumi.Input[bool]]):
134
+ pulumi.set(self, "archived", value)
135
+
136
+ @property
137
+ @pulumi.getter
138
+ def enabled(self) -> Optional[pulumi.Input[bool]]:
139
+ """
140
+ Whether the rule is currently deployed continuously against incoming data.
141
+ """
142
+ return pulumi.get(self, "enabled")
143
+
144
+ @enabled.setter
145
+ def enabled(self, value: Optional[pulumi.Input[bool]]):
146
+ pulumi.set(self, "enabled", value)
147
+
148
+ @property
149
+ @pulumi.getter
150
+ def project(self) -> Optional[pulumi.Input[str]]:
151
+ """
152
+ The ID of the project in which the resource belongs.
153
+ If it is not provided, the provider project is used.
154
+ """
155
+ return pulumi.get(self, "project")
156
+
157
+ @project.setter
158
+ def project(self, value: Optional[pulumi.Input[str]]):
159
+ pulumi.set(self, "project", value)
160
+
161
+ @property
162
+ @pulumi.getter(name="runFrequency")
163
+ def run_frequency(self) -> Optional[pulumi.Input[str]]:
164
+ """
165
+ The run frequency of the rule deployment.
166
+ Possible values:
167
+ LIVE
168
+ HOURLY
169
+ DAILY
170
+ """
171
+ return pulumi.get(self, "run_frequency")
172
+
173
+ @run_frequency.setter
174
+ def run_frequency(self, value: Optional[pulumi.Input[str]]):
175
+ pulumi.set(self, "run_frequency", value)
176
+
177
+
178
+ @pulumi.input_type
179
+ class _RuleDeploymentState:
180
+ def __init__(__self__, *,
181
+ alerting: Optional[pulumi.Input[bool]] = None,
182
+ archive_time: Optional[pulumi.Input[str]] = None,
183
+ archived: Optional[pulumi.Input[bool]] = None,
184
+ consumer_rules: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
185
+ enabled: Optional[pulumi.Input[bool]] = None,
186
+ execution_state: Optional[pulumi.Input[str]] = None,
187
+ instance: Optional[pulumi.Input[str]] = None,
188
+ last_alert_status_change_time: Optional[pulumi.Input[str]] = None,
189
+ location: Optional[pulumi.Input[str]] = None,
190
+ name: Optional[pulumi.Input[str]] = None,
191
+ producer_rules: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
192
+ project: Optional[pulumi.Input[str]] = None,
193
+ rule: Optional[pulumi.Input[str]] = None,
194
+ run_frequency: Optional[pulumi.Input[str]] = None):
195
+ """
196
+ Input properties used for looking up and filtering RuleDeployment resources.
197
+ :param pulumi.Input[bool] alerting: Whether detections resulting from this deployment should be considered
198
+ alerts.
199
+ :param pulumi.Input[str] archive_time: Output only. The timestamp when the rule deployment archive state was last set to true. If the rule deployment's current archive state is not set to true, the field will be empty.
200
+ :param pulumi.Input[bool] archived: The archive state of the rule deployment.
201
+ Cannot be set to true unless enabled is set to false.
202
+ If set to true, alerting will automatically be set to false.
203
+ If currently set to true, enabled, alerting, and run_frequency cannot be
204
+ updated.
205
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] consumer_rules: Output only. The names of the associated/chained consumer rules. Rules are considered
206
+ consumers of this rule if their rule text explicitly filters on this rule's ruleid.
207
+ Format:
208
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}
209
+ :param pulumi.Input[bool] enabled: Whether the rule is currently deployed continuously against incoming data.
210
+ :param pulumi.Input[str] execution_state: The execution state of the rule deployment.
211
+ Possible values:
212
+ DEFAULT
213
+ LIMITED
214
+ PAUSED
215
+ :param pulumi.Input[str] instance: The unique identifier for the Chronicle instance, which is the same as the customer ID.
216
+ :param pulumi.Input[str] last_alert_status_change_time: Output only. The timestamp when the rule deployment alert state was lastly changed. This is filled regardless of the current alert state.E.g. if the current alert status is false, this timestamp will be the timestamp when the alert status was changed to false.
217
+ :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".
218
+ :param pulumi.Input[str] name: The resource name of the rule deployment.
219
+ Note that RuleDeployment is a child of the overall Rule, not any individual
220
+ revision, so the resource ID segment for the Rule resource must not
221
+ reference a specific revision.
222
+ Format:
223
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}/deployment
224
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] producer_rules: Output only. The names of the associated/chained producer rules. Rules are considered
225
+ producers for this rule if this rule explicitly filters on their ruleid.
226
+ Format:
227
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}
228
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
229
+ If it is not provided, the provider project is used.
230
+ :param pulumi.Input[str] rule: The Rule ID of the rule.
231
+
232
+
233
+ - - -
234
+ :param pulumi.Input[str] run_frequency: The run frequency of the rule deployment.
235
+ Possible values:
236
+ LIVE
237
+ HOURLY
238
+ DAILY
239
+ """
240
+ if alerting is not None:
241
+ pulumi.set(__self__, "alerting", alerting)
242
+ if archive_time is not None:
243
+ pulumi.set(__self__, "archive_time", archive_time)
244
+ if archived is not None:
245
+ pulumi.set(__self__, "archived", archived)
246
+ if consumer_rules is not None:
247
+ pulumi.set(__self__, "consumer_rules", consumer_rules)
248
+ if enabled is not None:
249
+ pulumi.set(__self__, "enabled", enabled)
250
+ if execution_state is not None:
251
+ pulumi.set(__self__, "execution_state", execution_state)
252
+ if instance is not None:
253
+ pulumi.set(__self__, "instance", instance)
254
+ if last_alert_status_change_time is not None:
255
+ pulumi.set(__self__, "last_alert_status_change_time", last_alert_status_change_time)
256
+ if location is not None:
257
+ pulumi.set(__self__, "location", location)
258
+ if name is not None:
259
+ pulumi.set(__self__, "name", name)
260
+ if producer_rules is not None:
261
+ pulumi.set(__self__, "producer_rules", producer_rules)
262
+ if project is not None:
263
+ pulumi.set(__self__, "project", project)
264
+ if rule is not None:
265
+ pulumi.set(__self__, "rule", rule)
266
+ if run_frequency is not None:
267
+ pulumi.set(__self__, "run_frequency", run_frequency)
268
+
269
+ @property
270
+ @pulumi.getter
271
+ def alerting(self) -> Optional[pulumi.Input[bool]]:
272
+ """
273
+ Whether detections resulting from this deployment should be considered
274
+ alerts.
275
+ """
276
+ return pulumi.get(self, "alerting")
277
+
278
+ @alerting.setter
279
+ def alerting(self, value: Optional[pulumi.Input[bool]]):
280
+ pulumi.set(self, "alerting", value)
281
+
282
+ @property
283
+ @pulumi.getter(name="archiveTime")
284
+ def archive_time(self) -> Optional[pulumi.Input[str]]:
285
+ """
286
+ Output only. The timestamp when the rule deployment archive state was last set to true. If the rule deployment's current archive state is not set to true, the field will be empty.
287
+ """
288
+ return pulumi.get(self, "archive_time")
289
+
290
+ @archive_time.setter
291
+ def archive_time(self, value: Optional[pulumi.Input[str]]):
292
+ pulumi.set(self, "archive_time", value)
293
+
294
+ @property
295
+ @pulumi.getter
296
+ def archived(self) -> Optional[pulumi.Input[bool]]:
297
+ """
298
+ The archive state of the rule deployment.
299
+ Cannot be set to true unless enabled is set to false.
300
+ If set to true, alerting will automatically be set to false.
301
+ If currently set to true, enabled, alerting, and run_frequency cannot be
302
+ updated.
303
+ """
304
+ return pulumi.get(self, "archived")
305
+
306
+ @archived.setter
307
+ def archived(self, value: Optional[pulumi.Input[bool]]):
308
+ pulumi.set(self, "archived", value)
309
+
310
+ @property
311
+ @pulumi.getter(name="consumerRules")
312
+ def consumer_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
313
+ """
314
+ Output only. The names of the associated/chained consumer rules. Rules are considered
315
+ consumers of this rule if their rule text explicitly filters on this rule's ruleid.
316
+ Format:
317
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}
318
+ """
319
+ return pulumi.get(self, "consumer_rules")
320
+
321
+ @consumer_rules.setter
322
+ def consumer_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
323
+ pulumi.set(self, "consumer_rules", value)
324
+
325
+ @property
326
+ @pulumi.getter
327
+ def enabled(self) -> Optional[pulumi.Input[bool]]:
328
+ """
329
+ Whether the rule is currently deployed continuously against incoming data.
330
+ """
331
+ return pulumi.get(self, "enabled")
332
+
333
+ @enabled.setter
334
+ def enabled(self, value: Optional[pulumi.Input[bool]]):
335
+ pulumi.set(self, "enabled", value)
336
+
337
+ @property
338
+ @pulumi.getter(name="executionState")
339
+ def execution_state(self) -> Optional[pulumi.Input[str]]:
340
+ """
341
+ The execution state of the rule deployment.
342
+ Possible values:
343
+ DEFAULT
344
+ LIMITED
345
+ PAUSED
346
+ """
347
+ return pulumi.get(self, "execution_state")
348
+
349
+ @execution_state.setter
350
+ def execution_state(self, value: Optional[pulumi.Input[str]]):
351
+ pulumi.set(self, "execution_state", value)
352
+
353
+ @property
354
+ @pulumi.getter
355
+ def instance(self) -> Optional[pulumi.Input[str]]:
356
+ """
357
+ The unique identifier for the Chronicle instance, which is the same as the customer ID.
358
+ """
359
+ return pulumi.get(self, "instance")
360
+
361
+ @instance.setter
362
+ def instance(self, value: Optional[pulumi.Input[str]]):
363
+ pulumi.set(self, "instance", value)
364
+
365
+ @property
366
+ @pulumi.getter(name="lastAlertStatusChangeTime")
367
+ def last_alert_status_change_time(self) -> Optional[pulumi.Input[str]]:
368
+ """
369
+ Output only. The timestamp when the rule deployment alert state was lastly changed. This is filled regardless of the current alert state.E.g. if the current alert status is false, this timestamp will be the timestamp when the alert status was changed to false.
370
+ """
371
+ return pulumi.get(self, "last_alert_status_change_time")
372
+
373
+ @last_alert_status_change_time.setter
374
+ def last_alert_status_change_time(self, value: Optional[pulumi.Input[str]]):
375
+ pulumi.set(self, "last_alert_status_change_time", value)
376
+
377
+ @property
378
+ @pulumi.getter
379
+ def location(self) -> Optional[pulumi.Input[str]]:
380
+ """
381
+ The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
382
+ """
383
+ return pulumi.get(self, "location")
384
+
385
+ @location.setter
386
+ def location(self, value: Optional[pulumi.Input[str]]):
387
+ pulumi.set(self, "location", value)
388
+
389
+ @property
390
+ @pulumi.getter
391
+ def name(self) -> Optional[pulumi.Input[str]]:
392
+ """
393
+ The resource name of the rule deployment.
394
+ Note that RuleDeployment is a child of the overall Rule, not any individual
395
+ revision, so the resource ID segment for the Rule resource must not
396
+ reference a specific revision.
397
+ Format:
398
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}/deployment
399
+ """
400
+ return pulumi.get(self, "name")
401
+
402
+ @name.setter
403
+ def name(self, value: Optional[pulumi.Input[str]]):
404
+ pulumi.set(self, "name", value)
405
+
406
+ @property
407
+ @pulumi.getter(name="producerRules")
408
+ def producer_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
409
+ """
410
+ Output only. The names of the associated/chained producer rules. Rules are considered
411
+ producers for this rule if this rule explicitly filters on their ruleid.
412
+ Format:
413
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}
414
+ """
415
+ return pulumi.get(self, "producer_rules")
416
+
417
+ @producer_rules.setter
418
+ def producer_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
419
+ pulumi.set(self, "producer_rules", value)
420
+
421
+ @property
422
+ @pulumi.getter
423
+ def project(self) -> Optional[pulumi.Input[str]]:
424
+ """
425
+ The ID of the project in which the resource belongs.
426
+ If it is not provided, the provider project is used.
427
+ """
428
+ return pulumi.get(self, "project")
429
+
430
+ @project.setter
431
+ def project(self, value: Optional[pulumi.Input[str]]):
432
+ pulumi.set(self, "project", value)
433
+
434
+ @property
435
+ @pulumi.getter
436
+ def rule(self) -> Optional[pulumi.Input[str]]:
437
+ """
438
+ The Rule ID of the rule.
439
+
440
+
441
+ - - -
442
+ """
443
+ return pulumi.get(self, "rule")
444
+
445
+ @rule.setter
446
+ def rule(self, value: Optional[pulumi.Input[str]]):
447
+ pulumi.set(self, "rule", value)
448
+
449
+ @property
450
+ @pulumi.getter(name="runFrequency")
451
+ def run_frequency(self) -> Optional[pulumi.Input[str]]:
452
+ """
453
+ The run frequency of the rule deployment.
454
+ Possible values:
455
+ LIVE
456
+ HOURLY
457
+ DAILY
458
+ """
459
+ return pulumi.get(self, "run_frequency")
460
+
461
+ @run_frequency.setter
462
+ def run_frequency(self, value: Optional[pulumi.Input[str]]):
463
+ pulumi.set(self, "run_frequency", value)
464
+
465
+
466
+ class RuleDeployment(pulumi.CustomResource):
467
+ @overload
468
+ def __init__(__self__,
469
+ resource_name: str,
470
+ opts: Optional[pulumi.ResourceOptions] = None,
471
+ alerting: Optional[pulumi.Input[bool]] = None,
472
+ archived: Optional[pulumi.Input[bool]] = None,
473
+ enabled: Optional[pulumi.Input[bool]] = None,
474
+ instance: Optional[pulumi.Input[str]] = None,
475
+ location: Optional[pulumi.Input[str]] = None,
476
+ project: Optional[pulumi.Input[str]] = None,
477
+ rule: Optional[pulumi.Input[str]] = None,
478
+ run_frequency: Optional[pulumi.Input[str]] = None,
479
+ __props__=None):
480
+ """
481
+ ## Example Usage
482
+
483
+ ## Import
484
+
485
+ RuleDeployment can be imported using any of these accepted formats:
486
+
487
+ * `projects/{{project}}/locations/{{location}}/instances/{{instance}}/rules/{{rule}}/deployment`
488
+
489
+ * `{{project}}/{{location}}/{{instance}}/{{rule}}`
490
+
491
+ * `{{location}}/{{instance}}/{{rule}}`
492
+
493
+ When using the `pulumi import` command, RuleDeployment can be imported using one of the formats above. For example:
494
+
495
+ ```sh
496
+ $ pulumi import gcp:chronicle/ruleDeployment:RuleDeployment default projects/{{project}}/locations/{{location}}/instances/{{instance}}/rules/{{rule}}/deployment
497
+ ```
498
+
499
+ ```sh
500
+ $ pulumi import gcp:chronicle/ruleDeployment:RuleDeployment default {{project}}/{{location}}/{{instance}}/{{rule}}
501
+ ```
502
+
503
+ ```sh
504
+ $ pulumi import gcp:chronicle/ruleDeployment:RuleDeployment default {{location}}/{{instance}}/{{rule}}
505
+ ```
506
+
507
+ :param str resource_name: The name of the resource.
508
+ :param pulumi.ResourceOptions opts: Options for the resource.
509
+ :param pulumi.Input[bool] alerting: Whether detections resulting from this deployment should be considered
510
+ alerts.
511
+ :param pulumi.Input[bool] archived: The archive state of the rule deployment.
512
+ Cannot be set to true unless enabled is set to false.
513
+ If set to true, alerting will automatically be set to false.
514
+ If currently set to true, enabled, alerting, and run_frequency cannot be
515
+ updated.
516
+ :param pulumi.Input[bool] enabled: Whether the rule is currently deployed continuously against incoming data.
517
+ :param pulumi.Input[str] instance: The unique identifier for the Chronicle instance, which is the same as the customer ID.
518
+ :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".
519
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
520
+ If it is not provided, the provider project is used.
521
+ :param pulumi.Input[str] rule: The Rule ID of the rule.
522
+
523
+
524
+ - - -
525
+ :param pulumi.Input[str] run_frequency: The run frequency of the rule deployment.
526
+ Possible values:
527
+ LIVE
528
+ HOURLY
529
+ DAILY
530
+ """
531
+ ...
532
+ @overload
533
+ def __init__(__self__,
534
+ resource_name: str,
535
+ args: RuleDeploymentArgs,
536
+ opts: Optional[pulumi.ResourceOptions] = None):
537
+ """
538
+ ## Example Usage
539
+
540
+ ## Import
541
+
542
+ RuleDeployment can be imported using any of these accepted formats:
543
+
544
+ * `projects/{{project}}/locations/{{location}}/instances/{{instance}}/rules/{{rule}}/deployment`
545
+
546
+ * `{{project}}/{{location}}/{{instance}}/{{rule}}`
547
+
548
+ * `{{location}}/{{instance}}/{{rule}}`
549
+
550
+ When using the `pulumi import` command, RuleDeployment can be imported using one of the formats above. For example:
551
+
552
+ ```sh
553
+ $ pulumi import gcp:chronicle/ruleDeployment:RuleDeployment default projects/{{project}}/locations/{{location}}/instances/{{instance}}/rules/{{rule}}/deployment
554
+ ```
555
+
556
+ ```sh
557
+ $ pulumi import gcp:chronicle/ruleDeployment:RuleDeployment default {{project}}/{{location}}/{{instance}}/{{rule}}
558
+ ```
559
+
560
+ ```sh
561
+ $ pulumi import gcp:chronicle/ruleDeployment:RuleDeployment default {{location}}/{{instance}}/{{rule}}
562
+ ```
563
+
564
+ :param str resource_name: The name of the resource.
565
+ :param RuleDeploymentArgs args: The arguments to use to populate this resource's properties.
566
+ :param pulumi.ResourceOptions opts: Options for the resource.
567
+ """
568
+ ...
569
+ def __init__(__self__, resource_name: str, *args, **kwargs):
570
+ resource_args, opts = _utilities.get_resource_args_opts(RuleDeploymentArgs, pulumi.ResourceOptions, *args, **kwargs)
571
+ if resource_args is not None:
572
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
573
+ else:
574
+ __self__._internal_init(resource_name, *args, **kwargs)
575
+
576
+ def _internal_init(__self__,
577
+ resource_name: str,
578
+ opts: Optional[pulumi.ResourceOptions] = None,
579
+ alerting: Optional[pulumi.Input[bool]] = None,
580
+ archived: Optional[pulumi.Input[bool]] = None,
581
+ enabled: Optional[pulumi.Input[bool]] = None,
582
+ instance: Optional[pulumi.Input[str]] = None,
583
+ location: Optional[pulumi.Input[str]] = None,
584
+ project: Optional[pulumi.Input[str]] = None,
585
+ rule: Optional[pulumi.Input[str]] = None,
586
+ run_frequency: Optional[pulumi.Input[str]] = None,
587
+ __props__=None):
588
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
589
+ if not isinstance(opts, pulumi.ResourceOptions):
590
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
591
+ if opts.id is None:
592
+ if __props__ is not None:
593
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
594
+ __props__ = RuleDeploymentArgs.__new__(RuleDeploymentArgs)
595
+
596
+ __props__.__dict__["alerting"] = alerting
597
+ __props__.__dict__["archived"] = archived
598
+ __props__.__dict__["enabled"] = enabled
599
+ if instance is None and not opts.urn:
600
+ raise TypeError("Missing required property 'instance'")
601
+ __props__.__dict__["instance"] = instance
602
+ if location is None and not opts.urn:
603
+ raise TypeError("Missing required property 'location'")
604
+ __props__.__dict__["location"] = location
605
+ __props__.__dict__["project"] = project
606
+ if rule is None and not opts.urn:
607
+ raise TypeError("Missing required property 'rule'")
608
+ __props__.__dict__["rule"] = rule
609
+ __props__.__dict__["run_frequency"] = run_frequency
610
+ __props__.__dict__["archive_time"] = None
611
+ __props__.__dict__["consumer_rules"] = None
612
+ __props__.__dict__["execution_state"] = None
613
+ __props__.__dict__["last_alert_status_change_time"] = None
614
+ __props__.__dict__["name"] = None
615
+ __props__.__dict__["producer_rules"] = None
616
+ super(RuleDeployment, __self__).__init__(
617
+ 'gcp:chronicle/ruleDeployment:RuleDeployment',
618
+ resource_name,
619
+ __props__,
620
+ opts)
621
+
622
+ @staticmethod
623
+ def get(resource_name: str,
624
+ id: pulumi.Input[str],
625
+ opts: Optional[pulumi.ResourceOptions] = None,
626
+ alerting: Optional[pulumi.Input[bool]] = None,
627
+ archive_time: Optional[pulumi.Input[str]] = None,
628
+ archived: Optional[pulumi.Input[bool]] = None,
629
+ consumer_rules: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
630
+ enabled: Optional[pulumi.Input[bool]] = None,
631
+ execution_state: Optional[pulumi.Input[str]] = None,
632
+ instance: Optional[pulumi.Input[str]] = None,
633
+ last_alert_status_change_time: Optional[pulumi.Input[str]] = None,
634
+ location: Optional[pulumi.Input[str]] = None,
635
+ name: Optional[pulumi.Input[str]] = None,
636
+ producer_rules: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
637
+ project: Optional[pulumi.Input[str]] = None,
638
+ rule: Optional[pulumi.Input[str]] = None,
639
+ run_frequency: Optional[pulumi.Input[str]] = None) -> 'RuleDeployment':
640
+ """
641
+ Get an existing RuleDeployment resource's state with the given name, id, and optional extra
642
+ properties used to qualify the lookup.
643
+
644
+ :param str resource_name: The unique name of the resulting resource.
645
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
646
+ :param pulumi.ResourceOptions opts: Options for the resource.
647
+ :param pulumi.Input[bool] alerting: Whether detections resulting from this deployment should be considered
648
+ alerts.
649
+ :param pulumi.Input[str] archive_time: Output only. The timestamp when the rule deployment archive state was last set to true. If the rule deployment's current archive state is not set to true, the field will be empty.
650
+ :param pulumi.Input[bool] archived: The archive state of the rule deployment.
651
+ Cannot be set to true unless enabled is set to false.
652
+ If set to true, alerting will automatically be set to false.
653
+ If currently set to true, enabled, alerting, and run_frequency cannot be
654
+ updated.
655
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] consumer_rules: Output only. The names of the associated/chained consumer rules. Rules are considered
656
+ consumers of this rule if their rule text explicitly filters on this rule's ruleid.
657
+ Format:
658
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}
659
+ :param pulumi.Input[bool] enabled: Whether the rule is currently deployed continuously against incoming data.
660
+ :param pulumi.Input[str] execution_state: The execution state of the rule deployment.
661
+ Possible values:
662
+ DEFAULT
663
+ LIMITED
664
+ PAUSED
665
+ :param pulumi.Input[str] instance: The unique identifier for the Chronicle instance, which is the same as the customer ID.
666
+ :param pulumi.Input[str] last_alert_status_change_time: Output only. The timestamp when the rule deployment alert state was lastly changed. This is filled regardless of the current alert state.E.g. if the current alert status is false, this timestamp will be the timestamp when the alert status was changed to false.
667
+ :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".
668
+ :param pulumi.Input[str] name: The resource name of the rule deployment.
669
+ Note that RuleDeployment is a child of the overall Rule, not any individual
670
+ revision, so the resource ID segment for the Rule resource must not
671
+ reference a specific revision.
672
+ Format:
673
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}/deployment
674
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] producer_rules: Output only. The names of the associated/chained producer rules. Rules are considered
675
+ producers for this rule if this rule explicitly filters on their ruleid.
676
+ Format:
677
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}
678
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
679
+ If it is not provided, the provider project is used.
680
+ :param pulumi.Input[str] rule: The Rule ID of the rule.
681
+
682
+
683
+ - - -
684
+ :param pulumi.Input[str] run_frequency: The run frequency of the rule deployment.
685
+ Possible values:
686
+ LIVE
687
+ HOURLY
688
+ DAILY
689
+ """
690
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
691
+
692
+ __props__ = _RuleDeploymentState.__new__(_RuleDeploymentState)
693
+
694
+ __props__.__dict__["alerting"] = alerting
695
+ __props__.__dict__["archive_time"] = archive_time
696
+ __props__.__dict__["archived"] = archived
697
+ __props__.__dict__["consumer_rules"] = consumer_rules
698
+ __props__.__dict__["enabled"] = enabled
699
+ __props__.__dict__["execution_state"] = execution_state
700
+ __props__.__dict__["instance"] = instance
701
+ __props__.__dict__["last_alert_status_change_time"] = last_alert_status_change_time
702
+ __props__.__dict__["location"] = location
703
+ __props__.__dict__["name"] = name
704
+ __props__.__dict__["producer_rules"] = producer_rules
705
+ __props__.__dict__["project"] = project
706
+ __props__.__dict__["rule"] = rule
707
+ __props__.__dict__["run_frequency"] = run_frequency
708
+ return RuleDeployment(resource_name, opts=opts, __props__=__props__)
709
+
710
+ @property
711
+ @pulumi.getter
712
+ def alerting(self) -> pulumi.Output[Optional[bool]]:
713
+ """
714
+ Whether detections resulting from this deployment should be considered
715
+ alerts.
716
+ """
717
+ return pulumi.get(self, "alerting")
718
+
719
+ @property
720
+ @pulumi.getter(name="archiveTime")
721
+ def archive_time(self) -> pulumi.Output[str]:
722
+ """
723
+ Output only. The timestamp when the rule deployment archive state was last set to true. If the rule deployment's current archive state is not set to true, the field will be empty.
724
+ """
725
+ return pulumi.get(self, "archive_time")
726
+
727
+ @property
728
+ @pulumi.getter
729
+ def archived(self) -> pulumi.Output[Optional[bool]]:
730
+ """
731
+ The archive state of the rule deployment.
732
+ Cannot be set to true unless enabled is set to false.
733
+ If set to true, alerting will automatically be set to false.
734
+ If currently set to true, enabled, alerting, and run_frequency cannot be
735
+ updated.
736
+ """
737
+ return pulumi.get(self, "archived")
738
+
739
+ @property
740
+ @pulumi.getter(name="consumerRules")
741
+ def consumer_rules(self) -> pulumi.Output[Sequence[str]]:
742
+ """
743
+ Output only. The names of the associated/chained consumer rules. Rules are considered
744
+ consumers of this rule if their rule text explicitly filters on this rule's ruleid.
745
+ Format:
746
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}
747
+ """
748
+ return pulumi.get(self, "consumer_rules")
749
+
750
+ @property
751
+ @pulumi.getter
752
+ def enabled(self) -> pulumi.Output[Optional[bool]]:
753
+ """
754
+ Whether the rule is currently deployed continuously against incoming data.
755
+ """
756
+ return pulumi.get(self, "enabled")
757
+
758
+ @property
759
+ @pulumi.getter(name="executionState")
760
+ def execution_state(self) -> pulumi.Output[str]:
761
+ """
762
+ The execution state of the rule deployment.
763
+ Possible values:
764
+ DEFAULT
765
+ LIMITED
766
+ PAUSED
767
+ """
768
+ return pulumi.get(self, "execution_state")
769
+
770
+ @property
771
+ @pulumi.getter
772
+ def instance(self) -> pulumi.Output[str]:
773
+ """
774
+ The unique identifier for the Chronicle instance, which is the same as the customer ID.
775
+ """
776
+ return pulumi.get(self, "instance")
777
+
778
+ @property
779
+ @pulumi.getter(name="lastAlertStatusChangeTime")
780
+ def last_alert_status_change_time(self) -> pulumi.Output[str]:
781
+ """
782
+ Output only. The timestamp when the rule deployment alert state was lastly changed. This is filled regardless of the current alert state.E.g. if the current alert status is false, this timestamp will be the timestamp when the alert status was changed to false.
783
+ """
784
+ return pulumi.get(self, "last_alert_status_change_time")
785
+
786
+ @property
787
+ @pulumi.getter
788
+ def location(self) -> pulumi.Output[str]:
789
+ """
790
+ The location of the resource. This is the geographical region where the Chronicle instance resides, such as "us" or "europe-west2".
791
+ """
792
+ return pulumi.get(self, "location")
793
+
794
+ @property
795
+ @pulumi.getter
796
+ def name(self) -> pulumi.Output[str]:
797
+ """
798
+ The resource name of the rule deployment.
799
+ Note that RuleDeployment is a child of the overall Rule, not any individual
800
+ revision, so the resource ID segment for the Rule resource must not
801
+ reference a specific revision.
802
+ Format:
803
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}/deployment
804
+ """
805
+ return pulumi.get(self, "name")
806
+
807
+ @property
808
+ @pulumi.getter(name="producerRules")
809
+ def producer_rules(self) -> pulumi.Output[Sequence[str]]:
810
+ """
811
+ Output only. The names of the associated/chained producer rules. Rules are considered
812
+ producers for this rule if this rule explicitly filters on their ruleid.
813
+ Format:
814
+ projects/{project}/locations/{location}/instances/{instance}/rules/{rule}
815
+ """
816
+ return pulumi.get(self, "producer_rules")
817
+
818
+ @property
819
+ @pulumi.getter
820
+ def project(self) -> pulumi.Output[str]:
821
+ """
822
+ The ID of the project in which the resource belongs.
823
+ If it is not provided, the provider project is used.
824
+ """
825
+ return pulumi.get(self, "project")
826
+
827
+ @property
828
+ @pulumi.getter
829
+ def rule(self) -> pulumi.Output[str]:
830
+ """
831
+ The Rule ID of the rule.
832
+
833
+
834
+ - - -
835
+ """
836
+ return pulumi.get(self, "rule")
837
+
838
+ @property
839
+ @pulumi.getter(name="runFrequency")
840
+ def run_frequency(self) -> pulumi.Output[Optional[str]]:
841
+ """
842
+ The run frequency of the rule deployment.
843
+ Possible values:
844
+ LIVE
845
+ HOURLY
846
+ DAILY
847
+ """
848
+ return pulumi.get(self, "run_frequency")
849
+