pulumi-gcp 8.21.0a1741156431__py3-none-any.whl → 8.22.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. pulumi_gcp/__init__.py +96 -0
  2. pulumi_gcp/alloydb/_inputs.py +66 -0
  3. pulumi_gcp/alloydb/cluster.py +148 -0
  4. pulumi_gcp/alloydb/instance.py +28 -28
  5. pulumi_gcp/alloydb/outputs.py +95 -0
  6. pulumi_gcp/apihub/__init__.py +1 -0
  7. pulumi_gcp/apihub/host_project_registration.py +535 -0
  8. pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
  9. pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
  10. pulumi_gcp/bigquery/table.py +1 -1
  11. pulumi_gcp/certificatemanager/certificate.py +53 -7
  12. pulumi_gcp/certificatemanager/outputs.py +8 -2
  13. pulumi_gcp/compute/__init__.py +6 -0
  14. pulumi_gcp/compute/_inputs.py +1370 -17
  15. pulumi_gcp/compute/backend_service.py +209 -14
  16. pulumi_gcp/compute/ca_external_account_key.py +48 -3
  17. pulumi_gcp/compute/disk.py +403 -0
  18. pulumi_gcp/compute/firewall_policy_association.py +28 -2
  19. pulumi_gcp/compute/get_backend_service.py +12 -1
  20. pulumi_gcp/compute/get_disk.py +78 -1
  21. pulumi_gcp/compute/get_instant_snapshot_iam_policy.py +182 -0
  22. pulumi_gcp/compute/get_region_disk.py +23 -1
  23. pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
  24. pulumi_gcp/compute/instant_snapshot.py +796 -0
  25. pulumi_gcp/compute/instant_snapshot_iam_binding.py +1087 -0
  26. pulumi_gcp/compute/instant_snapshot_iam_member.py +1087 -0
  27. pulumi_gcp/compute/instant_snapshot_iam_policy.py +906 -0
  28. pulumi_gcp/compute/outputs.py +1952 -29
  29. pulumi_gcp/compute/region_backend_service.py +207 -14
  30. pulumi_gcp/compute/region_disk.py +114 -0
  31. pulumi_gcp/compute/route.py +228 -2
  32. pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
  33. pulumi_gcp/compute/subnetwork.py +147 -0
  34. pulumi_gcp/compute/url_map.py +8 -0
  35. pulumi_gcp/container/_inputs.py +6 -6
  36. pulumi_gcp/container/outputs.py +8 -8
  37. pulumi_gcp/datacatalog/entry.py +4 -0
  38. pulumi_gcp/datacatalog/tag.py +4 -0
  39. pulumi_gcp/dataproc/_inputs.py +12 -15
  40. pulumi_gcp/dataproc/outputs.py +8 -10
  41. pulumi_gcp/datastream/_inputs.py +273 -0
  42. pulumi_gcp/datastream/connection_profile.py +54 -2
  43. pulumi_gcp/datastream/outputs.py +224 -0
  44. pulumi_gcp/discoveryengine/target_site.py +4 -4
  45. pulumi_gcp/eventarc/__init__.py +2 -0
  46. pulumi_gcp/eventarc/_inputs.py +80 -0
  47. pulumi_gcp/eventarc/channel.py +85 -93
  48. pulumi_gcp/eventarc/google_api_source.py +997 -0
  49. pulumi_gcp/eventarc/message_bus.py +927 -0
  50. pulumi_gcp/eventarc/outputs.py +82 -0
  51. pulumi_gcp/firebase/data_connect_service.py +40 -2
  52. pulumi_gcp/gemini/__init__.py +1 -0
  53. pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +20 -8
  54. pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +6 -0
  55. pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +734 -0
  56. pulumi_gcp/gemini/logging_setting_binding.py +7 -7
  57. pulumi_gcp/iam/__init__.py +2 -0
  58. pulumi_gcp/iam/_inputs.py +84 -27
  59. pulumi_gcp/iam/folders_policy_binding.py +10 -26
  60. pulumi_gcp/iam/oauth_client.py +979 -0
  61. pulumi_gcp/iam/oauth_client_credential.py +641 -0
  62. pulumi_gcp/iam/organizations_policy_binding.py +8 -24
  63. pulumi_gcp/iam/outputs.py +56 -18
  64. pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
  65. pulumi_gcp/iam/projects_policy_binding.py +8 -24
  66. pulumi_gcp/iam/workforce_pool_provider.py +2 -2
  67. pulumi_gcp/kms/crypto_key_version.py +14 -7
  68. pulumi_gcp/memorystore/__init__.py +1 -0
  69. pulumi_gcp/memorystore/get_instance.py +425 -0
  70. pulumi_gcp/memorystore/outputs.py +582 -0
  71. pulumi_gcp/monitoring/_inputs.py +15 -18
  72. pulumi_gcp/monitoring/alert_policy.py +46 -0
  73. pulumi_gcp/monitoring/outputs.py +10 -12
  74. pulumi_gcp/networkconnectivity/hub.py +84 -0
  75. pulumi_gcp/networksecurity/__init__.py +1 -0
  76. pulumi_gcp/networksecurity/_inputs.py +30 -18
  77. pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
  78. pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
  79. pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
  80. pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
  81. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
  82. pulumi_gcp/networksecurity/mirroring_deployment.py +178 -94
  83. pulumi_gcp/networksecurity/mirroring_deployment_group.py +161 -77
  84. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +161 -80
  85. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +137 -105
  86. pulumi_gcp/networksecurity/outputs.py +20 -12
  87. pulumi_gcp/networkservices/endpoint_policy.py +12 -0
  88. pulumi_gcp/networkservices/grpc_route.py +128 -12
  89. pulumi_gcp/networkservices/http_route.py +16 -0
  90. pulumi_gcp/networkservices/mesh.py +16 -0
  91. pulumi_gcp/networkservices/service_binding.py +14 -0
  92. pulumi_gcp/networkservices/tcp_route.py +16 -0
  93. pulumi_gcp/networkservices/tls_route.py +12 -0
  94. pulumi_gcp/notebooks/location.py +4 -0
  95. pulumi_gcp/pulumi-plugin.json +1 -1
  96. pulumi_gcp/storage/__init__.py +1 -0
  97. pulumi_gcp/storage/_inputs.py +74 -0
  98. pulumi_gcp/storage/anywhere_cache.py +552 -0
  99. pulumi_gcp/storage/outputs.py +65 -0
  100. pulumi_gcp/storage/transfer_job.py +67 -0
  101. pulumi_gcp/tpu/_inputs.py +21 -1
  102. pulumi_gcp/tpu/outputs.py +13 -1
  103. pulumi_gcp/tpu/v2_vm.py +2 -0
  104. pulumi_gcp/vmwareengine/_inputs.py +6 -0
  105. pulumi_gcp/vmwareengine/outputs.py +8 -0
  106. pulumi_gcp/workstations/workstation_cluster.py +137 -1
  107. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/METADATA +1 -1
  108. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/RECORD +110 -95
  109. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/WHEEL +1 -1
  110. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,552 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = ['AnywhereCacheArgs', 'AnywhereCache']
18
+
19
+ @pulumi.input_type
20
+ class AnywhereCacheArgs:
21
+ def __init__(__self__, *,
22
+ bucket: pulumi.Input[str],
23
+ zone: pulumi.Input[str],
24
+ admission_policy: Optional[pulumi.Input[str]] = None,
25
+ ttl: Optional[pulumi.Input[str]] = None):
26
+ """
27
+ The set of arguments for constructing a AnywhereCache resource.
28
+ :param pulumi.Input[str] bucket: A reference to Bucket resource
29
+
30
+
31
+ - - -
32
+ :param pulumi.Input[str] zone: The zone in which the cache instance needs to be created. For example, `us-central1-a.`
33
+ :param pulumi.Input[str] admission_policy: The cache admission policy dictates whether a block should be inserted upon a cache miss.
34
+ Default value is `admit-on-first-miss`.
35
+ Possible values are: `admit-on-first-miss`, `admit-on-second-miss`.
36
+ :param pulumi.Input[str] ttl: The TTL of all cache entries in whole seconds. e.g., "7200s". It defaults to `86400s`
37
+ """
38
+ pulumi.set(__self__, "bucket", bucket)
39
+ pulumi.set(__self__, "zone", zone)
40
+ if admission_policy is not None:
41
+ pulumi.set(__self__, "admission_policy", admission_policy)
42
+ if ttl is not None:
43
+ pulumi.set(__self__, "ttl", ttl)
44
+
45
+ @property
46
+ @pulumi.getter
47
+ def bucket(self) -> pulumi.Input[str]:
48
+ """
49
+ A reference to Bucket resource
50
+
51
+
52
+ - - -
53
+ """
54
+ return pulumi.get(self, "bucket")
55
+
56
+ @bucket.setter
57
+ def bucket(self, value: pulumi.Input[str]):
58
+ pulumi.set(self, "bucket", value)
59
+
60
+ @property
61
+ @pulumi.getter
62
+ def zone(self) -> pulumi.Input[str]:
63
+ """
64
+ The zone in which the cache instance needs to be created. For example, `us-central1-a.`
65
+ """
66
+ return pulumi.get(self, "zone")
67
+
68
+ @zone.setter
69
+ def zone(self, value: pulumi.Input[str]):
70
+ pulumi.set(self, "zone", value)
71
+
72
+ @property
73
+ @pulumi.getter(name="admissionPolicy")
74
+ def admission_policy(self) -> Optional[pulumi.Input[str]]:
75
+ """
76
+ The cache admission policy dictates whether a block should be inserted upon a cache miss.
77
+ Default value is `admit-on-first-miss`.
78
+ Possible values are: `admit-on-first-miss`, `admit-on-second-miss`.
79
+ """
80
+ return pulumi.get(self, "admission_policy")
81
+
82
+ @admission_policy.setter
83
+ def admission_policy(self, value: Optional[pulumi.Input[str]]):
84
+ pulumi.set(self, "admission_policy", value)
85
+
86
+ @property
87
+ @pulumi.getter
88
+ def ttl(self) -> Optional[pulumi.Input[str]]:
89
+ """
90
+ The TTL of all cache entries in whole seconds. e.g., "7200s". It defaults to `86400s`
91
+ """
92
+ return pulumi.get(self, "ttl")
93
+
94
+ @ttl.setter
95
+ def ttl(self, value: Optional[pulumi.Input[str]]):
96
+ pulumi.set(self, "ttl", value)
97
+
98
+
99
+ @pulumi.input_type
100
+ class _AnywhereCacheState:
101
+ def __init__(__self__, *,
102
+ admission_policy: Optional[pulumi.Input[str]] = None,
103
+ anywhere_cache_id: Optional[pulumi.Input[str]] = None,
104
+ bucket: Optional[pulumi.Input[str]] = None,
105
+ create_time: Optional[pulumi.Input[str]] = None,
106
+ pending_update: Optional[pulumi.Input[bool]] = None,
107
+ state: Optional[pulumi.Input[str]] = None,
108
+ ttl: Optional[pulumi.Input[str]] = None,
109
+ update_time: Optional[pulumi.Input[str]] = None,
110
+ zone: Optional[pulumi.Input[str]] = None):
111
+ """
112
+ Input properties used for looking up and filtering AnywhereCache resources.
113
+ :param pulumi.Input[str] admission_policy: The cache admission policy dictates whether a block should be inserted upon a cache miss.
114
+ Default value is `admit-on-first-miss`.
115
+ Possible values are: `admit-on-first-miss`, `admit-on-second-miss`.
116
+ :param pulumi.Input[str] anywhere_cache_id: The ID of the Anywhere cache instance.
117
+ :param pulumi.Input[str] bucket: A reference to Bucket resource
118
+
119
+
120
+ - - -
121
+ :param pulumi.Input[str] create_time: The creation time of the cache instance in RFC 3339 format.
122
+ :param pulumi.Input[bool] pending_update: True if the cache instance has an active Update long-running operation.
123
+ :param pulumi.Input[str] state: The current state of the cache instance.
124
+ :param pulumi.Input[str] ttl: The TTL of all cache entries in whole seconds. e.g., "7200s". It defaults to `86400s`
125
+ :param pulumi.Input[str] update_time: The modification time of the cache instance metadata in RFC 3339 format.
126
+ :param pulumi.Input[str] zone: The zone in which the cache instance needs to be created. For example, `us-central1-a.`
127
+ """
128
+ if admission_policy is not None:
129
+ pulumi.set(__self__, "admission_policy", admission_policy)
130
+ if anywhere_cache_id is not None:
131
+ pulumi.set(__self__, "anywhere_cache_id", anywhere_cache_id)
132
+ if bucket is not None:
133
+ pulumi.set(__self__, "bucket", bucket)
134
+ if create_time is not None:
135
+ pulumi.set(__self__, "create_time", create_time)
136
+ if pending_update is not None:
137
+ pulumi.set(__self__, "pending_update", pending_update)
138
+ if state is not None:
139
+ pulumi.set(__self__, "state", state)
140
+ if ttl is not None:
141
+ pulumi.set(__self__, "ttl", ttl)
142
+ if update_time is not None:
143
+ pulumi.set(__self__, "update_time", update_time)
144
+ if zone is not None:
145
+ pulumi.set(__self__, "zone", zone)
146
+
147
+ @property
148
+ @pulumi.getter(name="admissionPolicy")
149
+ def admission_policy(self) -> Optional[pulumi.Input[str]]:
150
+ """
151
+ The cache admission policy dictates whether a block should be inserted upon a cache miss.
152
+ Default value is `admit-on-first-miss`.
153
+ Possible values are: `admit-on-first-miss`, `admit-on-second-miss`.
154
+ """
155
+ return pulumi.get(self, "admission_policy")
156
+
157
+ @admission_policy.setter
158
+ def admission_policy(self, value: Optional[pulumi.Input[str]]):
159
+ pulumi.set(self, "admission_policy", value)
160
+
161
+ @property
162
+ @pulumi.getter(name="anywhereCacheId")
163
+ def anywhere_cache_id(self) -> Optional[pulumi.Input[str]]:
164
+ """
165
+ The ID of the Anywhere cache instance.
166
+ """
167
+ return pulumi.get(self, "anywhere_cache_id")
168
+
169
+ @anywhere_cache_id.setter
170
+ def anywhere_cache_id(self, value: Optional[pulumi.Input[str]]):
171
+ pulumi.set(self, "anywhere_cache_id", value)
172
+
173
+ @property
174
+ @pulumi.getter
175
+ def bucket(self) -> Optional[pulumi.Input[str]]:
176
+ """
177
+ A reference to Bucket resource
178
+
179
+
180
+ - - -
181
+ """
182
+ return pulumi.get(self, "bucket")
183
+
184
+ @bucket.setter
185
+ def bucket(self, value: Optional[pulumi.Input[str]]):
186
+ pulumi.set(self, "bucket", value)
187
+
188
+ @property
189
+ @pulumi.getter(name="createTime")
190
+ def create_time(self) -> Optional[pulumi.Input[str]]:
191
+ """
192
+ The creation time of the cache instance in RFC 3339 format.
193
+ """
194
+ return pulumi.get(self, "create_time")
195
+
196
+ @create_time.setter
197
+ def create_time(self, value: Optional[pulumi.Input[str]]):
198
+ pulumi.set(self, "create_time", value)
199
+
200
+ @property
201
+ @pulumi.getter(name="pendingUpdate")
202
+ def pending_update(self) -> Optional[pulumi.Input[bool]]:
203
+ """
204
+ True if the cache instance has an active Update long-running operation.
205
+ """
206
+ return pulumi.get(self, "pending_update")
207
+
208
+ @pending_update.setter
209
+ def pending_update(self, value: Optional[pulumi.Input[bool]]):
210
+ pulumi.set(self, "pending_update", value)
211
+
212
+ @property
213
+ @pulumi.getter
214
+ def state(self) -> Optional[pulumi.Input[str]]:
215
+ """
216
+ The current state of the cache instance.
217
+ """
218
+ return pulumi.get(self, "state")
219
+
220
+ @state.setter
221
+ def state(self, value: Optional[pulumi.Input[str]]):
222
+ pulumi.set(self, "state", value)
223
+
224
+ @property
225
+ @pulumi.getter
226
+ def ttl(self) -> Optional[pulumi.Input[str]]:
227
+ """
228
+ The TTL of all cache entries in whole seconds. e.g., "7200s". It defaults to `86400s`
229
+ """
230
+ return pulumi.get(self, "ttl")
231
+
232
+ @ttl.setter
233
+ def ttl(self, value: Optional[pulumi.Input[str]]):
234
+ pulumi.set(self, "ttl", value)
235
+
236
+ @property
237
+ @pulumi.getter(name="updateTime")
238
+ def update_time(self) -> Optional[pulumi.Input[str]]:
239
+ """
240
+ The modification time of the cache instance metadata in RFC 3339 format.
241
+ """
242
+ return pulumi.get(self, "update_time")
243
+
244
+ @update_time.setter
245
+ def update_time(self, value: Optional[pulumi.Input[str]]):
246
+ pulumi.set(self, "update_time", value)
247
+
248
+ @property
249
+ @pulumi.getter
250
+ def zone(self) -> Optional[pulumi.Input[str]]:
251
+ """
252
+ The zone in which the cache instance needs to be created. For example, `us-central1-a.`
253
+ """
254
+ return pulumi.get(self, "zone")
255
+
256
+ @zone.setter
257
+ def zone(self, value: Optional[pulumi.Input[str]]):
258
+ pulumi.set(self, "zone", value)
259
+
260
+
261
+ class AnywhereCache(pulumi.CustomResource):
262
+ @overload
263
+ def __init__(__self__,
264
+ resource_name: str,
265
+ opts: Optional[pulumi.ResourceOptions] = None,
266
+ admission_policy: Optional[pulumi.Input[str]] = None,
267
+ bucket: Optional[pulumi.Input[str]] = None,
268
+ ttl: Optional[pulumi.Input[str]] = None,
269
+ zone: Optional[pulumi.Input[str]] = None,
270
+ __props__=None):
271
+ """
272
+ The Google Cloud Storage (GCS) Anywhere Cache feature allows users to
273
+ create SSD backed zonal read cache for their buckets. These zonal
274
+ caches are co-located with the customers compute engines to provide
275
+ cost efficiency.
276
+
277
+ ## Example Usage
278
+
279
+ ### Storage Anywhere Cache Basic
280
+
281
+ ```python
282
+ import pulumi
283
+ import pulumi_gcp as gcp
284
+ import pulumi_time as time
285
+
286
+ bucket = gcp.storage.Bucket("bucket",
287
+ name="bucket-name",
288
+ location="US")
289
+ destroy_wait5000_seconds = time.index.Sleep("destroy_wait_5000_seconds", destroy_duration=5000s,
290
+ opts = pulumi.ResourceOptions(depends_on=[bucket]))
291
+ cache = gcp.storage.AnywhereCache("cache",
292
+ bucket=bucket.name,
293
+ zone="us-central1-f",
294
+ ttl="3601s",
295
+ opts = pulumi.ResourceOptions(depends_on=[destroy_wait5000_seconds]))
296
+ ```
297
+
298
+ ## Import
299
+
300
+ AnywhereCache can be imported using any of these accepted formats:
301
+
302
+ * `b/{{bucket}}/anywhereCaches/{{anywhere_cache_id}}`
303
+
304
+ * `{{bucket}}/{{anywhere_cache_id}}`
305
+
306
+ When using the `pulumi import` command, AnywhereCache can be imported using one of the formats above. For example:
307
+
308
+ ```sh
309
+ $ pulumi import gcp:storage/anywhereCache:AnywhereCache default b/{{bucket}}/anywhereCaches/{{anywhere_cache_id}}
310
+ ```
311
+
312
+ ```sh
313
+ $ pulumi import gcp:storage/anywhereCache:AnywhereCache default {{bucket}}/{{anywhere_cache_id}}
314
+ ```
315
+
316
+ :param str resource_name: The name of the resource.
317
+ :param pulumi.ResourceOptions opts: Options for the resource.
318
+ :param pulumi.Input[str] admission_policy: The cache admission policy dictates whether a block should be inserted upon a cache miss.
319
+ Default value is `admit-on-first-miss`.
320
+ Possible values are: `admit-on-first-miss`, `admit-on-second-miss`.
321
+ :param pulumi.Input[str] bucket: A reference to Bucket resource
322
+
323
+
324
+ - - -
325
+ :param pulumi.Input[str] ttl: The TTL of all cache entries in whole seconds. e.g., "7200s". It defaults to `86400s`
326
+ :param pulumi.Input[str] zone: The zone in which the cache instance needs to be created. For example, `us-central1-a.`
327
+ """
328
+ ...
329
+ @overload
330
+ def __init__(__self__,
331
+ resource_name: str,
332
+ args: AnywhereCacheArgs,
333
+ opts: Optional[pulumi.ResourceOptions] = None):
334
+ """
335
+ The Google Cloud Storage (GCS) Anywhere Cache feature allows users to
336
+ create SSD backed zonal read cache for their buckets. These zonal
337
+ caches are co-located with the customers compute engines to provide
338
+ cost efficiency.
339
+
340
+ ## Example Usage
341
+
342
+ ### Storage Anywhere Cache Basic
343
+
344
+ ```python
345
+ import pulumi
346
+ import pulumi_gcp as gcp
347
+ import pulumi_time as time
348
+
349
+ bucket = gcp.storage.Bucket("bucket",
350
+ name="bucket-name",
351
+ location="US")
352
+ destroy_wait5000_seconds = time.index.Sleep("destroy_wait_5000_seconds", destroy_duration=5000s,
353
+ opts = pulumi.ResourceOptions(depends_on=[bucket]))
354
+ cache = gcp.storage.AnywhereCache("cache",
355
+ bucket=bucket.name,
356
+ zone="us-central1-f",
357
+ ttl="3601s",
358
+ opts = pulumi.ResourceOptions(depends_on=[destroy_wait5000_seconds]))
359
+ ```
360
+
361
+ ## Import
362
+
363
+ AnywhereCache can be imported using any of these accepted formats:
364
+
365
+ * `b/{{bucket}}/anywhereCaches/{{anywhere_cache_id}}`
366
+
367
+ * `{{bucket}}/{{anywhere_cache_id}}`
368
+
369
+ When using the `pulumi import` command, AnywhereCache can be imported using one of the formats above. For example:
370
+
371
+ ```sh
372
+ $ pulumi import gcp:storage/anywhereCache:AnywhereCache default b/{{bucket}}/anywhereCaches/{{anywhere_cache_id}}
373
+ ```
374
+
375
+ ```sh
376
+ $ pulumi import gcp:storage/anywhereCache:AnywhereCache default {{bucket}}/{{anywhere_cache_id}}
377
+ ```
378
+
379
+ :param str resource_name: The name of the resource.
380
+ :param AnywhereCacheArgs args: The arguments to use to populate this resource's properties.
381
+ :param pulumi.ResourceOptions opts: Options for the resource.
382
+ """
383
+ ...
384
+ def __init__(__self__, resource_name: str, *args, **kwargs):
385
+ resource_args, opts = _utilities.get_resource_args_opts(AnywhereCacheArgs, pulumi.ResourceOptions, *args, **kwargs)
386
+ if resource_args is not None:
387
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
388
+ else:
389
+ __self__._internal_init(resource_name, *args, **kwargs)
390
+
391
+ def _internal_init(__self__,
392
+ resource_name: str,
393
+ opts: Optional[pulumi.ResourceOptions] = None,
394
+ admission_policy: Optional[pulumi.Input[str]] = None,
395
+ bucket: Optional[pulumi.Input[str]] = None,
396
+ ttl: Optional[pulumi.Input[str]] = None,
397
+ zone: Optional[pulumi.Input[str]] = None,
398
+ __props__=None):
399
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
400
+ if not isinstance(opts, pulumi.ResourceOptions):
401
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
402
+ if opts.id is None:
403
+ if __props__ is not None:
404
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
405
+ __props__ = AnywhereCacheArgs.__new__(AnywhereCacheArgs)
406
+
407
+ __props__.__dict__["admission_policy"] = admission_policy
408
+ if bucket is None and not opts.urn:
409
+ raise TypeError("Missing required property 'bucket'")
410
+ __props__.__dict__["bucket"] = bucket
411
+ __props__.__dict__["ttl"] = ttl
412
+ if zone is None and not opts.urn:
413
+ raise TypeError("Missing required property 'zone'")
414
+ __props__.__dict__["zone"] = zone
415
+ __props__.__dict__["anywhere_cache_id"] = None
416
+ __props__.__dict__["create_time"] = None
417
+ __props__.__dict__["pending_update"] = None
418
+ __props__.__dict__["state"] = None
419
+ __props__.__dict__["update_time"] = None
420
+ super(AnywhereCache, __self__).__init__(
421
+ 'gcp:storage/anywhereCache:AnywhereCache',
422
+ resource_name,
423
+ __props__,
424
+ opts)
425
+
426
+ @staticmethod
427
+ def get(resource_name: str,
428
+ id: pulumi.Input[str],
429
+ opts: Optional[pulumi.ResourceOptions] = None,
430
+ admission_policy: Optional[pulumi.Input[str]] = None,
431
+ anywhere_cache_id: Optional[pulumi.Input[str]] = None,
432
+ bucket: Optional[pulumi.Input[str]] = None,
433
+ create_time: Optional[pulumi.Input[str]] = None,
434
+ pending_update: Optional[pulumi.Input[bool]] = None,
435
+ state: Optional[pulumi.Input[str]] = None,
436
+ ttl: Optional[pulumi.Input[str]] = None,
437
+ update_time: Optional[pulumi.Input[str]] = None,
438
+ zone: Optional[pulumi.Input[str]] = None) -> 'AnywhereCache':
439
+ """
440
+ Get an existing AnywhereCache resource's state with the given name, id, and optional extra
441
+ properties used to qualify the lookup.
442
+
443
+ :param str resource_name: The unique name of the resulting resource.
444
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
445
+ :param pulumi.ResourceOptions opts: Options for the resource.
446
+ :param pulumi.Input[str] admission_policy: The cache admission policy dictates whether a block should be inserted upon a cache miss.
447
+ Default value is `admit-on-first-miss`.
448
+ Possible values are: `admit-on-first-miss`, `admit-on-second-miss`.
449
+ :param pulumi.Input[str] anywhere_cache_id: The ID of the Anywhere cache instance.
450
+ :param pulumi.Input[str] bucket: A reference to Bucket resource
451
+
452
+
453
+ - - -
454
+ :param pulumi.Input[str] create_time: The creation time of the cache instance in RFC 3339 format.
455
+ :param pulumi.Input[bool] pending_update: True if the cache instance has an active Update long-running operation.
456
+ :param pulumi.Input[str] state: The current state of the cache instance.
457
+ :param pulumi.Input[str] ttl: The TTL of all cache entries in whole seconds. e.g., "7200s". It defaults to `86400s`
458
+ :param pulumi.Input[str] update_time: The modification time of the cache instance metadata in RFC 3339 format.
459
+ :param pulumi.Input[str] zone: The zone in which the cache instance needs to be created. For example, `us-central1-a.`
460
+ """
461
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
462
+
463
+ __props__ = _AnywhereCacheState.__new__(_AnywhereCacheState)
464
+
465
+ __props__.__dict__["admission_policy"] = admission_policy
466
+ __props__.__dict__["anywhere_cache_id"] = anywhere_cache_id
467
+ __props__.__dict__["bucket"] = bucket
468
+ __props__.__dict__["create_time"] = create_time
469
+ __props__.__dict__["pending_update"] = pending_update
470
+ __props__.__dict__["state"] = state
471
+ __props__.__dict__["ttl"] = ttl
472
+ __props__.__dict__["update_time"] = update_time
473
+ __props__.__dict__["zone"] = zone
474
+ return AnywhereCache(resource_name, opts=opts, __props__=__props__)
475
+
476
+ @property
477
+ @pulumi.getter(name="admissionPolicy")
478
+ def admission_policy(self) -> pulumi.Output[Optional[str]]:
479
+ """
480
+ The cache admission policy dictates whether a block should be inserted upon a cache miss.
481
+ Default value is `admit-on-first-miss`.
482
+ Possible values are: `admit-on-first-miss`, `admit-on-second-miss`.
483
+ """
484
+ return pulumi.get(self, "admission_policy")
485
+
486
+ @property
487
+ @pulumi.getter(name="anywhereCacheId")
488
+ def anywhere_cache_id(self) -> pulumi.Output[str]:
489
+ """
490
+ The ID of the Anywhere cache instance.
491
+ """
492
+ return pulumi.get(self, "anywhere_cache_id")
493
+
494
+ @property
495
+ @pulumi.getter
496
+ def bucket(self) -> pulumi.Output[str]:
497
+ """
498
+ A reference to Bucket resource
499
+
500
+
501
+ - - -
502
+ """
503
+ return pulumi.get(self, "bucket")
504
+
505
+ @property
506
+ @pulumi.getter(name="createTime")
507
+ def create_time(self) -> pulumi.Output[str]:
508
+ """
509
+ The creation time of the cache instance in RFC 3339 format.
510
+ """
511
+ return pulumi.get(self, "create_time")
512
+
513
+ @property
514
+ @pulumi.getter(name="pendingUpdate")
515
+ def pending_update(self) -> pulumi.Output[bool]:
516
+ """
517
+ True if the cache instance has an active Update long-running operation.
518
+ """
519
+ return pulumi.get(self, "pending_update")
520
+
521
+ @property
522
+ @pulumi.getter
523
+ def state(self) -> pulumi.Output[str]:
524
+ """
525
+ The current state of the cache instance.
526
+ """
527
+ return pulumi.get(self, "state")
528
+
529
+ @property
530
+ @pulumi.getter
531
+ def ttl(self) -> pulumi.Output[Optional[str]]:
532
+ """
533
+ The TTL of all cache entries in whole seconds. e.g., "7200s". It defaults to `86400s`
534
+ """
535
+ return pulumi.get(self, "ttl")
536
+
537
+ @property
538
+ @pulumi.getter(name="updateTime")
539
+ def update_time(self) -> pulumi.Output[str]:
540
+ """
541
+ The modification time of the cache instance metadata in RFC 3339 format.
542
+ """
543
+ return pulumi.get(self, "update_time")
544
+
545
+ @property
546
+ @pulumi.getter
547
+ def zone(self) -> pulumi.Output[str]:
548
+ """
549
+ The zone in which the cache instance needs to be created. For example, `us-central1-a.`
550
+ """
551
+ return pulumi.get(self, "zone")
552
+
@@ -46,6 +46,7 @@ __all__ = [
46
46
  'ObjectAccessControlProjectTeam',
47
47
  'TransferAgentPoolBandwidthLimit',
48
48
  'TransferJobEventStream',
49
+ 'TransferJobLoggingConfig',
49
50
  'TransferJobNotificationConfig',
50
51
  'TransferJobReplicationSpec',
51
52
  'TransferJobReplicationSpecGcsDataSink',
@@ -1665,6 +1666,70 @@ class TransferJobEventStream(dict):
1665
1666
  return pulumi.get(self, "event_stream_start_time")
1666
1667
 
1667
1668
 
1669
+ @pulumi.output_type
1670
+ class TransferJobLoggingConfig(dict):
1671
+ @staticmethod
1672
+ def __key_warning(key: str):
1673
+ suggest = None
1674
+ if key == "enableOnPremGcsTransferLogs":
1675
+ suggest = "enable_on_prem_gcs_transfer_logs"
1676
+ elif key == "logActionStates":
1677
+ suggest = "log_action_states"
1678
+ elif key == "logActions":
1679
+ suggest = "log_actions"
1680
+
1681
+ if suggest:
1682
+ pulumi.log.warn(f"Key '{key}' not found in TransferJobLoggingConfig. Access the value via the '{suggest}' property getter instead.")
1683
+
1684
+ def __getitem__(self, key: str) -> Any:
1685
+ TransferJobLoggingConfig.__key_warning(key)
1686
+ return super().__getitem__(key)
1687
+
1688
+ def get(self, key: str, default = None) -> Any:
1689
+ TransferJobLoggingConfig.__key_warning(key)
1690
+ return super().get(key, default)
1691
+
1692
+ def __init__(__self__, *,
1693
+ enable_on_prem_gcs_transfer_logs: Optional[bool] = None,
1694
+ log_action_states: Optional[Sequence[str]] = None,
1695
+ log_actions: Optional[Sequence[str]] = None):
1696
+ """
1697
+ :param bool enable_on_prem_gcs_transfer_logs: For transfers with a PosixFilesystem source, this option enables the Cloud Storage transfer logs for this transfer.
1698
+ :param Sequence[str] log_action_states: States in which logActions are logged. Not supported for transfers with PosifxFilesystem data sources; use enable_on_prem_gcs_transfer_logs instead.
1699
+ :param Sequence[str] log_actions: Specifies the actions to be logged. Not supported for transfers with PosifxFilesystem data sources; use enable_on_prem_gcs_transfer_logs instead.
1700
+ """
1701
+ if enable_on_prem_gcs_transfer_logs is not None:
1702
+ pulumi.set(__self__, "enable_on_prem_gcs_transfer_logs", enable_on_prem_gcs_transfer_logs)
1703
+ if log_action_states is not None:
1704
+ pulumi.set(__self__, "log_action_states", log_action_states)
1705
+ if log_actions is not None:
1706
+ pulumi.set(__self__, "log_actions", log_actions)
1707
+
1708
+ @property
1709
+ @pulumi.getter(name="enableOnPremGcsTransferLogs")
1710
+ def enable_on_prem_gcs_transfer_logs(self) -> Optional[bool]:
1711
+ """
1712
+ For transfers with a PosixFilesystem source, this option enables the Cloud Storage transfer logs for this transfer.
1713
+ """
1714
+ return pulumi.get(self, "enable_on_prem_gcs_transfer_logs")
1715
+
1716
+ @property
1717
+ @pulumi.getter(name="logActionStates")
1718
+ def log_action_states(self) -> Optional[Sequence[str]]:
1719
+ """
1720
+ States in which logActions are logged. Not supported for transfers with PosifxFilesystem data sources; use enable_on_prem_gcs_transfer_logs instead.
1721
+ """
1722
+ return pulumi.get(self, "log_action_states")
1723
+
1724
+ @property
1725
+ @pulumi.getter(name="logActions")
1726
+ def log_actions(self) -> Optional[Sequence[str]]:
1727
+ """
1728
+ Specifies the actions to be logged. Not supported for transfers with PosifxFilesystem data sources; use enable_on_prem_gcs_transfer_logs instead.
1729
+ """
1730
+ return pulumi.get(self, "log_actions")
1731
+
1732
+
1668
1733
  @pulumi.output_type
1669
1734
  class TransferJobNotificationConfig(dict):
1670
1735
  @staticmethod