cloudfront-cdn
cloudposse/cloudfront-cdn/aws
Terraform Module that implements a CloudFront Distribution (CDN) for a custom origin.
Terraform Module that implements a CloudFront Distribution (CDN) for a custom origin (e.g. website) and ships logs to a bucket. If you need to accelerate an S3 bucket, we suggest using terraform-aws-cloudfront-s3-cdn instead. > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Posse uses atmos to easily orchestrate multiple environments using Terraform. > Works with Github Actions, Atlantis, or Spacelift. > > > Watch demo of using Atmos with Terraform > > Example of running atmos to manage infrastructure from our Quick Start tutorial. > Usage For a complete example, see examples/complete. For automated tests of the complete example using bats and Terratest (which tests and deploys the example on AWS), see test. ```hcl module "cdn" { source = "cloudposse/cloudfront-cdn/aws" # Cloud Posse rec
| Name | Type | Description | Default |
|---|---|---|---|
| web_acl_id | string | ID of the AWS WAF web ACL that is associated with the distribution | "" |
| forward_cookies | string | Specifies whether you want CloudFront to forward cookies to the origin. Valid op | "none" |
| geo_restriction_type | string | Method that use to restrict distribution of your content by country: `none`, `wh | "none" |
| labels_as_tags | set(string) | Set of labels (ID elements) to include as tags in the `tags` output. Default is | [
"default"
] |
| label_key_case | string | Controls the letter case of the `tags` keys (label names) for tags generated by | null |
| origin_http_port | number | The HTTP port the custom origin listens on | "80" |
| origin_protocol_policy | string | The origin protocol policy to apply to your origin. One of http-only, https-only | "match-viewer" |
| cached_methods | list(string) | List of cached methods (e.g. ` GET, PUT, POST, DELETE, HEAD`) | [
"GET",
"HEAD"
] |
| response_headers_policy_id | string | The identifier for a response headers policy | "" |
| parent_zone_name | string | Name of the hosted zone to contain this record (or specify `parent_zone_id`) | "" |
| http_version | string | The maximum HTTP version to support on the distribution. Allowed values are http | "http2" |
| dns_aliases_enabled | bool | Set to false to prevent dns records for aliases from being created | true |
| default_ttl | number | Default amount of time (in seconds) that an object is in a CloudFront cache | 60 |
| origin_type | string | The type of origin configuration to use. Valid values are 'custom' or 's3'. | "custom" |
| additional_tag_map | map(string) | Additional key-value pairs to add to each map in `tags_as_list_of_maps`. Not add | {} |
| origin_shield | object({ enabled = optiona | The CloudFront Origin Shield settings | null |
| is_ipv6_enabled | bool | State of CloudFront IPv6 | true |
| log_bucket_fqdn | string | Optional fqdn of logging bucket, if not supplied a bucket will be generated. | "" |
| log_standard_transition_days | number | Number of days to persist in the standard storage tier before moving to the glac | 30 |
| viewer_minimum_protocol_version | string | The minimum version of the SSL protocol that you want CloudFront to use for HTTP | "TLSv1.2_2021" |
| … and 10 more inputs | |||
cf_arn — ARN of CloudFront distributioncf_domain_name — Domain name corresponding to the distributioncf_hosted_zone_id — CloudFront Route 53 Zone IDcf_origin_access_identity — A shortcut to the full path for the origin access identity to use in CloudFrontlogs — Logs resourcecf_id — ID of CloudFront distributioncf_aliases — Extra CNAMEs of AWS CloudFrontcf_status — Current status of the distributioncf_etag — Current version of the distribution's informationAzure landing zones Terraform module
Terraform supermodule for the Terraform platform engineering for Azure
Terraform module to deploy landing zone subscriptions (and much more) in Azure
Terraform Module to define a consistent naming convention by (namespace, stage,