pulumi-gcp 7.10.0a1708496697__py3-none-any.whl → 7.10.0a1708543111__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- pulumi_gcp/__init__.py +32 -0
- pulumi_gcp/bigtable/table_iam_binding.py +6 -6
- pulumi_gcp/bigtable/table_iam_member.py +6 -6
- pulumi_gcp/bigtable/table_iam_policy.py +6 -6
- pulumi_gcp/cloudbuildv2/_inputs.py +32 -12
- pulumi_gcp/cloudbuildv2/connection.py +140 -38
- pulumi_gcp/cloudbuildv2/connection_iam_binding.py +13 -0
- pulumi_gcp/cloudbuildv2/connection_iam_member.py +13 -0
- pulumi_gcp/cloudbuildv2/connection_iam_policy.py +13 -0
- pulumi_gcp/cloudbuildv2/get_connection_iam_policy.py +2 -0
- pulumi_gcp/cloudbuildv2/outputs.py +32 -12
- pulumi_gcp/clouddeploy/__init__.py +1 -0
- pulumi_gcp/clouddeploy/_inputs.py +277 -2
- pulumi_gcp/clouddeploy/custom_target_type.py +923 -0
- pulumi_gcp/clouddeploy/outputs.py +263 -2
- pulumi_gcp/cloudfunctions/function.py +32 -0
- pulumi_gcp/cloudfunctions/get_function.py +11 -1
- pulumi_gcp/cloudrunv2/service.py +18 -0
- pulumi_gcp/compute/_inputs.py +20 -20
- pulumi_gcp/compute/outputs.py +24 -24
- pulumi_gcp/config/vars.py +2 -2
- pulumi_gcp/container/_inputs.py +22 -0
- pulumi_gcp/container/outputs.py +28 -0
- pulumi_gcp/dns/_inputs.py +2 -2
- pulumi_gcp/dns/get_managed_zone.py +2 -2
- pulumi_gcp/dns/get_managed_zones.py +35 -2
- pulumi_gcp/dns/outputs.py +2 -2
- pulumi_gcp/eventarc/_inputs.py +78 -0
- pulumi_gcp/eventarc/outputs.py +83 -0
- pulumi_gcp/firebase/__init__.py +1 -0
- pulumi_gcp/firebase/app_check_debug_token.py +480 -0
- pulumi_gcp/healthcare/hl7_store.py +50 -1
- pulumi_gcp/identityplatform/_inputs.py +330 -0
- pulumi_gcp/identityplatform/config.py +216 -0
- pulumi_gcp/identityplatform/outputs.py +397 -0
- pulumi_gcp/networksecurity/__init__.py +2 -0
- pulumi_gcp/networksecurity/firewall_endpoint.py +631 -0
- pulumi_gcp/networksecurity/security_profile_group.py +654 -0
- pulumi_gcp/notebooks/instance.py +109 -4
- pulumi_gcp/provider.py +8 -0
- pulumi_gcp/recaptcha/enterprise_key.py +4 -4
- pulumi_gcp/securityposture/_inputs.py +48 -48
- pulumi_gcp/securityposture/outputs.py +40 -40
- pulumi_gcp/securityposture/posture.py +22 -2
- pulumi_gcp/vertex/_inputs.py +63 -0
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +208 -0
- pulumi_gcp/vertex/outputs.py +87 -0
- pulumi_gcp/workbench/_inputs.py +4 -4
- pulumi_gcp/workbench/instance.py +59 -8
- pulumi_gcp/workbench/outputs.py +4 -4
- pulumi_gcp/workstations/_inputs.py +16 -0
- pulumi_gcp/workstations/outputs.py +14 -0
- pulumi_gcp/workstations/workstation_config.py +2 -0
- {pulumi_gcp-7.10.0a1708496697.dist-info → pulumi_gcp-7.10.0a1708543111.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.10.0a1708496697.dist-info → pulumi_gcp-7.10.0a1708543111.dist-info}/RECORD +57 -53
- {pulumi_gcp-7.10.0a1708496697.dist-info → pulumi_gcp-7.10.0a1708543111.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.10.0a1708496697.dist-info → pulumi_gcp-7.10.0a1708543111.dist-info}/top_level.txt +0 -0
pulumi_gcp/vertex/outputs.py
CHANGED
@@ -29,6 +29,8 @@ __all__ = [
|
|
29
29
|
'AiFeatureOnlineStoreDedicatedServingEndpointPrivateServiceConnectConfig',
|
30
30
|
'AiFeatureOnlineStoreEmbeddingManagement',
|
31
31
|
'AiFeatureOnlineStoreFeatureviewBigQuerySource',
|
32
|
+
'AiFeatureOnlineStoreFeatureviewFeatureRegistrySource',
|
33
|
+
'AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceFeatureGroup',
|
32
34
|
'AiFeatureOnlineStoreFeatureviewSyncConfig',
|
33
35
|
'AiFeatureOnlineStoreFeatureviewVectorSearchConfig',
|
34
36
|
'AiFeatureOnlineStoreFeatureviewVectorSearchConfigBruteForceConfig',
|
@@ -1128,6 +1130,91 @@ class AiFeatureOnlineStoreFeatureviewBigQuerySource(dict):
|
|
1128
1130
|
return pulumi.get(self, "uri")
|
1129
1131
|
|
1130
1132
|
|
1133
|
+
@pulumi.output_type
|
1134
|
+
class AiFeatureOnlineStoreFeatureviewFeatureRegistrySource(dict):
|
1135
|
+
@staticmethod
|
1136
|
+
def __key_warning(key: str):
|
1137
|
+
suggest = None
|
1138
|
+
if key == "featureGroups":
|
1139
|
+
suggest = "feature_groups"
|
1140
|
+
|
1141
|
+
if suggest:
|
1142
|
+
pulumi.log.warn(f"Key '{key}' not found in AiFeatureOnlineStoreFeatureviewFeatureRegistrySource. Access the value via the '{suggest}' property getter instead.")
|
1143
|
+
|
1144
|
+
def __getitem__(self, key: str) -> Any:
|
1145
|
+
AiFeatureOnlineStoreFeatureviewFeatureRegistrySource.__key_warning(key)
|
1146
|
+
return super().__getitem__(key)
|
1147
|
+
|
1148
|
+
def get(self, key: str, default = None) -> Any:
|
1149
|
+
AiFeatureOnlineStoreFeatureviewFeatureRegistrySource.__key_warning(key)
|
1150
|
+
return super().get(key, default)
|
1151
|
+
|
1152
|
+
def __init__(__self__, *,
|
1153
|
+
feature_groups: Sequence['outputs.AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceFeatureGroup']):
|
1154
|
+
"""
|
1155
|
+
:param Sequence['AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceFeatureGroupArgs'] feature_groups: List of features that need to be synced to Online Store.
|
1156
|
+
Structure is documented below.
|
1157
|
+
"""
|
1158
|
+
pulumi.set(__self__, "feature_groups", feature_groups)
|
1159
|
+
|
1160
|
+
@property
|
1161
|
+
@pulumi.getter(name="featureGroups")
|
1162
|
+
def feature_groups(self) -> Sequence['outputs.AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceFeatureGroup']:
|
1163
|
+
"""
|
1164
|
+
List of features that need to be synced to Online Store.
|
1165
|
+
Structure is documented below.
|
1166
|
+
"""
|
1167
|
+
return pulumi.get(self, "feature_groups")
|
1168
|
+
|
1169
|
+
|
1170
|
+
@pulumi.output_type
|
1171
|
+
class AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceFeatureGroup(dict):
|
1172
|
+
@staticmethod
|
1173
|
+
def __key_warning(key: str):
|
1174
|
+
suggest = None
|
1175
|
+
if key == "featureGroupId":
|
1176
|
+
suggest = "feature_group_id"
|
1177
|
+
elif key == "featureIds":
|
1178
|
+
suggest = "feature_ids"
|
1179
|
+
|
1180
|
+
if suggest:
|
1181
|
+
pulumi.log.warn(f"Key '{key}' not found in AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceFeatureGroup. Access the value via the '{suggest}' property getter instead.")
|
1182
|
+
|
1183
|
+
def __getitem__(self, key: str) -> Any:
|
1184
|
+
AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceFeatureGroup.__key_warning(key)
|
1185
|
+
return super().__getitem__(key)
|
1186
|
+
|
1187
|
+
def get(self, key: str, default = None) -> Any:
|
1188
|
+
AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceFeatureGroup.__key_warning(key)
|
1189
|
+
return super().get(key, default)
|
1190
|
+
|
1191
|
+
def __init__(__self__, *,
|
1192
|
+
feature_group_id: str,
|
1193
|
+
feature_ids: Sequence[str]):
|
1194
|
+
"""
|
1195
|
+
:param str feature_group_id: Identifier of the feature group.
|
1196
|
+
:param Sequence[str] feature_ids: Identifiers of features under the feature group.
|
1197
|
+
"""
|
1198
|
+
pulumi.set(__self__, "feature_group_id", feature_group_id)
|
1199
|
+
pulumi.set(__self__, "feature_ids", feature_ids)
|
1200
|
+
|
1201
|
+
@property
|
1202
|
+
@pulumi.getter(name="featureGroupId")
|
1203
|
+
def feature_group_id(self) -> str:
|
1204
|
+
"""
|
1205
|
+
Identifier of the feature group.
|
1206
|
+
"""
|
1207
|
+
return pulumi.get(self, "feature_group_id")
|
1208
|
+
|
1209
|
+
@property
|
1210
|
+
@pulumi.getter(name="featureIds")
|
1211
|
+
def feature_ids(self) -> Sequence[str]:
|
1212
|
+
"""
|
1213
|
+
Identifiers of features under the feature group.
|
1214
|
+
"""
|
1215
|
+
return pulumi.get(self, "feature_ids")
|
1216
|
+
|
1217
|
+
|
1131
1218
|
@pulumi.output_type
|
1132
1219
|
class AiFeatureOnlineStoreFeatureviewSyncConfig(dict):
|
1133
1220
|
def __init__(__self__, *,
|
pulumi_gcp/workbench/_inputs.py
CHANGED
@@ -285,7 +285,7 @@ class InstanceGceSetupBootDiskArgs:
|
|
285
285
|
recommended value of 150GB.
|
286
286
|
:param pulumi.Input[str] disk_type: Optional. Indicates the type of the disk.
|
287
287
|
Possible values are: `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
|
288
|
-
:param pulumi.Input[str] kms_key: 'Optional.
|
288
|
+
:param pulumi.Input[str] kms_key: 'Optional. The KMS key used to encrypt the disks, only
|
289
289
|
applicable if disk_encryption is CMEK. Format: `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
|
290
290
|
Learn more about using your own encryption keys.'
|
291
291
|
"""
|
@@ -343,7 +343,7 @@ class InstanceGceSetupBootDiskArgs:
|
|
343
343
|
@pulumi.getter(name="kmsKey")
|
344
344
|
def kms_key(self) -> Optional[pulumi.Input[str]]:
|
345
345
|
"""
|
346
|
-
'Optional.
|
346
|
+
'Optional. The KMS key used to encrypt the disks, only
|
347
347
|
applicable if disk_encryption is CMEK. Format: `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
|
348
348
|
Learn more about using your own encryption keys.'
|
349
349
|
"""
|
@@ -370,7 +370,7 @@ class InstanceGceSetupDataDisksArgs:
|
|
370
370
|
100.
|
371
371
|
:param pulumi.Input[str] disk_type: Optional. Input only. Indicates the type of the disk.
|
372
372
|
Possible values are: `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
|
373
|
-
:param pulumi.Input[str] kms_key: 'Optional.
|
373
|
+
:param pulumi.Input[str] kms_key: 'Optional. The KMS key used to encrypt the disks,
|
374
374
|
only applicable if disk_encryption is CMEK. Format: `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
|
375
375
|
Learn more about using your own encryption keys.'
|
376
376
|
"""
|
@@ -428,7 +428,7 @@ class InstanceGceSetupDataDisksArgs:
|
|
428
428
|
@pulumi.getter(name="kmsKey")
|
429
429
|
def kms_key(self) -> Optional[pulumi.Input[str]]:
|
430
430
|
"""
|
431
|
-
'Optional.
|
431
|
+
'Optional. The KMS key used to encrypt the disks,
|
432
432
|
only applicable if disk_encryption is CMEK. Format: `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
|
433
433
|
Learn more about using your own encryption keys.'
|
434
434
|
"""
|
pulumi_gcp/workbench/instance.py
CHANGED
@@ -17,6 +17,7 @@ __all__ = ['InstanceArgs', 'Instance']
|
|
17
17
|
class InstanceArgs:
|
18
18
|
def __init__(__self__, *,
|
19
19
|
location: pulumi.Input[str],
|
20
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
20
21
|
disable_proxy_access: Optional[pulumi.Input[bool]] = None,
|
21
22
|
gce_setup: Optional[pulumi.Input['InstanceGceSetupArgs']] = None,
|
22
23
|
instance_id: Optional[pulumi.Input[str]] = None,
|
@@ -30,6 +31,7 @@ class InstanceArgs:
|
|
30
31
|
|
31
32
|
|
32
33
|
- - -
|
34
|
+
:param pulumi.Input[str] desired_state: Desired state of the Workbench Instance. Set this field to `ACTIVE` to start the Instance, and `STOPPED` to stop the Instance.
|
33
35
|
:param pulumi.Input[bool] disable_proxy_access: Optional. If true, the workbench instance will not register with the proxy.
|
34
36
|
:param pulumi.Input['InstanceGceSetupArgs'] gce_setup: The definition of how to configure a VM instance outside of Resources and Identity.
|
35
37
|
Structure is documented below.
|
@@ -47,6 +49,8 @@ class InstanceArgs:
|
|
47
49
|
If it is not provided, the provider project is used.
|
48
50
|
"""
|
49
51
|
pulumi.set(__self__, "location", location)
|
52
|
+
if desired_state is not None:
|
53
|
+
pulumi.set(__self__, "desired_state", desired_state)
|
50
54
|
if disable_proxy_access is not None:
|
51
55
|
pulumi.set(__self__, "disable_proxy_access", disable_proxy_access)
|
52
56
|
if gce_setup is not None:
|
@@ -77,6 +81,18 @@ class InstanceArgs:
|
|
77
81
|
def location(self, value: pulumi.Input[str]):
|
78
82
|
pulumi.set(self, "location", value)
|
79
83
|
|
84
|
+
@property
|
85
|
+
@pulumi.getter(name="desiredState")
|
86
|
+
def desired_state(self) -> Optional[pulumi.Input[str]]:
|
87
|
+
"""
|
88
|
+
Desired state of the Workbench Instance. Set this field to `ACTIVE` to start the Instance, and `STOPPED` to stop the Instance.
|
89
|
+
"""
|
90
|
+
return pulumi.get(self, "desired_state")
|
91
|
+
|
92
|
+
@desired_state.setter
|
93
|
+
def desired_state(self, value: Optional[pulumi.Input[str]]):
|
94
|
+
pulumi.set(self, "desired_state", value)
|
95
|
+
|
80
96
|
@property
|
81
97
|
@pulumi.getter(name="disableProxyAccess")
|
82
98
|
def disable_proxy_access(self) -> Optional[pulumi.Input[bool]]:
|
@@ -175,6 +191,7 @@ class _InstanceState:
|
|
175
191
|
def __init__(__self__, *,
|
176
192
|
create_time: Optional[pulumi.Input[str]] = None,
|
177
193
|
creator: Optional[pulumi.Input[str]] = None,
|
194
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
178
195
|
disable_proxy_access: Optional[pulumi.Input[bool]] = None,
|
179
196
|
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
180
197
|
gce_setup: Optional[pulumi.Input['InstanceGceSetupArgs']] = None,
|
@@ -196,6 +213,7 @@ class _InstanceState:
|
|
196
213
|
:param pulumi.Input[str] create_time: An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ.
|
197
214
|
The milliseconds portion (".SSS") is optional.
|
198
215
|
:param pulumi.Input[str] creator: Output only. Email address of entity that sent original CreateInstance request.
|
216
|
+
:param pulumi.Input[str] desired_state: Desired state of the Workbench Instance. Set this field to `ACTIVE` to start the Instance, and `STOPPED` to stop the Instance.
|
199
217
|
:param pulumi.Input[bool] disable_proxy_access: Optional. If true, the workbench instance will not register with the proxy.
|
200
218
|
: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.
|
201
219
|
:param pulumi.Input['InstanceGceSetupArgs'] gce_setup: The definition of how to configure a VM instance outside of Resources and Identity.
|
@@ -234,6 +252,8 @@ class _InstanceState:
|
|
234
252
|
pulumi.set(__self__, "create_time", create_time)
|
235
253
|
if creator is not None:
|
236
254
|
pulumi.set(__self__, "creator", creator)
|
255
|
+
if desired_state is not None:
|
256
|
+
pulumi.set(__self__, "desired_state", desired_state)
|
237
257
|
if disable_proxy_access is not None:
|
238
258
|
pulumi.set(__self__, "disable_proxy_access", disable_proxy_access)
|
239
259
|
if effective_labels is not None:
|
@@ -292,6 +312,18 @@ class _InstanceState:
|
|
292
312
|
def creator(self, value: Optional[pulumi.Input[str]]):
|
293
313
|
pulumi.set(self, "creator", value)
|
294
314
|
|
315
|
+
@property
|
316
|
+
@pulumi.getter(name="desiredState")
|
317
|
+
def desired_state(self) -> Optional[pulumi.Input[str]]:
|
318
|
+
"""
|
319
|
+
Desired state of the Workbench Instance. Set this field to `ACTIVE` to start the Instance, and `STOPPED` to stop the Instance.
|
320
|
+
"""
|
321
|
+
return pulumi.get(self, "desired_state")
|
322
|
+
|
323
|
+
@desired_state.setter
|
324
|
+
def desired_state(self, value: Optional[pulumi.Input[str]]):
|
325
|
+
pulumi.set(self, "desired_state", value)
|
326
|
+
|
295
327
|
@property
|
296
328
|
@pulumi.getter(name="disableProxyAccess")
|
297
329
|
def disable_proxy_access(self) -> Optional[pulumi.Input[bool]]:
|
@@ -507,6 +539,7 @@ class Instance(pulumi.CustomResource):
|
|
507
539
|
def __init__(__self__,
|
508
540
|
resource_name: str,
|
509
541
|
opts: Optional[pulumi.ResourceOptions] = None,
|
542
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
510
543
|
disable_proxy_access: Optional[pulumi.Input[bool]] = None,
|
511
544
|
gce_setup: Optional[pulumi.Input[pulumi.InputType['InstanceGceSetupArgs']]] = None,
|
512
545
|
instance_id: Optional[pulumi.Input[str]] = None,
|
@@ -548,13 +581,14 @@ class Instance(pulumi.CustomResource):
|
|
548
581
|
),
|
549
582
|
location="us-central1-a")
|
550
583
|
```
|
551
|
-
### Workbench Instance Labels
|
584
|
+
### Workbench Instance Labels Stopped
|
552
585
|
|
553
586
|
```python
|
554
587
|
import pulumi
|
555
588
|
import pulumi_gcp as gcp
|
556
589
|
|
557
590
|
instance = gcp.workbench.Instance("instance",
|
591
|
+
desired_state="STOPPED",
|
558
592
|
gce_setup=gcp.workbench.InstanceGceSetupArgs(
|
559
593
|
machine_type="e2-standard-4",
|
560
594
|
metadata={
|
@@ -596,13 +630,13 @@ class Instance(pulumi.CustomResource):
|
|
596
630
|
boot_disk=gcp.workbench.InstanceGceSetupBootDiskArgs(
|
597
631
|
disk_size_gb="310",
|
598
632
|
disk_type="PD_SSD",
|
599
|
-
disk_encryption="
|
633
|
+
disk_encryption="CMEK",
|
600
634
|
kms_key="my-crypto-key",
|
601
635
|
),
|
602
636
|
data_disks=gcp.workbench.InstanceGceSetupDataDisksArgs(
|
603
637
|
disk_size_gb="330",
|
604
638
|
disk_type="PD_SSD",
|
605
|
-
disk_encryption="
|
639
|
+
disk_encryption="CMEK",
|
606
640
|
kms_key="my-crypto-key",
|
607
641
|
),
|
608
642
|
network_interfaces=[gcp.workbench.InstanceGceSetupNetworkInterfaceArgs(
|
@@ -623,7 +657,8 @@ class Instance(pulumi.CustomResource):
|
|
623
657
|
instance_owners=["my@service-account.com"],
|
624
658
|
labels={
|
625
659
|
"k": "val",
|
626
|
-
}
|
660
|
+
},
|
661
|
+
desired_state="ACTIVE")
|
627
662
|
```
|
628
663
|
|
629
664
|
## Import
|
@@ -652,6 +687,7 @@ class Instance(pulumi.CustomResource):
|
|
652
687
|
|
653
688
|
:param str resource_name: The name of the resource.
|
654
689
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
690
|
+
:param pulumi.Input[str] desired_state: Desired state of the Workbench Instance. Set this field to `ACTIVE` to start the Instance, and `STOPPED` to stop the Instance.
|
655
691
|
:param pulumi.Input[bool] disable_proxy_access: Optional. If true, the workbench instance will not register with the proxy.
|
656
692
|
:param pulumi.Input[pulumi.InputType['InstanceGceSetupArgs']] gce_setup: The definition of how to configure a VM instance outside of Resources and Identity.
|
657
693
|
Structure is documented below.
|
@@ -710,13 +746,14 @@ class Instance(pulumi.CustomResource):
|
|
710
746
|
),
|
711
747
|
location="us-central1-a")
|
712
748
|
```
|
713
|
-
### Workbench Instance Labels
|
749
|
+
### Workbench Instance Labels Stopped
|
714
750
|
|
715
751
|
```python
|
716
752
|
import pulumi
|
717
753
|
import pulumi_gcp as gcp
|
718
754
|
|
719
755
|
instance = gcp.workbench.Instance("instance",
|
756
|
+
desired_state="STOPPED",
|
720
757
|
gce_setup=gcp.workbench.InstanceGceSetupArgs(
|
721
758
|
machine_type="e2-standard-4",
|
722
759
|
metadata={
|
@@ -758,13 +795,13 @@ class Instance(pulumi.CustomResource):
|
|
758
795
|
boot_disk=gcp.workbench.InstanceGceSetupBootDiskArgs(
|
759
796
|
disk_size_gb="310",
|
760
797
|
disk_type="PD_SSD",
|
761
|
-
disk_encryption="
|
798
|
+
disk_encryption="CMEK",
|
762
799
|
kms_key="my-crypto-key",
|
763
800
|
),
|
764
801
|
data_disks=gcp.workbench.InstanceGceSetupDataDisksArgs(
|
765
802
|
disk_size_gb="330",
|
766
803
|
disk_type="PD_SSD",
|
767
|
-
disk_encryption="
|
804
|
+
disk_encryption="CMEK",
|
768
805
|
kms_key="my-crypto-key",
|
769
806
|
),
|
770
807
|
network_interfaces=[gcp.workbench.InstanceGceSetupNetworkInterfaceArgs(
|
@@ -785,7 +822,8 @@ class Instance(pulumi.CustomResource):
|
|
785
822
|
instance_owners=["my@service-account.com"],
|
786
823
|
labels={
|
787
824
|
"k": "val",
|
788
|
-
}
|
825
|
+
},
|
826
|
+
desired_state="ACTIVE")
|
789
827
|
```
|
790
828
|
|
791
829
|
## Import
|
@@ -827,6 +865,7 @@ class Instance(pulumi.CustomResource):
|
|
827
865
|
def _internal_init(__self__,
|
828
866
|
resource_name: str,
|
829
867
|
opts: Optional[pulumi.ResourceOptions] = None,
|
868
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
830
869
|
disable_proxy_access: Optional[pulumi.Input[bool]] = None,
|
831
870
|
gce_setup: Optional[pulumi.Input[pulumi.InputType['InstanceGceSetupArgs']]] = None,
|
832
871
|
instance_id: Optional[pulumi.Input[str]] = None,
|
@@ -844,6 +883,7 @@ class Instance(pulumi.CustomResource):
|
|
844
883
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
845
884
|
__props__ = InstanceArgs.__new__(InstanceArgs)
|
846
885
|
|
886
|
+
__props__.__dict__["desired_state"] = desired_state
|
847
887
|
__props__.__dict__["disable_proxy_access"] = disable_proxy_access
|
848
888
|
__props__.__dict__["gce_setup"] = gce_setup
|
849
889
|
__props__.__dict__["instance_id"] = instance_id
|
@@ -878,6 +918,7 @@ class Instance(pulumi.CustomResource):
|
|
878
918
|
opts: Optional[pulumi.ResourceOptions] = None,
|
879
919
|
create_time: Optional[pulumi.Input[str]] = None,
|
880
920
|
creator: Optional[pulumi.Input[str]] = None,
|
921
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
881
922
|
disable_proxy_access: Optional[pulumi.Input[bool]] = None,
|
882
923
|
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
883
924
|
gce_setup: Optional[pulumi.Input[pulumi.InputType['InstanceGceSetupArgs']]] = None,
|
@@ -904,6 +945,7 @@ class Instance(pulumi.CustomResource):
|
|
904
945
|
:param pulumi.Input[str] create_time: An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ.
|
905
946
|
The milliseconds portion (".SSS") is optional.
|
906
947
|
:param pulumi.Input[str] creator: Output only. Email address of entity that sent original CreateInstance request.
|
948
|
+
:param pulumi.Input[str] desired_state: Desired state of the Workbench Instance. Set this field to `ACTIVE` to start the Instance, and `STOPPED` to stop the Instance.
|
907
949
|
:param pulumi.Input[bool] disable_proxy_access: Optional. If true, the workbench instance will not register with the proxy.
|
908
950
|
: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.
|
909
951
|
:param pulumi.Input[pulumi.InputType['InstanceGceSetupArgs']] gce_setup: The definition of how to configure a VM instance outside of Resources and Identity.
|
@@ -944,6 +986,7 @@ class Instance(pulumi.CustomResource):
|
|
944
986
|
|
945
987
|
__props__.__dict__["create_time"] = create_time
|
946
988
|
__props__.__dict__["creator"] = creator
|
989
|
+
__props__.__dict__["desired_state"] = desired_state
|
947
990
|
__props__.__dict__["disable_proxy_access"] = disable_proxy_access
|
948
991
|
__props__.__dict__["effective_labels"] = effective_labels
|
949
992
|
__props__.__dict__["gce_setup"] = gce_setup
|
@@ -979,6 +1022,14 @@ class Instance(pulumi.CustomResource):
|
|
979
1022
|
"""
|
980
1023
|
return pulumi.get(self, "creator")
|
981
1024
|
|
1025
|
+
@property
|
1026
|
+
@pulumi.getter(name="desiredState")
|
1027
|
+
def desired_state(self) -> pulumi.Output[Optional[str]]:
|
1028
|
+
"""
|
1029
|
+
Desired state of the Workbench Instance. Set this field to `ACTIVE` to start the Instance, and `STOPPED` to stop the Instance.
|
1030
|
+
"""
|
1031
|
+
return pulumi.get(self, "desired_state")
|
1032
|
+
|
982
1033
|
@property
|
983
1034
|
@pulumi.getter(name="disableProxyAccess")
|
984
1035
|
def disable_proxy_access(self) -> pulumi.Output[Optional[bool]]:
|
pulumi_gcp/workbench/outputs.py
CHANGED
@@ -307,7 +307,7 @@ class InstanceGceSetupBootDisk(dict):
|
|
307
307
|
recommended value of 150GB.
|
308
308
|
:param str disk_type: Optional. Indicates the type of the disk.
|
309
309
|
Possible values are: `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
|
310
|
-
:param str kms_key: 'Optional.
|
310
|
+
:param str kms_key: 'Optional. The KMS key used to encrypt the disks, only
|
311
311
|
applicable if disk_encryption is CMEK. Format: `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
|
312
312
|
Learn more about using your own encryption keys.'
|
313
313
|
"""
|
@@ -353,7 +353,7 @@ class InstanceGceSetupBootDisk(dict):
|
|
353
353
|
@pulumi.getter(name="kmsKey")
|
354
354
|
def kms_key(self) -> Optional[str]:
|
355
355
|
"""
|
356
|
-
'Optional.
|
356
|
+
'Optional. The KMS key used to encrypt the disks, only
|
357
357
|
applicable if disk_encryption is CMEK. Format: `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
|
358
358
|
Learn more about using your own encryption keys.'
|
359
359
|
"""
|
@@ -399,7 +399,7 @@ class InstanceGceSetupDataDisks(dict):
|
|
399
399
|
100.
|
400
400
|
:param str disk_type: Optional. Input only. Indicates the type of the disk.
|
401
401
|
Possible values are: `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
|
402
|
-
:param str kms_key: 'Optional.
|
402
|
+
:param str kms_key: 'Optional. The KMS key used to encrypt the disks,
|
403
403
|
only applicable if disk_encryption is CMEK. Format: `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
|
404
404
|
Learn more about using your own encryption keys.'
|
405
405
|
"""
|
@@ -445,7 +445,7 @@ class InstanceGceSetupDataDisks(dict):
|
|
445
445
|
@pulumi.getter(name="kmsKey")
|
446
446
|
def kms_key(self) -> Optional[str]:
|
447
447
|
"""
|
448
|
-
'Optional.
|
448
|
+
'Optional. The KMS key used to encrypt the disks,
|
449
449
|
only applicable if disk_encryption is CMEK. Format: `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
|
450
450
|
Learn more about using your own encryption keys.'
|
451
451
|
"""
|
@@ -432,6 +432,7 @@ class WorkstationConfigHostGceInstanceArgs:
|
|
432
432
|
boot_disk_size_gb: Optional[pulumi.Input[int]] = None,
|
433
433
|
confidential_instance_config: Optional[pulumi.Input['WorkstationConfigHostGceInstanceConfidentialInstanceConfigArgs']] = None,
|
434
434
|
disable_public_ip_addresses: Optional[pulumi.Input[bool]] = None,
|
435
|
+
disable_ssh: Optional[pulumi.Input[bool]] = None,
|
435
436
|
enable_nested_virtualization: Optional[pulumi.Input[bool]] = None,
|
436
437
|
machine_type: Optional[pulumi.Input[str]] = None,
|
437
438
|
pool_size: Optional[pulumi.Input[int]] = None,
|
@@ -446,6 +447,7 @@ class WorkstationConfigHostGceInstanceArgs:
|
|
446
447
|
:param pulumi.Input['WorkstationConfigHostGceInstanceConfidentialInstanceConfigArgs'] confidential_instance_config: A set of Compute Engine Confidential VM instance options.
|
447
448
|
Structure is documented below.
|
448
449
|
:param pulumi.Input[bool] disable_public_ip_addresses: Whether instances have no public IP address.
|
450
|
+
:param pulumi.Input[bool] disable_ssh: Whether to disable SSH access to the VM.
|
449
451
|
:param pulumi.Input[bool] enable_nested_virtualization: Whether to enable nested virtualization on the Compute Engine VMs backing the Workstations.
|
450
452
|
See https://cloud.google.com/workstations/docs/reference/rest/v1beta/projects.locations.workstationClusters.workstationConfigs#GceInstance.FIELDS.enable_nested_virtualization
|
451
453
|
:param pulumi.Input[str] machine_type: The name of a Compute Engine machine type.
|
@@ -464,6 +466,8 @@ class WorkstationConfigHostGceInstanceArgs:
|
|
464
466
|
pulumi.set(__self__, "confidential_instance_config", confidential_instance_config)
|
465
467
|
if disable_public_ip_addresses is not None:
|
466
468
|
pulumi.set(__self__, "disable_public_ip_addresses", disable_public_ip_addresses)
|
469
|
+
if disable_ssh is not None:
|
470
|
+
pulumi.set(__self__, "disable_ssh", disable_ssh)
|
467
471
|
if enable_nested_virtualization is not None:
|
468
472
|
pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
|
469
473
|
if machine_type is not None:
|
@@ -529,6 +533,18 @@ class WorkstationConfigHostGceInstanceArgs:
|
|
529
533
|
def disable_public_ip_addresses(self, value: Optional[pulumi.Input[bool]]):
|
530
534
|
pulumi.set(self, "disable_public_ip_addresses", value)
|
531
535
|
|
536
|
+
@property
|
537
|
+
@pulumi.getter(name="disableSsh")
|
538
|
+
def disable_ssh(self) -> Optional[pulumi.Input[bool]]:
|
539
|
+
"""
|
540
|
+
Whether to disable SSH access to the VM.
|
541
|
+
"""
|
542
|
+
return pulumi.get(self, "disable_ssh")
|
543
|
+
|
544
|
+
@disable_ssh.setter
|
545
|
+
def disable_ssh(self, value: Optional[pulumi.Input[bool]]):
|
546
|
+
pulumi.set(self, "disable_ssh", value)
|
547
|
+
|
532
548
|
@property
|
533
549
|
@pulumi.getter(name="enableNestedVirtualization")
|
534
550
|
def enable_nested_virtualization(self) -> Optional[pulumi.Input[bool]]:
|
@@ -435,6 +435,8 @@ class WorkstationConfigHostGceInstance(dict):
|
|
435
435
|
suggest = "confidential_instance_config"
|
436
436
|
elif key == "disablePublicIpAddresses":
|
437
437
|
suggest = "disable_public_ip_addresses"
|
438
|
+
elif key == "disableSsh":
|
439
|
+
suggest = "disable_ssh"
|
438
440
|
elif key == "enableNestedVirtualization":
|
439
441
|
suggest = "enable_nested_virtualization"
|
440
442
|
elif key == "machineType":
|
@@ -464,6 +466,7 @@ class WorkstationConfigHostGceInstance(dict):
|
|
464
466
|
boot_disk_size_gb: Optional[int] = None,
|
465
467
|
confidential_instance_config: Optional['outputs.WorkstationConfigHostGceInstanceConfidentialInstanceConfig'] = None,
|
466
468
|
disable_public_ip_addresses: Optional[bool] = None,
|
469
|
+
disable_ssh: Optional[bool] = None,
|
467
470
|
enable_nested_virtualization: Optional[bool] = None,
|
468
471
|
machine_type: Optional[str] = None,
|
469
472
|
pool_size: Optional[int] = None,
|
@@ -478,6 +481,7 @@ class WorkstationConfigHostGceInstance(dict):
|
|
478
481
|
:param 'WorkstationConfigHostGceInstanceConfidentialInstanceConfigArgs' confidential_instance_config: A set of Compute Engine Confidential VM instance options.
|
479
482
|
Structure is documented below.
|
480
483
|
:param bool disable_public_ip_addresses: Whether instances have no public IP address.
|
484
|
+
:param bool disable_ssh: Whether to disable SSH access to the VM.
|
481
485
|
:param bool enable_nested_virtualization: Whether to enable nested virtualization on the Compute Engine VMs backing the Workstations.
|
482
486
|
See https://cloud.google.com/workstations/docs/reference/rest/v1beta/projects.locations.workstationClusters.workstationConfigs#GceInstance.FIELDS.enable_nested_virtualization
|
483
487
|
:param str machine_type: The name of a Compute Engine machine type.
|
@@ -496,6 +500,8 @@ class WorkstationConfigHostGceInstance(dict):
|
|
496
500
|
pulumi.set(__self__, "confidential_instance_config", confidential_instance_config)
|
497
501
|
if disable_public_ip_addresses is not None:
|
498
502
|
pulumi.set(__self__, "disable_public_ip_addresses", disable_public_ip_addresses)
|
503
|
+
if disable_ssh is not None:
|
504
|
+
pulumi.set(__self__, "disable_ssh", disable_ssh)
|
499
505
|
if enable_nested_virtualization is not None:
|
500
506
|
pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
|
501
507
|
if machine_type is not None:
|
@@ -545,6 +551,14 @@ class WorkstationConfigHostGceInstance(dict):
|
|
545
551
|
"""
|
546
552
|
return pulumi.get(self, "disable_public_ip_addresses")
|
547
553
|
|
554
|
+
@property
|
555
|
+
@pulumi.getter(name="disableSsh")
|
556
|
+
def disable_ssh(self) -> Optional[bool]:
|
557
|
+
"""
|
558
|
+
Whether to disable SSH access to the VM.
|
559
|
+
"""
|
560
|
+
return pulumi.get(self, "disable_ssh")
|
561
|
+
|
548
562
|
@property
|
549
563
|
@pulumi.getter(name="enableNestedVirtualization")
|
550
564
|
def enable_nested_virtualization(self) -> Optional[bool]:
|
@@ -869,6 +869,7 @@ class WorkstationConfig(pulumi.CustomResource):
|
|
869
869
|
machine_type="e2-standard-4",
|
870
870
|
boot_disk_size_gb=35,
|
871
871
|
disable_public_ip_addresses=True,
|
872
|
+
disable_ssh=False,
|
872
873
|
),
|
873
874
|
),
|
874
875
|
opts=pulumi.ResourceOptions(provider=google_beta))
|
@@ -1267,6 +1268,7 @@ class WorkstationConfig(pulumi.CustomResource):
|
|
1267
1268
|
machine_type="e2-standard-4",
|
1268
1269
|
boot_disk_size_gb=35,
|
1269
1270
|
disable_public_ip_addresses=True,
|
1271
|
+
disable_ssh=False,
|
1270
1272
|
),
|
1271
1273
|
),
|
1272
1274
|
opts=pulumi.ResourceOptions(provider=google_beta))
|