infra/terraform/gabrielsimmer.com.tf
2023-09-05 21:42:53 +01:00

109 lines
2.8 KiB
HCL

resource "vercel_project" "gabrielsimmercom-blog-vercel" {
name = "blog-gabrielsimmer-com"
framework = "hugo"
git_repository = {
type = "github"
repo = "gmemstr/blog.gabrielsimmer.com"
}
}
resource "vercel_project_domain" "gabrielsimmercom-blog-vercel-domain" {
project_id = vercel_project.gabrielsimmercom-blog-vercel.id
domain = "blog.gabrielsimmer.com"
}
resource "aws_route53_zone" "gabrielsimmercom" {
name = "gabrielsimmer.com"
}
resource "aws_route53_record" "gabrielsimmercom-a" {
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = "gabrielsimmer.com"
type = "A"
ttl = 3600
records = [
"66.241.124.117"
]
}
resource "aws_route53_record" "gabrielsimmercom-next" {
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = "next"
type = "A"
ttl = 300
records = [ "66.241.124.117" ]
}
resource "aws_route53_record" "gabrielsimmercom-next-aaa" {
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = "next"
type = "AAAA"
ttl = 300
records = [ "2a09:8280:1::4e:42fd" ]
}
resource "aws_route53_record" "gabrielsimmercom-www" {
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = "www"
type = "CNAME"
ttl = 300
records = [
"gabrielsimmer.com"
]
}
resource "aws_route53_record" "gabrielsimmercom-blog" {
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = "blog"
type = "CNAME"
ttl = 300
records = [
"cname.vercel-dns.com"
]
}
resource "aws_route53_record" "gabrielsimmercom-github-verification" {
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = "_github-pages-challenge-gmemstr.gabrielsimmer.com"
type = "TXT"
ttl = 300
records = [
"fcf7482bbeced61719161ebd56e110",
]
}
resource "aws_route53_record" "gabrielsimmercom-txt-verifications" {
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = "gabrielsimmer.com"
type = "TXT"
ttl = 300
records = [
"keybase-site-verification=f2MAsoM3HCGQAsYNcWzCy4Ul2kvh79j6etJbL7aQwv8",
"v=spf1 include:spf.messagingengine.com ?all",
"google-site-verification=EW1TJ2_9BRa81mIRX9doz-5aR4ydYh4hzG1yuqfu_C4"
]
}
resource "aws_route53_record" "gabrielsimmer-com-mx" {
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = "gabrielsimmer.com"
type = "MX"
records = ["10 in1-smtp.messagingengine.com", "20 in2-smtp.messagingengine.com"]
ttl = 300
}
resource "aws_route53_record" "gabrielsimmer-com-mail-cname" {
for_each = {
"fm1._domainkey" = "fm1.gabrielsimmer.com.dkim.fmhosted.com"
"fm2._domainkey" = "fm2.gabrielsimmer.com.dkim.fmhosted.com"
"fm3._domainkey" = "fm3.gabrielsimmer.com.dkim.fmhosted.com"
}
zone_id = aws_route53_zone.gabrielsimmercom.zone_id
name = each.key
records = [each.value]
type = "CNAME"
ttl = 300
}