I’m creating a resource and need to get the gateway address for the CDN
How can I get DomainName?
Type: AWS::CloudFront::Distribution
Properties:
DistributionConfig:
Origins:
- DomainName: address.execute-api.us-east-1.amazonaws.com
I’m creating a resource and need to get the gateway address for the CDN
How can I get DomainName?
Type: AWS::CloudFront::Distribution
Properties:
DistributionConfig:
Origins:
- DomainName: address.execute-api.us-east-1.amazonaws.com
First, you would need to add an output for the distribution to the Outputs
section of your serverless.yml
.
Then after deploying you can run sls info --verbose
and you’ll see the CloudFront Distribution URL in the CLI.
You should be able to reconstruct the hostname using Serverless variables and CloudFormation. Something like this will probably work.
Type: AWS::CloudFront::Distribution
Properties:
DistributionConfig:
Origins:
- DomainName: { “Fn::Join” : [“”, [ “”, { “Ref” : “ApiGatewayRestApi” }, “.execute-api.${self:custom.region}.amazonaws.com” ] ] }
Note: This is untested and may contain bugs
I use something similar to pass the API GW URL as an environment variable to my Lambda. There’s a better write up here.