Config Jets Deploy Lambda CloudFront

Reference

The table below covers each setting. Each option is configured with config.OPTION. The config. portion is not shown for conciseness. IE: logger.level vs config.logger.level.

Name Default Description
lambda.cloudfront.cert.arn nil ACM Cert ARN. Required when using lambda.cloudfront.enable = true. Must be in us-east-1 since it’s for CloudFront. This helper method is useful: acm_cert_arn(domain: "example.com", region: "us-east-1")
lambda.cloudfront.cert.minimum_protocol_version TLSv1.2_2021 The TLSv1.2_2021 has been the Cloudfront console default as of 12/24/23.
lambda.cloudfront.cert.ssl_support_method sni-only The distribution accepts HTTPS connections from only viewers that support server name indication (SNI). This is recommended. Most browsers and clients support SNI.
lambda.cloudfront.default_cache_behavior.allow_methods %w[HEAD DELETE POST GET OPTIONS PUT PATCH] Allow methods for the distribution.
lambda.cloudfront.default_cache_behavior.properties {} Default cache behavior properties to merge. Allows overriding the propertes in a general way.
lambda.cloudfront.default_cache_behavior.viewer_protocol_policy redirect-to-https How CloudFront should handle http requests. The default is to redirect http to https. IE: A https upgrade.
lambda.cloudfront.route53.comment “Jets managed CloudFront distribution DNS record” Route53 Record comment.
lambda.cloudfront.route53.enable false Enables creation of the Route53 DNS Records that match the CloudFront aliases.
lambda.cloudfront.route53.hosted_zone_id nil Route53 Hosted Zone ID. This takes higher precedence over hosted_zone_name.
lambda.cloudfront.route53.hosted_zone_name nil Route53 Hosted Zone ID. Allows you to specify the config in a human-readable way. Note route53.domain also works as a convenience.
lambda.cloudfront.route53.properties {} Route53 DNS record properties to merge. Allows overriding the propertes in a general way.
lambda.cloudfront.route53.ttl 60 Route53 DNS TTL. This is only used when lambda.cloudfront.route53.use_alias = false and a CNAME is created instead.
lambda.cloudfront.route53.use_alias true Use an A Record with the “Alias” Route53 feature. This allows APEX domains to work with CloudFront distributions.
lambda.cloudfront.enable false Enables CloudFront Distribution in front of the Lambda URL. See: Lambda URL CloudFront Distribution
lambda.cloudfront.http_version http2 HTTP version that you want viewers to use to communicate with CloudFront.
lambda.cloudfront.ipv6_enabled true Enables IPV6 also for CloudFront.
lambda.cloudfront.origin.custom_origin_config { HTTPSPort: 443, OriginProtocolPolicy: “https-only” } Custom origin config.
lambda.cloudfront.origin.properties {} Origin properties to merge. Allows overriding the propertes in a general way.
lambda.cloudfront.origin.viewer_protocol_policy redirect-to-https How CloudFront should handle http requests. The default is to redirect http to https. IE: A https upgrade.
lambda.cloudfront.price_class PriceClass_100 Price class you want to pay for CloudFront. There’s PriceClass_100, PriceClass_200, PriceClass_All. Note, since the lower price classes use less regions, they deploy faster.
lambda.cloudfront.properties {} Properties to merge and override CloudFront Distribution
lambda.enable true Enables Lambda Function URL for the Controller Lambda Function.

See Full Config Reference