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 réponse
0
Réponse acceptée

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

Now I understand what they were doing.

profile picture
wz2b
répondu il y a un an

Vous n'êtes pas connecté. Se connecter pour publier une réponse.

Une bonne réponse répond clairement à la question, contient des commentaires constructifs et encourage le développement professionnel de la personne qui pose la question.

Instructions pour répondre aux questions