pulumi-gcp 8.3.0a1727223968__py3-none-any.whl → 8.3.0a1727226164__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 +120 -0
- pulumi_gcp/alloydb/_inputs.py +20 -0
- pulumi_gcp/alloydb/instance.py +36 -0
- pulumi_gcp/alloydb/outputs.py +14 -0
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +1400 -0
- pulumi_gcp/compute/attached_disk.py +103 -0
- pulumi_gcp/compute/backend_service.py +29 -22
- pulumi_gcp/compute/firewall_policy_with_rules.py +769 -0
- pulumi_gcp/compute/outputs.py +1019 -0
- pulumi_gcp/compute/region_backend_service.py +29 -22
- pulumi_gcp/compute/router_nat.py +27 -66
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +72 -99
- pulumi_gcp/container/outputs.py +53 -70
- pulumi_gcp/databasemigrationservice/__init__.py +1 -0
- pulumi_gcp/databasemigrationservice/_inputs.py +362 -0
- pulumi_gcp/databasemigrationservice/migration_job.py +1739 -0
- pulumi_gcp/databasemigrationservice/outputs.py +268 -0
- pulumi_gcp/dataproc/get_metastore_service.py +11 -1
- pulumi_gcp/dataproc/metastore_service.py +93 -0
- pulumi_gcp/developerconnect/_inputs.py +42 -39
- pulumi_gcp/developerconnect/connection.py +86 -83
- pulumi_gcp/developerconnect/outputs.py +28 -26
- pulumi_gcp/discoveryengine/__init__.py +1 -0
- pulumi_gcp/discoveryengine/_inputs.py +131 -0
- pulumi_gcp/discoveryengine/outputs.py +131 -0
- pulumi_gcp/discoveryengine/target_site.py +870 -0
- pulumi_gcp/dns/managed_zone.py +1 -1
- pulumi_gcp/filestore/get_instance.py +21 -1
- pulumi_gcp/filestore/instance.py +94 -0
- pulumi_gcp/gkehub/feature_membership.py +140 -62
- pulumi_gcp/healthcare/__init__.py +1 -0
- pulumi_gcp/healthcare/_inputs.py +39 -0
- pulumi_gcp/healthcare/outputs.py +40 -0
- pulumi_gcp/healthcare/workspace.py +465 -0
- pulumi_gcp/looker/instance.py +81 -0
- pulumi_gcp/netapp/_inputs.py +63 -0
- pulumi_gcp/netapp/outputs.py +57 -0
- pulumi_gcp/netapp/storage_pool.py +54 -0
- pulumi_gcp/netapp/volume.py +82 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/subscription.py +43 -7
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/secretmanager/__init__.py +8 -0
- pulumi_gcp/secretmanager/_inputs.py +308 -0
- pulumi_gcp/secretmanager/get_regional_secret.py +279 -0
- pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +173 -0
- pulumi_gcp/secretmanager/get_regional_secret_version.py +241 -0
- pulumi_gcp/secretmanager/outputs.py +336 -0
- pulumi_gcp/secretmanager/regional_secret.py +1433 -0
- pulumi_gcp/secretmanager/regional_secret_iam_binding.py +1082 -0
- pulumi_gcp/secretmanager/regional_secret_iam_member.py +1082 -0
- pulumi_gcp/secretmanager/regional_secret_iam_policy.py +901 -0
- pulumi_gcp/secretmanager/regional_secret_version.py +753 -0
- pulumi_gcp/securitycenter/__init__.py +4 -0
- pulumi_gcp/securitycenter/folder_scc_big_query_export.py +795 -0
- pulumi_gcp/securitycenter/organization_scc_big_query_export.py +738 -0
- pulumi_gcp/securitycenter/project_scc_big_query_export.py +749 -0
- pulumi_gcp/securitycenter/v2_organization_scc_big_query_export.py +862 -0
- pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +6 -2
- pulumi_gcp/siteverification/__init__.py +3 -0
- pulumi_gcp/siteverification/_inputs.py +85 -0
- pulumi_gcp/siteverification/outputs.py +57 -0
- pulumi_gcp/siteverification/web_resource.py +398 -0
- pulumi_gcp/spanner/__init__.py +1 -0
- pulumi_gcp/spanner/_inputs.py +129 -0
- pulumi_gcp/spanner/backup_schedule.py +748 -0
- pulumi_gcp/spanner/get_instance.py +11 -1
- pulumi_gcp/spanner/instance.py +56 -0
- pulumi_gcp/spanner/outputs.py +93 -0
- {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/RECORD +76 -56
- {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/top_level.txt +0 -0
pulumi_gcp/dns/managed_zone.py
CHANGED
@@ -1439,7 +1439,7 @@ class ManagedZone(pulumi.CustomResource):
|
|
1439
1439
|
|
1440
1440
|
@property
|
1441
1441
|
@pulumi.getter(name="dnssecConfig")
|
1442
|
-
def dnssec_config(self) -> pulumi.Output[
|
1442
|
+
def dnssec_config(self) -> pulumi.Output['outputs.ManagedZoneDnssecConfig']:
|
1443
1443
|
"""
|
1444
1444
|
DNSSEC configuration
|
1445
1445
|
Structure is documented below.
|
@@ -27,10 +27,16 @@ class GetInstanceResult:
|
|
27
27
|
"""
|
28
28
|
A collection of values returned by getInstance.
|
29
29
|
"""
|
30
|
-
def __init__(__self__, create_time=None, description=None, effective_labels=None, etag=None, file_shares=None, id=None, kms_key_name=None, labels=None, location=None, name=None, networks=None, project=None, protocol=None, pulumi_labels=None, tier=None, zone=None):
|
30
|
+
def __init__(__self__, create_time=None, deletion_protection_enabled=None, deletion_protection_reason=None, description=None, effective_labels=None, etag=None, file_shares=None, id=None, kms_key_name=None, labels=None, location=None, name=None, networks=None, project=None, protocol=None, pulumi_labels=None, tier=None, zone=None):
|
31
31
|
if create_time and not isinstance(create_time, str):
|
32
32
|
raise TypeError("Expected argument 'create_time' to be a str")
|
33
33
|
pulumi.set(__self__, "create_time", create_time)
|
34
|
+
if deletion_protection_enabled and not isinstance(deletion_protection_enabled, bool):
|
35
|
+
raise TypeError("Expected argument 'deletion_protection_enabled' to be a bool")
|
36
|
+
pulumi.set(__self__, "deletion_protection_enabled", deletion_protection_enabled)
|
37
|
+
if deletion_protection_reason and not isinstance(deletion_protection_reason, str):
|
38
|
+
raise TypeError("Expected argument 'deletion_protection_reason' to be a str")
|
39
|
+
pulumi.set(__self__, "deletion_protection_reason", deletion_protection_reason)
|
34
40
|
if description and not isinstance(description, str):
|
35
41
|
raise TypeError("Expected argument 'description' to be a str")
|
36
42
|
pulumi.set(__self__, "description", description)
|
@@ -82,6 +88,16 @@ class GetInstanceResult:
|
|
82
88
|
def create_time(self) -> str:
|
83
89
|
return pulumi.get(self, "create_time")
|
84
90
|
|
91
|
+
@property
|
92
|
+
@pulumi.getter(name="deletionProtectionEnabled")
|
93
|
+
def deletion_protection_enabled(self) -> bool:
|
94
|
+
return pulumi.get(self, "deletion_protection_enabled")
|
95
|
+
|
96
|
+
@property
|
97
|
+
@pulumi.getter(name="deletionProtectionReason")
|
98
|
+
def deletion_protection_reason(self) -> str:
|
99
|
+
return pulumi.get(self, "deletion_protection_reason")
|
100
|
+
|
85
101
|
@property
|
86
102
|
@pulumi.getter
|
87
103
|
def description(self) -> str:
|
@@ -168,6 +184,8 @@ class AwaitableGetInstanceResult(GetInstanceResult):
|
|
168
184
|
yield self
|
169
185
|
return GetInstanceResult(
|
170
186
|
create_time=self.create_time,
|
187
|
+
deletion_protection_enabled=self.deletion_protection_enabled,
|
188
|
+
deletion_protection_reason=self.deletion_protection_reason,
|
171
189
|
description=self.description,
|
172
190
|
effective_labels=self.effective_labels,
|
173
191
|
etag=self.etag,
|
@@ -223,6 +241,8 @@ def get_instance(location: Optional[str] = None,
|
|
223
241
|
|
224
242
|
return AwaitableGetInstanceResult(
|
225
243
|
create_time=pulumi.get(__ret__, 'create_time'),
|
244
|
+
deletion_protection_enabled=pulumi.get(__ret__, 'deletion_protection_enabled'),
|
245
|
+
deletion_protection_reason=pulumi.get(__ret__, 'deletion_protection_reason'),
|
226
246
|
description=pulumi.get(__ret__, 'description'),
|
227
247
|
effective_labels=pulumi.get(__ret__, 'effective_labels'),
|
228
248
|
etag=pulumi.get(__ret__, 'etag'),
|
pulumi_gcp/filestore/instance.py
CHANGED
@@ -24,6 +24,8 @@ class InstanceArgs:
|
|
24
24
|
file_shares: pulumi.Input['InstanceFileSharesArgs'],
|
25
25
|
networks: pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]],
|
26
26
|
tier: pulumi.Input[str],
|
27
|
+
deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
|
28
|
+
deletion_protection_reason: Optional[pulumi.Input[str]] = None,
|
27
29
|
description: Optional[pulumi.Input[str]] = None,
|
28
30
|
kms_key_name: Optional[pulumi.Input[str]] = None,
|
29
31
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
@@ -42,6 +44,8 @@ class InstanceArgs:
|
|
42
44
|
Structure is documented below.
|
43
45
|
:param pulumi.Input[str] tier: The service tier of the instance.
|
44
46
|
Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
|
47
|
+
:param pulumi.Input[bool] deletion_protection_enabled: Indicates whether the instance is protected against deletion.
|
48
|
+
:param pulumi.Input[str] deletion_protection_reason: The reason for enabling deletion protection.
|
45
49
|
:param pulumi.Input[str] description: A description of the instance.
|
46
50
|
:param pulumi.Input[str] kms_key_name: KMS key name used for data encryption.
|
47
51
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Resource labels to represent user-provided metadata. **Note**: This field is non-authoritative, and will only manage the
|
@@ -57,6 +61,10 @@ class InstanceArgs:
|
|
57
61
|
pulumi.set(__self__, "file_shares", file_shares)
|
58
62
|
pulumi.set(__self__, "networks", networks)
|
59
63
|
pulumi.set(__self__, "tier", tier)
|
64
|
+
if deletion_protection_enabled is not None:
|
65
|
+
pulumi.set(__self__, "deletion_protection_enabled", deletion_protection_enabled)
|
66
|
+
if deletion_protection_reason is not None:
|
67
|
+
pulumi.set(__self__, "deletion_protection_reason", deletion_protection_reason)
|
60
68
|
if description is not None:
|
61
69
|
pulumi.set(__self__, "description", description)
|
62
70
|
if kms_key_name is not None:
|
@@ -118,6 +126,30 @@ class InstanceArgs:
|
|
118
126
|
def tier(self, value: pulumi.Input[str]):
|
119
127
|
pulumi.set(self, "tier", value)
|
120
128
|
|
129
|
+
@property
|
130
|
+
@pulumi.getter(name="deletionProtectionEnabled")
|
131
|
+
def deletion_protection_enabled(self) -> Optional[pulumi.Input[bool]]:
|
132
|
+
"""
|
133
|
+
Indicates whether the instance is protected against deletion.
|
134
|
+
"""
|
135
|
+
return pulumi.get(self, "deletion_protection_enabled")
|
136
|
+
|
137
|
+
@deletion_protection_enabled.setter
|
138
|
+
def deletion_protection_enabled(self, value: Optional[pulumi.Input[bool]]):
|
139
|
+
pulumi.set(self, "deletion_protection_enabled", value)
|
140
|
+
|
141
|
+
@property
|
142
|
+
@pulumi.getter(name="deletionProtectionReason")
|
143
|
+
def deletion_protection_reason(self) -> Optional[pulumi.Input[str]]:
|
144
|
+
"""
|
145
|
+
The reason for enabling deletion protection.
|
146
|
+
"""
|
147
|
+
return pulumi.get(self, "deletion_protection_reason")
|
148
|
+
|
149
|
+
@deletion_protection_reason.setter
|
150
|
+
def deletion_protection_reason(self, value: Optional[pulumi.Input[str]]):
|
151
|
+
pulumi.set(self, "deletion_protection_reason", value)
|
152
|
+
|
121
153
|
@property
|
122
154
|
@pulumi.getter
|
123
155
|
def description(self) -> Optional[pulumi.Input[str]]:
|
@@ -221,6 +253,8 @@ class InstanceArgs:
|
|
221
253
|
class _InstanceState:
|
222
254
|
def __init__(__self__, *,
|
223
255
|
create_time: Optional[pulumi.Input[str]] = None,
|
256
|
+
deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
|
257
|
+
deletion_protection_reason: Optional[pulumi.Input[str]] = None,
|
224
258
|
description: Optional[pulumi.Input[str]] = None,
|
225
259
|
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
226
260
|
etag: Optional[pulumi.Input[str]] = None,
|
@@ -238,6 +272,8 @@ class _InstanceState:
|
|
238
272
|
"""
|
239
273
|
Input properties used for looking up and filtering Instance resources.
|
240
274
|
:param pulumi.Input[str] create_time: Creation timestamp in RFC3339 text format.
|
275
|
+
:param pulumi.Input[bool] deletion_protection_enabled: Indicates whether the instance is protected against deletion.
|
276
|
+
:param pulumi.Input[str] deletion_protection_reason: The reason for enabling deletion protection.
|
241
277
|
:param pulumi.Input[str] description: A description of the instance.
|
242
278
|
: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.
|
243
279
|
:param pulumi.Input[str] etag: Server-specified ETag for the instance resource to prevent
|
@@ -265,6 +301,10 @@ class _InstanceState:
|
|
265
301
|
"""
|
266
302
|
if create_time is not None:
|
267
303
|
pulumi.set(__self__, "create_time", create_time)
|
304
|
+
if deletion_protection_enabled is not None:
|
305
|
+
pulumi.set(__self__, "deletion_protection_enabled", deletion_protection_enabled)
|
306
|
+
if deletion_protection_reason is not None:
|
307
|
+
pulumi.set(__self__, "deletion_protection_reason", deletion_protection_reason)
|
268
308
|
if description is not None:
|
269
309
|
pulumi.set(__self__, "description", description)
|
270
310
|
if effective_labels is not None:
|
@@ -309,6 +349,30 @@ class _InstanceState:
|
|
309
349
|
def create_time(self, value: Optional[pulumi.Input[str]]):
|
310
350
|
pulumi.set(self, "create_time", value)
|
311
351
|
|
352
|
+
@property
|
353
|
+
@pulumi.getter(name="deletionProtectionEnabled")
|
354
|
+
def deletion_protection_enabled(self) -> Optional[pulumi.Input[bool]]:
|
355
|
+
"""
|
356
|
+
Indicates whether the instance is protected against deletion.
|
357
|
+
"""
|
358
|
+
return pulumi.get(self, "deletion_protection_enabled")
|
359
|
+
|
360
|
+
@deletion_protection_enabled.setter
|
361
|
+
def deletion_protection_enabled(self, value: Optional[pulumi.Input[bool]]):
|
362
|
+
pulumi.set(self, "deletion_protection_enabled", value)
|
363
|
+
|
364
|
+
@property
|
365
|
+
@pulumi.getter(name="deletionProtectionReason")
|
366
|
+
def deletion_protection_reason(self) -> Optional[pulumi.Input[str]]:
|
367
|
+
"""
|
368
|
+
The reason for enabling deletion protection.
|
369
|
+
"""
|
370
|
+
return pulumi.get(self, "deletion_protection_reason")
|
371
|
+
|
372
|
+
@deletion_protection_reason.setter
|
373
|
+
def deletion_protection_reason(self, value: Optional[pulumi.Input[str]]):
|
374
|
+
pulumi.set(self, "deletion_protection_reason", value)
|
375
|
+
|
312
376
|
@property
|
313
377
|
@pulumi.getter
|
314
378
|
def description(self) -> Optional[pulumi.Input[str]]:
|
@@ -492,6 +556,8 @@ class Instance(pulumi.CustomResource):
|
|
492
556
|
def __init__(__self__,
|
493
557
|
resource_name: str,
|
494
558
|
opts: Optional[pulumi.ResourceOptions] = None,
|
559
|
+
deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
|
560
|
+
deletion_protection_reason: Optional[pulumi.Input[str]] = None,
|
495
561
|
description: Optional[pulumi.Input[str]] = None,
|
496
562
|
file_shares: Optional[pulumi.Input[Union['InstanceFileSharesArgs', 'InstanceFileSharesArgsDict']]] = None,
|
497
563
|
kms_key_name: Optional[pulumi.Input[str]] = None,
|
@@ -643,6 +709,8 @@ class Instance(pulumi.CustomResource):
|
|
643
709
|
|
644
710
|
:param str resource_name: The name of the resource.
|
645
711
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
712
|
+
:param pulumi.Input[bool] deletion_protection_enabled: Indicates whether the instance is protected against deletion.
|
713
|
+
:param pulumi.Input[str] deletion_protection_reason: The reason for enabling deletion protection.
|
646
714
|
:param pulumi.Input[str] description: A description of the instance.
|
647
715
|
:param pulumi.Input[Union['InstanceFileSharesArgs', 'InstanceFileSharesArgsDict']] file_shares: File system shares on the instance. For this version, only a
|
648
716
|
single file share is supported.
|
@@ -821,6 +889,8 @@ class Instance(pulumi.CustomResource):
|
|
821
889
|
def _internal_init(__self__,
|
822
890
|
resource_name: str,
|
823
891
|
opts: Optional[pulumi.ResourceOptions] = None,
|
892
|
+
deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
|
893
|
+
deletion_protection_reason: Optional[pulumi.Input[str]] = None,
|
824
894
|
description: Optional[pulumi.Input[str]] = None,
|
825
895
|
file_shares: Optional[pulumi.Input[Union['InstanceFileSharesArgs', 'InstanceFileSharesArgsDict']]] = None,
|
826
896
|
kms_key_name: Optional[pulumi.Input[str]] = None,
|
@@ -841,6 +911,8 @@ class Instance(pulumi.CustomResource):
|
|
841
911
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
842
912
|
__props__ = InstanceArgs.__new__(InstanceArgs)
|
843
913
|
|
914
|
+
__props__.__dict__["deletion_protection_enabled"] = deletion_protection_enabled
|
915
|
+
__props__.__dict__["deletion_protection_reason"] = deletion_protection_reason
|
844
916
|
__props__.__dict__["description"] = description
|
845
917
|
if file_shares is None and not opts.urn:
|
846
918
|
raise TypeError("Missing required property 'file_shares'")
|
@@ -875,6 +947,8 @@ class Instance(pulumi.CustomResource):
|
|
875
947
|
id: pulumi.Input[str],
|
876
948
|
opts: Optional[pulumi.ResourceOptions] = None,
|
877
949
|
create_time: Optional[pulumi.Input[str]] = None,
|
950
|
+
deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
|
951
|
+
deletion_protection_reason: Optional[pulumi.Input[str]] = None,
|
878
952
|
description: Optional[pulumi.Input[str]] = None,
|
879
953
|
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
880
954
|
etag: Optional[pulumi.Input[str]] = None,
|
@@ -897,6 +971,8 @@ class Instance(pulumi.CustomResource):
|
|
897
971
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
898
972
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
899
973
|
:param pulumi.Input[str] create_time: Creation timestamp in RFC3339 text format.
|
974
|
+
:param pulumi.Input[bool] deletion_protection_enabled: Indicates whether the instance is protected against deletion.
|
975
|
+
:param pulumi.Input[str] deletion_protection_reason: The reason for enabling deletion protection.
|
900
976
|
:param pulumi.Input[str] description: A description of the instance.
|
901
977
|
: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.
|
902
978
|
:param pulumi.Input[str] etag: Server-specified ETag for the instance resource to prevent
|
@@ -927,6 +1003,8 @@ class Instance(pulumi.CustomResource):
|
|
927
1003
|
__props__ = _InstanceState.__new__(_InstanceState)
|
928
1004
|
|
929
1005
|
__props__.__dict__["create_time"] = create_time
|
1006
|
+
__props__.__dict__["deletion_protection_enabled"] = deletion_protection_enabled
|
1007
|
+
__props__.__dict__["deletion_protection_reason"] = deletion_protection_reason
|
930
1008
|
__props__.__dict__["description"] = description
|
931
1009
|
__props__.__dict__["effective_labels"] = effective_labels
|
932
1010
|
__props__.__dict__["etag"] = etag
|
@@ -951,6 +1029,22 @@ class Instance(pulumi.CustomResource):
|
|
951
1029
|
"""
|
952
1030
|
return pulumi.get(self, "create_time")
|
953
1031
|
|
1032
|
+
@property
|
1033
|
+
@pulumi.getter(name="deletionProtectionEnabled")
|
1034
|
+
def deletion_protection_enabled(self) -> pulumi.Output[Optional[bool]]:
|
1035
|
+
"""
|
1036
|
+
Indicates whether the instance is protected against deletion.
|
1037
|
+
"""
|
1038
|
+
return pulumi.get(self, "deletion_protection_enabled")
|
1039
|
+
|
1040
|
+
@property
|
1041
|
+
@pulumi.getter(name="deletionProtectionReason")
|
1042
|
+
def deletion_protection_reason(self) -> pulumi.Output[Optional[str]]:
|
1043
|
+
"""
|
1044
|
+
The reason for enabling deletion protection.
|
1045
|
+
"""
|
1046
|
+
return pulumi.get(self, "deletion_protection_reason")
|
1047
|
+
|
954
1048
|
@property
|
955
1049
|
@pulumi.getter
|
956
1050
|
def description(self) -> pulumi.Output[Optional[str]]:
|
@@ -306,7 +306,10 @@ class FeatureMembership(pulumi.CustomResource):
|
|
306
306
|
|
307
307
|
## Example Usage
|
308
308
|
|
309
|
-
### Config Management
|
309
|
+
### Config Management With Config Sync Auto-Upgrades And Without Git/OCI
|
310
|
+
|
311
|
+
With [Config Sync auto-upgrades](https://cloud.devsite.corp.google.com/kubernetes-engine/enterprise/config-sync/docs/how-to/upgrade-config-sync#auto-upgrade-config), Google assumes responsibility for automatically upgrading Config Sync versions
|
312
|
+
and overseeing the lifecycle of its components.
|
310
313
|
|
311
314
|
```python
|
312
315
|
import pulumi
|
@@ -334,16 +337,14 @@ class FeatureMembership(pulumi.CustomResource):
|
|
334
337
|
feature=feature.name,
|
335
338
|
membership=membership.membership_id,
|
336
339
|
configmanagement={
|
337
|
-
"
|
340
|
+
"management": "MANAGEMENT_AUTOMATIC",
|
338
341
|
"config_sync": {
|
339
342
|
"enabled": True,
|
340
|
-
"git": {
|
341
|
-
"sync_repo": "https://github.com/hashicorp/terraform",
|
342
|
-
},
|
343
343
|
},
|
344
344
|
})
|
345
345
|
```
|
346
|
-
|
346
|
+
|
347
|
+
### Config Management With Git
|
347
348
|
|
348
349
|
```python
|
349
350
|
import pulumi
|
@@ -374,32 +375,14 @@ class FeatureMembership(pulumi.CustomResource):
|
|
374
375
|
"version": "1.19.0",
|
375
376
|
"config_sync": {
|
376
377
|
"enabled": True,
|
377
|
-
"
|
378
|
-
"sync_repo": "
|
379
|
-
"policy_dir": "config-connector",
|
380
|
-
"sync_wait_secs": "20",
|
381
|
-
"secret_type": "gcpserviceaccount",
|
382
|
-
"gcp_service_account_email": "sa@project-id.iam.gserviceaccount.com",
|
378
|
+
"git": {
|
379
|
+
"sync_repo": "https://github.com/hashicorp/terraform",
|
383
380
|
},
|
384
381
|
},
|
385
382
|
})
|
386
383
|
```
|
387
384
|
|
388
|
-
###
|
389
|
-
|
390
|
-
```python
|
391
|
-
import pulumi
|
392
|
-
import pulumi_gcp as gcp
|
393
|
-
|
394
|
-
feature = gcp.gkehub.Feature("feature",
|
395
|
-
name="multiclusterservicediscovery",
|
396
|
-
location="global",
|
397
|
-
labels={
|
398
|
-
"foo": "bar",
|
399
|
-
})
|
400
|
-
```
|
401
|
-
|
402
|
-
### Service Mesh
|
385
|
+
### Config Management With OCI
|
403
386
|
|
404
387
|
```python
|
405
388
|
import pulumi
|
@@ -417,14 +400,27 @@ class FeatureMembership(pulumi.CustomResource):
|
|
417
400
|
},
|
418
401
|
})
|
419
402
|
feature = gcp.gkehub.Feature("feature",
|
420
|
-
name="
|
421
|
-
location="global"
|
403
|
+
name="configmanagement",
|
404
|
+
location="global",
|
405
|
+
labels={
|
406
|
+
"foo": "bar",
|
407
|
+
})
|
422
408
|
feature_member = gcp.gkehub.FeatureMembership("feature_member",
|
423
409
|
location="global",
|
424
410
|
feature=feature.name,
|
425
411
|
membership=membership.membership_id,
|
426
|
-
|
427
|
-
"
|
412
|
+
configmanagement={
|
413
|
+
"version": "1.19.0",
|
414
|
+
"config_sync": {
|
415
|
+
"enabled": True,
|
416
|
+
"oci": {
|
417
|
+
"sync_repo": "us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest",
|
418
|
+
"policy_dir": "config-connector",
|
419
|
+
"sync_wait_secs": "20",
|
420
|
+
"secret_type": "gcpserviceaccount",
|
421
|
+
"gcp_service_account_email": "sa@project-id.iam.gserviceaccount.com",
|
422
|
+
},
|
423
|
+
},
|
428
424
|
})
|
429
425
|
```
|
430
426
|
|
@@ -468,6 +464,49 @@ class FeatureMembership(pulumi.CustomResource):
|
|
468
464
|
})
|
469
465
|
```
|
470
466
|
|
467
|
+
### Multi Cluster Service Discovery
|
468
|
+
|
469
|
+
```python
|
470
|
+
import pulumi
|
471
|
+
import pulumi_gcp as gcp
|
472
|
+
|
473
|
+
feature = gcp.gkehub.Feature("feature",
|
474
|
+
name="multiclusterservicediscovery",
|
475
|
+
location="global",
|
476
|
+
labels={
|
477
|
+
"foo": "bar",
|
478
|
+
})
|
479
|
+
```
|
480
|
+
|
481
|
+
### Service Mesh
|
482
|
+
|
483
|
+
```python
|
484
|
+
import pulumi
|
485
|
+
import pulumi_gcp as gcp
|
486
|
+
|
487
|
+
cluster = gcp.container.Cluster("cluster",
|
488
|
+
name="my-cluster",
|
489
|
+
location="us-central1-a",
|
490
|
+
initial_node_count=1)
|
491
|
+
membership = gcp.gkehub.Membership("membership",
|
492
|
+
membership_id="my-membership",
|
493
|
+
endpoint={
|
494
|
+
"gke_cluster": {
|
495
|
+
"resource_link": cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
|
496
|
+
},
|
497
|
+
})
|
498
|
+
feature = gcp.gkehub.Feature("feature",
|
499
|
+
name="servicemesh",
|
500
|
+
location="global")
|
501
|
+
feature_member = gcp.gkehub.FeatureMembership("feature_member",
|
502
|
+
location="global",
|
503
|
+
feature=feature.name,
|
504
|
+
membership=membership.membership_id,
|
505
|
+
mesh={
|
506
|
+
"management": "MANAGEMENT_AUTOMATIC",
|
507
|
+
})
|
508
|
+
```
|
509
|
+
|
471
510
|
### Policy Controller With Minimal Configuration
|
472
511
|
|
473
512
|
```python
|
@@ -587,7 +626,10 @@ class FeatureMembership(pulumi.CustomResource):
|
|
587
626
|
|
588
627
|
## Example Usage
|
589
628
|
|
590
|
-
### Config Management
|
629
|
+
### Config Management With Config Sync Auto-Upgrades And Without Git/OCI
|
630
|
+
|
631
|
+
With [Config Sync auto-upgrades](https://cloud.devsite.corp.google.com/kubernetes-engine/enterprise/config-sync/docs/how-to/upgrade-config-sync#auto-upgrade-config), Google assumes responsibility for automatically upgrading Config Sync versions
|
632
|
+
and overseeing the lifecycle of its components.
|
591
633
|
|
592
634
|
```python
|
593
635
|
import pulumi
|
@@ -615,16 +657,14 @@ class FeatureMembership(pulumi.CustomResource):
|
|
615
657
|
feature=feature.name,
|
616
658
|
membership=membership.membership_id,
|
617
659
|
configmanagement={
|
618
|
-
"
|
660
|
+
"management": "MANAGEMENT_AUTOMATIC",
|
619
661
|
"config_sync": {
|
620
662
|
"enabled": True,
|
621
|
-
"git": {
|
622
|
-
"sync_repo": "https://github.com/hashicorp/terraform",
|
623
|
-
},
|
624
663
|
},
|
625
664
|
})
|
626
665
|
```
|
627
|
-
|
666
|
+
|
667
|
+
### Config Management With Git
|
628
668
|
|
629
669
|
```python
|
630
670
|
import pulumi
|
@@ -655,32 +695,14 @@ class FeatureMembership(pulumi.CustomResource):
|
|
655
695
|
"version": "1.19.0",
|
656
696
|
"config_sync": {
|
657
697
|
"enabled": True,
|
658
|
-
"
|
659
|
-
"sync_repo": "
|
660
|
-
"policy_dir": "config-connector",
|
661
|
-
"sync_wait_secs": "20",
|
662
|
-
"secret_type": "gcpserviceaccount",
|
663
|
-
"gcp_service_account_email": "sa@project-id.iam.gserviceaccount.com",
|
698
|
+
"git": {
|
699
|
+
"sync_repo": "https://github.com/hashicorp/terraform",
|
664
700
|
},
|
665
701
|
},
|
666
702
|
})
|
667
703
|
```
|
668
704
|
|
669
|
-
###
|
670
|
-
|
671
|
-
```python
|
672
|
-
import pulumi
|
673
|
-
import pulumi_gcp as gcp
|
674
|
-
|
675
|
-
feature = gcp.gkehub.Feature("feature",
|
676
|
-
name="multiclusterservicediscovery",
|
677
|
-
location="global",
|
678
|
-
labels={
|
679
|
-
"foo": "bar",
|
680
|
-
})
|
681
|
-
```
|
682
|
-
|
683
|
-
### Service Mesh
|
705
|
+
### Config Management With OCI
|
684
706
|
|
685
707
|
```python
|
686
708
|
import pulumi
|
@@ -698,14 +720,27 @@ class FeatureMembership(pulumi.CustomResource):
|
|
698
720
|
},
|
699
721
|
})
|
700
722
|
feature = gcp.gkehub.Feature("feature",
|
701
|
-
name="
|
702
|
-
location="global"
|
723
|
+
name="configmanagement",
|
724
|
+
location="global",
|
725
|
+
labels={
|
726
|
+
"foo": "bar",
|
727
|
+
})
|
703
728
|
feature_member = gcp.gkehub.FeatureMembership("feature_member",
|
704
729
|
location="global",
|
705
730
|
feature=feature.name,
|
706
731
|
membership=membership.membership_id,
|
707
|
-
|
708
|
-
"
|
732
|
+
configmanagement={
|
733
|
+
"version": "1.19.0",
|
734
|
+
"config_sync": {
|
735
|
+
"enabled": True,
|
736
|
+
"oci": {
|
737
|
+
"sync_repo": "us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest",
|
738
|
+
"policy_dir": "config-connector",
|
739
|
+
"sync_wait_secs": "20",
|
740
|
+
"secret_type": "gcpserviceaccount",
|
741
|
+
"gcp_service_account_email": "sa@project-id.iam.gserviceaccount.com",
|
742
|
+
},
|
743
|
+
},
|
709
744
|
})
|
710
745
|
```
|
711
746
|
|
@@ -749,6 +784,49 @@ class FeatureMembership(pulumi.CustomResource):
|
|
749
784
|
})
|
750
785
|
```
|
751
786
|
|
787
|
+
### Multi Cluster Service Discovery
|
788
|
+
|
789
|
+
```python
|
790
|
+
import pulumi
|
791
|
+
import pulumi_gcp as gcp
|
792
|
+
|
793
|
+
feature = gcp.gkehub.Feature("feature",
|
794
|
+
name="multiclusterservicediscovery",
|
795
|
+
location="global",
|
796
|
+
labels={
|
797
|
+
"foo": "bar",
|
798
|
+
})
|
799
|
+
```
|
800
|
+
|
801
|
+
### Service Mesh
|
802
|
+
|
803
|
+
```python
|
804
|
+
import pulumi
|
805
|
+
import pulumi_gcp as gcp
|
806
|
+
|
807
|
+
cluster = gcp.container.Cluster("cluster",
|
808
|
+
name="my-cluster",
|
809
|
+
location="us-central1-a",
|
810
|
+
initial_node_count=1)
|
811
|
+
membership = gcp.gkehub.Membership("membership",
|
812
|
+
membership_id="my-membership",
|
813
|
+
endpoint={
|
814
|
+
"gke_cluster": {
|
815
|
+
"resource_link": cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
|
816
|
+
},
|
817
|
+
})
|
818
|
+
feature = gcp.gkehub.Feature("feature",
|
819
|
+
name="servicemesh",
|
820
|
+
location="global")
|
821
|
+
feature_member = gcp.gkehub.FeatureMembership("feature_member",
|
822
|
+
location="global",
|
823
|
+
feature=feature.name,
|
824
|
+
membership=membership.membership_id,
|
825
|
+
mesh={
|
826
|
+
"management": "MANAGEMENT_AUTOMATIC",
|
827
|
+
})
|
828
|
+
```
|
829
|
+
|
752
830
|
### Policy Controller With Minimal Configuration
|
753
831
|
|
754
832
|
```python
|
pulumi_gcp/healthcare/_inputs.py
CHANGED
@@ -59,6 +59,8 @@ __all__ = [
|
|
59
59
|
'Hl7StoreNotificationConfigsArgsDict',
|
60
60
|
'Hl7StoreParserConfigArgs',
|
61
61
|
'Hl7StoreParserConfigArgsDict',
|
62
|
+
'WorkspaceSettingsArgs',
|
63
|
+
'WorkspaceSettingsArgsDict',
|
62
64
|
]
|
63
65
|
|
64
66
|
MYPY = False
|
@@ -1338,3 +1340,40 @@ class Hl7StoreParserConfigArgs:
|
|
1338
1340
|
pulumi.set(self, "version", value)
|
1339
1341
|
|
1340
1342
|
|
1343
|
+
if not MYPY:
|
1344
|
+
class WorkspaceSettingsArgsDict(TypedDict):
|
1345
|
+
data_project_ids: pulumi.Input[Sequence[pulumi.Input[str]]]
|
1346
|
+
"""
|
1347
|
+
Project IDs for data projects hosted in a workspace.
|
1348
|
+
|
1349
|
+
- - -
|
1350
|
+
"""
|
1351
|
+
elif False:
|
1352
|
+
WorkspaceSettingsArgsDict: TypeAlias = Mapping[str, Any]
|
1353
|
+
|
1354
|
+
@pulumi.input_type
|
1355
|
+
class WorkspaceSettingsArgs:
|
1356
|
+
def __init__(__self__, *,
|
1357
|
+
data_project_ids: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
1358
|
+
"""
|
1359
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] data_project_ids: Project IDs for data projects hosted in a workspace.
|
1360
|
+
|
1361
|
+
- - -
|
1362
|
+
"""
|
1363
|
+
pulumi.set(__self__, "data_project_ids", data_project_ids)
|
1364
|
+
|
1365
|
+
@property
|
1366
|
+
@pulumi.getter(name="dataProjectIds")
|
1367
|
+
def data_project_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
1368
|
+
"""
|
1369
|
+
Project IDs for data projects hosted in a workspace.
|
1370
|
+
|
1371
|
+
- - -
|
1372
|
+
"""
|
1373
|
+
return pulumi.get(self, "data_project_ids")
|
1374
|
+
|
1375
|
+
@data_project_ids.setter
|
1376
|
+
def data_project_ids(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
1377
|
+
pulumi.set(self, "data_project_ids", value)
|
1378
|
+
|
1379
|
+
|
pulumi_gcp/healthcare/outputs.py
CHANGED
@@ -38,6 +38,7 @@ __all__ = [
|
|
38
38
|
'Hl7StoreNotificationConfig',
|
39
39
|
'Hl7StoreNotificationConfigs',
|
40
40
|
'Hl7StoreParserConfig',
|
41
|
+
'WorkspaceSettings',
|
41
42
|
]
|
42
43
|
|
43
44
|
@pulumi.output_type
|
@@ -1019,3 +1020,42 @@ class Hl7StoreParserConfig(dict):
|
|
1019
1020
|
return pulumi.get(self, "version")
|
1020
1021
|
|
1021
1022
|
|
1023
|
+
@pulumi.output_type
|
1024
|
+
class WorkspaceSettings(dict):
|
1025
|
+
@staticmethod
|
1026
|
+
def __key_warning(key: str):
|
1027
|
+
suggest = None
|
1028
|
+
if key == "dataProjectIds":
|
1029
|
+
suggest = "data_project_ids"
|
1030
|
+
|
1031
|
+
if suggest:
|
1032
|
+
pulumi.log.warn(f"Key '{key}' not found in WorkspaceSettings. Access the value via the '{suggest}' property getter instead.")
|
1033
|
+
|
1034
|
+
def __getitem__(self, key: str) -> Any:
|
1035
|
+
WorkspaceSettings.__key_warning(key)
|
1036
|
+
return super().__getitem__(key)
|
1037
|
+
|
1038
|
+
def get(self, key: str, default = None) -> Any:
|
1039
|
+
WorkspaceSettings.__key_warning(key)
|
1040
|
+
return super().get(key, default)
|
1041
|
+
|
1042
|
+
def __init__(__self__, *,
|
1043
|
+
data_project_ids: Sequence[str]):
|
1044
|
+
"""
|
1045
|
+
:param Sequence[str] data_project_ids: Project IDs for data projects hosted in a workspace.
|
1046
|
+
|
1047
|
+
- - -
|
1048
|
+
"""
|
1049
|
+
pulumi.set(__self__, "data_project_ids", data_project_ids)
|
1050
|
+
|
1051
|
+
@property
|
1052
|
+
@pulumi.getter(name="dataProjectIds")
|
1053
|
+
def data_project_ids(self) -> Sequence[str]:
|
1054
|
+
"""
|
1055
|
+
Project IDs for data projects hosted in a workspace.
|
1056
|
+
|
1057
|
+
- - -
|
1058
|
+
"""
|
1059
|
+
return pulumi.get(self, "data_project_ids")
|
1060
|
+
|
1061
|
+
|