-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmain.tf
75 lines (61 loc) · 1.25 KB
/
main.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
terraform {
required_version = "1.6.2"
required_providers {
aws = {
source = "hashicorp/aws"
version = "5.22.0"
}
}
}
locals {
dkim_hosts = [
"fm1",
"fm2",
"fm3",
]
mx_hosts = [
var.domain,
"*.${var.domain}",
"mail.${var.domain}",
]
}
resource "aws_route53_record" "mail" {
zone_id = var.zone_id
name = "mail.${var.domain}"
type = "A"
ttl = "300"
records = [
"66.111.4.147",
"66.111.4.148",
]
}
resource "aws_route53_record" "mx" {
count = length(local.mx_hosts)
zone_id = var.zone_id
name = element(local.mx_hosts, count.index)
type = "MX"
ttl = "300"
records = [
"10 in1-smtp.messagingengine.com",
"20 in2-smtp.messagingengine.com",
]
}
resource "aws_route53_record" "spf" {
zone_id = var.zone_id
name = var.domain
type = "TXT"
ttl = "300"
records = [
"v=spf1 include:spf.messagingengine.com ?all",
]
}
resource "aws_route53_record" "dkim" {
count = length(local.dkim_hosts)
zone_id = var.zone_id
name = "${element(local.dkim_hosts, count.index)}._domainkey.${var.domain}"
type = "CNAME"
ttl = "300"
records = [
"${element(local.dkim_hosts, count.index)}.${var.domain}.dkim.fmhosted.com",
]
}