pulumi-newrelic 5.20.0a1709365820__py3-none-any.whl → 5.21.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 (72) hide show
  1. pulumi_newrelic/__init__.py +10 -0
  2. pulumi_newrelic/_inputs.py +69 -29
  3. pulumi_newrelic/account_management.py +6 -2
  4. pulumi_newrelic/alert_channel.py +34 -2
  5. pulumi_newrelic/alert_condition.py +26 -2
  6. pulumi_newrelic/alert_muting_rule.py +6 -2
  7. pulumi_newrelic/alert_policy.py +48 -4
  8. pulumi_newrelic/alert_policy_channel.py +8 -4
  9. pulumi_newrelic/api_access_key.py +6 -26
  10. pulumi_newrelic/browser_application.py +6 -2
  11. pulumi_newrelic/cloud/aws_govcloud_integrations.py +2 -2
  12. pulumi_newrelic/cloud/aws_govcloud_link_account.py +6 -2
  13. pulumi_newrelic/cloud/aws_integrations.py +6 -2
  14. pulumi_newrelic/cloud/aws_link_account.py +6 -2
  15. pulumi_newrelic/cloud/azure_integrations.py +6 -2
  16. pulumi_newrelic/cloud/azure_link_account.py +6 -2
  17. pulumi_newrelic/cloud/gcp_integrations.py +6 -2
  18. pulumi_newrelic/cloud/gcp_link_account.py +6 -2
  19. pulumi_newrelic/data_partition_rule.py +8 -2
  20. pulumi_newrelic/entity_tags.py +8 -4
  21. pulumi_newrelic/events_to_metrics_rule.py +8 -4
  22. pulumi_newrelic/get_account.py +4 -0
  23. pulumi_newrelic/get_alert_policy.py +3 -3
  24. pulumi_newrelic/get_application.py +4 -0
  25. pulumi_newrelic/get_authentication_domain.py +4 -0
  26. pulumi_newrelic/get_cloud_account.py +4 -0
  27. pulumi_newrelic/get_entity.py +66 -4
  28. pulumi_newrelic/get_group.py +145 -0
  29. pulumi_newrelic/get_key_transaction.py +4 -0
  30. pulumi_newrelic/get_notification_destination.py +14 -1
  31. pulumi_newrelic/get_obfuscation_expression.py +4 -0
  32. pulumi_newrelic/get_service_level_alert_helper.py +12 -0
  33. pulumi_newrelic/get_test_grok_pattern.py +4 -0
  34. pulumi_newrelic/get_user.py +10 -6
  35. pulumi_newrelic/group.py +426 -0
  36. pulumi_newrelic/infra_alert_condition.py +33 -9
  37. pulumi_newrelic/insights/event.py +6 -0
  38. pulumi_newrelic/log_parsing_rule.py +12 -2
  39. pulumi_newrelic/monitor_downtime.py +28 -2
  40. pulumi_newrelic/notification_channel.py +72 -0
  41. pulumi_newrelic/notification_destination.py +160 -2
  42. pulumi_newrelic/nrql_alert_condition.py +28 -4
  43. pulumi_newrelic/nrql_drop_rule.py +30 -4
  44. pulumi_newrelic/obfuscation_expression.py +6 -2
  45. pulumi_newrelic/obfuscation_rule.py +6 -2
  46. pulumi_newrelic/one_dashboard.py +2 -2
  47. pulumi_newrelic/one_dashboard_json.py +2 -2
  48. pulumi_newrelic/one_dashboard_raw.py +6 -0
  49. pulumi_newrelic/outputs.py +78 -29
  50. pulumi_newrelic/plugins/_inputs.py +2 -2
  51. pulumi_newrelic/plugins/application_settings.py +22 -2
  52. pulumi_newrelic/plugins/outputs.py +2 -2
  53. pulumi_newrelic/plugins/workload.py +112 -4
  54. pulumi_newrelic/service_level.py +20 -6
  55. pulumi_newrelic/synthetics/alert_condition.py +26 -2
  56. pulumi_newrelic/synthetics/broken_links_monitor.py +19 -23
  57. pulumi_newrelic/synthetics/cert_check_monitor.py +19 -23
  58. pulumi_newrelic/synthetics/get_private_location.py +8 -0
  59. pulumi_newrelic/synthetics/get_secure_credential.py +4 -0
  60. pulumi_newrelic/synthetics/monitor.py +27 -23
  61. pulumi_newrelic/synthetics/multi_location_alert_condition.py +12 -4
  62. pulumi_newrelic/synthetics/private_location.py +6 -2
  63. pulumi_newrelic/synthetics/script_monitor.py +27 -23
  64. pulumi_newrelic/synthetics/secure_credential.py +6 -2
  65. pulumi_newrelic/synthetics/step_monitor.py +15 -23
  66. pulumi_newrelic/user.py +4 -0
  67. pulumi_newrelic/workflow.py +22 -4
  68. {pulumi_newrelic-5.20.0a1709365820.dist-info → pulumi_newrelic-5.21.0.dist-info}/METADATA +1 -1
  69. pulumi_newrelic-5.21.0.dist-info/RECORD +89 -0
  70. {pulumi_newrelic-5.20.0a1709365820.dist-info → pulumi_newrelic-5.21.0.dist-info}/WHEEL +1 -1
  71. pulumi_newrelic-5.20.0a1709365820.dist-info/RECORD +0 -87
  72. {pulumi_newrelic-5.20.0a1709365820.dist-info → pulumi_newrelic-5.21.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,426 @@
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 pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from . import _utilities
11
+
12
+ __all__ = ['GroupArgs', 'Group']
13
+
14
+ @pulumi.input_type
15
+ class GroupArgs:
16
+ def __init__(__self__, *,
17
+ authentication_domain_id: pulumi.Input[str],
18
+ name: Optional[pulumi.Input[str]] = None,
19
+ user_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
20
+ """
21
+ The set of arguments for constructing a Group resource.
22
+ :param pulumi.Input[str] authentication_domain_id: The ID of the authentication domain to which the group to be created would belong.
23
+ :param pulumi.Input[str] name: The name of the group to be created.
24
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] user_ids: A list of IDs of users to be included in the group to be created.
25
+
26
+ > **NOTE** The ID of an authentication domain can be retrieved using its name, via the data source `get_authentication_domain`, as shown in the example above. Head over to the documentation of this data source for more details and examples.
27
+
28
+ > **WARNING:** Changing the `authentication_domain_id` of a `Group` resource that has already been applied would result in a **replacement** of the resource – destruction of the existing resource, followed by the addition of a new resource with the specified configuration. This is due to the fact that updating the `authentication_domain_id` of an existing group is not supported.
29
+ """
30
+ pulumi.set(__self__, "authentication_domain_id", authentication_domain_id)
31
+ if name is not None:
32
+ pulumi.set(__self__, "name", name)
33
+ if user_ids is not None:
34
+ pulumi.set(__self__, "user_ids", user_ids)
35
+
36
+ @property
37
+ @pulumi.getter(name="authenticationDomainId")
38
+ def authentication_domain_id(self) -> pulumi.Input[str]:
39
+ """
40
+ The ID of the authentication domain to which the group to be created would belong.
41
+ """
42
+ return pulumi.get(self, "authentication_domain_id")
43
+
44
+ @authentication_domain_id.setter
45
+ def authentication_domain_id(self, value: pulumi.Input[str]):
46
+ pulumi.set(self, "authentication_domain_id", value)
47
+
48
+ @property
49
+ @pulumi.getter
50
+ def name(self) -> Optional[pulumi.Input[str]]:
51
+ """
52
+ The name of the group to be created.
53
+ """
54
+ return pulumi.get(self, "name")
55
+
56
+ @name.setter
57
+ def name(self, value: Optional[pulumi.Input[str]]):
58
+ pulumi.set(self, "name", value)
59
+
60
+ @property
61
+ @pulumi.getter(name="userIds")
62
+ def user_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
63
+ """
64
+ A list of IDs of users to be included in the group to be created.
65
+
66
+ > **NOTE** The ID of an authentication domain can be retrieved using its name, via the data source `get_authentication_domain`, as shown in the example above. Head over to the documentation of this data source for more details and examples.
67
+
68
+ > **WARNING:** Changing the `authentication_domain_id` of a `Group` resource that has already been applied would result in a **replacement** of the resource – destruction of the existing resource, followed by the addition of a new resource with the specified configuration. This is due to the fact that updating the `authentication_domain_id` of an existing group is not supported.
69
+ """
70
+ return pulumi.get(self, "user_ids")
71
+
72
+ @user_ids.setter
73
+ def user_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
74
+ pulumi.set(self, "user_ids", value)
75
+
76
+
77
+ @pulumi.input_type
78
+ class _GroupState:
79
+ def __init__(__self__, *,
80
+ authentication_domain_id: Optional[pulumi.Input[str]] = None,
81
+ name: Optional[pulumi.Input[str]] = None,
82
+ user_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
83
+ """
84
+ Input properties used for looking up and filtering Group resources.
85
+ :param pulumi.Input[str] authentication_domain_id: The ID of the authentication domain to which the group to be created would belong.
86
+ :param pulumi.Input[str] name: The name of the group to be created.
87
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] user_ids: A list of IDs of users to be included in the group to be created.
88
+
89
+ > **NOTE** The ID of an authentication domain can be retrieved using its name, via the data source `get_authentication_domain`, as shown in the example above. Head over to the documentation of this data source for more details and examples.
90
+
91
+ > **WARNING:** Changing the `authentication_domain_id` of a `Group` resource that has already been applied would result in a **replacement** of the resource – destruction of the existing resource, followed by the addition of a new resource with the specified configuration. This is due to the fact that updating the `authentication_domain_id` of an existing group is not supported.
92
+ """
93
+ if authentication_domain_id is not None:
94
+ pulumi.set(__self__, "authentication_domain_id", authentication_domain_id)
95
+ if name is not None:
96
+ pulumi.set(__self__, "name", name)
97
+ if user_ids is not None:
98
+ pulumi.set(__self__, "user_ids", user_ids)
99
+
100
+ @property
101
+ @pulumi.getter(name="authenticationDomainId")
102
+ def authentication_domain_id(self) -> Optional[pulumi.Input[str]]:
103
+ """
104
+ The ID of the authentication domain to which the group to be created would belong.
105
+ """
106
+ return pulumi.get(self, "authentication_domain_id")
107
+
108
+ @authentication_domain_id.setter
109
+ def authentication_domain_id(self, value: Optional[pulumi.Input[str]]):
110
+ pulumi.set(self, "authentication_domain_id", value)
111
+
112
+ @property
113
+ @pulumi.getter
114
+ def name(self) -> Optional[pulumi.Input[str]]:
115
+ """
116
+ The name of the group to be created.
117
+ """
118
+ return pulumi.get(self, "name")
119
+
120
+ @name.setter
121
+ def name(self, value: Optional[pulumi.Input[str]]):
122
+ pulumi.set(self, "name", value)
123
+
124
+ @property
125
+ @pulumi.getter(name="userIds")
126
+ def user_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
127
+ """
128
+ A list of IDs of users to be included in the group to be created.
129
+
130
+ > **NOTE** The ID of an authentication domain can be retrieved using its name, via the data source `get_authentication_domain`, as shown in the example above. Head over to the documentation of this data source for more details and examples.
131
+
132
+ > **WARNING:** Changing the `authentication_domain_id` of a `Group` resource that has already been applied would result in a **replacement** of the resource – destruction of the existing resource, followed by the addition of a new resource with the specified configuration. This is due to the fact that updating the `authentication_domain_id` of an existing group is not supported.
133
+ """
134
+ return pulumi.get(self, "user_ids")
135
+
136
+ @user_ids.setter
137
+ def user_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
138
+ pulumi.set(self, "user_ids", value)
139
+
140
+
141
+ class Group(pulumi.CustomResource):
142
+ @overload
143
+ def __init__(__self__,
144
+ resource_name: str,
145
+ opts: Optional[pulumi.ResourceOptions] = None,
146
+ authentication_domain_id: Optional[pulumi.Input[str]] = None,
147
+ name: Optional[pulumi.Input[str]] = None,
148
+ user_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
149
+ __props__=None):
150
+ """
151
+ The `Group` resource facilitates creating, updating, and deleting groups in New Relic, while also enabling the addition and removal of users from these groups.
152
+
153
+ ## Example Usage
154
+
155
+ <!--Start PulumiCodeChooser -->
156
+ ```python
157
+ import pulumi
158
+ import pulumi_newrelic as newrelic
159
+
160
+ foo_authentication_domain = newrelic.get_authentication_domain(name="Test Authentication Domain")
161
+ foo_group = newrelic.Group("fooGroup",
162
+ authentication_domain_id=foo_authentication_domain.id,
163
+ user_ids=[
164
+ "0001112222",
165
+ "2221110000",
166
+ ])
167
+ ```
168
+ <!--End PulumiCodeChooser -->
169
+
170
+ ## Additional Examples
171
+
172
+ ### Addition of New Users to a New Group
173
+
174
+ The following example illustrates the creation of a group using the `Group` resource, to which users created using the `User` resource are added.
175
+
176
+ <!--Start PulumiCodeChooser -->
177
+ ```python
178
+ import pulumi
179
+ import pulumi_newrelic as newrelic
180
+
181
+ foo_authentication_domain = newrelic.get_authentication_domain(name="Test Authentication Domain")
182
+ foo_user = newrelic.User("fooUser",
183
+ email_id="test_user_one@test.com",
184
+ authentication_domain_id=foo_authentication_domain.id,
185
+ user_type="CORE_USER_TIER")
186
+ bar = newrelic.User("bar",
187
+ email_id="test_user_two@test.com",
188
+ authentication_domain_id=foo_authentication_domain.id,
189
+ user_type="BASIC_USER_TIER")
190
+ foo_group = newrelic.Group("fooGroup",
191
+ authentication_domain_id=foo_authentication_domain.id,
192
+ user_ids=[
193
+ foo_user.id,
194
+ bar.id,
195
+ ])
196
+ ```
197
+ <!--End PulumiCodeChooser -->
198
+
199
+ ### Addition of Existing Users to a New Group
200
+
201
+ The following example demonstrates the usage of the `Group` resource to create a group, wherein the `User` data source is employed to associate existing users with the newly formed group.
202
+
203
+ <!--Start PulumiCodeChooser -->
204
+ ```python
205
+ import pulumi
206
+ import pulumi_newrelic as newrelic
207
+
208
+ foo_authentication_domain = newrelic.get_authentication_domain(name="Test Authentication Domain")
209
+ foo_user = newrelic.get_user(authentication_domain_id=foo_authentication_domain.id,
210
+ email_id="test_user_one@test.com")
211
+ bar = newrelic.get_user(authentication_domain_id=foo_authentication_domain.id,
212
+ name="Test User Two")
213
+ foo_group = newrelic.Group("fooGroup",
214
+ authentication_domain_id=foo_authentication_domain.id,
215
+ user_ids=[
216
+ foo_user.id,
217
+ bar.id,
218
+ ])
219
+ ```
220
+ <!--End PulumiCodeChooser -->
221
+
222
+ > **NOTE** Please note that the addition of users to groups is only possible when both the group and the users to be added to it belong to the _same authentication domain_. If the group being created and the users being added to it belong to different authentication domains, an error indicating `user not found` or an equivalent error will be thrown.
223
+
224
+ ## Import
225
+
226
+ A group can be imported using its ID. Example:
227
+
228
+ ```sh
229
+ $ pulumi import newrelic:index/group:Group foo <group_id>
230
+ ```
231
+
232
+ :param str resource_name: The name of the resource.
233
+ :param pulumi.ResourceOptions opts: Options for the resource.
234
+ :param pulumi.Input[str] authentication_domain_id: The ID of the authentication domain to which the group to be created would belong.
235
+ :param pulumi.Input[str] name: The name of the group to be created.
236
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] user_ids: A list of IDs of users to be included in the group to be created.
237
+
238
+ > **NOTE** The ID of an authentication domain can be retrieved using its name, via the data source `get_authentication_domain`, as shown in the example above. Head over to the documentation of this data source for more details and examples.
239
+
240
+ > **WARNING:** Changing the `authentication_domain_id` of a `Group` resource that has already been applied would result in a **replacement** of the resource – destruction of the existing resource, followed by the addition of a new resource with the specified configuration. This is due to the fact that updating the `authentication_domain_id` of an existing group is not supported.
241
+ """
242
+ ...
243
+ @overload
244
+ def __init__(__self__,
245
+ resource_name: str,
246
+ args: GroupArgs,
247
+ opts: Optional[pulumi.ResourceOptions] = None):
248
+ """
249
+ The `Group` resource facilitates creating, updating, and deleting groups in New Relic, while also enabling the addition and removal of users from these groups.
250
+
251
+ ## Example Usage
252
+
253
+ <!--Start PulumiCodeChooser -->
254
+ ```python
255
+ import pulumi
256
+ import pulumi_newrelic as newrelic
257
+
258
+ foo_authentication_domain = newrelic.get_authentication_domain(name="Test Authentication Domain")
259
+ foo_group = newrelic.Group("fooGroup",
260
+ authentication_domain_id=foo_authentication_domain.id,
261
+ user_ids=[
262
+ "0001112222",
263
+ "2221110000",
264
+ ])
265
+ ```
266
+ <!--End PulumiCodeChooser -->
267
+
268
+ ## Additional Examples
269
+
270
+ ### Addition of New Users to a New Group
271
+
272
+ The following example illustrates the creation of a group using the `Group` resource, to which users created using the `User` resource are added.
273
+
274
+ <!--Start PulumiCodeChooser -->
275
+ ```python
276
+ import pulumi
277
+ import pulumi_newrelic as newrelic
278
+
279
+ foo_authentication_domain = newrelic.get_authentication_domain(name="Test Authentication Domain")
280
+ foo_user = newrelic.User("fooUser",
281
+ email_id="test_user_one@test.com",
282
+ authentication_domain_id=foo_authentication_domain.id,
283
+ user_type="CORE_USER_TIER")
284
+ bar = newrelic.User("bar",
285
+ email_id="test_user_two@test.com",
286
+ authentication_domain_id=foo_authentication_domain.id,
287
+ user_type="BASIC_USER_TIER")
288
+ foo_group = newrelic.Group("fooGroup",
289
+ authentication_domain_id=foo_authentication_domain.id,
290
+ user_ids=[
291
+ foo_user.id,
292
+ bar.id,
293
+ ])
294
+ ```
295
+ <!--End PulumiCodeChooser -->
296
+
297
+ ### Addition of Existing Users to a New Group
298
+
299
+ The following example demonstrates the usage of the `Group` resource to create a group, wherein the `User` data source is employed to associate existing users with the newly formed group.
300
+
301
+ <!--Start PulumiCodeChooser -->
302
+ ```python
303
+ import pulumi
304
+ import pulumi_newrelic as newrelic
305
+
306
+ foo_authentication_domain = newrelic.get_authentication_domain(name="Test Authentication Domain")
307
+ foo_user = newrelic.get_user(authentication_domain_id=foo_authentication_domain.id,
308
+ email_id="test_user_one@test.com")
309
+ bar = newrelic.get_user(authentication_domain_id=foo_authentication_domain.id,
310
+ name="Test User Two")
311
+ foo_group = newrelic.Group("fooGroup",
312
+ authentication_domain_id=foo_authentication_domain.id,
313
+ user_ids=[
314
+ foo_user.id,
315
+ bar.id,
316
+ ])
317
+ ```
318
+ <!--End PulumiCodeChooser -->
319
+
320
+ > **NOTE** Please note that the addition of users to groups is only possible when both the group and the users to be added to it belong to the _same authentication domain_. If the group being created and the users being added to it belong to different authentication domains, an error indicating `user not found` or an equivalent error will be thrown.
321
+
322
+ ## Import
323
+
324
+ A group can be imported using its ID. Example:
325
+
326
+ ```sh
327
+ $ pulumi import newrelic:index/group:Group foo <group_id>
328
+ ```
329
+
330
+ :param str resource_name: The name of the resource.
331
+ :param GroupArgs args: The arguments to use to populate this resource's properties.
332
+ :param pulumi.ResourceOptions opts: Options for the resource.
333
+ """
334
+ ...
335
+ def __init__(__self__, resource_name: str, *args, **kwargs):
336
+ resource_args, opts = _utilities.get_resource_args_opts(GroupArgs, pulumi.ResourceOptions, *args, **kwargs)
337
+ if resource_args is not None:
338
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
339
+ else:
340
+ __self__._internal_init(resource_name, *args, **kwargs)
341
+
342
+ def _internal_init(__self__,
343
+ resource_name: str,
344
+ opts: Optional[pulumi.ResourceOptions] = None,
345
+ authentication_domain_id: Optional[pulumi.Input[str]] = None,
346
+ name: Optional[pulumi.Input[str]] = None,
347
+ user_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
348
+ __props__=None):
349
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
350
+ if not isinstance(opts, pulumi.ResourceOptions):
351
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
352
+ if opts.id is None:
353
+ if __props__ is not None:
354
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
355
+ __props__ = GroupArgs.__new__(GroupArgs)
356
+
357
+ if authentication_domain_id is None and not opts.urn:
358
+ raise TypeError("Missing required property 'authentication_domain_id'")
359
+ __props__.__dict__["authentication_domain_id"] = authentication_domain_id
360
+ __props__.__dict__["name"] = name
361
+ __props__.__dict__["user_ids"] = user_ids
362
+ super(Group, __self__).__init__(
363
+ 'newrelic:index/group:Group',
364
+ resource_name,
365
+ __props__,
366
+ opts)
367
+
368
+ @staticmethod
369
+ def get(resource_name: str,
370
+ id: pulumi.Input[str],
371
+ opts: Optional[pulumi.ResourceOptions] = None,
372
+ authentication_domain_id: Optional[pulumi.Input[str]] = None,
373
+ name: Optional[pulumi.Input[str]] = None,
374
+ user_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'Group':
375
+ """
376
+ Get an existing Group resource's state with the given name, id, and optional extra
377
+ properties used to qualify the lookup.
378
+
379
+ :param str resource_name: The unique name of the resulting resource.
380
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
381
+ :param pulumi.ResourceOptions opts: Options for the resource.
382
+ :param pulumi.Input[str] authentication_domain_id: The ID of the authentication domain to which the group to be created would belong.
383
+ :param pulumi.Input[str] name: The name of the group to be created.
384
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] user_ids: A list of IDs of users to be included in the group to be created.
385
+
386
+ > **NOTE** The ID of an authentication domain can be retrieved using its name, via the data source `get_authentication_domain`, as shown in the example above. Head over to the documentation of this data source for more details and examples.
387
+
388
+ > **WARNING:** Changing the `authentication_domain_id` of a `Group` resource that has already been applied would result in a **replacement** of the resource – destruction of the existing resource, followed by the addition of a new resource with the specified configuration. This is due to the fact that updating the `authentication_domain_id` of an existing group is not supported.
389
+ """
390
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
391
+
392
+ __props__ = _GroupState.__new__(_GroupState)
393
+
394
+ __props__.__dict__["authentication_domain_id"] = authentication_domain_id
395
+ __props__.__dict__["name"] = name
396
+ __props__.__dict__["user_ids"] = user_ids
397
+ return Group(resource_name, opts=opts, __props__=__props__)
398
+
399
+ @property
400
+ @pulumi.getter(name="authenticationDomainId")
401
+ def authentication_domain_id(self) -> pulumi.Output[str]:
402
+ """
403
+ The ID of the authentication domain to which the group to be created would belong.
404
+ """
405
+ return pulumi.get(self, "authentication_domain_id")
406
+
407
+ @property
408
+ @pulumi.getter
409
+ def name(self) -> pulumi.Output[str]:
410
+ """
411
+ The name of the group to be created.
412
+ """
413
+ return pulumi.get(self, "name")
414
+
415
+ @property
416
+ @pulumi.getter(name="userIds")
417
+ def user_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
418
+ """
419
+ A list of IDs of users to be included in the group to be created.
420
+
421
+ > **NOTE** The ID of an authentication domain can be retrieved using its name, via the data source `get_authentication_domain`, as shown in the example above. Head over to the documentation of this data source for more details and examples.
422
+
423
+ > **WARNING:** Changing the `authentication_domain_id` of a `Group` resource that has already been applied would result in a **replacement** of the resource – destruction of the existing resource, followed by the addition of a new resource with the specified configuration. This is due to the fact that updating the `authentication_domain_id` of an existing group is not supported.
424
+ """
425
+ return pulumi.get(self, "user_ids")
426
+
@@ -47,11 +47,13 @@ class InfraAlertConditionArgs:
47
47
  :param pulumi.Input[str] select: The attribute name to identify the metric being targeted; for example, `cpuPercent`, `diskFreePercent`, or `memoryResidentSizeBytes`. The underlying API will automatically populate this value for Infrastructure integrations (for example `diskFreePercent`), so make sure to explicitly include this value to avoid diff issues. Supported by the `infra_metric` condition type.
48
48
  :param pulumi.Input[int] violation_close_timer: Determines how much time will pass (in hours) before an incident is automatically closed. Valid values are `1 2 4 8 12 24 48 72`. Defaults to 24. If `0` is provided, default of `24` is used and will have configuration drift during the apply phase until a valid value is provided.
49
49
 
50
+ <!--Start PulumiCodeChooser -->
50
51
  ```python
51
52
  import pulumi
52
53
  ```
54
+ <!--End PulumiCodeChooser -->
53
55
  :param pulumi.Input['InfraAlertConditionWarningArgs'] warning: Identifies the threshold parameters for opening a warning alert incident. See Thresholds below for details.
54
- :param pulumi.Input[str] where: If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%cassandra%'`.
56
+ :param pulumi.Input[str] where: If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%!c(MISSING)assandra%!'(MISSING)`.
55
57
  """
56
58
  pulumi.set(__self__, "policy_id", policy_id)
57
59
  pulumi.set(__self__, "type", type)
@@ -232,9 +234,11 @@ class InfraAlertConditionArgs:
232
234
  """
233
235
  Determines how much time will pass (in hours) before an incident is automatically closed. Valid values are `1 2 4 8 12 24 48 72`. Defaults to 24. If `0` is provided, default of `24` is used and will have configuration drift during the apply phase until a valid value is provided.
234
236
 
237
+ <!--Start PulumiCodeChooser -->
235
238
  ```python
236
239
  import pulumi
237
240
  ```
241
+ <!--End PulumiCodeChooser -->
238
242
  """
239
243
  return pulumi.get(self, "violation_close_timer")
240
244
 
@@ -258,7 +262,7 @@ class InfraAlertConditionArgs:
258
262
  @pulumi.getter
259
263
  def where(self) -> Optional[pulumi.Input[str]]:
260
264
  """
261
- If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%cassandra%'`.
265
+ If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%!c(MISSING)assandra%!'(MISSING)`.
262
266
  """
263
267
  return pulumi.get(self, "where")
264
268
 
@@ -307,11 +311,13 @@ class _InfraAlertConditionState:
307
311
  :param pulumi.Input[int] updated_at: The timestamp the alert condition was last updated.
308
312
  :param pulumi.Input[int] violation_close_timer: Determines how much time will pass (in hours) before an incident is automatically closed. Valid values are `1 2 4 8 12 24 48 72`. Defaults to 24. If `0` is provided, default of `24` is used and will have configuration drift during the apply phase until a valid value is provided.
309
313
 
314
+ <!--Start PulumiCodeChooser -->
310
315
  ```python
311
316
  import pulumi
312
317
  ```
318
+ <!--End PulumiCodeChooser -->
313
319
  :param pulumi.Input['InfraAlertConditionWarningArgs'] warning: Identifies the threshold parameters for opening a warning alert incident. See Thresholds below for details.
314
- :param pulumi.Input[str] where: If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%cassandra%'`.
320
+ :param pulumi.Input[str] where: If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%!c(MISSING)assandra%!'(MISSING)`.
315
321
  """
316
322
  if comparison is not None:
317
323
  pulumi.set(__self__, "comparison", comparison)
@@ -536,9 +542,11 @@ class _InfraAlertConditionState:
536
542
  """
537
543
  Determines how much time will pass (in hours) before an incident is automatically closed. Valid values are `1 2 4 8 12 24 48 72`. Defaults to 24. If `0` is provided, default of `24` is used and will have configuration drift during the apply phase until a valid value is provided.
538
544
 
545
+ <!--Start PulumiCodeChooser -->
539
546
  ```python
540
547
  import pulumi
541
548
  ```
549
+ <!--End PulumiCodeChooser -->
542
550
  """
543
551
  return pulumi.get(self, "violation_close_timer")
544
552
 
@@ -562,7 +570,7 @@ class _InfraAlertConditionState:
562
570
  @pulumi.getter
563
571
  def where(self) -> Optional[pulumi.Input[str]]:
564
572
  """
565
- If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%cassandra%'`.
573
+ If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%!c(MISSING)assandra%!'(MISSING)`.
566
574
  """
567
575
  return pulumi.get(self, "where")
568
576
 
@@ -599,6 +607,7 @@ class InfraAlertCondition(pulumi.CustomResource):
599
607
 
600
608
  ## Example Usage
601
609
 
610
+ <!--Start PulumiCodeChooser -->
602
611
  ```python
603
612
  import pulumi
604
613
  import pulumi_newrelic as newrelic
@@ -656,6 +665,8 @@ class InfraAlertCondition(pulumi.CustomResource):
656
665
  duration=5,
657
666
  ))
658
667
  ```
668
+ <!--End PulumiCodeChooser -->
669
+
659
670
  ## Thresholds
660
671
 
661
672
  The `critical` and `warning` threshold mapping supports the following arguments:
@@ -668,6 +679,7 @@ class InfraAlertCondition(pulumi.CustomResource):
668
679
 
669
680
  Manage infra alert condition tags with `EntityTags`. For up-to-date documentation about the tagging resource, please check EntityTags
670
681
 
682
+ <!--Start PulumiCodeChooser -->
671
683
  ```python
672
684
  import pulumi
673
685
  import pulumi_newrelic as newrelic
@@ -707,13 +719,14 @@ class InfraAlertCondition(pulumi.CustomResource):
707
719
  ),
708
720
  ])
709
721
  ```
722
+ <!--End PulumiCodeChooser -->
710
723
 
711
724
  ## Import
712
725
 
713
726
  Infrastructure alert conditions can be imported using a composite ID of `<policy_id>:<condition_id>`, e.g.
714
727
 
715
728
  ```sh
716
- $ pulumi import newrelic:index/infraAlertCondition:InfraAlertCondition main 12345:67890
729
+ $ pulumi import newrelic:index/infraAlertCondition:InfraAlertCondition main 12345:67890
717
730
  ```
718
731
 
719
732
  :param str resource_name: The name of the resource.
@@ -732,11 +745,13 @@ class InfraAlertCondition(pulumi.CustomResource):
732
745
  :param pulumi.Input[str] type: The type of Infrastructure alert condition. Valid values are `infra_process_running`, `infra_metric`, and `infra_host_not_reporting`.
733
746
  :param pulumi.Input[int] violation_close_timer: Determines how much time will pass (in hours) before an incident is automatically closed. Valid values are `1 2 4 8 12 24 48 72`. Defaults to 24. If `0` is provided, default of `24` is used and will have configuration drift during the apply phase until a valid value is provided.
734
747
 
748
+ <!--Start PulumiCodeChooser -->
735
749
  ```python
736
750
  import pulumi
737
751
  ```
752
+ <!--End PulumiCodeChooser -->
738
753
  :param pulumi.Input[pulumi.InputType['InfraAlertConditionWarningArgs']] warning: Identifies the threshold parameters for opening a warning alert incident. See Thresholds below for details.
739
- :param pulumi.Input[str] where: If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%cassandra%'`.
754
+ :param pulumi.Input[str] where: If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%!c(MISSING)assandra%!'(MISSING)`.
740
755
  """
741
756
  ...
742
757
  @overload
@@ -751,6 +766,7 @@ class InfraAlertCondition(pulumi.CustomResource):
751
766
 
752
767
  ## Example Usage
753
768
 
769
+ <!--Start PulumiCodeChooser -->
754
770
  ```python
755
771
  import pulumi
756
772
  import pulumi_newrelic as newrelic
@@ -808,6 +824,8 @@ class InfraAlertCondition(pulumi.CustomResource):
808
824
  duration=5,
809
825
  ))
810
826
  ```
827
+ <!--End PulumiCodeChooser -->
828
+
811
829
  ## Thresholds
812
830
 
813
831
  The `critical` and `warning` threshold mapping supports the following arguments:
@@ -820,6 +838,7 @@ class InfraAlertCondition(pulumi.CustomResource):
820
838
 
821
839
  Manage infra alert condition tags with `EntityTags`. For up-to-date documentation about the tagging resource, please check EntityTags
822
840
 
841
+ <!--Start PulumiCodeChooser -->
823
842
  ```python
824
843
  import pulumi
825
844
  import pulumi_newrelic as newrelic
@@ -859,13 +878,14 @@ class InfraAlertCondition(pulumi.CustomResource):
859
878
  ),
860
879
  ])
861
880
  ```
881
+ <!--End PulumiCodeChooser -->
862
882
 
863
883
  ## Import
864
884
 
865
885
  Infrastructure alert conditions can be imported using a composite ID of `<policy_id>:<condition_id>`, e.g.
866
886
 
867
887
  ```sh
868
- $ pulumi import newrelic:index/infraAlertCondition:InfraAlertCondition main 12345:67890
888
+ $ pulumi import newrelic:index/infraAlertCondition:InfraAlertCondition main 12345:67890
869
889
  ```
870
890
 
871
891
  :param str resource_name: The name of the resource.
@@ -981,11 +1001,13 @@ class InfraAlertCondition(pulumi.CustomResource):
981
1001
  :param pulumi.Input[int] updated_at: The timestamp the alert condition was last updated.
982
1002
  :param pulumi.Input[int] violation_close_timer: Determines how much time will pass (in hours) before an incident is automatically closed. Valid values are `1 2 4 8 12 24 48 72`. Defaults to 24. If `0` is provided, default of `24` is used and will have configuration drift during the apply phase until a valid value is provided.
983
1003
 
1004
+ <!--Start PulumiCodeChooser -->
984
1005
  ```python
985
1006
  import pulumi
986
1007
  ```
1008
+ <!--End PulumiCodeChooser -->
987
1009
  :param pulumi.Input[pulumi.InputType['InfraAlertConditionWarningArgs']] warning: Identifies the threshold parameters for opening a warning alert incident. See Thresholds below for details.
988
- :param pulumi.Input[str] where: If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%cassandra%'`.
1010
+ :param pulumi.Input[str] where: If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%!c(MISSING)assandra%!'(MISSING)`.
989
1011
  """
990
1012
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
991
1013
 
@@ -1137,9 +1159,11 @@ class InfraAlertCondition(pulumi.CustomResource):
1137
1159
  """
1138
1160
  Determines how much time will pass (in hours) before an incident is automatically closed. Valid values are `1 2 4 8 12 24 48 72`. Defaults to 24. If `0` is provided, default of `24` is used and will have configuration drift during the apply phase until a valid value is provided.
1139
1161
 
1162
+ <!--Start PulumiCodeChooser -->
1140
1163
  ```python
1141
1164
  import pulumi
1142
1165
  ```
1166
+ <!--End PulumiCodeChooser -->
1143
1167
  """
1144
1168
  return pulumi.get(self, "violation_close_timer")
1145
1169
 
@@ -1155,7 +1179,7 @@ class InfraAlertCondition(pulumi.CustomResource):
1155
1179
  @pulumi.getter
1156
1180
  def where(self) -> pulumi.Output[Optional[str]]:
1157
1181
  """
1158
- If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%cassandra%'`.
1182
+ If applicable, this identifies any Infrastructure host filters used; for example: `hostname LIKE '%!c(MISSING)assandra%!'(MISSING)`.
1159
1183
  """
1160
1184
  return pulumi.get(self, "where")
1161
1185
 
@@ -72,6 +72,7 @@ class Event(pulumi.CustomResource):
72
72
 
73
73
  ## Example Usage
74
74
 
75
+ <!--Start PulumiCodeChooser -->
75
76
  ```python
76
77
  import pulumi
77
78
  import pulumi_newrelic as newrelic
@@ -97,6 +98,8 @@ class Event(pulumi.CustomResource):
97
98
  type="MyEvent",
98
99
  )])
99
100
  ```
101
+ <!--End PulumiCodeChooser -->
102
+
100
103
  ## Events
101
104
 
102
105
  The `event` mapping supports the following arguments:
@@ -128,6 +131,7 @@ class Event(pulumi.CustomResource):
128
131
 
129
132
  ## Example Usage
130
133
 
134
+ <!--Start PulumiCodeChooser -->
131
135
  ```python
132
136
  import pulumi
133
137
  import pulumi_newrelic as newrelic
@@ -153,6 +157,8 @@ class Event(pulumi.CustomResource):
153
157
  type="MyEvent",
154
158
  )])
155
159
  ```
160
+ <!--End PulumiCodeChooser -->
161
+
156
162
  ## Events
157
163
 
158
164
  The `event` mapping supports the following arguments: