pulumi-gcp 7.31.0a1720765508__py3-none-any.whl → 7.31.0a1721039192__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 +40 -0
- pulumi_gcp/applicationintegration/auth_config.py +2 -2
- pulumi_gcp/bigquery/reservation_assignment.py +48 -30
- pulumi_gcp/certificateauthority/certificate_template.py +2 -2
- pulumi_gcp/certificatemanager/_inputs.py +33 -0
- pulumi_gcp/certificatemanager/outputs.py +36 -0
- pulumi_gcp/certificatemanager/trust_config.py +107 -0
- pulumi_gcp/compute/_inputs.py +3 -6
- pulumi_gcp/compute/ca_external_account_key.py +2 -2
- pulumi_gcp/compute/get_health_check.py +11 -1
- pulumi_gcp/compute/global_forwarding_rule.py +2 -4
- pulumi_gcp/compute/health_check.py +124 -0
- pulumi_gcp/compute/instance.py +14 -14
- pulumi_gcp/compute/instance_group_membership.py +2 -2
- pulumi_gcp/compute/outputs.py +4 -8
- pulumi_gcp/compute/region_network_endpoint.py +2 -2
- pulumi_gcp/compute/region_network_endpoint_group.py +2 -2
- pulumi_gcp/compute/subnetwork.py +2 -2
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +3 -3
- pulumi_gcp/container/outputs.py +4 -4
- pulumi_gcp/containeranalysis/note.py +2 -2
- pulumi_gcp/dataloss/_inputs.py +3 -0
- pulumi_gcp/dataloss/outputs.py +2 -0
- pulumi_gcp/dataloss/prevention_job_trigger.py +90 -0
- pulumi_gcp/dataplex/_inputs.py +56 -0
- pulumi_gcp/dataplex/datascan.py +12 -0
- pulumi_gcp/dataplex/outputs.py +52 -0
- pulumi_gcp/filestore/backup.py +2 -2
- pulumi_gcp/filestore/instance.py +2 -2
- pulumi_gcp/filestore/snapshot.py +2 -2
- pulumi_gcp/gkehub/_inputs.py +20 -0
- pulumi_gcp/gkehub/outputs.py +12 -0
- pulumi_gcp/kms/__init__.py +2 -0
- pulumi_gcp/kms/crypto_key.py +7 -7
- pulumi_gcp/kms/get_crypto_keys.py +143 -0
- pulumi_gcp/kms/get_key_rings.py +119 -0
- pulumi_gcp/kms/outputs.py +270 -0
- pulumi_gcp/logging/_inputs.py +12 -12
- pulumi_gcp/logging/folder_bucket_config.py +6 -6
- pulumi_gcp/logging/organization_bucket_config.py +6 -6
- pulumi_gcp/logging/outputs.py +8 -8
- pulumi_gcp/logging/project_bucket_config.py +6 -6
- pulumi_gcp/looker/instance.py +2 -2
- pulumi_gcp/monitoring/custom_service.py +2 -2
- pulumi_gcp/monitoring/generic_service.py +2 -2
- pulumi_gcp/monitoring/notification_channel.py +2 -2
- pulumi_gcp/monitoring/slo.py +2 -2
- pulumi_gcp/netapp/storage_pool.py +132 -53
- pulumi_gcp/netapp/volume.py +60 -4
- pulumi_gcp/networksecurity/address_group.py +85 -1
- pulumi_gcp/networksecurity/firewall_endpoint.py +2 -2
- pulumi_gcp/networksecurity/firewall_endpoint_association.py +2 -2
- pulumi_gcp/networksecurity/security_profile_group.py +2 -2
- pulumi_gcp/orgpolicy/_inputs.py +40 -10
- pulumi_gcp/orgpolicy/outputs.py +28 -8
- pulumi_gcp/orgpolicy/policy.py +52 -35
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/_inputs.py +3 -3
- pulumi_gcp/pubsub/outputs.py +4 -4
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/securesourcemanager/__init__.py +5 -0
- pulumi_gcp/securesourcemanager/_inputs.py +284 -0
- pulumi_gcp/securesourcemanager/get_repository_iam_policy.py +177 -0
- pulumi_gcp/securesourcemanager/outputs.py +202 -0
- pulumi_gcp/securesourcemanager/repository.py +715 -0
- pulumi_gcp/securesourcemanager/repository_iam_binding.py +804 -0
- pulumi_gcp/securesourcemanager/repository_iam_member.py +804 -0
- pulumi_gcp/securesourcemanager/repository_iam_policy.py +643 -0
- pulumi_gcp/securitycenter/__init__.py +1 -0
- pulumi_gcp/securitycenter/_inputs.py +93 -0
- pulumi_gcp/securitycenter/outputs.py +59 -0
- pulumi_gcp/securitycenter/v2_organization_notification_config.py +576 -0
- pulumi_gcp/securityposture/posture_deployment.py +0 -78
- pulumi_gcp/servicenetworking/vpc_service_controls.py +2 -2
- pulumi_gcp/vertex/_inputs.py +21 -1
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +222 -0
- pulumi_gcp/vertex/outputs.py +15 -1
- pulumi_gcp/workstations/_inputs.py +33 -1
- pulumi_gcp/workstations/outputs.py +23 -1
- pulumi_gcp/workstations/workstation_config.py +18 -0
- {pulumi_gcp-7.31.0a1720765508.dist-info → pulumi_gcp-7.31.0a1721039192.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.31.0a1720765508.dist-info → pulumi_gcp-7.31.0a1721039192.dist-info}/RECORD +86 -78
- {pulumi_gcp-7.31.0a1720765508.dist-info → pulumi_gcp-7.31.0a1721039192.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.31.0a1720765508.dist-info → pulumi_gcp-7.31.0a1721039192.dist-info}/top_level.txt +0 -0
@@ -26,7 +26,8 @@ class AddressGroupArgs:
|
|
26
26
|
items: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
27
27
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
28
28
|
name: Optional[pulumi.Input[str]] = None,
|
29
|
-
parent: Optional[pulumi.Input[str]] = None
|
29
|
+
parent: Optional[pulumi.Input[str]] = None,
|
30
|
+
purposes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
30
31
|
"""
|
31
32
|
The set of arguments for constructing a AddressGroup resource.
|
32
33
|
:param pulumi.Input[int] capacity: Capacity of the Address Group.
|
@@ -46,6 +47,8 @@ class AddressGroupArgs:
|
|
46
47
|
Please refer to the field `effective_labels` for all of the labels present on the resource.
|
47
48
|
:param pulumi.Input[str] name: Name of the AddressGroup resource.
|
48
49
|
:param pulumi.Input[str] parent: The name of the parent this address group belongs to. Format: organizations/{organization_id} or projects/{project_id}.
|
50
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] purposes: List of supported purposes of the Address Group.
|
51
|
+
Each value may be one of: `DEFAULT`, `CLOUD_ARMOR`.
|
49
52
|
"""
|
50
53
|
pulumi.set(__self__, "capacity", capacity)
|
51
54
|
pulumi.set(__self__, "location", location)
|
@@ -60,6 +63,8 @@ class AddressGroupArgs:
|
|
60
63
|
pulumi.set(__self__, "name", name)
|
61
64
|
if parent is not None:
|
62
65
|
pulumi.set(__self__, "parent", parent)
|
66
|
+
if purposes is not None:
|
67
|
+
pulumi.set(__self__, "purposes", purposes)
|
63
68
|
|
64
69
|
@property
|
65
70
|
@pulumi.getter
|
@@ -166,6 +171,19 @@ class AddressGroupArgs:
|
|
166
171
|
def parent(self, value: Optional[pulumi.Input[str]]):
|
167
172
|
pulumi.set(self, "parent", value)
|
168
173
|
|
174
|
+
@property
|
175
|
+
@pulumi.getter
|
176
|
+
def purposes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
177
|
+
"""
|
178
|
+
List of supported purposes of the Address Group.
|
179
|
+
Each value may be one of: `DEFAULT`, `CLOUD_ARMOR`.
|
180
|
+
"""
|
181
|
+
return pulumi.get(self, "purposes")
|
182
|
+
|
183
|
+
@purposes.setter
|
184
|
+
def purposes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
185
|
+
pulumi.set(self, "purposes", value)
|
186
|
+
|
169
187
|
|
170
188
|
@pulumi.input_type
|
171
189
|
class _AddressGroupState:
|
@@ -180,6 +198,7 @@ class _AddressGroupState:
|
|
180
198
|
name: Optional[pulumi.Input[str]] = None,
|
181
199
|
parent: Optional[pulumi.Input[str]] = None,
|
182
200
|
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
201
|
+
purposes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
183
202
|
type: Optional[pulumi.Input[str]] = None,
|
184
203
|
update_time: Optional[pulumi.Input[str]] = None):
|
185
204
|
"""
|
@@ -205,6 +224,8 @@ class _AddressGroupState:
|
|
205
224
|
:param pulumi.Input[str] parent: The name of the parent this address group belongs to. Format: organizations/{organization_id} or projects/{project_id}.
|
206
225
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
|
207
226
|
and default labels configured on the provider.
|
227
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] purposes: List of supported purposes of the Address Group.
|
228
|
+
Each value may be one of: `DEFAULT`, `CLOUD_ARMOR`.
|
208
229
|
:param pulumi.Input[str] type: The type of the Address Group. Possible values are "IPV4" or "IPV6".
|
209
230
|
Possible values are: `IPV4`, `IPV6`.
|
210
231
|
:param pulumi.Input[str] update_time: The timestamp when the resource was updated.
|
@@ -231,6 +252,8 @@ class _AddressGroupState:
|
|
231
252
|
pulumi.set(__self__, "parent", parent)
|
232
253
|
if pulumi_labels is not None:
|
233
254
|
pulumi.set(__self__, "pulumi_labels", pulumi_labels)
|
255
|
+
if purposes is not None:
|
256
|
+
pulumi.set(__self__, "purposes", purposes)
|
234
257
|
if type is not None:
|
235
258
|
pulumi.set(__self__, "type", type)
|
236
259
|
if update_time is not None:
|
@@ -367,6 +390,19 @@ class _AddressGroupState:
|
|
367
390
|
def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
368
391
|
pulumi.set(self, "pulumi_labels", value)
|
369
392
|
|
393
|
+
@property
|
394
|
+
@pulumi.getter
|
395
|
+
def purposes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
396
|
+
"""
|
397
|
+
List of supported purposes of the Address Group.
|
398
|
+
Each value may be one of: `DEFAULT`, `CLOUD_ARMOR`.
|
399
|
+
"""
|
400
|
+
return pulumi.get(self, "purposes")
|
401
|
+
|
402
|
+
@purposes.setter
|
403
|
+
def purposes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
404
|
+
pulumi.set(self, "purposes", value)
|
405
|
+
|
370
406
|
@property
|
371
407
|
@pulumi.getter
|
372
408
|
def type(self) -> Optional[pulumi.Input[str]]:
|
@@ -407,6 +443,7 @@ class AddressGroup(pulumi.CustomResource):
|
|
407
443
|
location: Optional[pulumi.Input[str]] = None,
|
408
444
|
name: Optional[pulumi.Input[str]] = None,
|
409
445
|
parent: Optional[pulumi.Input[str]] = None,
|
446
|
+
purposes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
410
447
|
type: Optional[pulumi.Input[str]] = None,
|
411
448
|
__props__=None):
|
412
449
|
"""
|
@@ -463,6 +500,21 @@ class AddressGroup(pulumi.CustomResource):
|
|
463
500
|
capacity=100,
|
464
501
|
items=["208.80.154.224/32"])
|
465
502
|
```
|
503
|
+
### Network Security Address Groups Cloud Armor
|
504
|
+
|
505
|
+
```python
|
506
|
+
import pulumi
|
507
|
+
import pulumi_gcp as gcp
|
508
|
+
|
509
|
+
default = gcp.networksecurity.AddressGroup("default",
|
510
|
+
name="my-address-groups",
|
511
|
+
parent="projects/my-project-name",
|
512
|
+
location="global",
|
513
|
+
type="IPV4",
|
514
|
+
capacity=100,
|
515
|
+
purposes=["CLOUD_ARMOR"],
|
516
|
+
items=["208.80.154.224/32"])
|
517
|
+
```
|
466
518
|
|
467
519
|
## Import
|
468
520
|
|
@@ -493,6 +545,8 @@ class AddressGroup(pulumi.CustomResource):
|
|
493
545
|
- - -
|
494
546
|
:param pulumi.Input[str] name: Name of the AddressGroup resource.
|
495
547
|
:param pulumi.Input[str] parent: The name of the parent this address group belongs to. Format: organizations/{organization_id} or projects/{project_id}.
|
548
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] purposes: List of supported purposes of the Address Group.
|
549
|
+
Each value may be one of: `DEFAULT`, `CLOUD_ARMOR`.
|
496
550
|
:param pulumi.Input[str] type: The type of the Address Group. Possible values are "IPV4" or "IPV6".
|
497
551
|
Possible values are: `IPV4`, `IPV6`.
|
498
552
|
"""
|
@@ -556,6 +610,21 @@ class AddressGroup(pulumi.CustomResource):
|
|
556
610
|
capacity=100,
|
557
611
|
items=["208.80.154.224/32"])
|
558
612
|
```
|
613
|
+
### Network Security Address Groups Cloud Armor
|
614
|
+
|
615
|
+
```python
|
616
|
+
import pulumi
|
617
|
+
import pulumi_gcp as gcp
|
618
|
+
|
619
|
+
default = gcp.networksecurity.AddressGroup("default",
|
620
|
+
name="my-address-groups",
|
621
|
+
parent="projects/my-project-name",
|
622
|
+
location="global",
|
623
|
+
type="IPV4",
|
624
|
+
capacity=100,
|
625
|
+
purposes=["CLOUD_ARMOR"],
|
626
|
+
items=["208.80.154.224/32"])
|
627
|
+
```
|
559
628
|
|
560
629
|
## Import
|
561
630
|
|
@@ -591,6 +660,7 @@ class AddressGroup(pulumi.CustomResource):
|
|
591
660
|
location: Optional[pulumi.Input[str]] = None,
|
592
661
|
name: Optional[pulumi.Input[str]] = None,
|
593
662
|
parent: Optional[pulumi.Input[str]] = None,
|
663
|
+
purposes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
594
664
|
type: Optional[pulumi.Input[str]] = None,
|
595
665
|
__props__=None):
|
596
666
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
@@ -612,6 +682,7 @@ class AddressGroup(pulumi.CustomResource):
|
|
612
682
|
__props__.__dict__["location"] = location
|
613
683
|
__props__.__dict__["name"] = name
|
614
684
|
__props__.__dict__["parent"] = parent
|
685
|
+
__props__.__dict__["purposes"] = purposes
|
615
686
|
if type is None and not opts.urn:
|
616
687
|
raise TypeError("Missing required property 'type'")
|
617
688
|
__props__.__dict__["type"] = type
|
@@ -641,6 +712,7 @@ class AddressGroup(pulumi.CustomResource):
|
|
641
712
|
name: Optional[pulumi.Input[str]] = None,
|
642
713
|
parent: Optional[pulumi.Input[str]] = None,
|
643
714
|
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
715
|
+
purposes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
644
716
|
type: Optional[pulumi.Input[str]] = None,
|
645
717
|
update_time: Optional[pulumi.Input[str]] = None) -> 'AddressGroup':
|
646
718
|
"""
|
@@ -671,6 +743,8 @@ class AddressGroup(pulumi.CustomResource):
|
|
671
743
|
:param pulumi.Input[str] parent: The name of the parent this address group belongs to. Format: organizations/{organization_id} or projects/{project_id}.
|
672
744
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
|
673
745
|
and default labels configured on the provider.
|
746
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] purposes: List of supported purposes of the Address Group.
|
747
|
+
Each value may be one of: `DEFAULT`, `CLOUD_ARMOR`.
|
674
748
|
:param pulumi.Input[str] type: The type of the Address Group. Possible values are "IPV4" or "IPV6".
|
675
749
|
Possible values are: `IPV4`, `IPV6`.
|
676
750
|
:param pulumi.Input[str] update_time: The timestamp when the resource was updated.
|
@@ -691,6 +765,7 @@ class AddressGroup(pulumi.CustomResource):
|
|
691
765
|
__props__.__dict__["name"] = name
|
692
766
|
__props__.__dict__["parent"] = parent
|
693
767
|
__props__.__dict__["pulumi_labels"] = pulumi_labels
|
768
|
+
__props__.__dict__["purposes"] = purposes
|
694
769
|
__props__.__dict__["type"] = type
|
695
770
|
__props__.__dict__["update_time"] = update_time
|
696
771
|
return AddressGroup(resource_name, opts=opts, __props__=__props__)
|
@@ -786,6 +861,15 @@ class AddressGroup(pulumi.CustomResource):
|
|
786
861
|
"""
|
787
862
|
return pulumi.get(self, "pulumi_labels")
|
788
863
|
|
864
|
+
@property
|
865
|
+
@pulumi.getter
|
866
|
+
def purposes(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
867
|
+
"""
|
868
|
+
List of supported purposes of the Address Group.
|
869
|
+
Each value may be one of: `DEFAULT`, `CLOUD_ARMOR`.
|
870
|
+
"""
|
871
|
+
return pulumi.get(self, "purposes")
|
872
|
+
|
789
873
|
@property
|
790
874
|
@pulumi.getter
|
791
875
|
def type(self) -> pulumi.Output[str]:
|
@@ -373,8 +373,8 @@ class FirewallEndpoint(pulumi.CustomResource):
|
|
373
373
|
|
374
374
|
* [API documentation](https://cloud.google.com/firewall/docs/reference/network-security/rest/v1/organizations.locations.firewallEndpoints)
|
375
375
|
* How-to Guides
|
376
|
-
* [Firewall endpoint overview](https://cloud.google.com/firewall/docs/about-firewall-endpoints)
|
377
376
|
* [Create and associate firewall endpoints](https://cloud.google.com/firewall/docs/configure-firewall-endpoints)
|
377
|
+
* [Firewall endpoint overview](https://cloud.google.com/firewall/docs/about-firewall-endpoints)
|
378
378
|
|
379
379
|
> **Warning:** If you are using User ADCs (Application Default Credentials) with this resource,
|
380
380
|
you must specify a `billing_project_id` and set `user_project_override` to true
|
@@ -442,8 +442,8 @@ class FirewallEndpoint(pulumi.CustomResource):
|
|
442
442
|
|
443
443
|
* [API documentation](https://cloud.google.com/firewall/docs/reference/network-security/rest/v1/organizations.locations.firewallEndpoints)
|
444
444
|
* How-to Guides
|
445
|
-
* [Firewall endpoint overview](https://cloud.google.com/firewall/docs/about-firewall-endpoints)
|
446
445
|
* [Create and associate firewall endpoints](https://cloud.google.com/firewall/docs/configure-firewall-endpoints)
|
446
|
+
* [Firewall endpoint overview](https://cloud.google.com/firewall/docs/about-firewall-endpoints)
|
447
447
|
|
448
448
|
> **Warning:** If you are using User ADCs (Application Default Credentials) with this resource,
|
449
449
|
you must specify a `billing_project_id` and set `user_project_override` to true
|
@@ -459,8 +459,8 @@ class FirewallEndpointAssociation(pulumi.CustomResource):
|
|
459
459
|
|
460
460
|
* [API documentation](https://cloud.google.com/firewall/docs/reference/network-security/rest/v1/projects.locations.firewallEndpointAssociations#FirewallEndpointAssociation)
|
461
461
|
* How-to Guides
|
462
|
-
* [Firewall endpoint overview](https://cloud.google.com/firewall/docs/about-firewall-endpoints)
|
463
462
|
* [Create and associate firewall endpoints](https://cloud.google.com/firewall/docs/configure-firewall-endpoints)
|
463
|
+
* [Firewall endpoint overview](https://cloud.google.com/firewall/docs/about-firewall-endpoints)
|
464
464
|
|
465
465
|
## Example Usage
|
466
466
|
|
@@ -534,8 +534,8 @@ class FirewallEndpointAssociation(pulumi.CustomResource):
|
|
534
534
|
|
535
535
|
* [API documentation](https://cloud.google.com/firewall/docs/reference/network-security/rest/v1/projects.locations.firewallEndpointAssociations#FirewallEndpointAssociation)
|
536
536
|
* How-to Guides
|
537
|
-
* [Firewall endpoint overview](https://cloud.google.com/firewall/docs/about-firewall-endpoints)
|
538
537
|
* [Create and associate firewall endpoints](https://cloud.google.com/firewall/docs/configure-firewall-endpoints)
|
538
|
+
* [Firewall endpoint overview](https://cloud.google.com/firewall/docs/about-firewall-endpoints)
|
539
539
|
|
540
540
|
## Example Usage
|
541
541
|
|
@@ -361,8 +361,8 @@ class SecurityProfileGroup(pulumi.CustomResource):
|
|
361
361
|
|
362
362
|
* [API documentation](https://cloud.google.com/firewall/docs/reference/network-security/rest/v1/organizations.locations.securityProfileGroups)
|
363
363
|
* How-to Guides
|
364
|
-
* [Security profile groups overview](https://cloud.google.com/firewall/docs/about-security-profile-groups)
|
365
364
|
* [Create and manage security profile groups](https://cloud.google.com/firewall/docs/configure-security-profile-groups)
|
365
|
+
* [Security profile groups overview](https://cloud.google.com/firewall/docs/about-security-profile-groups)
|
366
366
|
|
367
367
|
## Example Usage
|
368
368
|
|
@@ -429,8 +429,8 @@ class SecurityProfileGroup(pulumi.CustomResource):
|
|
429
429
|
|
430
430
|
* [API documentation](https://cloud.google.com/firewall/docs/reference/network-security/rest/v1/organizations.locations.securityProfileGroups)
|
431
431
|
* How-to Guides
|
432
|
-
* [Security profile groups overview](https://cloud.google.com/firewall/docs/about-security-profile-groups)
|
433
432
|
* [Create and manage security profile groups](https://cloud.google.com/firewall/docs/configure-security-profile-groups)
|
433
|
+
* [Security profile groups overview](https://cloud.google.com/firewall/docs/about-security-profile-groups)
|
434
434
|
|
435
435
|
## Example Usage
|
436
436
|
|
pulumi_gcp/orgpolicy/_inputs.py
CHANGED
@@ -39,6 +39,7 @@ if not MYPY:
|
|
39
39
|
class PolicyDryRunSpecArgsDict(TypedDict):
|
40
40
|
etag: NotRequired[pulumi.Input[str]]
|
41
41
|
"""
|
42
|
+
(Output)
|
42
43
|
An opaque tag indicating the current version of the policy, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy` is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policy to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset.
|
43
44
|
"""
|
44
45
|
inherit_from_parent: NotRequired[pulumi.Input[bool]]
|
@@ -52,9 +53,11 @@ if not MYPY:
|
|
52
53
|
rules: NotRequired[pulumi.Input[Sequence[pulumi.Input['PolicyDryRunSpecRuleArgsDict']]]]
|
53
54
|
"""
|
54
55
|
In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.
|
56
|
+
Structure is documented below.
|
55
57
|
"""
|
56
58
|
update_time: NotRequired[pulumi.Input[str]]
|
57
59
|
"""
|
60
|
+
(Output)
|
58
61
|
Output only. The time stamp this was previously updated. This represents the last time a call to `CreatePolicy` or `UpdatePolicy` was made for that policy.
|
59
62
|
"""
|
60
63
|
elif False:
|
@@ -69,11 +72,14 @@ class PolicyDryRunSpecArgs:
|
|
69
72
|
rules: Optional[pulumi.Input[Sequence[pulumi.Input['PolicyDryRunSpecRuleArgs']]]] = None,
|
70
73
|
update_time: Optional[pulumi.Input[str]] = None):
|
71
74
|
"""
|
72
|
-
:param pulumi.Input[str] etag:
|
75
|
+
:param pulumi.Input[str] etag: (Output)
|
76
|
+
An opaque tag indicating the current version of the policy, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy` is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policy to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset.
|
73
77
|
:param pulumi.Input[bool] inherit_from_parent: Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies which configure list constraints.
|
74
78
|
:param pulumi.Input[bool] reset: Ignores policies set above this resource and restores the `constraint_default` enforcement behavior of the specific constraint at this resource. This field can be set in policies for either list or boolean constraints. If set, `rules` must be empty and `inherit_from_parent` must be set to false.
|
75
79
|
:param pulumi.Input[Sequence[pulumi.Input['PolicyDryRunSpecRuleArgs']]] rules: In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.
|
76
|
-
|
80
|
+
Structure is documented below.
|
81
|
+
:param pulumi.Input[str] update_time: (Output)
|
82
|
+
Output only. The time stamp this was previously updated. This represents the last time a call to `CreatePolicy` or `UpdatePolicy` was made for that policy.
|
77
83
|
"""
|
78
84
|
if etag is not None:
|
79
85
|
pulumi.set(__self__, "etag", etag)
|
@@ -90,6 +96,7 @@ class PolicyDryRunSpecArgs:
|
|
90
96
|
@pulumi.getter
|
91
97
|
def etag(self) -> Optional[pulumi.Input[str]]:
|
92
98
|
"""
|
99
|
+
(Output)
|
93
100
|
An opaque tag indicating the current version of the policy, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy` is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policy to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset.
|
94
101
|
"""
|
95
102
|
return pulumi.get(self, "etag")
|
@@ -127,6 +134,7 @@ class PolicyDryRunSpecArgs:
|
|
127
134
|
def rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PolicyDryRunSpecRuleArgs']]]]:
|
128
135
|
"""
|
129
136
|
In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.
|
137
|
+
Structure is documented below.
|
130
138
|
"""
|
131
139
|
return pulumi.get(self, "rules")
|
132
140
|
|
@@ -138,6 +146,7 @@ class PolicyDryRunSpecArgs:
|
|
138
146
|
@pulumi.getter(name="updateTime")
|
139
147
|
def update_time(self) -> Optional[pulumi.Input[str]]:
|
140
148
|
"""
|
149
|
+
(Output)
|
141
150
|
Output only. The time stamp this was previously updated. This represents the last time a call to `CreatePolicy` or `UpdatePolicy` was made for that policy.
|
142
151
|
"""
|
143
152
|
return pulumi.get(self, "update_time")
|
@@ -156,6 +165,7 @@ if not MYPY:
|
|
156
165
|
condition: NotRequired[pulumi.Input['PolicyDryRunSpecRuleConditionArgsDict']]
|
157
166
|
"""
|
158
167
|
A condition which determines whether this rule is used in the evaluation of the policy. When set, the `expression` field in the `Expr' must include from 1 to 10 subexpressions, joined by the "||" or "&&" operators. Each subexpression must be of the form "resource.matchTag('/tag_key_short_name, 'tag_value_short_name')". or "resource.matchTagId('tagKeys/key_id', 'tagValues/value_id')". where key_name and value_name are the resource names for Label Keys and Values. These names are available from the Tag Manager Service. An example expression is: "resource.matchTag('123456789/environment, 'prod')". or "resource.matchTagId('tagKeys/123', 'tagValues/456')".
|
168
|
+
Structure is documented below.
|
159
169
|
"""
|
160
170
|
deny_all: NotRequired[pulumi.Input[str]]
|
161
171
|
"""
|
@@ -167,7 +177,8 @@ if not MYPY:
|
|
167
177
|
"""
|
168
178
|
values: NotRequired[pulumi.Input['PolicyDryRunSpecRuleValuesArgsDict']]
|
169
179
|
"""
|
170
|
-
List of values to be used for this
|
180
|
+
List of values to be used for this policy rule. This field can be set only in policies for list constraints.
|
181
|
+
Structure is documented below.
|
171
182
|
"""
|
172
183
|
elif False:
|
173
184
|
PolicyDryRunSpecRuleArgsDict: TypeAlias = Mapping[str, Any]
|
@@ -183,9 +194,11 @@ class PolicyDryRunSpecRuleArgs:
|
|
183
194
|
"""
|
184
195
|
:param pulumi.Input[str] allow_all: Setting this to `"TRUE"` means that all values are allowed. This field can be set only in Policies for list constraints.
|
185
196
|
:param pulumi.Input['PolicyDryRunSpecRuleConditionArgs'] condition: A condition which determines whether this rule is used in the evaluation of the policy. When set, the `expression` field in the `Expr' must include from 1 to 10 subexpressions, joined by the "||" or "&&" operators. Each subexpression must be of the form "resource.matchTag('/tag_key_short_name, 'tag_value_short_name')". or "resource.matchTagId('tagKeys/key_id', 'tagValues/value_id')". where key_name and value_name are the resource names for Label Keys and Values. These names are available from the Tag Manager Service. An example expression is: "resource.matchTag('123456789/environment, 'prod')". or "resource.matchTagId('tagKeys/123', 'tagValues/456')".
|
197
|
+
Structure is documented below.
|
186
198
|
:param pulumi.Input[str] deny_all: Setting this to `"TRUE"` means that all values are denied. This field can be set only in Policies for list constraints.
|
187
199
|
:param pulumi.Input[str] enforce: If `"TRUE"`, then the `Policy` is enforced. If `"FALSE"`, then any configuration is acceptable. This field can be set only in Policies for boolean constraints.
|
188
|
-
:param pulumi.Input['PolicyDryRunSpecRuleValuesArgs'] values: List of values to be used for this
|
200
|
+
:param pulumi.Input['PolicyDryRunSpecRuleValuesArgs'] values: List of values to be used for this policy rule. This field can be set only in policies for list constraints.
|
201
|
+
Structure is documented below.
|
189
202
|
"""
|
190
203
|
if allow_all is not None:
|
191
204
|
pulumi.set(__self__, "allow_all", allow_all)
|
@@ -215,6 +228,7 @@ class PolicyDryRunSpecRuleArgs:
|
|
215
228
|
def condition(self) -> Optional[pulumi.Input['PolicyDryRunSpecRuleConditionArgs']]:
|
216
229
|
"""
|
217
230
|
A condition which determines whether this rule is used in the evaluation of the policy. When set, the `expression` field in the `Expr' must include from 1 to 10 subexpressions, joined by the "||" or "&&" operators. Each subexpression must be of the form "resource.matchTag('/tag_key_short_name, 'tag_value_short_name')". or "resource.matchTagId('tagKeys/key_id', 'tagValues/value_id')". where key_name and value_name are the resource names for Label Keys and Values. These names are available from the Tag Manager Service. An example expression is: "resource.matchTag('123456789/environment, 'prod')". or "resource.matchTagId('tagKeys/123', 'tagValues/456')".
|
231
|
+
Structure is documented below.
|
218
232
|
"""
|
219
233
|
return pulumi.get(self, "condition")
|
220
234
|
|
@@ -250,7 +264,8 @@ class PolicyDryRunSpecRuleArgs:
|
|
250
264
|
@pulumi.getter
|
251
265
|
def values(self) -> Optional[pulumi.Input['PolicyDryRunSpecRuleValuesArgs']]:
|
252
266
|
"""
|
253
|
-
List of values to be used for this
|
267
|
+
List of values to be used for this policy rule. This field can be set only in policies for list constraints.
|
268
|
+
Structure is documented below.
|
254
269
|
"""
|
255
270
|
return pulumi.get(self, "values")
|
256
271
|
|
@@ -407,6 +422,7 @@ if not MYPY:
|
|
407
422
|
class PolicySpecArgsDict(TypedDict):
|
408
423
|
etag: NotRequired[pulumi.Input[str]]
|
409
424
|
"""
|
425
|
+
(Output)
|
410
426
|
An opaque tag indicating the current version of the `Policy`, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the `Policy` is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current `Policy` to use when executing a read-modify-write loop. When the `Policy` is returned from a `GetEffectivePolicy` request, the `etag` will be unset.
|
411
427
|
"""
|
412
428
|
inherit_from_parent: NotRequired[pulumi.Input[bool]]
|
@@ -420,9 +436,11 @@ if not MYPY:
|
|
420
436
|
rules: NotRequired[pulumi.Input[Sequence[pulumi.Input['PolicySpecRuleArgsDict']]]]
|
421
437
|
"""
|
422
438
|
Up to 10 PolicyRules are allowed. In Policies for boolean constraints, the following requirements apply: - There must be one and only one PolicyRule where condition is unset. - BooleanPolicyRules with conditions must set `enforced` to the opposite of the PolicyRule without a condition. - During policy evaluation, PolicyRules with conditions that are true for a target resource take precedence.
|
439
|
+
Structure is documented below.
|
423
440
|
"""
|
424
441
|
update_time: NotRequired[pulumi.Input[str]]
|
425
442
|
"""
|
443
|
+
(Output)
|
426
444
|
Output only. The time stamp this was previously updated. This represents the last time a call to `CreatePolicy` or `UpdatePolicy` was made for that `Policy`.
|
427
445
|
"""
|
428
446
|
elif False:
|
@@ -437,11 +455,14 @@ class PolicySpecArgs:
|
|
437
455
|
rules: Optional[pulumi.Input[Sequence[pulumi.Input['PolicySpecRuleArgs']]]] = None,
|
438
456
|
update_time: Optional[pulumi.Input[str]] = None):
|
439
457
|
"""
|
440
|
-
:param pulumi.Input[str] etag:
|
458
|
+
:param pulumi.Input[str] etag: (Output)
|
459
|
+
An opaque tag indicating the current version of the `Policy`, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the `Policy` is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current `Policy` to use when executing a read-modify-write loop. When the `Policy` is returned from a `GetEffectivePolicy` request, the `etag` will be unset.
|
441
460
|
:param pulumi.Input[bool] inherit_from_parent: Determines the inheritance behavior for this `Policy`. If `inherit_from_parent` is true, PolicyRules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this Policy becomes the new root for evaluation. This field can be set only for Policies which configure list constraints.
|
442
461
|
:param pulumi.Input[bool] reset: Ignores policies set above this resource and restores the `constraint_default` enforcement behavior of the specific `Constraint` at this resource. This field can be set in policies for either list or boolean constraints. If set, `rules` must be empty and `inherit_from_parent` must be set to false.
|
443
462
|
:param pulumi.Input[Sequence[pulumi.Input['PolicySpecRuleArgs']]] rules: Up to 10 PolicyRules are allowed. In Policies for boolean constraints, the following requirements apply: - There must be one and only one PolicyRule where condition is unset. - BooleanPolicyRules with conditions must set `enforced` to the opposite of the PolicyRule without a condition. - During policy evaluation, PolicyRules with conditions that are true for a target resource take precedence.
|
444
|
-
|
463
|
+
Structure is documented below.
|
464
|
+
:param pulumi.Input[str] update_time: (Output)
|
465
|
+
Output only. The time stamp this was previously updated. This represents the last time a call to `CreatePolicy` or `UpdatePolicy` was made for that `Policy`.
|
445
466
|
"""
|
446
467
|
if etag is not None:
|
447
468
|
pulumi.set(__self__, "etag", etag)
|
@@ -458,6 +479,7 @@ class PolicySpecArgs:
|
|
458
479
|
@pulumi.getter
|
459
480
|
def etag(self) -> Optional[pulumi.Input[str]]:
|
460
481
|
"""
|
482
|
+
(Output)
|
461
483
|
An opaque tag indicating the current version of the `Policy`, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the `Policy` is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current `Policy` to use when executing a read-modify-write loop. When the `Policy` is returned from a `GetEffectivePolicy` request, the `etag` will be unset.
|
462
484
|
"""
|
463
485
|
return pulumi.get(self, "etag")
|
@@ -495,6 +517,7 @@ class PolicySpecArgs:
|
|
495
517
|
def rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PolicySpecRuleArgs']]]]:
|
496
518
|
"""
|
497
519
|
Up to 10 PolicyRules are allowed. In Policies for boolean constraints, the following requirements apply: - There must be one and only one PolicyRule where condition is unset. - BooleanPolicyRules with conditions must set `enforced` to the opposite of the PolicyRule without a condition. - During policy evaluation, PolicyRules with conditions that are true for a target resource take precedence.
|
520
|
+
Structure is documented below.
|
498
521
|
"""
|
499
522
|
return pulumi.get(self, "rules")
|
500
523
|
|
@@ -506,6 +529,7 @@ class PolicySpecArgs:
|
|
506
529
|
@pulumi.getter(name="updateTime")
|
507
530
|
def update_time(self) -> Optional[pulumi.Input[str]]:
|
508
531
|
"""
|
532
|
+
(Output)
|
509
533
|
Output only. The time stamp this was previously updated. This represents the last time a call to `CreatePolicy` or `UpdatePolicy` was made for that `Policy`.
|
510
534
|
"""
|
511
535
|
return pulumi.get(self, "update_time")
|
@@ -524,6 +548,7 @@ if not MYPY:
|
|
524
548
|
condition: NotRequired[pulumi.Input['PolicySpecRuleConditionArgsDict']]
|
525
549
|
"""
|
526
550
|
A condition which determines whether this rule is used in the evaluation of the policy. When set, the `expression` field in the `Expr' must include from 1 to 10 subexpressions, joined by the "||" or "&&" operators. Each subexpression must be of the form "resource.matchTag('/tag_key_short_name, 'tag_value_short_name')". or "resource.matchTagId('tagKeys/key_id', 'tagValues/value_id')". where key_name and value_name are the resource names for Label Keys and Values. These names are available from the Tag Manager Service. An example expression is: "resource.matchTag('123456789/environment, 'prod')". or "resource.matchTagId('tagKeys/123', 'tagValues/456')".
|
551
|
+
Structure is documented below.
|
527
552
|
"""
|
528
553
|
deny_all: NotRequired[pulumi.Input[str]]
|
529
554
|
"""
|
@@ -535,7 +560,8 @@ if not MYPY:
|
|
535
560
|
"""
|
536
561
|
values: NotRequired[pulumi.Input['PolicySpecRuleValuesArgsDict']]
|
537
562
|
"""
|
538
|
-
List of values to be used for this
|
563
|
+
List of values to be used for this policy rule. This field can be set only in policies for list constraints.
|
564
|
+
Structure is documented below.
|
539
565
|
"""
|
540
566
|
elif False:
|
541
567
|
PolicySpecRuleArgsDict: TypeAlias = Mapping[str, Any]
|
@@ -551,9 +577,11 @@ class PolicySpecRuleArgs:
|
|
551
577
|
"""
|
552
578
|
:param pulumi.Input[str] allow_all: Setting this to `"TRUE"` means that all values are allowed. This field can be set only in Policies for list constraints.
|
553
579
|
:param pulumi.Input['PolicySpecRuleConditionArgs'] condition: A condition which determines whether this rule is used in the evaluation of the policy. When set, the `expression` field in the `Expr' must include from 1 to 10 subexpressions, joined by the "||" or "&&" operators. Each subexpression must be of the form "resource.matchTag('/tag_key_short_name, 'tag_value_short_name')". or "resource.matchTagId('tagKeys/key_id', 'tagValues/value_id')". where key_name and value_name are the resource names for Label Keys and Values. These names are available from the Tag Manager Service. An example expression is: "resource.matchTag('123456789/environment, 'prod')". or "resource.matchTagId('tagKeys/123', 'tagValues/456')".
|
580
|
+
Structure is documented below.
|
554
581
|
:param pulumi.Input[str] deny_all: Setting this to `"TRUE"` means that all values are denied. This field can be set only in Policies for list constraints.
|
555
582
|
:param pulumi.Input[str] enforce: If `"TRUE"`, then the `Policy` is enforced. If `"FALSE"`, then any configuration is acceptable. This field can be set only in Policies for boolean constraints.
|
556
|
-
:param pulumi.Input['PolicySpecRuleValuesArgs'] values: List of values to be used for this
|
583
|
+
:param pulumi.Input['PolicySpecRuleValuesArgs'] values: List of values to be used for this policy rule. This field can be set only in policies for list constraints.
|
584
|
+
Structure is documented below.
|
557
585
|
"""
|
558
586
|
if allow_all is not None:
|
559
587
|
pulumi.set(__self__, "allow_all", allow_all)
|
@@ -583,6 +611,7 @@ class PolicySpecRuleArgs:
|
|
583
611
|
def condition(self) -> Optional[pulumi.Input['PolicySpecRuleConditionArgs']]:
|
584
612
|
"""
|
585
613
|
A condition which determines whether this rule is used in the evaluation of the policy. When set, the `expression` field in the `Expr' must include from 1 to 10 subexpressions, joined by the "||" or "&&" operators. Each subexpression must be of the form "resource.matchTag('/tag_key_short_name, 'tag_value_short_name')". or "resource.matchTagId('tagKeys/key_id', 'tagValues/value_id')". where key_name and value_name are the resource names for Label Keys and Values. These names are available from the Tag Manager Service. An example expression is: "resource.matchTag('123456789/environment, 'prod')". or "resource.matchTagId('tagKeys/123', 'tagValues/456')".
|
614
|
+
Structure is documented below.
|
586
615
|
"""
|
587
616
|
return pulumi.get(self, "condition")
|
588
617
|
|
@@ -618,7 +647,8 @@ class PolicySpecRuleArgs:
|
|
618
647
|
@pulumi.getter
|
619
648
|
def values(self) -> Optional[pulumi.Input['PolicySpecRuleValuesArgs']]:
|
620
649
|
"""
|
621
|
-
List of values to be used for this
|
650
|
+
List of values to be used for this policy rule. This field can be set only in policies for list constraints.
|
651
|
+
Structure is documented below.
|
622
652
|
"""
|
623
653
|
return pulumi.get(self, "values")
|
624
654
|
|