pulumi-gcp 8.11.0a1734348982__py3-none-any.whl → 8.11.0a1734385115__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 +91 -0
- pulumi_gcp/accesscontextmanager/_inputs.py +29 -0
- pulumi_gcp/accesscontextmanager/outputs.py +18 -0
- pulumi_gcp/accesscontextmanager/service_perimeter.py +36 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +6 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +6 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +6 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +6 -0
- pulumi_gcp/apigee/app_group.py +7 -7
- pulumi_gcp/applicationintegration/client.py +8 -6
- pulumi_gcp/artifactregistry/_inputs.py +24 -15
- pulumi_gcp/artifactregistry/outputs.py +32 -20
- pulumi_gcp/artifactregistry/repository.py +128 -0
- pulumi_gcp/assuredworkloads/workload.py +7 -7
- pulumi_gcp/backupdisasterrecovery/__init__.py +2 -0
- pulumi_gcp/backupdisasterrecovery/backup_plan.py +2 -2
- pulumi_gcp/backupdisasterrecovery/backup_vault.py +12 -8
- pulumi_gcp/backupdisasterrecovery/get_backup.py +153 -0
- pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +415 -0
- pulumi_gcp/backupdisasterrecovery/outputs.py +63 -0
- pulumi_gcp/bigquery/app_profile.py +75 -0
- pulumi_gcp/billing/_inputs.py +6 -6
- pulumi_gcp/billing/outputs.py +4 -4
- pulumi_gcp/certificateauthority/_inputs.py +9 -9
- pulumi_gcp/certificateauthority/outputs.py +8 -8
- pulumi_gcp/cloudbuild/_inputs.py +53 -0
- pulumi_gcp/cloudbuild/outputs.py +50 -0
- pulumi_gcp/cloudbuild/worker_pool.py +47 -0
- pulumi_gcp/clouddeploy/_inputs.py +254 -0
- pulumi_gcp/clouddeploy/outputs.py +211 -0
- pulumi_gcp/clouddeploy/target.py +47 -0
- pulumi_gcp/cloudfunctionsv2/_inputs.py +6 -6
- pulumi_gcp/cloudfunctionsv2/outputs.py +8 -8
- pulumi_gcp/cloudrunv2/job.py +4 -4
- pulumi_gcp/cloudrunv2/service.py +4 -4
- pulumi_gcp/composer/get_user_workloads_config_map.py +4 -0
- pulumi_gcp/composer/get_user_workloads_secret.py +4 -0
- pulumi_gcp/composer/user_workloads_config_map.py +14 -0
- pulumi_gcp/composer/user_workloads_secret.py +6 -0
- pulumi_gcp/compute/_inputs.py +566 -25
- pulumi_gcp/compute/disk.py +21 -7
- pulumi_gcp/compute/firewall_policy_rule.py +12 -0
- pulumi_gcp/compute/get_forwarding_rules.py +2 -2
- pulumi_gcp/compute/get_global_forwarding_rule.py +12 -1
- pulumi_gcp/compute/get_instance_group_manager.py +12 -1
- pulumi_gcp/compute/get_network.py +35 -1
- pulumi_gcp/compute/get_region_instance_group_manager.py +12 -1
- pulumi_gcp/compute/get_region_network_endpoint_group.py +12 -1
- pulumi_gcp/compute/global_forwarding_rule.py +28 -0
- pulumi_gcp/compute/instance_group_manager.py +28 -0
- pulumi_gcp/compute/network.py +75 -0
- pulumi_gcp/compute/outputs.py +655 -26
- pulumi_gcp/compute/region_health_check.py +28 -0
- pulumi_gcp/compute/region_instance_group_manager.py +28 -0
- pulumi_gcp/compute/region_network_endpoint.py +28 -0
- pulumi_gcp/compute/region_network_endpoint_group.py +70 -2
- pulumi_gcp/compute/subnetwork.py +30 -2
- pulumi_gcp/compute/url_map.py +7 -7
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +201 -3
- pulumi_gcp/container/cluster.py +68 -14
- pulumi_gcp/container/get_cluster.py +12 -1
- pulumi_gcp/container/outputs.py +249 -3
- pulumi_gcp/dataproc/_inputs.py +209 -1
- pulumi_gcp/dataproc/batch.py +76 -0
- pulumi_gcp/dataproc/outputs.py +169 -3
- pulumi_gcp/diagflow/_inputs.py +3 -3
- pulumi_gcp/diagflow/outputs.py +2 -2
- pulumi_gcp/discoveryengine/search_engine.py +7 -7
- pulumi_gcp/firebaserules/release.py +76 -0
- pulumi_gcp/firestore/field.py +4 -4
- pulumi_gcp/gemini/__init__.py +15 -0
- pulumi_gcp/gemini/_inputs.py +183 -0
- pulumi_gcp/gemini/code_repository_index.py +659 -0
- pulumi_gcp/gemini/get_repository_group_iam_policy.py +171 -0
- pulumi_gcp/gemini/outputs.py +130 -0
- pulumi_gcp/gemini/repository_group.py +586 -0
- pulumi_gcp/gemini/repository_group_iam_binding.py +604 -0
- pulumi_gcp/gemini/repository_group_iam_member.py +604 -0
- pulumi_gcp/gemini/repository_group_iam_policy.py +443 -0
- pulumi_gcp/gkehub/_inputs.py +30 -10
- pulumi_gcp/gkehub/membership_binding.py +6 -6
- pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
- pulumi_gcp/gkehub/namespace.py +4 -4
- pulumi_gcp/gkehub/outputs.py +21 -7
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
- pulumi_gcp/iam/__init__.py +1 -0
- pulumi_gcp/iam/_inputs.py +137 -0
- pulumi_gcp/iam/folders_policy_binding.py +16 -0
- pulumi_gcp/iam/organizations_policy_binding.py +16 -0
- pulumi_gcp/iam/outputs.py +99 -0
- pulumi_gcp/iam/principal_access_boundary_policy.py +16 -0
- pulumi_gcp/iam/projects_policy_binding.py +917 -0
- pulumi_gcp/iap/tunnel_dest_group.py +2 -2
- pulumi_gcp/integrationconnectors/_inputs.py +15 -15
- pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
- pulumi_gcp/integrationconnectors/outputs.py +10 -10
- pulumi_gcp/monitoring/_inputs.py +13 -6
- pulumi_gcp/monitoring/outputs.py +10 -4
- pulumi_gcp/netapp/_inputs.py +3 -3
- pulumi_gcp/netapp/active_directory.py +7 -7
- pulumi_gcp/netapp/outputs.py +2 -2
- pulumi_gcp/netapp/volume.py +11 -11
- pulumi_gcp/networkconnectivity/spoke.py +10 -10
- pulumi_gcp/networksecurity/__init__.py +4 -0
- pulumi_gcp/networksecurity/_inputs.py +115 -0
- pulumi_gcp/networksecurity/mirroring_deployment.py +848 -0
- pulumi_gcp/networksecurity/mirroring_deployment_group.py +752 -0
- pulumi_gcp/networksecurity/mirroring_endpoint_group.py +737 -0
- pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +840 -0
- pulumi_gcp/networksecurity/outputs.py +70 -0
- pulumi_gcp/oracledatabase/autonomous_database.py +42 -4
- pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +42 -4
- pulumi_gcp/oracledatabase/cloud_vm_cluster.py +50 -8
- pulumi_gcp/oracledatabase/get_autonomous_database.py +12 -1
- pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +12 -1
- pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +12 -1
- pulumi_gcp/oracledatabase/outputs.py +21 -0
- pulumi_gcp/orgpolicy/policy.py +2 -2
- pulumi_gcp/parallelstore/instance.py +4 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/subscription.py +6 -6
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/_inputs.py +435 -3
- pulumi_gcp/redis/cluster.py +287 -16
- pulumi_gcp/redis/outputs.py +304 -2
- pulumi_gcp/serviceaccount/get_account_id_token.py +2 -2
- pulumi_gcp/serviceaccount/get_account_key.py +2 -2
- pulumi_gcp/storage/get_bucket.py +2 -2
- pulumi_gcp/storage/get_bucket_object_content.py +2 -2
- pulumi_gcp/tpu/__init__.py +1 -0
- pulumi_gcp/tpu/_inputs.py +188 -6
- pulumi_gcp/tpu/outputs.py +164 -4
- pulumi_gcp/tpu/v2_queued_resource.py +434 -0
- pulumi_gcp/vertex/ai_endpoint.py +4 -4
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
- pulumi_gcp/vertex/ai_index_endpoint.py +2 -2
- {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/RECORD +142 -125
- {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/top_level.txt +0 -0
pulumi_gcp/__init__.py
CHANGED
@@ -142,6 +142,8 @@ if typing.TYPE_CHECKING:
|
|
142
142
|
firestore = __firestore
|
143
143
|
import pulumi_gcp.folder as __folder
|
144
144
|
folder = __folder
|
145
|
+
import pulumi_gcp.gemini as __gemini
|
146
|
+
gemini = __gemini
|
145
147
|
import pulumi_gcp.gkebackup as __gkebackup
|
146
148
|
gkebackup = __gkebackup
|
147
149
|
import pulumi_gcp.gkehub as __gkehub
|
@@ -325,6 +327,7 @@ else:
|
|
325
327
|
firebaserules = _utilities.lazy_import('pulumi_gcp.firebaserules')
|
326
328
|
firestore = _utilities.lazy_import('pulumi_gcp.firestore')
|
327
329
|
folder = _utilities.lazy_import('pulumi_gcp.folder')
|
330
|
+
gemini = _utilities.lazy_import('pulumi_gcp.gemini')
|
328
331
|
gkebackup = _utilities.lazy_import('pulumi_gcp.gkebackup')
|
329
332
|
gkehub = _utilities.lazy_import('pulumi_gcp.gkehub')
|
330
333
|
gkeonprem = _utilities.lazy_import('pulumi_gcp.gkeonprem')
|
@@ -4939,6 +4942,46 @@ _utilities.register(
|
|
4939
4942
|
"gcp:folder/organizationPolicy:OrganizationPolicy": "OrganizationPolicy"
|
4940
4943
|
}
|
4941
4944
|
},
|
4945
|
+
{
|
4946
|
+
"pkg": "gcp",
|
4947
|
+
"mod": "gemini/codeRepositoryIndex",
|
4948
|
+
"fqn": "pulumi_gcp.gemini",
|
4949
|
+
"classes": {
|
4950
|
+
"gcp:gemini/codeRepositoryIndex:CodeRepositoryIndex": "CodeRepositoryIndex"
|
4951
|
+
}
|
4952
|
+
},
|
4953
|
+
{
|
4954
|
+
"pkg": "gcp",
|
4955
|
+
"mod": "gemini/repositoryGroup",
|
4956
|
+
"fqn": "pulumi_gcp.gemini",
|
4957
|
+
"classes": {
|
4958
|
+
"gcp:gemini/repositoryGroup:RepositoryGroup": "RepositoryGroup"
|
4959
|
+
}
|
4960
|
+
},
|
4961
|
+
{
|
4962
|
+
"pkg": "gcp",
|
4963
|
+
"mod": "gemini/repositoryGroupIamBinding",
|
4964
|
+
"fqn": "pulumi_gcp.gemini",
|
4965
|
+
"classes": {
|
4966
|
+
"gcp:gemini/repositoryGroupIamBinding:RepositoryGroupIamBinding": "RepositoryGroupIamBinding"
|
4967
|
+
}
|
4968
|
+
},
|
4969
|
+
{
|
4970
|
+
"pkg": "gcp",
|
4971
|
+
"mod": "gemini/repositoryGroupIamMember",
|
4972
|
+
"fqn": "pulumi_gcp.gemini",
|
4973
|
+
"classes": {
|
4974
|
+
"gcp:gemini/repositoryGroupIamMember:RepositoryGroupIamMember": "RepositoryGroupIamMember"
|
4975
|
+
}
|
4976
|
+
},
|
4977
|
+
{
|
4978
|
+
"pkg": "gcp",
|
4979
|
+
"mod": "gemini/repositoryGroupIamPolicy",
|
4980
|
+
"fqn": "pulumi_gcp.gemini",
|
4981
|
+
"classes": {
|
4982
|
+
"gcp:gemini/repositoryGroupIamPolicy:RepositoryGroupIamPolicy": "RepositoryGroupIamPolicy"
|
4983
|
+
}
|
4984
|
+
},
|
4942
4985
|
{
|
4943
4986
|
"pkg": "gcp",
|
4944
4987
|
"mod": "gkebackup/backupPlan",
|
@@ -5403,6 +5446,14 @@ _utilities.register(
|
|
5403
5446
|
"gcp:iam/principalAccessBoundaryPolicy:PrincipalAccessBoundaryPolicy": "PrincipalAccessBoundaryPolicy"
|
5404
5447
|
}
|
5405
5448
|
},
|
5449
|
+
{
|
5450
|
+
"pkg": "gcp",
|
5451
|
+
"mod": "iam/projectsPolicyBinding",
|
5452
|
+
"fqn": "pulumi_gcp.iam",
|
5453
|
+
"classes": {
|
5454
|
+
"gcp:iam/projectsPolicyBinding:ProjectsPolicyBinding": "ProjectsPolicyBinding"
|
5455
|
+
}
|
5456
|
+
},
|
5406
5457
|
{
|
5407
5458
|
"pkg": "gcp",
|
5408
5459
|
"mod": "iam/workforcePool",
|
@@ -6467,6 +6518,38 @@ _utilities.register(
|
|
6467
6518
|
"gcp:networksecurity/gatewaySecurityPolicyRule:GatewaySecurityPolicyRule": "GatewaySecurityPolicyRule"
|
6468
6519
|
}
|
6469
6520
|
},
|
6521
|
+
{
|
6522
|
+
"pkg": "gcp",
|
6523
|
+
"mod": "networksecurity/mirroringDeployment",
|
6524
|
+
"fqn": "pulumi_gcp.networksecurity",
|
6525
|
+
"classes": {
|
6526
|
+
"gcp:networksecurity/mirroringDeployment:MirroringDeployment": "MirroringDeployment"
|
6527
|
+
}
|
6528
|
+
},
|
6529
|
+
{
|
6530
|
+
"pkg": "gcp",
|
6531
|
+
"mod": "networksecurity/mirroringDeploymentGroup",
|
6532
|
+
"fqn": "pulumi_gcp.networksecurity",
|
6533
|
+
"classes": {
|
6534
|
+
"gcp:networksecurity/mirroringDeploymentGroup:MirroringDeploymentGroup": "MirroringDeploymentGroup"
|
6535
|
+
}
|
6536
|
+
},
|
6537
|
+
{
|
6538
|
+
"pkg": "gcp",
|
6539
|
+
"mod": "networksecurity/mirroringEndpointGroup",
|
6540
|
+
"fqn": "pulumi_gcp.networksecurity",
|
6541
|
+
"classes": {
|
6542
|
+
"gcp:networksecurity/mirroringEndpointGroup:MirroringEndpointGroup": "MirroringEndpointGroup"
|
6543
|
+
}
|
6544
|
+
},
|
6545
|
+
{
|
6546
|
+
"pkg": "gcp",
|
6547
|
+
"mod": "networksecurity/mirroringEndpointGroupAssociation",
|
6548
|
+
"fqn": "pulumi_gcp.networksecurity",
|
6549
|
+
"classes": {
|
6550
|
+
"gcp:networksecurity/mirroringEndpointGroupAssociation:MirroringEndpointGroupAssociation": "MirroringEndpointGroupAssociation"
|
6551
|
+
}
|
6552
|
+
},
|
6470
6553
|
{
|
6471
6554
|
"pkg": "gcp",
|
6472
6555
|
"mod": "networksecurity/securityProfile",
|
@@ -8171,6 +8254,14 @@ _utilities.register(
|
|
8171
8254
|
"gcp:tpu/node:Node": "Node"
|
8172
8255
|
}
|
8173
8256
|
},
|
8257
|
+
{
|
8258
|
+
"pkg": "gcp",
|
8259
|
+
"mod": "tpu/v2QueuedResource",
|
8260
|
+
"fqn": "pulumi_gcp.tpu",
|
8261
|
+
"classes": {
|
8262
|
+
"gcp:tpu/v2QueuedResource:V2QueuedResource": "V2QueuedResource"
|
8263
|
+
}
|
8264
|
+
},
|
8174
8265
|
{
|
8175
8266
|
"pkg": "gcp",
|
8176
8267
|
"mod": "tpu/v2Vm",
|
@@ -6054,6 +6054,13 @@ if not MYPY:
|
|
6054
6054
|
Description of the ServicePerimeter and its use. Does not affect
|
6055
6055
|
behavior.
|
6056
6056
|
"""
|
6057
|
+
etag: NotRequired[pulumi.Input[str]]
|
6058
|
+
"""
|
6059
|
+
(Output)
|
6060
|
+
An opaque identifier for the current version of the ServicePerimeter. This
|
6061
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
6062
|
+
operation will be performed as if a valid etag is provided.
|
6063
|
+
"""
|
6057
6064
|
perimeter_type: NotRequired[pulumi.Input[str]]
|
6058
6065
|
"""
|
6059
6066
|
Specifies the type of the Perimeter. There are two types: regular and
|
@@ -6115,6 +6122,7 @@ class ServicePerimetersServicePerimeterArgs:
|
|
6115
6122
|
title: pulumi.Input[str],
|
6116
6123
|
create_time: Optional[pulumi.Input[str]] = None,
|
6117
6124
|
description: Optional[pulumi.Input[str]] = None,
|
6125
|
+
etag: Optional[pulumi.Input[str]] = None,
|
6118
6126
|
perimeter_type: Optional[pulumi.Input[str]] = None,
|
6119
6127
|
spec: Optional[pulumi.Input['ServicePerimetersServicePerimeterSpecArgs']] = None,
|
6120
6128
|
status: Optional[pulumi.Input['ServicePerimetersServicePerimeterStatusArgs']] = None,
|
@@ -6129,6 +6137,10 @@ class ServicePerimetersServicePerimeterArgs:
|
|
6129
6137
|
Time the AccessPolicy was created in UTC.
|
6130
6138
|
:param pulumi.Input[str] description: Description of the ServicePerimeter and its use. Does not affect
|
6131
6139
|
behavior.
|
6140
|
+
:param pulumi.Input[str] etag: (Output)
|
6141
|
+
An opaque identifier for the current version of the ServicePerimeter. This
|
6142
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
6143
|
+
operation will be performed as if a valid etag is provided.
|
6132
6144
|
:param pulumi.Input[str] perimeter_type: Specifies the type of the Perimeter. There are two types: regular and
|
6133
6145
|
bridge. Regular Service Perimeter contains resources, access levels,
|
6134
6146
|
and restricted services. Every resource can be in at most
|
@@ -6172,6 +6184,8 @@ class ServicePerimetersServicePerimeterArgs:
|
|
6172
6184
|
pulumi.set(__self__, "create_time", create_time)
|
6173
6185
|
if description is not None:
|
6174
6186
|
pulumi.set(__self__, "description", description)
|
6187
|
+
if etag is not None:
|
6188
|
+
pulumi.set(__self__, "etag", etag)
|
6175
6189
|
if perimeter_type is not None:
|
6176
6190
|
pulumi.set(__self__, "perimeter_type", perimeter_type)
|
6177
6191
|
if spec is not None:
|
@@ -6235,6 +6249,21 @@ class ServicePerimetersServicePerimeterArgs:
|
|
6235
6249
|
def description(self, value: Optional[pulumi.Input[str]]):
|
6236
6250
|
pulumi.set(self, "description", value)
|
6237
6251
|
|
6252
|
+
@property
|
6253
|
+
@pulumi.getter
|
6254
|
+
def etag(self) -> Optional[pulumi.Input[str]]:
|
6255
|
+
"""
|
6256
|
+
(Output)
|
6257
|
+
An opaque identifier for the current version of the ServicePerimeter. This
|
6258
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
6259
|
+
operation will be performed as if a valid etag is provided.
|
6260
|
+
"""
|
6261
|
+
return pulumi.get(self, "etag")
|
6262
|
+
|
6263
|
+
@etag.setter
|
6264
|
+
def etag(self, value: Optional[pulumi.Input[str]]):
|
6265
|
+
pulumi.set(self, "etag", value)
|
6266
|
+
|
6238
6267
|
@property
|
6239
6268
|
@pulumi.getter(name="perimeterType")
|
6240
6269
|
def perimeter_type(self) -> Optional[pulumi.Input[str]]:
|
@@ -4683,6 +4683,7 @@ class ServicePerimetersServicePerimeter(dict):
|
|
4683
4683
|
title: str,
|
4684
4684
|
create_time: Optional[str] = None,
|
4685
4685
|
description: Optional[str] = None,
|
4686
|
+
etag: Optional[str] = None,
|
4686
4687
|
perimeter_type: Optional[str] = None,
|
4687
4688
|
spec: Optional['outputs.ServicePerimetersServicePerimeterSpec'] = None,
|
4688
4689
|
status: Optional['outputs.ServicePerimetersServicePerimeterStatus'] = None,
|
@@ -4697,6 +4698,10 @@ class ServicePerimetersServicePerimeter(dict):
|
|
4697
4698
|
Time the AccessPolicy was created in UTC.
|
4698
4699
|
:param str description: Description of the ServicePerimeter and its use. Does not affect
|
4699
4700
|
behavior.
|
4701
|
+
:param str etag: (Output)
|
4702
|
+
An opaque identifier for the current version of the ServicePerimeter. This
|
4703
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
4704
|
+
operation will be performed as if a valid etag is provided.
|
4700
4705
|
:param str perimeter_type: Specifies the type of the Perimeter. There are two types: regular and
|
4701
4706
|
bridge. Regular Service Perimeter contains resources, access levels,
|
4702
4707
|
and restricted services. Every resource can be in at most
|
@@ -4740,6 +4745,8 @@ class ServicePerimetersServicePerimeter(dict):
|
|
4740
4745
|
pulumi.set(__self__, "create_time", create_time)
|
4741
4746
|
if description is not None:
|
4742
4747
|
pulumi.set(__self__, "description", description)
|
4748
|
+
if etag is not None:
|
4749
|
+
pulumi.set(__self__, "etag", etag)
|
4743
4750
|
if perimeter_type is not None:
|
4744
4751
|
pulumi.set(__self__, "perimeter_type", perimeter_type)
|
4745
4752
|
if spec is not None:
|
@@ -4787,6 +4794,17 @@ class ServicePerimetersServicePerimeter(dict):
|
|
4787
4794
|
"""
|
4788
4795
|
return pulumi.get(self, "description")
|
4789
4796
|
|
4797
|
+
@property
|
4798
|
+
@pulumi.getter
|
4799
|
+
def etag(self) -> Optional[str]:
|
4800
|
+
"""
|
4801
|
+
(Output)
|
4802
|
+
An opaque identifier for the current version of the ServicePerimeter. This
|
4803
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
4804
|
+
operation will be performed as if a valid etag is provided.
|
4805
|
+
"""
|
4806
|
+
return pulumi.get(self, "etag")
|
4807
|
+
|
4790
4808
|
@property
|
4791
4809
|
@pulumi.getter(name="perimeterType")
|
4792
4810
|
def perimeter_type(self) -> Optional[str]:
|
@@ -231,6 +231,7 @@ class _ServicePerimeterState:
|
|
231
231
|
def __init__(__self__, *,
|
232
232
|
create_time: Optional[pulumi.Input[str]] = None,
|
233
233
|
description: Optional[pulumi.Input[str]] = None,
|
234
|
+
etag: Optional[pulumi.Input[str]] = None,
|
234
235
|
name: Optional[pulumi.Input[str]] = None,
|
235
236
|
parent: Optional[pulumi.Input[str]] = None,
|
236
237
|
perimeter_type: Optional[pulumi.Input[str]] = None,
|
@@ -244,6 +245,9 @@ class _ServicePerimeterState:
|
|
244
245
|
:param pulumi.Input[str] create_time: Time the AccessPolicy was created in UTC.
|
245
246
|
:param pulumi.Input[str] description: Description of the ServicePerimeter and its use. Does not affect
|
246
247
|
behavior.
|
248
|
+
:param pulumi.Input[str] etag: An opaque identifier for the current version of the ServicePerimeter. This
|
249
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
250
|
+
operation will be performed as if a valid etag is provided.
|
247
251
|
:param pulumi.Input[str] name: Resource name for the ServicePerimeter. The short_name component must
|
248
252
|
begin with a letter and only include alphanumeric and '_'.
|
249
253
|
Format: accessPolicies/{policy_id}/servicePerimeters/{short_name}
|
@@ -293,6 +297,8 @@ class _ServicePerimeterState:
|
|
293
297
|
pulumi.set(__self__, "create_time", create_time)
|
294
298
|
if description is not None:
|
295
299
|
pulumi.set(__self__, "description", description)
|
300
|
+
if etag is not None:
|
301
|
+
pulumi.set(__self__, "etag", etag)
|
296
302
|
if name is not None:
|
297
303
|
pulumi.set(__self__, "name", name)
|
298
304
|
if parent is not None:
|
@@ -335,6 +341,20 @@ class _ServicePerimeterState:
|
|
335
341
|
def description(self, value: Optional[pulumi.Input[str]]):
|
336
342
|
pulumi.set(self, "description", value)
|
337
343
|
|
344
|
+
@property
|
345
|
+
@pulumi.getter
|
346
|
+
def etag(self) -> Optional[pulumi.Input[str]]:
|
347
|
+
"""
|
348
|
+
An opaque identifier for the current version of the ServicePerimeter. This
|
349
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
350
|
+
operation will be performed as if a valid etag is provided.
|
351
|
+
"""
|
352
|
+
return pulumi.get(self, "etag")
|
353
|
+
|
354
|
+
@etag.setter
|
355
|
+
def etag(self, value: Optional[pulumi.Input[str]]):
|
356
|
+
pulumi.set(self, "etag", value)
|
357
|
+
|
338
358
|
@property
|
339
359
|
@pulumi.getter
|
340
360
|
def name(self) -> Optional[pulumi.Input[str]]:
|
@@ -989,6 +1009,7 @@ class ServicePerimeter(pulumi.CustomResource):
|
|
989
1009
|
__props__.__dict__["title"] = title
|
990
1010
|
__props__.__dict__["use_explicit_dry_run_spec"] = use_explicit_dry_run_spec
|
991
1011
|
__props__.__dict__["create_time"] = None
|
1012
|
+
__props__.__dict__["etag"] = None
|
992
1013
|
__props__.__dict__["update_time"] = None
|
993
1014
|
super(ServicePerimeter, __self__).__init__(
|
994
1015
|
'gcp:accesscontextmanager/servicePerimeter:ServicePerimeter',
|
@@ -1002,6 +1023,7 @@ class ServicePerimeter(pulumi.CustomResource):
|
|
1002
1023
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1003
1024
|
create_time: Optional[pulumi.Input[str]] = None,
|
1004
1025
|
description: Optional[pulumi.Input[str]] = None,
|
1026
|
+
etag: Optional[pulumi.Input[str]] = None,
|
1005
1027
|
name: Optional[pulumi.Input[str]] = None,
|
1006
1028
|
parent: Optional[pulumi.Input[str]] = None,
|
1007
1029
|
perimeter_type: Optional[pulumi.Input[str]] = None,
|
@@ -1020,6 +1042,9 @@ class ServicePerimeter(pulumi.CustomResource):
|
|
1020
1042
|
:param pulumi.Input[str] create_time: Time the AccessPolicy was created in UTC.
|
1021
1043
|
:param pulumi.Input[str] description: Description of the ServicePerimeter and its use. Does not affect
|
1022
1044
|
behavior.
|
1045
|
+
:param pulumi.Input[str] etag: An opaque identifier for the current version of the ServicePerimeter. This
|
1046
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
1047
|
+
operation will be performed as if a valid etag is provided.
|
1023
1048
|
:param pulumi.Input[str] name: Resource name for the ServicePerimeter. The short_name component must
|
1024
1049
|
begin with a letter and only include alphanumeric and '_'.
|
1025
1050
|
Format: accessPolicies/{policy_id}/servicePerimeters/{short_name}
|
@@ -1071,6 +1096,7 @@ class ServicePerimeter(pulumi.CustomResource):
|
|
1071
1096
|
|
1072
1097
|
__props__.__dict__["create_time"] = create_time
|
1073
1098
|
__props__.__dict__["description"] = description
|
1099
|
+
__props__.__dict__["etag"] = etag
|
1074
1100
|
__props__.__dict__["name"] = name
|
1075
1101
|
__props__.__dict__["parent"] = parent
|
1076
1102
|
__props__.__dict__["perimeter_type"] = perimeter_type
|
@@ -1098,6 +1124,16 @@ class ServicePerimeter(pulumi.CustomResource):
|
|
1098
1124
|
"""
|
1099
1125
|
return pulumi.get(self, "description")
|
1100
1126
|
|
1127
|
+
@property
|
1128
|
+
@pulumi.getter
|
1129
|
+
def etag(self) -> pulumi.Output[str]:
|
1130
|
+
"""
|
1131
|
+
An opaque identifier for the current version of the ServicePerimeter. This
|
1132
|
+
identifier does not follow any specific format. If an etag is not provided, the
|
1133
|
+
operation will be performed as if a valid etag is provided.
|
1134
|
+
"""
|
1135
|
+
return pulumi.get(self, "etag")
|
1136
|
+
|
1101
1137
|
@property
|
1102
1138
|
@pulumi.getter
|
1103
1139
|
def name(self) -> pulumi.Output[str]:
|
@@ -175,6 +175,9 @@ class ServicePerimeterDryRunEgressPolicy(pulumi.CustomResource):
|
|
175
175
|
> **Note:** By default, updates to this resource will remove the EgressPolicy from the
|
176
176
|
from the perimeter and add it back in a non-atomic manner. To ensure that the new EgressPolicy
|
177
177
|
is added before the old one is removed, add a `lifecycle` block with `create_before_destroy = true` to this resource.
|
178
|
+
**Note:** If this resource is used alongside a `accesscontextmanager.ServicePerimeter` resource,
|
179
|
+
the service perimeter resource must have a `lifecycle` block with `ignore_changes = [spec[0].egress_policies]` so
|
180
|
+
they don't fight over which egress rules should be in the policy.
|
178
181
|
|
179
182
|
To get more information about ServicePerimeterDryRunEgressPolicy, see:
|
180
183
|
|
@@ -215,6 +218,9 @@ class ServicePerimeterDryRunEgressPolicy(pulumi.CustomResource):
|
|
215
218
|
> **Note:** By default, updates to this resource will remove the EgressPolicy from the
|
216
219
|
from the perimeter and add it back in a non-atomic manner. To ensure that the new EgressPolicy
|
217
220
|
is added before the old one is removed, add a `lifecycle` block with `create_before_destroy = true` to this resource.
|
221
|
+
**Note:** If this resource is used alongside a `accesscontextmanager.ServicePerimeter` resource,
|
222
|
+
the service perimeter resource must have a `lifecycle` block with `ignore_changes = [spec[0].egress_policies]` so
|
223
|
+
they don't fight over which egress rules should be in the policy.
|
218
224
|
|
219
225
|
To get more information about ServicePerimeterDryRunEgressPolicy, see:
|
220
226
|
|
@@ -180,6 +180,9 @@ class ServicePerimeterDryRunIngressPolicy(pulumi.CustomResource):
|
|
180
180
|
> **Note:** By default, updates to this resource will remove the IngressPolicy from the
|
181
181
|
from the perimeter and add it back in a non-atomic manner. To ensure that the new IngressPolicy
|
182
182
|
is added before the old one is removed, add a `lifecycle` block with `create_before_destroy = true` to this resource.
|
183
|
+
**Note:** If this resource is used alongside a `accesscontextmanager.ServicePerimeter` resource,
|
184
|
+
the service perimeter resource must have a `lifecycle` block with `ignore_changes = [spec[0].ingress_policies]` so
|
185
|
+
they don't fight over which ingress rules should be in the policy.
|
183
186
|
|
184
187
|
To get more information about ServicePerimeterDryRunIngressPolicy, see:
|
185
188
|
|
@@ -222,6 +225,9 @@ class ServicePerimeterDryRunIngressPolicy(pulumi.CustomResource):
|
|
222
225
|
> **Note:** By default, updates to this resource will remove the IngressPolicy from the
|
223
226
|
from the perimeter and add it back in a non-atomic manner. To ensure that the new IngressPolicy
|
224
227
|
is added before the old one is removed, add a `lifecycle` block with `create_before_destroy = true` to this resource.
|
228
|
+
**Note:** If this resource is used alongside a `accesscontextmanager.ServicePerimeter` resource,
|
229
|
+
the service perimeter resource must have a `lifecycle` block with `ignore_changes = [spec[0].ingress_policies]` so
|
230
|
+
they don't fight over which ingress rules should be in the policy.
|
225
231
|
|
226
232
|
To get more information about ServicePerimeterDryRunIngressPolicy, see:
|
227
233
|
|
@@ -175,6 +175,9 @@ class ServicePerimeterEgressPolicy(pulumi.CustomResource):
|
|
175
175
|
> **Note:** By default, updates to this resource will remove the EgressPolicy from the
|
176
176
|
from the perimeter and add it back in a non-atomic manner. To ensure that the new EgressPolicy
|
177
177
|
is added before the old one is removed, add a `lifecycle` block with `create_before_destroy = true` to this resource.
|
178
|
+
**Note:** If this resource is used alongside a `accesscontextmanager.ServicePerimeter` resource,
|
179
|
+
the service perimeter resource must have a `lifecycle` block with `ignore_changes = [status[0].egress_policies]` so
|
180
|
+
they don't fight over which egress rules should be in the policy.
|
178
181
|
|
179
182
|
To get more information about ServicePerimeterEgressPolicy, see:
|
180
183
|
|
@@ -215,6 +218,9 @@ class ServicePerimeterEgressPolicy(pulumi.CustomResource):
|
|
215
218
|
> **Note:** By default, updates to this resource will remove the EgressPolicy from the
|
216
219
|
from the perimeter and add it back in a non-atomic manner. To ensure that the new EgressPolicy
|
217
220
|
is added before the old one is removed, add a `lifecycle` block with `create_before_destroy = true` to this resource.
|
221
|
+
**Note:** If this resource is used alongside a `accesscontextmanager.ServicePerimeter` resource,
|
222
|
+
the service perimeter resource must have a `lifecycle` block with `ignore_changes = [status[0].egress_policies]` so
|
223
|
+
they don't fight over which egress rules should be in the policy.
|
218
224
|
|
219
225
|
To get more information about ServicePerimeterEgressPolicy, see:
|
220
226
|
|
@@ -180,6 +180,9 @@ class ServicePerimeterIngressPolicy(pulumi.CustomResource):
|
|
180
180
|
> **Note:** By default, updates to this resource will remove the IngressPolicy from the
|
181
181
|
from the perimeter and add it back in a non-atomic manner. To ensure that the new IngressPolicy
|
182
182
|
is added before the old one is removed, add a `lifecycle` block with `create_before_destroy = true` to this resource.
|
183
|
+
**Note:** If this resource is used alongside a `accesscontextmanager.ServicePerimeter` resource,
|
184
|
+
the service perimeter resource must have a `lifecycle` block with `ignore_changes = [status[0].ingress_policies]` so
|
185
|
+
they don't fight over which ingress rules should be in the policy.
|
183
186
|
|
184
187
|
To get more information about ServicePerimeterIngressPolicy, see:
|
185
188
|
|
@@ -222,6 +225,9 @@ class ServicePerimeterIngressPolicy(pulumi.CustomResource):
|
|
222
225
|
> **Note:** By default, updates to this resource will remove the IngressPolicy from the
|
223
226
|
from the perimeter and add it back in a non-atomic manner. To ensure that the new IngressPolicy
|
224
227
|
is added before the old one is removed, add a `lifecycle` block with `create_before_destroy = true` to this resource.
|
228
|
+
**Note:** If this resource is used alongside a `accesscontextmanager.ServicePerimeter` resource,
|
229
|
+
the service perimeter resource must have a `lifecycle` block with `ignore_changes = [status[0].ingress_policies]` so
|
230
|
+
they don't fight over which ingress rules should be in the policy.
|
225
231
|
|
226
232
|
To get more information about ServicePerimeterIngressPolicy, see:
|
227
233
|
|
pulumi_gcp/apigee/app_group.py
CHANGED
@@ -37,7 +37,7 @@ class AppGroupArgs:
|
|
37
37
|
- - -
|
38
38
|
:param pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]] attributes: A list of attributes
|
39
39
|
Structure is documented below.
|
40
|
-
:param pulumi.Input[str] channel_id: Channel identifier identifies the owner
|
40
|
+
:param pulumi.Input[str] channel_id: Channel identifier identifies the owner maintaining this grouping.
|
41
41
|
:param pulumi.Input[str] channel_uri: A reference to the associated storefront/marketplace.
|
42
42
|
:param pulumi.Input[str] display_name: App group name displayed in the UI
|
43
43
|
:param pulumi.Input[str] name: Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
|
@@ -91,7 +91,7 @@ class AppGroupArgs:
|
|
91
91
|
@pulumi.getter(name="channelId")
|
92
92
|
def channel_id(self) -> Optional[pulumi.Input[str]]:
|
93
93
|
"""
|
94
|
-
Channel identifier identifies the owner
|
94
|
+
Channel identifier identifies the owner maintaining this grouping.
|
95
95
|
"""
|
96
96
|
return pulumi.get(self, "channel_id")
|
97
97
|
|
@@ -168,7 +168,7 @@ class _AppGroupState:
|
|
168
168
|
:param pulumi.Input[str] app_group_id: Internal identifier that cannot be edited
|
169
169
|
:param pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]] attributes: A list of attributes
|
170
170
|
Structure is documented below.
|
171
|
-
:param pulumi.Input[str] channel_id: Channel identifier identifies the owner
|
171
|
+
:param pulumi.Input[str] channel_id: Channel identifier identifies the owner maintaining this grouping.
|
172
172
|
:param pulumi.Input[str] channel_uri: A reference to the associated storefront/marketplace.
|
173
173
|
:param pulumi.Input[str] created_at: Created time as milliseconds since epoch.
|
174
174
|
:param pulumi.Input[str] display_name: App group name displayed in the UI
|
@@ -235,7 +235,7 @@ class _AppGroupState:
|
|
235
235
|
@pulumi.getter(name="channelId")
|
236
236
|
def channel_id(self) -> Optional[pulumi.Input[str]]:
|
237
237
|
"""
|
238
|
-
Channel identifier identifies the owner
|
238
|
+
Channel identifier identifies the owner maintaining this grouping.
|
239
239
|
"""
|
240
240
|
return pulumi.get(self, "channel_id")
|
241
241
|
|
@@ -476,7 +476,7 @@ class AppGroup(pulumi.CustomResource):
|
|
476
476
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
477
477
|
:param pulumi.Input[Sequence[pulumi.Input[Union['AppGroupAttributeArgs', 'AppGroupAttributeArgsDict']]]] attributes: A list of attributes
|
478
478
|
Structure is documented below.
|
479
|
-
:param pulumi.Input[str] channel_id: Channel identifier identifies the owner
|
479
|
+
:param pulumi.Input[str] channel_id: Channel identifier identifies the owner maintaining this grouping.
|
480
480
|
:param pulumi.Input[str] channel_uri: A reference to the associated storefront/marketplace.
|
481
481
|
:param pulumi.Input[str] display_name: App group name displayed in the UI
|
482
482
|
:param pulumi.Input[str] name: Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
|
@@ -683,7 +683,7 @@ class AppGroup(pulumi.CustomResource):
|
|
683
683
|
:param pulumi.Input[str] app_group_id: Internal identifier that cannot be edited
|
684
684
|
:param pulumi.Input[Sequence[pulumi.Input[Union['AppGroupAttributeArgs', 'AppGroupAttributeArgsDict']]]] attributes: A list of attributes
|
685
685
|
Structure is documented below.
|
686
|
-
:param pulumi.Input[str] channel_id: Channel identifier identifies the owner
|
686
|
+
:param pulumi.Input[str] channel_id: Channel identifier identifies the owner maintaining this grouping.
|
687
687
|
:param pulumi.Input[str] channel_uri: A reference to the associated storefront/marketplace.
|
688
688
|
:param pulumi.Input[str] created_at: Created time as milliseconds since epoch.
|
689
689
|
:param pulumi.Input[str] display_name: App group name displayed in the UI
|
@@ -736,7 +736,7 @@ class AppGroup(pulumi.CustomResource):
|
|
736
736
|
@pulumi.getter(name="channelId")
|
737
737
|
def channel_id(self) -> pulumi.Output[Optional[str]]:
|
738
738
|
"""
|
739
|
-
Channel identifier identifies the owner
|
739
|
+
Channel identifier identifies the owner maintaining this grouping.
|
740
740
|
"""
|
741
741
|
return pulumi.get(self, "channel_id")
|
742
742
|
|
@@ -249,6 +249,7 @@ class Client(pulumi.CustomResource):
|
|
249
249
|
```python
|
250
250
|
import pulumi
|
251
251
|
import pulumi_gcp as gcp
|
252
|
+
import pulumi_std as std
|
252
253
|
|
253
254
|
test_project = gcp.organizations.get_project()
|
254
255
|
keyring = gcp.kms.KeyRing("keyring",
|
@@ -268,9 +269,9 @@ class Client(pulumi.CustomResource):
|
|
268
269
|
run_as_service_account=service_account.email,
|
269
270
|
cloud_kms_config={
|
270
271
|
"kms_location": "us-east1",
|
271
|
-
"kms_ring": keyring.id,
|
272
|
-
"key": cryptokey.id,
|
273
|
-
"key_version": test_key.id,
|
272
|
+
"kms_ring": std.basename_output(input=keyring.id).apply(lambda invoke: invoke.result),
|
273
|
+
"key": std.basename_output(input=cryptokey.id).apply(lambda invoke: invoke.result),
|
274
|
+
"key_version": std.basename_output(input=test_key.id).apply(lambda invoke: invoke.result),
|
274
275
|
"kms_project_id": test_project.project_id,
|
275
276
|
})
|
276
277
|
```
|
@@ -343,6 +344,7 @@ class Client(pulumi.CustomResource):
|
|
343
344
|
```python
|
344
345
|
import pulumi
|
345
346
|
import pulumi_gcp as gcp
|
347
|
+
import pulumi_std as std
|
346
348
|
|
347
349
|
test_project = gcp.organizations.get_project()
|
348
350
|
keyring = gcp.kms.KeyRing("keyring",
|
@@ -362,9 +364,9 @@ class Client(pulumi.CustomResource):
|
|
362
364
|
run_as_service_account=service_account.email,
|
363
365
|
cloud_kms_config={
|
364
366
|
"kms_location": "us-east1",
|
365
|
-
"kms_ring": keyring.id,
|
366
|
-
"key": cryptokey.id,
|
367
|
-
"key_version": test_key.id,
|
367
|
+
"kms_ring": std.basename_output(input=keyring.id).apply(lambda invoke: invoke.result),
|
368
|
+
"key": std.basename_output(input=cryptokey.id).apply(lambda invoke: invoke.result),
|
369
|
+
"key_version": std.basename_output(input=test_key.id).apply(lambda invoke: invoke.result),
|
368
370
|
"kms_project_id": test_project.project_id,
|
369
371
|
})
|
370
372
|
```
|