Skip to main content

The CDK Construct Library for AWS Route53 Alias Targets

Project description

Route53 Alias Record Targets for the CDK Route53 Library

---

cdk-constructs: Stable


This library contains Route53 Alias Record targets for:

  • API Gateway custom domains

    # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
    route53.ARecord(self, "AliasRecord",
        zone=zone,
        target=route53.RecordTarget.from_alias(alias.ApiGateway(rest_api))
    )
    
  • API Gateway V2 custom domains

    # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
    route53.ARecord(self, "AliasRecord",
        zone=zone,
        target=route53.RecordTarget.from_alias(alias.ApiGatewayv2DomainProperties(domain_name.regional_domain_name, domain_name.regional_hosted_zone_id))
    )
    
  • CloudFront distributions

    # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
    route53.ARecord(self, "AliasRecord",
        zone=zone,
        target=route53.RecordTarget.from_alias(alias.CloudFrontTarget(distribution))
    )
    
  • ELBv2 load balancers

    # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
    route53.ARecord(self, "AliasRecord",
        zone=zone,
        target=route53.RecordTarget.from_alias(alias.LoadBalancerTarget(elbv2))
    )
    
  • Classic load balancers

    # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
    route53.ARecord(self, "AliasRecord",
        zone=zone,
        target=route53.RecordTarget.from_alias(alias.ClassicLoadBalancerTarget(elb))
    )
    

Important: Based on AWS documentation, all alias record in Route 53 that points to a Elastic Load Balancer will always include dualstack for the DNSName to resolve IPv4/IPv6 addresses (without dualstack IPv6 will not resolve).

For example, if the Amazon-provided DNS for the load balancer is ALB-xxxxxxx.us-west-2.elb.amazonaws.com, CDK will create alias target in Route 53 will be dualstack.ALB-xxxxxxx.us-west-2.elb.amazonaws.com.

  • GlobalAccelerator

    # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
    route53.ARecord(stack, "AliasRecord",
        zone=zone,
        target=route53.RecordTarget.from_alias(targets.GlobalAcceleratorTarget(accelerator))
    )
    

Important: If you use GlobalAcceleratorDomainTarget, passing a string rather than an instance of IAccelerator, ensure that the string is a valid domain name of an existing Global Accelerator instance. See the documentation on DNS addressing with Global Accelerator for more info.

  • InterfaceVpcEndpoints

Important: Based on the CFN docs for VPCEndpoints - see here - the attributes returned for DnsEntries in CloudFormation is a combination of the hosted zone ID and the DNS name. The entries are ordered as follows: regional public DNS, zonal public DNS, private DNS, and wildcard DNS. This order is not enforced for AWS Marketplace services, and therefore this CDK construct is ONLY guaranteed to work with non-marketplace services.

# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
route53.ARecord(stack, "AliasRecord",
    zone=zone,
    target=route53.RecordTarget.from_alias(alias.InterfaceVpcEndpointTarget(interface_vpc_endpoint))
)
  • S3 Bucket Website:

Important: The Bucket name must strictly match the full DNS name. See the Developer Guide for more info.

# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
[recordName, domainName] = ["www", "example.com"]

bucket_website = Bucket(self, "BucketWebsite",
    bucket_name=[record_name, domain_name].join("."), # www.example.com
    public_read_access=True,
    website_index_document="index.html"
)

zone = HostedZone.from_lookup(self, "Zone", domain_name=domain_name)# example.com

route53.ARecord(self, "AliasRecord",
    zone=zone,
    record_name=record_name, # www
    target=route53.RecordTarget.from_alias(alias.BucketWebsiteTarget(bucket))
)
  • User pool domain

    # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
    route53.ARecord(self, "AliasRecord",
        zone=zone,
        target=route53.RecordTarget.from_alias(alias.UserPoolDomainTarget(domain))
    )
    
  • Route 53 record

    # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
    route53.ARecord(self, "AliasRecord",
        zone=zone,
        target=route53.RecordTarget.from_alias(targets.Route53RecordTarget(record))
    )
    

See the documentation of @aws-cdk/aws-route53 for more information.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aws-cdk.aws-route53-targets-1.109.0.tar.gz (36.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aws_cdk.aws_route53_targets-1.109.0-py3-none-any.whl (34.7 kB view details)

Uploaded Python 3

File details

Details for the file aws-cdk.aws-route53-targets-1.109.0.tar.gz.

File metadata

  • Download URL: aws-cdk.aws-route53-targets-1.109.0.tar.gz
  • Upload date:
  • Size: 36.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.6.5

File hashes

Hashes for aws-cdk.aws-route53-targets-1.109.0.tar.gz
Algorithm Hash digest
SHA256 d2c5c221a6ba96cd046e532dea3042bf01fee8db58cc1a12cdb8d39736b4a5de
MD5 68f0fe89046472e6ad2cdaea2f63cc95
BLAKE2b-256 61eb02db7636d0dc22995ecad2efac80a96348023ea50adf0b05e7bf295ef20d

See more details on using hashes here.

File details

Details for the file aws_cdk.aws_route53_targets-1.109.0-py3-none-any.whl.

File metadata

  • Download URL: aws_cdk.aws_route53_targets-1.109.0-py3-none-any.whl
  • Upload date:
  • Size: 34.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.6.5

File hashes

Hashes for aws_cdk.aws_route53_targets-1.109.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e81bb1e34c718cab24b3065e98deaf242fcb5a4781795f16759fb4e618400ca0
MD5 9a097828bec1a70b4d6afca1893e59a4
BLAKE2b-256 ddb147378480540d6ab7ac252b5ac6382c4075a4bdcb510476404f3f7836177c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page