pulumi-gcp 7.39.0a1726207510__py3-none-any.whl → 8.0.0a1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. pulumi_gcp/__init__.py +32 -19
  2. pulumi_gcp/accesscontextmanager/access_policy.py +4 -2
  3. pulumi_gcp/activedirectory/domain.py +38 -2
  4. pulumi_gcp/activedirectory/domain_trust.py +0 -30
  5. pulumi_gcp/activedirectory/peering.py +0 -72
  6. pulumi_gcp/alloydb/cluster.py +12 -200
  7. pulumi_gcp/alloydb/instance.py +13 -5
  8. pulumi_gcp/alloydb/user.py +14 -6
  9. pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +4 -2
  10. pulumi_gcp/apigee/sync_authorization.py +4 -2
  11. pulumi_gcp/apigee/target_server.py +4 -2
  12. pulumi_gcp/appengine/firewall_rule.py +4 -2
  13. pulumi_gcp/appengine/flexible_app_version.py +4 -2
  14. pulumi_gcp/apphub/service.py +8 -4
  15. pulumi_gcp/apphub/service_project_attachment.py +8 -4
  16. pulumi_gcp/applicationintegration/client.py +0 -154
  17. pulumi_gcp/bigquery/_inputs.py +0 -70
  18. pulumi_gcp/bigquery/iam_binding.py +0 -260
  19. pulumi_gcp/bigquery/iam_member.py +0 -260
  20. pulumi_gcp/bigquery/iam_policy.py +0 -240
  21. pulumi_gcp/bigquery/outputs.py +0 -44
  22. pulumi_gcp/bigquery/reservation.py +0 -84
  23. pulumi_gcp/bigquery/table.py +0 -98
  24. pulumi_gcp/billing/project_info.py +4 -2
  25. pulumi_gcp/certificateauthority/get_authority.py +0 -20
  26. pulumi_gcp/certificatemanager/get_certificate_map.py +0 -14
  27. pulumi_gcp/cloudasset/folder_feed.py +4 -2
  28. pulumi_gcp/cloudidentity/get_group_lookup.py +0 -18
  29. pulumi_gcp/cloudidentity/get_group_memberships.py +0 -14
  30. pulumi_gcp/cloudidentity/get_groups.py +0 -14
  31. pulumi_gcp/cloudrunv2/_inputs.py +25 -25
  32. pulumi_gcp/cloudrunv2/get_job.py +11 -1
  33. pulumi_gcp/cloudrunv2/get_service.py +11 -1
  34. pulumi_gcp/cloudrunv2/job.py +50 -0
  35. pulumi_gcp/cloudrunv2/outputs.py +26 -26
  36. pulumi_gcp/cloudrunv2/service.py +54 -0
  37. pulumi_gcp/compute/_inputs.py +117 -54
  38. pulumi_gcp/compute/backend_service.py +52 -0
  39. pulumi_gcp/compute/disk_async_replication.py +0 -48
  40. pulumi_gcp/compute/firewall_policy_rule.py +4 -2
  41. pulumi_gcp/compute/forwarding_rule.py +42 -0
  42. pulumi_gcp/compute/get_backend_bucket.py +0 -14
  43. pulumi_gcp/compute/get_backend_service.py +0 -20
  44. pulumi_gcp/compute/get_certificate.py +0 -20
  45. pulumi_gcp/compute/get_forwarding_rule.py +11 -15
  46. pulumi_gcp/compute/get_forwarding_rules.py +0 -16
  47. pulumi_gcp/compute/get_global_forwarding_rule.py +0 -14
  48. pulumi_gcp/compute/get_hc_vpn_gateway.py +0 -14
  49. pulumi_gcp/compute/get_health_check.py +0 -14
  50. pulumi_gcp/compute/get_lbip_ranges.py +0 -32
  51. pulumi_gcp/compute/get_netblock_ip_ranges.py +0 -52
  52. pulumi_gcp/compute/get_network.py +0 -14
  53. pulumi_gcp/compute/get_networks.py +0 -14
  54. pulumi_gcp/compute/get_region_ssl_certificate.py +0 -20
  55. pulumi_gcp/compute/get_ssl_policy.py +0 -14
  56. pulumi_gcp/compute/get_vpn_gateway.py +0 -14
  57. pulumi_gcp/compute/global_address.py +8 -4
  58. pulumi_gcp/compute/global_forwarding_rule.py +7 -0
  59. pulumi_gcp/compute/instance_template.py +56 -63
  60. pulumi_gcp/compute/managed_ssl_certificate.py +1 -20
  61. pulumi_gcp/compute/manged_ssl_certificate.py +1 -20
  62. pulumi_gcp/compute/network_attachment.py +8 -4
  63. pulumi_gcp/compute/node_group.py +4 -2
  64. pulumi_gcp/compute/organization_security_policy_association.py +4 -2
  65. pulumi_gcp/compute/outputs.py +101 -42
  66. pulumi_gcp/compute/project_cloud_armor_tier.py +4 -2
  67. pulumi_gcp/compute/region_backend_service.py +36 -7
  68. pulumi_gcp/compute/region_instance_template.py +56 -7
  69. pulumi_gcp/compute/region_ssl_certificate.py +49 -7
  70. pulumi_gcp/compute/ssl_certificate.py +49 -7
  71. pulumi_gcp/compute/subnetwork.py +193 -23
  72. pulumi_gcp/config/__init__.pyi +3 -5
  73. pulumi_gcp/config/vars.py +6 -10
  74. pulumi_gcp/container/_inputs.py +19 -41
  75. pulumi_gcp/container/cluster.py +79 -0
  76. pulumi_gcp/container/get_cluster.py +21 -25
  77. pulumi_gcp/container/get_engine_versions.py +8 -2
  78. pulumi_gcp/container/outputs.py +17 -40
  79. pulumi_gcp/dataproc/get_metastore_service.py +0 -16
  80. pulumi_gcp/diagflow/intent.py +4 -2
  81. pulumi_gcp/dns/get_record_set.py +0 -20
  82. pulumi_gcp/edgenetwork/network.py +83 -0
  83. pulumi_gcp/edgenetwork/subnet.py +83 -0
  84. pulumi_gcp/filestore/get_instance.py +0 -20
  85. pulumi_gcp/firebase/database_instance.py +2 -0
  86. pulumi_gcp/firebase/hosting_custom_domain.py +4 -2
  87. pulumi_gcp/firebase/hosting_version.py +4 -2
  88. pulumi_gcp/firebase/project.py +2 -0
  89. pulumi_gcp/firestore/document.py +8 -4
  90. pulumi_gcp/folder/access_approval_settings.py +12 -6
  91. pulumi_gcp/gkeonprem/_inputs.py +11 -11
  92. pulumi_gcp/gkeonprem/outputs.py +9 -9
  93. pulumi_gcp/gkeonprem/v_mware_cluster.py +31 -31
  94. pulumi_gcp/gkeonprem/v_mware_node_pool.py +186 -0
  95. pulumi_gcp/iam/access_boundary_policy.py +4 -2
  96. pulumi_gcp/iam/deny_policy.py +4 -2
  97. pulumi_gcp/iam/get_workload_identity_pool.py +0 -14
  98. pulumi_gcp/iam/get_workload_identity_pool_provider.py +0 -16
  99. pulumi_gcp/iap/brand.py +4 -2
  100. pulumi_gcp/iap/client.py +4 -2
  101. pulumi_gcp/iap/get_client.py +0 -18
  102. pulumi_gcp/identityplatform/__init__.py +0 -1
  103. pulumi_gcp/identityplatform/_inputs.py +0 -396
  104. pulumi_gcp/identityplatform/config.py +2 -0
  105. pulumi_gcp/identityplatform/outputs.py +0 -313
  106. pulumi_gcp/integrationconnectors/managed_zone.py +4 -2
  107. pulumi_gcp/kms/__init__.py +4 -0
  108. pulumi_gcp/kms/_inputs.py +130 -0
  109. pulumi_gcp/kms/autokey_config.py +6 -2
  110. pulumi_gcp/kms/ekm_connection_iam_binding.py +1097 -0
  111. pulumi_gcp/kms/ekm_connection_iam_member.py +1097 -0
  112. pulumi_gcp/kms/ekm_connection_iam_policy.py +916 -0
  113. pulumi_gcp/kms/get_ekm_connection_iam_policy.py +177 -0
  114. pulumi_gcp/kms/key_handle.py +8 -2
  115. pulumi_gcp/kms/outputs.py +76 -0
  116. pulumi_gcp/logging/folder_settings.py +4 -2
  117. pulumi_gcp/monitoring/get_secret_version.py +2 -2
  118. pulumi_gcp/monitoring/monitored_project.py +4 -2
  119. pulumi_gcp/networksecurity/firewall_endpoint_association.py +12 -44
  120. pulumi_gcp/networkservices/_inputs.py +23 -0
  121. pulumi_gcp/networkservices/outputs.py +17 -1
  122. pulumi_gcp/networkservices/tcp_route.py +2 -0
  123. pulumi_gcp/organizations/access_approval_settings.py +4 -2
  124. pulumi_gcp/organizations/folder.py +35 -1
  125. pulumi_gcp/organizations/get_active_folder.py +0 -16
  126. pulumi_gcp/organizations/get_client_config.py +16 -15
  127. pulumi_gcp/organizations/get_folder.py +11 -1
  128. pulumi_gcp/organizations/get_project.py +3 -13
  129. pulumi_gcp/organizations/project.py +3 -87
  130. pulumi_gcp/orgpolicy/policy.py +12 -6
  131. pulumi_gcp/projects/api_key.py +2 -52
  132. pulumi_gcp/provider.py +32 -52
  133. pulumi_gcp/pubsub/topic.py +1 -1
  134. pulumi_gcp/pulumi-plugin.json +1 -1
  135. pulumi_gcp/redis/cluster.py +58 -0
  136. pulumi_gcp/redis/get_instance.py +0 -20
  137. pulumi_gcp/resourcemanager/lien.py +4 -2
  138. pulumi_gcp/secretmanager/get_secret_version.py +2 -2
  139. pulumi_gcp/securitycenter/__init__.py +1 -0
  140. pulumi_gcp/securitycenter/folder_custom_module.py +8 -4
  141. pulumi_gcp/securitycenter/management_folder_security_health_analytics_custom_module.py +8 -4
  142. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +862 -0
  143. pulumi_gcp/serviceusage/consumer_quota_override.py +12 -6
  144. pulumi_gcp/spanner/get_instance.py +0 -14
  145. pulumi_gcp/sql/_inputs.py +3 -36
  146. pulumi_gcp/sql/outputs.py +6 -49
  147. pulumi_gcp/storage/_inputs.py +23 -23
  148. pulumi_gcp/storage/bucket.py +6 -6
  149. pulumi_gcp/storage/outputs.py +27 -27
  150. pulumi_gcp/tags/get_tag_key.py +0 -30
  151. pulumi_gcp/tags/get_tag_keys.py +0 -26
  152. pulumi_gcp/tags/get_tag_value.py +0 -16
  153. pulumi_gcp/tags/get_tag_values.py +0 -14
  154. pulumi_gcp/tags/tag_binding.py +4 -2
  155. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -2
  156. pulumi_gcp/vmwareengine/network.py +4 -2
  157. pulumi_gcp/vpcaccess/connector.py +14 -6
  158. pulumi_gcp/vpcaccess/get_connector.py +6 -2
  159. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0a1.dist-info}/METADATA +1 -1
  160. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0a1.dist-info}/RECORD +162 -162
  161. pulumi_gcp/datastore/__init__.py +0 -10
  162. pulumi_gcp/datastore/_inputs.py +0 -76
  163. pulumi_gcp/datastore/data_store_index.py +0 -515
  164. pulumi_gcp/datastore/outputs.py +0 -51
  165. pulumi_gcp/identityplatform/project_default_config.py +0 -357
  166. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0a1.dist-info}/WHEEL +0 -0
  167. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0a1.dist-info}/top_level.txt +0 -0
@@ -41,11 +41,6 @@ __all__ = [
41
41
  'InboundSamlConfigIdpConfigIdpCertificate',
42
42
  'InboundSamlConfigSpConfig',
43
43
  'InboundSamlConfigSpConfigSpCertificate',
44
- 'ProjectDefaultConfigSignIn',
45
- 'ProjectDefaultConfigSignInAnonymous',
46
- 'ProjectDefaultConfigSignInEmail',
47
- 'ProjectDefaultConfigSignInHashConfig',
48
- 'ProjectDefaultConfigSignInPhoneNumber',
49
44
  'TenantInboundSamlConfigIdpConfig',
50
45
  'TenantInboundSamlConfigIdpConfigIdpCertificate',
51
46
  'TenantInboundSamlConfigSpConfig',
@@ -1375,314 +1370,6 @@ class InboundSamlConfigSpConfigSpCertificate(dict):
1375
1370
  return pulumi.get(self, "x509_certificate")
1376
1371
 
1377
1372
 
1378
- @pulumi.output_type
1379
- class ProjectDefaultConfigSignIn(dict):
1380
- @staticmethod
1381
- def __key_warning(key: str):
1382
- suggest = None
1383
- if key == "allowDuplicateEmails":
1384
- suggest = "allow_duplicate_emails"
1385
- elif key == "hashConfigs":
1386
- suggest = "hash_configs"
1387
- elif key == "phoneNumber":
1388
- suggest = "phone_number"
1389
-
1390
- if suggest:
1391
- pulumi.log.warn(f"Key '{key}' not found in ProjectDefaultConfigSignIn. Access the value via the '{suggest}' property getter instead.")
1392
-
1393
- def __getitem__(self, key: str) -> Any:
1394
- ProjectDefaultConfigSignIn.__key_warning(key)
1395
- return super().__getitem__(key)
1396
-
1397
- def get(self, key: str, default = None) -> Any:
1398
- ProjectDefaultConfigSignIn.__key_warning(key)
1399
- return super().get(key, default)
1400
-
1401
- def __init__(__self__, *,
1402
- allow_duplicate_emails: Optional[bool] = None,
1403
- anonymous: Optional['outputs.ProjectDefaultConfigSignInAnonymous'] = None,
1404
- email: Optional['outputs.ProjectDefaultConfigSignInEmail'] = None,
1405
- hash_configs: Optional[Sequence['outputs.ProjectDefaultConfigSignInHashConfig']] = None,
1406
- phone_number: Optional['outputs.ProjectDefaultConfigSignInPhoneNumber'] = None):
1407
- """
1408
- :param bool allow_duplicate_emails: Whether to allow more than one account to have the same email.
1409
- :param 'ProjectDefaultConfigSignInAnonymousArgs' anonymous: Configuration options related to authenticating an anonymous user.
1410
- Structure is documented below.
1411
- :param 'ProjectDefaultConfigSignInEmailArgs' email: Configuration options related to authenticating a user by their email address.
1412
- Structure is documented below.
1413
- :param Sequence['ProjectDefaultConfigSignInHashConfigArgs'] hash_configs: (Output)
1414
- Output only. Hash config information.
1415
- Structure is documented below.
1416
- :param 'ProjectDefaultConfigSignInPhoneNumberArgs' phone_number: Configuration options related to authenticated a user by their phone number.
1417
- Structure is documented below.
1418
- """
1419
- if allow_duplicate_emails is not None:
1420
- pulumi.set(__self__, "allow_duplicate_emails", allow_duplicate_emails)
1421
- if anonymous is not None:
1422
- pulumi.set(__self__, "anonymous", anonymous)
1423
- if email is not None:
1424
- pulumi.set(__self__, "email", email)
1425
- if hash_configs is not None:
1426
- pulumi.set(__self__, "hash_configs", hash_configs)
1427
- if phone_number is not None:
1428
- pulumi.set(__self__, "phone_number", phone_number)
1429
-
1430
- @property
1431
- @pulumi.getter(name="allowDuplicateEmails")
1432
- def allow_duplicate_emails(self) -> Optional[bool]:
1433
- """
1434
- Whether to allow more than one account to have the same email.
1435
- """
1436
- return pulumi.get(self, "allow_duplicate_emails")
1437
-
1438
- @property
1439
- @pulumi.getter
1440
- def anonymous(self) -> Optional['outputs.ProjectDefaultConfigSignInAnonymous']:
1441
- """
1442
- Configuration options related to authenticating an anonymous user.
1443
- Structure is documented below.
1444
- """
1445
- return pulumi.get(self, "anonymous")
1446
-
1447
- @property
1448
- @pulumi.getter
1449
- def email(self) -> Optional['outputs.ProjectDefaultConfigSignInEmail']:
1450
- """
1451
- Configuration options related to authenticating a user by their email address.
1452
- Structure is documented below.
1453
- """
1454
- return pulumi.get(self, "email")
1455
-
1456
- @property
1457
- @pulumi.getter(name="hashConfigs")
1458
- def hash_configs(self) -> Optional[Sequence['outputs.ProjectDefaultConfigSignInHashConfig']]:
1459
- """
1460
- (Output)
1461
- Output only. Hash config information.
1462
- Structure is documented below.
1463
- """
1464
- return pulumi.get(self, "hash_configs")
1465
-
1466
- @property
1467
- @pulumi.getter(name="phoneNumber")
1468
- def phone_number(self) -> Optional['outputs.ProjectDefaultConfigSignInPhoneNumber']:
1469
- """
1470
- Configuration options related to authenticated a user by their phone number.
1471
- Structure is documented below.
1472
- """
1473
- return pulumi.get(self, "phone_number")
1474
-
1475
-
1476
- @pulumi.output_type
1477
- class ProjectDefaultConfigSignInAnonymous(dict):
1478
- def __init__(__self__, *,
1479
- enabled: bool):
1480
- """
1481
- :param bool enabled: Whether anonymous user auth is enabled for the project or not.
1482
-
1483
- <a name="nested_hash_config"></a>The `hash_config` block contains:
1484
- """
1485
- pulumi.set(__self__, "enabled", enabled)
1486
-
1487
- @property
1488
- @pulumi.getter
1489
- def enabled(self) -> bool:
1490
- """
1491
- Whether anonymous user auth is enabled for the project or not.
1492
-
1493
- <a name="nested_hash_config"></a>The `hash_config` block contains:
1494
- """
1495
- return pulumi.get(self, "enabled")
1496
-
1497
-
1498
- @pulumi.output_type
1499
- class ProjectDefaultConfigSignInEmail(dict):
1500
- @staticmethod
1501
- def __key_warning(key: str):
1502
- suggest = None
1503
- if key == "passwordRequired":
1504
- suggest = "password_required"
1505
-
1506
- if suggest:
1507
- pulumi.log.warn(f"Key '{key}' not found in ProjectDefaultConfigSignInEmail. Access the value via the '{suggest}' property getter instead.")
1508
-
1509
- def __getitem__(self, key: str) -> Any:
1510
- ProjectDefaultConfigSignInEmail.__key_warning(key)
1511
- return super().__getitem__(key)
1512
-
1513
- def get(self, key: str, default = None) -> Any:
1514
- ProjectDefaultConfigSignInEmail.__key_warning(key)
1515
- return super().get(key, default)
1516
-
1517
- def __init__(__self__, *,
1518
- enabled: Optional[bool] = None,
1519
- password_required: Optional[bool] = None):
1520
- """
1521
- :param bool enabled: Whether email auth is enabled for the project or not.
1522
- :param bool password_required: Whether a password is required for email auth or not. If true, both an email and
1523
- password must be provided to sign in. If false, a user may sign in via either
1524
- email/password or email link.
1525
- """
1526
- if enabled is not None:
1527
- pulumi.set(__self__, "enabled", enabled)
1528
- if password_required is not None:
1529
- pulumi.set(__self__, "password_required", password_required)
1530
-
1531
- @property
1532
- @pulumi.getter
1533
- def enabled(self) -> Optional[bool]:
1534
- """
1535
- Whether email auth is enabled for the project or not.
1536
- """
1537
- return pulumi.get(self, "enabled")
1538
-
1539
- @property
1540
- @pulumi.getter(name="passwordRequired")
1541
- def password_required(self) -> Optional[bool]:
1542
- """
1543
- Whether a password is required for email auth or not. If true, both an email and
1544
- password must be provided to sign in. If false, a user may sign in via either
1545
- email/password or email link.
1546
- """
1547
- return pulumi.get(self, "password_required")
1548
-
1549
-
1550
- @pulumi.output_type
1551
- class ProjectDefaultConfigSignInHashConfig(dict):
1552
- @staticmethod
1553
- def __key_warning(key: str):
1554
- suggest = None
1555
- if key == "memoryCost":
1556
- suggest = "memory_cost"
1557
- elif key == "saltSeparator":
1558
- suggest = "salt_separator"
1559
- elif key == "signerKey":
1560
- suggest = "signer_key"
1561
-
1562
- if suggest:
1563
- pulumi.log.warn(f"Key '{key}' not found in ProjectDefaultConfigSignInHashConfig. Access the value via the '{suggest}' property getter instead.")
1564
-
1565
- def __getitem__(self, key: str) -> Any:
1566
- ProjectDefaultConfigSignInHashConfig.__key_warning(key)
1567
- return super().__getitem__(key)
1568
-
1569
- def get(self, key: str, default = None) -> Any:
1570
- ProjectDefaultConfigSignInHashConfig.__key_warning(key)
1571
- return super().get(key, default)
1572
-
1573
- def __init__(__self__, *,
1574
- algorithm: Optional[str] = None,
1575
- memory_cost: Optional[int] = None,
1576
- rounds: Optional[int] = None,
1577
- salt_separator: Optional[str] = None,
1578
- signer_key: Optional[str] = None):
1579
- """
1580
- :param str algorithm: Different password hash algorithms used in Identity Toolkit.
1581
- :param int memory_cost: Memory cost for hash calculation. Used by scrypt and other similar password derivation algorithms. See https://tools.ietf.org/html/rfc7914 for explanation of field.
1582
- :param int rounds: How many rounds for hash calculation. Used by scrypt and other similar password derivation algorithms.
1583
- :param str salt_separator: Non-printable character to be inserted between the salt and plain text password in base64.
1584
- :param str signer_key: Signer key in base64.
1585
- """
1586
- if algorithm is not None:
1587
- pulumi.set(__self__, "algorithm", algorithm)
1588
- if memory_cost is not None:
1589
- pulumi.set(__self__, "memory_cost", memory_cost)
1590
- if rounds is not None:
1591
- pulumi.set(__self__, "rounds", rounds)
1592
- if salt_separator is not None:
1593
- pulumi.set(__self__, "salt_separator", salt_separator)
1594
- if signer_key is not None:
1595
- pulumi.set(__self__, "signer_key", signer_key)
1596
-
1597
- @property
1598
- @pulumi.getter
1599
- def algorithm(self) -> Optional[str]:
1600
- """
1601
- Different password hash algorithms used in Identity Toolkit.
1602
- """
1603
- return pulumi.get(self, "algorithm")
1604
-
1605
- @property
1606
- @pulumi.getter(name="memoryCost")
1607
- def memory_cost(self) -> Optional[int]:
1608
- """
1609
- Memory cost for hash calculation. Used by scrypt and other similar password derivation algorithms. See https://tools.ietf.org/html/rfc7914 for explanation of field.
1610
- """
1611
- return pulumi.get(self, "memory_cost")
1612
-
1613
- @property
1614
- @pulumi.getter
1615
- def rounds(self) -> Optional[int]:
1616
- """
1617
- How many rounds for hash calculation. Used by scrypt and other similar password derivation algorithms.
1618
- """
1619
- return pulumi.get(self, "rounds")
1620
-
1621
- @property
1622
- @pulumi.getter(name="saltSeparator")
1623
- def salt_separator(self) -> Optional[str]:
1624
- """
1625
- Non-printable character to be inserted between the salt and plain text password in base64.
1626
- """
1627
- return pulumi.get(self, "salt_separator")
1628
-
1629
- @property
1630
- @pulumi.getter(name="signerKey")
1631
- def signer_key(self) -> Optional[str]:
1632
- """
1633
- Signer key in base64.
1634
- """
1635
- return pulumi.get(self, "signer_key")
1636
-
1637
-
1638
- @pulumi.output_type
1639
- class ProjectDefaultConfigSignInPhoneNumber(dict):
1640
- @staticmethod
1641
- def __key_warning(key: str):
1642
- suggest = None
1643
- if key == "testPhoneNumbers":
1644
- suggest = "test_phone_numbers"
1645
-
1646
- if suggest:
1647
- pulumi.log.warn(f"Key '{key}' not found in ProjectDefaultConfigSignInPhoneNumber. Access the value via the '{suggest}' property getter instead.")
1648
-
1649
- def __getitem__(self, key: str) -> Any:
1650
- ProjectDefaultConfigSignInPhoneNumber.__key_warning(key)
1651
- return super().__getitem__(key)
1652
-
1653
- def get(self, key: str, default = None) -> Any:
1654
- ProjectDefaultConfigSignInPhoneNumber.__key_warning(key)
1655
- return super().get(key, default)
1656
-
1657
- def __init__(__self__, *,
1658
- enabled: Optional[bool] = None,
1659
- test_phone_numbers: Optional[Mapping[str, str]] = None):
1660
- """
1661
- :param bool enabled: Whether phone number auth is enabled for the project or not.
1662
- :param Mapping[str, str] test_phone_numbers: A map of <test phone number, fake code> that can be used for phone auth testing.
1663
- """
1664
- if enabled is not None:
1665
- pulumi.set(__self__, "enabled", enabled)
1666
- if test_phone_numbers is not None:
1667
- pulumi.set(__self__, "test_phone_numbers", test_phone_numbers)
1668
-
1669
- @property
1670
- @pulumi.getter
1671
- def enabled(self) -> Optional[bool]:
1672
- """
1673
- Whether phone number auth is enabled for the project or not.
1674
- """
1675
- return pulumi.get(self, "enabled")
1676
-
1677
- @property
1678
- @pulumi.getter(name="testPhoneNumbers")
1679
- def test_phone_numbers(self) -> Optional[Mapping[str, str]]:
1680
- """
1681
- A map of <test phone number, fake code> that can be used for phone auth testing.
1682
- """
1683
- return pulumi.get(self, "test_phone_numbers")
1684
-
1685
-
1686
1373
  @pulumi.output_type
1687
1374
  class TenantInboundSamlConfigIdpConfig(dict):
1688
1375
  @staticmethod
@@ -381,7 +381,8 @@ class ManagedZone(pulumi.CustomResource):
381
381
  project_id="tf-test_34535",
382
382
  name="tf-test_22375",
383
383
  org_id="123456789",
384
- billing_account="000000-0000000-0000000-000000")
384
+ billing_account="000000-0000000-0000000-000000",
385
+ deletion_policy="DELETE")
385
386
  test_project = gcp.organizations.get_project()
386
387
  dns_peer_binding = gcp.projects.IAMMember("dns_peer_binding",
387
388
  project=target_project.project_id,
@@ -491,7 +492,8 @@ class ManagedZone(pulumi.CustomResource):
491
492
  project_id="tf-test_34535",
492
493
  name="tf-test_22375",
493
494
  org_id="123456789",
494
- billing_account="000000-0000000-0000000-000000")
495
+ billing_account="000000-0000000-0000000-000000",
496
+ deletion_policy="DELETE")
495
497
  test_project = gcp.organizations.get_project()
496
498
  dns_peer_binding = gcp.projects.IAMMember("dns_peer_binding",
497
499
  project=target_project.project_id,
@@ -12,8 +12,12 @@ from .crypto_key_iam_member import *
12
12
  from .crypto_key_iam_policy import *
13
13
  from .crypto_key_version import *
14
14
  from .ekm_connection import *
15
+ from .ekm_connection_iam_binding import *
16
+ from .ekm_connection_iam_member import *
17
+ from .ekm_connection_iam_policy import *
15
18
  from .get_crypto_key_iam_policy import *
16
19
  from .get_crypto_keys import *
20
+ from .get_ekm_connection_iam_policy import *
17
21
  from .get_key_ring_iam_policy import *
18
22
  from .get_key_rings import *
19
23
  from .get_kms_crypto_key import *
pulumi_gcp/kms/_inputs.py CHANGED
@@ -33,6 +33,10 @@ __all__ = [
33
33
  'CryptoKeyVersionExternalProtectionLevelOptionsArgsDict',
34
34
  'CryptoKeyVersionTemplateArgs',
35
35
  'CryptoKeyVersionTemplateArgsDict',
36
+ 'EkmConnectionIamBindingConditionArgs',
37
+ 'EkmConnectionIamBindingConditionArgsDict',
38
+ 'EkmConnectionIamMemberConditionArgs',
39
+ 'EkmConnectionIamMemberConditionArgsDict',
36
40
  'EkmConnectionServiceResolverArgs',
37
41
  'EkmConnectionServiceResolverArgsDict',
38
42
  'EkmConnectionServiceResolverServerCertificateArgs',
@@ -644,6 +648,132 @@ class CryptoKeyVersionTemplateArgs:
644
648
  pulumi.set(self, "protection_level", value)
645
649
 
646
650
 
651
+ if not MYPY:
652
+ class EkmConnectionIamBindingConditionArgsDict(TypedDict):
653
+ expression: pulumi.Input[str]
654
+ """
655
+ Textual representation of an expression in Common Expression Language syntax.
656
+ """
657
+ title: pulumi.Input[str]
658
+ """
659
+ A title for the expression, i.e. a short string describing its purpose.
660
+ """
661
+ description: NotRequired[pulumi.Input[str]]
662
+ elif False:
663
+ EkmConnectionIamBindingConditionArgsDict: TypeAlias = Mapping[str, Any]
664
+
665
+ @pulumi.input_type
666
+ class EkmConnectionIamBindingConditionArgs:
667
+ def __init__(__self__, *,
668
+ expression: pulumi.Input[str],
669
+ title: pulumi.Input[str],
670
+ description: Optional[pulumi.Input[str]] = None):
671
+ """
672
+ :param pulumi.Input[str] expression: Textual representation of an expression in Common Expression Language syntax.
673
+ :param pulumi.Input[str] title: A title for the expression, i.e. a short string describing its purpose.
674
+ """
675
+ pulumi.set(__self__, "expression", expression)
676
+ pulumi.set(__self__, "title", title)
677
+ if description is not None:
678
+ pulumi.set(__self__, "description", description)
679
+
680
+ @property
681
+ @pulumi.getter
682
+ def expression(self) -> pulumi.Input[str]:
683
+ """
684
+ Textual representation of an expression in Common Expression Language syntax.
685
+ """
686
+ return pulumi.get(self, "expression")
687
+
688
+ @expression.setter
689
+ def expression(self, value: pulumi.Input[str]):
690
+ pulumi.set(self, "expression", value)
691
+
692
+ @property
693
+ @pulumi.getter
694
+ def title(self) -> pulumi.Input[str]:
695
+ """
696
+ A title for the expression, i.e. a short string describing its purpose.
697
+ """
698
+ return pulumi.get(self, "title")
699
+
700
+ @title.setter
701
+ def title(self, value: pulumi.Input[str]):
702
+ pulumi.set(self, "title", value)
703
+
704
+ @property
705
+ @pulumi.getter
706
+ def description(self) -> Optional[pulumi.Input[str]]:
707
+ return pulumi.get(self, "description")
708
+
709
+ @description.setter
710
+ def description(self, value: Optional[pulumi.Input[str]]):
711
+ pulumi.set(self, "description", value)
712
+
713
+
714
+ if not MYPY:
715
+ class EkmConnectionIamMemberConditionArgsDict(TypedDict):
716
+ expression: pulumi.Input[str]
717
+ """
718
+ Textual representation of an expression in Common Expression Language syntax.
719
+ """
720
+ title: pulumi.Input[str]
721
+ """
722
+ A title for the expression, i.e. a short string describing its purpose.
723
+ """
724
+ description: NotRequired[pulumi.Input[str]]
725
+ elif False:
726
+ EkmConnectionIamMemberConditionArgsDict: TypeAlias = Mapping[str, Any]
727
+
728
+ @pulumi.input_type
729
+ class EkmConnectionIamMemberConditionArgs:
730
+ def __init__(__self__, *,
731
+ expression: pulumi.Input[str],
732
+ title: pulumi.Input[str],
733
+ description: Optional[pulumi.Input[str]] = None):
734
+ """
735
+ :param pulumi.Input[str] expression: Textual representation of an expression in Common Expression Language syntax.
736
+ :param pulumi.Input[str] title: A title for the expression, i.e. a short string describing its purpose.
737
+ """
738
+ pulumi.set(__self__, "expression", expression)
739
+ pulumi.set(__self__, "title", title)
740
+ if description is not None:
741
+ pulumi.set(__self__, "description", description)
742
+
743
+ @property
744
+ @pulumi.getter
745
+ def expression(self) -> pulumi.Input[str]:
746
+ """
747
+ Textual representation of an expression in Common Expression Language syntax.
748
+ """
749
+ return pulumi.get(self, "expression")
750
+
751
+ @expression.setter
752
+ def expression(self, value: pulumi.Input[str]):
753
+ pulumi.set(self, "expression", value)
754
+
755
+ @property
756
+ @pulumi.getter
757
+ def title(self) -> pulumi.Input[str]:
758
+ """
759
+ A title for the expression, i.e. a short string describing its purpose.
760
+ """
761
+ return pulumi.get(self, "title")
762
+
763
+ @title.setter
764
+ def title(self, value: pulumi.Input[str]):
765
+ pulumi.set(self, "title", value)
766
+
767
+ @property
768
+ @pulumi.getter
769
+ def description(self) -> Optional[pulumi.Input[str]]:
770
+ return pulumi.get(self, "description")
771
+
772
+ @description.setter
773
+ def description(self, value: Optional[pulumi.Input[str]]):
774
+ pulumi.set(self, "description", value)
775
+
776
+
647
777
  if not MYPY:
648
778
  class EkmConnectionServiceResolverArgsDict(TypedDict):
649
779
  hostname: pulumi.Input[str]
@@ -136,13 +136,15 @@ class AutokeyConfig(pulumi.CustomResource):
136
136
  # Create Folder in GCP Organization
137
137
  autokms_folder = gcp.organizations.Folder("autokms_folder",
138
138
  display_name="my-folder",
139
- parent="organizations/123456789")
139
+ parent="organizations/123456789",
140
+ deletion_protection=False)
140
141
  # Create the key project
141
142
  key_project = gcp.organizations.Project("key_project",
142
143
  project_id="key-proj",
143
144
  name="key-proj",
144
145
  folder_id=autokms_folder.folder_id,
145
146
  billing_account="000000-0000000-0000000-000000",
147
+ deletion_policy="DELETE",
146
148
  opts = pulumi.ResourceOptions(depends_on=[autokms_folder]))
147
149
  # Enable the Cloud KMS API
148
150
  kms_api_service = gcp.projects.Service("kms_api_service",
@@ -224,13 +226,15 @@ class AutokeyConfig(pulumi.CustomResource):
224
226
  # Create Folder in GCP Organization
225
227
  autokms_folder = gcp.organizations.Folder("autokms_folder",
226
228
  display_name="my-folder",
227
- parent="organizations/123456789")
229
+ parent="organizations/123456789",
230
+ deletion_protection=False)
228
231
  # Create the key project
229
232
  key_project = gcp.organizations.Project("key_project",
230
233
  project_id="key-proj",
231
234
  name="key-proj",
232
235
  folder_id=autokms_folder.folder_id,
233
236
  billing_account="000000-0000000-0000000-000000",
237
+ deletion_policy="DELETE",
234
238
  opts = pulumi.ResourceOptions(depends_on=[autokms_folder]))
235
239
  # Enable the Cloud KMS API
236
240
  kms_api_service = gcp.projects.Service("kms_api_service",