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年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ