pulumi-gcp 8.22.0a1741790977__py3-none-any.whl → 8.23.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pulumi_gcp/__init__.py +64 -0
- pulumi_gcp/alloydb/_inputs.py +93 -1
- pulumi_gcp/alloydb/outputs.py +128 -2
- pulumi_gcp/applicationintegration/client.py +18 -24
- pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
- pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
- pulumi_gcp/bigquery/_inputs.py +20 -0
- pulumi_gcp/bigquery/outputs.py +12 -0
- pulumi_gcp/bigquery/table.py +61 -0
- pulumi_gcp/bigtable/table.py +7 -7
- pulumi_gcp/certificatemanager/certificate.py +53 -7
- pulumi_gcp/certificatemanager/outputs.py +8 -2
- pulumi_gcp/clouddeploy/_inputs.py +20 -0
- pulumi_gcp/clouddeploy/outputs.py +15 -1
- pulumi_gcp/cloudfunctions/function.py +11 -11
- pulumi_gcp/cloudfunctionsv2/function.py +24 -24
- pulumi_gcp/cloudidentity/get_group_transitive_memberships.py +41 -2
- pulumi_gcp/cloudidentity/outputs.py +18 -38
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +600 -17
- pulumi_gcp/compute/backend_service.py +195 -7
- pulumi_gcp/compute/disk.py +108 -0
- pulumi_gcp/compute/firewall_policy.py +20 -0
- pulumi_gcp/compute/firewall_policy_association.py +28 -2
- pulumi_gcp/compute/get_backend_service.py +12 -1
- pulumi_gcp/compute/get_disk.py +23 -1
- pulumi_gcp/compute/get_region_disk.py +23 -1
- pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
- pulumi_gcp/compute/outputs.py +623 -23
- pulumi_gcp/compute/region_backend_service.py +193 -7
- pulumi_gcp/compute/region_disk.py +114 -0
- pulumi_gcp/compute/region_network_endpoint_group.py +2 -2
- pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
- pulumi_gcp/compute/subnetwork.py +256 -1
- pulumi_gcp/compute/target_https_proxy.py +7 -7
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +6 -6
- pulumi_gcp/container/get_attached_versions.py +2 -2
- pulumi_gcp/container/outputs.py +8 -8
- pulumi_gcp/dataform/repository.py +49 -0
- pulumi_gcp/dataproc/get_metastore_service.py +26 -4
- pulumi_gcp/dataproc/metastore_federation.py +56 -0
- pulumi_gcp/dataproc/metastore_service.py +58 -2
- pulumi_gcp/datastream/_inputs.py +273 -0
- pulumi_gcp/datastream/connection_profile.py +54 -2
- pulumi_gcp/datastream/outputs.py +224 -0
- pulumi_gcp/eventarc/__init__.py +2 -0
- pulumi_gcp/eventarc/_inputs.py +1798 -0
- pulumi_gcp/eventarc/channel.py +85 -93
- pulumi_gcp/eventarc/google_api_source.py +997 -0
- pulumi_gcp/eventarc/outputs.py +1378 -0
- pulumi_gcp/eventarc/pipeline.py +1596 -0
- pulumi_gcp/firebase/__init__.py +1 -0
- pulumi_gcp/firebase/_inputs.py +154 -0
- pulumi_gcp/firebase/app_hosting_backend.py +1303 -0
- pulumi_gcp/firebase/data_connect_service.py +40 -2
- pulumi_gcp/firebase/hosting_version.py +2 -2
- pulumi_gcp/firebase/outputs.py +127 -0
- pulumi_gcp/iam/__init__.py +2 -0
- pulumi_gcp/iam/_inputs.py +51 -18
- pulumi_gcp/iam/folders_policy_binding.py +10 -26
- pulumi_gcp/iam/oauth_client.py +979 -0
- pulumi_gcp/iam/oauth_client_credential.py +641 -0
- pulumi_gcp/iam/organizations_policy_binding.py +8 -24
- pulumi_gcp/iam/outputs.py +34 -12
- pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
- pulumi_gcp/iam/projects_policy_binding.py +8 -24
- pulumi_gcp/kms/crypto_key_version.py +14 -7
- pulumi_gcp/kms/get_key_rings.py +39 -2
- pulumi_gcp/managedkafka/__init__.py +2 -0
- pulumi_gcp/managedkafka/_inputs.py +263 -0
- pulumi_gcp/managedkafka/connect_cluster.py +795 -0
- pulumi_gcp/managedkafka/connector.py +695 -0
- pulumi_gcp/managedkafka/outputs.py +248 -0
- pulumi_gcp/memorystore/instance.py +7 -7
- pulumi_gcp/monitoring/_inputs.py +15 -18
- pulumi_gcp/monitoring/alert_policy.py +46 -0
- pulumi_gcp/monitoring/outputs.py +10 -12
- pulumi_gcp/monitoring/uptime_check_config.py +2 -2
- pulumi_gcp/networksecurity/__init__.py +1 -0
- pulumi_gcp/networksecurity/_inputs.py +673 -18
- pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
- pulumi_gcp/networksecurity/gateway_security_policy.py +0 -7
- pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
- pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
- pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
- pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
- pulumi_gcp/networksecurity/mirroring_deployment.py +200 -94
- pulumi_gcp/networksecurity/mirroring_deployment_group.py +181 -77
- pulumi_gcp/networksecurity/mirroring_endpoint_group.py +185 -80
- pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +165 -105
- pulumi_gcp/networksecurity/outputs.py +495 -12
- pulumi_gcp/networksecurity/tls_inspection_policy.py +14 -0
- pulumi_gcp/networkservices/endpoint_policy.py +12 -0
- pulumi_gcp/networkservices/gateway.py +242 -120
- pulumi_gcp/networkservices/grpc_route.py +12 -0
- pulumi_gcp/networkservices/http_route.py +16 -0
- pulumi_gcp/networkservices/mesh.py +16 -0
- pulumi_gcp/networkservices/service_binding.py +14 -0
- pulumi_gcp/networkservices/tcp_route.py +16 -0
- pulumi_gcp/networkservices/tls_route.py +12 -0
- pulumi_gcp/projects/__init__.py +2 -0
- pulumi_gcp/projects/get_iam_custom_role.py +198 -0
- pulumi_gcp/projects/get_iam_custom_roles.py +164 -0
- pulumi_gcp/projects/outputs.py +96 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/servicenetworking/peered_dns_domain.py +4 -0
- pulumi_gcp/sql/outputs.py +8 -8
- pulumi_gcp/storage/_inputs.py +14 -6
- pulumi_gcp/storage/insights_report_config.py +121 -20
- pulumi_gcp/storage/outputs.py +7 -4
- pulumi_gcp/tpu/_inputs.py +21 -1
- pulumi_gcp/tpu/outputs.py +13 -1
- pulumi_gcp/tpu/v2_vm.py +2 -0
- pulumi_gcp/vmwareengine/_inputs.py +6 -0
- pulumi_gcp/vmwareengine/outputs.py +8 -0
- pulumi_gcp/workflows/workflow.py +75 -7
- pulumi_gcp/workstations/workstation_cluster.py +137 -1
- {pulumi_gcp-8.22.0a1741790977.dist-info → pulumi_gcp-8.23.0.dist-info}/METADATA +2 -2
- {pulumi_gcp-8.22.0a1741790977.dist-info → pulumi_gcp-8.23.0.dist-info}/RECORD +124 -113
- {pulumi_gcp-8.22.0a1741790977.dist-info → pulumi_gcp-8.23.0.dist-info}/WHEEL +1 -1
- {pulumi_gcp-8.22.0a1741790977.dist-info → pulumi_gcp-8.23.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/tpu/outputs.py
CHANGED
@@ -666,15 +666,19 @@ class V2VmNetworkEndpointAccessConfig(dict):
|
|
666
666
|
class V2VmSchedulingConfig(dict):
|
667
667
|
def __init__(__self__, *,
|
668
668
|
preemptible: Optional[bool] = None,
|
669
|
-
reserved: Optional[bool] = None
|
669
|
+
reserved: Optional[bool] = None,
|
670
|
+
spot: Optional[bool] = None):
|
670
671
|
"""
|
671
672
|
:param bool preemptible: Defines whether the node is preemptible.
|
672
673
|
:param bool reserved: Whether the node is created under a reservation.
|
674
|
+
:param bool spot: Optional. Defines whether the node is Spot VM.
|
673
675
|
"""
|
674
676
|
if preemptible is not None:
|
675
677
|
pulumi.set(__self__, "preemptible", preemptible)
|
676
678
|
if reserved is not None:
|
677
679
|
pulumi.set(__self__, "reserved", reserved)
|
680
|
+
if spot is not None:
|
681
|
+
pulumi.set(__self__, "spot", spot)
|
678
682
|
|
679
683
|
@property
|
680
684
|
@pulumi.getter
|
@@ -692,6 +696,14 @@ class V2VmSchedulingConfig(dict):
|
|
692
696
|
"""
|
693
697
|
return pulumi.get(self, "reserved")
|
694
698
|
|
699
|
+
@property
|
700
|
+
@pulumi.getter
|
701
|
+
def spot(self) -> Optional[bool]:
|
702
|
+
"""
|
703
|
+
Optional. Defines whether the node is Spot VM.
|
704
|
+
"""
|
705
|
+
return pulumi.get(self, "spot")
|
706
|
+
|
695
707
|
|
696
708
|
@pulumi.output_type
|
697
709
|
class V2VmServiceAccount(dict):
|
pulumi_gcp/tpu/v2_vm.py
CHANGED
@@ -919,6 +919,7 @@ class V2Vm(pulumi.CustomResource):
|
|
919
919
|
},
|
920
920
|
scheduling_config={
|
921
921
|
"preemptible": True,
|
922
|
+
"spot": True,
|
922
923
|
},
|
923
924
|
shielded_instance_config={
|
924
925
|
"enable_secure_boot": True,
|
@@ -1082,6 +1083,7 @@ class V2Vm(pulumi.CustomResource):
|
|
1082
1083
|
},
|
1083
1084
|
scheduling_config={
|
1084
1085
|
"preemptible": True,
|
1086
|
+
"spot": True,
|
1085
1087
|
},
|
1086
1088
|
shielded_instance_config={
|
1087
1089
|
"enable_secure_boot": True,
|
@@ -1593,10 +1593,12 @@ if not MYPY:
|
|
1593
1593
|
preferred_location: NotRequired[pulumi.Input[str]]
|
1594
1594
|
"""
|
1595
1595
|
Zone that will remain operational when connection between the two zones is lost.
|
1596
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1596
1597
|
"""
|
1597
1598
|
secondary_location: NotRequired[pulumi.Input[str]]
|
1598
1599
|
"""
|
1599
1600
|
Additional zone for a higher level of availability and load balancing.
|
1601
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1600
1602
|
"""
|
1601
1603
|
elif False:
|
1602
1604
|
PrivateCloudManagementClusterStretchedClusterConfigArgsDict: TypeAlias = Mapping[str, Any]
|
@@ -1608,7 +1610,9 @@ class PrivateCloudManagementClusterStretchedClusterConfigArgs:
|
|
1608
1610
|
secondary_location: Optional[pulumi.Input[str]] = None):
|
1609
1611
|
"""
|
1610
1612
|
:param pulumi.Input[str] preferred_location: Zone that will remain operational when connection between the two zones is lost.
|
1613
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1611
1614
|
:param pulumi.Input[str] secondary_location: Additional zone for a higher level of availability and load balancing.
|
1615
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1612
1616
|
"""
|
1613
1617
|
if preferred_location is not None:
|
1614
1618
|
pulumi.set(__self__, "preferred_location", preferred_location)
|
@@ -1620,6 +1624,7 @@ class PrivateCloudManagementClusterStretchedClusterConfigArgs:
|
|
1620
1624
|
def preferred_location(self) -> Optional[pulumi.Input[str]]:
|
1621
1625
|
"""
|
1622
1626
|
Zone that will remain operational when connection between the two zones is lost.
|
1627
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1623
1628
|
"""
|
1624
1629
|
return pulumi.get(self, "preferred_location")
|
1625
1630
|
|
@@ -1632,6 +1637,7 @@ class PrivateCloudManagementClusterStretchedClusterConfigArgs:
|
|
1632
1637
|
def secondary_location(self) -> Optional[pulumi.Input[str]]:
|
1633
1638
|
"""
|
1634
1639
|
Additional zone for a higher level of availability and load balancing.
|
1640
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1635
1641
|
"""
|
1636
1642
|
return pulumi.get(self, "secondary_location")
|
1637
1643
|
|
@@ -1338,7 +1338,9 @@ class PrivateCloudManagementClusterStretchedClusterConfig(dict):
|
|
1338
1338
|
secondary_location: Optional[str] = None):
|
1339
1339
|
"""
|
1340
1340
|
:param str preferred_location: Zone that will remain operational when connection between the two zones is lost.
|
1341
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1341
1342
|
:param str secondary_location: Additional zone for a higher level of availability and load balancing.
|
1343
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1342
1344
|
"""
|
1343
1345
|
if preferred_location is not None:
|
1344
1346
|
pulumi.set(__self__, "preferred_location", preferred_location)
|
@@ -1350,6 +1352,7 @@ class PrivateCloudManagementClusterStretchedClusterConfig(dict):
|
|
1350
1352
|
def preferred_location(self) -> Optional[str]:
|
1351
1353
|
"""
|
1352
1354
|
Zone that will remain operational when connection between the two zones is lost.
|
1355
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1353
1356
|
"""
|
1354
1357
|
return pulumi.get(self, "preferred_location")
|
1355
1358
|
|
@@ -1358,6 +1361,7 @@ class PrivateCloudManagementClusterStretchedClusterConfig(dict):
|
|
1358
1361
|
def secondary_location(self) -> Optional[str]:
|
1359
1362
|
"""
|
1360
1363
|
Additional zone for a higher level of availability and load balancing.
|
1364
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
1361
1365
|
"""
|
1362
1366
|
return pulumi.get(self, "secondary_location")
|
1363
1367
|
|
@@ -2513,7 +2517,9 @@ class GetPrivateCloudManagementClusterStretchedClusterConfigResult(dict):
|
|
2513
2517
|
secondary_location: str):
|
2514
2518
|
"""
|
2515
2519
|
:param str preferred_location: Zone that will remain operational when connection between the two zones is lost.
|
2520
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
2516
2521
|
:param str secondary_location: Additional zone for a higher level of availability and load balancing.
|
2522
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
2517
2523
|
"""
|
2518
2524
|
pulumi.set(__self__, "preferred_location", preferred_location)
|
2519
2525
|
pulumi.set(__self__, "secondary_location", secondary_location)
|
@@ -2523,6 +2529,7 @@ class GetPrivateCloudManagementClusterStretchedClusterConfigResult(dict):
|
|
2523
2529
|
def preferred_location(self) -> str:
|
2524
2530
|
"""
|
2525
2531
|
Zone that will remain operational when connection between the two zones is lost.
|
2532
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
2526
2533
|
"""
|
2527
2534
|
return pulumi.get(self, "preferred_location")
|
2528
2535
|
|
@@ -2531,6 +2538,7 @@ class GetPrivateCloudManagementClusterStretchedClusterConfigResult(dict):
|
|
2531
2538
|
def secondary_location(self) -> str:
|
2532
2539
|
"""
|
2533
2540
|
Additional zone for a higher level of availability and load balancing.
|
2541
|
+
Specify the zone in the following format: projects/{project}/locations/{location}.
|
2534
2542
|
"""
|
2535
2543
|
return pulumi.get(self, "secondary_location")
|
2536
2544
|
|
pulumi_gcp/workflows/workflow.py
CHANGED
@@ -23,6 +23,7 @@ class WorkflowArgs:
|
|
23
23
|
crypto_key_name: Optional[pulumi.Input[str]] = None,
|
24
24
|
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
25
25
|
description: Optional[pulumi.Input[str]] = None,
|
26
|
+
execution_history_level: Optional[pulumi.Input[str]] = None,
|
26
27
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
27
28
|
name: Optional[pulumi.Input[str]] = None,
|
28
29
|
name_prefix: Optional[pulumi.Input[str]] = None,
|
@@ -41,6 +42,10 @@ class WorkflowArgs:
|
|
41
42
|
:param pulumi.Input[str] crypto_key_name: The KMS key used to encrypt workflow and execution data.
|
42
43
|
Format: projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}
|
43
44
|
:param pulumi.Input[str] description: Description of the workflow provided by the user. Must be at most 1000 unicode characters long.
|
45
|
+
:param pulumi.Input[str] execution_history_level: Describes the level of execution history to be stored for this workflow. This configuration
|
46
|
+
determines how much information about workflow executions is preserved. If not specified,
|
47
|
+
defaults to EXECUTION_HISTORY_LEVEL_UNSPECIFIED.
|
48
|
+
Possible values are: `EXECUTION_HISTORY_LEVEL_UNSPECIFIED`, `EXECUTION_HISTORY_BASIC`, `EXECUTION_HISTORY_DETAILED`.
|
44
49
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: A set of key/value label pairs to assign to this Workflow.
|
45
50
|
|
46
51
|
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
@@ -62,7 +67,7 @@ class WorkflowArgs:
|
|
62
67
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of resource manager tags. Resource manager tag keys and values have the same definition
|
63
68
|
as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in
|
64
69
|
the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
65
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_env_vars: User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with
|
70
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_env_vars: User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with "GOOGLE" or "WORKFLOWS".
|
66
71
|
"""
|
67
72
|
if call_log_level is not None:
|
68
73
|
pulumi.set(__self__, "call_log_level", call_log_level)
|
@@ -72,6 +77,8 @@ class WorkflowArgs:
|
|
72
77
|
pulumi.set(__self__, "deletion_protection", deletion_protection)
|
73
78
|
if description is not None:
|
74
79
|
pulumi.set(__self__, "description", description)
|
80
|
+
if execution_history_level is not None:
|
81
|
+
pulumi.set(__self__, "execution_history_level", execution_history_level)
|
75
82
|
if labels is not None:
|
76
83
|
pulumi.set(__self__, "labels", labels)
|
77
84
|
if name is not None:
|
@@ -140,6 +147,21 @@ class WorkflowArgs:
|
|
140
147
|
def description(self, value: Optional[pulumi.Input[str]]):
|
141
148
|
pulumi.set(self, "description", value)
|
142
149
|
|
150
|
+
@property
|
151
|
+
@pulumi.getter(name="executionHistoryLevel")
|
152
|
+
def execution_history_level(self) -> Optional[pulumi.Input[str]]:
|
153
|
+
"""
|
154
|
+
Describes the level of execution history to be stored for this workflow. This configuration
|
155
|
+
determines how much information about workflow executions is preserved. If not specified,
|
156
|
+
defaults to EXECUTION_HISTORY_LEVEL_UNSPECIFIED.
|
157
|
+
Possible values are: `EXECUTION_HISTORY_LEVEL_UNSPECIFIED`, `EXECUTION_HISTORY_BASIC`, `EXECUTION_HISTORY_DETAILED`.
|
158
|
+
"""
|
159
|
+
return pulumi.get(self, "execution_history_level")
|
160
|
+
|
161
|
+
@execution_history_level.setter
|
162
|
+
def execution_history_level(self, value: Optional[pulumi.Input[str]]):
|
163
|
+
pulumi.set(self, "execution_history_level", value)
|
164
|
+
|
143
165
|
@property
|
144
166
|
@pulumi.getter
|
145
167
|
def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
@@ -253,7 +275,7 @@ class WorkflowArgs:
|
|
253
275
|
@pulumi.getter(name="userEnvVars")
|
254
276
|
def user_env_vars(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
255
277
|
"""
|
256
|
-
User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with
|
278
|
+
User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with "GOOGLE" or "WORKFLOWS".
|
257
279
|
"""
|
258
280
|
return pulumi.get(self, "user_env_vars")
|
259
281
|
|
@@ -271,6 +293,7 @@ class _WorkflowState:
|
|
271
293
|
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
272
294
|
description: Optional[pulumi.Input[str]] = None,
|
273
295
|
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
296
|
+
execution_history_level: Optional[pulumi.Input[str]] = None,
|
274
297
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
275
298
|
name: Optional[pulumi.Input[str]] = None,
|
276
299
|
name_prefix: Optional[pulumi.Input[str]] = None,
|
@@ -295,6 +318,10 @@ class _WorkflowState:
|
|
295
318
|
Format: projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}
|
296
319
|
:param pulumi.Input[str] description: Description of the workflow provided by the user. Must be at most 1000 unicode characters long.
|
297
320
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
|
321
|
+
:param pulumi.Input[str] execution_history_level: Describes the level of execution history to be stored for this workflow. This configuration
|
322
|
+
determines how much information about workflow executions is preserved. If not specified,
|
323
|
+
defaults to EXECUTION_HISTORY_LEVEL_UNSPECIFIED.
|
324
|
+
Possible values are: `EXECUTION_HISTORY_LEVEL_UNSPECIFIED`, `EXECUTION_HISTORY_BASIC`, `EXECUTION_HISTORY_DETAILED`.
|
298
325
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: A set of key/value label pairs to assign to this Workflow.
|
299
326
|
|
300
327
|
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
@@ -321,7 +348,7 @@ class _WorkflowState:
|
|
321
348
|
as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in
|
322
349
|
the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
323
350
|
:param pulumi.Input[str] update_time: The timestamp of when the workflow was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
|
324
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_env_vars: User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with
|
351
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_env_vars: User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with "GOOGLE" or "WORKFLOWS".
|
325
352
|
"""
|
326
353
|
if call_log_level is not None:
|
327
354
|
pulumi.set(__self__, "call_log_level", call_log_level)
|
@@ -335,6 +362,8 @@ class _WorkflowState:
|
|
335
362
|
pulumi.set(__self__, "description", description)
|
336
363
|
if effective_labels is not None:
|
337
364
|
pulumi.set(__self__, "effective_labels", effective_labels)
|
365
|
+
if execution_history_level is not None:
|
366
|
+
pulumi.set(__self__, "execution_history_level", execution_history_level)
|
338
367
|
if labels is not None:
|
339
368
|
pulumi.set(__self__, "labels", labels)
|
340
369
|
if name is not None:
|
@@ -435,6 +464,21 @@ class _WorkflowState:
|
|
435
464
|
def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
436
465
|
pulumi.set(self, "effective_labels", value)
|
437
466
|
|
467
|
+
@property
|
468
|
+
@pulumi.getter(name="executionHistoryLevel")
|
469
|
+
def execution_history_level(self) -> Optional[pulumi.Input[str]]:
|
470
|
+
"""
|
471
|
+
Describes the level of execution history to be stored for this workflow. This configuration
|
472
|
+
determines how much information about workflow executions is preserved. If not specified,
|
473
|
+
defaults to EXECUTION_HISTORY_LEVEL_UNSPECIFIED.
|
474
|
+
Possible values are: `EXECUTION_HISTORY_LEVEL_UNSPECIFIED`, `EXECUTION_HISTORY_BASIC`, `EXECUTION_HISTORY_DETAILED`.
|
475
|
+
"""
|
476
|
+
return pulumi.get(self, "execution_history_level")
|
477
|
+
|
478
|
+
@execution_history_level.setter
|
479
|
+
def execution_history_level(self, value: Optional[pulumi.Input[str]]):
|
480
|
+
pulumi.set(self, "execution_history_level", value)
|
481
|
+
|
438
482
|
@property
|
439
483
|
@pulumi.getter
|
440
484
|
def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
@@ -597,7 +641,7 @@ class _WorkflowState:
|
|
597
641
|
@pulumi.getter(name="userEnvVars")
|
598
642
|
def user_env_vars(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
599
643
|
"""
|
600
|
-
User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with
|
644
|
+
User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with "GOOGLE" or "WORKFLOWS".
|
601
645
|
"""
|
602
646
|
return pulumi.get(self, "user_env_vars")
|
603
647
|
|
@@ -615,6 +659,7 @@ class Workflow(pulumi.CustomResource):
|
|
615
659
|
crypto_key_name: Optional[pulumi.Input[str]] = None,
|
616
660
|
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
617
661
|
description: Optional[pulumi.Input[str]] = None,
|
662
|
+
execution_history_level: Optional[pulumi.Input[str]] = None,
|
618
663
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
619
664
|
name: Optional[pulumi.Input[str]] = None,
|
620
665
|
name_prefix: Optional[pulumi.Input[str]] = None,
|
@@ -757,6 +802,10 @@ class Workflow(pulumi.CustomResource):
|
|
757
802
|
:param pulumi.Input[str] crypto_key_name: The KMS key used to encrypt workflow and execution data.
|
758
803
|
Format: projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}
|
759
804
|
:param pulumi.Input[str] description: Description of the workflow provided by the user. Must be at most 1000 unicode characters long.
|
805
|
+
:param pulumi.Input[str] execution_history_level: Describes the level of execution history to be stored for this workflow. This configuration
|
806
|
+
determines how much information about workflow executions is preserved. If not specified,
|
807
|
+
defaults to EXECUTION_HISTORY_LEVEL_UNSPECIFIED.
|
808
|
+
Possible values are: `EXECUTION_HISTORY_LEVEL_UNSPECIFIED`, `EXECUTION_HISTORY_BASIC`, `EXECUTION_HISTORY_DETAILED`.
|
760
809
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: A set of key/value label pairs to assign to this Workflow.
|
761
810
|
|
762
811
|
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
@@ -778,7 +827,7 @@ class Workflow(pulumi.CustomResource):
|
|
778
827
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of resource manager tags. Resource manager tag keys and values have the same definition
|
779
828
|
as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in
|
780
829
|
the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
781
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_env_vars: User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with
|
830
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_env_vars: User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with "GOOGLE" or "WORKFLOWS".
|
782
831
|
"""
|
783
832
|
...
|
784
833
|
@overload
|
@@ -928,6 +977,7 @@ class Workflow(pulumi.CustomResource):
|
|
928
977
|
crypto_key_name: Optional[pulumi.Input[str]] = None,
|
929
978
|
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
930
979
|
description: Optional[pulumi.Input[str]] = None,
|
980
|
+
execution_history_level: Optional[pulumi.Input[str]] = None,
|
931
981
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
932
982
|
name: Optional[pulumi.Input[str]] = None,
|
933
983
|
name_prefix: Optional[pulumi.Input[str]] = None,
|
@@ -950,6 +1000,7 @@ class Workflow(pulumi.CustomResource):
|
|
950
1000
|
__props__.__dict__["crypto_key_name"] = crypto_key_name
|
951
1001
|
__props__.__dict__["deletion_protection"] = deletion_protection
|
952
1002
|
__props__.__dict__["description"] = description
|
1003
|
+
__props__.__dict__["execution_history_level"] = execution_history_level
|
953
1004
|
__props__.__dict__["labels"] = labels
|
954
1005
|
__props__.__dict__["name"] = name
|
955
1006
|
__props__.__dict__["name_prefix"] = name_prefix
|
@@ -983,6 +1034,7 @@ class Workflow(pulumi.CustomResource):
|
|
983
1034
|
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
984
1035
|
description: Optional[pulumi.Input[str]] = None,
|
985
1036
|
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
1037
|
+
execution_history_level: Optional[pulumi.Input[str]] = None,
|
986
1038
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
987
1039
|
name: Optional[pulumi.Input[str]] = None,
|
988
1040
|
name_prefix: Optional[pulumi.Input[str]] = None,
|
@@ -1012,6 +1064,10 @@ class Workflow(pulumi.CustomResource):
|
|
1012
1064
|
Format: projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}
|
1013
1065
|
:param pulumi.Input[str] description: Description of the workflow provided by the user. Must be at most 1000 unicode characters long.
|
1014
1066
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
|
1067
|
+
:param pulumi.Input[str] execution_history_level: Describes the level of execution history to be stored for this workflow. This configuration
|
1068
|
+
determines how much information about workflow executions is preserved. If not specified,
|
1069
|
+
defaults to EXECUTION_HISTORY_LEVEL_UNSPECIFIED.
|
1070
|
+
Possible values are: `EXECUTION_HISTORY_LEVEL_UNSPECIFIED`, `EXECUTION_HISTORY_BASIC`, `EXECUTION_HISTORY_DETAILED`.
|
1015
1071
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: A set of key/value label pairs to assign to this Workflow.
|
1016
1072
|
|
1017
1073
|
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
@@ -1038,7 +1094,7 @@ class Workflow(pulumi.CustomResource):
|
|
1038
1094
|
as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in
|
1039
1095
|
the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
1040
1096
|
:param pulumi.Input[str] update_time: The timestamp of when the workflow was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
|
1041
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_env_vars: User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with
|
1097
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_env_vars: User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with "GOOGLE" or "WORKFLOWS".
|
1042
1098
|
"""
|
1043
1099
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
1044
1100
|
|
@@ -1050,6 +1106,7 @@ class Workflow(pulumi.CustomResource):
|
|
1050
1106
|
__props__.__dict__["deletion_protection"] = deletion_protection
|
1051
1107
|
__props__.__dict__["description"] = description
|
1052
1108
|
__props__.__dict__["effective_labels"] = effective_labels
|
1109
|
+
__props__.__dict__["execution_history_level"] = execution_history_level
|
1053
1110
|
__props__.__dict__["labels"] = labels
|
1054
1111
|
__props__.__dict__["name"] = name
|
1055
1112
|
__props__.__dict__["name_prefix"] = name_prefix
|
@@ -1114,6 +1171,17 @@ class Workflow(pulumi.CustomResource):
|
|
1114
1171
|
"""
|
1115
1172
|
return pulumi.get(self, "effective_labels")
|
1116
1173
|
|
1174
|
+
@property
|
1175
|
+
@pulumi.getter(name="executionHistoryLevel")
|
1176
|
+
def execution_history_level(self) -> pulumi.Output[Optional[str]]:
|
1177
|
+
"""
|
1178
|
+
Describes the level of execution history to be stored for this workflow. This configuration
|
1179
|
+
determines how much information about workflow executions is preserved. If not specified,
|
1180
|
+
defaults to EXECUTION_HISTORY_LEVEL_UNSPECIFIED.
|
1181
|
+
Possible values are: `EXECUTION_HISTORY_LEVEL_UNSPECIFIED`, `EXECUTION_HISTORY_BASIC`, `EXECUTION_HISTORY_DETAILED`.
|
1182
|
+
"""
|
1183
|
+
return pulumi.get(self, "execution_history_level")
|
1184
|
+
|
1117
1185
|
@property
|
1118
1186
|
@pulumi.getter
|
1119
1187
|
def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
|
@@ -1228,7 +1296,7 @@ class Workflow(pulumi.CustomResource):
|
|
1228
1296
|
@pulumi.getter(name="userEnvVars")
|
1229
1297
|
def user_env_vars(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
|
1230
1298
|
"""
|
1231
|
-
User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with
|
1299
|
+
User-defined environment variables associated with this workflow revision. This map has a maximum length of 20. Each string can take up to 4KiB. Keys cannot be empty strings and cannot start with "GOOGLE" or "WORKFLOWS".
|
1232
1300
|
"""
|
1233
1301
|
return pulumi.get(self, "user_env_vars")
|
1234
1302
|
|
@@ -30,7 +30,8 @@ class WorkstationClusterArgs:
|
|
30
30
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
31
31
|
location: Optional[pulumi.Input[str]] = None,
|
32
32
|
private_cluster_config: Optional[pulumi.Input['WorkstationClusterPrivateClusterConfigArgs']] = None,
|
33
|
-
project: Optional[pulumi.Input[str]] = None
|
33
|
+
project: Optional[pulumi.Input[str]] = None,
|
34
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
|
34
35
|
"""
|
35
36
|
The set of arguments for constructing a WorkstationCluster resource.
|
36
37
|
:param pulumi.Input[str] network: The relative resource name of the VPC network on which the instance can be accessed.
|
@@ -55,6 +56,10 @@ class WorkstationClusterArgs:
|
|
55
56
|
Structure is documented below.
|
56
57
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
57
58
|
If it is not provided, the provider project is used.
|
59
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Resource manager tags bound to this resource.
|
60
|
+
For example:
|
61
|
+
"123/environment": "production",
|
62
|
+
"123/costCenter": "marketing"
|
58
63
|
"""
|
59
64
|
pulumi.set(__self__, "network", network)
|
60
65
|
pulumi.set(__self__, "subnetwork", subnetwork)
|
@@ -73,6 +78,8 @@ class WorkstationClusterArgs:
|
|
73
78
|
pulumi.set(__self__, "private_cluster_config", private_cluster_config)
|
74
79
|
if project is not None:
|
75
80
|
pulumi.set(__self__, "project", project)
|
81
|
+
if tags is not None:
|
82
|
+
pulumi.set(__self__, "tags", tags)
|
76
83
|
|
77
84
|
@property
|
78
85
|
@pulumi.getter
|
@@ -206,6 +213,21 @@ class WorkstationClusterArgs:
|
|
206
213
|
def project(self, value: Optional[pulumi.Input[str]]):
|
207
214
|
pulumi.set(self, "project", value)
|
208
215
|
|
216
|
+
@property
|
217
|
+
@pulumi.getter
|
218
|
+
def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
219
|
+
"""
|
220
|
+
Resource manager tags bound to this resource.
|
221
|
+
For example:
|
222
|
+
"123/environment": "production",
|
223
|
+
"123/costCenter": "marketing"
|
224
|
+
"""
|
225
|
+
return pulumi.get(self, "tags")
|
226
|
+
|
227
|
+
@tags.setter
|
228
|
+
def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
229
|
+
pulumi.set(self, "tags", value)
|
230
|
+
|
209
231
|
|
210
232
|
@pulumi.input_type
|
211
233
|
class _WorkstationClusterState:
|
@@ -228,6 +250,7 @@ class _WorkstationClusterState:
|
|
228
250
|
project: Optional[pulumi.Input[str]] = None,
|
229
251
|
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
230
252
|
subnetwork: Optional[pulumi.Input[str]] = None,
|
253
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
231
254
|
uid: Optional[pulumi.Input[str]] = None,
|
232
255
|
workstation_cluster_id: Optional[pulumi.Input[str]] = None):
|
233
256
|
"""
|
@@ -263,6 +286,10 @@ class _WorkstationClusterState:
|
|
263
286
|
and default labels configured on the provider.
|
264
287
|
:param pulumi.Input[str] subnetwork: Name of the Compute Engine subnetwork in which instances associated with this cluster will be created.
|
265
288
|
Must be part of the subnetwork specified for this cluster.
|
289
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Resource manager tags bound to this resource.
|
290
|
+
For example:
|
291
|
+
"123/environment": "production",
|
292
|
+
"123/costCenter": "marketing"
|
266
293
|
:param pulumi.Input[str] uid: The system-generated UID of the resource.
|
267
294
|
:param pulumi.Input[str] workstation_cluster_id: ID to use for the workstation cluster.
|
268
295
|
|
@@ -305,6 +332,8 @@ class _WorkstationClusterState:
|
|
305
332
|
pulumi.set(__self__, "pulumi_labels", pulumi_labels)
|
306
333
|
if subnetwork is not None:
|
307
334
|
pulumi.set(__self__, "subnetwork", subnetwork)
|
335
|
+
if tags is not None:
|
336
|
+
pulumi.set(__self__, "tags", tags)
|
308
337
|
if uid is not None:
|
309
338
|
pulumi.set(__self__, "uid", uid)
|
310
339
|
if workstation_cluster_id is not None:
|
@@ -537,6 +566,21 @@ class _WorkstationClusterState:
|
|
537
566
|
def subnetwork(self, value: Optional[pulumi.Input[str]]):
|
538
567
|
pulumi.set(self, "subnetwork", value)
|
539
568
|
|
569
|
+
@property
|
570
|
+
@pulumi.getter
|
571
|
+
def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
572
|
+
"""
|
573
|
+
Resource manager tags bound to this resource.
|
574
|
+
For example:
|
575
|
+
"123/environment": "production",
|
576
|
+
"123/costCenter": "marketing"
|
577
|
+
"""
|
578
|
+
return pulumi.get(self, "tags")
|
579
|
+
|
580
|
+
@tags.setter
|
581
|
+
def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
582
|
+
pulumi.set(self, "tags", value)
|
583
|
+
|
540
584
|
@property
|
541
585
|
@pulumi.getter
|
542
586
|
def uid(self) -> Optional[pulumi.Input[str]]:
|
@@ -579,6 +623,7 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
579
623
|
private_cluster_config: Optional[pulumi.Input[Union['WorkstationClusterPrivateClusterConfigArgs', 'WorkstationClusterPrivateClusterConfigArgsDict']]] = None,
|
580
624
|
project: Optional[pulumi.Input[str]] = None,
|
581
625
|
subnetwork: Optional[pulumi.Input[str]] = None,
|
626
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
582
627
|
workstation_cluster_id: Optional[pulumi.Input[str]] = None,
|
583
628
|
__props__=None):
|
584
629
|
"""
|
@@ -674,6 +719,40 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
674
719
|
})
|
675
720
|
project = gcp.organizations.get_project()
|
676
721
|
```
|
722
|
+
### Workstation Cluster Tags
|
723
|
+
|
724
|
+
```python
|
725
|
+
import pulumi
|
726
|
+
import pulumi_gcp as gcp
|
727
|
+
|
728
|
+
project = gcp.organizations.get_project()
|
729
|
+
tag_key = gcp.tags.TagKey("tag_key",
|
730
|
+
parent=f"projects/{project.number}",
|
731
|
+
short_name="keyname")
|
732
|
+
tag_value = gcp.tags.TagValue("tag_value",
|
733
|
+
parent=tag_key.name.apply(lambda name: f"tagKeys/{name}"),
|
734
|
+
short_name="valuename")
|
735
|
+
default_network = gcp.compute.Network("default",
|
736
|
+
name="workstation-cluster-tags",
|
737
|
+
auto_create_subnetworks=False)
|
738
|
+
default_subnetwork = gcp.compute.Subnetwork("default",
|
739
|
+
name="workstation-cluster-tags",
|
740
|
+
ip_cidr_range="10.0.0.0/24",
|
741
|
+
region="us-central1",
|
742
|
+
network=default_network.name)
|
743
|
+
default = gcp.workstations.WorkstationCluster("default",
|
744
|
+
workstation_cluster_id="workstation-cluster-tags",
|
745
|
+
network=default_network.id,
|
746
|
+
subnetwork=default_subnetwork.id,
|
747
|
+
location="us-central1",
|
748
|
+
tags=pulumi.Output.all(
|
749
|
+
tagKeyShort_name=tag_key.short_name,
|
750
|
+
tagValueShort_name=tag_value.short_name
|
751
|
+
).apply(lambda resolved_outputs: {
|
752
|
+
f"{project.project_id}/{resolved_outputs['tagKeyShort_name']}": resolved_outputs['tagValueShort_name'],
|
753
|
+
})
|
754
|
+
)
|
755
|
+
```
|
677
756
|
|
678
757
|
## Import
|
679
758
|
|
@@ -719,6 +798,10 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
719
798
|
If it is not provided, the provider project is used.
|
720
799
|
:param pulumi.Input[str] subnetwork: Name of the Compute Engine subnetwork in which instances associated with this cluster will be created.
|
721
800
|
Must be part of the subnetwork specified for this cluster.
|
801
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Resource manager tags bound to this resource.
|
802
|
+
For example:
|
803
|
+
"123/environment": "production",
|
804
|
+
"123/costCenter": "marketing"
|
722
805
|
:param pulumi.Input[str] workstation_cluster_id: ID to use for the workstation cluster.
|
723
806
|
|
724
807
|
|
@@ -823,6 +906,40 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
823
906
|
})
|
824
907
|
project = gcp.organizations.get_project()
|
825
908
|
```
|
909
|
+
### Workstation Cluster Tags
|
910
|
+
|
911
|
+
```python
|
912
|
+
import pulumi
|
913
|
+
import pulumi_gcp as gcp
|
914
|
+
|
915
|
+
project = gcp.organizations.get_project()
|
916
|
+
tag_key = gcp.tags.TagKey("tag_key",
|
917
|
+
parent=f"projects/{project.number}",
|
918
|
+
short_name="keyname")
|
919
|
+
tag_value = gcp.tags.TagValue("tag_value",
|
920
|
+
parent=tag_key.name.apply(lambda name: f"tagKeys/{name}"),
|
921
|
+
short_name="valuename")
|
922
|
+
default_network = gcp.compute.Network("default",
|
923
|
+
name="workstation-cluster-tags",
|
924
|
+
auto_create_subnetworks=False)
|
925
|
+
default_subnetwork = gcp.compute.Subnetwork("default",
|
926
|
+
name="workstation-cluster-tags",
|
927
|
+
ip_cidr_range="10.0.0.0/24",
|
928
|
+
region="us-central1",
|
929
|
+
network=default_network.name)
|
930
|
+
default = gcp.workstations.WorkstationCluster("default",
|
931
|
+
workstation_cluster_id="workstation-cluster-tags",
|
932
|
+
network=default_network.id,
|
933
|
+
subnetwork=default_subnetwork.id,
|
934
|
+
location="us-central1",
|
935
|
+
tags=pulumi.Output.all(
|
936
|
+
tagKeyShort_name=tag_key.short_name,
|
937
|
+
tagValueShort_name=tag_value.short_name
|
938
|
+
).apply(lambda resolved_outputs: {
|
939
|
+
f"{project.project_id}/{resolved_outputs['tagKeyShort_name']}": resolved_outputs['tagValueShort_name'],
|
940
|
+
})
|
941
|
+
)
|
942
|
+
```
|
826
943
|
|
827
944
|
## Import
|
828
945
|
|
@@ -872,6 +989,7 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
872
989
|
private_cluster_config: Optional[pulumi.Input[Union['WorkstationClusterPrivateClusterConfigArgs', 'WorkstationClusterPrivateClusterConfigArgsDict']]] = None,
|
873
990
|
project: Optional[pulumi.Input[str]] = None,
|
874
991
|
subnetwork: Optional[pulumi.Input[str]] = None,
|
992
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
875
993
|
workstation_cluster_id: Optional[pulumi.Input[str]] = None,
|
876
994
|
__props__=None):
|
877
995
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
@@ -895,6 +1013,7 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
895
1013
|
if subnetwork is None and not opts.urn:
|
896
1014
|
raise TypeError("Missing required property 'subnetwork'")
|
897
1015
|
__props__.__dict__["subnetwork"] = subnetwork
|
1016
|
+
__props__.__dict__["tags"] = tags
|
898
1017
|
if workstation_cluster_id is None and not opts.urn:
|
899
1018
|
raise TypeError("Missing required property 'workstation_cluster_id'")
|
900
1019
|
__props__.__dict__["workstation_cluster_id"] = workstation_cluster_id
|
@@ -938,6 +1057,7 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
938
1057
|
project: Optional[pulumi.Input[str]] = None,
|
939
1058
|
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
940
1059
|
subnetwork: Optional[pulumi.Input[str]] = None,
|
1060
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
941
1061
|
uid: Optional[pulumi.Input[str]] = None,
|
942
1062
|
workstation_cluster_id: Optional[pulumi.Input[str]] = None) -> 'WorkstationCluster':
|
943
1063
|
"""
|
@@ -978,6 +1098,10 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
978
1098
|
and default labels configured on the provider.
|
979
1099
|
:param pulumi.Input[str] subnetwork: Name of the Compute Engine subnetwork in which instances associated with this cluster will be created.
|
980
1100
|
Must be part of the subnetwork specified for this cluster.
|
1101
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Resource manager tags bound to this resource.
|
1102
|
+
For example:
|
1103
|
+
"123/environment": "production",
|
1104
|
+
"123/costCenter": "marketing"
|
981
1105
|
:param pulumi.Input[str] uid: The system-generated UID of the resource.
|
982
1106
|
:param pulumi.Input[str] workstation_cluster_id: ID to use for the workstation cluster.
|
983
1107
|
|
@@ -1006,6 +1130,7 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
1006
1130
|
__props__.__dict__["project"] = project
|
1007
1131
|
__props__.__dict__["pulumi_labels"] = pulumi_labels
|
1008
1132
|
__props__.__dict__["subnetwork"] = subnetwork
|
1133
|
+
__props__.__dict__["tags"] = tags
|
1009
1134
|
__props__.__dict__["uid"] = uid
|
1010
1135
|
__props__.__dict__["workstation_cluster_id"] = workstation_cluster_id
|
1011
1136
|
return WorkstationCluster(resource_name, opts=opts, __props__=__props__)
|
@@ -1165,6 +1290,17 @@ class WorkstationCluster(pulumi.CustomResource):
|
|
1165
1290
|
"""
|
1166
1291
|
return pulumi.get(self, "subnetwork")
|
1167
1292
|
|
1293
|
+
@property
|
1294
|
+
@pulumi.getter
|
1295
|
+
def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
|
1296
|
+
"""
|
1297
|
+
Resource manager tags bound to this resource.
|
1298
|
+
For example:
|
1299
|
+
"123/environment": "production",
|
1300
|
+
"123/costCenter": "marketing"
|
1301
|
+
"""
|
1302
|
+
return pulumi.get(self, "tags")
|
1303
|
+
|
1168
1304
|
@property
|
1169
1305
|
@pulumi.getter
|
1170
1306
|
def uid(self) -> pulumi.Output[str]:
|