pulumi-gcp 7.5.0a1704283083__py3-none-any.whl → 7.6.0__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- pulumi_gcp/__init__.py +99 -0
- pulumi_gcp/bigqueryanalyticshub/_inputs.py +40 -0
- pulumi_gcp/bigqueryanalyticshub/listing.py +117 -3
- pulumi_gcp/bigqueryanalyticshub/outputs.py +49 -0
- pulumi_gcp/clouddeploy/__init__.py +1 -0
- pulumi_gcp/clouddeploy/_inputs.py +239 -0
- pulumi_gcp/clouddeploy/automation.py +1103 -0
- pulumi_gcp/clouddeploy/outputs.py +246 -0
- pulumi_gcp/clouddomains/__init__.py +10 -0
- pulumi_gcp/clouddomains/_inputs.py +1098 -0
- pulumi_gcp/clouddomains/outputs.py +1156 -0
- pulumi_gcp/clouddomains/registration.py +1068 -0
- pulumi_gcp/cloudrunv2/job.py +4 -4
- pulumi_gcp/composer/_inputs.py +79 -1
- pulumi_gcp/composer/outputs.py +131 -4
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +180 -0
- pulumi_gcp/compute/get_instance_template.py +11 -1
- pulumi_gcp/compute/get_region_instance_template.py +11 -1
- pulumi_gcp/compute/get_reservation.py +212 -0
- pulumi_gcp/compute/instance_template.py +47 -0
- pulumi_gcp/compute/network_firewall_policy.py +20 -22
- pulumi_gcp/compute/outputs.py +325 -0
- pulumi_gcp/compute/region_instance_template.py +47 -0
- pulumi_gcp/compute/region_network_firewall_policy.py +31 -35
- pulumi_gcp/compute/router_peer.py +54 -0
- pulumi_gcp/compute/vpn_tunnel.py +8 -4
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +23 -0
- pulumi_gcp/container/aws_node_pool.py +7 -7
- pulumi_gcp/container/cluster.py +68 -14
- pulumi_gcp/container/get_cluster.py +11 -1
- pulumi_gcp/container/outputs.py +49 -0
- pulumi_gcp/dataflow/pipeline.py +1 -1
- pulumi_gcp/dataproc/_inputs.py +413 -39
- pulumi_gcp/dataproc/metastore_service.py +63 -0
- pulumi_gcp/dataproc/outputs.py +461 -39
- pulumi_gcp/dns/__init__.py +1 -0
- pulumi_gcp/dns/_inputs.py +94 -0
- pulumi_gcp/dns/get_managed_zones.py +89 -0
- pulumi_gcp/dns/outputs.py +62 -0
- pulumi_gcp/edgecontainer/vpn_connection.py +10 -10
- pulumi_gcp/filestore/__init__.py +1 -0
- pulumi_gcp/filestore/get_instance.py +258 -0
- pulumi_gcp/filestore/instance.py +7 -7
- pulumi_gcp/filestore/outputs.py +126 -0
- pulumi_gcp/gkebackup/backup_plan.py +24 -8
- pulumi_gcp/gkebackup/restore_plan.py +36 -12
- pulumi_gcp/gkebackup/restore_plan_iam_binding.py +36 -12
- pulumi_gcp/gkebackup/restore_plan_iam_member.py +36 -12
- pulumi_gcp/gkebackup/restore_plan_iam_policy.py +36 -12
- pulumi_gcp/gkehub/_inputs.py +502 -2
- pulumi_gcp/gkehub/feature.py +34 -0
- pulumi_gcp/gkehub/feature_membership.py +177 -0
- pulumi_gcp/gkehub/membership.py +18 -6
- pulumi_gcp/gkehub/outputs.py +502 -2
- pulumi_gcp/gkeonprem/_inputs.py +21 -25
- pulumi_gcp/gkeonprem/outputs.py +34 -25
- pulumi_gcp/gkeonprem/v_mware_node_pool.py +34 -0
- pulumi_gcp/integrationconnectors/__init__.py +1 -0
- pulumi_gcp/integrationconnectors/endpoint_attachment.py +669 -0
- pulumi_gcp/kms/_inputs.py +42 -0
- pulumi_gcp/kms/crypto_key.py +36 -0
- pulumi_gcp/kms/get_kms_crypto_key.py +11 -1
- pulumi_gcp/kms/outputs.py +62 -0
- pulumi_gcp/logging/__init__.py +2 -0
- pulumi_gcp/logging/folder_settings.py +490 -0
- pulumi_gcp/logging/folder_sink.py +21 -21
- pulumi_gcp/logging/organization_settings.py +484 -0
- pulumi_gcp/logging/organization_sink.py +21 -21
- pulumi_gcp/logging/project_sink.py +7 -14
- pulumi_gcp/netapp/__init__.py +3 -0
- pulumi_gcp/netapp/active_directory.py +1413 -0
- pulumi_gcp/netapp/backup_vault.py +593 -0
- pulumi_gcp/netapp/kmsconfig.py +649 -0
- pulumi_gcp/orgpolicy/policy.py +28 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/subscription.py +29 -37
- pulumi_gcp/serviceaccount/account.py +47 -0
- pulumi_gcp/servicenetworking/connection.py +55 -1
- pulumi_gcp/sql/database_instance.py +2 -2
- pulumi_gcp/sql/ssl_cert.py +1 -1
- pulumi_gcp/sql/user.py +7 -7
- pulumi_gcp/storage/transfer_job.py +24 -5
- pulumi_gcp/vertex/__init__.py +3 -0
- pulumi_gcp/vertex/_inputs.py +339 -0
- pulumi_gcp/vertex/ai_feature_group.py +710 -0
- pulumi_gcp/vertex/ai_feature_online_store.py +962 -0
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +804 -0
- pulumi_gcp/vertex/outputs.py +406 -0
- pulumi_gcp/vmwareengine/__init__.py +2 -0
- pulumi_gcp/vmwareengine/_inputs.py +84 -0
- pulumi_gcp/vmwareengine/external_access_rule.py +947 -0
- pulumi_gcp/vmwareengine/get_external_access_rule.py +245 -0
- pulumi_gcp/vmwareengine/outputs.py +146 -0
- pulumi_gcp/workflows/workflow.py +7 -7
- {pulumi_gcp-7.5.0a1704283083.dist-info → pulumi_gcp-7.6.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.5.0a1704283083.dist-info → pulumi_gcp-7.6.0.dist-info}/RECORD +101 -82
- {pulumi_gcp-7.5.0a1704283083.dist-info → pulumi_gcp-7.6.0.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.5.0a1704283083.dist-info → pulumi_gcp-7.6.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,490 @@
|
|
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__ = ['FolderSettingsArgs', 'FolderSettings']
|
13
|
+
|
14
|
+
@pulumi.input_type
|
15
|
+
class FolderSettingsArgs:
|
16
|
+
def __init__(__self__, *,
|
17
|
+
folder: pulumi.Input[str],
|
18
|
+
disable_default_sink: Optional[pulumi.Input[bool]] = None,
|
19
|
+
kms_key_name: Optional[pulumi.Input[str]] = None,
|
20
|
+
storage_location: Optional[pulumi.Input[str]] = None):
|
21
|
+
"""
|
22
|
+
The set of arguments for constructing a FolderSettings resource.
|
23
|
+
:param pulumi.Input[str] folder: The folder for which to retrieve settings.
|
24
|
+
|
25
|
+
|
26
|
+
- - -
|
27
|
+
:param pulumi.Input[bool] disable_default_sink: If set to true, the _Default sink in newly created projects and folders will created in a disabled state. This can be used to automatically disable log storage if there is already an aggregated sink configured in the hierarchy. The _Default sink can be re-enabled manually if needed.
|
28
|
+
:param pulumi.Input[str] kms_key_name: The resource name for the configured Cloud KMS key.
|
29
|
+
:param pulumi.Input[str] storage_location: The storage location that Cloud Logging will use to create new resources when a location is needed but not explicitly provided.
|
30
|
+
"""
|
31
|
+
pulumi.set(__self__, "folder", folder)
|
32
|
+
if disable_default_sink is not None:
|
33
|
+
pulumi.set(__self__, "disable_default_sink", disable_default_sink)
|
34
|
+
if kms_key_name is not None:
|
35
|
+
pulumi.set(__self__, "kms_key_name", kms_key_name)
|
36
|
+
if storage_location is not None:
|
37
|
+
pulumi.set(__self__, "storage_location", storage_location)
|
38
|
+
|
39
|
+
@property
|
40
|
+
@pulumi.getter
|
41
|
+
def folder(self) -> pulumi.Input[str]:
|
42
|
+
"""
|
43
|
+
The folder for which to retrieve settings.
|
44
|
+
|
45
|
+
|
46
|
+
- - -
|
47
|
+
"""
|
48
|
+
return pulumi.get(self, "folder")
|
49
|
+
|
50
|
+
@folder.setter
|
51
|
+
def folder(self, value: pulumi.Input[str]):
|
52
|
+
pulumi.set(self, "folder", value)
|
53
|
+
|
54
|
+
@property
|
55
|
+
@pulumi.getter(name="disableDefaultSink")
|
56
|
+
def disable_default_sink(self) -> Optional[pulumi.Input[bool]]:
|
57
|
+
"""
|
58
|
+
If set to true, the _Default sink in newly created projects and folders will created in a disabled state. This can be used to automatically disable log storage if there is already an aggregated sink configured in the hierarchy. The _Default sink can be re-enabled manually if needed.
|
59
|
+
"""
|
60
|
+
return pulumi.get(self, "disable_default_sink")
|
61
|
+
|
62
|
+
@disable_default_sink.setter
|
63
|
+
def disable_default_sink(self, value: Optional[pulumi.Input[bool]]):
|
64
|
+
pulumi.set(self, "disable_default_sink", value)
|
65
|
+
|
66
|
+
@property
|
67
|
+
@pulumi.getter(name="kmsKeyName")
|
68
|
+
def kms_key_name(self) -> Optional[pulumi.Input[str]]:
|
69
|
+
"""
|
70
|
+
The resource name for the configured Cloud KMS key.
|
71
|
+
"""
|
72
|
+
return pulumi.get(self, "kms_key_name")
|
73
|
+
|
74
|
+
@kms_key_name.setter
|
75
|
+
def kms_key_name(self, value: Optional[pulumi.Input[str]]):
|
76
|
+
pulumi.set(self, "kms_key_name", value)
|
77
|
+
|
78
|
+
@property
|
79
|
+
@pulumi.getter(name="storageLocation")
|
80
|
+
def storage_location(self) -> Optional[pulumi.Input[str]]:
|
81
|
+
"""
|
82
|
+
The storage location that Cloud Logging will use to create new resources when a location is needed but not explicitly provided.
|
83
|
+
"""
|
84
|
+
return pulumi.get(self, "storage_location")
|
85
|
+
|
86
|
+
@storage_location.setter
|
87
|
+
def storage_location(self, value: Optional[pulumi.Input[str]]):
|
88
|
+
pulumi.set(self, "storage_location", value)
|
89
|
+
|
90
|
+
|
91
|
+
@pulumi.input_type
|
92
|
+
class _FolderSettingsState:
|
93
|
+
def __init__(__self__, *,
|
94
|
+
disable_default_sink: Optional[pulumi.Input[bool]] = None,
|
95
|
+
folder: Optional[pulumi.Input[str]] = None,
|
96
|
+
kms_key_name: Optional[pulumi.Input[str]] = None,
|
97
|
+
kms_service_account_id: Optional[pulumi.Input[str]] = None,
|
98
|
+
logging_service_account_id: Optional[pulumi.Input[str]] = None,
|
99
|
+
name: Optional[pulumi.Input[str]] = None,
|
100
|
+
storage_location: Optional[pulumi.Input[str]] = None):
|
101
|
+
"""
|
102
|
+
Input properties used for looking up and filtering FolderSettings resources.
|
103
|
+
:param pulumi.Input[bool] disable_default_sink: If set to true, the _Default sink in newly created projects and folders will created in a disabled state. This can be used to automatically disable log storage if there is already an aggregated sink configured in the hierarchy. The _Default sink can be re-enabled manually if needed.
|
104
|
+
:param pulumi.Input[str] folder: The folder for which to retrieve settings.
|
105
|
+
|
106
|
+
|
107
|
+
- - -
|
108
|
+
:param pulumi.Input[str] kms_key_name: The resource name for the configured Cloud KMS key.
|
109
|
+
:param pulumi.Input[str] kms_service_account_id: The service account that will be used by the Log Router to access your Cloud KMS key.
|
110
|
+
:param pulumi.Input[str] logging_service_account_id: The service account for the given container. Sinks use this service account as their writerIdentity if no custom service account is provided.
|
111
|
+
:param pulumi.Input[str] name: The resource name of the settings.
|
112
|
+
:param pulumi.Input[str] storage_location: The storage location that Cloud Logging will use to create new resources when a location is needed but not explicitly provided.
|
113
|
+
"""
|
114
|
+
if disable_default_sink is not None:
|
115
|
+
pulumi.set(__self__, "disable_default_sink", disable_default_sink)
|
116
|
+
if folder is not None:
|
117
|
+
pulumi.set(__self__, "folder", folder)
|
118
|
+
if kms_key_name is not None:
|
119
|
+
pulumi.set(__self__, "kms_key_name", kms_key_name)
|
120
|
+
if kms_service_account_id is not None:
|
121
|
+
pulumi.set(__self__, "kms_service_account_id", kms_service_account_id)
|
122
|
+
if logging_service_account_id is not None:
|
123
|
+
pulumi.set(__self__, "logging_service_account_id", logging_service_account_id)
|
124
|
+
if name is not None:
|
125
|
+
pulumi.set(__self__, "name", name)
|
126
|
+
if storage_location is not None:
|
127
|
+
pulumi.set(__self__, "storage_location", storage_location)
|
128
|
+
|
129
|
+
@property
|
130
|
+
@pulumi.getter(name="disableDefaultSink")
|
131
|
+
def disable_default_sink(self) -> Optional[pulumi.Input[bool]]:
|
132
|
+
"""
|
133
|
+
If set to true, the _Default sink in newly created projects and folders will created in a disabled state. This can be used to automatically disable log storage if there is already an aggregated sink configured in the hierarchy. The _Default sink can be re-enabled manually if needed.
|
134
|
+
"""
|
135
|
+
return pulumi.get(self, "disable_default_sink")
|
136
|
+
|
137
|
+
@disable_default_sink.setter
|
138
|
+
def disable_default_sink(self, value: Optional[pulumi.Input[bool]]):
|
139
|
+
pulumi.set(self, "disable_default_sink", value)
|
140
|
+
|
141
|
+
@property
|
142
|
+
@pulumi.getter
|
143
|
+
def folder(self) -> Optional[pulumi.Input[str]]:
|
144
|
+
"""
|
145
|
+
The folder for which to retrieve settings.
|
146
|
+
|
147
|
+
|
148
|
+
- - -
|
149
|
+
"""
|
150
|
+
return pulumi.get(self, "folder")
|
151
|
+
|
152
|
+
@folder.setter
|
153
|
+
def folder(self, value: Optional[pulumi.Input[str]]):
|
154
|
+
pulumi.set(self, "folder", value)
|
155
|
+
|
156
|
+
@property
|
157
|
+
@pulumi.getter(name="kmsKeyName")
|
158
|
+
def kms_key_name(self) -> Optional[pulumi.Input[str]]:
|
159
|
+
"""
|
160
|
+
The resource name for the configured Cloud KMS key.
|
161
|
+
"""
|
162
|
+
return pulumi.get(self, "kms_key_name")
|
163
|
+
|
164
|
+
@kms_key_name.setter
|
165
|
+
def kms_key_name(self, value: Optional[pulumi.Input[str]]):
|
166
|
+
pulumi.set(self, "kms_key_name", value)
|
167
|
+
|
168
|
+
@property
|
169
|
+
@pulumi.getter(name="kmsServiceAccountId")
|
170
|
+
def kms_service_account_id(self) -> Optional[pulumi.Input[str]]:
|
171
|
+
"""
|
172
|
+
The service account that will be used by the Log Router to access your Cloud KMS key.
|
173
|
+
"""
|
174
|
+
return pulumi.get(self, "kms_service_account_id")
|
175
|
+
|
176
|
+
@kms_service_account_id.setter
|
177
|
+
def kms_service_account_id(self, value: Optional[pulumi.Input[str]]):
|
178
|
+
pulumi.set(self, "kms_service_account_id", value)
|
179
|
+
|
180
|
+
@property
|
181
|
+
@pulumi.getter(name="loggingServiceAccountId")
|
182
|
+
def logging_service_account_id(self) -> Optional[pulumi.Input[str]]:
|
183
|
+
"""
|
184
|
+
The service account for the given container. Sinks use this service account as their writerIdentity if no custom service account is provided.
|
185
|
+
"""
|
186
|
+
return pulumi.get(self, "logging_service_account_id")
|
187
|
+
|
188
|
+
@logging_service_account_id.setter
|
189
|
+
def logging_service_account_id(self, value: Optional[pulumi.Input[str]]):
|
190
|
+
pulumi.set(self, "logging_service_account_id", value)
|
191
|
+
|
192
|
+
@property
|
193
|
+
@pulumi.getter
|
194
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
195
|
+
"""
|
196
|
+
The resource name of the settings.
|
197
|
+
"""
|
198
|
+
return pulumi.get(self, "name")
|
199
|
+
|
200
|
+
@name.setter
|
201
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
202
|
+
pulumi.set(self, "name", value)
|
203
|
+
|
204
|
+
@property
|
205
|
+
@pulumi.getter(name="storageLocation")
|
206
|
+
def storage_location(self) -> Optional[pulumi.Input[str]]:
|
207
|
+
"""
|
208
|
+
The storage location that Cloud Logging will use to create new resources when a location is needed but not explicitly provided.
|
209
|
+
"""
|
210
|
+
return pulumi.get(self, "storage_location")
|
211
|
+
|
212
|
+
@storage_location.setter
|
213
|
+
def storage_location(self, value: Optional[pulumi.Input[str]]):
|
214
|
+
pulumi.set(self, "storage_location", value)
|
215
|
+
|
216
|
+
|
217
|
+
class FolderSettings(pulumi.CustomResource):
|
218
|
+
@overload
|
219
|
+
def __init__(__self__,
|
220
|
+
resource_name: str,
|
221
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
222
|
+
disable_default_sink: Optional[pulumi.Input[bool]] = None,
|
223
|
+
folder: Optional[pulumi.Input[str]] = None,
|
224
|
+
kms_key_name: Optional[pulumi.Input[str]] = None,
|
225
|
+
storage_location: Optional[pulumi.Input[str]] = None,
|
226
|
+
__props__=None):
|
227
|
+
"""
|
228
|
+
Default resource settings control whether CMEK is required for new log buckets. These settings also determine the storage location for the _Default and _Required log buckets, and whether the _Default sink is enabled or disabled.
|
229
|
+
|
230
|
+
To get more information about FolderSettings, see:
|
231
|
+
|
232
|
+
* [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/TopLevel/getSettings)
|
233
|
+
* How-to Guides
|
234
|
+
* [Configure default settings for organizations and folders](https://cloud.google.com/logging/docs/default-settings)
|
235
|
+
|
236
|
+
## Example Usage
|
237
|
+
### Logging Folder Settings All
|
238
|
+
|
239
|
+
```python
|
240
|
+
import pulumi
|
241
|
+
import pulumi_gcp as gcp
|
242
|
+
|
243
|
+
my_folder = gcp.organizations.Folder("myFolder",
|
244
|
+
display_name="folder-name",
|
245
|
+
parent="organizations/123456789")
|
246
|
+
settings = gcp.logging.get_folder_settings_output(folder=my_folder.folder_id)
|
247
|
+
iam = gcp.kms.CryptoKeyIAMMember("iam",
|
248
|
+
crypto_key_id="kms-key",
|
249
|
+
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
250
|
+
member=settings.apply(lambda settings: f"serviceAccount:{settings.kms_service_account_id}"))
|
251
|
+
example = gcp.logging.FolderSettings("example",
|
252
|
+
disable_default_sink=True,
|
253
|
+
folder=my_folder.folder_id,
|
254
|
+
kms_key_name="kms-key",
|
255
|
+
storage_location="us-central1",
|
256
|
+
opts=pulumi.ResourceOptions(depends_on=[iam]))
|
257
|
+
```
|
258
|
+
|
259
|
+
## Import
|
260
|
+
|
261
|
+
FolderSettings can be imported using any of these accepted formats* `folders/{{folder}}/settings` * `{{folder}}` In Terraform v1.5.0 and later, use an [`import` block](https://developer.hashicorp.com/terraform/language/import) to import FolderSettings using one of the formats above. For exampletf import {
|
262
|
+
|
263
|
+
id = "folders/{{folder}}/settings"
|
264
|
+
|
265
|
+
to = google_logging_folder_settings.default }
|
266
|
+
|
267
|
+
```sh
|
268
|
+
$ pulumi import gcp:logging/folderSettings:FolderSettings When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), FolderSettings can be imported using one of the formats above. For example
|
269
|
+
```
|
270
|
+
|
271
|
+
```sh
|
272
|
+
$ pulumi import gcp:logging/folderSettings:FolderSettings default folders/{{folder}}/settings
|
273
|
+
```
|
274
|
+
|
275
|
+
```sh
|
276
|
+
$ pulumi import gcp:logging/folderSettings:FolderSettings default {{folder}}
|
277
|
+
```
|
278
|
+
|
279
|
+
:param str resource_name: The name of the resource.
|
280
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
281
|
+
:param pulumi.Input[bool] disable_default_sink: If set to true, the _Default sink in newly created projects and folders will created in a disabled state. This can be used to automatically disable log storage if there is already an aggregated sink configured in the hierarchy. The _Default sink can be re-enabled manually if needed.
|
282
|
+
:param pulumi.Input[str] folder: The folder for which to retrieve settings.
|
283
|
+
|
284
|
+
|
285
|
+
- - -
|
286
|
+
:param pulumi.Input[str] kms_key_name: The resource name for the configured Cloud KMS key.
|
287
|
+
:param pulumi.Input[str] storage_location: The storage location that Cloud Logging will use to create new resources when a location is needed but not explicitly provided.
|
288
|
+
"""
|
289
|
+
...
|
290
|
+
@overload
|
291
|
+
def __init__(__self__,
|
292
|
+
resource_name: str,
|
293
|
+
args: FolderSettingsArgs,
|
294
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
295
|
+
"""
|
296
|
+
Default resource settings control whether CMEK is required for new log buckets. These settings also determine the storage location for the _Default and _Required log buckets, and whether the _Default sink is enabled or disabled.
|
297
|
+
|
298
|
+
To get more information about FolderSettings, see:
|
299
|
+
|
300
|
+
* [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/TopLevel/getSettings)
|
301
|
+
* How-to Guides
|
302
|
+
* [Configure default settings for organizations and folders](https://cloud.google.com/logging/docs/default-settings)
|
303
|
+
|
304
|
+
## Example Usage
|
305
|
+
### Logging Folder Settings All
|
306
|
+
|
307
|
+
```python
|
308
|
+
import pulumi
|
309
|
+
import pulumi_gcp as gcp
|
310
|
+
|
311
|
+
my_folder = gcp.organizations.Folder("myFolder",
|
312
|
+
display_name="folder-name",
|
313
|
+
parent="organizations/123456789")
|
314
|
+
settings = gcp.logging.get_folder_settings_output(folder=my_folder.folder_id)
|
315
|
+
iam = gcp.kms.CryptoKeyIAMMember("iam",
|
316
|
+
crypto_key_id="kms-key",
|
317
|
+
role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
|
318
|
+
member=settings.apply(lambda settings: f"serviceAccount:{settings.kms_service_account_id}"))
|
319
|
+
example = gcp.logging.FolderSettings("example",
|
320
|
+
disable_default_sink=True,
|
321
|
+
folder=my_folder.folder_id,
|
322
|
+
kms_key_name="kms-key",
|
323
|
+
storage_location="us-central1",
|
324
|
+
opts=pulumi.ResourceOptions(depends_on=[iam]))
|
325
|
+
```
|
326
|
+
|
327
|
+
## Import
|
328
|
+
|
329
|
+
FolderSettings can be imported using any of these accepted formats* `folders/{{folder}}/settings` * `{{folder}}` In Terraform v1.5.0 and later, use an [`import` block](https://developer.hashicorp.com/terraform/language/import) to import FolderSettings using one of the formats above. For exampletf import {
|
330
|
+
|
331
|
+
id = "folders/{{folder}}/settings"
|
332
|
+
|
333
|
+
to = google_logging_folder_settings.default }
|
334
|
+
|
335
|
+
```sh
|
336
|
+
$ pulumi import gcp:logging/folderSettings:FolderSettings When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), FolderSettings can be imported using one of the formats above. For example
|
337
|
+
```
|
338
|
+
|
339
|
+
```sh
|
340
|
+
$ pulumi import gcp:logging/folderSettings:FolderSettings default folders/{{folder}}/settings
|
341
|
+
```
|
342
|
+
|
343
|
+
```sh
|
344
|
+
$ pulumi import gcp:logging/folderSettings:FolderSettings default {{folder}}
|
345
|
+
```
|
346
|
+
|
347
|
+
:param str resource_name: The name of the resource.
|
348
|
+
:param FolderSettingsArgs args: The arguments to use to populate this resource's properties.
|
349
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
350
|
+
"""
|
351
|
+
...
|
352
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
353
|
+
resource_args, opts = _utilities.get_resource_args_opts(FolderSettingsArgs, pulumi.ResourceOptions, *args, **kwargs)
|
354
|
+
if resource_args is not None:
|
355
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
356
|
+
else:
|
357
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
358
|
+
|
359
|
+
def _internal_init(__self__,
|
360
|
+
resource_name: str,
|
361
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
362
|
+
disable_default_sink: Optional[pulumi.Input[bool]] = None,
|
363
|
+
folder: Optional[pulumi.Input[str]] = None,
|
364
|
+
kms_key_name: Optional[pulumi.Input[str]] = None,
|
365
|
+
storage_location: Optional[pulumi.Input[str]] = None,
|
366
|
+
__props__=None):
|
367
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
368
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
369
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
370
|
+
if opts.id is None:
|
371
|
+
if __props__ is not None:
|
372
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
373
|
+
__props__ = FolderSettingsArgs.__new__(FolderSettingsArgs)
|
374
|
+
|
375
|
+
__props__.__dict__["disable_default_sink"] = disable_default_sink
|
376
|
+
if folder is None and not opts.urn:
|
377
|
+
raise TypeError("Missing required property 'folder'")
|
378
|
+
__props__.__dict__["folder"] = folder
|
379
|
+
__props__.__dict__["kms_key_name"] = kms_key_name
|
380
|
+
__props__.__dict__["storage_location"] = storage_location
|
381
|
+
__props__.__dict__["kms_service_account_id"] = None
|
382
|
+
__props__.__dict__["logging_service_account_id"] = None
|
383
|
+
__props__.__dict__["name"] = None
|
384
|
+
super(FolderSettings, __self__).__init__(
|
385
|
+
'gcp:logging/folderSettings:FolderSettings',
|
386
|
+
resource_name,
|
387
|
+
__props__,
|
388
|
+
opts)
|
389
|
+
|
390
|
+
@staticmethod
|
391
|
+
def get(resource_name: str,
|
392
|
+
id: pulumi.Input[str],
|
393
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
394
|
+
disable_default_sink: Optional[pulumi.Input[bool]] = None,
|
395
|
+
folder: Optional[pulumi.Input[str]] = None,
|
396
|
+
kms_key_name: Optional[pulumi.Input[str]] = None,
|
397
|
+
kms_service_account_id: Optional[pulumi.Input[str]] = None,
|
398
|
+
logging_service_account_id: Optional[pulumi.Input[str]] = None,
|
399
|
+
name: Optional[pulumi.Input[str]] = None,
|
400
|
+
storage_location: Optional[pulumi.Input[str]] = None) -> 'FolderSettings':
|
401
|
+
"""
|
402
|
+
Get an existing FolderSettings resource's state with the given name, id, and optional extra
|
403
|
+
properties used to qualify the lookup.
|
404
|
+
|
405
|
+
:param str resource_name: The unique name of the resulting resource.
|
406
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
407
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
408
|
+
:param pulumi.Input[bool] disable_default_sink: If set to true, the _Default sink in newly created projects and folders will created in a disabled state. This can be used to automatically disable log storage if there is already an aggregated sink configured in the hierarchy. The _Default sink can be re-enabled manually if needed.
|
409
|
+
:param pulumi.Input[str] folder: The folder for which to retrieve settings.
|
410
|
+
|
411
|
+
|
412
|
+
- - -
|
413
|
+
:param pulumi.Input[str] kms_key_name: The resource name for the configured Cloud KMS key.
|
414
|
+
:param pulumi.Input[str] kms_service_account_id: The service account that will be used by the Log Router to access your Cloud KMS key.
|
415
|
+
:param pulumi.Input[str] logging_service_account_id: The service account for the given container. Sinks use this service account as their writerIdentity if no custom service account is provided.
|
416
|
+
:param pulumi.Input[str] name: The resource name of the settings.
|
417
|
+
:param pulumi.Input[str] storage_location: The storage location that Cloud Logging will use to create new resources when a location is needed but not explicitly provided.
|
418
|
+
"""
|
419
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
420
|
+
|
421
|
+
__props__ = _FolderSettingsState.__new__(_FolderSettingsState)
|
422
|
+
|
423
|
+
__props__.__dict__["disable_default_sink"] = disable_default_sink
|
424
|
+
__props__.__dict__["folder"] = folder
|
425
|
+
__props__.__dict__["kms_key_name"] = kms_key_name
|
426
|
+
__props__.__dict__["kms_service_account_id"] = kms_service_account_id
|
427
|
+
__props__.__dict__["logging_service_account_id"] = logging_service_account_id
|
428
|
+
__props__.__dict__["name"] = name
|
429
|
+
__props__.__dict__["storage_location"] = storage_location
|
430
|
+
return FolderSettings(resource_name, opts=opts, __props__=__props__)
|
431
|
+
|
432
|
+
@property
|
433
|
+
@pulumi.getter(name="disableDefaultSink")
|
434
|
+
def disable_default_sink(self) -> pulumi.Output[bool]:
|
435
|
+
"""
|
436
|
+
If set to true, the _Default sink in newly created projects and folders will created in a disabled state. This can be used to automatically disable log storage if there is already an aggregated sink configured in the hierarchy. The _Default sink can be re-enabled manually if needed.
|
437
|
+
"""
|
438
|
+
return pulumi.get(self, "disable_default_sink")
|
439
|
+
|
440
|
+
@property
|
441
|
+
@pulumi.getter
|
442
|
+
def folder(self) -> pulumi.Output[str]:
|
443
|
+
"""
|
444
|
+
The folder for which to retrieve settings.
|
445
|
+
|
446
|
+
|
447
|
+
- - -
|
448
|
+
"""
|
449
|
+
return pulumi.get(self, "folder")
|
450
|
+
|
451
|
+
@property
|
452
|
+
@pulumi.getter(name="kmsKeyName")
|
453
|
+
def kms_key_name(self) -> pulumi.Output[str]:
|
454
|
+
"""
|
455
|
+
The resource name for the configured Cloud KMS key.
|
456
|
+
"""
|
457
|
+
return pulumi.get(self, "kms_key_name")
|
458
|
+
|
459
|
+
@property
|
460
|
+
@pulumi.getter(name="kmsServiceAccountId")
|
461
|
+
def kms_service_account_id(self) -> pulumi.Output[str]:
|
462
|
+
"""
|
463
|
+
The service account that will be used by the Log Router to access your Cloud KMS key.
|
464
|
+
"""
|
465
|
+
return pulumi.get(self, "kms_service_account_id")
|
466
|
+
|
467
|
+
@property
|
468
|
+
@pulumi.getter(name="loggingServiceAccountId")
|
469
|
+
def logging_service_account_id(self) -> pulumi.Output[str]:
|
470
|
+
"""
|
471
|
+
The service account for the given container. Sinks use this service account as their writerIdentity if no custom service account is provided.
|
472
|
+
"""
|
473
|
+
return pulumi.get(self, "logging_service_account_id")
|
474
|
+
|
475
|
+
@property
|
476
|
+
@pulumi.getter
|
477
|
+
def name(self) -> pulumi.Output[str]:
|
478
|
+
"""
|
479
|
+
The resource name of the settings.
|
480
|
+
"""
|
481
|
+
return pulumi.get(self, "name")
|
482
|
+
|
483
|
+
@property
|
484
|
+
@pulumi.getter(name="storageLocation")
|
485
|
+
def storage_location(self) -> pulumi.Output[str]:
|
486
|
+
"""
|
487
|
+
The storage location that Cloud Logging will use to create new resources when a location is needed but not explicitly provided.
|
488
|
+
"""
|
489
|
+
return pulumi.get(self, "storage_location")
|
490
|
+
|
@@ -27,13 +27,13 @@ class FolderSinkArgs:
|
|
27
27
|
name: Optional[pulumi.Input[str]] = None):
|
28
28
|
"""
|
29
29
|
The set of arguments for constructing a FolderSink resource.
|
30
|
-
:param pulumi.Input[str] destination: The destination of the sink (or, in other words, where logs are written to). Can be a
|
31
|
-
Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
|
30
|
+
:param pulumi.Input[str] destination: The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
|
32
31
|
|
33
32
|
- `storage.googleapis.com/[GCS_BUCKET]`
|
34
33
|
- `bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]`
|
35
34
|
- `pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]`
|
36
|
-
- `logging.googleapis.com/projects/[PROJECT_ID]
|
35
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]/locations/global/buckets/[BUCKET_ID]`
|
36
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]`
|
37
37
|
|
38
38
|
The writer associated with the sink must have access to write to the above resource.
|
39
39
|
:param pulumi.Input[str] folder: The folder to be exported to the sink. Note that either `[FOLDER_ID]` or `folders/[FOLDER_ID]` is
|
@@ -70,13 +70,13 @@ class FolderSinkArgs:
|
|
70
70
|
@pulumi.getter
|
71
71
|
def destination(self) -> pulumi.Input[str]:
|
72
72
|
"""
|
73
|
-
The destination of the sink (or, in other words, where logs are written to). Can be a
|
74
|
-
Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
|
73
|
+
The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
|
75
74
|
|
76
75
|
- `storage.googleapis.com/[GCS_BUCKET]`
|
77
76
|
- `bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]`
|
78
77
|
- `pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]`
|
79
|
-
- `logging.googleapis.com/projects/[PROJECT_ID]
|
78
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]/locations/global/buckets/[BUCKET_ID]`
|
79
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]`
|
80
80
|
|
81
81
|
The writer associated with the sink must have access to write to the above resource.
|
82
82
|
"""
|
@@ -204,13 +204,13 @@ class _FolderSinkState:
|
|
204
204
|
Input properties used for looking up and filtering FolderSink resources.
|
205
205
|
:param pulumi.Input['FolderSinkBigqueryOptionsArgs'] bigquery_options: Options that affect sinks exporting data to BigQuery. Structure documented below.
|
206
206
|
:param pulumi.Input[str] description: A description of this sink. The maximum length of the description is 8000 characters.
|
207
|
-
:param pulumi.Input[str] destination: The destination of the sink (or, in other words, where logs are written to). Can be a
|
208
|
-
Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
|
207
|
+
:param pulumi.Input[str] destination: The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
|
209
208
|
|
210
209
|
- `storage.googleapis.com/[GCS_BUCKET]`
|
211
210
|
- `bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]`
|
212
211
|
- `pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]`
|
213
|
-
- `logging.googleapis.com/projects/[PROJECT_ID]
|
212
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]/locations/global/buckets/[BUCKET_ID]`
|
213
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]`
|
214
214
|
|
215
215
|
The writer associated with the sink must have access to write to the above resource.
|
216
216
|
:param pulumi.Input[bool] disabled: If set to True, then this sink is disabled and it does not export any log entries.
|
@@ -275,13 +275,13 @@ class _FolderSinkState:
|
|
275
275
|
@pulumi.getter
|
276
276
|
def destination(self) -> Optional[pulumi.Input[str]]:
|
277
277
|
"""
|
278
|
-
The destination of the sink (or, in other words, where logs are written to). Can be a
|
279
|
-
Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
|
278
|
+
The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
|
280
279
|
|
281
280
|
- `storage.googleapis.com/[GCS_BUCKET]`
|
282
281
|
- `bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]`
|
283
282
|
- `pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]`
|
284
|
-
- `logging.googleapis.com/projects/[PROJECT_ID]
|
283
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]/locations/global/buckets/[BUCKET_ID]`
|
284
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]`
|
285
285
|
|
286
286
|
The writer associated with the sink must have access to write to the above resource.
|
287
287
|
"""
|
@@ -443,13 +443,13 @@ class FolderSink(pulumi.CustomResource):
|
|
443
443
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
444
444
|
:param pulumi.Input[pulumi.InputType['FolderSinkBigqueryOptionsArgs']] bigquery_options: Options that affect sinks exporting data to BigQuery. Structure documented below.
|
445
445
|
:param pulumi.Input[str] description: A description of this sink. The maximum length of the description is 8000 characters.
|
446
|
-
:param pulumi.Input[str] destination: The destination of the sink (or, in other words, where logs are written to). Can be a
|
447
|
-
Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
|
446
|
+
:param pulumi.Input[str] destination: The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
|
448
447
|
|
449
448
|
- `storage.googleapis.com/[GCS_BUCKET]`
|
450
449
|
- `bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]`
|
451
450
|
- `pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]`
|
452
|
-
- `logging.googleapis.com/projects/[PROJECT_ID]
|
451
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]/locations/global/buckets/[BUCKET_ID]`
|
452
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]`
|
453
453
|
|
454
454
|
The writer associated with the sink must have access to write to the above resource.
|
455
455
|
:param pulumi.Input[bool] disabled: If set to True, then this sink is disabled and it does not export any log entries.
|
@@ -588,13 +588,13 @@ class FolderSink(pulumi.CustomResource):
|
|
588
588
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
589
589
|
:param pulumi.Input[pulumi.InputType['FolderSinkBigqueryOptionsArgs']] bigquery_options: Options that affect sinks exporting data to BigQuery. Structure documented below.
|
590
590
|
:param pulumi.Input[str] description: A description of this sink. The maximum length of the description is 8000 characters.
|
591
|
-
:param pulumi.Input[str] destination: The destination of the sink (or, in other words, where logs are written to). Can be a
|
592
|
-
Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
|
591
|
+
:param pulumi.Input[str] destination: The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
|
593
592
|
|
594
593
|
- `storage.googleapis.com/[GCS_BUCKET]`
|
595
594
|
- `bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]`
|
596
595
|
- `pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]`
|
597
|
-
- `logging.googleapis.com/projects/[PROJECT_ID]
|
596
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]/locations/global/buckets/[BUCKET_ID]`
|
597
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]`
|
598
598
|
|
599
599
|
The writer associated with the sink must have access to write to the above resource.
|
600
600
|
:param pulumi.Input[bool] disabled: If set to True, then this sink is disabled and it does not export any log entries.
|
@@ -646,13 +646,13 @@ class FolderSink(pulumi.CustomResource):
|
|
646
646
|
@pulumi.getter
|
647
647
|
def destination(self) -> pulumi.Output[str]:
|
648
648
|
"""
|
649
|
-
The destination of the sink (or, in other words, where logs are written to). Can be a
|
650
|
-
Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
|
649
|
+
The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
|
651
650
|
|
652
651
|
- `storage.googleapis.com/[GCS_BUCKET]`
|
653
652
|
- `bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]`
|
654
653
|
- `pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]`
|
655
|
-
- `logging.googleapis.com/projects/[PROJECT_ID]
|
654
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]/locations/global/buckets/[BUCKET_ID]`
|
655
|
+
- `logging.googleapis.com/projects/[PROJECT_ID]`
|
656
656
|
|
657
657
|
The writer associated with the sink must have access to write to the above resource.
|
658
658
|
"""
|