aws-cdk-lib 2.128.0__py3-none-any.whl → 2.130.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.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +2 -10
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.128.0.jsii.tgz → aws-cdk-lib@2.130.0.jsii.tgz} +0 -0
- aws_cdk/aws_amazonmq/__init__.py +6 -24
- aws_cdk/aws_amplify/__init__.py +1 -2
- aws_cdk/aws_appconfig/__init__.py +13010 -2708
- aws_cdk/aws_applicationautoscaling/__init__.py +55 -22
- aws_cdk/aws_appstream/__init__.py +14 -14
- aws_cdk/aws_appsync/__init__.py +334 -3
- aws_cdk/aws_autoscaling/__init__.py +11 -7
- aws_cdk/aws_backup/__init__.py +3 -3
- aws_cdk/aws_batch/__init__.py +137 -16
- aws_cdk/aws_bedrock/__init__.py +13 -1
- aws_cdk/aws_cleanrooms/__init__.py +1 -2
- aws_cdk/aws_cloudformation/__init__.py +2 -10
- aws_cdk/aws_cloudfront/__init__.py +15 -8
- aws_cdk/aws_cloudfront/experimental/__init__.py +22 -0
- aws_cdk/aws_cloudfront_origins/__init__.py +332 -0
- aws_cdk/aws_cloudtrail/__init__.py +12 -2
- aws_cdk/aws_cloudwatch/__init__.py +4 -0
- aws_cdk/aws_codepipeline/__init__.py +463 -11
- aws_cdk/aws_cognito/__init__.py +0 -9
- aws_cdk/aws_config/__init__.py +2 -2
- aws_cdk/aws_connect/__init__.py +6 -1
- aws_cdk/aws_controltower/__init__.py +527 -7
- aws_cdk/aws_datasync/__init__.py +2 -2
- aws_cdk/aws_directoryservice/__init__.py +2 -3
- aws_cdk/aws_dynamodb/__init__.py +7 -0
- aws_cdk/aws_ec2/__init__.py +117 -210
- aws_cdk/aws_ecs/__init__.py +537 -3
- aws_cdk/aws_eks/__init__.py +2 -2
- aws_cdk/aws_elasticache/__init__.py +27 -20
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +3 -4
- aws_cdk/aws_emr/__init__.py +23 -3
- aws_cdk/aws_events_targets/__init__.py +64 -20
- aws_cdk/aws_fis/__init__.py +4 -4
- aws_cdk/aws_frauddetector/__init__.py +3 -3
- aws_cdk/aws_globalaccelerator/__init__.py +2 -6
- aws_cdk/aws_glue/__init__.py +84 -55
- aws_cdk/aws_groundstation/__init__.py +8 -12
- aws_cdk/aws_guardduty/__init__.py +74 -70
- aws_cdk/aws_iam/__init__.py +16 -23
- aws_cdk/aws_imagebuilder/__init__.py +178 -156
- aws_cdk/aws_internetmonitor/__init__.py +12 -10
- aws_cdk/aws_iot/__init__.py +17 -10
- aws_cdk/aws_iotevents/__init__.py +4 -4
- aws_cdk/aws_iotfleetwise/__init__.py +10 -5
- aws_cdk/aws_iottwinmaker/__init__.py +3 -5
- aws_cdk/aws_iotwireless/__init__.py +35 -23
- aws_cdk/aws_kendra/__init__.py +36 -15
- aws_cdk/aws_kinesisfirehose/__init__.py +155 -114
- aws_cdk/aws_lambda/__init__.py +157 -12
- aws_cdk/aws_lambda_nodejs/__init__.py +22 -0
- aws_cdk/aws_lightsail/__init__.py +14 -18
- aws_cdk/aws_logs/__init__.py +15 -15
- aws_cdk/aws_mediaconnect/__init__.py +5 -3
- aws_cdk/aws_medialive/__init__.py +3 -12
- aws_cdk/aws_mediapackagev2/__init__.py +287 -286
- aws_cdk/aws_mediatailor/__init__.py +2 -2
- aws_cdk/aws_memorydb/__init__.py +2 -2
- aws_cdk/aws_msk/__init__.py +6 -3
- aws_cdk/aws_mwaa/__init__.py +10 -5
- aws_cdk/aws_neptunegraph/__init__.py +84 -66
- aws_cdk/aws_networkfirewall/__init__.py +5 -8
- aws_cdk/aws_networkmanager/__init__.py +3 -3
- aws_cdk/aws_nimblestudio/__init__.py +2 -4
- aws_cdk/aws_opensearchservice/__init__.py +12 -10
- aws_cdk/aws_osis/__init__.py +1 -3
- aws_cdk/aws_pinpoint/__init__.py +5 -5
- aws_cdk/aws_pipes/__init__.py +5 -5
- aws_cdk/aws_quicksight/__init__.py +5 -10
- aws_cdk/aws_rds/__init__.py +43 -26
- aws_cdk/aws_redshift/__init__.py +9 -5
- aws_cdk/aws_redshiftserverless/__init__.py +62 -38
- aws_cdk/aws_rolesanywhere/__init__.py +41 -53
- aws_cdk/aws_route53/__init__.py +532 -6
- aws_cdk/aws_route53recoverycontrol/__init__.py +1 -3
- aws_cdk/aws_route53recoveryreadiness/__init__.py +2 -2
- aws_cdk/aws_route53resolver/__init__.py +1 -4
- aws_cdk/aws_s3/__init__.py +3 -1
- aws_cdk/aws_s3objectlambda/__init__.py +7 -4
- aws_cdk/aws_s3outposts/__init__.py +1 -1
- aws_cdk/aws_sagemaker/__init__.py +111 -11
- aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -3
- aws_cdk/aws_sns/__init__.py +185 -38
- aws_cdk/aws_ssm/__init__.py +16 -16
- aws_cdk/aws_ssmincidents/__init__.py +1 -1
- aws_cdk/aws_synthetics/__init__.py +94 -21
- aws_cdk/aws_verifiedpermissions/__init__.py +1 -2
- aws_cdk/aws_vpclattice/__init__.py +8 -4
- aws_cdk/aws_wafv2/__init__.py +14 -59
- aws_cdk/aws_workspaces/__init__.py +5 -4
- aws_cdk/aws_workspacesweb/__init__.py +6 -12
- aws_cdk/pipelines/__init__.py +3 -2
- aws_cdk/triggers/__init__.py +22 -0
- {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.130.0.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.130.0.dist-info}/NOTICE +30 -0
- {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.130.0.dist-info}/RECORD +101 -101
- {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.130.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.130.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.130.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_route53/__init__.py
CHANGED
|
@@ -2086,10 +2086,7 @@ class CfnHostedZone(
|
|
|
2086
2086
|
@builtins.property
|
|
2087
2087
|
@jsii.member(jsii_name="attrNameServers")
|
|
2088
2088
|
def attr_name_servers(self) -> typing.List[builtins.str]:
|
|
2089
|
-
'''
|
|
2090
|
-
|
|
2091
|
-
This attribute is not supported for private hosted zones.
|
|
2092
|
-
|
|
2089
|
+
'''
|
|
2093
2090
|
:cloudformationAttribute: NameServers
|
|
2094
2091
|
'''
|
|
2095
2092
|
return typing.cast(typing.List[builtins.str], jsii.get(self, "attrNameServers"))
|
|
@@ -2966,6 +2963,15 @@ class CfnRecordSet(
|
|
|
2966
2963
|
country_code="countryCode",
|
|
2967
2964
|
subdivision_code="subdivisionCode"
|
|
2968
2965
|
),
|
|
2966
|
+
geo_proximity_location=route53.CfnRecordSet.GeoProximityLocationProperty(
|
|
2967
|
+
aws_region="awsRegion",
|
|
2968
|
+
bias=123,
|
|
2969
|
+
coordinates=route53.CfnRecordSet.CoordinatesProperty(
|
|
2970
|
+
latitude="latitude",
|
|
2971
|
+
longitude="longitude"
|
|
2972
|
+
),
|
|
2973
|
+
local_zone_group="localZoneGroup"
|
|
2974
|
+
),
|
|
2969
2975
|
health_check_id="healthCheckId",
|
|
2970
2976
|
hosted_zone_id="hostedZoneId",
|
|
2971
2977
|
hosted_zone_name="hostedZoneName",
|
|
@@ -2990,6 +2996,7 @@ class CfnRecordSet(
|
|
|
2990
2996
|
comment: typing.Optional[builtins.str] = None,
|
|
2991
2997
|
failover: typing.Optional[builtins.str] = None,
|
|
2992
2998
|
geo_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRecordSet.GeoLocationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2999
|
+
geo_proximity_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRecordSet.GeoProximityLocationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2993
3000
|
health_check_id: typing.Optional[builtins.str] = None,
|
|
2994
3001
|
hosted_zone_id: typing.Optional[builtins.str] = None,
|
|
2995
3002
|
hosted_zone_name: typing.Optional[builtins.str] = None,
|
|
@@ -3010,6 +3017,7 @@ class CfnRecordSet(
|
|
|
3010
3017
|
:param comment: *Optional:* Any comments you want to include about a change batch request.
|
|
3011
3018
|
:param failover: *Failover resource record sets only:* To configure failover, you add the ``Failover`` element to two resource record sets. For one resource record set, you specify ``PRIMARY`` as the value for ``Failover`` ; for the other resource record set, you specify ``SECONDARY`` . In addition, you include the ``HealthCheckId`` element and specify the health check that you want Amazon Route 53 to perform for each resource record set. Except where noted, the following failover behaviors assume that you have included the ``HealthCheckId`` element in both resource record sets: - When the primary resource record set is healthy, Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the secondary resource record set. - When the primary resource record set is unhealthy and the secondary resource record set is healthy, Route 53 responds to DNS queries with the applicable value from the secondary resource record set. - When the secondary resource record set is unhealthy, Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the primary resource record set. - If you omit the ``HealthCheckId`` element for the secondary resource record set, and if the primary resource record set is unhealthy, Route 53 always responds to DNS queries with the applicable value from the secondary resource record set. This is true regardless of the health of the associated endpoint. You can't create non-failover resource record sets that have the same values for the ``Name`` and ``Type`` elements as failover resource record sets. For failover alias resource record sets, you must also include the ``EvaluateTargetHealth`` element and set the value to true. For more information about configuring failover for Route 53, see the following topics in the *Amazon Route 53 Developer Guide* : - `Route 53 Health Checks and DNS Failover <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html>`_ - `Configuring Failover in a Private Hosted Zone <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html>`_
|
|
3012
3019
|
:param geo_location: *Geolocation resource record sets only:* A complex type that lets you control how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. For example, if you want all queries from Africa to be routed to a web server with an IP address of ``192.0.2.111`` , create a resource record set with a ``Type`` of ``A`` and a ``ContinentCode`` of ``AF`` . If you create separate resource record sets for overlapping geographic regions (for example, one resource record set for a continent and one for a country on the same continent), priority goes to the smallest geographic region. This allows you to route most queries for a continent to one resource and to route queries for a country on that continent to a different resource. You can't create two geolocation resource record sets that specify the same geographic location. The value ``*`` in the ``CountryCode`` element matches all geographic locations that aren't specified in other geolocation resource record sets that have the same values for the ``Name`` and ``Type`` elements. .. epigraph:: Geolocation works by mapping IP addresses to locations. However, some IP addresses aren't mapped to geographic locations, so even if you create geolocation resource record sets that cover all seven continents, Route 53 will receive some DNS queries from locations that it can't identify. We recommend that you create a resource record set for which the value of ``CountryCode`` is ``*`` . Two groups of queries are routed to the resource that you specify in this record: queries that come from locations for which you haven't created geolocation resource record sets and queries from IP addresses that aren't mapped to a location. If you don't create a ``*`` resource record set, Route 53 returns a "no answer" response for queries from those locations. You can't create non-geolocation resource record sets that have the same values for the ``Name`` and ``Type`` elements as geolocation resource record sets.
|
|
3020
|
+
:param geo_proximity_location: *GeoproximityLocation resource record sets only:* A complex type that lets you control how Route 53 responds to DNS queries based on the geographic origin of the query and your resources.
|
|
3013
3021
|
:param health_check_id: If you want Amazon Route 53 to return this resource record set in response to a DNS query only when the status of a health check is healthy, include the ``HealthCheckId`` element and specify the ID of the applicable health check. Route 53 determines whether a resource record set is healthy based on one of the following: - By periodically sending a request to the endpoint that is specified in the health check - By aggregating the status of a specified group of health checks (calculated health checks) - By determining the current state of a CloudWatch alarm (CloudWatch metric health checks) .. epigraph:: Route 53 doesn't check the health of the endpoint that is specified in the resource record set, for example, the endpoint specified by the IP address in the ``Value`` element. When you add a ``HealthCheckId`` element to a resource record set, Route 53 checks the health of the endpoint that you specified in the health check. For more information, see the following topics in the *Amazon Route 53 Developer Guide* : - `How Amazon Route 53 Determines Whether an Endpoint Is Healthy <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html>`_ - `Route 53 Health Checks and DNS Failover <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html>`_ - `Configuring Failover in a Private Hosted Zone <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html>`_ *When to Specify HealthCheckId* Specifying a value for ``HealthCheckId`` is useful only when Route 53 is choosing between two or more resource record sets to respond to a DNS query, and you want Route 53 to base the choice in part on the status of a health check. Configuring health checks makes sense only in the following configurations: - *Non-alias resource record sets* : You're checking the health of a group of non-alias resource record sets that have the same routing policy, name, and type (such as multiple weighted records named www.example.com with a type of A) and you specify health check IDs for all the resource record sets. If the health check status for a resource record set is healthy, Route 53 includes the record among the records that it responds to DNS queries with. If the health check status for a resource record set is unhealthy, Route 53 stops responding to DNS queries using the value for that resource record set. If the health check status for all resource record sets in the group is unhealthy, Route 53 considers all resource record sets in the group healthy and responds to DNS queries accordingly. - *Alias resource record sets* : You specify the following settings: - You set ``EvaluateTargetHealth`` to true for an alias resource record set in a group of resource record sets that have the same routing policy, name, and type (such as multiple weighted records named www.example.com with a type of A). - You configure the alias resource record set to route traffic to a non-alias resource record set in the same hosted zone. - You specify a health check ID for the non-alias resource record set. If the health check status is healthy, Route 53 considers the alias resource record set to be healthy and includes the alias record among the records that it responds to DNS queries with. If the health check status is unhealthy, Route 53 stops responding to DNS queries using the alias resource record set. .. epigraph:: The alias resource record set can also route traffic to a *group* of non-alias resource record sets that have the same routing policy, name, and type. In that configuration, associate health checks with all of the resource record sets in the group of non-alias resource record sets. *Geolocation Routing* For geolocation resource record sets, if an endpoint is unhealthy, Route 53 looks for a resource record set for the larger, associated geographic region. For example, suppose you have resource record sets for a state in the United States, for the entire United States, for North America, and a resource record set that has ``*`` for ``CountryCode`` is ``*`` , which applies to all locations. If the endpoint for the state resource record set is unhealthy, Route 53 checks for healthy resource record sets in the following order until it finds a resource record set for which the endpoint is healthy: - The United States - North America - The default resource record set *Specifying the Health Check Endpoint by Domain Name* If your health checks specify the endpoint only by domain name, we recommend that you create a separate health check for each endpoint. For example, create a health check for each ``HTTP`` server that is serving content for ``www.example.com`` . For the value of ``FullyQualifiedDomainName`` , specify the domain name of the server (such as ``us-east-2-www.example.com`` ), not the name of the resource record sets ( ``www.example.com`` ). .. epigraph:: Health check results will be unpredictable if you do the following: - Create a health check that has the same value for ``FullyQualifiedDomainName`` as the name of a resource record set. - Associate that health check with the resource record set.
|
|
3014
3022
|
:param hosted_zone_id: The ID of the hosted zone that you want to create records in. Specify either ``HostedZoneName`` or ``HostedZoneId`` , but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using ``HostedZoneId`` .
|
|
3015
3023
|
:param hosted_zone_name: The name of the hosted zone that you want to create records in. You must include a trailing dot (for example, ``www.example.com.`` ) as part of the ``HostedZoneName`` . When you create a stack using an AWS::Route53::RecordSet that specifies ``HostedZoneName`` , AWS CloudFormation attempts to find a hosted zone whose name matches the HostedZoneName. If AWS CloudFormation cannot find a hosted zone with a matching domain name, or if there is more than one hosted zone with the specified domain name, AWS CloudFormation will not create the stack. Specify either ``HostedZoneName`` or ``HostedZoneId`` , but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using ``HostedZoneId`` .
|
|
@@ -3032,6 +3040,7 @@ class CfnRecordSet(
|
|
|
3032
3040
|
comment=comment,
|
|
3033
3041
|
failover=failover,
|
|
3034
3042
|
geo_location=geo_location,
|
|
3043
|
+
geo_proximity_location=geo_proximity_location,
|
|
3035
3044
|
health_check_id=health_check_id,
|
|
3036
3045
|
hosted_zone_id=hosted_zone_id,
|
|
3037
3046
|
hosted_zone_name=hosted_zone_name,
|
|
@@ -3078,7 +3087,8 @@ class CfnRecordSet(
|
|
|
3078
3087
|
@builtins.property
|
|
3079
3088
|
@jsii.member(jsii_name="attrId")
|
|
3080
3089
|
def attr_id(self) -> builtins.str:
|
|
3081
|
-
'''
|
|
3090
|
+
'''Specifies a coordinate of the east–west position of a geographic point on the surface of the Earth.
|
|
3091
|
+
|
|
3082
3092
|
:cloudformationAttribute: Id
|
|
3083
3093
|
'''
|
|
3084
3094
|
return typing.cast(builtins.str, jsii.get(self, "attrId"))
|
|
@@ -3194,6 +3204,24 @@ class CfnRecordSet(
|
|
|
3194
3204
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
3195
3205
|
jsii.set(self, "geoLocation", value)
|
|
3196
3206
|
|
|
3207
|
+
@builtins.property
|
|
3208
|
+
@jsii.member(jsii_name="geoProximityLocation")
|
|
3209
|
+
def geo_proximity_location(
|
|
3210
|
+
self,
|
|
3211
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSet.GeoProximityLocationProperty"]]:
|
|
3212
|
+
'''*GeoproximityLocation resource record sets only:* A complex type that lets you control how Route 53 responds to DNS queries based on the geographic origin of the query and your resources.'''
|
|
3213
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSet.GeoProximityLocationProperty"]], jsii.get(self, "geoProximityLocation"))
|
|
3214
|
+
|
|
3215
|
+
@geo_proximity_location.setter
|
|
3216
|
+
def geo_proximity_location(
|
|
3217
|
+
self,
|
|
3218
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSet.GeoProximityLocationProperty"]],
|
|
3219
|
+
) -> None:
|
|
3220
|
+
if __debug__:
|
|
3221
|
+
type_hints = typing.get_type_hints(_typecheckingstub__ac8d1aee0fc5c4e2eba653391bb8b61826a08b6708db398bae5b22b4e13fcf05)
|
|
3222
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
3223
|
+
jsii.set(self, "geoProximityLocation", value)
|
|
3224
|
+
|
|
3197
3225
|
@builtins.property
|
|
3198
3226
|
@jsii.member(jsii_name="healthCheckId")
|
|
3199
3227
|
def health_check_id(self) -> typing.Optional[builtins.str]:
|
|
@@ -3599,6 +3627,72 @@ class CfnRecordSet(
|
|
|
3599
3627
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
3600
3628
|
)
|
|
3601
3629
|
|
|
3630
|
+
@jsii.data_type(
|
|
3631
|
+
jsii_type="aws-cdk-lib.aws_route53.CfnRecordSet.CoordinatesProperty",
|
|
3632
|
+
jsii_struct_bases=[],
|
|
3633
|
+
name_mapping={"latitude": "latitude", "longitude": "longitude"},
|
|
3634
|
+
)
|
|
3635
|
+
class CoordinatesProperty:
|
|
3636
|
+
def __init__(self, *, latitude: builtins.str, longitude: builtins.str) -> None:
|
|
3637
|
+
'''A complex type that lists the coordinates for a geoproximity resource record.
|
|
3638
|
+
|
|
3639
|
+
:param latitude: Specifies a coordinate of the north–south position of a geographic point on the surface of the Earth (-90 - 90).
|
|
3640
|
+
:param longitude: Specifies a coordinate of the east–west position of a geographic point on the surface of the Earth (-180 - 180).
|
|
3641
|
+
|
|
3642
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-coordinates.html
|
|
3643
|
+
:exampleMetadata: fixture=_generated
|
|
3644
|
+
|
|
3645
|
+
Example::
|
|
3646
|
+
|
|
3647
|
+
# The code below shows an example of how to instantiate this type.
|
|
3648
|
+
# The values are placeholders you should change.
|
|
3649
|
+
from aws_cdk import aws_route53 as route53
|
|
3650
|
+
|
|
3651
|
+
coordinates_property = route53.CfnRecordSet.CoordinatesProperty(
|
|
3652
|
+
latitude="latitude",
|
|
3653
|
+
longitude="longitude"
|
|
3654
|
+
)
|
|
3655
|
+
'''
|
|
3656
|
+
if __debug__:
|
|
3657
|
+
type_hints = typing.get_type_hints(_typecheckingstub__29683fc8d824969c71955a00cda4d10dde445180eb16e6a17c990ec1252a893a)
|
|
3658
|
+
check_type(argname="argument latitude", value=latitude, expected_type=type_hints["latitude"])
|
|
3659
|
+
check_type(argname="argument longitude", value=longitude, expected_type=type_hints["longitude"])
|
|
3660
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
3661
|
+
"latitude": latitude,
|
|
3662
|
+
"longitude": longitude,
|
|
3663
|
+
}
|
|
3664
|
+
|
|
3665
|
+
@builtins.property
|
|
3666
|
+
def latitude(self) -> builtins.str:
|
|
3667
|
+
'''Specifies a coordinate of the north–south position of a geographic point on the surface of the Earth (-90 - 90).
|
|
3668
|
+
|
|
3669
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-coordinates.html#cfn-route53-recordset-coordinates-latitude
|
|
3670
|
+
'''
|
|
3671
|
+
result = self._values.get("latitude")
|
|
3672
|
+
assert result is not None, "Required property 'latitude' is missing"
|
|
3673
|
+
return typing.cast(builtins.str, result)
|
|
3674
|
+
|
|
3675
|
+
@builtins.property
|
|
3676
|
+
def longitude(self) -> builtins.str:
|
|
3677
|
+
'''Specifies a coordinate of the east–west position of a geographic point on the surface of the Earth (-180 - 180).
|
|
3678
|
+
|
|
3679
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-coordinates.html#cfn-route53-recordset-coordinates-longitude
|
|
3680
|
+
'''
|
|
3681
|
+
result = self._values.get("longitude")
|
|
3682
|
+
assert result is not None, "Required property 'longitude' is missing"
|
|
3683
|
+
return typing.cast(builtins.str, result)
|
|
3684
|
+
|
|
3685
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3686
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3687
|
+
|
|
3688
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
3689
|
+
return not (rhs == self)
|
|
3690
|
+
|
|
3691
|
+
def __repr__(self) -> str:
|
|
3692
|
+
return "CoordinatesProperty(%s)" % ", ".join(
|
|
3693
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
3694
|
+
)
|
|
3695
|
+
|
|
3602
3696
|
@jsii.data_type(
|
|
3603
3697
|
jsii_type="aws-cdk-lib.aws_route53.CfnRecordSet.GeoLocationProperty",
|
|
3604
3698
|
jsii_struct_bases=[],
|
|
@@ -3704,6 +3798,131 @@ class CfnRecordSet(
|
|
|
3704
3798
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
3705
3799
|
)
|
|
3706
3800
|
|
|
3801
|
+
@jsii.data_type(
|
|
3802
|
+
jsii_type="aws-cdk-lib.aws_route53.CfnRecordSet.GeoProximityLocationProperty",
|
|
3803
|
+
jsii_struct_bases=[],
|
|
3804
|
+
name_mapping={
|
|
3805
|
+
"aws_region": "awsRegion",
|
|
3806
|
+
"bias": "bias",
|
|
3807
|
+
"coordinates": "coordinates",
|
|
3808
|
+
"local_zone_group": "localZoneGroup",
|
|
3809
|
+
},
|
|
3810
|
+
)
|
|
3811
|
+
class GeoProximityLocationProperty:
|
|
3812
|
+
def __init__(
|
|
3813
|
+
self,
|
|
3814
|
+
*,
|
|
3815
|
+
aws_region: typing.Optional[builtins.str] = None,
|
|
3816
|
+
bias: typing.Optional[jsii.Number] = None,
|
|
3817
|
+
coordinates: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRecordSet.CoordinatesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3818
|
+
local_zone_group: typing.Optional[builtins.str] = None,
|
|
3819
|
+
) -> None:
|
|
3820
|
+
'''(Resource record sets only): A complex type that lets you specify where your resources are located.
|
|
3821
|
+
|
|
3822
|
+
Only one of ``LocalZoneGroup`` , ``Coordinates`` , or ``AWS Region`` is allowed per request at a time.
|
|
3823
|
+
|
|
3824
|
+
For more information about geoproximity routing, see `Geoproximity routing <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geoproximity.html>`_ in the *Amazon Route 53 Developer Guide* .
|
|
3825
|
+
|
|
3826
|
+
:param aws_region: The AWS Region the resource you are directing DNS traffic to, is in.
|
|
3827
|
+
:param bias: The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. To use ``Bias`` to change the size of the geographic region, specify the applicable value for the bias: - To expand the size of the geographic region from which Route 53 routes traffic to a resource, specify a positive integer from 1 to 99 for the bias. Route 53 shrinks the size of adjacent regions. - To shrink the size of the geographic region from which Route 53 routes traffic to a resource, specify a negative bias of -1 to -99. Route 53 expands the size of adjacent regions.
|
|
3828
|
+
:param coordinates: Contains the longitude and latitude for a geographic region.
|
|
3829
|
+
:param local_zone_group: Specifies an AWS Local Zone Group. A local Zone Group is usually the Local Zone code without the ending character. For example, if the Local Zone is ``us-east-1-bue-1a`` the Local Zone Group is ``us-east-1-bue-1`` . You can identify the Local Zones Group for a specific Local Zone by using the `describe-availability-zones <https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-availability-zones.html>`_ CLI command: This command returns: ``"GroupName": "us-west-2-den-1"`` , specifying that the Local Zone ``us-west-2-den-1a`` belongs to the Local Zone Group ``us-west-2-den-1`` .
|
|
3830
|
+
|
|
3831
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geoproximitylocation.html
|
|
3832
|
+
:exampleMetadata: fixture=_generated
|
|
3833
|
+
|
|
3834
|
+
Example::
|
|
3835
|
+
|
|
3836
|
+
# The code below shows an example of how to instantiate this type.
|
|
3837
|
+
# The values are placeholders you should change.
|
|
3838
|
+
from aws_cdk import aws_route53 as route53
|
|
3839
|
+
|
|
3840
|
+
geo_proximity_location_property = route53.CfnRecordSet.GeoProximityLocationProperty(
|
|
3841
|
+
aws_region="awsRegion",
|
|
3842
|
+
bias=123,
|
|
3843
|
+
coordinates=route53.CfnRecordSet.CoordinatesProperty(
|
|
3844
|
+
latitude="latitude",
|
|
3845
|
+
longitude="longitude"
|
|
3846
|
+
),
|
|
3847
|
+
local_zone_group="localZoneGroup"
|
|
3848
|
+
)
|
|
3849
|
+
'''
|
|
3850
|
+
if __debug__:
|
|
3851
|
+
type_hints = typing.get_type_hints(_typecheckingstub__9bbef31bd9d19fea78e067206e8cea17ada33bda9853588d7a99d66d91f15555)
|
|
3852
|
+
check_type(argname="argument aws_region", value=aws_region, expected_type=type_hints["aws_region"])
|
|
3853
|
+
check_type(argname="argument bias", value=bias, expected_type=type_hints["bias"])
|
|
3854
|
+
check_type(argname="argument coordinates", value=coordinates, expected_type=type_hints["coordinates"])
|
|
3855
|
+
check_type(argname="argument local_zone_group", value=local_zone_group, expected_type=type_hints["local_zone_group"])
|
|
3856
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
3857
|
+
if aws_region is not None:
|
|
3858
|
+
self._values["aws_region"] = aws_region
|
|
3859
|
+
if bias is not None:
|
|
3860
|
+
self._values["bias"] = bias
|
|
3861
|
+
if coordinates is not None:
|
|
3862
|
+
self._values["coordinates"] = coordinates
|
|
3863
|
+
if local_zone_group is not None:
|
|
3864
|
+
self._values["local_zone_group"] = local_zone_group
|
|
3865
|
+
|
|
3866
|
+
@builtins.property
|
|
3867
|
+
def aws_region(self) -> typing.Optional[builtins.str]:
|
|
3868
|
+
'''The AWS Region the resource you are directing DNS traffic to, is in.
|
|
3869
|
+
|
|
3870
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geoproximitylocation.html#cfn-route53-recordset-geoproximitylocation-awsregion
|
|
3871
|
+
'''
|
|
3872
|
+
result = self._values.get("aws_region")
|
|
3873
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3874
|
+
|
|
3875
|
+
@builtins.property
|
|
3876
|
+
def bias(self) -> typing.Optional[jsii.Number]:
|
|
3877
|
+
'''The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource.
|
|
3878
|
+
|
|
3879
|
+
To use ``Bias`` to change the size of the geographic region, specify the applicable value for the bias:
|
|
3880
|
+
|
|
3881
|
+
- To expand the size of the geographic region from which Route 53 routes traffic to a resource, specify a positive integer from 1 to 99 for the bias. Route 53 shrinks the size of adjacent regions.
|
|
3882
|
+
- To shrink the size of the geographic region from which Route 53 routes traffic to a resource, specify a negative bias of -1 to -99. Route 53 expands the size of adjacent regions.
|
|
3883
|
+
|
|
3884
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geoproximitylocation.html#cfn-route53-recordset-geoproximitylocation-bias
|
|
3885
|
+
'''
|
|
3886
|
+
result = self._values.get("bias")
|
|
3887
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
3888
|
+
|
|
3889
|
+
@builtins.property
|
|
3890
|
+
def coordinates(
|
|
3891
|
+
self,
|
|
3892
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSet.CoordinatesProperty"]]:
|
|
3893
|
+
'''Contains the longitude and latitude for a geographic region.
|
|
3894
|
+
|
|
3895
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geoproximitylocation.html#cfn-route53-recordset-geoproximitylocation-coordinates
|
|
3896
|
+
'''
|
|
3897
|
+
result = self._values.get("coordinates")
|
|
3898
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSet.CoordinatesProperty"]], result)
|
|
3899
|
+
|
|
3900
|
+
@builtins.property
|
|
3901
|
+
def local_zone_group(self) -> typing.Optional[builtins.str]:
|
|
3902
|
+
'''Specifies an AWS Local Zone Group.
|
|
3903
|
+
|
|
3904
|
+
A local Zone Group is usually the Local Zone code without the ending character. For example, if the Local Zone is ``us-east-1-bue-1a`` the Local Zone Group is ``us-east-1-bue-1`` .
|
|
3905
|
+
|
|
3906
|
+
You can identify the Local Zones Group for a specific Local Zone by using the `describe-availability-zones <https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-availability-zones.html>`_ CLI command:
|
|
3907
|
+
|
|
3908
|
+
This command returns: ``"GroupName": "us-west-2-den-1"`` , specifying that the Local Zone ``us-west-2-den-1a`` belongs to the Local Zone Group ``us-west-2-den-1`` .
|
|
3909
|
+
|
|
3910
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geoproximitylocation.html#cfn-route53-recordset-geoproximitylocation-localzonegroup
|
|
3911
|
+
'''
|
|
3912
|
+
result = self._values.get("local_zone_group")
|
|
3913
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3914
|
+
|
|
3915
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3916
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3917
|
+
|
|
3918
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
3919
|
+
return not (rhs == self)
|
|
3920
|
+
|
|
3921
|
+
def __repr__(self) -> str:
|
|
3922
|
+
return "GeoProximityLocationProperty(%s)" % ", ".join(
|
|
3923
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
3924
|
+
)
|
|
3925
|
+
|
|
3707
3926
|
|
|
3708
3927
|
@jsii.implements(_IInspectable_c2943556)
|
|
3709
3928
|
class CfnRecordSetGroup(
|
|
@@ -3749,6 +3968,15 @@ class CfnRecordSetGroup(
|
|
|
3749
3968
|
country_code="countryCode",
|
|
3750
3969
|
subdivision_code="subdivisionCode"
|
|
3751
3970
|
),
|
|
3971
|
+
geo_proximity_location=route53.CfnRecordSetGroup.GeoProximityLocationProperty(
|
|
3972
|
+
aws_region="awsRegion",
|
|
3973
|
+
bias=123,
|
|
3974
|
+
coordinates=route53.CfnRecordSetGroup.CoordinatesProperty(
|
|
3975
|
+
latitude="latitude",
|
|
3976
|
+
longitude="longitude"
|
|
3977
|
+
),
|
|
3978
|
+
local_zone_group="localZoneGroup"
|
|
3979
|
+
),
|
|
3752
3980
|
health_check_id="healthCheckId",
|
|
3753
3981
|
hosted_zone_id="hostedZoneId",
|
|
3754
3982
|
hosted_zone_name="hostedZoneName",
|
|
@@ -3826,7 +4054,8 @@ class CfnRecordSetGroup(
|
|
|
3826
4054
|
@builtins.property
|
|
3827
4055
|
@jsii.member(jsii_name="attrId")
|
|
3828
4056
|
def attr_id(self) -> builtins.str:
|
|
3829
|
-
'''
|
|
4057
|
+
'''Specifies a coordinate of the east–west position of a geographic point on the surface of the Earth.
|
|
4058
|
+
|
|
3830
4059
|
:cloudformationAttribute: Id
|
|
3831
4060
|
'''
|
|
3832
4061
|
return typing.cast(builtins.str, jsii.get(self, "attrId"))
|
|
@@ -4170,6 +4399,72 @@ class CfnRecordSetGroup(
|
|
|
4170
4399
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
4171
4400
|
)
|
|
4172
4401
|
|
|
4402
|
+
@jsii.data_type(
|
|
4403
|
+
jsii_type="aws-cdk-lib.aws_route53.CfnRecordSetGroup.CoordinatesProperty",
|
|
4404
|
+
jsii_struct_bases=[],
|
|
4405
|
+
name_mapping={"latitude": "latitude", "longitude": "longitude"},
|
|
4406
|
+
)
|
|
4407
|
+
class CoordinatesProperty:
|
|
4408
|
+
def __init__(self, *, latitude: builtins.str, longitude: builtins.str) -> None:
|
|
4409
|
+
'''A complex type that lists the coordinates for a geoproximity resource record.
|
|
4410
|
+
|
|
4411
|
+
:param latitude: Specifies a coordinate of the north–south position of a geographic point on the surface of the Earth (-90 - 90).
|
|
4412
|
+
:param longitude: Specifies a coordinate of the east–west position of a geographic point on the surface of the Earth (-180 - 180).
|
|
4413
|
+
|
|
4414
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-coordinates.html
|
|
4415
|
+
:exampleMetadata: fixture=_generated
|
|
4416
|
+
|
|
4417
|
+
Example::
|
|
4418
|
+
|
|
4419
|
+
# The code below shows an example of how to instantiate this type.
|
|
4420
|
+
# The values are placeholders you should change.
|
|
4421
|
+
from aws_cdk import aws_route53 as route53
|
|
4422
|
+
|
|
4423
|
+
coordinates_property = route53.CfnRecordSetGroup.CoordinatesProperty(
|
|
4424
|
+
latitude="latitude",
|
|
4425
|
+
longitude="longitude"
|
|
4426
|
+
)
|
|
4427
|
+
'''
|
|
4428
|
+
if __debug__:
|
|
4429
|
+
type_hints = typing.get_type_hints(_typecheckingstub__3ebaae8a752b3b1dfff4bf671352e45cbd7c98fa0058ccfb5170085a3e53f8cb)
|
|
4430
|
+
check_type(argname="argument latitude", value=latitude, expected_type=type_hints["latitude"])
|
|
4431
|
+
check_type(argname="argument longitude", value=longitude, expected_type=type_hints["longitude"])
|
|
4432
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
4433
|
+
"latitude": latitude,
|
|
4434
|
+
"longitude": longitude,
|
|
4435
|
+
}
|
|
4436
|
+
|
|
4437
|
+
@builtins.property
|
|
4438
|
+
def latitude(self) -> builtins.str:
|
|
4439
|
+
'''Specifies a coordinate of the north–south position of a geographic point on the surface of the Earth (-90 - 90).
|
|
4440
|
+
|
|
4441
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-coordinates.html#cfn-route53-recordsetgroup-coordinates-latitude
|
|
4442
|
+
'''
|
|
4443
|
+
result = self._values.get("latitude")
|
|
4444
|
+
assert result is not None, "Required property 'latitude' is missing"
|
|
4445
|
+
return typing.cast(builtins.str, result)
|
|
4446
|
+
|
|
4447
|
+
@builtins.property
|
|
4448
|
+
def longitude(self) -> builtins.str:
|
|
4449
|
+
'''Specifies a coordinate of the east–west position of a geographic point on the surface of the Earth (-180 - 180).
|
|
4450
|
+
|
|
4451
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-coordinates.html#cfn-route53-recordsetgroup-coordinates-longitude
|
|
4452
|
+
'''
|
|
4453
|
+
result = self._values.get("longitude")
|
|
4454
|
+
assert result is not None, "Required property 'longitude' is missing"
|
|
4455
|
+
return typing.cast(builtins.str, result)
|
|
4456
|
+
|
|
4457
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
4458
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
4459
|
+
|
|
4460
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
4461
|
+
return not (rhs == self)
|
|
4462
|
+
|
|
4463
|
+
def __repr__(self) -> str:
|
|
4464
|
+
return "CoordinatesProperty(%s)" % ", ".join(
|
|
4465
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
4466
|
+
)
|
|
4467
|
+
|
|
4173
4468
|
@jsii.data_type(
|
|
4174
4469
|
jsii_type="aws-cdk-lib.aws_route53.CfnRecordSetGroup.GeoLocationProperty",
|
|
4175
4470
|
jsii_struct_bases=[],
|
|
@@ -4275,6 +4570,131 @@ class CfnRecordSetGroup(
|
|
|
4275
4570
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
4276
4571
|
)
|
|
4277
4572
|
|
|
4573
|
+
@jsii.data_type(
|
|
4574
|
+
jsii_type="aws-cdk-lib.aws_route53.CfnRecordSetGroup.GeoProximityLocationProperty",
|
|
4575
|
+
jsii_struct_bases=[],
|
|
4576
|
+
name_mapping={
|
|
4577
|
+
"aws_region": "awsRegion",
|
|
4578
|
+
"bias": "bias",
|
|
4579
|
+
"coordinates": "coordinates",
|
|
4580
|
+
"local_zone_group": "localZoneGroup",
|
|
4581
|
+
},
|
|
4582
|
+
)
|
|
4583
|
+
class GeoProximityLocationProperty:
|
|
4584
|
+
def __init__(
|
|
4585
|
+
self,
|
|
4586
|
+
*,
|
|
4587
|
+
aws_region: typing.Optional[builtins.str] = None,
|
|
4588
|
+
bias: typing.Optional[jsii.Number] = None,
|
|
4589
|
+
coordinates: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRecordSetGroup.CoordinatesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4590
|
+
local_zone_group: typing.Optional[builtins.str] = None,
|
|
4591
|
+
) -> None:
|
|
4592
|
+
'''(Resource record sets only): A complex type that lets you specify where your resources are located.
|
|
4593
|
+
|
|
4594
|
+
Only one of ``LocalZoneGroup`` , ``Coordinates`` , or ``AWS Region`` is allowed per request at a time.
|
|
4595
|
+
|
|
4596
|
+
For more information about geoproximity routing, see `Geoproximity routing <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geoproximity.html>`_ in the *Amazon Route 53 Developer Guide* .
|
|
4597
|
+
|
|
4598
|
+
:param aws_region: The AWS Region the resource you are directing DNS traffic to, is in.
|
|
4599
|
+
:param bias: The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. To use ``Bias`` to change the size of the geographic region, specify the applicable value for the bias: - To expand the size of the geographic region from which Route 53 routes traffic to a resource, specify a positive integer from 1 to 99 for the bias. Route 53 shrinks the size of adjacent regions. - To shrink the size of the geographic region from which Route 53 routes traffic to a resource, specify a negative bias of -1 to -99. Route 53 expands the size of adjacent regions.
|
|
4600
|
+
:param coordinates: Contains the longitude and latitude for a geographic region.
|
|
4601
|
+
:param local_zone_group: Specifies an AWS Local Zone Group. A local Zone Group is usually the Local Zone code without the ending character. For example, if the Local Zone is ``us-east-1-bue-1a`` the Local Zone Group is ``us-east-1-bue-1`` . You can identify the Local Zones Group for a specific Local Zone by using the `describe-availability-zones <https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-availability-zones.html>`_ CLI command: This command returns: ``"GroupName": "us-west-2-den-1"`` , specifying that the Local Zone ``us-west-2-den-1a`` belongs to the Local Zone Group ``us-west-2-den-1`` .
|
|
4602
|
+
|
|
4603
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-geoproximitylocation.html
|
|
4604
|
+
:exampleMetadata: fixture=_generated
|
|
4605
|
+
|
|
4606
|
+
Example::
|
|
4607
|
+
|
|
4608
|
+
# The code below shows an example of how to instantiate this type.
|
|
4609
|
+
# The values are placeholders you should change.
|
|
4610
|
+
from aws_cdk import aws_route53 as route53
|
|
4611
|
+
|
|
4612
|
+
geo_proximity_location_property = route53.CfnRecordSetGroup.GeoProximityLocationProperty(
|
|
4613
|
+
aws_region="awsRegion",
|
|
4614
|
+
bias=123,
|
|
4615
|
+
coordinates=route53.CfnRecordSetGroup.CoordinatesProperty(
|
|
4616
|
+
latitude="latitude",
|
|
4617
|
+
longitude="longitude"
|
|
4618
|
+
),
|
|
4619
|
+
local_zone_group="localZoneGroup"
|
|
4620
|
+
)
|
|
4621
|
+
'''
|
|
4622
|
+
if __debug__:
|
|
4623
|
+
type_hints = typing.get_type_hints(_typecheckingstub__5430af5a2d4636b1244b53f4c6759f6d1ffde530908e449cf4bc90b0d9de5ec8)
|
|
4624
|
+
check_type(argname="argument aws_region", value=aws_region, expected_type=type_hints["aws_region"])
|
|
4625
|
+
check_type(argname="argument bias", value=bias, expected_type=type_hints["bias"])
|
|
4626
|
+
check_type(argname="argument coordinates", value=coordinates, expected_type=type_hints["coordinates"])
|
|
4627
|
+
check_type(argname="argument local_zone_group", value=local_zone_group, expected_type=type_hints["local_zone_group"])
|
|
4628
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
4629
|
+
if aws_region is not None:
|
|
4630
|
+
self._values["aws_region"] = aws_region
|
|
4631
|
+
if bias is not None:
|
|
4632
|
+
self._values["bias"] = bias
|
|
4633
|
+
if coordinates is not None:
|
|
4634
|
+
self._values["coordinates"] = coordinates
|
|
4635
|
+
if local_zone_group is not None:
|
|
4636
|
+
self._values["local_zone_group"] = local_zone_group
|
|
4637
|
+
|
|
4638
|
+
@builtins.property
|
|
4639
|
+
def aws_region(self) -> typing.Optional[builtins.str]:
|
|
4640
|
+
'''The AWS Region the resource you are directing DNS traffic to, is in.
|
|
4641
|
+
|
|
4642
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-geoproximitylocation.html#cfn-route53-recordsetgroup-geoproximitylocation-awsregion
|
|
4643
|
+
'''
|
|
4644
|
+
result = self._values.get("aws_region")
|
|
4645
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
4646
|
+
|
|
4647
|
+
@builtins.property
|
|
4648
|
+
def bias(self) -> typing.Optional[jsii.Number]:
|
|
4649
|
+
'''The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource.
|
|
4650
|
+
|
|
4651
|
+
To use ``Bias`` to change the size of the geographic region, specify the applicable value for the bias:
|
|
4652
|
+
|
|
4653
|
+
- To expand the size of the geographic region from which Route 53 routes traffic to a resource, specify a positive integer from 1 to 99 for the bias. Route 53 shrinks the size of adjacent regions.
|
|
4654
|
+
- To shrink the size of the geographic region from which Route 53 routes traffic to a resource, specify a negative bias of -1 to -99. Route 53 expands the size of adjacent regions.
|
|
4655
|
+
|
|
4656
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-geoproximitylocation.html#cfn-route53-recordsetgroup-geoproximitylocation-bias
|
|
4657
|
+
'''
|
|
4658
|
+
result = self._values.get("bias")
|
|
4659
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
4660
|
+
|
|
4661
|
+
@builtins.property
|
|
4662
|
+
def coordinates(
|
|
4663
|
+
self,
|
|
4664
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSetGroup.CoordinatesProperty"]]:
|
|
4665
|
+
'''Contains the longitude and latitude for a geographic region.
|
|
4666
|
+
|
|
4667
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-geoproximitylocation.html#cfn-route53-recordsetgroup-geoproximitylocation-coordinates
|
|
4668
|
+
'''
|
|
4669
|
+
result = self._values.get("coordinates")
|
|
4670
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSetGroup.CoordinatesProperty"]], result)
|
|
4671
|
+
|
|
4672
|
+
@builtins.property
|
|
4673
|
+
def local_zone_group(self) -> typing.Optional[builtins.str]:
|
|
4674
|
+
'''Specifies an AWS Local Zone Group.
|
|
4675
|
+
|
|
4676
|
+
A local Zone Group is usually the Local Zone code without the ending character. For example, if the Local Zone is ``us-east-1-bue-1a`` the Local Zone Group is ``us-east-1-bue-1`` .
|
|
4677
|
+
|
|
4678
|
+
You can identify the Local Zones Group for a specific Local Zone by using the `describe-availability-zones <https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-availability-zones.html>`_ CLI command:
|
|
4679
|
+
|
|
4680
|
+
This command returns: ``"GroupName": "us-west-2-den-1"`` , specifying that the Local Zone ``us-west-2-den-1a`` belongs to the Local Zone Group ``us-west-2-den-1`` .
|
|
4681
|
+
|
|
4682
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-geoproximitylocation.html#cfn-route53-recordsetgroup-geoproximitylocation-localzonegroup
|
|
4683
|
+
'''
|
|
4684
|
+
result = self._values.get("local_zone_group")
|
|
4685
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
4686
|
+
|
|
4687
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
4688
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
4689
|
+
|
|
4690
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
4691
|
+
return not (rhs == self)
|
|
4692
|
+
|
|
4693
|
+
def __repr__(self) -> str:
|
|
4694
|
+
return "GeoProximityLocationProperty(%s)" % ", ".join(
|
|
4695
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
4696
|
+
)
|
|
4697
|
+
|
|
4278
4698
|
@jsii.data_type(
|
|
4279
4699
|
jsii_type="aws-cdk-lib.aws_route53.CfnRecordSetGroup.RecordSetProperty",
|
|
4280
4700
|
jsii_struct_bases=[],
|
|
@@ -4285,6 +4705,7 @@ class CfnRecordSetGroup(
|
|
|
4285
4705
|
"cidr_routing_config": "cidrRoutingConfig",
|
|
4286
4706
|
"failover": "failover",
|
|
4287
4707
|
"geo_location": "geoLocation",
|
|
4708
|
+
"geo_proximity_location": "geoProximityLocation",
|
|
4288
4709
|
"health_check_id": "healthCheckId",
|
|
4289
4710
|
"hosted_zone_id": "hostedZoneId",
|
|
4290
4711
|
"hosted_zone_name": "hostedZoneName",
|
|
@@ -4306,6 +4727,7 @@ class CfnRecordSetGroup(
|
|
|
4306
4727
|
cidr_routing_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRecordSetGroup.CidrRoutingConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4307
4728
|
failover: typing.Optional[builtins.str] = None,
|
|
4308
4729
|
geo_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRecordSetGroup.GeoLocationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4730
|
+
geo_proximity_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRecordSetGroup.GeoProximityLocationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4309
4731
|
health_check_id: typing.Optional[builtins.str] = None,
|
|
4310
4732
|
hosted_zone_id: typing.Optional[builtins.str] = None,
|
|
4311
4733
|
hosted_zone_name: typing.Optional[builtins.str] = None,
|
|
@@ -4324,6 +4746,7 @@ class CfnRecordSetGroup(
|
|
|
4324
4746
|
:param cidr_routing_config:
|
|
4325
4747
|
:param failover: *Failover resource record sets only:* To configure failover, you add the ``Failover`` element to two resource record sets. For one resource record set, you specify ``PRIMARY`` as the value for ``Failover`` ; for the other resource record set, you specify ``SECONDARY`` . In addition, you include the ``HealthCheckId`` element and specify the health check that you want Amazon Route 53 to perform for each resource record set. Except where noted, the following failover behaviors assume that you have included the ``HealthCheckId`` element in both resource record sets: - When the primary resource record set is healthy, Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the secondary resource record set. - When the primary resource record set is unhealthy and the secondary resource record set is healthy, Route 53 responds to DNS queries with the applicable value from the secondary resource record set. - When the secondary resource record set is unhealthy, Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the primary resource record set. - If you omit the ``HealthCheckId`` element for the secondary resource record set, and if the primary resource record set is unhealthy, Route 53 always responds to DNS queries with the applicable value from the secondary resource record set. This is true regardless of the health of the associated endpoint. You can't create non-failover resource record sets that have the same values for the ``Name`` and ``Type`` elements as failover resource record sets. For failover alias resource record sets, you must also include the ``EvaluateTargetHealth`` element and set the value to true. For more information about configuring failover for Route 53, see the following topics in the *Amazon Route 53 Developer Guide* : - `Route 53 Health Checks and DNS Failover <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html>`_ - `Configuring Failover in a Private Hosted Zone <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html>`_
|
|
4326
4748
|
:param geo_location: *Geolocation resource record sets only:* A complex type that lets you control how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. For example, if you want all queries from Africa to be routed to a web server with an IP address of ``192.0.2.111`` , create a resource record set with a ``Type`` of ``A`` and a ``ContinentCode`` of ``AF`` . If you create separate resource record sets for overlapping geographic regions (for example, one resource record set for a continent and one for a country on the same continent), priority goes to the smallest geographic region. This allows you to route most queries for a continent to one resource and to route queries for a country on that continent to a different resource. You can't create two geolocation resource record sets that specify the same geographic location. The value ``*`` in the ``CountryCode`` element matches all geographic locations that aren't specified in other geolocation resource record sets that have the same values for the ``Name`` and ``Type`` elements. .. epigraph:: Geolocation works by mapping IP addresses to locations. However, some IP addresses aren't mapped to geographic locations, so even if you create geolocation resource record sets that cover all seven continents, Route 53 will receive some DNS queries from locations that it can't identify. We recommend that you create a resource record set for which the value of ``CountryCode`` is ``*`` . Two groups of queries are routed to the resource that you specify in this record: queries that come from locations for which you haven't created geolocation resource record sets and queries from IP addresses that aren't mapped to a location. If you don't create a ``*`` resource record set, Route 53 returns a "no answer" response for queries from those locations. You can't create non-geolocation resource record sets that have the same values for the ``Name`` and ``Type`` elements as geolocation resource record sets.
|
|
4749
|
+
:param geo_proximity_location: A complex type that contains information about a geographic location.
|
|
4327
4750
|
:param health_check_id: If you want Amazon Route 53 to return this resource record set in response to a DNS query only when the status of a health check is healthy, include the ``HealthCheckId`` element and specify the ID of the applicable health check. Route 53 determines whether a resource record set is healthy based on one of the following: - By periodically sending a request to the endpoint that is specified in the health check - By aggregating the status of a specified group of health checks (calculated health checks) - By determining the current state of a CloudWatch alarm (CloudWatch metric health checks) .. epigraph:: Route 53 doesn't check the health of the endpoint that is specified in the resource record set, for example, the endpoint specified by the IP address in the ``Value`` element. When you add a ``HealthCheckId`` element to a resource record set, Route 53 checks the health of the endpoint that you specified in the health check. For more information, see the following topics in the *Amazon Route 53 Developer Guide* : - `How Amazon Route 53 Determines Whether an Endpoint Is Healthy <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html>`_ - `Route 53 Health Checks and DNS Failover <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html>`_ - `Configuring Failover in a Private Hosted Zone <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html>`_ *When to Specify HealthCheckId* Specifying a value for ``HealthCheckId`` is useful only when Route 53 is choosing between two or more resource record sets to respond to a DNS query, and you want Route 53 to base the choice in part on the status of a health check. Configuring health checks makes sense only in the following configurations: - *Non-alias resource record sets* : You're checking the health of a group of non-alias resource record sets that have the same routing policy, name, and type (such as multiple weighted records named www.example.com with a type of A) and you specify health check IDs for all the resource record sets. If the health check status for a resource record set is healthy, Route 53 includes the record among the records that it responds to DNS queries with. If the health check status for a resource record set is unhealthy, Route 53 stops responding to DNS queries using the value for that resource record set. If the health check status for all resource record sets in the group is unhealthy, Route 53 considers all resource record sets in the group healthy and responds to DNS queries accordingly. - *Alias resource record sets* : You specify the following settings: - You set ``EvaluateTargetHealth`` to true for an alias resource record set in a group of resource record sets that have the same routing policy, name, and type (such as multiple weighted records named www.example.com with a type of A). - You configure the alias resource record set to route traffic to a non-alias resource record set in the same hosted zone. - You specify a health check ID for the non-alias resource record set. If the health check status is healthy, Route 53 considers the alias resource record set to be healthy and includes the alias record among the records that it responds to DNS queries with. If the health check status is unhealthy, Route 53 stops responding to DNS queries using the alias resource record set. .. epigraph:: The alias resource record set can also route traffic to a *group* of non-alias resource record sets that have the same routing policy, name, and type. In that configuration, associate health checks with all of the resource record sets in the group of non-alias resource record sets. *Geolocation Routing* For geolocation resource record sets, if an endpoint is unhealthy, Route 53 looks for a resource record set for the larger, associated geographic region. For example, suppose you have resource record sets for a state in the United States, for the entire United States, for North America, and a resource record set that has ``*`` for ``CountryCode`` is ``*`` , which applies to all locations. If the endpoint for the state resource record set is unhealthy, Route 53 checks for healthy resource record sets in the following order until it finds a resource record set for which the endpoint is healthy: - The United States - North America - The default resource record set *Specifying the Health Check Endpoint by Domain Name* If your health checks specify the endpoint only by domain name, we recommend that you create a separate health check for each endpoint. For example, create a health check for each ``HTTP`` server that is serving content for ``www.example.com`` . For the value of ``FullyQualifiedDomainName`` , specify the domain name of the server (such as ``us-east-2-www.example.com`` ), not the name of the resource record sets ( ``www.example.com`` ). .. epigraph:: Health check results will be unpredictable if you do the following: - Create a health check that has the same value for ``FullyQualifiedDomainName`` as the name of a resource record set. - Associate that health check with the resource record set.
|
|
4328
4751
|
:param hosted_zone_id: The ID of the hosted zone that you want to create records in. Specify either ``HostedZoneName`` or ``HostedZoneId`` , but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using ``HostedZoneId`` . Do not provide the ``HostedZoneId`` if it is already defined in ``AWS::Route53::RecordSetGroup`` . The creation fails if ``HostedZoneId`` is defined in both.
|
|
4329
4752
|
:param hosted_zone_name: The name of the hosted zone that you want to create records in. You must include a trailing dot (for example, ``www.example.com.`` ) as part of the ``HostedZoneName`` . When you create a stack using an ``AWS::Route53::RecordSet`` that specifies ``HostedZoneName`` , AWS CloudFormation attempts to find a hosted zone whose name matches the ``HostedZoneName`` . If AWS CloudFormation can't find a hosted zone with a matching domain name, or if there is more than one hosted zone with the specified domain name, AWS CloudFormation will not create the stack. Specify either ``HostedZoneName`` or ``HostedZoneId`` , but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using ``HostedZoneId`` .
|
|
@@ -4365,6 +4788,15 @@ class CfnRecordSetGroup(
|
|
|
4365
4788
|
country_code="countryCode",
|
|
4366
4789
|
subdivision_code="subdivisionCode"
|
|
4367
4790
|
),
|
|
4791
|
+
geo_proximity_location=route53.CfnRecordSetGroup.GeoProximityLocationProperty(
|
|
4792
|
+
aws_region="awsRegion",
|
|
4793
|
+
bias=123,
|
|
4794
|
+
coordinates=route53.CfnRecordSetGroup.CoordinatesProperty(
|
|
4795
|
+
latitude="latitude",
|
|
4796
|
+
longitude="longitude"
|
|
4797
|
+
),
|
|
4798
|
+
local_zone_group="localZoneGroup"
|
|
4799
|
+
),
|
|
4368
4800
|
health_check_id="healthCheckId",
|
|
4369
4801
|
hosted_zone_id="hostedZoneId",
|
|
4370
4802
|
hosted_zone_name="hostedZoneName",
|
|
@@ -4384,6 +4816,7 @@ class CfnRecordSetGroup(
|
|
|
4384
4816
|
check_type(argname="argument cidr_routing_config", value=cidr_routing_config, expected_type=type_hints["cidr_routing_config"])
|
|
4385
4817
|
check_type(argname="argument failover", value=failover, expected_type=type_hints["failover"])
|
|
4386
4818
|
check_type(argname="argument geo_location", value=geo_location, expected_type=type_hints["geo_location"])
|
|
4819
|
+
check_type(argname="argument geo_proximity_location", value=geo_proximity_location, expected_type=type_hints["geo_proximity_location"])
|
|
4387
4820
|
check_type(argname="argument health_check_id", value=health_check_id, expected_type=type_hints["health_check_id"])
|
|
4388
4821
|
check_type(argname="argument hosted_zone_id", value=hosted_zone_id, expected_type=type_hints["hosted_zone_id"])
|
|
4389
4822
|
check_type(argname="argument hosted_zone_name", value=hosted_zone_name, expected_type=type_hints["hosted_zone_name"])
|
|
@@ -4405,6 +4838,8 @@ class CfnRecordSetGroup(
|
|
|
4405
4838
|
self._values["failover"] = failover
|
|
4406
4839
|
if geo_location is not None:
|
|
4407
4840
|
self._values["geo_location"] = geo_location
|
|
4841
|
+
if geo_proximity_location is not None:
|
|
4842
|
+
self._values["geo_proximity_location"] = geo_proximity_location
|
|
4408
4843
|
if health_check_id is not None:
|
|
4409
4844
|
self._values["health_check_id"] = health_check_id
|
|
4410
4845
|
if hosted_zone_id is not None:
|
|
@@ -4567,6 +5002,17 @@ class CfnRecordSetGroup(
|
|
|
4567
5002
|
result = self._values.get("geo_location")
|
|
4568
5003
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSetGroup.GeoLocationProperty"]], result)
|
|
4569
5004
|
|
|
5005
|
+
@builtins.property
|
|
5006
|
+
def geo_proximity_location(
|
|
5007
|
+
self,
|
|
5008
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSetGroup.GeoProximityLocationProperty"]]:
|
|
5009
|
+
'''A complex type that contains information about a geographic location.
|
|
5010
|
+
|
|
5011
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordsetgroup-recordset.html#cfn-route53-recordsetgroup-recordset-geoproximitylocation
|
|
5012
|
+
'''
|
|
5013
|
+
result = self._values.get("geo_proximity_location")
|
|
5014
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRecordSetGroup.GeoProximityLocationProperty"]], result)
|
|
5015
|
+
|
|
4570
5016
|
@builtins.property
|
|
4571
5017
|
def health_check_id(self) -> typing.Optional[builtins.str]:
|
|
4572
5018
|
'''If you want Amazon Route 53 to return this resource record set in response to a DNS query only when the status of a health check is healthy, include the ``HealthCheckId`` element and specify the ID of the applicable health check.
|
|
@@ -4832,6 +5278,15 @@ class CfnRecordSetGroupProps:
|
|
|
4832
5278
|
country_code="countryCode",
|
|
4833
5279
|
subdivision_code="subdivisionCode"
|
|
4834
5280
|
),
|
|
5281
|
+
geo_proximity_location=route53.CfnRecordSetGroup.GeoProximityLocationProperty(
|
|
5282
|
+
aws_region="awsRegion",
|
|
5283
|
+
bias=123,
|
|
5284
|
+
coordinates=route53.CfnRecordSetGroup.CoordinatesProperty(
|
|
5285
|
+
latitude="latitude",
|
|
5286
|
+
longitude="longitude"
|
|
5287
|
+
),
|
|
5288
|
+
local_zone_group="localZoneGroup"
|
|
5289
|
+
),
|
|
4835
5290
|
health_check_id="healthCheckId",
|
|
4836
5291
|
hosted_zone_id="hostedZoneId",
|
|
4837
5292
|
hosted_zone_name="hostedZoneName",
|
|
@@ -4929,6 +5384,7 @@ class CfnRecordSetGroupProps:
|
|
|
4929
5384
|
"comment": "comment",
|
|
4930
5385
|
"failover": "failover",
|
|
4931
5386
|
"geo_location": "geoLocation",
|
|
5387
|
+
"geo_proximity_location": "geoProximityLocation",
|
|
4932
5388
|
"health_check_id": "healthCheckId",
|
|
4933
5389
|
"hosted_zone_id": "hostedZoneId",
|
|
4934
5390
|
"hosted_zone_name": "hostedZoneName",
|
|
@@ -4951,6 +5407,7 @@ class CfnRecordSetProps:
|
|
|
4951
5407
|
comment: typing.Optional[builtins.str] = None,
|
|
4952
5408
|
failover: typing.Optional[builtins.str] = None,
|
|
4953
5409
|
geo_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSet.GeoLocationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5410
|
+
geo_proximity_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSet.GeoProximityLocationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4954
5411
|
health_check_id: typing.Optional[builtins.str] = None,
|
|
4955
5412
|
hosted_zone_id: typing.Optional[builtins.str] = None,
|
|
4956
5413
|
hosted_zone_name: typing.Optional[builtins.str] = None,
|
|
@@ -4970,6 +5427,7 @@ class CfnRecordSetProps:
|
|
|
4970
5427
|
:param comment: *Optional:* Any comments you want to include about a change batch request.
|
|
4971
5428
|
:param failover: *Failover resource record sets only:* To configure failover, you add the ``Failover`` element to two resource record sets. For one resource record set, you specify ``PRIMARY`` as the value for ``Failover`` ; for the other resource record set, you specify ``SECONDARY`` . In addition, you include the ``HealthCheckId`` element and specify the health check that you want Amazon Route 53 to perform for each resource record set. Except where noted, the following failover behaviors assume that you have included the ``HealthCheckId`` element in both resource record sets: - When the primary resource record set is healthy, Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the secondary resource record set. - When the primary resource record set is unhealthy and the secondary resource record set is healthy, Route 53 responds to DNS queries with the applicable value from the secondary resource record set. - When the secondary resource record set is unhealthy, Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the primary resource record set. - If you omit the ``HealthCheckId`` element for the secondary resource record set, and if the primary resource record set is unhealthy, Route 53 always responds to DNS queries with the applicable value from the secondary resource record set. This is true regardless of the health of the associated endpoint. You can't create non-failover resource record sets that have the same values for the ``Name`` and ``Type`` elements as failover resource record sets. For failover alias resource record sets, you must also include the ``EvaluateTargetHealth`` element and set the value to true. For more information about configuring failover for Route 53, see the following topics in the *Amazon Route 53 Developer Guide* : - `Route 53 Health Checks and DNS Failover <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html>`_ - `Configuring Failover in a Private Hosted Zone <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html>`_
|
|
4972
5429
|
:param geo_location: *Geolocation resource record sets only:* A complex type that lets you control how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. For example, if you want all queries from Africa to be routed to a web server with an IP address of ``192.0.2.111`` , create a resource record set with a ``Type`` of ``A`` and a ``ContinentCode`` of ``AF`` . If you create separate resource record sets for overlapping geographic regions (for example, one resource record set for a continent and one for a country on the same continent), priority goes to the smallest geographic region. This allows you to route most queries for a continent to one resource and to route queries for a country on that continent to a different resource. You can't create two geolocation resource record sets that specify the same geographic location. The value ``*`` in the ``CountryCode`` element matches all geographic locations that aren't specified in other geolocation resource record sets that have the same values for the ``Name`` and ``Type`` elements. .. epigraph:: Geolocation works by mapping IP addresses to locations. However, some IP addresses aren't mapped to geographic locations, so even if you create geolocation resource record sets that cover all seven continents, Route 53 will receive some DNS queries from locations that it can't identify. We recommend that you create a resource record set for which the value of ``CountryCode`` is ``*`` . Two groups of queries are routed to the resource that you specify in this record: queries that come from locations for which you haven't created geolocation resource record sets and queries from IP addresses that aren't mapped to a location. If you don't create a ``*`` resource record set, Route 53 returns a "no answer" response for queries from those locations. You can't create non-geolocation resource record sets that have the same values for the ``Name`` and ``Type`` elements as geolocation resource record sets.
|
|
5430
|
+
:param geo_proximity_location: *GeoproximityLocation resource record sets only:* A complex type that lets you control how Route 53 responds to DNS queries based on the geographic origin of the query and your resources.
|
|
4973
5431
|
:param health_check_id: If you want Amazon Route 53 to return this resource record set in response to a DNS query only when the status of a health check is healthy, include the ``HealthCheckId`` element and specify the ID of the applicable health check. Route 53 determines whether a resource record set is healthy based on one of the following: - By periodically sending a request to the endpoint that is specified in the health check - By aggregating the status of a specified group of health checks (calculated health checks) - By determining the current state of a CloudWatch alarm (CloudWatch metric health checks) .. epigraph:: Route 53 doesn't check the health of the endpoint that is specified in the resource record set, for example, the endpoint specified by the IP address in the ``Value`` element. When you add a ``HealthCheckId`` element to a resource record set, Route 53 checks the health of the endpoint that you specified in the health check. For more information, see the following topics in the *Amazon Route 53 Developer Guide* : - `How Amazon Route 53 Determines Whether an Endpoint Is Healthy <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html>`_ - `Route 53 Health Checks and DNS Failover <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html>`_ - `Configuring Failover in a Private Hosted Zone <https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html>`_ *When to Specify HealthCheckId* Specifying a value for ``HealthCheckId`` is useful only when Route 53 is choosing between two or more resource record sets to respond to a DNS query, and you want Route 53 to base the choice in part on the status of a health check. Configuring health checks makes sense only in the following configurations: - *Non-alias resource record sets* : You're checking the health of a group of non-alias resource record sets that have the same routing policy, name, and type (such as multiple weighted records named www.example.com with a type of A) and you specify health check IDs for all the resource record sets. If the health check status for a resource record set is healthy, Route 53 includes the record among the records that it responds to DNS queries with. If the health check status for a resource record set is unhealthy, Route 53 stops responding to DNS queries using the value for that resource record set. If the health check status for all resource record sets in the group is unhealthy, Route 53 considers all resource record sets in the group healthy and responds to DNS queries accordingly. - *Alias resource record sets* : You specify the following settings: - You set ``EvaluateTargetHealth`` to true for an alias resource record set in a group of resource record sets that have the same routing policy, name, and type (such as multiple weighted records named www.example.com with a type of A). - You configure the alias resource record set to route traffic to a non-alias resource record set in the same hosted zone. - You specify a health check ID for the non-alias resource record set. If the health check status is healthy, Route 53 considers the alias resource record set to be healthy and includes the alias record among the records that it responds to DNS queries with. If the health check status is unhealthy, Route 53 stops responding to DNS queries using the alias resource record set. .. epigraph:: The alias resource record set can also route traffic to a *group* of non-alias resource record sets that have the same routing policy, name, and type. In that configuration, associate health checks with all of the resource record sets in the group of non-alias resource record sets. *Geolocation Routing* For geolocation resource record sets, if an endpoint is unhealthy, Route 53 looks for a resource record set for the larger, associated geographic region. For example, suppose you have resource record sets for a state in the United States, for the entire United States, for North America, and a resource record set that has ``*`` for ``CountryCode`` is ``*`` , which applies to all locations. If the endpoint for the state resource record set is unhealthy, Route 53 checks for healthy resource record sets in the following order until it finds a resource record set for which the endpoint is healthy: - The United States - North America - The default resource record set *Specifying the Health Check Endpoint by Domain Name* If your health checks specify the endpoint only by domain name, we recommend that you create a separate health check for each endpoint. For example, create a health check for each ``HTTP`` server that is serving content for ``www.example.com`` . For the value of ``FullyQualifiedDomainName`` , specify the domain name of the server (such as ``us-east-2-www.example.com`` ), not the name of the resource record sets ( ``www.example.com`` ). .. epigraph:: Health check results will be unpredictable if you do the following: - Create a health check that has the same value for ``FullyQualifiedDomainName`` as the name of a resource record set. - Associate that health check with the resource record set.
|
|
4974
5432
|
:param hosted_zone_id: The ID of the hosted zone that you want to create records in. Specify either ``HostedZoneName`` or ``HostedZoneId`` , but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using ``HostedZoneId`` .
|
|
4975
5433
|
:param hosted_zone_name: The name of the hosted zone that you want to create records in. You must include a trailing dot (for example, ``www.example.com.`` ) as part of the ``HostedZoneName`` . When you create a stack using an AWS::Route53::RecordSet that specifies ``HostedZoneName`` , AWS CloudFormation attempts to find a hosted zone whose name matches the HostedZoneName. If AWS CloudFormation cannot find a hosted zone with a matching domain name, or if there is more than one hosted zone with the specified domain name, AWS CloudFormation will not create the stack. Specify either ``HostedZoneName`` or ``HostedZoneId`` , but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using ``HostedZoneId`` .
|
|
@@ -5012,6 +5470,15 @@ class CfnRecordSetProps:
|
|
|
5012
5470
|
country_code="countryCode",
|
|
5013
5471
|
subdivision_code="subdivisionCode"
|
|
5014
5472
|
),
|
|
5473
|
+
geo_proximity_location=route53.CfnRecordSet.GeoProximityLocationProperty(
|
|
5474
|
+
aws_region="awsRegion",
|
|
5475
|
+
bias=123,
|
|
5476
|
+
coordinates=route53.CfnRecordSet.CoordinatesProperty(
|
|
5477
|
+
latitude="latitude",
|
|
5478
|
+
longitude="longitude"
|
|
5479
|
+
),
|
|
5480
|
+
local_zone_group="localZoneGroup"
|
|
5481
|
+
),
|
|
5015
5482
|
health_check_id="healthCheckId",
|
|
5016
5483
|
hosted_zone_id="hostedZoneId",
|
|
5017
5484
|
hosted_zone_name="hostedZoneName",
|
|
@@ -5032,6 +5499,7 @@ class CfnRecordSetProps:
|
|
|
5032
5499
|
check_type(argname="argument comment", value=comment, expected_type=type_hints["comment"])
|
|
5033
5500
|
check_type(argname="argument failover", value=failover, expected_type=type_hints["failover"])
|
|
5034
5501
|
check_type(argname="argument geo_location", value=geo_location, expected_type=type_hints["geo_location"])
|
|
5502
|
+
check_type(argname="argument geo_proximity_location", value=geo_proximity_location, expected_type=type_hints["geo_proximity_location"])
|
|
5035
5503
|
check_type(argname="argument health_check_id", value=health_check_id, expected_type=type_hints["health_check_id"])
|
|
5036
5504
|
check_type(argname="argument hosted_zone_id", value=hosted_zone_id, expected_type=type_hints["hosted_zone_id"])
|
|
5037
5505
|
check_type(argname="argument hosted_zone_name", value=hosted_zone_name, expected_type=type_hints["hosted_zone_name"])
|
|
@@ -5055,6 +5523,8 @@ class CfnRecordSetProps:
|
|
|
5055
5523
|
self._values["failover"] = failover
|
|
5056
5524
|
if geo_location is not None:
|
|
5057
5525
|
self._values["geo_location"] = geo_location
|
|
5526
|
+
if geo_proximity_location is not None:
|
|
5527
|
+
self._values["geo_proximity_location"] = geo_proximity_location
|
|
5058
5528
|
if health_check_id is not None:
|
|
5059
5529
|
self._values["health_check_id"] = health_check_id
|
|
5060
5530
|
if hosted_zone_id is not None:
|
|
@@ -5229,6 +5699,17 @@ class CfnRecordSetProps:
|
|
|
5229
5699
|
result = self._values.get("geo_location")
|
|
5230
5700
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnRecordSet.GeoLocationProperty]], result)
|
|
5231
5701
|
|
|
5702
|
+
@builtins.property
|
|
5703
|
+
def geo_proximity_location(
|
|
5704
|
+
self,
|
|
5705
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnRecordSet.GeoProximityLocationProperty]]:
|
|
5706
|
+
'''*GeoproximityLocation resource record sets only:* A complex type that lets you control how Route 53 responds to DNS queries based on the geographic origin of the query and your resources.
|
|
5707
|
+
|
|
5708
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordset.html#cfn-route53-recordset-geoproximitylocation
|
|
5709
|
+
'''
|
|
5710
|
+
result = self._values.get("geo_proximity_location")
|
|
5711
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnRecordSet.GeoProximityLocationProperty]], result)
|
|
5712
|
+
|
|
5232
5713
|
@builtins.property
|
|
5233
5714
|
def health_check_id(self) -> typing.Optional[builtins.str]:
|
|
5234
5715
|
'''If you want Amazon Route 53 to return this resource record set in response to a DNS query only when the status of a health check is healthy, include the ``HealthCheckId`` element and specify the ID of the applicable health check.
|
|
@@ -12502,6 +12983,7 @@ def _typecheckingstub__5260f62d2297374b2126da361d614f7922d306048a751f4287d4f7b25
|
|
|
12502
12983
|
comment: typing.Optional[builtins.str] = None,
|
|
12503
12984
|
failover: typing.Optional[builtins.str] = None,
|
|
12504
12985
|
geo_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSet.GeoLocationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12986
|
+
geo_proximity_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSet.GeoProximityLocationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12505
12987
|
health_check_id: typing.Optional[builtins.str] = None,
|
|
12506
12988
|
hosted_zone_id: typing.Optional[builtins.str] = None,
|
|
12507
12989
|
hosted_zone_name: typing.Optional[builtins.str] = None,
|
|
@@ -12569,6 +13051,12 @@ def _typecheckingstub__e7b257b8973ecbc1eff717cef5d9e9a86a7e93521a1f67acf22b2e846
|
|
|
12569
13051
|
"""Type checking stubs"""
|
|
12570
13052
|
pass
|
|
12571
13053
|
|
|
13054
|
+
def _typecheckingstub__ac8d1aee0fc5c4e2eba653391bb8b61826a08b6708db398bae5b22b4e13fcf05(
|
|
13055
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnRecordSet.GeoProximityLocationProperty]],
|
|
13056
|
+
) -> None:
|
|
13057
|
+
"""Type checking stubs"""
|
|
13058
|
+
pass
|
|
13059
|
+
|
|
12572
13060
|
def _typecheckingstub__6008831249a60a522c31e8ed28371a87feee29b69976deadfbbb7939c49e5a0a(
|
|
12573
13061
|
value: typing.Optional[builtins.str],
|
|
12574
13062
|
) -> None:
|
|
@@ -12640,6 +13128,14 @@ def _typecheckingstub__cc6569566583d30a42a983532b11cef6d6313d0666f46f50d599eabd1
|
|
|
12640
13128
|
"""Type checking stubs"""
|
|
12641
13129
|
pass
|
|
12642
13130
|
|
|
13131
|
+
def _typecheckingstub__29683fc8d824969c71955a00cda4d10dde445180eb16e6a17c990ec1252a893a(
|
|
13132
|
+
*,
|
|
13133
|
+
latitude: builtins.str,
|
|
13134
|
+
longitude: builtins.str,
|
|
13135
|
+
) -> None:
|
|
13136
|
+
"""Type checking stubs"""
|
|
13137
|
+
pass
|
|
13138
|
+
|
|
12643
13139
|
def _typecheckingstub__fc6e59779782a9e8ecceda7a67dfa9c21d257bdac8db0558def7239dd1d167a5(
|
|
12644
13140
|
*,
|
|
12645
13141
|
continent_code: typing.Optional[builtins.str] = None,
|
|
@@ -12649,6 +13145,16 @@ def _typecheckingstub__fc6e59779782a9e8ecceda7a67dfa9c21d257bdac8db0558def7239dd
|
|
|
12649
13145
|
"""Type checking stubs"""
|
|
12650
13146
|
pass
|
|
12651
13147
|
|
|
13148
|
+
def _typecheckingstub__9bbef31bd9d19fea78e067206e8cea17ada33bda9853588d7a99d66d91f15555(
|
|
13149
|
+
*,
|
|
13150
|
+
aws_region: typing.Optional[builtins.str] = None,
|
|
13151
|
+
bias: typing.Optional[jsii.Number] = None,
|
|
13152
|
+
coordinates: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSet.CoordinatesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
13153
|
+
local_zone_group: typing.Optional[builtins.str] = None,
|
|
13154
|
+
) -> None:
|
|
13155
|
+
"""Type checking stubs"""
|
|
13156
|
+
pass
|
|
13157
|
+
|
|
12652
13158
|
def _typecheckingstub__88410dc2301961a44d6910ee0de13aa8273ce0fa1b93daca4141c18b5fa3d03b(
|
|
12653
13159
|
scope: _constructs_77d1e7e8.Construct,
|
|
12654
13160
|
id: builtins.str,
|
|
@@ -12714,6 +13220,14 @@ def _typecheckingstub__c25a6f79ee876d62204e1e24470518bddae21e675bc5258cc7766c8a3
|
|
|
12714
13220
|
"""Type checking stubs"""
|
|
12715
13221
|
pass
|
|
12716
13222
|
|
|
13223
|
+
def _typecheckingstub__3ebaae8a752b3b1dfff4bf671352e45cbd7c98fa0058ccfb5170085a3e53f8cb(
|
|
13224
|
+
*,
|
|
13225
|
+
latitude: builtins.str,
|
|
13226
|
+
longitude: builtins.str,
|
|
13227
|
+
) -> None:
|
|
13228
|
+
"""Type checking stubs"""
|
|
13229
|
+
pass
|
|
13230
|
+
|
|
12717
13231
|
def _typecheckingstub__2815193fa29c379ea003dd9391a70d63f49989043e7f24e220ccebb1143c1026(
|
|
12718
13232
|
*,
|
|
12719
13233
|
continent_code: typing.Optional[builtins.str] = None,
|
|
@@ -12723,6 +13237,16 @@ def _typecheckingstub__2815193fa29c379ea003dd9391a70d63f49989043e7f24e220ccebb11
|
|
|
12723
13237
|
"""Type checking stubs"""
|
|
12724
13238
|
pass
|
|
12725
13239
|
|
|
13240
|
+
def _typecheckingstub__5430af5a2d4636b1244b53f4c6759f6d1ffde530908e449cf4bc90b0d9de5ec8(
|
|
13241
|
+
*,
|
|
13242
|
+
aws_region: typing.Optional[builtins.str] = None,
|
|
13243
|
+
bias: typing.Optional[jsii.Number] = None,
|
|
13244
|
+
coordinates: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSetGroup.CoordinatesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
13245
|
+
local_zone_group: typing.Optional[builtins.str] = None,
|
|
13246
|
+
) -> None:
|
|
13247
|
+
"""Type checking stubs"""
|
|
13248
|
+
pass
|
|
13249
|
+
|
|
12726
13250
|
def _typecheckingstub__11ff291a729fd95a26a222e98e883239191c114a9dd6e70516ac2fe433d4b95d(
|
|
12727
13251
|
*,
|
|
12728
13252
|
name: builtins.str,
|
|
@@ -12731,6 +13255,7 @@ def _typecheckingstub__11ff291a729fd95a26a222e98e883239191c114a9dd6e70516ac2fe43
|
|
|
12731
13255
|
cidr_routing_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSetGroup.CidrRoutingConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12732
13256
|
failover: typing.Optional[builtins.str] = None,
|
|
12733
13257
|
geo_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSetGroup.GeoLocationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
13258
|
+
geo_proximity_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSetGroup.GeoProximityLocationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12734
13259
|
health_check_id: typing.Optional[builtins.str] = None,
|
|
12735
13260
|
hosted_zone_id: typing.Optional[builtins.str] = None,
|
|
12736
13261
|
hosted_zone_name: typing.Optional[builtins.str] = None,
|
|
@@ -12763,6 +13288,7 @@ def _typecheckingstub__07806684fd0bcb683322d42ae67181582216fa4e1371a7133012bf489
|
|
|
12763
13288
|
comment: typing.Optional[builtins.str] = None,
|
|
12764
13289
|
failover: typing.Optional[builtins.str] = None,
|
|
12765
13290
|
geo_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSet.GeoLocationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
13291
|
+
geo_proximity_location: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRecordSet.GeoProximityLocationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12766
13292
|
health_check_id: typing.Optional[builtins.str] = None,
|
|
12767
13293
|
hosted_zone_id: typing.Optional[builtins.str] = None,
|
|
12768
13294
|
hosted_zone_name: typing.Optional[builtins.str] = None,
|