Why do the CDK APIGWV2/Route53 docs say generate an A record rather than CNAME?

0

Why in the example from @aws-cdk-aws-route53-targets does the apigwv2 sample generate an A record rather than a CNAME record?

/* Example from @aws-cdk-aws-route53-targets, doesn't work - makes CDK hang */
import * as apigwv2 from '@aws-cdk/aws-apigatewayv2';

declare const zone: route53.HostedZone;
declare const domainName: apigwv2.DomainName;

new route53.ARecord(this, 'AliasRecord', {
    zone,
    target: route53.RecordTarget.fromAlias(
        new targets.ApiGatewayv2DomainProperties(domainName.regionalDomainName, domainName.regionalHostedZoneId)
    )
});

What I have always done (manually) is create a CNAME record to the API Gateway domain name listed under API Gateway / Custom Domain names in the console. I am not following this example or why you would want it to be an ARecord.

I changed the above code to this for my own and it seems to work:

/* my version, which works */
return new CnameRecord(this, `autofrog-phone-api-cname`, {
    recordName: 'phone',
    zone: this.zone,
    domainName: this.apiGatewayDomainName.regionalDomainName, /* instance of @aws-cdk/aws-apigatewayv2-alpha:IDomain */
    deleteExisting: false,
    comment: "added by cdk"
});
1 回答
0
已接受的回答

I didn't know what an Alias record was until a few minutes ago.

Now I understand what they were doing.

profile picture
wz2b
已回答 1 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则