{ "version": 4, "terraform_version": "0.12.26", "serial": 95, "lineage": "cda52006-90fc-4aec-a630-42e69057b365", "outputs": { "cf_arn": { "value": "arn:aws:cloudfront::745437999005:distribution/E2IHXIMPI3MZ2X", "type": "string" }, "cf_domain_name": { "value": "d244ranky0ff54.cloudfront.net", "type": "string" }, "cf_etag": { "value": "E2SEL7AYXF1CKS", "type": "string" }, "cf_hosted_zone_id": { "value": "Z2FDTNDATAQYW2", "type": "string" }, "cf_id": { "value": "E2IHXIMPI3MZ2X", "type": "string" }, "cf_status": { "value": "Deployed", "type": "string" }, "s3_bucket": { "value": "prod-panaetius-blog-origin", "type": "string" }, "s3_bucket_domain_name": { "value": "prod-panaetius-blog-origin.s3.eu-west-1.amazonaws.com", "type": "string" } }, "resources": [ { "module": "module.cloudfront_s3_cdn", "mode": "data", "type": "aws_iam_policy_document", "name": "origin", "provider": "provider.aws", "instances": [ { "schema_version": 0, "attributes": { "id": "1149999058", "json": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"S3GetObjectForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:GetObject\",\n \"Resource\": \"arn:aws:s3:::${bucket_name}${origin_path}*\",\n \"Principal\": {\n \"AWS\": \"${cloudfront_origin_access_identity_iam_arn}\"\n }\n },\n {\n \"Sid\": \"S3ListBucketForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:ListBucket\",\n \"Resource\": \"arn:aws:s3:::${bucket_name}\",\n \"Principal\": {\n \"AWS\": \"${cloudfront_origin_access_identity_iam_arn}\"\n }\n }\n ]\n}", "override_json": "{}", "policy_id": null, "source_json": null, "statement": [ { "actions": [ "s3:GetObject" ], "condition": [], "effect": "Allow", "not_actions": [], "not_principals": [], "not_resources": [], "principals": [ { "identifiers": [ "${cloudfront_origin_access_identity_iam_arn}" ], "type": "AWS" } ], "resources": [ "arn:aws:s3:::${bucket_name}${origin_path}*" ], "sid": "S3GetObjectForCloudFront" }, { "actions": [ "s3:ListBucket" ], "condition": [], "effect": "Allow", "not_actions": [], "not_principals": [], "not_resources": [], "principals": [ { "identifiers": [ "${cloudfront_origin_access_identity_iam_arn}" ], "type": "AWS" } ], "resources": [ "arn:aws:s3:::${bucket_name}" ], "sid": "S3ListBucketForCloudFront" } ], "version": "2012-10-17" } } ] }, { "module": "module.cloudfront_s3_cdn", "mode": "data", "type": "aws_iam_policy_document", "name": "origin_website", "provider": "provider.aws", "instances": [ { "schema_version": 0, "attributes": { "id": "239689126", "json": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"S3GetObjectForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:GetObject\",\n \"Resource\": \"arn:aws:s3:::${bucket_name}${origin_path}*\",\n \"Principal\": {\n \"AWS\": \"*\"\n }\n }\n ]\n}", "override_json": "{}", "policy_id": null, "source_json": null, "statement": [ { "actions": [ "s3:GetObject" ], "condition": [], "effect": "Allow", "not_actions": [], "not_principals": [], "not_resources": [], "principals": [ { "identifiers": [ "*" ], "type": "AWS" } ], "resources": [ "arn:aws:s3:::${bucket_name}${origin_path}*" ], "sid": "S3GetObjectForCloudFront" } ], "version": "2012-10-17" } } ] }, { "module": "module.cloudfront_s3_cdn", "mode": "data", "type": "aws_region", "name": "current", "provider": "provider.aws", "instances": [ { "schema_version": 0, "attributes": { "current": null, "description": "Europe (Ireland)", "endpoint": "ec2.eu-west-1.amazonaws.com", "id": "eu-west-1", "name": "eu-west-1" } } ] }, { "module": "module.cloudfront_s3_cdn.module.dns", "mode": "data", "type": "aws_route53_zone", "name": "default", "each": "list", "provider": "provider.aws", "instances": [ { "index_key": 0, "schema_version": 0, "attributes": { "caller_reference": "321439A9-2EB4-9C82-858E-22E353E3CC06", "comment": "blog", "id": "Z05316671VABVSMAAF1RC", "linked_service_description": null, "linked_service_principal": null, "name": "panaetius.io.", "name_servers": [ "ns-1774.awsdns-29.co.uk", "ns-667.awsdns-19.net", "ns-1261.awsdns-29.org", "ns-401.awsdns-50.com" ], "private_zone": false, "resource_record_set_count": 5, "tags": {}, "vpc_id": null, "zone_id": "Z05316671VABVSMAAF1RC" } } ] }, { "module": "module.cloudfront_s3_cdn", "mode": "data", "type": "aws_s3_bucket", "name": "selected", "provider": "provider.aws", "instances": [ { "schema_version": 0, "attributes": { "arn": "arn:aws:s3:::prod-panaetius-blog-origin", "bucket": "prod-panaetius-blog-origin", "bucket_domain_name": "prod-panaetius-blog-origin.s3.amazonaws.com", "bucket_regional_domain_name": "prod-panaetius-blog-origin.s3.eu-west-1.amazonaws.com", "hosted_zone_id": "Z1BKCTXD74EZPE", "id": "prod-panaetius-blog-origin", "region": "eu-west-1", "website_domain": null, "website_endpoint": null } } ] }, { "module": "module.cloudfront_s3_cdn", "mode": "data", "type": "template_file", "name": "default", "provider": "provider.template", "instances": [ { "schema_version": 0, "attributes": { "filename": null, "id": "bf2245baaea68e5cc89448356e64936cbd79d0706457d884cdd7badc903719e8", "rendered": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"S3GetObjectForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:GetObject\",\n \"Resource\": \"arn:aws:s3:::prod-panaetius-blog-origin/*\",\n \"Principal\": {\n \"AWS\": \"arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E21A7YWJ1RT3K5\"\n }\n },\n {\n \"Sid\": \"S3ListBucketForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:ListBucket\",\n \"Resource\": \"arn:aws:s3:::prod-panaetius-blog-origin\",\n \"Principal\": {\n \"AWS\": \"arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E21A7YWJ1RT3K5\"\n }\n }\n ]\n}", "template": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"S3GetObjectForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:GetObject\",\n \"Resource\": \"arn:aws:s3:::${bucket_name}${origin_path}*\",\n \"Principal\": {\n \"AWS\": \"${cloudfront_origin_access_identity_iam_arn}\"\n }\n },\n {\n \"Sid\": \"S3ListBucketForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:ListBucket\",\n \"Resource\": \"arn:aws:s3:::${bucket_name}\",\n \"Principal\": {\n \"AWS\": \"${cloudfront_origin_access_identity_iam_arn}\"\n }\n }\n ]\n}", "vars": { "bucket_name": "prod-panaetius-blog-origin", "cloudfront_origin_access_identity_iam_arn": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E21A7YWJ1RT3K5", "origin_path": "/" } } } ] }, { "module": "module.cloudfront_s3_cdn", "mode": "managed", "type": "aws_cloudfront_distribution", "name": "default", "provider": "provider.aws", "instances": [ { "schema_version": 1, "attributes": { "active_trusted_signers": { "enabled": "false", "items.#": "0" }, "aliases": [ "panaetius.io" ], "arn": "arn:aws:cloudfront::745437999005:distribution/E2IHXIMPI3MZ2X", "cache_behavior": [], "caller_reference": "terraform-20200713232651089800000002", "comment": "Managed by Terraform", "custom_error_response": [], "default_cache_behavior": [ { "allowed_methods": [ "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT" ], "cached_methods": [ "GET", "HEAD" ], "compress": false, "default_ttl": 60, "field_level_encryption_id": "", "forwarded_values": [ { "cookies": [ { "forward": "none", "whitelisted_names": [] } ], "headers": [ "Access-Control-Request-Headers", "Access-Control-Request-Method", "Origin" ], "query_string": false, "query_string_cache_keys": [] } ], "lambda_function_association": [], "max_ttl": 31536000, "min_ttl": 0, "smooth_streaming": false, "target_origin_id": "prod-panaetius-blog", "trusted_signers": [], "viewer_protocol_policy": "redirect-to-https" } ], "default_root_object": "index.html", "domain_name": "d244ranky0ff54.cloudfront.net", "enabled": true, "etag": "E2SEL7AYXF1CKS", "hosted_zone_id": "Z2FDTNDATAQYW2", "http_version": "http2", "id": "E2IHXIMPI3MZ2X", "in_progress_validation_batches": 0, "is_ipv6_enabled": true, "last_modified_time": "2020-07-15 00:18:34.684 +0000 UTC", "logging_config": [ { "bucket": "prod-panaetius-blog-logs.s3.amazonaws.com", "include_cookies": false, "prefix": "" } ], "ordered_cache_behavior": [], "origin": [ { "custom_header": [], "custom_origin_config": [], "domain_name": "prod-panaetius-blog-origin.s3.eu-west-1.amazonaws.com", "origin_id": "prod-panaetius-blog", "origin_path": "", "s3_origin_config": [ { "origin_access_identity": "origin-access-identity/cloudfront/E21A7YWJ1RT3K5" } ] } ], "origin_group": [], "price_class": "PriceClass_100", "restrictions": [ { "geo_restriction": [ { "locations": [], "restriction_type": "none" } ] } ], "retain_on_delete": false, "status": "Deployed", "tags": { "Description": "terraform resources to host the blog", "Name": "prod-panaetius-blog", "Project": "panaetius-blog", "Stage": "prod" }, "viewer_certificate": [ { "acm_certificate_arn": "arn:aws:acm:us-east-1:745437999005:certificate/60af49f0-07bb-4680-8f5b-3c9a33f756e5", "cloudfront_default_certificate": false, "iam_certificate_id": "", "minimum_protocol_version": "TLSv1", "ssl_support_method": "sni-only" } ], "wait_for_deployment": true, "web_acl_id": "" }, "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjEifQ==", "dependencies": [ "module.cloudfront_s3_cdn.aws_cloudfront_origin_access_identity.default", "module.cloudfront_s3_cdn.aws_s3_bucket.origin", "module.cloudfront_s3_cdn.module.logs.aws_s3_bucket.default" ] } ] }, { "module": "module.cloudfront_s3_cdn", "mode": "managed", "type": "aws_cloudfront_origin_access_identity", "name": "default", "provider": "provider.aws", "instances": [ { "schema_version": 0, "attributes": { "caller_reference": "terraform-20200713232645930800000001", "cloudfront_access_identity_path": "origin-access-identity/cloudfront/E21A7YWJ1RT3K5", "comment": "prod-panaetius-blog", "etag": "EESE0U5KF261", "iam_arn": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E21A7YWJ1RT3K5", "id": "E21A7YWJ1RT3K5", "s3_canonical_user_id": "2d7779400635ec843efe9b677769fc4f82b0d384408cf22382bf3a90540502e09e75d1346e7105b4da159515b229f39b" }, "private": "bnVsbA==" } ] }, { "module": "module.cloudfront_s3_cdn.module.dns", "mode": "managed", "type": "aws_route53_record", "name": "default", "each": "list", "provider": "provider.aws", "instances": [ { "index_key": 0, "schema_version": 2, "attributes": { "alias": [ { "evaluate_target_health": false, "name": "d244ranky0ff54.cloudfront.net", "zone_id": "Z2FDTNDATAQYW2" } ], "allow_overwrite": null, "failover_routing_policy": [], "fqdn": "panaetius.io", "geolocation_routing_policy": [], "health_check_id": "", "id": "Z05316671VABVSMAAF1RC_panaetius.io_A", "latency_routing_policy": [], "multivalue_answer_routing_policy": null, "name": "panaetius.io", "records": [], "set_identifier": "", "ttl": 0, "type": "A", "weighted_routing_policy": [], "zone_id": "Z05316671VABVSMAAF1RC" }, "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==", "dependencies": [ "module.cloudfront_s3_cdn.aws_cloudfront_distribution.default", "module.cloudfront_s3_cdn.aws_cloudfront_origin_access_identity.default", "module.cloudfront_s3_cdn.aws_s3_bucket.origin", "module.cloudfront_s3_cdn.module.logs.aws_s3_bucket.default" ] } ] }, { "module": "module.cloudfront_s3_cdn.module.dns", "mode": "managed", "type": "aws_route53_record", "name": "ipv6", "each": "list", "provider": "provider.aws", "instances": [ { "index_key": 0, "schema_version": 2, "attributes": { "alias": [ { "evaluate_target_health": false, "name": "d244ranky0ff54.cloudfront.net", "zone_id": "Z2FDTNDATAQYW2" } ], "allow_overwrite": null, "failover_routing_policy": [], "fqdn": "panaetius.io", "geolocation_routing_policy": [], "health_check_id": "", "id": "Z05316671VABVSMAAF1RC_panaetius.io_AAAA", "latency_routing_policy": [], "multivalue_answer_routing_policy": null, "name": "panaetius.io", "records": [], "set_identifier": "", "ttl": 0, "type": "AAAA", "weighted_routing_policy": [], "zone_id": "Z05316671VABVSMAAF1RC" }, "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==", "dependencies": [ "module.cloudfront_s3_cdn.aws_cloudfront_distribution.default", "module.cloudfront_s3_cdn.aws_cloudfront_origin_access_identity.default", "module.cloudfront_s3_cdn.aws_s3_bucket.origin", "module.cloudfront_s3_cdn.module.logs.aws_s3_bucket.default" ] } ] }, { "module": "module.cloudfront_s3_cdn.module.logs", "mode": "managed", "type": "aws_s3_bucket", "name": "default", "each": "list", "provider": "provider.aws", "instances": [ { "index_key": 0, "schema_version": 0, "attributes": { "acceleration_status": "", "acl": "log-delivery-write", "arn": "arn:aws:s3:::prod-panaetius-blog-logs", "bucket": "prod-panaetius-blog-logs", "bucket_domain_name": "prod-panaetius-blog-logs.s3.amazonaws.com", "bucket_prefix": null, "bucket_regional_domain_name": "prod-panaetius-blog-logs.s3.eu-west-1.amazonaws.com", "cors_rule": [], "force_destroy": true, "grant": [], "hosted_zone_id": "Z1BKCTXD74EZPE", "id": "prod-panaetius-blog-logs", "lifecycle_rule": [ { "abort_incomplete_multipart_upload_days": 0, "enabled": true, "expiration": [ { "date": "", "days": 90, "expired_object_delete_marker": false } ], "id": "prod-panaetius-blog-logs", "noncurrent_version_expiration": [ { "days": 90 } ], "noncurrent_version_transition": [ { "days": 30, "storage_class": "GLACIER" } ], "prefix": "", "tags": {}, "transition": [ { "date": "", "days": 30, "storage_class": "STANDARD_IA" }, { "date": "", "days": 60, "storage_class": "GLACIER" } ] } ], "logging": [], "object_lock_configuration": [], "policy": "", "region": "eu-west-1", "replication_configuration": [], "request_payer": "BucketOwner", "server_side_encryption_configuration": [ { "rule": [ { "apply_server_side_encryption_by_default": [ { "kms_master_key_id": "", "sse_algorithm": "AES256" } ] } ] } ], "tags": { "Attributes": "logs", "Description": "terraform resources to host the blog", "Name": "prod-panaetius-blog-logs", "Project": "panaetius-blog", "Stage": "prod" }, "versioning": [ { "enabled": false, "mfa_delete": false } ], "website": [], "website_domain": null, "website_endpoint": null }, "private": "bnVsbA==" } ] }, { "module": "module.cloudfront_s3_cdn", "mode": "managed", "type": "aws_s3_bucket", "name": "origin", "each": "list", "provider": "provider.aws", "instances": [ { "index_key": 0, "schema_version": 0, "attributes": { "acceleration_status": "", "acl": "private", "arn": "arn:aws:s3:::prod-panaetius-blog-origin", "bucket": "prod-panaetius-blog-origin", "bucket_domain_name": "prod-panaetius-blog-origin.s3.amazonaws.com", "bucket_prefix": null, "bucket_regional_domain_name": "prod-panaetius-blog-origin.s3.eu-west-1.amazonaws.com", "cors_rule": [ { "allowed_headers": [ "*" ], "allowed_methods": [ "GET", "HEAD", "PUT", "POST" ], "allowed_origins": [ "*.panaetius.io", "panaetius.io" ], "expose_headers": [ "ETag" ], "max_age_seconds": 3600 } ], "force_destroy": true, "grant": [], "hosted_zone_id": "Z1BKCTXD74EZPE", "id": "prod-panaetius-blog-origin", "lifecycle_rule": [], "logging": [], "object_lock_configuration": [], "policy": null, "region": "eu-west-1", "replication_configuration": [], "request_payer": "BucketOwner", "server_side_encryption_configuration": [], "tags": { "Attributes": "origin", "Description": "terraform resources to host the blog", "Name": "prod-panaetius-blog-origin", "Project": "panaetius-blog", "Stage": "prod" }, "versioning": [ { "enabled": false, "mfa_delete": false } ], "website": [], "website_domain": null, "website_endpoint": null }, "private": "bnVsbA==" } ] }, { "mode": "managed", "type": "aws_s3_bucket_object", "name": "index", "provider": "provider.aws", "instances": [ { "schema_version": 0, "attributes": { "acl": "public-read", "bucket": "prod-panaetius-blog-origin", "cache_control": "", "content": null, "content_base64": null, "content_disposition": "", "content_encoding": "", "content_language": "", "content_type": "text/html", "etag": "83350948ee374f30e5513497c69c0fe5", "force_destroy": false, "id": "index.html", "key": "index.html", "kms_key_id": null, "metadata": {}, "object_lock_legal_hold_status": "", "object_lock_mode": "", "object_lock_retain_until_date": "", "server_side_encryption": "", "source": "./test/index.html", "storage_class": "STANDARD", "tags": {}, "version_id": "", "website_redirect": "" }, "private": "bnVsbA==", "dependencies": [ "module.cloudfront_s3_cdn.aws_s3_bucket.origin" ] } ] }, { "module": "module.cloudfront_s3_cdn", "mode": "managed", "type": "aws_s3_bucket_policy", "name": "default", "each": "list", "provider": "provider.aws", "instances": [ { "index_key": 0, "schema_version": 0, "attributes": { "bucket": "prod-panaetius-blog-origin", "id": "prod-panaetius-blog-origin", "policy": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"S3GetObjectForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:GetObject\",\n \"Resource\": \"arn:aws:s3:::prod-panaetius-blog-origin/*\",\n \"Principal\": {\n \"AWS\": \"arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E21A7YWJ1RT3K5\"\n }\n },\n {\n \"Sid\": \"S3ListBucketForCloudFront\",\n \"Effect\": \"Allow\",\n \"Action\": \"s3:ListBucket\",\n \"Resource\": \"arn:aws:s3:::prod-panaetius-blog-origin\",\n \"Principal\": {\n \"AWS\": \"arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E21A7YWJ1RT3K5\"\n }\n }\n ]\n}" }, "private": "bnVsbA==", "dependencies": [ "module.cloudfront_s3_cdn.aws_s3_bucket.origin" ] } ] } ] }