1+ locals {
2+ pycon_web_domain = local. is_prod ? " admin.pycon.it" : " ${ terraform . workspace } -admin.pycon.it"
3+ pretix_web_domain = local. is_prod ? " tickets.pycon.it" : " ${ terraform . workspace } -tickets.pycon.it"
4+ }
5+
6+ data "aws_cloudfront_origin_request_policy" "all_viewer" {
7+ name = " Managed-AllViewer"
8+ }
9+
110data "aws_cloudfront_cache_policy" "caching_disabled" {
211 name = " Managed-CachingDisabled"
312}
413
5- data "aws_cloudfront_origin_request_policy" "all_viewer_except_host_header" {
6- name = " Managed-AllViewerExceptHostHeader"
14+ data "aws_acm_certificate" "cert" {
15+ domain = " *.pycon.it"
16+ statuses = [" ISSUED" ]
17+ provider = aws. us
718}
819
920resource "aws_cloudfront_distribution" "application" {
1021 enabled = true
1122 is_ipv6_enabled = true
12- comment = " ${ terraform . workspace } - ${ var . application } "
23+ comment = " ${ terraform . workspace } server "
1324 wait_for_deployment = false
14- aliases = [var . domain ]
25+ aliases = [
26+ local . pycon_web_domain ,
27+ local . pretix_web_domain
28+ ]
1529
1630 origin {
17- domain_name = var . origin_url
31+ domain_name = aws_eip . server . public_dns
1832 origin_id = " default"
1933
2034 custom_origin_config {
21- origin_protocol_policy = " https -only"
35+ origin_protocol_policy = " http -only"
2236 http_port = " 80"
2337 https_port = " 443"
2438 origin_ssl_protocols = [" TLSv1" ]
@@ -29,7 +43,7 @@ resource "aws_cloudfront_distribution" "application" {
2943 cloudfront_default_certificate = false
3044 minimum_protocol_version = " TLSv1"
3145 ssl_support_method = " sni-only"
32- acm_certificate_arn = var . certificate_arn
46+ acm_certificate_arn = data . aws_acm_certificate . cert . arn
3347 }
3448
3549 default_cache_behavior {
@@ -38,16 +52,10 @@ resource "aws_cloudfront_distribution" "application" {
3852 target_origin_id = " default"
3953
4054 cache_policy_id = data. aws_cloudfront_cache_policy . caching_disabled . id
41- origin_request_policy_id = data. aws_cloudfront_origin_request_policy . all_viewer_except_host_header . id
55+ origin_request_policy_id = data. aws_cloudfront_origin_request_policy . all_viewer . id
4256
4357 viewer_protocol_policy = " redirect-to-https"
4458 compress = true
45-
46- lambda_function_association {
47- event_type = " viewer-request"
48- lambda_arn = var. forward_host_header_lambda_arn
49- include_body = false
50- }
5159 }
5260
5361 restrictions {
0 commit comments