pulumi-gcp 8.14.0a1736836474__py3-none-any.whl → 8.14.0a1736952890__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. pulumi_gcp/__init__.py +32 -0
  2. pulumi_gcp/applicationintegration/_inputs.py +3 -3
  3. pulumi_gcp/applicationintegration/outputs.py +2 -2
  4. pulumi_gcp/beyondcorp/__init__.py +1 -0
  5. pulumi_gcp/beyondcorp/_inputs.py +93 -0
  6. pulumi_gcp/beyondcorp/outputs.py +89 -0
  7. pulumi_gcp/beyondcorp/security_gateway.py +670 -0
  8. pulumi_gcp/blockchainnodeengine/_inputs.py +3 -3
  9. pulumi_gcp/blockchainnodeengine/outputs.py +2 -2
  10. pulumi_gcp/certificateauthority/_inputs.py +6 -6
  11. pulumi_gcp/certificateauthority/outputs.py +4 -4
  12. pulumi_gcp/certificatemanager/_inputs.py +3 -3
  13. pulumi_gcp/certificatemanager/outputs.py +2 -2
  14. pulumi_gcp/chronicle/__init__.py +2 -0
  15. pulumi_gcp/chronicle/_inputs.py +388 -0
  16. pulumi_gcp/chronicle/data_access_label.py +690 -0
  17. pulumi_gcp/chronicle/data_access_scope.py +1094 -0
  18. pulumi_gcp/chronicle/outputs.py +322 -0
  19. pulumi_gcp/chronicle/watchlist.py +68 -45
  20. pulumi_gcp/cloudbuild/_inputs.py +3 -3
  21. pulumi_gcp/cloudbuild/outputs.py +2 -2
  22. pulumi_gcp/cloudquota/__init__.py +1 -0
  23. pulumi_gcp/cloudquota/s_quota_adjuster_settings.py +336 -0
  24. pulumi_gcp/compute/_inputs.py +33 -33
  25. pulumi_gcp/compute/instance_group_manager.py +9 -9
  26. pulumi_gcp/compute/outputs.py +22 -22
  27. pulumi_gcp/compute/region_instance_group_manager.py +9 -9
  28. pulumi_gcp/datacatalog/_inputs.py +3 -3
  29. pulumi_gcp/datacatalog/outputs.py +2 -2
  30. pulumi_gcp/developerconnect/_inputs.py +910 -42
  31. pulumi_gcp/developerconnect/connection.py +614 -86
  32. pulumi_gcp/developerconnect/git_repository_link.py +4 -0
  33. pulumi_gcp/developerconnect/outputs.py +717 -28
  34. pulumi_gcp/dns/_inputs.py +124 -20
  35. pulumi_gcp/dns/outputs.py +90 -16
  36. pulumi_gcp/dns/record_set.py +82 -0
  37. pulumi_gcp/edgecontainer/_inputs.py +3 -3
  38. pulumi_gcp/edgecontainer/outputs.py +2 -2
  39. pulumi_gcp/gkeonprem/_inputs.py +15 -15
  40. pulumi_gcp/gkeonprem/outputs.py +10 -10
  41. pulumi_gcp/gkeonprem/v_mware_cluster.py +1 -1
  42. pulumi_gcp/iap/_inputs.py +9 -3
  43. pulumi_gcp/iap/outputs.py +6 -2
  44. pulumi_gcp/iap/settings.py +63 -63
  45. pulumi_gcp/identityplatform/_inputs.py +9 -9
  46. pulumi_gcp/identityplatform/outputs.py +6 -6
  47. pulumi_gcp/integrationconnectors/_inputs.py +6 -6
  48. pulumi_gcp/integrationconnectors/outputs.py +4 -4
  49. pulumi_gcp/monitoring/_inputs.py +3 -3
  50. pulumi_gcp/monitoring/outputs.py +2 -2
  51. pulumi_gcp/oracledatabase/_inputs.py +3 -3
  52. pulumi_gcp/oracledatabase/outputs.py +2 -2
  53. pulumi_gcp/pulumi-plugin.json +1 -1
  54. pulumi_gcp/sql/_inputs.py +20 -0
  55. pulumi_gcp/sql/database_instance.py +2 -2
  56. pulumi_gcp/sql/outputs.py +36 -0
  57. pulumi_gcp/transcoder/_inputs.py +6 -6
  58. pulumi_gcp/transcoder/outputs.py +4 -4
  59. {pulumi_gcp-8.14.0a1736836474.dist-info → pulumi_gcp-8.14.0a1736952890.dist-info}/METADATA +1 -1
  60. {pulumi_gcp-8.14.0a1736836474.dist-info → pulumi_gcp-8.14.0a1736952890.dist-info}/RECORD +62 -58
  61. {pulumi_gcp-8.14.0a1736836474.dist-info → pulumi_gcp-8.14.0a1736952890.dist-info}/WHEEL +0 -0
  62. {pulumi_gcp-8.14.0a1736836474.dist-info → pulumi_gcp-8.14.0a1736952890.dist-info}/top_level.txt +0 -0
pulumi_gcp/dns/_inputs.py CHANGED
@@ -956,6 +956,10 @@ if not MYPY:
956
956
  The configuration for Geolocation based routing policy.
957
957
  Structure is documented below.
958
958
  """
959
+ health_check: NotRequired[pulumi.Input[str]]
960
+ """
961
+ Specifies the health check (used with external endpoints).
962
+ """
959
963
  primary_backup: NotRequired[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupArgsDict']]
960
964
  """
961
965
  The configuration for a failover policy with global to regional failover. Queries are responded to with the global primary targets, but if none of the primary targets are healthy, then we fallback to a regional failover policy.
@@ -974,12 +978,14 @@ class RecordSetRoutingPolicyArgs:
974
978
  def __init__(__self__, *,
975
979
  enable_geo_fencing: Optional[pulumi.Input[bool]] = None,
976
980
  geos: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoArgs']]]] = None,
981
+ health_check: Optional[pulumi.Input[str]] = None,
977
982
  primary_backup: Optional[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupArgs']] = None,
978
983
  wrrs: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrArgs']]]] = None):
979
984
  """
980
985
  :param pulumi.Input[bool] enable_geo_fencing: Specifies whether to enable fencing for geo queries.
981
986
  :param pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoArgs']]] geos: The configuration for Geolocation based routing policy.
982
987
  Structure is documented below.
988
+ :param pulumi.Input[str] health_check: Specifies the health check (used with external endpoints).
983
989
  :param pulumi.Input['RecordSetRoutingPolicyPrimaryBackupArgs'] primary_backup: The configuration for a failover policy with global to regional failover. Queries are responded to with the global primary targets, but if none of the primary targets are healthy, then we fallback to a regional failover policy.
984
990
  Structure is documented below.
985
991
  :param pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrArgs']]] wrrs: The configuration for Weighted Round Robin based routing policy.
@@ -989,6 +995,8 @@ class RecordSetRoutingPolicyArgs:
989
995
  pulumi.set(__self__, "enable_geo_fencing", enable_geo_fencing)
990
996
  if geos is not None:
991
997
  pulumi.set(__self__, "geos", geos)
998
+ if health_check is not None:
999
+ pulumi.set(__self__, "health_check", health_check)
992
1000
  if primary_backup is not None:
993
1001
  pulumi.set(__self__, "primary_backup", primary_backup)
994
1002
  if wrrs is not None:
@@ -1019,6 +1027,18 @@ class RecordSetRoutingPolicyArgs:
1019
1027
  def geos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoArgs']]]]):
1020
1028
  pulumi.set(self, "geos", value)
1021
1029
 
1030
+ @property
1031
+ @pulumi.getter(name="healthCheck")
1032
+ def health_check(self) -> Optional[pulumi.Input[str]]:
1033
+ """
1034
+ Specifies the health check (used with external endpoints).
1035
+ """
1036
+ return pulumi.get(self, "health_check")
1037
+
1038
+ @health_check.setter
1039
+ def health_check(self, value: Optional[pulumi.Input[str]]):
1040
+ pulumi.set(self, "health_check", value)
1041
+
1022
1042
  @property
1023
1043
  @pulumi.getter(name="primaryBackup")
1024
1044
  def primary_backup(self) -> Optional[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupArgs']]:
@@ -1122,7 +1142,11 @@ class RecordSetRoutingPolicyGeoArgs:
1122
1142
 
1123
1143
  if not MYPY:
1124
1144
  class RecordSetRoutingPolicyGeoHealthCheckedTargetsArgsDict(TypedDict):
1125
- internal_load_balancers: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgsDict']]]
1145
+ external_endpoints: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
1146
+ """
1147
+ The list of external endpoint addresses to health check.
1148
+ """
1149
+ internal_load_balancers: NotRequired[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgsDict']]]]
1126
1150
  """
1127
1151
  The list of internal load balancers to health check.
1128
1152
  Structure is documented below.
@@ -1133,16 +1157,33 @@ elif False:
1133
1157
  @pulumi.input_type
1134
1158
  class RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs:
1135
1159
  def __init__(__self__, *,
1136
- internal_load_balancers: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]):
1160
+ external_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1161
+ internal_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]] = None):
1137
1162
  """
1163
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] external_endpoints: The list of external endpoint addresses to health check.
1138
1164
  :param pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs']]] internal_load_balancers: The list of internal load balancers to health check.
1139
1165
  Structure is documented below.
1140
1166
  """
1141
- pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1167
+ if external_endpoints is not None:
1168
+ pulumi.set(__self__, "external_endpoints", external_endpoints)
1169
+ if internal_load_balancers is not None:
1170
+ pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1171
+
1172
+ @property
1173
+ @pulumi.getter(name="externalEndpoints")
1174
+ def external_endpoints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1175
+ """
1176
+ The list of external endpoint addresses to health check.
1177
+ """
1178
+ return pulumi.get(self, "external_endpoints")
1179
+
1180
+ @external_endpoints.setter
1181
+ def external_endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1182
+ pulumi.set(self, "external_endpoints", value)
1142
1183
 
1143
1184
  @property
1144
1185
  @pulumi.getter(name="internalLoadBalancers")
1145
- def internal_load_balancers(self) -> pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]:
1186
+ def internal_load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]]:
1146
1187
  """
1147
1188
  The list of internal load balancers to health check.
1148
1189
  Structure is documented below.
@@ -1150,7 +1191,7 @@ class RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs:
1150
1191
  return pulumi.get(self, "internal_load_balancers")
1151
1192
 
1152
1193
  @internal_load_balancers.setter
1153
- def internal_load_balancers(self, value: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]):
1194
+ def internal_load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]]):
1154
1195
  pulumi.set(self, "internal_load_balancers", value)
1155
1196
 
1156
1197
 
@@ -1463,7 +1504,11 @@ class RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs:
1463
1504
 
1464
1505
  if not MYPY:
1465
1506
  class RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgsDict(TypedDict):
1466
- internal_load_balancers: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgsDict']]]
1507
+ external_endpoints: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
1508
+ """
1509
+ The list of external endpoint addresses to health check.
1510
+ """
1511
+ internal_load_balancers: NotRequired[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgsDict']]]]
1467
1512
  """
1468
1513
  The list of internal load balancers to health check.
1469
1514
  Structure is documented below.
@@ -1474,16 +1519,33 @@ elif False:
1474
1519
  @pulumi.input_type
1475
1520
  class RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs:
1476
1521
  def __init__(__self__, *,
1477
- internal_load_balancers: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]):
1522
+ external_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1523
+ internal_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]] = None):
1478
1524
  """
1525
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] external_endpoints: The list of external endpoint addresses to health check.
1479
1526
  :param pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs']]] internal_load_balancers: The list of internal load balancers to health check.
1480
1527
  Structure is documented below.
1481
1528
  """
1482
- pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1529
+ if external_endpoints is not None:
1530
+ pulumi.set(__self__, "external_endpoints", external_endpoints)
1531
+ if internal_load_balancers is not None:
1532
+ pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1533
+
1534
+ @property
1535
+ @pulumi.getter(name="externalEndpoints")
1536
+ def external_endpoints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1537
+ """
1538
+ The list of external endpoint addresses to health check.
1539
+ """
1540
+ return pulumi.get(self, "external_endpoints")
1541
+
1542
+ @external_endpoints.setter
1543
+ def external_endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1544
+ pulumi.set(self, "external_endpoints", value)
1483
1545
 
1484
1546
  @property
1485
1547
  @pulumi.getter(name="internalLoadBalancers")
1486
- def internal_load_balancers(self) -> pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]:
1548
+ def internal_load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]]:
1487
1549
  """
1488
1550
  The list of internal load balancers to health check.
1489
1551
  Structure is documented below.
@@ -1491,7 +1553,7 @@ class RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs:
1491
1553
  return pulumi.get(self, "internal_load_balancers")
1492
1554
 
1493
1555
  @internal_load_balancers.setter
1494
- def internal_load_balancers(self, value: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]):
1556
+ def internal_load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs']]]]):
1495
1557
  pulumi.set(self, "internal_load_balancers", value)
1496
1558
 
1497
1559
 
@@ -1644,7 +1706,11 @@ class RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLo
1644
1706
 
1645
1707
  if not MYPY:
1646
1708
  class RecordSetRoutingPolicyPrimaryBackupPrimaryArgsDict(TypedDict):
1647
- internal_load_balancers: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgsDict']]]
1709
+ external_endpoints: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
1710
+ """
1711
+ The Internet IP addresses to be health checked.
1712
+ """
1713
+ internal_load_balancers: NotRequired[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgsDict']]]]
1648
1714
  """
1649
1715
  The list of internal load balancers to health check.
1650
1716
  """
@@ -1654,22 +1720,39 @@ elif False:
1654
1720
  @pulumi.input_type
1655
1721
  class RecordSetRoutingPolicyPrimaryBackupPrimaryArgs:
1656
1722
  def __init__(__self__, *,
1657
- internal_load_balancers: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs']]]):
1723
+ external_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1724
+ internal_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs']]]] = None):
1658
1725
  """
1726
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] external_endpoints: The Internet IP addresses to be health checked.
1659
1727
  :param pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs']]] internal_load_balancers: The list of internal load balancers to health check.
1660
1728
  """
1661
- pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1729
+ if external_endpoints is not None:
1730
+ pulumi.set(__self__, "external_endpoints", external_endpoints)
1731
+ if internal_load_balancers is not None:
1732
+ pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1733
+
1734
+ @property
1735
+ @pulumi.getter(name="externalEndpoints")
1736
+ def external_endpoints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1737
+ """
1738
+ The Internet IP addresses to be health checked.
1739
+ """
1740
+ return pulumi.get(self, "external_endpoints")
1741
+
1742
+ @external_endpoints.setter
1743
+ def external_endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1744
+ pulumi.set(self, "external_endpoints", value)
1662
1745
 
1663
1746
  @property
1664
1747
  @pulumi.getter(name="internalLoadBalancers")
1665
- def internal_load_balancers(self) -> pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs']]]:
1748
+ def internal_load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs']]]]:
1666
1749
  """
1667
1750
  The list of internal load balancers to health check.
1668
1751
  """
1669
1752
  return pulumi.get(self, "internal_load_balancers")
1670
1753
 
1671
1754
  @internal_load_balancers.setter
1672
- def internal_load_balancers(self, value: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs']]]):
1755
+ def internal_load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs']]]]):
1673
1756
  pulumi.set(self, "internal_load_balancers", value)
1674
1757
 
1675
1758
 
@@ -1896,7 +1979,11 @@ class RecordSetRoutingPolicyWrrArgs:
1896
1979
 
1897
1980
  if not MYPY:
1898
1981
  class RecordSetRoutingPolicyWrrHealthCheckedTargetsArgsDict(TypedDict):
1899
- internal_load_balancers: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgsDict']]]
1982
+ external_endpoints: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
1983
+ """
1984
+ The list of external endpoint addresses to health check.
1985
+ """
1986
+ internal_load_balancers: NotRequired[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgsDict']]]]
1900
1987
  """
1901
1988
  The list of internal load balancers to health check.
1902
1989
  Structure is documented below.
@@ -1907,16 +1994,33 @@ elif False:
1907
1994
  @pulumi.input_type
1908
1995
  class RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs:
1909
1996
  def __init__(__self__, *,
1910
- internal_load_balancers: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs']]]):
1997
+ external_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1998
+ internal_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs']]]] = None):
1911
1999
  """
2000
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] external_endpoints: The list of external endpoint addresses to health check.
1912
2001
  :param pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs']]] internal_load_balancers: The list of internal load balancers to health check.
1913
2002
  Structure is documented below.
1914
2003
  """
1915
- pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
2004
+ if external_endpoints is not None:
2005
+ pulumi.set(__self__, "external_endpoints", external_endpoints)
2006
+ if internal_load_balancers is not None:
2007
+ pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
2008
+
2009
+ @property
2010
+ @pulumi.getter(name="externalEndpoints")
2011
+ def external_endpoints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2012
+ """
2013
+ The list of external endpoint addresses to health check.
2014
+ """
2015
+ return pulumi.get(self, "external_endpoints")
2016
+
2017
+ @external_endpoints.setter
2018
+ def external_endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
2019
+ pulumi.set(self, "external_endpoints", value)
1916
2020
 
1917
2021
  @property
1918
2022
  @pulumi.getter(name="internalLoadBalancers")
1919
- def internal_load_balancers(self) -> pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs']]]:
2023
+ def internal_load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs']]]]:
1920
2024
  """
1921
2025
  The list of internal load balancers to health check.
1922
2026
  Structure is documented below.
@@ -1924,7 +2028,7 @@ class RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs:
1924
2028
  return pulumi.get(self, "internal_load_balancers")
1925
2029
 
1926
2030
  @internal_load_balancers.setter
1927
- def internal_load_balancers(self, value: pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs']]]):
2031
+ def internal_load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs']]]]):
1928
2032
  pulumi.set(self, "internal_load_balancers", value)
1929
2033
 
1930
2034
 
pulumi_gcp/dns/outputs.py CHANGED
@@ -823,6 +823,8 @@ class RecordSetRoutingPolicy(dict):
823
823
  suggest = None
824
824
  if key == "enableGeoFencing":
825
825
  suggest = "enable_geo_fencing"
826
+ elif key == "healthCheck":
827
+ suggest = "health_check"
826
828
  elif key == "primaryBackup":
827
829
  suggest = "primary_backup"
828
830
 
@@ -840,12 +842,14 @@ class RecordSetRoutingPolicy(dict):
840
842
  def __init__(__self__, *,
841
843
  enable_geo_fencing: Optional[bool] = None,
842
844
  geos: Optional[Sequence['outputs.RecordSetRoutingPolicyGeo']] = None,
845
+ health_check: Optional[str] = None,
843
846
  primary_backup: Optional['outputs.RecordSetRoutingPolicyPrimaryBackup'] = None,
844
847
  wrrs: Optional[Sequence['outputs.RecordSetRoutingPolicyWrr']] = None):
845
848
  """
846
849
  :param bool enable_geo_fencing: Specifies whether to enable fencing for geo queries.
847
850
  :param Sequence['RecordSetRoutingPolicyGeoArgs'] geos: The configuration for Geolocation based routing policy.
848
851
  Structure is documented below.
852
+ :param str health_check: Specifies the health check (used with external endpoints).
849
853
  :param 'RecordSetRoutingPolicyPrimaryBackupArgs' primary_backup: The configuration for a failover policy with global to regional failover. Queries are responded to with the global primary targets, but if none of the primary targets are healthy, then we fallback to a regional failover policy.
850
854
  Structure is documented below.
851
855
  :param Sequence['RecordSetRoutingPolicyWrrArgs'] wrrs: The configuration for Weighted Round Robin based routing policy.
@@ -855,6 +859,8 @@ class RecordSetRoutingPolicy(dict):
855
859
  pulumi.set(__self__, "enable_geo_fencing", enable_geo_fencing)
856
860
  if geos is not None:
857
861
  pulumi.set(__self__, "geos", geos)
862
+ if health_check is not None:
863
+ pulumi.set(__self__, "health_check", health_check)
858
864
  if primary_backup is not None:
859
865
  pulumi.set(__self__, "primary_backup", primary_backup)
860
866
  if wrrs is not None:
@@ -877,6 +883,14 @@ class RecordSetRoutingPolicy(dict):
877
883
  """
878
884
  return pulumi.get(self, "geos")
879
885
 
886
+ @property
887
+ @pulumi.getter(name="healthCheck")
888
+ def health_check(self) -> Optional[str]:
889
+ """
890
+ Specifies the health check (used with external endpoints).
891
+ """
892
+ return pulumi.get(self, "health_check")
893
+
880
894
  @property
881
895
  @pulumi.getter(name="primaryBackup")
882
896
  def primary_backup(self) -> Optional['outputs.RecordSetRoutingPolicyPrimaryBackup']:
@@ -962,7 +976,9 @@ class RecordSetRoutingPolicyGeoHealthCheckedTargets(dict):
962
976
  @staticmethod
963
977
  def __key_warning(key: str):
964
978
  suggest = None
965
- if key == "internalLoadBalancers":
979
+ if key == "externalEndpoints":
980
+ suggest = "external_endpoints"
981
+ elif key == "internalLoadBalancers":
966
982
  suggest = "internal_load_balancers"
967
983
 
968
984
  if suggest:
@@ -977,16 +993,29 @@ class RecordSetRoutingPolicyGeoHealthCheckedTargets(dict):
977
993
  return super().get(key, default)
978
994
 
979
995
  def __init__(__self__, *,
980
- internal_load_balancers: Sequence['outputs.RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancer']):
996
+ external_endpoints: Optional[Sequence[str]] = None,
997
+ internal_load_balancers: Optional[Sequence['outputs.RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancer']] = None):
981
998
  """
999
+ :param Sequence[str] external_endpoints: The list of external endpoint addresses to health check.
982
1000
  :param Sequence['RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs'] internal_load_balancers: The list of internal load balancers to health check.
983
1001
  Structure is documented below.
984
1002
  """
985
- pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1003
+ if external_endpoints is not None:
1004
+ pulumi.set(__self__, "external_endpoints", external_endpoints)
1005
+ if internal_load_balancers is not None:
1006
+ pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1007
+
1008
+ @property
1009
+ @pulumi.getter(name="externalEndpoints")
1010
+ def external_endpoints(self) -> Optional[Sequence[str]]:
1011
+ """
1012
+ The list of external endpoint addresses to health check.
1013
+ """
1014
+ return pulumi.get(self, "external_endpoints")
986
1015
 
987
1016
  @property
988
1017
  @pulumi.getter(name="internalLoadBalancers")
989
- def internal_load_balancers(self) -> Sequence['outputs.RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancer']:
1018
+ def internal_load_balancers(self) -> Optional[Sequence['outputs.RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancer']]:
990
1019
  """
991
1020
  The list of internal load balancers to health check.
992
1021
  Structure is documented below.
@@ -1241,7 +1270,9 @@ class RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargets(dict):
1241
1270
  @staticmethod
1242
1271
  def __key_warning(key: str):
1243
1272
  suggest = None
1244
- if key == "internalLoadBalancers":
1273
+ if key == "externalEndpoints":
1274
+ suggest = "external_endpoints"
1275
+ elif key == "internalLoadBalancers":
1245
1276
  suggest = "internal_load_balancers"
1246
1277
 
1247
1278
  if suggest:
@@ -1256,16 +1287,29 @@ class RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargets(dict):
1256
1287
  return super().get(key, default)
1257
1288
 
1258
1289
  def __init__(__self__, *,
1259
- internal_load_balancers: Sequence['outputs.RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancer']):
1290
+ external_endpoints: Optional[Sequence[str]] = None,
1291
+ internal_load_balancers: Optional[Sequence['outputs.RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancer']] = None):
1260
1292
  """
1293
+ :param Sequence[str] external_endpoints: The list of external endpoint addresses to health check.
1261
1294
  :param Sequence['RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs'] internal_load_balancers: The list of internal load balancers to health check.
1262
1295
  Structure is documented below.
1263
1296
  """
1264
- pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1297
+ if external_endpoints is not None:
1298
+ pulumi.set(__self__, "external_endpoints", external_endpoints)
1299
+ if internal_load_balancers is not None:
1300
+ pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1301
+
1302
+ @property
1303
+ @pulumi.getter(name="externalEndpoints")
1304
+ def external_endpoints(self) -> Optional[Sequence[str]]:
1305
+ """
1306
+ The list of external endpoint addresses to health check.
1307
+ """
1308
+ return pulumi.get(self, "external_endpoints")
1265
1309
 
1266
1310
  @property
1267
1311
  @pulumi.getter(name="internalLoadBalancers")
1268
- def internal_load_balancers(self) -> Sequence['outputs.RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancer']:
1312
+ def internal_load_balancers(self) -> Optional[Sequence['outputs.RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancer']]:
1269
1313
  """
1270
1314
  The list of internal load balancers to health check.
1271
1315
  Structure is documented below.
@@ -1387,7 +1431,9 @@ class RecordSetRoutingPolicyPrimaryBackupPrimary(dict):
1387
1431
  @staticmethod
1388
1432
  def __key_warning(key: str):
1389
1433
  suggest = None
1390
- if key == "internalLoadBalancers":
1434
+ if key == "externalEndpoints":
1435
+ suggest = "external_endpoints"
1436
+ elif key == "internalLoadBalancers":
1391
1437
  suggest = "internal_load_balancers"
1392
1438
 
1393
1439
  if suggest:
@@ -1402,15 +1448,28 @@ class RecordSetRoutingPolicyPrimaryBackupPrimary(dict):
1402
1448
  return super().get(key, default)
1403
1449
 
1404
1450
  def __init__(__self__, *,
1405
- internal_load_balancers: Sequence['outputs.RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancer']):
1451
+ external_endpoints: Optional[Sequence[str]] = None,
1452
+ internal_load_balancers: Optional[Sequence['outputs.RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancer']] = None):
1406
1453
  """
1454
+ :param Sequence[str] external_endpoints: The Internet IP addresses to be health checked.
1407
1455
  :param Sequence['RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs'] internal_load_balancers: The list of internal load balancers to health check.
1408
1456
  """
1409
- pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1457
+ if external_endpoints is not None:
1458
+ pulumi.set(__self__, "external_endpoints", external_endpoints)
1459
+ if internal_load_balancers is not None:
1460
+ pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1461
+
1462
+ @property
1463
+ @pulumi.getter(name="externalEndpoints")
1464
+ def external_endpoints(self) -> Optional[Sequence[str]]:
1465
+ """
1466
+ The Internet IP addresses to be health checked.
1467
+ """
1468
+ return pulumi.get(self, "external_endpoints")
1410
1469
 
1411
1470
  @property
1412
1471
  @pulumi.getter(name="internalLoadBalancers")
1413
- def internal_load_balancers(self) -> Sequence['outputs.RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancer']:
1472
+ def internal_load_balancers(self) -> Optional[Sequence['outputs.RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancer']]:
1414
1473
  """
1415
1474
  The list of internal load balancers to health check.
1416
1475
  """
@@ -1592,7 +1651,9 @@ class RecordSetRoutingPolicyWrrHealthCheckedTargets(dict):
1592
1651
  @staticmethod
1593
1652
  def __key_warning(key: str):
1594
1653
  suggest = None
1595
- if key == "internalLoadBalancers":
1654
+ if key == "externalEndpoints":
1655
+ suggest = "external_endpoints"
1656
+ elif key == "internalLoadBalancers":
1596
1657
  suggest = "internal_load_balancers"
1597
1658
 
1598
1659
  if suggest:
@@ -1607,16 +1668,29 @@ class RecordSetRoutingPolicyWrrHealthCheckedTargets(dict):
1607
1668
  return super().get(key, default)
1608
1669
 
1609
1670
  def __init__(__self__, *,
1610
- internal_load_balancers: Sequence['outputs.RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancer']):
1671
+ external_endpoints: Optional[Sequence[str]] = None,
1672
+ internal_load_balancers: Optional[Sequence['outputs.RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancer']] = None):
1611
1673
  """
1674
+ :param Sequence[str] external_endpoints: The list of external endpoint addresses to health check.
1612
1675
  :param Sequence['RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs'] internal_load_balancers: The list of internal load balancers to health check.
1613
1676
  Structure is documented below.
1614
1677
  """
1615
- pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1678
+ if external_endpoints is not None:
1679
+ pulumi.set(__self__, "external_endpoints", external_endpoints)
1680
+ if internal_load_balancers is not None:
1681
+ pulumi.set(__self__, "internal_load_balancers", internal_load_balancers)
1682
+
1683
+ @property
1684
+ @pulumi.getter(name="externalEndpoints")
1685
+ def external_endpoints(self) -> Optional[Sequence[str]]:
1686
+ """
1687
+ The list of external endpoint addresses to health check.
1688
+ """
1689
+ return pulumi.get(self, "external_endpoints")
1616
1690
 
1617
1691
  @property
1618
1692
  @pulumi.getter(name="internalLoadBalancers")
1619
- def internal_load_balancers(self) -> Sequence['outputs.RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancer']:
1693
+ def internal_load_balancers(self) -> Optional[Sequence['outputs.RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancer']]:
1620
1694
  """
1621
1695
  The list of internal load balancers to health check.
1622
1696
  Structure is documented below.
@@ -475,6 +475,47 @@ class RecordSet(pulumi.CustomResource):
475
475
  })
476
476
  ```
477
477
 
478
+ ### Public zone failover
479
+
480
+ ```python
481
+ import pulumi
482
+ import pulumi_gcp as gcp
483
+
484
+ http_health_check = gcp.compute.HealthCheck("http-health-check",
485
+ name="http-health-check",
486
+ description="Health check via http",
487
+ timeout_sec=5,
488
+ check_interval_sec=30,
489
+ healthy_threshold=4,
490
+ unhealthy_threshold=5,
491
+ http_health_check={
492
+ "port_specification": "USE_SERVING_PORT",
493
+ })
494
+ prod = gcp.dns.ManagedZone("prod",
495
+ name="prod-zone",
496
+ dns_name="prod.mydomain.com.")
497
+ a = gcp.dns.RecordSet("a",
498
+ name=prod.dns_name.apply(lambda dns_name: f"backend.{dns_name}"),
499
+ managed_zone=prod.name,
500
+ type="A",
501
+ ttl=300,
502
+ routing_policy={
503
+ "health_check": http_health_check.id,
504
+ "primary_backup": {
505
+ "trickle_ratio": 0.1,
506
+ "primary": {
507
+ "external_endpoints": ["10.128.1.1"],
508
+ },
509
+ "backup_geos": [{
510
+ "location": "us-west1",
511
+ "health_checked_targets": {
512
+ "external_endpoints": ["10.130.1.1"],
513
+ },
514
+ }],
515
+ },
516
+ })
517
+ ```
518
+
478
519
  ## Import
479
520
 
480
521
  DNS record sets can be imported using either of these accepted formats:
@@ -713,6 +754,47 @@ class RecordSet(pulumi.CustomResource):
713
754
  })
714
755
  ```
715
756
 
757
+ ### Public zone failover
758
+
759
+ ```python
760
+ import pulumi
761
+ import pulumi_gcp as gcp
762
+
763
+ http_health_check = gcp.compute.HealthCheck("http-health-check",
764
+ name="http-health-check",
765
+ description="Health check via http",
766
+ timeout_sec=5,
767
+ check_interval_sec=30,
768
+ healthy_threshold=4,
769
+ unhealthy_threshold=5,
770
+ http_health_check={
771
+ "port_specification": "USE_SERVING_PORT",
772
+ })
773
+ prod = gcp.dns.ManagedZone("prod",
774
+ name="prod-zone",
775
+ dns_name="prod.mydomain.com.")
776
+ a = gcp.dns.RecordSet("a",
777
+ name=prod.dns_name.apply(lambda dns_name: f"backend.{dns_name}"),
778
+ managed_zone=prod.name,
779
+ type="A",
780
+ ttl=300,
781
+ routing_policy={
782
+ "health_check": http_health_check.id,
783
+ "primary_backup": {
784
+ "trickle_ratio": 0.1,
785
+ "primary": {
786
+ "external_endpoints": ["10.128.1.1"],
787
+ },
788
+ "backup_geos": [{
789
+ "location": "us-west1",
790
+ "health_checked_targets": {
791
+ "external_endpoints": ["10.130.1.1"],
792
+ },
793
+ }],
794
+ },
795
+ })
796
+ ```
797
+
716
798
  ## Import
717
799
 
718
800
  DNS record sets can be imported using either of these accepted formats:
@@ -234,7 +234,7 @@ if not MYPY:
234
234
  Structure is documented below.
235
235
 
236
236
 
237
- <a name="nested_kms_status"></a>The `kms_status` block contains:
237
+ <a name="nested_control_plane_encryption_kms_status"></a>The `kms_status` block contains:
238
238
  """
239
239
  elif False:
240
240
  ClusterControlPlaneEncryptionArgsDict: TypeAlias = Mapping[str, Any]
@@ -266,7 +266,7 @@ class ClusterControlPlaneEncryptionArgs:
266
266
  Structure is documented below.
267
267
 
268
268
 
269
- <a name="nested_kms_status"></a>The `kms_status` block contains:
269
+ <a name="nested_control_plane_encryption_kms_status"></a>The `kms_status` block contains:
270
270
  """
271
271
  if kms_key is not None:
272
272
  pulumi.set(__self__, "kms_key", kms_key)
@@ -333,7 +333,7 @@ class ClusterControlPlaneEncryptionArgs:
333
333
  Structure is documented below.
334
334
 
335
335
 
336
- <a name="nested_kms_status"></a>The `kms_status` block contains:
336
+ <a name="nested_control_plane_encryption_kms_status"></a>The `kms_status` block contains:
337
337
  """
338
338
  return pulumi.get(self, "kms_statuses")
339
339
 
@@ -190,7 +190,7 @@ class ClusterControlPlaneEncryption(dict):
190
190
  Structure is documented below.
191
191
 
192
192
 
193
- <a name="nested_kms_status"></a>The `kms_status` block contains:
193
+ <a name="nested_control_plane_encryption_kms_status"></a>The `kms_status` block contains:
194
194
  """
195
195
  if kms_key is not None:
196
196
  pulumi.set(__self__, "kms_key", kms_key)
@@ -245,7 +245,7 @@ class ClusterControlPlaneEncryption(dict):
245
245
  Structure is documented below.
246
246
 
247
247
 
248
- <a name="nested_kms_status"></a>The `kms_status` block contains:
248
+ <a name="nested_control_plane_encryption_kms_status"></a>The `kms_status` block contains:
249
249
  """
250
250
  return pulumi.get(self, "kms_statuses")
251
251