pulumi-gcp 8.9.0a1731366299__py3-none-any.whl → 8.9.0a1731480835__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. pulumi_gcp/__init__.py +64 -0
  2. pulumi_gcp/activedirectory/domain.py +24 -0
  3. pulumi_gcp/apigee/__init__.py +1 -0
  4. pulumi_gcp/apigee/_inputs.py +74 -0
  5. pulumi_gcp/apigee/api.py +456 -0
  6. pulumi_gcp/apigee/outputs.py +65 -0
  7. pulumi_gcp/applicationintegration/auth_config.py +24 -0
  8. pulumi_gcp/backupdisasterrecovery/__init__.py +4 -0
  9. pulumi_gcp/backupdisasterrecovery/_inputs.py +533 -0
  10. pulumi_gcp/backupdisasterrecovery/backup_plan.py +653 -0
  11. pulumi_gcp/backupdisasterrecovery/backup_plan_association.py +766 -0
  12. pulumi_gcp/backupdisasterrecovery/backup_vault.py +146 -6
  13. pulumi_gcp/backupdisasterrecovery/get_backup_plan.py +204 -0
  14. pulumi_gcp/backupdisasterrecovery/get_backup_plan_association.py +243 -0
  15. pulumi_gcp/backupdisasterrecovery/outputs.py +702 -0
  16. pulumi_gcp/bigquery/data_transfer_config.py +24 -0
  17. pulumi_gcp/cloudrunv2/_inputs.py +46 -0
  18. pulumi_gcp/cloudrunv2/job.py +0 -2
  19. pulumi_gcp/cloudrunv2/outputs.py +60 -2
  20. pulumi_gcp/cloudrunv2/service.py +0 -2
  21. pulumi_gcp/compute/__init__.py +1 -0
  22. pulumi_gcp/compute/_inputs.py +2163 -256
  23. pulumi_gcp/compute/disk.py +7 -7
  24. pulumi_gcp/compute/firewall_policy_rule.py +108 -54
  25. pulumi_gcp/compute/get_region_instance_group_manager.py +12 -1
  26. pulumi_gcp/compute/health_check.py +42 -42
  27. pulumi_gcp/compute/network_firewall_policy_rule.py +4 -4
  28. pulumi_gcp/compute/network_firewall_policy_with_rules.py +10 -10
  29. pulumi_gcp/compute/node_template.py +95 -0
  30. pulumi_gcp/compute/outputs.py +1639 -213
  31. pulumi_gcp/compute/region_disk.py +7 -7
  32. pulumi_gcp/compute/region_health_check.py +42 -42
  33. pulumi_gcp/compute/region_instance_group_manager.py +54 -14
  34. pulumi_gcp/compute/region_network_firewall_policy_rule.py +4 -4
  35. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +10 -10
  36. pulumi_gcp/compute/region_resize_request.py +772 -0
  37. pulumi_gcp/compute/region_security_policy.py +120 -0
  38. pulumi_gcp/compute/region_security_policy_rule.py +6 -6
  39. pulumi_gcp/compute/router_peer.py +56 -35
  40. pulumi_gcp/compute/security_scan_config.py +8 -8
  41. pulumi_gcp/config/__init__.pyi +4 -0
  42. pulumi_gcp/config/vars.py +8 -0
  43. pulumi_gcp/container/_inputs.py +345 -10
  44. pulumi_gcp/container/cluster.py +101 -0
  45. pulumi_gcp/container/get_cluster.py +23 -1
  46. pulumi_gcp/container/outputs.py +456 -8
  47. pulumi_gcp/dataloss/prevention_discovery_config.py +7 -7
  48. pulumi_gcp/dataproc/__init__.py +2 -0
  49. pulumi_gcp/dataproc/_inputs.py +101 -0
  50. pulumi_gcp/dataproc/gdc_application_environment.py +931 -0
  51. pulumi_gcp/dataproc/gdc_service_instance.py +1022 -0
  52. pulumi_gcp/dataproc/outputs.py +94 -0
  53. pulumi_gcp/edgecontainer/vpn_connection.py +4 -4
  54. pulumi_gcp/firebase/android_app.py +2 -2
  55. pulumi_gcp/firebase/apple_app.py +2 -2
  56. pulumi_gcp/firebase/web_app.py +2 -2
  57. pulumi_gcp/firestore/index.py +44 -0
  58. pulumi_gcp/gkeonprem/_inputs.py +15 -15
  59. pulumi_gcp/gkeonprem/outputs.py +10 -10
  60. pulumi_gcp/healthcare/dataset.py +7 -7
  61. pulumi_gcp/healthcare/dicom_store.py +7 -7
  62. pulumi_gcp/healthcare/fhir_store.py +7 -7
  63. pulumi_gcp/healthcare/hl7_store.py +14 -14
  64. pulumi_gcp/iam/__init__.py +1 -0
  65. pulumi_gcp/iam/_inputs.py +161 -0
  66. pulumi_gcp/iam/outputs.py +114 -0
  67. pulumi_gcp/iam/principal_access_boundary_policy.py +679 -0
  68. pulumi_gcp/logging/metric.py +2 -2
  69. pulumi_gcp/looker/_inputs.py +6 -0
  70. pulumi_gcp/looker/instance.py +169 -321
  71. pulumi_gcp/looker/outputs.py +4 -0
  72. pulumi_gcp/memorystore/instance.py +4 -0
  73. pulumi_gcp/monitoring/alert_policy.py +24 -0
  74. pulumi_gcp/monitoring/custom_service.py +24 -0
  75. pulumi_gcp/monitoring/group.py +24 -0
  76. pulumi_gcp/monitoring/metric_descriptor.py +24 -0
  77. pulumi_gcp/monitoring/slo.py +24 -0
  78. pulumi_gcp/monitoring/uptime_check_config.py +24 -0
  79. pulumi_gcp/networkmanagement/__init__.py +1 -0
  80. pulumi_gcp/networkmanagement/vpc_flow_logs_config.py +1358 -0
  81. pulumi_gcp/osconfig/patch_deployment.py +8 -8
  82. pulumi_gcp/provider.py +40 -0
  83. pulumi_gcp/pulumi-plugin.json +1 -1
  84. pulumi_gcp/redis/_inputs.py +3 -3
  85. pulumi_gcp/redis/outputs.py +2 -2
  86. pulumi_gcp/securitycenter/notification_config.py +4 -16
  87. pulumi_gcp/securitycenter/project_notification_config.py +0 -24
  88. pulumi_gcp/securitycenter/v2_organization_notification_config.py +4 -16
  89. pulumi_gcp/spanner/__init__.py +1 -0
  90. pulumi_gcp/spanner/_inputs.py +9 -9
  91. pulumi_gcp/spanner/get_database.py +229 -0
  92. pulumi_gcp/spanner/get_instance.py +12 -1
  93. pulumi_gcp/spanner/instance.py +70 -0
  94. pulumi_gcp/spanner/outputs.py +46 -12
  95. pulumi_gcp/sql/_inputs.py +26 -0
  96. pulumi_gcp/sql/database_instance.py +124 -11
  97. pulumi_gcp/sql/get_database_instance.py +12 -1
  98. pulumi_gcp/sql/outputs.py +51 -0
  99. pulumi_gcp/storage/_inputs.py +3 -3
  100. pulumi_gcp/storage/outputs.py +2 -2
  101. pulumi_gcp/tags/tag_binding.py +4 -4
  102. pulumi_gcp/tags/tag_value.py +2 -2
  103. pulumi_gcp/transcoder/job.py +24 -0
  104. pulumi_gcp/vertex/_inputs.py +184 -0
  105. pulumi_gcp/vertex/ai_endpoint.py +394 -8
  106. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  107. pulumi_gcp/vertex/outputs.py +166 -0
  108. pulumi_gcp/workbench/instance.py +21 -7
  109. pulumi_gcp/workflows/workflow.py +36 -0
  110. pulumi_gcp/workstations/workstation_config.py +8 -8
  111. {pulumi_gcp-8.9.0a1731366299.dist-info → pulumi_gcp-8.9.0a1731480835.dist-info}/METADATA +1 -1
  112. {pulumi_gcp-8.9.0a1731366299.dist-info → pulumi_gcp-8.9.0a1731480835.dist-info}/RECORD +114 -103
  113. {pulumi_gcp-8.9.0a1731366299.dist-info → pulumi_gcp-8.9.0a1731480835.dist-info}/WHEEL +0 -0
  114. {pulumi_gcp-8.9.0a1731366299.dist-info → pulumi_gcp-8.9.0a1731480835.dist-info}/top_level.txt +0 -0
@@ -618,8 +618,8 @@ class AiFeatureOnlineStoreFeatureview(pulumi.CustomResource):
618
618
 
619
619
  test_project = gcp.organizations.get_project()
620
620
  project = gcp.organizations.Project("project",
621
- project_id="tf-test_69391",
622
- name="tf-test_8270",
621
+ project_id="tf-test_41150",
622
+ name="tf-test_89313",
623
623
  org_id="123456789",
624
624
  billing_account="000000-0000000-0000000-000000",
625
625
  deletion_policy="DELETE")
@@ -1063,8 +1063,8 @@ class AiFeatureOnlineStoreFeatureview(pulumi.CustomResource):
1063
1063
 
1064
1064
  test_project = gcp.organizations.get_project()
1065
1065
  project = gcp.organizations.Project("project",
1066
- project_id="tf-test_69391",
1067
- name="tf-test_8270",
1066
+ project_id="tf-test_41150",
1067
+ name="tf-test_89313",
1068
1068
  org_id="123456789",
1069
1069
  billing_account="000000-0000000-0000000-000000",
1070
1070
  deletion_policy="DELETE")
@@ -29,6 +29,9 @@ __all__ = [
29
29
  'AiEndpointEncryptionSpec',
30
30
  'AiEndpointIamBindingCondition',
31
31
  'AiEndpointIamMemberCondition',
32
+ 'AiEndpointPredictRequestResponseLoggingConfig',
33
+ 'AiEndpointPredictRequestResponseLoggingConfigBigqueryDestination',
34
+ 'AiEndpointPrivateServiceConnectConfig',
32
35
  'AiFeatureGroupBigQuery',
33
36
  'AiFeatureGroupBigQueryBigQuerySource',
34
37
  'AiFeatureOnlineStoreBigtable',
@@ -967,6 +970,169 @@ class AiEndpointIamMemberCondition(dict):
967
970
  return pulumi.get(self, "description")
968
971
 
969
972
 
973
+ @pulumi.output_type
974
+ class AiEndpointPredictRequestResponseLoggingConfig(dict):
975
+ @staticmethod
976
+ def __key_warning(key: str):
977
+ suggest = None
978
+ if key == "bigqueryDestination":
979
+ suggest = "bigquery_destination"
980
+ elif key == "samplingRate":
981
+ suggest = "sampling_rate"
982
+
983
+ if suggest:
984
+ pulumi.log.warn(f"Key '{key}' not found in AiEndpointPredictRequestResponseLoggingConfig. Access the value via the '{suggest}' property getter instead.")
985
+
986
+ def __getitem__(self, key: str) -> Any:
987
+ AiEndpointPredictRequestResponseLoggingConfig.__key_warning(key)
988
+ return super().__getitem__(key)
989
+
990
+ def get(self, key: str, default = None) -> Any:
991
+ AiEndpointPredictRequestResponseLoggingConfig.__key_warning(key)
992
+ return super().get(key, default)
993
+
994
+ def __init__(__self__, *,
995
+ bigquery_destination: Optional['outputs.AiEndpointPredictRequestResponseLoggingConfigBigqueryDestination'] = None,
996
+ enabled: Optional[bool] = None,
997
+ sampling_rate: Optional[float] = None):
998
+ """
999
+ :param 'AiEndpointPredictRequestResponseLoggingConfigBigqueryDestinationArgs' bigquery_destination: BigQuery table for logging. If only given a project, a new dataset will be created with name `logging_<endpoint-display-name>_<endpoint-id>` where will be made BigQuery-dataset-name compatible (e.g. most special characters will become underscores). If no table name is given, a new table will be created with name `request_response_logging`
1000
+ Structure is documented below.
1001
+ :param bool enabled: If logging is enabled or not.
1002
+ :param float sampling_rate: Percentage of requests to be logged, expressed as a fraction in range(0,1]
1003
+ """
1004
+ if bigquery_destination is not None:
1005
+ pulumi.set(__self__, "bigquery_destination", bigquery_destination)
1006
+ if enabled is not None:
1007
+ pulumi.set(__self__, "enabled", enabled)
1008
+ if sampling_rate is not None:
1009
+ pulumi.set(__self__, "sampling_rate", sampling_rate)
1010
+
1011
+ @property
1012
+ @pulumi.getter(name="bigqueryDestination")
1013
+ def bigquery_destination(self) -> Optional['outputs.AiEndpointPredictRequestResponseLoggingConfigBigqueryDestination']:
1014
+ """
1015
+ BigQuery table for logging. If only given a project, a new dataset will be created with name `logging_<endpoint-display-name>_<endpoint-id>` where will be made BigQuery-dataset-name compatible (e.g. most special characters will become underscores). If no table name is given, a new table will be created with name `request_response_logging`
1016
+ Structure is documented below.
1017
+ """
1018
+ return pulumi.get(self, "bigquery_destination")
1019
+
1020
+ @property
1021
+ @pulumi.getter
1022
+ def enabled(self) -> Optional[bool]:
1023
+ """
1024
+ If logging is enabled or not.
1025
+ """
1026
+ return pulumi.get(self, "enabled")
1027
+
1028
+ @property
1029
+ @pulumi.getter(name="samplingRate")
1030
+ def sampling_rate(self) -> Optional[float]:
1031
+ """
1032
+ Percentage of requests to be logged, expressed as a fraction in range(0,1]
1033
+ """
1034
+ return pulumi.get(self, "sampling_rate")
1035
+
1036
+
1037
+ @pulumi.output_type
1038
+ class AiEndpointPredictRequestResponseLoggingConfigBigqueryDestination(dict):
1039
+ @staticmethod
1040
+ def __key_warning(key: str):
1041
+ suggest = None
1042
+ if key == "outputUri":
1043
+ suggest = "output_uri"
1044
+
1045
+ if suggest:
1046
+ pulumi.log.warn(f"Key '{key}' not found in AiEndpointPredictRequestResponseLoggingConfigBigqueryDestination. Access the value via the '{suggest}' property getter instead.")
1047
+
1048
+ def __getitem__(self, key: str) -> Any:
1049
+ AiEndpointPredictRequestResponseLoggingConfigBigqueryDestination.__key_warning(key)
1050
+ return super().__getitem__(key)
1051
+
1052
+ def get(self, key: str, default = None) -> Any:
1053
+ AiEndpointPredictRequestResponseLoggingConfigBigqueryDestination.__key_warning(key)
1054
+ return super().get(key, default)
1055
+
1056
+ def __init__(__self__, *,
1057
+ output_uri: Optional[str] = None):
1058
+ """
1059
+ :param str output_uri: BigQuery URI to a project or table, up to 2000 characters long. When only the project is specified, the Dataset and Table is created. When the full table reference is specified, the Dataset must exist and table must not exist. Accepted forms: - BigQuery path. For example: `bq://projectId` or `bq://projectId.bqDatasetId` or `bq://projectId.bqDatasetId.bqTableId`.
1060
+ """
1061
+ if output_uri is not None:
1062
+ pulumi.set(__self__, "output_uri", output_uri)
1063
+
1064
+ @property
1065
+ @pulumi.getter(name="outputUri")
1066
+ def output_uri(self) -> Optional[str]:
1067
+ """
1068
+ BigQuery URI to a project or table, up to 2000 characters long. When only the project is specified, the Dataset and Table is created. When the full table reference is specified, the Dataset must exist and table must not exist. Accepted forms: - BigQuery path. For example: `bq://projectId` or `bq://projectId.bqDatasetId` or `bq://projectId.bqDatasetId.bqTableId`.
1069
+ """
1070
+ return pulumi.get(self, "output_uri")
1071
+
1072
+
1073
+ @pulumi.output_type
1074
+ class AiEndpointPrivateServiceConnectConfig(dict):
1075
+ @staticmethod
1076
+ def __key_warning(key: str):
1077
+ suggest = None
1078
+ if key == "enablePrivateServiceConnect":
1079
+ suggest = "enable_private_service_connect"
1080
+ elif key == "enableSecurePrivateServiceConnect":
1081
+ suggest = "enable_secure_private_service_connect"
1082
+ elif key == "projectAllowlists":
1083
+ suggest = "project_allowlists"
1084
+
1085
+ if suggest:
1086
+ pulumi.log.warn(f"Key '{key}' not found in AiEndpointPrivateServiceConnectConfig. Access the value via the '{suggest}' property getter instead.")
1087
+
1088
+ def __getitem__(self, key: str) -> Any:
1089
+ AiEndpointPrivateServiceConnectConfig.__key_warning(key)
1090
+ return super().__getitem__(key)
1091
+
1092
+ def get(self, key: str, default = None) -> Any:
1093
+ AiEndpointPrivateServiceConnectConfig.__key_warning(key)
1094
+ return super().get(key, default)
1095
+
1096
+ def __init__(__self__, *,
1097
+ enable_private_service_connect: bool,
1098
+ enable_secure_private_service_connect: Optional[bool] = None,
1099
+ project_allowlists: Optional[Sequence[str]] = None):
1100
+ """
1101
+ :param bool enable_private_service_connect: Required. If true, expose the IndexEndpoint via private service connect.
1102
+ :param bool enable_secure_private_service_connect: If set to true, enable secure private service connect with IAM authorization. Otherwise, private service connect will be done without authorization. Note latency will be slightly increased if authorization is enabled.
1103
+ :param Sequence[str] project_allowlists: A list of Projects from which the forwarding rule will target the service attachment.
1104
+ """
1105
+ pulumi.set(__self__, "enable_private_service_connect", enable_private_service_connect)
1106
+ if enable_secure_private_service_connect is not None:
1107
+ pulumi.set(__self__, "enable_secure_private_service_connect", enable_secure_private_service_connect)
1108
+ if project_allowlists is not None:
1109
+ pulumi.set(__self__, "project_allowlists", project_allowlists)
1110
+
1111
+ @property
1112
+ @pulumi.getter(name="enablePrivateServiceConnect")
1113
+ def enable_private_service_connect(self) -> bool:
1114
+ """
1115
+ Required. If true, expose the IndexEndpoint via private service connect.
1116
+ """
1117
+ return pulumi.get(self, "enable_private_service_connect")
1118
+
1119
+ @property
1120
+ @pulumi.getter(name="enableSecurePrivateServiceConnect")
1121
+ def enable_secure_private_service_connect(self) -> Optional[bool]:
1122
+ """
1123
+ If set to true, enable secure private service connect with IAM authorization. Otherwise, private service connect will be done without authorization. Note latency will be slightly increased if authorization is enabled.
1124
+ """
1125
+ return pulumi.get(self, "enable_secure_private_service_connect")
1126
+
1127
+ @property
1128
+ @pulumi.getter(name="projectAllowlists")
1129
+ def project_allowlists(self) -> Optional[Sequence[str]]:
1130
+ """
1131
+ A list of Projects from which the forwarding rule will target the service attachment.
1132
+ """
1133
+ return pulumi.get(self, "project_allowlists")
1134
+
1135
+
970
1136
  @pulumi.output_type
971
1137
  class AiFeatureGroupBigQuery(dict):
972
1138
  @staticmethod
@@ -43,7 +43,9 @@ class InstanceArgs:
43
43
  :param pulumi.Input[str] instance_id: Required. User-defined unique ID of this instance.
44
44
  :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_owners: 'Optional. Input only. The owner of this instance after creation. Format:
45
45
  `alias@example.com` Currently supports one owner only. If not specified, all of
46
- the service account users of your VM instance''s service account can use the instance.'
46
+ the service account users of your VM instance''s service account can use the instance.
47
+ If specified, sets the access mode to `Single user`. For more details, see
48
+ https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab'
47
49
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels to apply to this instance. These can be later modified
48
50
  by the UpdateInstance method.
49
51
 
@@ -141,7 +143,9 @@ class InstanceArgs:
141
143
  """
142
144
  'Optional. Input only. The owner of this instance after creation. Format:
143
145
  `alias@example.com` Currently supports one owner only. If not specified, all of
144
- the service account users of your VM instance''s service account can use the instance.'
146
+ the service account users of your VM instance''s service account can use the instance.
147
+ If specified, sets the access mode to `Single user`. For more details, see
148
+ https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab'
145
149
  """
146
150
  return pulumi.get(self, "instance_owners")
147
151
 
@@ -230,7 +234,9 @@ class _InstanceState:
230
234
  :param pulumi.Input[str] instance_id: Required. User-defined unique ID of this instance.
231
235
  :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_owners: 'Optional. Input only. The owner of this instance after creation. Format:
232
236
  `alias@example.com` Currently supports one owner only. If not specified, all of
233
- the service account users of your VM instance''s service account can use the instance.'
237
+ the service account users of your VM instance''s service account can use the instance.
238
+ If specified, sets the access mode to `Single user`. For more details, see
239
+ https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab'
234
240
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels to apply to this instance. These can be later modified
235
241
  by the UpdateInstance method.
236
242
 
@@ -410,7 +416,9 @@ class _InstanceState:
410
416
  """
411
417
  'Optional. Input only. The owner of this instance after creation. Format:
412
418
  `alias@example.com` Currently supports one owner only. If not specified, all of
413
- the service account users of your VM instance''s service account can use the instance.'
419
+ the service account users of your VM instance''s service account can use the instance.
420
+ If specified, sets the access mode to `Single user`. For more details, see
421
+ https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab'
414
422
  """
415
423
  return pulumi.get(self, "instance_owners")
416
424
 
@@ -741,7 +749,9 @@ class Instance(pulumi.CustomResource):
741
749
  :param pulumi.Input[str] instance_id: Required. User-defined unique ID of this instance.
742
750
  :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_owners: 'Optional. Input only. The owner of this instance after creation. Format:
743
751
  `alias@example.com` Currently supports one owner only. If not specified, all of
744
- the service account users of your VM instance''s service account can use the instance.'
752
+ the service account users of your VM instance''s service account can use the instance.
753
+ If specified, sets the access mode to `Single user`. For more details, see
754
+ https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab'
745
755
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels to apply to this instance. These can be later modified
746
756
  by the UpdateInstance method.
747
757
 
@@ -1046,7 +1056,9 @@ class Instance(pulumi.CustomResource):
1046
1056
  :param pulumi.Input[str] instance_id: Required. User-defined unique ID of this instance.
1047
1057
  :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_owners: 'Optional. Input only. The owner of this instance after creation. Format:
1048
1058
  `alias@example.com` Currently supports one owner only. If not specified, all of
1049
- the service account users of your VM instance''s service account can use the instance.'
1059
+ the service account users of your VM instance''s service account can use the instance.
1060
+ If specified, sets the access mode to `Single user`. For more details, see
1061
+ https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab'
1050
1062
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels to apply to this instance. These can be later modified
1051
1063
  by the UpdateInstance method.
1052
1064
 
@@ -1176,7 +1188,9 @@ class Instance(pulumi.CustomResource):
1176
1188
  """
1177
1189
  'Optional. Input only. The owner of this instance after creation. Format:
1178
1190
  `alias@example.com` Currently supports one owner only. If not specified, all of
1179
- the service account users of your VM instance''s service account can use the instance.'
1191
+ the service account users of your VM instance''s service account can use the instance.
1192
+ If specified, sets the access mode to `Single user`. For more details, see
1193
+ https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab'
1180
1194
  """
1181
1195
  return pulumi.get(self, "instance_owners")
1182
1196
 
@@ -21,6 +21,7 @@ class WorkflowArgs:
21
21
  def __init__(__self__, *,
22
22
  call_log_level: Optional[pulumi.Input[str]] = None,
23
23
  crypto_key_name: Optional[pulumi.Input[str]] = None,
24
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
24
25
  description: Optional[pulumi.Input[str]] = None,
25
26
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
26
27
  name: Optional[pulumi.Input[str]] = None,
@@ -63,6 +64,8 @@ class WorkflowArgs:
63
64
  pulumi.set(__self__, "call_log_level", call_log_level)
64
65
  if crypto_key_name is not None:
65
66
  pulumi.set(__self__, "crypto_key_name", crypto_key_name)
67
+ if deletion_protection is not None:
68
+ pulumi.set(__self__, "deletion_protection", deletion_protection)
66
69
  if description is not None:
67
70
  pulumi.set(__self__, "description", description)
68
71
  if labels is not None:
@@ -110,6 +113,15 @@ class WorkflowArgs:
110
113
  def crypto_key_name(self, value: Optional[pulumi.Input[str]]):
111
114
  pulumi.set(self, "crypto_key_name", value)
112
115
 
116
+ @property
117
+ @pulumi.getter(name="deletionProtection")
118
+ def deletion_protection(self) -> Optional[pulumi.Input[bool]]:
119
+ return pulumi.get(self, "deletion_protection")
120
+
121
+ @deletion_protection.setter
122
+ def deletion_protection(self, value: Optional[pulumi.Input[bool]]):
123
+ pulumi.set(self, "deletion_protection", value)
124
+
113
125
  @property
114
126
  @pulumi.getter
115
127
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -236,6 +248,7 @@ class _WorkflowState:
236
248
  call_log_level: Optional[pulumi.Input[str]] = None,
237
249
  create_time: Optional[pulumi.Input[str]] = None,
238
250
  crypto_key_name: Optional[pulumi.Input[str]] = None,
251
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
239
252
  description: Optional[pulumi.Input[str]] = None,
240
253
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
241
254
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -292,6 +305,8 @@ class _WorkflowState:
292
305
  pulumi.set(__self__, "create_time", create_time)
293
306
  if crypto_key_name is not None:
294
307
  pulumi.set(__self__, "crypto_key_name", crypto_key_name)
308
+ if deletion_protection is not None:
309
+ pulumi.set(__self__, "deletion_protection", deletion_protection)
295
310
  if description is not None:
296
311
  pulumi.set(__self__, "description", description)
297
312
  if effective_labels is not None:
@@ -361,6 +376,15 @@ class _WorkflowState:
361
376
  def crypto_key_name(self, value: Optional[pulumi.Input[str]]):
362
377
  pulumi.set(self, "crypto_key_name", value)
363
378
 
379
+ @property
380
+ @pulumi.getter(name="deletionProtection")
381
+ def deletion_protection(self) -> Optional[pulumi.Input[bool]]:
382
+ return pulumi.get(self, "deletion_protection")
383
+
384
+ @deletion_protection.setter
385
+ def deletion_protection(self, value: Optional[pulumi.Input[bool]]):
386
+ pulumi.set(self, "deletion_protection", value)
387
+
364
388
  @property
365
389
  @pulumi.getter
366
390
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -549,6 +573,7 @@ class Workflow(pulumi.CustomResource):
549
573
  opts: Optional[pulumi.ResourceOptions] = None,
550
574
  call_log_level: Optional[pulumi.Input[str]] = None,
551
575
  crypto_key_name: Optional[pulumi.Input[str]] = None,
576
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
552
577
  description: Optional[pulumi.Input[str]] = None,
553
578
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
554
579
  name: Optional[pulumi.Input[str]] = None,
@@ -591,6 +616,7 @@ class Workflow(pulumi.CustomResource):
591
616
  user_env_vars={
592
617
  "url": "https://timeapi.io/api/Time/current/zone?timeZone=Europe/Amsterdam",
593
618
  },
619
+ deletion_protection=False,
594
620
  source_contents=\"\"\"# This is a sample workflow. You can replace it with your source code.
595
621
  #
596
622
  # This workflow does the following:
@@ -691,6 +717,7 @@ class Workflow(pulumi.CustomResource):
691
717
  user_env_vars={
692
718
  "url": "https://timeapi.io/api/Time/current/zone?timeZone=Europe/Amsterdam",
693
719
  },
720
+ deletion_protection=False,
694
721
  source_contents=\"\"\"# This is a sample workflow. You can replace it with your source code.
695
722
  #
696
723
  # This workflow does the following:
@@ -741,6 +768,7 @@ class Workflow(pulumi.CustomResource):
741
768
  opts: Optional[pulumi.ResourceOptions] = None,
742
769
  call_log_level: Optional[pulumi.Input[str]] = None,
743
770
  crypto_key_name: Optional[pulumi.Input[str]] = None,
771
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
744
772
  description: Optional[pulumi.Input[str]] = None,
745
773
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
746
774
  name: Optional[pulumi.Input[str]] = None,
@@ -761,6 +789,7 @@ class Workflow(pulumi.CustomResource):
761
789
 
762
790
  __props__.__dict__["call_log_level"] = call_log_level
763
791
  __props__.__dict__["crypto_key_name"] = crypto_key_name
792
+ __props__.__dict__["deletion_protection"] = deletion_protection
764
793
  __props__.__dict__["description"] = description
765
794
  __props__.__dict__["labels"] = labels
766
795
  __props__.__dict__["name"] = name
@@ -791,6 +820,7 @@ class Workflow(pulumi.CustomResource):
791
820
  call_log_level: Optional[pulumi.Input[str]] = None,
792
821
  create_time: Optional[pulumi.Input[str]] = None,
793
822
  crypto_key_name: Optional[pulumi.Input[str]] = None,
823
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
794
824
  description: Optional[pulumi.Input[str]] = None,
795
825
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
796
826
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -853,6 +883,7 @@ class Workflow(pulumi.CustomResource):
853
883
  __props__.__dict__["call_log_level"] = call_log_level
854
884
  __props__.__dict__["create_time"] = create_time
855
885
  __props__.__dict__["crypto_key_name"] = crypto_key_name
886
+ __props__.__dict__["deletion_protection"] = deletion_protection
856
887
  __props__.__dict__["description"] = description
857
888
  __props__.__dict__["effective_labels"] = effective_labels
858
889
  __props__.__dict__["labels"] = labels
@@ -897,6 +928,11 @@ class Workflow(pulumi.CustomResource):
897
928
  """
898
929
  return pulumi.get(self, "crypto_key_name")
899
930
 
931
+ @property
932
+ @pulumi.getter(name="deletionProtection")
933
+ def deletion_protection(self) -> pulumi.Output[Optional[bool]]:
934
+ return pulumi.get(self, "deletion_protection")
935
+
900
936
  @property
901
937
  @pulumi.getter
902
938
  def description(self) -> pulumi.Output[str]:
@@ -940,7 +940,7 @@ class WorkstationConfig(pulumi.CustomResource):
940
940
  parent="organizations/123456789",
941
941
  short_name="keyname")
942
942
  tag_value1 = gcp.tags.TagValue("tag_value1",
943
- parent=tag_key1.name.apply(lambda name: f"tagKeys/{name}"),
943
+ parent=tag_key1.id,
944
944
  short_name="valuename")
945
945
  default = gcp.compute.Network("default",
946
946
  name="workstation-cluster",
@@ -985,10 +985,10 @@ class WorkstationConfig(pulumi.CustomResource):
985
985
  "disable_public_ip_addresses": True,
986
986
  "disable_ssh": False,
987
987
  "vm_tags": pulumi.Output.all(
988
- tagKey1Name=tag_key1.name,
989
- tagValue1Name=tag_value1.name
988
+ tagKey1Id=tag_key1.id,
989
+ tagValue1Id=tag_value1.id
990
990
  ).apply(lambda resolved_outputs: {
991
- f"tagKeys/{resolved_outputs['tagKey1Name']}": f"tagValues/{resolved_outputs['tagValue1Name']}",
991
+ resolved_outputs['tagKey1Id']: resolved_outputs['tagValue1Id'],
992
992
  })
993
993
  ,
994
994
  },
@@ -1458,7 +1458,7 @@ class WorkstationConfig(pulumi.CustomResource):
1458
1458
  parent="organizations/123456789",
1459
1459
  short_name="keyname")
1460
1460
  tag_value1 = gcp.tags.TagValue("tag_value1",
1461
- parent=tag_key1.name.apply(lambda name: f"tagKeys/{name}"),
1461
+ parent=tag_key1.id,
1462
1462
  short_name="valuename")
1463
1463
  default = gcp.compute.Network("default",
1464
1464
  name="workstation-cluster",
@@ -1503,10 +1503,10 @@ class WorkstationConfig(pulumi.CustomResource):
1503
1503
  "disable_public_ip_addresses": True,
1504
1504
  "disable_ssh": False,
1505
1505
  "vm_tags": pulumi.Output.all(
1506
- tagKey1Name=tag_key1.name,
1507
- tagValue1Name=tag_value1.name
1506
+ tagKey1Id=tag_key1.id,
1507
+ tagValue1Id=tag_value1.id
1508
1508
  ).apply(lambda resolved_outputs: {
1509
- f"tagKeys/{resolved_outputs['tagKey1Name']}": f"tagValues/{resolved_outputs['tagValue1Name']}",
1509
+ resolved_outputs['tagKey1Id']: resolved_outputs['tagValue1Id'],
1510
1510
  })
1511
1511
  ,
1512
1512
  },
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pulumi_gcp
3
- Version: 8.9.0a1731366299
3
+ Version: 8.9.0a1731480835
4
4
  Summary: A Pulumi package for creating and managing Google Cloud Platform resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.io