pulumi-signalfx 7.2.0a1709367777__py3-none-any.whl → 7.6.0a1736835428__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 (54) hide show
  1. pulumi_signalfx/__init__.py +9 -0
  2. pulumi_signalfx/_inputs.py +1976 -339
  3. pulumi_signalfx/_utilities.py +41 -5
  4. pulumi_signalfx/alert_muting_rule.py +110 -86
  5. pulumi_signalfx/aws/_inputs.py +85 -16
  6. pulumi_signalfx/aws/external_integration.py +20 -275
  7. pulumi_signalfx/aws/integration.py +222 -367
  8. pulumi_signalfx/aws/outputs.py +21 -16
  9. pulumi_signalfx/aws/token_integration.py +46 -65
  10. pulumi_signalfx/azure/_inputs.py +41 -4
  11. pulumi_signalfx/azure/integration.py +144 -259
  12. pulumi_signalfx/azure/outputs.py +15 -4
  13. pulumi_signalfx/config/__init__.pyi +22 -0
  14. pulumi_signalfx/config/vars.py +28 -0
  15. pulumi_signalfx/dashboard.py +171 -186
  16. pulumi_signalfx/dashboard_group.py +131 -198
  17. pulumi_signalfx/data_link.py +76 -141
  18. pulumi_signalfx/detector.py +264 -369
  19. pulumi_signalfx/event_feed_chart.py +51 -82
  20. pulumi_signalfx/gcp/_inputs.py +51 -0
  21. pulumi_signalfx/gcp/integration.py +224 -192
  22. pulumi_signalfx/gcp/outputs.py +44 -0
  23. pulumi_signalfx/get_dimension_values.py +47 -24
  24. pulumi_signalfx/heatmap_chart.py +165 -228
  25. pulumi_signalfx/jira/integration.py +70 -119
  26. pulumi_signalfx/list_chart.py +219 -315
  27. pulumi_signalfx/log/_inputs.py +33 -2
  28. pulumi_signalfx/log/outputs.py +7 -2
  29. pulumi_signalfx/log/timeline.py +64 -99
  30. pulumi_signalfx/log/view.py +134 -173
  31. pulumi_signalfx/metric_ruleset.py +217 -70
  32. pulumi_signalfx/opsgenie/integration.py +41 -60
  33. pulumi_signalfx/org_token.py +97 -128
  34. pulumi_signalfx/outputs.py +661 -339
  35. pulumi_signalfx/pagerduty/get_integration.py +22 -21
  36. pulumi_signalfx/pagerduty/integration.py +34 -49
  37. pulumi_signalfx/provider.py +99 -0
  38. pulumi_signalfx/pulumi-plugin.json +2 -1
  39. pulumi_signalfx/servicenow/integration.py +52 -107
  40. pulumi_signalfx/single_value_chart.py +113 -178
  41. pulumi_signalfx/slack/integration.py +30 -47
  42. pulumi_signalfx/slo.py +99 -197
  43. pulumi_signalfx/slo_chart.py +197 -0
  44. pulumi_signalfx/table_chart.py +50 -75
  45. pulumi_signalfx/team.py +74 -109
  46. pulumi_signalfx/text_chart.py +64 -89
  47. pulumi_signalfx/time_chart.py +271 -400
  48. pulumi_signalfx/victorops/integration.py +30 -47
  49. pulumi_signalfx/webhook_integration.py +154 -75
  50. {pulumi_signalfx-7.2.0a1709367777.dist-info → pulumi_signalfx-7.6.0a1736835428.dist-info}/METADATA +7 -6
  51. pulumi_signalfx-7.6.0a1736835428.dist-info/RECORD +65 -0
  52. {pulumi_signalfx-7.2.0a1709367777.dist-info → pulumi_signalfx-7.6.0a1736835428.dist-info}/WHEEL +1 -1
  53. pulumi_signalfx-7.2.0a1709367777.dist-info/RECORD +0 -64
  54. {pulumi_signalfx-7.2.0a1709367777.dist-info → pulumi_signalfx-7.6.0a1736835428.dist-info}/top_level.txt +0 -0
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
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
10
15
  from .. import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -17,6 +22,7 @@ __all__ = ['IntegrationArgs', 'Integration']
17
22
  class IntegrationArgs:
18
23
  def __init__(__self__, *,
19
24
  enabled: pulumi.Input[bool],
25
+ auth_method: Optional[pulumi.Input[str]] = None,
20
26
  custom_metric_type_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
21
27
  import_gcp_metrics: Optional[pulumi.Input[bool]] = None,
22
28
  include_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
@@ -24,26 +30,29 @@ class IntegrationArgs:
24
30
  named_token: Optional[pulumi.Input[str]] = None,
25
31
  poll_rate: Optional[pulumi.Input[int]] = None,
26
32
  project_service_keys: Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]]] = None,
33
+ project_wif_configs: Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectWifConfigArgs']]]] = None,
27
34
  services: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
28
- use_metric_source_project_for_quota: Optional[pulumi.Input[bool]] = None):
35
+ use_metric_source_project_for_quota: Optional[pulumi.Input[bool]] = None,
36
+ wif_splunk_identity: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
29
37
  """
30
38
  The set of arguments for constructing a Integration resource.
31
- :param pulumi.Input[bool] enabled: Whether the integration is enabled or not
32
- :param pulumi.Input[Sequence[pulumi.Input[str]]] custom_metric_type_domains: List of additional GCP service domain names that you want to monitor
33
- :param pulumi.Input[bool] import_gcp_metrics: If enabled, Splunk Observability Cloud will sync also Google Cloud Metrics data. If disabled, Splunk Observability Cloud
34
- will import only metadata. Defaults to true.
35
- :param pulumi.Input[Sequence[pulumi.Input[str]]] include_lists: List of custom metadata keys that you want Observability Cloud to collect for Compute Engine instances.
36
- :param pulumi.Input[str] name: Name of the integration
37
- :param pulumi.Input[str] named_token: A named token to use for ingest
38
- :param pulumi.Input[int] poll_rate: GCP poll rate (in seconds). Between `60` and `600`.
39
- :param pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]] project_service_keys: GCP project service keys
40
- :param pulumi.Input[Sequence[pulumi.Input[str]]] services: GCP enabled services
41
- :param pulumi.Input[bool] use_metric_source_project_for_quota: When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are
42
- stored. For this to work the service account provided for the project needs to be provided with
43
- serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota
44
- settings are used.
39
+ :param pulumi.Input[bool] enabled: Whether the integration is enabled.
40
+ :param pulumi.Input[str] auth_method: Authentication method to use in this integration. If empty, Splunk Observability backend defaults to SERVICE_ACCOUNT_KEY
41
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] custom_metric_type_domains: List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
42
+ :param pulumi.Input[bool] import_gcp_metrics: If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
43
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] include_lists: [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
44
+ :param pulumi.Input[str] name: Name of the integration.
45
+ :param pulumi.Input[str] named_token: Name of the org token to be used for data ingestion. If not specified then default access token is used.
46
+ :param pulumi.Input[int] poll_rate: GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
47
+ :param pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]] project_service_keys: GCP projects to add.
48
+ :param pulumi.Input[Sequence[pulumi.Input['IntegrationProjectWifConfigArgs']]] project_wif_configs: GCP WIF configs
49
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] services: GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
50
+ :param pulumi.Input[bool] use_metric_source_project_for_quota: When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
51
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] wif_splunk_identity: The Splunk Observability GCP identity to include in GCP WIF provider definition.
45
52
  """
46
53
  pulumi.set(__self__, "enabled", enabled)
54
+ if auth_method is not None:
55
+ pulumi.set(__self__, "auth_method", auth_method)
47
56
  if custom_metric_type_domains is not None:
48
57
  pulumi.set(__self__, "custom_metric_type_domains", custom_metric_type_domains)
49
58
  if import_gcp_metrics is not None:
@@ -58,16 +67,20 @@ class IntegrationArgs:
58
67
  pulumi.set(__self__, "poll_rate", poll_rate)
59
68
  if project_service_keys is not None:
60
69
  pulumi.set(__self__, "project_service_keys", project_service_keys)
70
+ if project_wif_configs is not None:
71
+ pulumi.set(__self__, "project_wif_configs", project_wif_configs)
61
72
  if services is not None:
62
73
  pulumi.set(__self__, "services", services)
63
74
  if use_metric_source_project_for_quota is not None:
64
75
  pulumi.set(__self__, "use_metric_source_project_for_quota", use_metric_source_project_for_quota)
76
+ if wif_splunk_identity is not None:
77
+ pulumi.set(__self__, "wif_splunk_identity", wif_splunk_identity)
65
78
 
66
79
  @property
67
80
  @pulumi.getter
68
81
  def enabled(self) -> pulumi.Input[bool]:
69
82
  """
70
- Whether the integration is enabled or not
83
+ Whether the integration is enabled.
71
84
  """
72
85
  return pulumi.get(self, "enabled")
73
86
 
@@ -75,11 +88,23 @@ class IntegrationArgs:
75
88
  def enabled(self, value: pulumi.Input[bool]):
76
89
  pulumi.set(self, "enabled", value)
77
90
 
91
+ @property
92
+ @pulumi.getter(name="authMethod")
93
+ def auth_method(self) -> Optional[pulumi.Input[str]]:
94
+ """
95
+ Authentication method to use in this integration. If empty, Splunk Observability backend defaults to SERVICE_ACCOUNT_KEY
96
+ """
97
+ return pulumi.get(self, "auth_method")
98
+
99
+ @auth_method.setter
100
+ def auth_method(self, value: Optional[pulumi.Input[str]]):
101
+ pulumi.set(self, "auth_method", value)
102
+
78
103
  @property
79
104
  @pulumi.getter(name="customMetricTypeDomains")
80
105
  def custom_metric_type_domains(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
81
106
  """
82
- List of additional GCP service domain names that you want to monitor
107
+ List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
83
108
  """
84
109
  return pulumi.get(self, "custom_metric_type_domains")
85
110
 
@@ -91,8 +116,7 @@ class IntegrationArgs:
91
116
  @pulumi.getter(name="importGcpMetrics")
92
117
  def import_gcp_metrics(self) -> Optional[pulumi.Input[bool]]:
93
118
  """
94
- If enabled, Splunk Observability Cloud will sync also Google Cloud Metrics data. If disabled, Splunk Observability Cloud
95
- will import only metadata. Defaults to true.
119
+ If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
96
120
  """
97
121
  return pulumi.get(self, "import_gcp_metrics")
98
122
 
@@ -104,7 +128,7 @@ class IntegrationArgs:
104
128
  @pulumi.getter(name="includeLists")
105
129
  def include_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
106
130
  """
107
- List of custom metadata keys that you want Observability Cloud to collect for Compute Engine instances.
131
+ [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
108
132
  """
109
133
  return pulumi.get(self, "include_lists")
110
134
 
@@ -116,7 +140,7 @@ class IntegrationArgs:
116
140
  @pulumi.getter
117
141
  def name(self) -> Optional[pulumi.Input[str]]:
118
142
  """
119
- Name of the integration
143
+ Name of the integration.
120
144
  """
121
145
  return pulumi.get(self, "name")
122
146
 
@@ -128,7 +152,7 @@ class IntegrationArgs:
128
152
  @pulumi.getter(name="namedToken")
129
153
  def named_token(self) -> Optional[pulumi.Input[str]]:
130
154
  """
131
- A named token to use for ingest
155
+ Name of the org token to be used for data ingestion. If not specified then default access token is used.
132
156
  """
133
157
  return pulumi.get(self, "named_token")
134
158
 
@@ -140,7 +164,7 @@ class IntegrationArgs:
140
164
  @pulumi.getter(name="pollRate")
141
165
  def poll_rate(self) -> Optional[pulumi.Input[int]]:
142
166
  """
143
- GCP poll rate (in seconds). Between `60` and `600`.
167
+ GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
144
168
  """
145
169
  return pulumi.get(self, "poll_rate")
146
170
 
@@ -152,7 +176,7 @@ class IntegrationArgs:
152
176
  @pulumi.getter(name="projectServiceKeys")
153
177
  def project_service_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]]]:
154
178
  """
155
- GCP project service keys
179
+ GCP projects to add.
156
180
  """
157
181
  return pulumi.get(self, "project_service_keys")
158
182
 
@@ -160,11 +184,23 @@ class IntegrationArgs:
160
184
  def project_service_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]]]):
161
185
  pulumi.set(self, "project_service_keys", value)
162
186
 
187
+ @property
188
+ @pulumi.getter(name="projectWifConfigs")
189
+ def project_wif_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectWifConfigArgs']]]]:
190
+ """
191
+ GCP WIF configs
192
+ """
193
+ return pulumi.get(self, "project_wif_configs")
194
+
195
+ @project_wif_configs.setter
196
+ def project_wif_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectWifConfigArgs']]]]):
197
+ pulumi.set(self, "project_wif_configs", value)
198
+
163
199
  @property
164
200
  @pulumi.getter
165
201
  def services(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
166
202
  """
167
- GCP enabled services
203
+ GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
168
204
  """
169
205
  return pulumi.get(self, "services")
170
206
 
@@ -176,10 +212,7 @@ class IntegrationArgs:
176
212
  @pulumi.getter(name="useMetricSourceProjectForQuota")
177
213
  def use_metric_source_project_for_quota(self) -> Optional[pulumi.Input[bool]]:
178
214
  """
179
- When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are
180
- stored. For this to work the service account provided for the project needs to be provided with
181
- serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota
182
- settings are used.
215
+ When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
183
216
  """
184
217
  return pulumi.get(self, "use_metric_source_project_for_quota")
185
218
 
@@ -187,10 +220,23 @@ class IntegrationArgs:
187
220
  def use_metric_source_project_for_quota(self, value: Optional[pulumi.Input[bool]]):
188
221
  pulumi.set(self, "use_metric_source_project_for_quota", value)
189
222
 
223
+ @property
224
+ @pulumi.getter(name="wifSplunkIdentity")
225
+ def wif_splunk_identity(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
226
+ """
227
+ The Splunk Observability GCP identity to include in GCP WIF provider definition.
228
+ """
229
+ return pulumi.get(self, "wif_splunk_identity")
230
+
231
+ @wif_splunk_identity.setter
232
+ def wif_splunk_identity(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
233
+ pulumi.set(self, "wif_splunk_identity", value)
234
+
190
235
 
191
236
  @pulumi.input_type
192
237
  class _IntegrationState:
193
238
  def __init__(__self__, *,
239
+ auth_method: Optional[pulumi.Input[str]] = None,
194
240
  custom_metric_type_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
195
241
  enabled: Optional[pulumi.Input[bool]] = None,
196
242
  import_gcp_metrics: Optional[pulumi.Input[bool]] = None,
@@ -199,25 +245,28 @@ class _IntegrationState:
199
245
  named_token: Optional[pulumi.Input[str]] = None,
200
246
  poll_rate: Optional[pulumi.Input[int]] = None,
201
247
  project_service_keys: Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]]] = None,
248
+ project_wif_configs: Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectWifConfigArgs']]]] = None,
202
249
  services: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
203
- use_metric_source_project_for_quota: Optional[pulumi.Input[bool]] = None):
250
+ use_metric_source_project_for_quota: Optional[pulumi.Input[bool]] = None,
251
+ wif_splunk_identity: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
204
252
  """
205
253
  Input properties used for looking up and filtering Integration resources.
206
- :param pulumi.Input[Sequence[pulumi.Input[str]]] custom_metric_type_domains: List of additional GCP service domain names that you want to monitor
207
- :param pulumi.Input[bool] enabled: Whether the integration is enabled or not
208
- :param pulumi.Input[bool] import_gcp_metrics: If enabled, Splunk Observability Cloud will sync also Google Cloud Metrics data. If disabled, Splunk Observability Cloud
209
- will import only metadata. Defaults to true.
210
- :param pulumi.Input[Sequence[pulumi.Input[str]]] include_lists: List of custom metadata keys that you want Observability Cloud to collect for Compute Engine instances.
211
- :param pulumi.Input[str] name: Name of the integration
212
- :param pulumi.Input[str] named_token: A named token to use for ingest
213
- :param pulumi.Input[int] poll_rate: GCP poll rate (in seconds). Between `60` and `600`.
214
- :param pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]] project_service_keys: GCP project service keys
215
- :param pulumi.Input[Sequence[pulumi.Input[str]]] services: GCP enabled services
216
- :param pulumi.Input[bool] use_metric_source_project_for_quota: When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are
217
- stored. For this to work the service account provided for the project needs to be provided with
218
- serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota
219
- settings are used.
220
- """
254
+ :param pulumi.Input[str] auth_method: Authentication method to use in this integration. If empty, Splunk Observability backend defaults to SERVICE_ACCOUNT_KEY
255
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] custom_metric_type_domains: List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
256
+ :param pulumi.Input[bool] enabled: Whether the integration is enabled.
257
+ :param pulumi.Input[bool] import_gcp_metrics: If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
258
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] include_lists: [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
259
+ :param pulumi.Input[str] name: Name of the integration.
260
+ :param pulumi.Input[str] named_token: Name of the org token to be used for data ingestion. If not specified then default access token is used.
261
+ :param pulumi.Input[int] poll_rate: GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
262
+ :param pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]] project_service_keys: GCP projects to add.
263
+ :param pulumi.Input[Sequence[pulumi.Input['IntegrationProjectWifConfigArgs']]] project_wif_configs: GCP WIF configs
264
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] services: GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
265
+ :param pulumi.Input[bool] use_metric_source_project_for_quota: When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
266
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] wif_splunk_identity: The Splunk Observability GCP identity to include in GCP WIF provider definition.
267
+ """
268
+ if auth_method is not None:
269
+ pulumi.set(__self__, "auth_method", auth_method)
221
270
  if custom_metric_type_domains is not None:
222
271
  pulumi.set(__self__, "custom_metric_type_domains", custom_metric_type_domains)
223
272
  if enabled is not None:
@@ -234,16 +283,32 @@ class _IntegrationState:
234
283
  pulumi.set(__self__, "poll_rate", poll_rate)
235
284
  if project_service_keys is not None:
236
285
  pulumi.set(__self__, "project_service_keys", project_service_keys)
286
+ if project_wif_configs is not None:
287
+ pulumi.set(__self__, "project_wif_configs", project_wif_configs)
237
288
  if services is not None:
238
289
  pulumi.set(__self__, "services", services)
239
290
  if use_metric_source_project_for_quota is not None:
240
291
  pulumi.set(__self__, "use_metric_source_project_for_quota", use_metric_source_project_for_quota)
292
+ if wif_splunk_identity is not None:
293
+ pulumi.set(__self__, "wif_splunk_identity", wif_splunk_identity)
294
+
295
+ @property
296
+ @pulumi.getter(name="authMethod")
297
+ def auth_method(self) -> Optional[pulumi.Input[str]]:
298
+ """
299
+ Authentication method to use in this integration. If empty, Splunk Observability backend defaults to SERVICE_ACCOUNT_KEY
300
+ """
301
+ return pulumi.get(self, "auth_method")
302
+
303
+ @auth_method.setter
304
+ def auth_method(self, value: Optional[pulumi.Input[str]]):
305
+ pulumi.set(self, "auth_method", value)
241
306
 
242
307
  @property
243
308
  @pulumi.getter(name="customMetricTypeDomains")
244
309
  def custom_metric_type_domains(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
245
310
  """
246
- List of additional GCP service domain names that you want to monitor
311
+ List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
247
312
  """
248
313
  return pulumi.get(self, "custom_metric_type_domains")
249
314
 
@@ -255,7 +320,7 @@ class _IntegrationState:
255
320
  @pulumi.getter
256
321
  def enabled(self) -> Optional[pulumi.Input[bool]]:
257
322
  """
258
- Whether the integration is enabled or not
323
+ Whether the integration is enabled.
259
324
  """
260
325
  return pulumi.get(self, "enabled")
261
326
 
@@ -267,8 +332,7 @@ class _IntegrationState:
267
332
  @pulumi.getter(name="importGcpMetrics")
268
333
  def import_gcp_metrics(self) -> Optional[pulumi.Input[bool]]:
269
334
  """
270
- If enabled, Splunk Observability Cloud will sync also Google Cloud Metrics data. If disabled, Splunk Observability Cloud
271
- will import only metadata. Defaults to true.
335
+ If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
272
336
  """
273
337
  return pulumi.get(self, "import_gcp_metrics")
274
338
 
@@ -280,7 +344,7 @@ class _IntegrationState:
280
344
  @pulumi.getter(name="includeLists")
281
345
  def include_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
282
346
  """
283
- List of custom metadata keys that you want Observability Cloud to collect for Compute Engine instances.
347
+ [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
284
348
  """
285
349
  return pulumi.get(self, "include_lists")
286
350
 
@@ -292,7 +356,7 @@ class _IntegrationState:
292
356
  @pulumi.getter
293
357
  def name(self) -> Optional[pulumi.Input[str]]:
294
358
  """
295
- Name of the integration
359
+ Name of the integration.
296
360
  """
297
361
  return pulumi.get(self, "name")
298
362
 
@@ -304,7 +368,7 @@ class _IntegrationState:
304
368
  @pulumi.getter(name="namedToken")
305
369
  def named_token(self) -> Optional[pulumi.Input[str]]:
306
370
  """
307
- A named token to use for ingest
371
+ Name of the org token to be used for data ingestion. If not specified then default access token is used.
308
372
  """
309
373
  return pulumi.get(self, "named_token")
310
374
 
@@ -316,7 +380,7 @@ class _IntegrationState:
316
380
  @pulumi.getter(name="pollRate")
317
381
  def poll_rate(self) -> Optional[pulumi.Input[int]]:
318
382
  """
319
- GCP poll rate (in seconds). Between `60` and `600`.
383
+ GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
320
384
  """
321
385
  return pulumi.get(self, "poll_rate")
322
386
 
@@ -328,7 +392,7 @@ class _IntegrationState:
328
392
  @pulumi.getter(name="projectServiceKeys")
329
393
  def project_service_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]]]:
330
394
  """
331
- GCP project service keys
395
+ GCP projects to add.
332
396
  """
333
397
  return pulumi.get(self, "project_service_keys")
334
398
 
@@ -336,11 +400,23 @@ class _IntegrationState:
336
400
  def project_service_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectServiceKeyArgs']]]]):
337
401
  pulumi.set(self, "project_service_keys", value)
338
402
 
403
+ @property
404
+ @pulumi.getter(name="projectWifConfigs")
405
+ def project_wif_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectWifConfigArgs']]]]:
406
+ """
407
+ GCP WIF configs
408
+ """
409
+ return pulumi.get(self, "project_wif_configs")
410
+
411
+ @project_wif_configs.setter
412
+ def project_wif_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IntegrationProjectWifConfigArgs']]]]):
413
+ pulumi.set(self, "project_wif_configs", value)
414
+
339
415
  @property
340
416
  @pulumi.getter
341
417
  def services(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
342
418
  """
343
- GCP enabled services
419
+ GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
344
420
  """
345
421
  return pulumi.get(self, "services")
346
422
 
@@ -352,10 +428,7 @@ class _IntegrationState:
352
428
  @pulumi.getter(name="useMetricSourceProjectForQuota")
353
429
  def use_metric_source_project_for_quota(self) -> Optional[pulumi.Input[bool]]:
354
430
  """
355
- When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are
356
- stored. For this to work the service account provided for the project needs to be provided with
357
- serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota
358
- settings are used.
431
+ When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
359
432
  """
360
433
  return pulumi.get(self, "use_metric_source_project_for_quota")
361
434
 
@@ -363,12 +436,25 @@ class _IntegrationState:
363
436
  def use_metric_source_project_for_quota(self, value: Optional[pulumi.Input[bool]]):
364
437
  pulumi.set(self, "use_metric_source_project_for_quota", value)
365
438
 
439
+ @property
440
+ @pulumi.getter(name="wifSplunkIdentity")
441
+ def wif_splunk_identity(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
442
+ """
443
+ The Splunk Observability GCP identity to include in GCP WIF provider definition.
444
+ """
445
+ return pulumi.get(self, "wif_splunk_identity")
446
+
447
+ @wif_splunk_identity.setter
448
+ def wif_splunk_identity(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
449
+ pulumi.set(self, "wif_splunk_identity", value)
450
+
366
451
 
367
452
  class Integration(pulumi.CustomResource):
368
453
  @overload
369
454
  def __init__(__self__,
370
455
  resource_name: str,
371
456
  opts: Optional[pulumi.ResourceOptions] = None,
457
+ auth_method: Optional[pulumi.Input[str]] = None,
372
458
  custom_metric_type_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
373
459
  enabled: Optional[pulumi.Input[bool]] = None,
374
460
  import_gcp_metrics: Optional[pulumi.Input[bool]] = None,
@@ -376,74 +462,32 @@ class Integration(pulumi.CustomResource):
376
462
  name: Optional[pulumi.Input[str]] = None,
377
463
  named_token: Optional[pulumi.Input[str]] = None,
378
464
  poll_rate: Optional[pulumi.Input[int]] = None,
379
- project_service_keys: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IntegrationProjectServiceKeyArgs']]]]] = None,
465
+ project_service_keys: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectServiceKeyArgs', 'IntegrationProjectServiceKeyArgsDict']]]]] = None,
466
+ project_wif_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectWifConfigArgs', 'IntegrationProjectWifConfigArgsDict']]]]] = None,
380
467
  services: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
381
468
  use_metric_source_project_for_quota: Optional[pulumi.Input[bool]] = None,
469
+ wif_splunk_identity: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
382
470
  __props__=None):
383
471
  """
384
472
  Splunk Observability Cloud GCP Integration.
385
473
 
386
474
  > **NOTE** When managing integrations, use a session token of an administrator to authenticate the Splunk Observability Cloud provider. See [Operations that require a session token for an administrator](https://dev.splunk.com/observability/docs/administration/authtokens#Operations-that-require-a-session-token-for-an-administrator). Otherwise you'll receive a 4xx error.
387
475
 
388
- ## Example
389
-
390
- ```python
391
- import pulumi
392
- import pulumi_signalfx as signalfx
393
-
394
- gcp_myteam = signalfx.gcp.Integration("gcpMyteam",
395
- custom_metric_type_domains=["istio.io"],
396
- enabled=True,
397
- import_gcp_metrics=True,
398
- poll_rate=300,
399
- project_service_keys=[
400
- signalfx.gcp.IntegrationProjectServiceKeyArgs(
401
- project_id="gcp_project_id_1",
402
- project_key=(lambda path: open(path).read())("/path/to/gcp_credentials_1.json"),
403
- ),
404
- signalfx.gcp.IntegrationProjectServiceKeyArgs(
405
- project_id="gcp_project_id_2",
406
- project_key=(lambda path: open(path).read())("/path/to/gcp_credentials_2.json"),
407
- ),
408
- ],
409
- services=["compute"])
410
- ```
411
-
412
- ## Arguments
413
-
414
- * `custom_metric_type_domains` - (Optional) List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
415
- * `enabled` - (Required) Whether the integration is enabled.
416
- * `import_gcp_metrics` - (Optional) If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
417
- * `include_list` - (Optional) [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
418
- * `name` - (Required) Name of the integration.
419
- * `named_token` - (Optional) Name of the org token to be used for data ingestion. If not specified then default access token is used.
420
- * `poll_rate` - (Optional) GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
421
- * `project_service_keys` - (Required) GCP projects to add.
422
- * `services` - (Optional) GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
423
- * `use_metric_source_project_for_quota` - (Optional) When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
424
-
425
- ## Attributes
426
-
427
- In addition to all arguments above, the following attributes are exported:
428
-
429
- * `id` - The ID of the integration.
430
-
431
476
  :param str resource_name: The name of the resource.
432
477
  :param pulumi.ResourceOptions opts: Options for the resource.
433
- :param pulumi.Input[Sequence[pulumi.Input[str]]] custom_metric_type_domains: List of additional GCP service domain names that you want to monitor
434
- :param pulumi.Input[bool] enabled: Whether the integration is enabled or not
435
- :param pulumi.Input[bool] import_gcp_metrics: If enabled, Splunk Observability Cloud will sync also Google Cloud Metrics data. If disabled, Splunk Observability Cloud
436
- will import only metadata. Defaults to true.
437
- :param pulumi.Input[Sequence[pulumi.Input[str]]] include_lists: List of custom metadata keys that you want Observability Cloud to collect for Compute Engine instances.
438
- :param pulumi.Input[str] name: Name of the integration
439
- :param pulumi.Input[str] named_token: A named token to use for ingest
440
- :param pulumi.Input[int] poll_rate: GCP poll rate (in seconds). Between `60` and `600`.
441
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IntegrationProjectServiceKeyArgs']]]] project_service_keys: GCP project service keys
442
- :param pulumi.Input[Sequence[pulumi.Input[str]]] services: GCP enabled services
443
- :param pulumi.Input[bool] use_metric_source_project_for_quota: When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are
444
- stored. For this to work the service account provided for the project needs to be provided with
445
- serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota
446
- settings are used.
478
+ :param pulumi.Input[str] auth_method: Authentication method to use in this integration. If empty, Splunk Observability backend defaults to SERVICE_ACCOUNT_KEY
479
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] custom_metric_type_domains: List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
480
+ :param pulumi.Input[bool] enabled: Whether the integration is enabled.
481
+ :param pulumi.Input[bool] import_gcp_metrics: If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
482
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] include_lists: [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
483
+ :param pulumi.Input[str] name: Name of the integration.
484
+ :param pulumi.Input[str] named_token: Name of the org token to be used for data ingestion. If not specified then default access token is used.
485
+ :param pulumi.Input[int] poll_rate: GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
486
+ :param pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectServiceKeyArgs', 'IntegrationProjectServiceKeyArgsDict']]]] project_service_keys: GCP projects to add.
487
+ :param pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectWifConfigArgs', 'IntegrationProjectWifConfigArgsDict']]]] project_wif_configs: GCP WIF configs
488
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] services: GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
489
+ :param pulumi.Input[bool] use_metric_source_project_for_quota: When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
490
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] wif_splunk_identity: The Splunk Observability GCP identity to include in GCP WIF provider definition.
447
491
  """
448
492
  ...
449
493
  @overload
@@ -456,49 +500,6 @@ class Integration(pulumi.CustomResource):
456
500
 
457
501
  > **NOTE** When managing integrations, use a session token of an administrator to authenticate the Splunk Observability Cloud provider. See [Operations that require a session token for an administrator](https://dev.splunk.com/observability/docs/administration/authtokens#Operations-that-require-a-session-token-for-an-administrator). Otherwise you'll receive a 4xx error.
458
502
 
459
- ## Example
460
-
461
- ```python
462
- import pulumi
463
- import pulumi_signalfx as signalfx
464
-
465
- gcp_myteam = signalfx.gcp.Integration("gcpMyteam",
466
- custom_metric_type_domains=["istio.io"],
467
- enabled=True,
468
- import_gcp_metrics=True,
469
- poll_rate=300,
470
- project_service_keys=[
471
- signalfx.gcp.IntegrationProjectServiceKeyArgs(
472
- project_id="gcp_project_id_1",
473
- project_key=(lambda path: open(path).read())("/path/to/gcp_credentials_1.json"),
474
- ),
475
- signalfx.gcp.IntegrationProjectServiceKeyArgs(
476
- project_id="gcp_project_id_2",
477
- project_key=(lambda path: open(path).read())("/path/to/gcp_credentials_2.json"),
478
- ),
479
- ],
480
- services=["compute"])
481
- ```
482
-
483
- ## Arguments
484
-
485
- * `custom_metric_type_domains` - (Optional) List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
486
- * `enabled` - (Required) Whether the integration is enabled.
487
- * `import_gcp_metrics` - (Optional) If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
488
- * `include_list` - (Optional) [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
489
- * `name` - (Required) Name of the integration.
490
- * `named_token` - (Optional) Name of the org token to be used for data ingestion. If not specified then default access token is used.
491
- * `poll_rate` - (Optional) GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
492
- * `project_service_keys` - (Required) GCP projects to add.
493
- * `services` - (Optional) GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
494
- * `use_metric_source_project_for_quota` - (Optional) When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
495
-
496
- ## Attributes
497
-
498
- In addition to all arguments above, the following attributes are exported:
499
-
500
- * `id` - The ID of the integration.
501
-
502
503
  :param str resource_name: The name of the resource.
503
504
  :param IntegrationArgs args: The arguments to use to populate this resource's properties.
504
505
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -514,6 +515,7 @@ class Integration(pulumi.CustomResource):
514
515
  def _internal_init(__self__,
515
516
  resource_name: str,
516
517
  opts: Optional[pulumi.ResourceOptions] = None,
518
+ auth_method: Optional[pulumi.Input[str]] = None,
517
519
  custom_metric_type_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
518
520
  enabled: Optional[pulumi.Input[bool]] = None,
519
521
  import_gcp_metrics: Optional[pulumi.Input[bool]] = None,
@@ -521,9 +523,11 @@ class Integration(pulumi.CustomResource):
521
523
  name: Optional[pulumi.Input[str]] = None,
522
524
  named_token: Optional[pulumi.Input[str]] = None,
523
525
  poll_rate: Optional[pulumi.Input[int]] = None,
524
- project_service_keys: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IntegrationProjectServiceKeyArgs']]]]] = None,
526
+ project_service_keys: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectServiceKeyArgs', 'IntegrationProjectServiceKeyArgsDict']]]]] = None,
527
+ project_wif_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectWifConfigArgs', 'IntegrationProjectWifConfigArgsDict']]]]] = None,
525
528
  services: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
526
529
  use_metric_source_project_for_quota: Optional[pulumi.Input[bool]] = None,
530
+ wif_splunk_identity: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
527
531
  __props__=None):
528
532
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
529
533
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -533,6 +537,7 @@ class Integration(pulumi.CustomResource):
533
537
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
534
538
  __props__ = IntegrationArgs.__new__(IntegrationArgs)
535
539
 
540
+ __props__.__dict__["auth_method"] = auth_method
536
541
  __props__.__dict__["custom_metric_type_domains"] = custom_metric_type_domains
537
542
  if enabled is None and not opts.urn:
538
543
  raise TypeError("Missing required property 'enabled'")
@@ -543,9 +548,11 @@ class Integration(pulumi.CustomResource):
543
548
  __props__.__dict__["named_token"] = named_token
544
549
  __props__.__dict__["poll_rate"] = poll_rate
545
550
  __props__.__dict__["project_service_keys"] = None if project_service_keys is None else pulumi.Output.secret(project_service_keys)
551
+ __props__.__dict__["project_wif_configs"] = None if project_wif_configs is None else pulumi.Output.secret(project_wif_configs)
546
552
  __props__.__dict__["services"] = services
547
553
  __props__.__dict__["use_metric_source_project_for_quota"] = use_metric_source_project_for_quota
548
- secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["projectServiceKeys"])
554
+ __props__.__dict__["wif_splunk_identity"] = wif_splunk_identity
555
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["projectServiceKeys", "projectWifConfigs"])
549
556
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
550
557
  super(Integration, __self__).__init__(
551
558
  'signalfx:gcp/integration:Integration',
@@ -557,6 +564,7 @@ class Integration(pulumi.CustomResource):
557
564
  def get(resource_name: str,
558
565
  id: pulumi.Input[str],
559
566
  opts: Optional[pulumi.ResourceOptions] = None,
567
+ auth_method: Optional[pulumi.Input[str]] = None,
560
568
  custom_metric_type_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
561
569
  enabled: Optional[pulumi.Input[bool]] = None,
562
570
  import_gcp_metrics: Optional[pulumi.Input[bool]] = None,
@@ -564,9 +572,11 @@ class Integration(pulumi.CustomResource):
564
572
  name: Optional[pulumi.Input[str]] = None,
565
573
  named_token: Optional[pulumi.Input[str]] = None,
566
574
  poll_rate: Optional[pulumi.Input[int]] = None,
567
- project_service_keys: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IntegrationProjectServiceKeyArgs']]]]] = None,
575
+ project_service_keys: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectServiceKeyArgs', 'IntegrationProjectServiceKeyArgsDict']]]]] = None,
576
+ project_wif_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectWifConfigArgs', 'IntegrationProjectWifConfigArgsDict']]]]] = None,
568
577
  services: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
569
- use_metric_source_project_for_quota: Optional[pulumi.Input[bool]] = None) -> 'Integration':
578
+ use_metric_source_project_for_quota: Optional[pulumi.Input[bool]] = None,
579
+ wif_splunk_identity: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None) -> 'Integration':
570
580
  """
571
581
  Get an existing Integration resource's state with the given name, id, and optional extra
572
582
  properties used to qualify the lookup.
@@ -574,25 +584,25 @@ class Integration(pulumi.CustomResource):
574
584
  :param str resource_name: The unique name of the resulting resource.
575
585
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
576
586
  :param pulumi.ResourceOptions opts: Options for the resource.
577
- :param pulumi.Input[Sequence[pulumi.Input[str]]] custom_metric_type_domains: List of additional GCP service domain names that you want to monitor
578
- :param pulumi.Input[bool] enabled: Whether the integration is enabled or not
579
- :param pulumi.Input[bool] import_gcp_metrics: If enabled, Splunk Observability Cloud will sync also Google Cloud Metrics data. If disabled, Splunk Observability Cloud
580
- will import only metadata. Defaults to true.
581
- :param pulumi.Input[Sequence[pulumi.Input[str]]] include_lists: List of custom metadata keys that you want Observability Cloud to collect for Compute Engine instances.
582
- :param pulumi.Input[str] name: Name of the integration
583
- :param pulumi.Input[str] named_token: A named token to use for ingest
584
- :param pulumi.Input[int] poll_rate: GCP poll rate (in seconds). Between `60` and `600`.
585
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IntegrationProjectServiceKeyArgs']]]] project_service_keys: GCP project service keys
586
- :param pulumi.Input[Sequence[pulumi.Input[str]]] services: GCP enabled services
587
- :param pulumi.Input[bool] use_metric_source_project_for_quota: When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are
588
- stored. For this to work the service account provided for the project needs to be provided with
589
- serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota
590
- settings are used.
587
+ :param pulumi.Input[str] auth_method: Authentication method to use in this integration. If empty, Splunk Observability backend defaults to SERVICE_ACCOUNT_KEY
588
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] custom_metric_type_domains: List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
589
+ :param pulumi.Input[bool] enabled: Whether the integration is enabled.
590
+ :param pulumi.Input[bool] import_gcp_metrics: If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
591
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] include_lists: [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
592
+ :param pulumi.Input[str] name: Name of the integration.
593
+ :param pulumi.Input[str] named_token: Name of the org token to be used for data ingestion. If not specified then default access token is used.
594
+ :param pulumi.Input[int] poll_rate: GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
595
+ :param pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectServiceKeyArgs', 'IntegrationProjectServiceKeyArgsDict']]]] project_service_keys: GCP projects to add.
596
+ :param pulumi.Input[Sequence[pulumi.Input[Union['IntegrationProjectWifConfigArgs', 'IntegrationProjectWifConfigArgsDict']]]] project_wif_configs: GCP WIF configs
597
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] services: GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
598
+ :param pulumi.Input[bool] use_metric_source_project_for_quota: When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
599
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] wif_splunk_identity: The Splunk Observability GCP identity to include in GCP WIF provider definition.
591
600
  """
592
601
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
593
602
 
594
603
  __props__ = _IntegrationState.__new__(_IntegrationState)
595
604
 
605
+ __props__.__dict__["auth_method"] = auth_method
596
606
  __props__.__dict__["custom_metric_type_domains"] = custom_metric_type_domains
597
607
  __props__.__dict__["enabled"] = enabled
598
608
  __props__.__dict__["import_gcp_metrics"] = import_gcp_metrics
@@ -601,15 +611,25 @@ class Integration(pulumi.CustomResource):
601
611
  __props__.__dict__["named_token"] = named_token
602
612
  __props__.__dict__["poll_rate"] = poll_rate
603
613
  __props__.__dict__["project_service_keys"] = project_service_keys
614
+ __props__.__dict__["project_wif_configs"] = project_wif_configs
604
615
  __props__.__dict__["services"] = services
605
616
  __props__.__dict__["use_metric_source_project_for_quota"] = use_metric_source_project_for_quota
617
+ __props__.__dict__["wif_splunk_identity"] = wif_splunk_identity
606
618
  return Integration(resource_name, opts=opts, __props__=__props__)
607
619
 
620
+ @property
621
+ @pulumi.getter(name="authMethod")
622
+ def auth_method(self) -> pulumi.Output[Optional[str]]:
623
+ """
624
+ Authentication method to use in this integration. If empty, Splunk Observability backend defaults to SERVICE_ACCOUNT_KEY
625
+ """
626
+ return pulumi.get(self, "auth_method")
627
+
608
628
  @property
609
629
  @pulumi.getter(name="customMetricTypeDomains")
610
630
  def custom_metric_type_domains(self) -> pulumi.Output[Optional[Sequence[str]]]:
611
631
  """
612
- List of additional GCP service domain names that you want to monitor
632
+ List of additional GCP service domain names that Splunk Observability Cloud will monitor. See [Custom Metric Type Domains documentation](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/#Custom-metric-type-domains)
613
633
  """
614
634
  return pulumi.get(self, "custom_metric_type_domains")
615
635
 
@@ -617,7 +637,7 @@ class Integration(pulumi.CustomResource):
617
637
  @pulumi.getter
618
638
  def enabled(self) -> pulumi.Output[bool]:
619
639
  """
620
- Whether the integration is enabled or not
640
+ Whether the integration is enabled.
621
641
  """
622
642
  return pulumi.get(self, "enabled")
623
643
 
@@ -625,8 +645,7 @@ class Integration(pulumi.CustomResource):
625
645
  @pulumi.getter(name="importGcpMetrics")
626
646
  def import_gcp_metrics(self) -> pulumi.Output[Optional[bool]]:
627
647
  """
628
- If enabled, Splunk Observability Cloud will sync also Google Cloud Metrics data. If disabled, Splunk Observability Cloud
629
- will import only metadata. Defaults to true.
648
+ If enabled, Splunk Observability Cloud will sync also Google Cloud Monitoring data. If disabled, Splunk Observability Cloud will import only metadata. Defaults to true.
630
649
  """
631
650
  return pulumi.get(self, "import_gcp_metrics")
632
651
 
@@ -634,7 +653,7 @@ class Integration(pulumi.CustomResource):
634
653
  @pulumi.getter(name="includeLists")
635
654
  def include_lists(self) -> pulumi.Output[Optional[Sequence[str]]]:
636
655
  """
637
- List of custom metadata keys that you want Observability Cloud to collect for Compute Engine instances.
656
+ [Compute Metadata Include List](https://dev.splunk.com/observability/docs/integrations/gcp_integration_overview/).
638
657
  """
639
658
  return pulumi.get(self, "include_lists")
640
659
 
@@ -642,7 +661,7 @@ class Integration(pulumi.CustomResource):
642
661
  @pulumi.getter
643
662
  def name(self) -> pulumi.Output[str]:
644
663
  """
645
- Name of the integration
664
+ Name of the integration.
646
665
  """
647
666
  return pulumi.get(self, "name")
648
667
 
@@ -650,7 +669,7 @@ class Integration(pulumi.CustomResource):
650
669
  @pulumi.getter(name="namedToken")
651
670
  def named_token(self) -> pulumi.Output[Optional[str]]:
652
671
  """
653
- A named token to use for ingest
672
+ Name of the org token to be used for data ingestion. If not specified then default access token is used.
654
673
  """
655
674
  return pulumi.get(self, "named_token")
656
675
 
@@ -658,7 +677,7 @@ class Integration(pulumi.CustomResource):
658
677
  @pulumi.getter(name="pollRate")
659
678
  def poll_rate(self) -> pulumi.Output[Optional[int]]:
660
679
  """
661
- GCP poll rate (in seconds). Between `60` and `600`.
680
+ GCP integration poll rate (in seconds). Value between `60` and `600`. Default: `300`.
662
681
  """
663
682
  return pulumi.get(self, "poll_rate")
664
683
 
@@ -666,15 +685,23 @@ class Integration(pulumi.CustomResource):
666
685
  @pulumi.getter(name="projectServiceKeys")
667
686
  def project_service_keys(self) -> pulumi.Output[Optional[Sequence['outputs.IntegrationProjectServiceKey']]]:
668
687
  """
669
- GCP project service keys
688
+ GCP projects to add.
670
689
  """
671
690
  return pulumi.get(self, "project_service_keys")
672
691
 
692
+ @property
693
+ @pulumi.getter(name="projectWifConfigs")
694
+ def project_wif_configs(self) -> pulumi.Output[Optional[Sequence['outputs.IntegrationProjectWifConfig']]]:
695
+ """
696
+ GCP WIF configs
697
+ """
698
+ return pulumi.get(self, "project_wif_configs")
699
+
673
700
  @property
674
701
  @pulumi.getter
675
702
  def services(self) -> pulumi.Output[Optional[Sequence[str]]]:
676
703
  """
677
- GCP enabled services
704
+ GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See [Google Cloud Platform services](https://docs.splunk.com/Observability/gdi/get-data-in/integrations.html#google-cloud-platform-services) for a list of valid values.
678
705
  """
679
706
  return pulumi.get(self, "services")
680
707
 
@@ -682,10 +709,15 @@ class Integration(pulumi.CustomResource):
682
709
  @pulumi.getter(name="useMetricSourceProjectForQuota")
683
710
  def use_metric_source_project_for_quota(self) -> pulumi.Output[Optional[bool]]:
684
711
  """
685
- When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are
686
- stored. For this to work the service account provided for the project needs to be provided with
687
- serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota
688
- settings are used.
712
+ When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
689
713
  """
690
714
  return pulumi.get(self, "use_metric_source_project_for_quota")
691
715
 
716
+ @property
717
+ @pulumi.getter(name="wifSplunkIdentity")
718
+ def wif_splunk_identity(self) -> pulumi.Output[Mapping[str, str]]:
719
+ """
720
+ The Splunk Observability GCP identity to include in GCP WIF provider definition.
721
+ """
722
+ return pulumi.get(self, "wif_splunk_identity")
723
+