pulumi-gcp 7.30.0__py3-none-any.whl → 7.30.0a1719513455__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.
- pulumi_gcp/__init__.py +0 -32
- pulumi_gcp/artifactregistry/get_docker_image.py +2 -2
- pulumi_gcp/bigtable/gc_policy.py +14 -68
- pulumi_gcp/cloudfunctionsv2/_inputs.py +0 -97
- pulumi_gcp/cloudfunctionsv2/function.py +0 -232
- pulumi_gcp/cloudfunctionsv2/outputs.py +1 -129
- pulumi_gcp/compute/_inputs.py +0 -622
- pulumi_gcp/compute/address.py +7 -0
- pulumi_gcp/compute/backend_service.py +14 -0
- pulumi_gcp/compute/forwarding_rule.py +21 -0
- pulumi_gcp/compute/global_forwarding_rule.py +21 -0
- pulumi_gcp/compute/managed_ssl_certificate.py +7 -0
- pulumi_gcp/compute/manged_ssl_certificate.py +7 -0
- pulumi_gcp/compute/network_attachment.py +0 -16
- pulumi_gcp/compute/outputs.py +8 -504
- pulumi_gcp/compute/region_backend_service.py +14 -0
- pulumi_gcp/compute/region_disk_iam_binding.py +95 -122
- pulumi_gcp/compute/region_disk_iam_member.py +95 -122
- pulumi_gcp/compute/region_disk_iam_policy.py +88 -115
- pulumi_gcp/compute/region_ssl_certificate.py +7 -0
- pulumi_gcp/compute/ssl_certificate.py +7 -0
- pulumi_gcp/compute/target_https_proxy.py +1 -76
- pulumi_gcp/compute/url_map.py +0 -255
- pulumi_gcp/container/aws_cluster.py +2 -2
- pulumi_gcp/container/aws_node_pool.py +2 -2
- pulumi_gcp/container/azure_client.py +2 -2
- pulumi_gcp/container/azure_cluster.py +2 -2
- pulumi_gcp/container/azure_node_pool.py +2 -2
- pulumi_gcp/datafusion/_inputs.py +11 -163
- pulumi_gcp/datafusion/instance.py +0 -64
- pulumi_gcp/datafusion/outputs.py +7 -127
- pulumi_gcp/gkebackup/restore_plan_iam_binding.py +953 -328
- pulumi_gcp/gkebackup/restore_plan_iam_member.py +953 -328
- pulumi_gcp/gkebackup/restore_plan_iam_policy.py +953 -238
- pulumi_gcp/healthcare/_inputs.py +0 -43
- pulumi_gcp/healthcare/dataset.py +0 -110
- pulumi_gcp/healthcare/outputs.py +0 -43
- pulumi_gcp/identityplatform/config.py +1 -1
- pulumi_gcp/logging/billing_account_bucket_config.py +1 -1
- pulumi_gcp/logging/folder_bucket_config.py +1 -1
- pulumi_gcp/logging/organization_bucket_config.py +1 -1
- pulumi_gcp/monitoring/_inputs.py +0 -77
- pulumi_gcp/monitoring/outputs.py +0 -63
- pulumi_gcp/networksecurity/address_group_iam_binding.py +2 -289
- pulumi_gcp/networksecurity/address_group_iam_member.py +2 -289
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/securitycenter/instance_iam_binding.py +0 -64
- pulumi_gcp/securitycenter/instance_iam_member.py +0 -64
- pulumi_gcp/securitycenter/instance_iam_policy.py +0 -64
- pulumi_gcp/sourcerepo/repository_iam_binding.py +83 -92
- pulumi_gcp/sourcerepo/repository_iam_member.py +83 -92
- pulumi_gcp/sourcerepo/repository_iam_policy.py +76 -85
- pulumi_gcp/storage/__init__.py +0 -5
- pulumi_gcp/storage/_inputs.py +0 -130
- pulumi_gcp/storage/outputs.py +0 -76
- pulumi_gcp/vertex/_inputs.py +3 -3
- pulumi_gcp/vertex/ai_feature_online_store.py +9 -9
- pulumi_gcp/vertex/outputs.py +2 -2
- {pulumi_gcp-7.30.0.dist-info → pulumi_gcp-7.30.0a1719513455.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.30.0.dist-info → pulumi_gcp-7.30.0a1719513455.dist-info}/RECORD +62 -67
- {pulumi_gcp-7.30.0.dist-info → pulumi_gcp-7.30.0a1719513455.dist-info}/WHEEL +1 -1
- pulumi_gcp/storage/get_managed_folder_iam_policy.py +0 -115
- pulumi_gcp/storage/managed_folder.py +0 -440
- pulumi_gcp/storage/managed_folder_iam_binding.py +0 -947
- pulumi_gcp/storage/managed_folder_iam_member.py +0 -947
- pulumi_gcp/storage/managed_folder_iam_policy.py +0 -766
- {pulumi_gcp-7.30.0.dist-info → pulumi_gcp-7.30.0a1719513455.dist-info}/top_level.txt +0 -0
@@ -235,38 +235,6 @@ class InstanceIamPolicy(pulumi.CustomResource):
|
|
235
235
|
"state": "ENABLED",
|
236
236
|
}])
|
237
237
|
```
|
238
|
-
### Data Fusion Instance Psc
|
239
|
-
|
240
|
-
```python
|
241
|
-
import pulumi
|
242
|
-
import pulumi_gcp as gcp
|
243
|
-
|
244
|
-
psc = gcp.compute.Network("psc",
|
245
|
-
name="datafusion-psc-network",
|
246
|
-
auto_create_subnetworks=False)
|
247
|
-
psc_subnetwork = gcp.compute.Subnetwork("psc",
|
248
|
-
name="datafusion-psc-subnet",
|
249
|
-
region="us-central1",
|
250
|
-
network=psc.id,
|
251
|
-
ip_cidr_range="10.0.0.0/16")
|
252
|
-
psc_network_attachment = gcp.compute.NetworkAttachment("psc",
|
253
|
-
name="datafusion-psc-attachment",
|
254
|
-
region="us-central1",
|
255
|
-
connection_preference="ACCEPT_AUTOMATIC",
|
256
|
-
subnetworks=[psc_subnetwork.self_link])
|
257
|
-
psc_instance = gcp.datafusion.Instance("psc_instance",
|
258
|
-
name="psc-instance",
|
259
|
-
region="us-central1",
|
260
|
-
type="BASIC",
|
261
|
-
private_instance=True,
|
262
|
-
network_config={
|
263
|
-
"connectionType": "PRIVATE_SERVICE_CONNECT_INTERFACES",
|
264
|
-
"privateServiceConnectConfig": {
|
265
|
-
"networkAttachment": psc_network_attachment.id,
|
266
|
-
"unreachableCidrBlock": "192.168.0.0/25",
|
267
|
-
},
|
268
|
-
})
|
269
|
-
```
|
270
238
|
### Data Fusion Instance Cmek
|
271
239
|
|
272
240
|
```python
|
@@ -435,38 +403,6 @@ class InstanceIamPolicy(pulumi.CustomResource):
|
|
435
403
|
"state": "ENABLED",
|
436
404
|
}])
|
437
405
|
```
|
438
|
-
### Data Fusion Instance Psc
|
439
|
-
|
440
|
-
```python
|
441
|
-
import pulumi
|
442
|
-
import pulumi_gcp as gcp
|
443
|
-
|
444
|
-
psc = gcp.compute.Network("psc",
|
445
|
-
name="datafusion-psc-network",
|
446
|
-
auto_create_subnetworks=False)
|
447
|
-
psc_subnetwork = gcp.compute.Subnetwork("psc",
|
448
|
-
name="datafusion-psc-subnet",
|
449
|
-
region="us-central1",
|
450
|
-
network=psc.id,
|
451
|
-
ip_cidr_range="10.0.0.0/16")
|
452
|
-
psc_network_attachment = gcp.compute.NetworkAttachment("psc",
|
453
|
-
name="datafusion-psc-attachment",
|
454
|
-
region="us-central1",
|
455
|
-
connection_preference="ACCEPT_AUTOMATIC",
|
456
|
-
subnetworks=[psc_subnetwork.self_link])
|
457
|
-
psc_instance = gcp.datafusion.Instance("psc_instance",
|
458
|
-
name="psc-instance",
|
459
|
-
region="us-central1",
|
460
|
-
type="BASIC",
|
461
|
-
private_instance=True,
|
462
|
-
network_config={
|
463
|
-
"connectionType": "PRIVATE_SERVICE_CONNECT_INTERFACES",
|
464
|
-
"privateServiceConnectConfig": {
|
465
|
-
"networkAttachment": psc_network_attachment.id,
|
466
|
-
"unreachableCidrBlock": "192.168.0.0/25",
|
467
|
-
},
|
468
|
-
})
|
469
|
-
```
|
470
406
|
### Data Fusion Instance Cmek
|
471
407
|
|
472
408
|
```python
|
@@ -39,9 +39,8 @@ class RepositoryIamBindingArgs:
|
|
39
39
|
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
40
40
|
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
41
41
|
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
42
|
-
:param pulumi.Input[str] repository: Used to find the parent resource to bind the IAM policy to
|
43
42
|
:param pulumi.Input[str] role: The role that should be applied. Only one
|
44
|
-
`
|
43
|
+
`pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format
|
45
44
|
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
46
45
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
47
46
|
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
@@ -79,9 +78,6 @@ class RepositoryIamBindingArgs:
|
|
79
78
|
@property
|
80
79
|
@pulumi.getter
|
81
80
|
def repository(self) -> pulumi.Input[str]:
|
82
|
-
"""
|
83
|
-
Used to find the parent resource to bind the IAM policy to
|
84
|
-
"""
|
85
81
|
return pulumi.get(self, "repository")
|
86
82
|
|
87
83
|
@repository.setter
|
@@ -93,7 +89,7 @@ class RepositoryIamBindingArgs:
|
|
93
89
|
def role(self) -> pulumi.Input[str]:
|
94
90
|
"""
|
95
91
|
The role that should be applied. Only one
|
96
|
-
`
|
92
|
+
`pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format
|
97
93
|
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
98
94
|
"""
|
99
95
|
return pulumi.get(self, "role")
|
@@ -150,9 +146,8 @@ class _RepositoryIamBindingState:
|
|
150
146
|
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
151
147
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
152
148
|
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
153
|
-
:param pulumi.Input[str] repository: Used to find the parent resource to bind the IAM policy to
|
154
149
|
:param pulumi.Input[str] role: The role that should be applied. Only one
|
155
|
-
`
|
150
|
+
`pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format
|
156
151
|
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
157
152
|
"""
|
158
153
|
if condition is not None:
|
@@ -227,9 +222,6 @@ class _RepositoryIamBindingState:
|
|
227
222
|
@property
|
228
223
|
@pulumi.getter
|
229
224
|
def repository(self) -> Optional[pulumi.Input[str]]:
|
230
|
-
"""
|
231
|
-
Used to find the parent resource to bind the IAM policy to
|
232
|
-
"""
|
233
225
|
return pulumi.get(self, "repository")
|
234
226
|
|
235
227
|
@repository.setter
|
@@ -241,7 +233,7 @@ class _RepositoryIamBindingState:
|
|
241
233
|
def role(self) -> Optional[pulumi.Input[str]]:
|
242
234
|
"""
|
243
235
|
The role that should be applied. Only one
|
244
|
-
`
|
236
|
+
`pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format
|
245
237
|
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
246
238
|
"""
|
247
239
|
return pulumi.get(self, "role")
|
@@ -263,21 +255,21 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
263
255
|
role: Optional[pulumi.Input[str]] = None,
|
264
256
|
__props__=None):
|
265
257
|
"""
|
266
|
-
Three different resources help you manage your IAM policy for Cloud
|
258
|
+
Three different resources help you manage your IAM policy for Cloud Pub/Sub Topic. Each of these resources serves a different use case:
|
267
259
|
|
268
|
-
* `
|
269
|
-
* `
|
270
|
-
* `
|
260
|
+
* `pubsub.TopicIAMPolicy`: Authoritative. Sets the IAM policy for the topic and replaces any existing policy already attached.
|
261
|
+
* `pubsub.TopicIAMBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the topic are preserved.
|
262
|
+
* `pubsub.TopicIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the topic are preserved.
|
271
263
|
|
272
264
|
A data source can be used to retrieve policy data in advent you do not need creation
|
273
265
|
|
274
|
-
* `
|
266
|
+
* `pubsub.TopicIAMPolicy`: Retrieves the IAM policy for the topic
|
275
267
|
|
276
|
-
> **Note:** `
|
268
|
+
> **Note:** `pubsub.TopicIAMPolicy` **cannot** be used in conjunction with `pubsub.TopicIAMBinding` and `pubsub.TopicIAMMember` or they will fight over what your policy should be.
|
277
269
|
|
278
|
-
> **Note:** `
|
270
|
+
> **Note:** `pubsub.TopicIAMBinding` resources **can be** used in conjunction with `pubsub.TopicIAMMember` resources **only if** they do not grant privilege to the same role.
|
279
271
|
|
280
|
-
##
|
272
|
+
## pubsub.TopicIAMPolicy
|
281
273
|
|
282
274
|
```python
|
283
275
|
import pulumi
|
@@ -287,39 +279,39 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
287
279
|
"role": "roles/viewer",
|
288
280
|
"members": ["user:jane@example.com"],
|
289
281
|
}])
|
290
|
-
policy = gcp.
|
291
|
-
project=
|
292
|
-
|
282
|
+
policy = gcp.pubsub.TopicIAMPolicy("policy",
|
283
|
+
project=example["project"],
|
284
|
+
topic=example["name"],
|
293
285
|
policy_data=admin.policy_data)
|
294
286
|
```
|
295
287
|
|
296
|
-
##
|
288
|
+
## pubsub.TopicIAMBinding
|
297
289
|
|
298
290
|
```python
|
299
291
|
import pulumi
|
300
292
|
import pulumi_gcp as gcp
|
301
293
|
|
302
|
-
binding = gcp.
|
303
|
-
project=
|
304
|
-
|
294
|
+
binding = gcp.pubsub.TopicIAMBinding("binding",
|
295
|
+
project=example["project"],
|
296
|
+
topic=example["name"],
|
305
297
|
role="roles/viewer",
|
306
298
|
members=["user:jane@example.com"])
|
307
299
|
```
|
308
300
|
|
309
|
-
##
|
301
|
+
## pubsub.TopicIAMMember
|
310
302
|
|
311
303
|
```python
|
312
304
|
import pulumi
|
313
305
|
import pulumi_gcp as gcp
|
314
306
|
|
315
|
-
member = gcp.
|
316
|
-
project=
|
317
|
-
|
307
|
+
member = gcp.pubsub.TopicIAMMember("member",
|
308
|
+
project=example["project"],
|
309
|
+
topic=example["name"],
|
318
310
|
role="roles/viewer",
|
319
311
|
member="user:jane@example.com")
|
320
312
|
```
|
321
313
|
|
322
|
-
##
|
314
|
+
## pubsub.TopicIAMPolicy
|
323
315
|
|
324
316
|
```python
|
325
317
|
import pulumi
|
@@ -329,34 +321,34 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
329
321
|
"role": "roles/viewer",
|
330
322
|
"members": ["user:jane@example.com"],
|
331
323
|
}])
|
332
|
-
policy = gcp.
|
333
|
-
project=
|
334
|
-
|
324
|
+
policy = gcp.pubsub.TopicIAMPolicy("policy",
|
325
|
+
project=example["project"],
|
326
|
+
topic=example["name"],
|
335
327
|
policy_data=admin.policy_data)
|
336
328
|
```
|
337
329
|
|
338
|
-
##
|
330
|
+
## pubsub.TopicIAMBinding
|
339
331
|
|
340
332
|
```python
|
341
333
|
import pulumi
|
342
334
|
import pulumi_gcp as gcp
|
343
335
|
|
344
|
-
binding = gcp.
|
345
|
-
project=
|
346
|
-
|
336
|
+
binding = gcp.pubsub.TopicIAMBinding("binding",
|
337
|
+
project=example["project"],
|
338
|
+
topic=example["name"],
|
347
339
|
role="roles/viewer",
|
348
340
|
members=["user:jane@example.com"])
|
349
341
|
```
|
350
342
|
|
351
|
-
##
|
343
|
+
## pubsub.TopicIAMMember
|
352
344
|
|
353
345
|
```python
|
354
346
|
import pulumi
|
355
347
|
import pulumi_gcp as gcp
|
356
348
|
|
357
|
-
member = gcp.
|
358
|
-
project=
|
359
|
-
|
349
|
+
member = gcp.pubsub.TopicIAMMember("member",
|
350
|
+
project=example["project"],
|
351
|
+
topic=example["name"],
|
360
352
|
role="roles/viewer",
|
361
353
|
member="user:jane@example.com")
|
362
354
|
```
|
@@ -365,30 +357,32 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
365
357
|
|
366
358
|
For all import syntaxes, the "resource in question" can take any of the following forms:
|
367
359
|
|
368
|
-
* projects/{{project}}/
|
360
|
+
* projects/{{project}}/topics/{{name}}
|
361
|
+
|
362
|
+
* {{project}}/{{name}}
|
369
363
|
|
370
364
|
* {{name}}
|
371
365
|
|
372
366
|
Any variables not passed in the import command will be taken from the provider configuration.
|
373
367
|
|
374
|
-
Cloud
|
368
|
+
Cloud Pub/Sub topic IAM resources can be imported using the resource identifiers, role, and member.
|
375
369
|
|
376
370
|
IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
|
377
371
|
|
378
372
|
```sh
|
379
|
-
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/
|
373
|
+
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/topics/{{topic}} roles/viewer user:jane@example.com"
|
380
374
|
```
|
381
375
|
|
382
376
|
IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
|
383
377
|
|
384
378
|
```sh
|
385
|
-
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/
|
379
|
+
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/topics/{{topic}} roles/viewer"
|
386
380
|
```
|
387
381
|
|
388
382
|
IAM policy imports use the identifier of the resource in question, e.g.
|
389
383
|
|
390
384
|
```sh
|
391
|
-
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor projects/{{project}}/
|
385
|
+
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor projects/{{project}}/topics/{{topic}}
|
392
386
|
```
|
393
387
|
|
394
388
|
-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
|
@@ -410,9 +404,8 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
410
404
|
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
411
405
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
412
406
|
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
413
|
-
:param pulumi.Input[str] repository: Used to find the parent resource to bind the IAM policy to
|
414
407
|
:param pulumi.Input[str] role: The role that should be applied. Only one
|
415
|
-
`
|
408
|
+
`pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format
|
416
409
|
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
417
410
|
"""
|
418
411
|
...
|
@@ -422,21 +415,21 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
422
415
|
args: RepositoryIamBindingArgs,
|
423
416
|
opts: Optional[pulumi.ResourceOptions] = None):
|
424
417
|
"""
|
425
|
-
Three different resources help you manage your IAM policy for Cloud
|
418
|
+
Three different resources help you manage your IAM policy for Cloud Pub/Sub Topic. Each of these resources serves a different use case:
|
426
419
|
|
427
|
-
* `
|
428
|
-
* `
|
429
|
-
* `
|
420
|
+
* `pubsub.TopicIAMPolicy`: Authoritative. Sets the IAM policy for the topic and replaces any existing policy already attached.
|
421
|
+
* `pubsub.TopicIAMBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the topic are preserved.
|
422
|
+
* `pubsub.TopicIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the topic are preserved.
|
430
423
|
|
431
424
|
A data source can be used to retrieve policy data in advent you do not need creation
|
432
425
|
|
433
|
-
* `
|
426
|
+
* `pubsub.TopicIAMPolicy`: Retrieves the IAM policy for the topic
|
434
427
|
|
435
|
-
> **Note:** `
|
428
|
+
> **Note:** `pubsub.TopicIAMPolicy` **cannot** be used in conjunction with `pubsub.TopicIAMBinding` and `pubsub.TopicIAMMember` or they will fight over what your policy should be.
|
436
429
|
|
437
|
-
> **Note:** `
|
430
|
+
> **Note:** `pubsub.TopicIAMBinding` resources **can be** used in conjunction with `pubsub.TopicIAMMember` resources **only if** they do not grant privilege to the same role.
|
438
431
|
|
439
|
-
##
|
432
|
+
## pubsub.TopicIAMPolicy
|
440
433
|
|
441
434
|
```python
|
442
435
|
import pulumi
|
@@ -446,39 +439,39 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
446
439
|
"role": "roles/viewer",
|
447
440
|
"members": ["user:jane@example.com"],
|
448
441
|
}])
|
449
|
-
policy = gcp.
|
450
|
-
project=
|
451
|
-
|
442
|
+
policy = gcp.pubsub.TopicIAMPolicy("policy",
|
443
|
+
project=example["project"],
|
444
|
+
topic=example["name"],
|
452
445
|
policy_data=admin.policy_data)
|
453
446
|
```
|
454
447
|
|
455
|
-
##
|
448
|
+
## pubsub.TopicIAMBinding
|
456
449
|
|
457
450
|
```python
|
458
451
|
import pulumi
|
459
452
|
import pulumi_gcp as gcp
|
460
453
|
|
461
|
-
binding = gcp.
|
462
|
-
project=
|
463
|
-
|
454
|
+
binding = gcp.pubsub.TopicIAMBinding("binding",
|
455
|
+
project=example["project"],
|
456
|
+
topic=example["name"],
|
464
457
|
role="roles/viewer",
|
465
458
|
members=["user:jane@example.com"])
|
466
459
|
```
|
467
460
|
|
468
|
-
##
|
461
|
+
## pubsub.TopicIAMMember
|
469
462
|
|
470
463
|
```python
|
471
464
|
import pulumi
|
472
465
|
import pulumi_gcp as gcp
|
473
466
|
|
474
|
-
member = gcp.
|
475
|
-
project=
|
476
|
-
|
467
|
+
member = gcp.pubsub.TopicIAMMember("member",
|
468
|
+
project=example["project"],
|
469
|
+
topic=example["name"],
|
477
470
|
role="roles/viewer",
|
478
471
|
member="user:jane@example.com")
|
479
472
|
```
|
480
473
|
|
481
|
-
##
|
474
|
+
## pubsub.TopicIAMPolicy
|
482
475
|
|
483
476
|
```python
|
484
477
|
import pulumi
|
@@ -488,34 +481,34 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
488
481
|
"role": "roles/viewer",
|
489
482
|
"members": ["user:jane@example.com"],
|
490
483
|
}])
|
491
|
-
policy = gcp.
|
492
|
-
project=
|
493
|
-
|
484
|
+
policy = gcp.pubsub.TopicIAMPolicy("policy",
|
485
|
+
project=example["project"],
|
486
|
+
topic=example["name"],
|
494
487
|
policy_data=admin.policy_data)
|
495
488
|
```
|
496
489
|
|
497
|
-
##
|
490
|
+
## pubsub.TopicIAMBinding
|
498
491
|
|
499
492
|
```python
|
500
493
|
import pulumi
|
501
494
|
import pulumi_gcp as gcp
|
502
495
|
|
503
|
-
binding = gcp.
|
504
|
-
project=
|
505
|
-
|
496
|
+
binding = gcp.pubsub.TopicIAMBinding("binding",
|
497
|
+
project=example["project"],
|
498
|
+
topic=example["name"],
|
506
499
|
role="roles/viewer",
|
507
500
|
members=["user:jane@example.com"])
|
508
501
|
```
|
509
502
|
|
510
|
-
##
|
503
|
+
## pubsub.TopicIAMMember
|
511
504
|
|
512
505
|
```python
|
513
506
|
import pulumi
|
514
507
|
import pulumi_gcp as gcp
|
515
508
|
|
516
|
-
member = gcp.
|
517
|
-
project=
|
518
|
-
|
509
|
+
member = gcp.pubsub.TopicIAMMember("member",
|
510
|
+
project=example["project"],
|
511
|
+
topic=example["name"],
|
519
512
|
role="roles/viewer",
|
520
513
|
member="user:jane@example.com")
|
521
514
|
```
|
@@ -524,30 +517,32 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
524
517
|
|
525
518
|
For all import syntaxes, the "resource in question" can take any of the following forms:
|
526
519
|
|
527
|
-
* projects/{{project}}/
|
520
|
+
* projects/{{project}}/topics/{{name}}
|
521
|
+
|
522
|
+
* {{project}}/{{name}}
|
528
523
|
|
529
524
|
* {{name}}
|
530
525
|
|
531
526
|
Any variables not passed in the import command will be taken from the provider configuration.
|
532
527
|
|
533
|
-
Cloud
|
528
|
+
Cloud Pub/Sub topic IAM resources can be imported using the resource identifiers, role, and member.
|
534
529
|
|
535
530
|
IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
|
536
531
|
|
537
532
|
```sh
|
538
|
-
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/
|
533
|
+
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/topics/{{topic}} roles/viewer user:jane@example.com"
|
539
534
|
```
|
540
535
|
|
541
536
|
IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
|
542
537
|
|
543
538
|
```sh
|
544
|
-
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/
|
539
|
+
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/topics/{{topic}} roles/viewer"
|
545
540
|
```
|
546
541
|
|
547
542
|
IAM policy imports use the identifier of the resource in question, e.g.
|
548
543
|
|
549
544
|
```sh
|
550
|
-
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor projects/{{project}}/
|
545
|
+
$ pulumi import gcp:sourcerepo/repositoryIamBinding:RepositoryIamBinding editor projects/{{project}}/topics/{{topic}}
|
551
546
|
```
|
552
547
|
|
553
548
|
-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
|
@@ -632,9 +627,8 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
632
627
|
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
633
628
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
634
629
|
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
635
|
-
:param pulumi.Input[str] repository: Used to find the parent resource to bind the IAM policy to
|
636
630
|
:param pulumi.Input[str] role: The role that should be applied. Only one
|
637
|
-
`
|
631
|
+
`pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format
|
638
632
|
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
639
633
|
"""
|
640
634
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
@@ -692,9 +686,6 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
692
686
|
@property
|
693
687
|
@pulumi.getter
|
694
688
|
def repository(self) -> pulumi.Output[str]:
|
695
|
-
"""
|
696
|
-
Used to find the parent resource to bind the IAM policy to
|
697
|
-
"""
|
698
689
|
return pulumi.get(self, "repository")
|
699
690
|
|
700
691
|
@property
|
@@ -702,7 +693,7 @@ class RepositoryIamBinding(pulumi.CustomResource):
|
|
702
693
|
def role(self) -> pulumi.Output[str]:
|
703
694
|
"""
|
704
695
|
The role that should be applied. Only one
|
705
|
-
`
|
696
|
+
`pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format
|
706
697
|
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
707
698
|
"""
|
708
699
|
return pulumi.get(self, "role")
|