pulumi-gcp 7.16.0a1711520590__py3-none-any.whl → 7.17.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pulumi_gcp/__init__.py +35 -0
- pulumi_gcp/accesscontextmanager/__init__.py +1 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +345 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +80 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +86 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_resource.py +4 -2
- pulumi_gcp/apphub/__init__.py +1 -0
- pulumi_gcp/apphub/get_application.py +220 -0
- pulumi_gcp/apphub/outputs.py +214 -0
- pulumi_gcp/applicationintegration/__init__.py +10 -0
- pulumi_gcp/applicationintegration/_inputs.py +119 -0
- pulumi_gcp/applicationintegration/client.py +566 -0
- pulumi_gcp/applicationintegration/outputs.py +122 -0
- pulumi_gcp/bigquery/_inputs.py +16 -0
- pulumi_gcp/bigquery/outputs.py +14 -0
- pulumi_gcp/bigquery/routine.py +98 -0
- pulumi_gcp/bigtable/_inputs.py +4 -4
- pulumi_gcp/bigtable/gc_policy.py +8 -0
- pulumi_gcp/bigtable/outputs.py +4 -4
- pulumi_gcp/billing/_inputs.py +4 -4
- pulumi_gcp/billing/outputs.py +4 -4
- pulumi_gcp/billing/project_info.py +4 -4
- pulumi_gcp/cloudfunctionsv2/_inputs.py +2 -2
- pulumi_gcp/cloudfunctionsv2/outputs.py +4 -4
- pulumi_gcp/cloudquota/__init__.py +3 -0
- pulumi_gcp/cloudquota/_inputs.py +131 -0
- pulumi_gcp/cloudquota/get_s_quota_infos.py +136 -0
- pulumi_gcp/cloudquota/outputs.py +388 -0
- pulumi_gcp/cloudquota/s_quota_preference.py +777 -0
- pulumi_gcp/cloudrunv2/_inputs.py +59 -2
- pulumi_gcp/cloudrunv2/outputs.py +107 -4
- pulumi_gcp/cloudrunv2/service.py +13 -13
- pulumi_gcp/composer/_inputs.py +30 -4
- pulumi_gcp/composer/outputs.py +45 -10
- pulumi_gcp/compute/_inputs.py +145 -51
- pulumi_gcp/compute/autoscaler.py +14 -14
- pulumi_gcp/compute/interconnect_attachment.py +64 -0
- pulumi_gcp/compute/network_endpoint.py +8 -0
- pulumi_gcp/compute/network_endpoint_list.py +8 -0
- pulumi_gcp/compute/outputs.py +202 -69
- pulumi_gcp/compute/region_autoscaler.py +14 -14
- pulumi_gcp/compute/region_backend_service.py +28 -0
- pulumi_gcp/compute/region_url_map.py +152 -0
- pulumi_gcp/compute/target_instance.py +4 -4
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +148 -16
- pulumi_gcp/container/outputs.py +148 -16
- pulumi_gcp/databasemigrationservice/connection_profile.py +6 -6
- pulumi_gcp/dataflow/flex_template_job.py +84 -112
- pulumi_gcp/dataform/repository.py +4 -74
- pulumi_gcp/dataloss/_inputs.py +6 -6
- pulumi_gcp/dataloss/outputs.py +6 -6
- pulumi_gcp/dataplex/task.py +16 -16
- pulumi_gcp/dataproc/_inputs.py +85 -10
- pulumi_gcp/dataproc/get_metastore_service.py +11 -1
- pulumi_gcp/dataproc/metastore_service.py +120 -0
- pulumi_gcp/dataproc/outputs.py +142 -10
- pulumi_gcp/firebase/android_app.py +41 -40
- pulumi_gcp/firebase/app_check_service_config.py +2 -2
- pulumi_gcp/firestore/backup_schedule.py +14 -14
- pulumi_gcp/firestore/field.py +4 -4
- pulumi_gcp/firestore/index.py +34 -48
- pulumi_gcp/gkehub/membership_binding.py +6 -6
- pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
- pulumi_gcp/gkehub/namespace.py +4 -4
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
- pulumi_gcp/iam/_inputs.py +76 -0
- pulumi_gcp/iam/outputs.py +76 -0
- pulumi_gcp/iam/workforce_pool_provider.py +35 -0
- pulumi_gcp/iam/workload_identity_pool_provider.py +140 -0
- pulumi_gcp/iap/tunnel_dest_group.py +2 -2
- pulumi_gcp/kms/_inputs.py +46 -0
- pulumi_gcp/kms/crypto_key.py +54 -0
- pulumi_gcp/kms/crypto_key_version.py +54 -0
- pulumi_gcp/kms/get_kms_crypto_key.py +11 -1
- pulumi_gcp/kms/outputs.py +54 -0
- pulumi_gcp/logging/_inputs.py +8 -8
- pulumi_gcp/logging/metric.py +7 -7
- pulumi_gcp/logging/outputs.py +8 -8
- pulumi_gcp/monitoring/_inputs.py +4 -2
- pulumi_gcp/monitoring/outputs.py +4 -2
- pulumi_gcp/monitoring/slo.py +4 -4
- pulumi_gcp/networksecurity/firewall_endpoint.py +48 -0
- pulumi_gcp/networkservices/_inputs.py +6 -6
- pulumi_gcp/networkservices/outputs.py +6 -6
- pulumi_gcp/orgpolicy/policy.py +2 -2
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/_inputs.py +108 -0
- pulumi_gcp/pubsub/get_topic.py +11 -1
- pulumi_gcp/pubsub/outputs.py +213 -0
- pulumi_gcp/pubsub/subscription.py +4 -4
- pulumi_gcp/pubsub/topic.py +92 -0
- pulumi_gcp/serviceusage/consumer_quota_override.py +7 -7
- pulumi_gcp/sql/_inputs.py +20 -2
- pulumi_gcp/sql/database_instance.py +2 -2
- pulumi_gcp/sql/outputs.py +20 -2
- pulumi_gcp/storage/_inputs.py +42 -2
- pulumi_gcp/storage/bucket.py +54 -0
- pulumi_gcp/storage/get_bucket.py +11 -1
- pulumi_gcp/storage/outputs.py +83 -2
- pulumi_gcp/vertex/__init__.py +1 -0
- pulumi_gcp/vertex/_inputs.py +175 -8
- pulumi_gcp/vertex/ai_deployment_resource_pool.py +477 -0
- pulumi_gcp/vertex/outputs.py +202 -10
- pulumi_gcp/vpcaccess/connector.py +77 -28
- pulumi_gcp/workstations/_inputs.py +113 -0
- pulumi_gcp/workstations/outputs.py +109 -1
- pulumi_gcp/workstations/workstation_config.py +106 -0
- {pulumi_gcp-7.16.0a1711520590.dist-info → pulumi_gcp-7.17.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.16.0a1711520590.dist-info → pulumi_gcp-7.17.0.dist-info}/RECORD +113 -103
- {pulumi_gcp-7.16.0a1711520590.dist-info → pulumi_gcp-7.17.0.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.16.0a1711520590.dist-info → pulumi_gcp-7.17.0.dist-info}/top_level.txt +0 -0
@@ -81,6 +81,11 @@ class WorkforcePoolProviderArgs:
|
|
81
81
|
For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute.
|
82
82
|
For example, the following maps the sub claim of the incoming credential to the `subject` attribute
|
83
83
|
on a Google token:
|
84
|
+
```
|
85
|
+
{"google.subject": "assertion.sub"}
|
86
|
+
```
|
87
|
+
An object containing a list of `"key": value` pairs.
|
88
|
+
Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
|
84
89
|
:param pulumi.Input[str] description: A user-specified description of the provider. Cannot exceed 256 characters.
|
85
90
|
:param pulumi.Input[bool] disabled: Whether the provider is disabled. You cannot use a disabled provider to exchange tokens.
|
86
91
|
However, existing tokens still grant access.
|
@@ -209,6 +214,11 @@ class WorkforcePoolProviderArgs:
|
|
209
214
|
For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute.
|
210
215
|
For example, the following maps the sub claim of the incoming credential to the `subject` attribute
|
211
216
|
on a Google token:
|
217
|
+
```
|
218
|
+
{"google.subject": "assertion.sub"}
|
219
|
+
```
|
220
|
+
An object containing a list of `"key": value` pairs.
|
221
|
+
Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
|
212
222
|
"""
|
213
223
|
return pulumi.get(self, "attribute_mapping")
|
214
224
|
|
@@ -339,6 +349,11 @@ class _WorkforcePoolProviderState:
|
|
339
349
|
For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute.
|
340
350
|
For example, the following maps the sub claim of the incoming credential to the `subject` attribute
|
341
351
|
on a Google token:
|
352
|
+
```
|
353
|
+
{"google.subject": "assertion.sub"}
|
354
|
+
```
|
355
|
+
An object containing a list of `"key": value` pairs.
|
356
|
+
Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
|
342
357
|
:param pulumi.Input[str] description: A user-specified description of the provider. Cannot exceed 256 characters.
|
343
358
|
:param pulumi.Input[bool] disabled: Whether the provider is disabled. You cannot use a disabled provider to exchange tokens.
|
344
359
|
However, existing tokens still grant access.
|
@@ -449,6 +464,11 @@ class _WorkforcePoolProviderState:
|
|
449
464
|
For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute.
|
450
465
|
For example, the following maps the sub claim of the incoming credential to the `subject` attribute
|
451
466
|
on a Google token:
|
467
|
+
```
|
468
|
+
{"google.subject": "assertion.sub"}
|
469
|
+
```
|
470
|
+
An object containing a list of `"key": value` pairs.
|
471
|
+
Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
|
452
472
|
"""
|
453
473
|
return pulumi.get(self, "attribute_mapping")
|
454
474
|
|
@@ -811,6 +831,11 @@ class WorkforcePoolProvider(pulumi.CustomResource):
|
|
811
831
|
For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute.
|
812
832
|
For example, the following maps the sub claim of the incoming credential to the `subject` attribute
|
813
833
|
on a Google token:
|
834
|
+
```
|
835
|
+
{"google.subject": "assertion.sub"}
|
836
|
+
```
|
837
|
+
An object containing a list of `"key": value` pairs.
|
838
|
+
Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
|
814
839
|
:param pulumi.Input[str] description: A user-specified description of the provider. Cannot exceed 256 characters.
|
815
840
|
:param pulumi.Input[bool] disabled: Whether the provider is disabled. You cannot use a disabled provider to exchange tokens.
|
816
841
|
However, existing tokens still grant access.
|
@@ -1117,6 +1142,11 @@ class WorkforcePoolProvider(pulumi.CustomResource):
|
|
1117
1142
|
For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute.
|
1118
1143
|
For example, the following maps the sub claim of the incoming credential to the `subject` attribute
|
1119
1144
|
on a Google token:
|
1145
|
+
```
|
1146
|
+
{"google.subject": "assertion.sub"}
|
1147
|
+
```
|
1148
|
+
An object containing a list of `"key": value` pairs.
|
1149
|
+
Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
|
1120
1150
|
:param pulumi.Input[str] description: A user-specified description of the provider. Cannot exceed 256 characters.
|
1121
1151
|
:param pulumi.Input[bool] disabled: Whether the provider is disabled. You cannot use a disabled provider to exchange tokens.
|
1122
1152
|
However, existing tokens still grant access.
|
@@ -1216,6 +1246,11 @@ class WorkforcePoolProvider(pulumi.CustomResource):
|
|
1216
1246
|
For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute.
|
1217
1247
|
For example, the following maps the sub claim of the incoming credential to the `subject` attribute
|
1218
1248
|
on a Google token:
|
1249
|
+
```
|
1250
|
+
{"google.subject": "assertion.sub"}
|
1251
|
+
```
|
1252
|
+
An object containing a list of `"key": value` pairs.
|
1253
|
+
Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
|
1219
1254
|
"""
|
1220
1255
|
return pulumi.get(self, "attribute_mapping")
|
1221
1256
|
|
@@ -74,6 +74,26 @@ class WorkloadIdentityPoolProviderArgs:
|
|
74
74
|
the total size of all mapped attributes must not exceed 8KB.
|
75
75
|
For AWS providers, the following rules apply:
|
76
76
|
- If no attribute mapping is defined, the following default mapping applies:
|
77
|
+
```
|
78
|
+
{
|
79
|
+
"google.subject":"assertion.arn",
|
80
|
+
"attribute.aws_role":
|
81
|
+
"assertion.arn.contains('assumed-role')"
|
82
|
+
" ? assertion.arn.extract('{account_arn}assumed-role/')"
|
83
|
+
" + 'assumed-role/'"
|
84
|
+
" + assertion.arn.extract('assumed-role/{role_name}/')"
|
85
|
+
" : assertion.arn",
|
86
|
+
}
|
87
|
+
```
|
88
|
+
- If any custom attribute mappings are defined, they must include a mapping to the
|
89
|
+
`google.subject` attribute.
|
90
|
+
For OIDC providers, the following rules apply:
|
91
|
+
- Custom attribute mappings must be defined, and must include a mapping to the
|
92
|
+
`google.subject` attribute. For example, the following maps the `sub` claim of the
|
93
|
+
incoming credential to the `subject` attribute on a Google token.
|
94
|
+
```
|
95
|
+
{"google.subject": "assertion.sub"}
|
96
|
+
```
|
77
97
|
:param pulumi.Input['WorkloadIdentityPoolProviderAwsArgs'] aws: An Amazon Web Services identity provider. Not compatible with the property oidc or saml.
|
78
98
|
Structure is documented below.
|
79
99
|
:param pulumi.Input[str] description: A description for the provider. Cannot exceed 256 characters.
|
@@ -190,6 +210,26 @@ class WorkloadIdentityPoolProviderArgs:
|
|
190
210
|
the total size of all mapped attributes must not exceed 8KB.
|
191
211
|
For AWS providers, the following rules apply:
|
192
212
|
- If no attribute mapping is defined, the following default mapping applies:
|
213
|
+
```
|
214
|
+
{
|
215
|
+
"google.subject":"assertion.arn",
|
216
|
+
"attribute.aws_role":
|
217
|
+
"assertion.arn.contains('assumed-role')"
|
218
|
+
" ? assertion.arn.extract('{account_arn}assumed-role/')"
|
219
|
+
" + 'assumed-role/'"
|
220
|
+
" + assertion.arn.extract('assumed-role/{role_name}/')"
|
221
|
+
" : assertion.arn",
|
222
|
+
}
|
223
|
+
```
|
224
|
+
- If any custom attribute mappings are defined, they must include a mapping to the
|
225
|
+
`google.subject` attribute.
|
226
|
+
For OIDC providers, the following rules apply:
|
227
|
+
- Custom attribute mappings must be defined, and must include a mapping to the
|
228
|
+
`google.subject` attribute. For example, the following maps the `sub` claim of the
|
229
|
+
incoming credential to the `subject` attribute on a Google token.
|
230
|
+
```
|
231
|
+
{"google.subject": "assertion.sub"}
|
232
|
+
```
|
193
233
|
"""
|
194
234
|
return pulumi.get(self, "attribute_mapping")
|
195
235
|
|
@@ -341,6 +381,26 @@ class _WorkloadIdentityPoolProviderState:
|
|
341
381
|
the total size of all mapped attributes must not exceed 8KB.
|
342
382
|
For AWS providers, the following rules apply:
|
343
383
|
- If no attribute mapping is defined, the following default mapping applies:
|
384
|
+
```
|
385
|
+
{
|
386
|
+
"google.subject":"assertion.arn",
|
387
|
+
"attribute.aws_role":
|
388
|
+
"assertion.arn.contains('assumed-role')"
|
389
|
+
" ? assertion.arn.extract('{account_arn}assumed-role/')"
|
390
|
+
" + 'assumed-role/'"
|
391
|
+
" + assertion.arn.extract('assumed-role/{role_name}/')"
|
392
|
+
" : assertion.arn",
|
393
|
+
}
|
394
|
+
```
|
395
|
+
- If any custom attribute mappings are defined, they must include a mapping to the
|
396
|
+
`google.subject` attribute.
|
397
|
+
For OIDC providers, the following rules apply:
|
398
|
+
- Custom attribute mappings must be defined, and must include a mapping to the
|
399
|
+
`google.subject` attribute. For example, the following maps the `sub` claim of the
|
400
|
+
incoming credential to the `subject` attribute on a Google token.
|
401
|
+
```
|
402
|
+
{"google.subject": "assertion.sub"}
|
403
|
+
```
|
344
404
|
:param pulumi.Input['WorkloadIdentityPoolProviderAwsArgs'] aws: An Amazon Web Services identity provider. Not compatible with the property oidc or saml.
|
345
405
|
Structure is documented below.
|
346
406
|
:param pulumi.Input[str] description: A description for the provider. Cannot exceed 256 characters.
|
@@ -450,6 +510,26 @@ class _WorkloadIdentityPoolProviderState:
|
|
450
510
|
the total size of all mapped attributes must not exceed 8KB.
|
451
511
|
For AWS providers, the following rules apply:
|
452
512
|
- If no attribute mapping is defined, the following default mapping applies:
|
513
|
+
```
|
514
|
+
{
|
515
|
+
"google.subject":"assertion.arn",
|
516
|
+
"attribute.aws_role":
|
517
|
+
"assertion.arn.contains('assumed-role')"
|
518
|
+
" ? assertion.arn.extract('{account_arn}assumed-role/')"
|
519
|
+
" + 'assumed-role/'"
|
520
|
+
" + assertion.arn.extract('assumed-role/{role_name}/')"
|
521
|
+
" : assertion.arn",
|
522
|
+
}
|
523
|
+
```
|
524
|
+
- If any custom attribute mappings are defined, they must include a mapping to the
|
525
|
+
`google.subject` attribute.
|
526
|
+
For OIDC providers, the following rules apply:
|
527
|
+
- Custom attribute mappings must be defined, and must include a mapping to the
|
528
|
+
`google.subject` attribute. For example, the following maps the `sub` claim of the
|
529
|
+
incoming credential to the `subject` attribute on a Google token.
|
530
|
+
```
|
531
|
+
{"google.subject": "assertion.sub"}
|
532
|
+
```
|
453
533
|
"""
|
454
534
|
return pulumi.get(self, "attribute_mapping")
|
455
535
|
|
@@ -874,6 +954,26 @@ class WorkloadIdentityPoolProvider(pulumi.CustomResource):
|
|
874
954
|
the total size of all mapped attributes must not exceed 8KB.
|
875
955
|
For AWS providers, the following rules apply:
|
876
956
|
- If no attribute mapping is defined, the following default mapping applies:
|
957
|
+
```
|
958
|
+
{
|
959
|
+
"google.subject":"assertion.arn",
|
960
|
+
"attribute.aws_role":
|
961
|
+
"assertion.arn.contains('assumed-role')"
|
962
|
+
" ? assertion.arn.extract('{account_arn}assumed-role/')"
|
963
|
+
" + 'assumed-role/'"
|
964
|
+
" + assertion.arn.extract('assumed-role/{role_name}/')"
|
965
|
+
" : assertion.arn",
|
966
|
+
}
|
967
|
+
```
|
968
|
+
- If any custom attribute mappings are defined, they must include a mapping to the
|
969
|
+
`google.subject` attribute.
|
970
|
+
For OIDC providers, the following rules apply:
|
971
|
+
- Custom attribute mappings must be defined, and must include a mapping to the
|
972
|
+
`google.subject` attribute. For example, the following maps the `sub` claim of the
|
973
|
+
incoming credential to the `subject` attribute on a Google token.
|
974
|
+
```
|
975
|
+
{"google.subject": "assertion.sub"}
|
976
|
+
```
|
877
977
|
:param pulumi.Input[pulumi.InputType['WorkloadIdentityPoolProviderAwsArgs']] aws: An Amazon Web Services identity provider. Not compatible with the property oidc or saml.
|
878
978
|
Structure is documented below.
|
879
979
|
:param pulumi.Input[str] description: A description for the provider. Cannot exceed 256 characters.
|
@@ -1230,6 +1330,26 @@ class WorkloadIdentityPoolProvider(pulumi.CustomResource):
|
|
1230
1330
|
the total size of all mapped attributes must not exceed 8KB.
|
1231
1331
|
For AWS providers, the following rules apply:
|
1232
1332
|
- If no attribute mapping is defined, the following default mapping applies:
|
1333
|
+
```
|
1334
|
+
{
|
1335
|
+
"google.subject":"assertion.arn",
|
1336
|
+
"attribute.aws_role":
|
1337
|
+
"assertion.arn.contains('assumed-role')"
|
1338
|
+
" ? assertion.arn.extract('{account_arn}assumed-role/')"
|
1339
|
+
" + 'assumed-role/'"
|
1340
|
+
" + assertion.arn.extract('assumed-role/{role_name}/')"
|
1341
|
+
" : assertion.arn",
|
1342
|
+
}
|
1343
|
+
```
|
1344
|
+
- If any custom attribute mappings are defined, they must include a mapping to the
|
1345
|
+
`google.subject` attribute.
|
1346
|
+
For OIDC providers, the following rules apply:
|
1347
|
+
- Custom attribute mappings must be defined, and must include a mapping to the
|
1348
|
+
`google.subject` attribute. For example, the following maps the `sub` claim of the
|
1349
|
+
incoming credential to the `subject` attribute on a Google token.
|
1350
|
+
```
|
1351
|
+
{"google.subject": "assertion.sub"}
|
1352
|
+
```
|
1233
1353
|
:param pulumi.Input[pulumi.InputType['WorkloadIdentityPoolProviderAwsArgs']] aws: An Amazon Web Services identity provider. Not compatible with the property oidc or saml.
|
1234
1354
|
Structure is documented below.
|
1235
1355
|
:param pulumi.Input[str] description: A description for the provider. Cannot exceed 256 characters.
|
@@ -1327,6 +1447,26 @@ class WorkloadIdentityPoolProvider(pulumi.CustomResource):
|
|
1327
1447
|
the total size of all mapped attributes must not exceed 8KB.
|
1328
1448
|
For AWS providers, the following rules apply:
|
1329
1449
|
- If no attribute mapping is defined, the following default mapping applies:
|
1450
|
+
```
|
1451
|
+
{
|
1452
|
+
"google.subject":"assertion.arn",
|
1453
|
+
"attribute.aws_role":
|
1454
|
+
"assertion.arn.contains('assumed-role')"
|
1455
|
+
" ? assertion.arn.extract('{account_arn}assumed-role/')"
|
1456
|
+
" + 'assumed-role/'"
|
1457
|
+
" + assertion.arn.extract('assumed-role/{role_name}/')"
|
1458
|
+
" : assertion.arn",
|
1459
|
+
}
|
1460
|
+
```
|
1461
|
+
- If any custom attribute mappings are defined, they must include a mapping to the
|
1462
|
+
`google.subject` attribute.
|
1463
|
+
For OIDC providers, the following rules apply:
|
1464
|
+
- Custom attribute mappings must be defined, and must include a mapping to the
|
1465
|
+
`google.subject` attribute. For example, the following maps the `sub` claim of the
|
1466
|
+
incoming credential to the `subject` attribute on a Google token.
|
1467
|
+
```
|
1468
|
+
{"google.subject": "assertion.sub"}
|
1469
|
+
```
|
1330
1470
|
"""
|
1331
1471
|
return pulumi.get(self, "attribute_mapping")
|
1332
1472
|
|
@@ -249,7 +249,7 @@ class TunnelDestGroup(pulumi.CustomResource):
|
|
249
249
|
|
250
250
|
dest_group = gcp.iap.TunnelDestGroup("dest_group",
|
251
251
|
region="us-central1",
|
252
|
-
group_name="
|
252
|
+
group_name="testgroup_41819",
|
253
253
|
cidrs=[
|
254
254
|
"10.1.0.0/16",
|
255
255
|
"192.168.10.0/24",
|
@@ -337,7 +337,7 @@ class TunnelDestGroup(pulumi.CustomResource):
|
|
337
337
|
|
338
338
|
dest_group = gcp.iap.TunnelDestGroup("dest_group",
|
339
339
|
region="us-central1",
|
340
|
-
group_name="
|
340
|
+
group_name="testgroup_41819",
|
341
341
|
cidrs=[
|
342
342
|
"10.1.0.0/16",
|
343
343
|
"192.168.10.0/24",
|
pulumi_gcp/kms/_inputs.py
CHANGED
@@ -16,6 +16,7 @@ __all__ = [
|
|
16
16
|
'CryptoKeyVersionAttestationArgs',
|
17
17
|
'CryptoKeyVersionAttestationCertChainsArgs',
|
18
18
|
'CryptoKeyVersionAttestationExternalProtectionLevelOptionsArgs',
|
19
|
+
'CryptoKeyVersionExternalProtectionLevelOptionsArgs',
|
19
20
|
'CryptoKeyVersionTemplateArgs',
|
20
21
|
'EkmConnectionServiceResolverArgs',
|
21
22
|
'EkmConnectionServiceResolverServerCertificateArgs',
|
@@ -209,6 +210,9 @@ class CryptoKeyVersionAttestationArgs:
|
|
209
210
|
pulumi.set(__self__, "cert_chains", cert_chains)
|
210
211
|
if content is not None:
|
211
212
|
pulumi.set(__self__, "content", content)
|
213
|
+
if external_protection_level_options is not None:
|
214
|
+
warnings.warn("""`externalProtectionLevelOptions` is being un-nested from the `attestation` field. Please use the top level `externalProtectionLevelOptions` field instead.""", DeprecationWarning)
|
215
|
+
pulumi.log.warn("""external_protection_level_options is deprecated: `externalProtectionLevelOptions` is being un-nested from the `attestation` field. Please use the top level `externalProtectionLevelOptions` field instead.""")
|
212
216
|
if external_protection_level_options is not None:
|
213
217
|
pulumi.set(__self__, "external_protection_level_options", external_protection_level_options)
|
214
218
|
if format is not None:
|
@@ -247,6 +251,9 @@ class CryptoKeyVersionAttestationArgs:
|
|
247
251
|
ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level and EXTERNAL_VPC protection levels.
|
248
252
|
Structure is documented below.
|
249
253
|
"""
|
254
|
+
warnings.warn("""`externalProtectionLevelOptions` is being un-nested from the `attestation` field. Please use the top level `externalProtectionLevelOptions` field instead.""", DeprecationWarning)
|
255
|
+
pulumi.log.warn("""external_protection_level_options is deprecated: `externalProtectionLevelOptions` is being un-nested from the `attestation` field. Please use the top level `externalProtectionLevelOptions` field instead.""")
|
256
|
+
|
250
257
|
return pulumi.get(self, "external_protection_level_options")
|
251
258
|
|
252
259
|
@external_protection_level_options.setter
|
@@ -361,6 +368,45 @@ class CryptoKeyVersionAttestationExternalProtectionLevelOptionsArgs:
|
|
361
368
|
pulumi.set(self, "external_key_uri", value)
|
362
369
|
|
363
370
|
|
371
|
+
@pulumi.input_type
|
372
|
+
class CryptoKeyVersionExternalProtectionLevelOptionsArgs:
|
373
|
+
def __init__(__self__, *,
|
374
|
+
ekm_connection_key_path: Optional[pulumi.Input[str]] = None,
|
375
|
+
external_key_uri: Optional[pulumi.Input[str]] = None):
|
376
|
+
"""
|
377
|
+
:param pulumi.Input[str] ekm_connection_key_path: The path to the external key material on the EKM when using EkmConnection e.g., "v0/my/key". Set this field instead of externalKeyUri when using an EkmConnection.
|
378
|
+
:param pulumi.Input[str] external_key_uri: The URI for an external resource that this CryptoKeyVersion represents.
|
379
|
+
"""
|
380
|
+
if ekm_connection_key_path is not None:
|
381
|
+
pulumi.set(__self__, "ekm_connection_key_path", ekm_connection_key_path)
|
382
|
+
if external_key_uri is not None:
|
383
|
+
pulumi.set(__self__, "external_key_uri", external_key_uri)
|
384
|
+
|
385
|
+
@property
|
386
|
+
@pulumi.getter(name="ekmConnectionKeyPath")
|
387
|
+
def ekm_connection_key_path(self) -> Optional[pulumi.Input[str]]:
|
388
|
+
"""
|
389
|
+
The path to the external key material on the EKM when using EkmConnection e.g., "v0/my/key". Set this field instead of externalKeyUri when using an EkmConnection.
|
390
|
+
"""
|
391
|
+
return pulumi.get(self, "ekm_connection_key_path")
|
392
|
+
|
393
|
+
@ekm_connection_key_path.setter
|
394
|
+
def ekm_connection_key_path(self, value: Optional[pulumi.Input[str]]):
|
395
|
+
pulumi.set(self, "ekm_connection_key_path", value)
|
396
|
+
|
397
|
+
@property
|
398
|
+
@pulumi.getter(name="externalKeyUri")
|
399
|
+
def external_key_uri(self) -> Optional[pulumi.Input[str]]:
|
400
|
+
"""
|
401
|
+
The URI for an external resource that this CryptoKeyVersion represents.
|
402
|
+
"""
|
403
|
+
return pulumi.get(self, "external_key_uri")
|
404
|
+
|
405
|
+
@external_key_uri.setter
|
406
|
+
def external_key_uri(self, value: Optional[pulumi.Input[str]]):
|
407
|
+
pulumi.set(self, "external_key_uri", value)
|
408
|
+
|
409
|
+
|
364
410
|
@pulumi.input_type
|
365
411
|
class CryptoKeyVersionTemplateArgs:
|
366
412
|
def __init__(__self__, *,
|
pulumi_gcp/kms/crypto_key.py
CHANGED
@@ -17,6 +17,7 @@ __all__ = ['CryptoKeyArgs', 'CryptoKey']
|
|
17
17
|
class CryptoKeyArgs:
|
18
18
|
def __init__(__self__, *,
|
19
19
|
key_ring: pulumi.Input[str],
|
20
|
+
crypto_key_backend: Optional[pulumi.Input[str]] = None,
|
20
21
|
destroy_scheduled_duration: Optional[pulumi.Input[str]] = None,
|
21
22
|
import_only: Optional[pulumi.Input[bool]] = None,
|
22
23
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
@@ -32,6 +33,8 @@ class CryptoKeyArgs:
|
|
32
33
|
|
33
34
|
|
34
35
|
- - -
|
36
|
+
:param pulumi.Input[str] crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
37
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
35
38
|
:param pulumi.Input[str] destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
36
39
|
If not specified at creation time, the default duration is 24 hours.
|
37
40
|
:param pulumi.Input[bool] import_only: Whether this key may contain imported versions only.
|
@@ -54,6 +57,8 @@ class CryptoKeyArgs:
|
|
54
57
|
Structure is documented below.
|
55
58
|
"""
|
56
59
|
pulumi.set(__self__, "key_ring", key_ring)
|
60
|
+
if crypto_key_backend is not None:
|
61
|
+
pulumi.set(__self__, "crypto_key_backend", crypto_key_backend)
|
57
62
|
if destroy_scheduled_duration is not None:
|
58
63
|
pulumi.set(__self__, "destroy_scheduled_duration", destroy_scheduled_duration)
|
59
64
|
if import_only is not None:
|
@@ -87,6 +92,19 @@ class CryptoKeyArgs:
|
|
87
92
|
def key_ring(self, value: pulumi.Input[str]):
|
88
93
|
pulumi.set(self, "key_ring", value)
|
89
94
|
|
95
|
+
@property
|
96
|
+
@pulumi.getter(name="cryptoKeyBackend")
|
97
|
+
def crypto_key_backend(self) -> Optional[pulumi.Input[str]]:
|
98
|
+
"""
|
99
|
+
The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
100
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
101
|
+
"""
|
102
|
+
return pulumi.get(self, "crypto_key_backend")
|
103
|
+
|
104
|
+
@crypto_key_backend.setter
|
105
|
+
def crypto_key_backend(self, value: Optional[pulumi.Input[str]]):
|
106
|
+
pulumi.set(self, "crypto_key_backend", value)
|
107
|
+
|
90
108
|
@property
|
91
109
|
@pulumi.getter(name="destroyScheduledDuration")
|
92
110
|
def destroy_scheduled_duration(self) -> Optional[pulumi.Input[str]]:
|
@@ -199,6 +217,7 @@ class CryptoKeyArgs:
|
|
199
217
|
@pulumi.input_type
|
200
218
|
class _CryptoKeyState:
|
201
219
|
def __init__(__self__, *,
|
220
|
+
crypto_key_backend: Optional[pulumi.Input[str]] = None,
|
202
221
|
destroy_scheduled_duration: Optional[pulumi.Input[str]] = None,
|
203
222
|
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
204
223
|
import_only: Optional[pulumi.Input[bool]] = None,
|
@@ -213,6 +232,8 @@ class _CryptoKeyState:
|
|
213
232
|
version_template: Optional[pulumi.Input['CryptoKeyVersionTemplateArgs']] = None):
|
214
233
|
"""
|
215
234
|
Input properties used for looking up and filtering CryptoKey resources.
|
235
|
+
:param pulumi.Input[str] crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
236
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
216
237
|
:param pulumi.Input[str] destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
217
238
|
If not specified at creation time, the default duration is 24 hours.
|
218
239
|
: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.
|
@@ -245,6 +266,8 @@ class _CryptoKeyState:
|
|
245
266
|
:param pulumi.Input['CryptoKeyVersionTemplateArgs'] version_template: A template describing settings for new crypto key versions.
|
246
267
|
Structure is documented below.
|
247
268
|
"""
|
269
|
+
if crypto_key_backend is not None:
|
270
|
+
pulumi.set(__self__, "crypto_key_backend", crypto_key_backend)
|
248
271
|
if destroy_scheduled_duration is not None:
|
249
272
|
pulumi.set(__self__, "destroy_scheduled_duration", destroy_scheduled_duration)
|
250
273
|
if effective_labels is not None:
|
@@ -270,6 +293,19 @@ class _CryptoKeyState:
|
|
270
293
|
if version_template is not None:
|
271
294
|
pulumi.set(__self__, "version_template", version_template)
|
272
295
|
|
296
|
+
@property
|
297
|
+
@pulumi.getter(name="cryptoKeyBackend")
|
298
|
+
def crypto_key_backend(self) -> Optional[pulumi.Input[str]]:
|
299
|
+
"""
|
300
|
+
The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
301
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
302
|
+
"""
|
303
|
+
return pulumi.get(self, "crypto_key_backend")
|
304
|
+
|
305
|
+
@crypto_key_backend.setter
|
306
|
+
def crypto_key_backend(self, value: Optional[pulumi.Input[str]]):
|
307
|
+
pulumi.set(self, "crypto_key_backend", value)
|
308
|
+
|
273
309
|
@property
|
274
310
|
@pulumi.getter(name="destroyScheduledDuration")
|
275
311
|
def destroy_scheduled_duration(self) -> Optional[pulumi.Input[str]]:
|
@@ -439,6 +475,7 @@ class CryptoKey(pulumi.CustomResource):
|
|
439
475
|
def __init__(__self__,
|
440
476
|
resource_name: str,
|
441
477
|
opts: Optional[pulumi.ResourceOptions] = None,
|
478
|
+
crypto_key_backend: Optional[pulumi.Input[str]] = None,
|
442
479
|
destroy_scheduled_duration: Optional[pulumi.Input[str]] = None,
|
443
480
|
import_only: Optional[pulumi.Input[bool]] = None,
|
444
481
|
key_ring: Optional[pulumi.Input[str]] = None,
|
@@ -525,6 +562,8 @@ class CryptoKey(pulumi.CustomResource):
|
|
525
562
|
|
526
563
|
:param str resource_name: The name of the resource.
|
527
564
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
565
|
+
:param pulumi.Input[str] crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
566
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
528
567
|
:param pulumi.Input[str] destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
529
568
|
If not specified at creation time, the default duration is 24 hours.
|
530
569
|
:param pulumi.Input[bool] import_only: Whether this key may contain imported versions only.
|
@@ -646,6 +685,7 @@ class CryptoKey(pulumi.CustomResource):
|
|
646
685
|
def _internal_init(__self__,
|
647
686
|
resource_name: str,
|
648
687
|
opts: Optional[pulumi.ResourceOptions] = None,
|
688
|
+
crypto_key_backend: Optional[pulumi.Input[str]] = None,
|
649
689
|
destroy_scheduled_duration: Optional[pulumi.Input[str]] = None,
|
650
690
|
import_only: Optional[pulumi.Input[bool]] = None,
|
651
691
|
key_ring: Optional[pulumi.Input[str]] = None,
|
@@ -664,6 +704,7 @@ class CryptoKey(pulumi.CustomResource):
|
|
664
704
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
665
705
|
__props__ = CryptoKeyArgs.__new__(CryptoKeyArgs)
|
666
706
|
|
707
|
+
__props__.__dict__["crypto_key_backend"] = crypto_key_backend
|
667
708
|
__props__.__dict__["destroy_scheduled_duration"] = destroy_scheduled_duration
|
668
709
|
__props__.__dict__["import_only"] = import_only
|
669
710
|
if key_ring is None and not opts.urn:
|
@@ -690,6 +731,7 @@ class CryptoKey(pulumi.CustomResource):
|
|
690
731
|
def get(resource_name: str,
|
691
732
|
id: pulumi.Input[str],
|
692
733
|
opts: Optional[pulumi.ResourceOptions] = None,
|
734
|
+
crypto_key_backend: Optional[pulumi.Input[str]] = None,
|
693
735
|
destroy_scheduled_duration: Optional[pulumi.Input[str]] = None,
|
694
736
|
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
695
737
|
import_only: Optional[pulumi.Input[bool]] = None,
|
@@ -709,6 +751,8 @@ class CryptoKey(pulumi.CustomResource):
|
|
709
751
|
:param str resource_name: The unique name of the resulting resource.
|
710
752
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
711
753
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
754
|
+
:param pulumi.Input[str] crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
755
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
712
756
|
:param pulumi.Input[str] destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
713
757
|
If not specified at creation time, the default duration is 24 hours.
|
714
758
|
: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.
|
@@ -745,6 +789,7 @@ class CryptoKey(pulumi.CustomResource):
|
|
745
789
|
|
746
790
|
__props__ = _CryptoKeyState.__new__(_CryptoKeyState)
|
747
791
|
|
792
|
+
__props__.__dict__["crypto_key_backend"] = crypto_key_backend
|
748
793
|
__props__.__dict__["destroy_scheduled_duration"] = destroy_scheduled_duration
|
749
794
|
__props__.__dict__["effective_labels"] = effective_labels
|
750
795
|
__props__.__dict__["import_only"] = import_only
|
@@ -759,6 +804,15 @@ class CryptoKey(pulumi.CustomResource):
|
|
759
804
|
__props__.__dict__["version_template"] = version_template
|
760
805
|
return CryptoKey(resource_name, opts=opts, __props__=__props__)
|
761
806
|
|
807
|
+
@property
|
808
|
+
@pulumi.getter(name="cryptoKeyBackend")
|
809
|
+
def crypto_key_backend(self) -> pulumi.Output[str]:
|
810
|
+
"""
|
811
|
+
The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
812
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
813
|
+
"""
|
814
|
+
return pulumi.get(self, "crypto_key_backend")
|
815
|
+
|
762
816
|
@property
|
763
817
|
@pulumi.getter(name="destroyScheduledDuration")
|
764
818
|
def destroy_scheduled_duration(self) -> pulumi.Output[str]:
|