mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
64 lines
No EOL
1.9 KiB
HCL
64 lines
No EOL
1.9 KiB
HCL
############################################
|
|
# Load Shared Terraform State
|
|
############################################
|
|
data "terraform_remote_state" "shared" {
|
|
backend = "s3"
|
|
config = {
|
|
bucket = "assessment-model-terraform-state"
|
|
key = "env:/${var.stage}/terraform.tfstate"
|
|
region = "eu-west-2"
|
|
}
|
|
}
|
|
|
|
############################################
|
|
# Load FastAPI Terraform State
|
|
############################################
|
|
data "terraform_remote_state" "fast_api" {
|
|
backend = "s3"
|
|
config = {
|
|
bucket = "ara-fast-api-terraform-state"
|
|
key = "env:/${var.stage}/terraform.tfstate"
|
|
region = "eu-west-2"
|
|
}
|
|
}
|
|
|
|
############################################
|
|
# Load CDN Certificate Terraform State
|
|
############################################
|
|
data "terraform_remote_state" "cdn_certificate" {
|
|
backend = "s3"
|
|
config = {
|
|
bucket = "cdn-certificate-terraform-state"
|
|
key = "env:/${var.stage}/terraform.tfstate"
|
|
region = "eu-west-2"
|
|
}
|
|
}
|
|
|
|
############################################
|
|
# CloudFront for API
|
|
############################################
|
|
module "cdn" {
|
|
source = "../modules/cloudfront"
|
|
|
|
aliases = [data.terraform_remote_state.fast_api.outputs.domain_name]
|
|
|
|
acm_certificate_arn = data.terraform_remote_state.cdn_certificate.outputs.certificate_arn
|
|
|
|
origins = [
|
|
# ---- S3 ----
|
|
{
|
|
origin_type = "s3"
|
|
origin_domain_name = data.terraform_remote_state.shared.outputs.retrofit_datalake_bucket_domain_name
|
|
origin_id = "s3-origin"
|
|
bucket_id = data.terraform_remote_state.shared.outputs.retrofit_datalake_bucket_id
|
|
bucket_arn = data.terraform_remote_state.shared.outputs.retrofit_datalake_bucket_arn
|
|
},
|
|
|
|
# ---- API Gateway ----
|
|
{
|
|
origin_type = "api"
|
|
origin_domain_name = replace(data.terraform_remote_state.fast_api.outputs.invoke_url, "/^https?://([^/]*).*/", "$1")
|
|
origin_id = "api-origin"
|
|
}
|
|
]
|
|
} |