pulumi-gcp 8.10.0a1731950704__py3-none-any.whl → 8.10.0a1732125494__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 +24 -0
- pulumi_gcp/accesscontextmanager/__init__.py +1 -0
- pulumi_gcp/accesscontextmanager/_inputs.py +90 -54
- pulumi_gcp/accesscontextmanager/get_access_policy.py +158 -0
- pulumi_gcp/accesscontextmanager/outputs.py +60 -36
- pulumi_gcp/artifactregistry/_inputs.py +56 -0
- pulumi_gcp/artifactregistry/outputs.py +65 -0
- pulumi_gcp/artifactregistry/repository.py +48 -0
- pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
- pulumi_gcp/backupdisasterrecovery/backup_vault.py +63 -0
- pulumi_gcp/backupdisasterrecovery/get_data_source.py +263 -0
- pulumi_gcp/backupdisasterrecovery/outputs.py +402 -0
- pulumi_gcp/certificateauthority/authority.py +28 -138
- pulumi_gcp/cloudrun/service.py +0 -10
- pulumi_gcp/cloudrunv2/get_service.py +15 -4
- pulumi_gcp/cloudrunv2/service.py +30 -2
- pulumi_gcp/compute/_inputs.py +12 -12
- pulumi_gcp/compute/outputs.py +10 -10
- pulumi_gcp/dataproc/__init__.py +1 -0
- pulumi_gcp/dataproc/_inputs.py +490 -0
- pulumi_gcp/dataproc/gdc_spark_application.py +1658 -0
- pulumi_gcp/dataproc/outputs.py +385 -0
- pulumi_gcp/filestore/_inputs.py +152 -0
- pulumi_gcp/filestore/get_instance.py +12 -1
- pulumi_gcp/filestore/instance.py +47 -0
- pulumi_gcp/filestore/outputs.py +229 -0
- pulumi_gcp/iam/__init__.py +2 -0
- pulumi_gcp/iam/_inputs.py +274 -0
- pulumi_gcp/iam/folders_policy_binding.py +917 -0
- pulumi_gcp/iam/organizations_policy_binding.py +901 -0
- pulumi_gcp/iam/outputs.py +198 -0
- pulumi_gcp/managedkafka/cluster.py +4 -0
- pulumi_gcp/managedkafka/topic.py +4 -0
- pulumi_gcp/pubsub/subscription.py +8 -8
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/_inputs.py +213 -0
- pulumi_gcp/redis/cluster.py +289 -0
- pulumi_gcp/redis/outputs.py +185 -0
- pulumi_gcp/securesourcemanager/_inputs.py +33 -0
- pulumi_gcp/securesourcemanager/instance.py +90 -3
- pulumi_gcp/securesourcemanager/outputs.py +19 -0
- pulumi_gcp/spanner/database.py +14 -14
- pulumi_gcp/sql/_inputs.py +73 -0
- pulumi_gcp/sql/database_instance.py +60 -0
- pulumi_gcp/sql/outputs.py +146 -0
- pulumi_gcp/sql/user.py +2 -2
- pulumi_gcp/tags/location_tag_binding.py +8 -8
- {pulumi_gcp-8.10.0a1731950704.dist-info → pulumi_gcp-8.10.0a1732125494.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.10.0a1731950704.dist-info → pulumi_gcp-8.10.0a1732125494.dist-info}/RECORD +51 -46
- {pulumi_gcp-8.10.0a1731950704.dist-info → pulumi_gcp-8.10.0a1732125494.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.10.0a1731950704.dist-info → pulumi_gcp-8.10.0a1732125494.dist-info}/top_level.txt +0 -0
@@ -26,7 +26,8 @@ class InstanceArgs:
|
|
26
26
|
kms_key: Optional[pulumi.Input[str]] = None,
|
27
27
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
28
28
|
private_config: Optional[pulumi.Input['InstancePrivateConfigArgs']] = None,
|
29
|
-
project: Optional[pulumi.Input[str]] = None
|
29
|
+
project: Optional[pulumi.Input[str]] = None,
|
30
|
+
workforce_identity_federation_config: Optional[pulumi.Input['InstanceWorkforceIdentityFederationConfigArgs']] = None):
|
30
31
|
"""
|
31
32
|
The set of arguments for constructing a Instance resource.
|
32
33
|
:param pulumi.Input[str] instance_id: The name for the Instance.
|
@@ -43,6 +44,9 @@ class InstanceArgs:
|
|
43
44
|
Structure is documented below.
|
44
45
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
45
46
|
If it is not provided, the provider project is used.
|
47
|
+
:param pulumi.Input['InstanceWorkforceIdentityFederationConfigArgs'] workforce_identity_federation_config: Configuration for Workforce Identity Federation to support third party identity provider.
|
48
|
+
If unset, defaults to the Google OIDC IdP.
|
49
|
+
Structure is documented below.
|
46
50
|
"""
|
47
51
|
pulumi.set(__self__, "instance_id", instance_id)
|
48
52
|
pulumi.set(__self__, "location", location)
|
@@ -54,6 +58,8 @@ class InstanceArgs:
|
|
54
58
|
pulumi.set(__self__, "private_config", private_config)
|
55
59
|
if project is not None:
|
56
60
|
pulumi.set(__self__, "project", project)
|
61
|
+
if workforce_identity_federation_config is not None:
|
62
|
+
pulumi.set(__self__, "workforce_identity_federation_config", workforce_identity_federation_config)
|
57
63
|
|
58
64
|
@property
|
59
65
|
@pulumi.getter(name="instanceId")
|
@@ -135,6 +141,20 @@ class InstanceArgs:
|
|
135
141
|
def project(self, value: Optional[pulumi.Input[str]]):
|
136
142
|
pulumi.set(self, "project", value)
|
137
143
|
|
144
|
+
@property
|
145
|
+
@pulumi.getter(name="workforceIdentityFederationConfig")
|
146
|
+
def workforce_identity_federation_config(self) -> Optional[pulumi.Input['InstanceWorkforceIdentityFederationConfigArgs']]:
|
147
|
+
"""
|
148
|
+
Configuration for Workforce Identity Federation to support third party identity provider.
|
149
|
+
If unset, defaults to the Google OIDC IdP.
|
150
|
+
Structure is documented below.
|
151
|
+
"""
|
152
|
+
return pulumi.get(self, "workforce_identity_federation_config")
|
153
|
+
|
154
|
+
@workforce_identity_federation_config.setter
|
155
|
+
def workforce_identity_federation_config(self, value: Optional[pulumi.Input['InstanceWorkforceIdentityFederationConfigArgs']]):
|
156
|
+
pulumi.set(self, "workforce_identity_federation_config", value)
|
157
|
+
|
138
158
|
|
139
159
|
@pulumi.input_type
|
140
160
|
class _InstanceState:
|
@@ -152,7 +172,8 @@ class _InstanceState:
|
|
152
172
|
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
153
173
|
state: Optional[pulumi.Input[str]] = None,
|
154
174
|
state_note: Optional[pulumi.Input[str]] = None,
|
155
|
-
update_time: Optional[pulumi.Input[str]] = None
|
175
|
+
update_time: Optional[pulumi.Input[str]] = None,
|
176
|
+
workforce_identity_federation_config: Optional[pulumi.Input['InstanceWorkforceIdentityFederationConfigArgs']] = None):
|
156
177
|
"""
|
157
178
|
Input properties used for looking up and filtering Instance resources.
|
158
179
|
:param pulumi.Input[str] create_time: Time the Instance was created in UTC.
|
@@ -179,6 +200,9 @@ class _InstanceState:
|
|
179
200
|
:param pulumi.Input[str] state: The current state of the Instance.
|
180
201
|
:param pulumi.Input[str] state_note: Provides information about the current instance state.
|
181
202
|
:param pulumi.Input[str] update_time: Time the Instance was updated in UTC.
|
203
|
+
:param pulumi.Input['InstanceWorkforceIdentityFederationConfigArgs'] workforce_identity_federation_config: Configuration for Workforce Identity Federation to support third party identity provider.
|
204
|
+
If unset, defaults to the Google OIDC IdP.
|
205
|
+
Structure is documented below.
|
182
206
|
"""
|
183
207
|
if create_time is not None:
|
184
208
|
pulumi.set(__self__, "create_time", create_time)
|
@@ -208,6 +232,8 @@ class _InstanceState:
|
|
208
232
|
pulumi.set(__self__, "state_note", state_note)
|
209
233
|
if update_time is not None:
|
210
234
|
pulumi.set(__self__, "update_time", update_time)
|
235
|
+
if workforce_identity_federation_config is not None:
|
236
|
+
pulumi.set(__self__, "workforce_identity_federation_config", workforce_identity_federation_config)
|
211
237
|
|
212
238
|
@property
|
213
239
|
@pulumi.getter(name="createTime")
|
@@ -387,6 +413,20 @@ class _InstanceState:
|
|
387
413
|
def update_time(self, value: Optional[pulumi.Input[str]]):
|
388
414
|
pulumi.set(self, "update_time", value)
|
389
415
|
|
416
|
+
@property
|
417
|
+
@pulumi.getter(name="workforceIdentityFederationConfig")
|
418
|
+
def workforce_identity_federation_config(self) -> Optional[pulumi.Input['InstanceWorkforceIdentityFederationConfigArgs']]:
|
419
|
+
"""
|
420
|
+
Configuration for Workforce Identity Federation to support third party identity provider.
|
421
|
+
If unset, defaults to the Google OIDC IdP.
|
422
|
+
Structure is documented below.
|
423
|
+
"""
|
424
|
+
return pulumi.get(self, "workforce_identity_federation_config")
|
425
|
+
|
426
|
+
@workforce_identity_federation_config.setter
|
427
|
+
def workforce_identity_federation_config(self, value: Optional[pulumi.Input['InstanceWorkforceIdentityFederationConfigArgs']]):
|
428
|
+
pulumi.set(self, "workforce_identity_federation_config", value)
|
429
|
+
|
390
430
|
|
391
431
|
class Instance(pulumi.CustomResource):
|
392
432
|
@overload
|
@@ -399,6 +439,7 @@ class Instance(pulumi.CustomResource):
|
|
399
439
|
location: Optional[pulumi.Input[str]] = None,
|
400
440
|
private_config: Optional[pulumi.Input[Union['InstancePrivateConfigArgs', 'InstancePrivateConfigArgsDict']]] = None,
|
401
441
|
project: Optional[pulumi.Input[str]] = None,
|
442
|
+
workforce_identity_federation_config: Optional[pulumi.Input[Union['InstanceWorkforceIdentityFederationConfigArgs', 'InstanceWorkforceIdentityFederationConfigArgsDict']]] = None,
|
402
443
|
__props__=None):
|
403
444
|
"""
|
404
445
|
Instances are deployed to an available Google Cloud region and are accessible via their web interface.
|
@@ -776,6 +817,19 @@ class Instance(pulumi.CustomResource):
|
|
776
817
|
managed_zone=private_zone.name,
|
777
818
|
rrdatas=[fw_rule_service_attachment.ip_address])
|
778
819
|
```
|
820
|
+
### Secure Source Manager Instance Workforce Identity Federation
|
821
|
+
|
822
|
+
```python
|
823
|
+
import pulumi
|
824
|
+
import pulumi_gcp as gcp
|
825
|
+
|
826
|
+
default = gcp.securesourcemanager.Instance("default",
|
827
|
+
location="us-central1",
|
828
|
+
instance_id="my-instance",
|
829
|
+
workforce_identity_federation_config={
|
830
|
+
"enabled": True,
|
831
|
+
})
|
832
|
+
```
|
779
833
|
|
780
834
|
## Import
|
781
835
|
|
@@ -823,6 +877,9 @@ class Instance(pulumi.CustomResource):
|
|
823
877
|
Structure is documented below.
|
824
878
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
825
879
|
If it is not provided, the provider project is used.
|
880
|
+
:param pulumi.Input[Union['InstanceWorkforceIdentityFederationConfigArgs', 'InstanceWorkforceIdentityFederationConfigArgsDict']] workforce_identity_federation_config: Configuration for Workforce Identity Federation to support third party identity provider.
|
881
|
+
If unset, defaults to the Google OIDC IdP.
|
882
|
+
Structure is documented below.
|
826
883
|
"""
|
827
884
|
...
|
828
885
|
@overload
|
@@ -1206,6 +1263,19 @@ class Instance(pulumi.CustomResource):
|
|
1206
1263
|
managed_zone=private_zone.name,
|
1207
1264
|
rrdatas=[fw_rule_service_attachment.ip_address])
|
1208
1265
|
```
|
1266
|
+
### Secure Source Manager Instance Workforce Identity Federation
|
1267
|
+
|
1268
|
+
```python
|
1269
|
+
import pulumi
|
1270
|
+
import pulumi_gcp as gcp
|
1271
|
+
|
1272
|
+
default = gcp.securesourcemanager.Instance("default",
|
1273
|
+
location="us-central1",
|
1274
|
+
instance_id="my-instance",
|
1275
|
+
workforce_identity_federation_config={
|
1276
|
+
"enabled": True,
|
1277
|
+
})
|
1278
|
+
```
|
1209
1279
|
|
1210
1280
|
## Import
|
1211
1281
|
|
@@ -1258,6 +1328,7 @@ class Instance(pulumi.CustomResource):
|
|
1258
1328
|
location: Optional[pulumi.Input[str]] = None,
|
1259
1329
|
private_config: Optional[pulumi.Input[Union['InstancePrivateConfigArgs', 'InstancePrivateConfigArgsDict']]] = None,
|
1260
1330
|
project: Optional[pulumi.Input[str]] = None,
|
1331
|
+
workforce_identity_federation_config: Optional[pulumi.Input[Union['InstanceWorkforceIdentityFederationConfigArgs', 'InstanceWorkforceIdentityFederationConfigArgsDict']]] = None,
|
1261
1332
|
__props__=None):
|
1262
1333
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
1263
1334
|
if not isinstance(opts, pulumi.ResourceOptions):
|
@@ -1277,6 +1348,7 @@ class Instance(pulumi.CustomResource):
|
|
1277
1348
|
__props__.__dict__["location"] = location
|
1278
1349
|
__props__.__dict__["private_config"] = private_config
|
1279
1350
|
__props__.__dict__["project"] = project
|
1351
|
+
__props__.__dict__["workforce_identity_federation_config"] = workforce_identity_federation_config
|
1280
1352
|
__props__.__dict__["create_time"] = None
|
1281
1353
|
__props__.__dict__["effective_labels"] = None
|
1282
1354
|
__props__.__dict__["host_configs"] = None
|
@@ -1310,7 +1382,8 @@ class Instance(pulumi.CustomResource):
|
|
1310
1382
|
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
1311
1383
|
state: Optional[pulumi.Input[str]] = None,
|
1312
1384
|
state_note: Optional[pulumi.Input[str]] = None,
|
1313
|
-
update_time: Optional[pulumi.Input[str]] = None
|
1385
|
+
update_time: Optional[pulumi.Input[str]] = None,
|
1386
|
+
workforce_identity_federation_config: Optional[pulumi.Input[Union['InstanceWorkforceIdentityFederationConfigArgs', 'InstanceWorkforceIdentityFederationConfigArgsDict']]] = None) -> 'Instance':
|
1314
1387
|
"""
|
1315
1388
|
Get an existing Instance resource's state with the given name, id, and optional extra
|
1316
1389
|
properties used to qualify the lookup.
|
@@ -1342,6 +1415,9 @@ class Instance(pulumi.CustomResource):
|
|
1342
1415
|
:param pulumi.Input[str] state: The current state of the Instance.
|
1343
1416
|
:param pulumi.Input[str] state_note: Provides information about the current instance state.
|
1344
1417
|
:param pulumi.Input[str] update_time: Time the Instance was updated in UTC.
|
1418
|
+
:param pulumi.Input[Union['InstanceWorkforceIdentityFederationConfigArgs', 'InstanceWorkforceIdentityFederationConfigArgsDict']] workforce_identity_federation_config: Configuration for Workforce Identity Federation to support third party identity provider.
|
1419
|
+
If unset, defaults to the Google OIDC IdP.
|
1420
|
+
Structure is documented below.
|
1345
1421
|
"""
|
1346
1422
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
1347
1423
|
|
@@ -1361,6 +1437,7 @@ class Instance(pulumi.CustomResource):
|
|
1361
1437
|
__props__.__dict__["state"] = state
|
1362
1438
|
__props__.__dict__["state_note"] = state_note
|
1363
1439
|
__props__.__dict__["update_time"] = update_time
|
1440
|
+
__props__.__dict__["workforce_identity_federation_config"] = workforce_identity_federation_config
|
1364
1441
|
return Instance(resource_name, opts=opts, __props__=__props__)
|
1365
1442
|
|
1366
1443
|
@property
|
@@ -1485,3 +1562,13 @@ class Instance(pulumi.CustomResource):
|
|
1485
1562
|
"""
|
1486
1563
|
return pulumi.get(self, "update_time")
|
1487
1564
|
|
1565
|
+
@property
|
1566
|
+
@pulumi.getter(name="workforceIdentityFederationConfig")
|
1567
|
+
def workforce_identity_federation_config(self) -> pulumi.Output[Optional['outputs.InstanceWorkforceIdentityFederationConfig']]:
|
1568
|
+
"""
|
1569
|
+
Configuration for Workforce Identity Federation to support third party identity provider.
|
1570
|
+
If unset, defaults to the Google OIDC IdP.
|
1571
|
+
Structure is documented below.
|
1572
|
+
"""
|
1573
|
+
return pulumi.get(self, "workforce_identity_federation_config")
|
1574
|
+
|
@@ -19,6 +19,7 @@ __all__ = [
|
|
19
19
|
'InstanceIamBindingCondition',
|
20
20
|
'InstanceIamMemberCondition',
|
21
21
|
'InstancePrivateConfig',
|
22
|
+
'InstanceWorkforceIdentityFederationConfig',
|
22
23
|
'RepositoryIamBindingCondition',
|
23
24
|
'RepositoryIamMemberCondition',
|
24
25
|
'RepositoryInitialConfig',
|
@@ -241,6 +242,24 @@ class InstancePrivateConfig(dict):
|
|
241
242
|
return pulumi.get(self, "ssh_service_attachment")
|
242
243
|
|
243
244
|
|
245
|
+
@pulumi.output_type
|
246
|
+
class InstanceWorkforceIdentityFederationConfig(dict):
|
247
|
+
def __init__(__self__, *,
|
248
|
+
enabled: bool):
|
249
|
+
"""
|
250
|
+
:param bool enabled: 'Whether Workforce Identity Federation is enabled.'
|
251
|
+
"""
|
252
|
+
pulumi.set(__self__, "enabled", enabled)
|
253
|
+
|
254
|
+
@property
|
255
|
+
@pulumi.getter
|
256
|
+
def enabled(self) -> bool:
|
257
|
+
"""
|
258
|
+
'Whether Workforce Identity Federation is enabled.'
|
259
|
+
"""
|
260
|
+
return pulumi.get(self, "enabled")
|
261
|
+
|
262
|
+
|
244
263
|
@pulumi.output_type
|
245
264
|
class RepositoryIamBindingCondition(dict):
|
246
265
|
def __init__(__self__, *,
|
pulumi_gcp/spanner/database.py
CHANGED
@@ -47,8 +47,8 @@ class DatabaseArgs:
|
|
47
47
|
in state, a `destroy` or `update` that would delete the instance will fail.
|
48
48
|
:param pulumi.Input['DatabaseEncryptionConfigArgs'] encryption_config: Encryption configuration for the database
|
49
49
|
Structure is documented below.
|
50
|
-
:param pulumi.Input[str] name: A unique identifier for the database, which cannot be changed after
|
51
|
-
|
50
|
+
:param pulumi.Input[str] name: A unique identifier for the database, which cannot be changed after the
|
51
|
+
instance is created. Values are of the form `[a-z][-_a-z0-9]*[a-z0-9]`.
|
52
52
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
53
53
|
If it is not provided, the provider project is used.
|
54
54
|
:param pulumi.Input[str] version_retention_period: The retention period for the database. The retention period must be between 1 hour
|
@@ -158,8 +158,8 @@ class DatabaseArgs:
|
|
158
158
|
@pulumi.getter
|
159
159
|
def name(self) -> Optional[pulumi.Input[str]]:
|
160
160
|
"""
|
161
|
-
A unique identifier for the database, which cannot be changed after
|
162
|
-
|
161
|
+
A unique identifier for the database, which cannot be changed after the
|
162
|
+
instance is created. Values are of the form `[a-z][-_a-z0-9]*[a-z0-9]`.
|
163
163
|
"""
|
164
164
|
return pulumi.get(self, "name")
|
165
165
|
|
@@ -227,8 +227,8 @@ class _DatabaseState:
|
|
227
227
|
|
228
228
|
|
229
229
|
- - -
|
230
|
-
:param pulumi.Input[str] name: A unique identifier for the database, which cannot be changed after
|
231
|
-
|
230
|
+
:param pulumi.Input[str] name: A unique identifier for the database, which cannot be changed after the
|
231
|
+
instance is created. Values are of the form `[a-z][-_a-z0-9]*[a-z0-9]`.
|
232
232
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
233
233
|
If it is not provided, the provider project is used.
|
234
234
|
:param pulumi.Input[str] state: An explanation of the status of the database.
|
@@ -342,8 +342,8 @@ class _DatabaseState:
|
|
342
342
|
@pulumi.getter
|
343
343
|
def name(self) -> Optional[pulumi.Input[str]]:
|
344
344
|
"""
|
345
|
-
A unique identifier for the database, which cannot be changed after
|
346
|
-
|
345
|
+
A unique identifier for the database, which cannot be changed after the
|
346
|
+
instance is created. Values are of the form `[a-z][-_a-z0-9]*[a-z0-9]`.
|
347
347
|
"""
|
348
348
|
return pulumi.get(self, "name")
|
349
349
|
|
@@ -493,8 +493,8 @@ class Database(pulumi.CustomResource):
|
|
493
493
|
|
494
494
|
|
495
495
|
- - -
|
496
|
-
:param pulumi.Input[str] name: A unique identifier for the database, which cannot be changed after
|
497
|
-
|
496
|
+
:param pulumi.Input[str] name: A unique identifier for the database, which cannot be changed after the
|
497
|
+
instance is created. Values are of the form `[a-z][-_a-z0-9]*[a-z0-9]`.
|
498
498
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
499
499
|
If it is not provided, the provider project is used.
|
500
500
|
:param pulumi.Input[str] version_retention_period: The retention period for the database. The retention period must be between 1 hour
|
@@ -664,8 +664,8 @@ class Database(pulumi.CustomResource):
|
|
664
664
|
|
665
665
|
|
666
666
|
- - -
|
667
|
-
:param pulumi.Input[str] name: A unique identifier for the database, which cannot be changed after
|
668
|
-
|
667
|
+
:param pulumi.Input[str] name: A unique identifier for the database, which cannot be changed after the
|
668
|
+
instance is created. Values are of the form `[a-z][-_a-z0-9]*[a-z0-9]`.
|
669
669
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
670
670
|
If it is not provided, the provider project is used.
|
671
671
|
:param pulumi.Input[str] state: An explanation of the status of the database.
|
@@ -750,8 +750,8 @@ class Database(pulumi.CustomResource):
|
|
750
750
|
@pulumi.getter
|
751
751
|
def name(self) -> pulumi.Output[str]:
|
752
752
|
"""
|
753
|
-
A unique identifier for the database, which cannot be changed after
|
754
|
-
|
753
|
+
A unique identifier for the database, which cannot be changed after the
|
754
|
+
instance is created. Values are of the form `[a-z][-_a-z0-9]*[a-z0-9]`.
|
755
755
|
"""
|
756
756
|
return pulumi.get(self, "name")
|
757
757
|
|
pulumi_gcp/sql/_inputs.py
CHANGED
@@ -49,6 +49,8 @@ __all__ = [
|
|
49
49
|
'DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgsDict',
|
50
50
|
'DatabaseInstanceSettingsIpConfigurationPscConfigArgs',
|
51
51
|
'DatabaseInstanceSettingsIpConfigurationPscConfigArgsDict',
|
52
|
+
'DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgs',
|
53
|
+
'DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgsDict',
|
52
54
|
'DatabaseInstanceSettingsLocationPreferenceArgs',
|
53
55
|
'DatabaseInstanceSettingsLocationPreferenceArgsDict',
|
54
56
|
'DatabaseInstanceSettingsMaintenanceWindowArgs',
|
@@ -2104,6 +2106,10 @@ if not MYPY:
|
|
2104
2106
|
"""
|
2105
2107
|
List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
|
2106
2108
|
"""
|
2109
|
+
psc_auto_connections: NotRequired[pulumi.Input[Sequence[pulumi.Input['DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgsDict']]]]
|
2110
|
+
"""
|
2111
|
+
A comma-separated list of networks or a comma-separated list of network-project pairs. Each project in this list is represented by a project number (numeric) or by a project ID (alphanumeric). This allows Private Service Connect connections to be created automatically for the specified networks.
|
2112
|
+
"""
|
2107
2113
|
psc_enabled: NotRequired[pulumi.Input[bool]]
|
2108
2114
|
"""
|
2109
2115
|
Whether PSC connectivity is enabled for this instance.
|
@@ -2115,13 +2121,17 @@ elif False:
|
|
2115
2121
|
class DatabaseInstanceSettingsIpConfigurationPscConfigArgs:
|
2116
2122
|
def __init__(__self__, *,
|
2117
2123
|
allowed_consumer_projects: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
2124
|
+
psc_auto_connections: Optional[pulumi.Input[Sequence[pulumi.Input['DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgs']]]] = None,
|
2118
2125
|
psc_enabled: Optional[pulumi.Input[bool]] = None):
|
2119
2126
|
"""
|
2120
2127
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_consumer_projects: List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
|
2128
|
+
:param pulumi.Input[Sequence[pulumi.Input['DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgs']]] psc_auto_connections: A comma-separated list of networks or a comma-separated list of network-project pairs. Each project in this list is represented by a project number (numeric) or by a project ID (alphanumeric). This allows Private Service Connect connections to be created automatically for the specified networks.
|
2121
2129
|
:param pulumi.Input[bool] psc_enabled: Whether PSC connectivity is enabled for this instance.
|
2122
2130
|
"""
|
2123
2131
|
if allowed_consumer_projects is not None:
|
2124
2132
|
pulumi.set(__self__, "allowed_consumer_projects", allowed_consumer_projects)
|
2133
|
+
if psc_auto_connections is not None:
|
2134
|
+
pulumi.set(__self__, "psc_auto_connections", psc_auto_connections)
|
2125
2135
|
if psc_enabled is not None:
|
2126
2136
|
pulumi.set(__self__, "psc_enabled", psc_enabled)
|
2127
2137
|
|
@@ -2137,6 +2147,18 @@ class DatabaseInstanceSettingsIpConfigurationPscConfigArgs:
|
|
2137
2147
|
def allowed_consumer_projects(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
2138
2148
|
pulumi.set(self, "allowed_consumer_projects", value)
|
2139
2149
|
|
2150
|
+
@property
|
2151
|
+
@pulumi.getter(name="pscAutoConnections")
|
2152
|
+
def psc_auto_connections(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgs']]]]:
|
2153
|
+
"""
|
2154
|
+
A comma-separated list of networks or a comma-separated list of network-project pairs. Each project in this list is represented by a project number (numeric) or by a project ID (alphanumeric). This allows Private Service Connect connections to be created automatically for the specified networks.
|
2155
|
+
"""
|
2156
|
+
return pulumi.get(self, "psc_auto_connections")
|
2157
|
+
|
2158
|
+
@psc_auto_connections.setter
|
2159
|
+
def psc_auto_connections(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgs']]]]):
|
2160
|
+
pulumi.set(self, "psc_auto_connections", value)
|
2161
|
+
|
2140
2162
|
@property
|
2141
2163
|
@pulumi.getter(name="pscEnabled")
|
2142
2164
|
def psc_enabled(self) -> Optional[pulumi.Input[bool]]:
|
@@ -2150,6 +2172,57 @@ class DatabaseInstanceSettingsIpConfigurationPscConfigArgs:
|
|
2150
2172
|
pulumi.set(self, "psc_enabled", value)
|
2151
2173
|
|
2152
2174
|
|
2175
|
+
if not MYPY:
|
2176
|
+
class DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgsDict(TypedDict):
|
2177
|
+
consumer_network: pulumi.Input[str]
|
2178
|
+
"""
|
2179
|
+
"The consumer network of this consumer endpoint. This must be a resource path that includes both the host project and the network name. For example, `projects/project1/global/networks/network1`. The consumer host project of this network might be different from the consumer service project."
|
2180
|
+
"""
|
2181
|
+
consumer_service_project_id: NotRequired[pulumi.Input[str]]
|
2182
|
+
"""
|
2183
|
+
The project ID of consumer service project of this consumer endpoint.
|
2184
|
+
"""
|
2185
|
+
elif False:
|
2186
|
+
DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgsDict: TypeAlias = Mapping[str, Any]
|
2187
|
+
|
2188
|
+
@pulumi.input_type
|
2189
|
+
class DatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionArgs:
|
2190
|
+
def __init__(__self__, *,
|
2191
|
+
consumer_network: pulumi.Input[str],
|
2192
|
+
consumer_service_project_id: Optional[pulumi.Input[str]] = None):
|
2193
|
+
"""
|
2194
|
+
:param pulumi.Input[str] consumer_network: "The consumer network of this consumer endpoint. This must be a resource path that includes both the host project and the network name. For example, `projects/project1/global/networks/network1`. The consumer host project of this network might be different from the consumer service project."
|
2195
|
+
:param pulumi.Input[str] consumer_service_project_id: The project ID of consumer service project of this consumer endpoint.
|
2196
|
+
"""
|
2197
|
+
pulumi.set(__self__, "consumer_network", consumer_network)
|
2198
|
+
if consumer_service_project_id is not None:
|
2199
|
+
pulumi.set(__self__, "consumer_service_project_id", consumer_service_project_id)
|
2200
|
+
|
2201
|
+
@property
|
2202
|
+
@pulumi.getter(name="consumerNetwork")
|
2203
|
+
def consumer_network(self) -> pulumi.Input[str]:
|
2204
|
+
"""
|
2205
|
+
"The consumer network of this consumer endpoint. This must be a resource path that includes both the host project and the network name. For example, `projects/project1/global/networks/network1`. The consumer host project of this network might be different from the consumer service project."
|
2206
|
+
"""
|
2207
|
+
return pulumi.get(self, "consumer_network")
|
2208
|
+
|
2209
|
+
@consumer_network.setter
|
2210
|
+
def consumer_network(self, value: pulumi.Input[str]):
|
2211
|
+
pulumi.set(self, "consumer_network", value)
|
2212
|
+
|
2213
|
+
@property
|
2214
|
+
@pulumi.getter(name="consumerServiceProjectId")
|
2215
|
+
def consumer_service_project_id(self) -> Optional[pulumi.Input[str]]:
|
2216
|
+
"""
|
2217
|
+
The project ID of consumer service project of this consumer endpoint.
|
2218
|
+
"""
|
2219
|
+
return pulumi.get(self, "consumer_service_project_id")
|
2220
|
+
|
2221
|
+
@consumer_service_project_id.setter
|
2222
|
+
def consumer_service_project_id(self, value: Optional[pulumi.Input[str]]):
|
2223
|
+
pulumi.set(self, "consumer_service_project_id", value)
|
2224
|
+
|
2225
|
+
|
2153
2226
|
if not MYPY:
|
2154
2227
|
class DatabaseInstanceSettingsLocationPreferenceArgsDict(TypedDict):
|
2155
2228
|
follow_gae_application: NotRequired[pulumi.Input[str]]
|
@@ -943,6 +943,36 @@ class DatabaseInstance(pulumi.CustomResource):
|
|
943
943
|
})
|
944
944
|
```
|
945
945
|
|
946
|
+
### Cloud SQL Instance with PSC auto connections
|
947
|
+
|
948
|
+
```python
|
949
|
+
import pulumi
|
950
|
+
import pulumi_gcp as gcp
|
951
|
+
|
952
|
+
main = gcp.sql.DatabaseInstance("main",
|
953
|
+
name="psc-enabled-main-instance",
|
954
|
+
database_version="MYSQL_8_0",
|
955
|
+
settings={
|
956
|
+
"tier": "db-f1-micro",
|
957
|
+
"ip_configuration": {
|
958
|
+
"psc_configs": [{
|
959
|
+
"psc_enabled": True,
|
960
|
+
"allowed_consumer_projects": ["allowed-consumer-project-name"],
|
961
|
+
"psc_auto_connections": [{
|
962
|
+
"consumer_network": "network-name",
|
963
|
+
"consumer_service_project_id": "project-id",
|
964
|
+
}],
|
965
|
+
}],
|
966
|
+
"ipv4_enabled": False,
|
967
|
+
},
|
968
|
+
"backup_configuration": {
|
969
|
+
"enabled": True,
|
970
|
+
"binary_log_enabled": True,
|
971
|
+
},
|
972
|
+
"availability_type": "REGIONAL",
|
973
|
+
})
|
974
|
+
```
|
975
|
+
|
946
976
|
## Switchover (SQL Server Only)
|
947
977
|
|
948
978
|
Users can perform a switchover on any direct `cascadable` replica by following the steps below.
|
@@ -1171,6 +1201,36 @@ class DatabaseInstance(pulumi.CustomResource):
|
|
1171
1201
|
})
|
1172
1202
|
```
|
1173
1203
|
|
1204
|
+
### Cloud SQL Instance with PSC auto connections
|
1205
|
+
|
1206
|
+
```python
|
1207
|
+
import pulumi
|
1208
|
+
import pulumi_gcp as gcp
|
1209
|
+
|
1210
|
+
main = gcp.sql.DatabaseInstance("main",
|
1211
|
+
name="psc-enabled-main-instance",
|
1212
|
+
database_version="MYSQL_8_0",
|
1213
|
+
settings={
|
1214
|
+
"tier": "db-f1-micro",
|
1215
|
+
"ip_configuration": {
|
1216
|
+
"psc_configs": [{
|
1217
|
+
"psc_enabled": True,
|
1218
|
+
"allowed_consumer_projects": ["allowed-consumer-project-name"],
|
1219
|
+
"psc_auto_connections": [{
|
1220
|
+
"consumer_network": "network-name",
|
1221
|
+
"consumer_service_project_id": "project-id",
|
1222
|
+
}],
|
1223
|
+
}],
|
1224
|
+
"ipv4_enabled": False,
|
1225
|
+
},
|
1226
|
+
"backup_configuration": {
|
1227
|
+
"enabled": True,
|
1228
|
+
"binary_log_enabled": True,
|
1229
|
+
},
|
1230
|
+
"availability_type": "REGIONAL",
|
1231
|
+
})
|
1232
|
+
```
|
1233
|
+
|
1174
1234
|
## Switchover (SQL Server Only)
|
1175
1235
|
|
1176
1236
|
Users can perform a switchover on any direct `cascadable` replica by following the steps below.
|