-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathrds.tf
121 lines (98 loc) · 4.28 KB
/
rds.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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
resource "aws_db_instance" "db_instance" {
count = local.is_mssql == false ? 1 : 0
identifier = var.identifier
instance_class = var.instance_class
# engine
engine = var.engine
engine_version = var.engine_version
# storage
allocated_storage = var.allocated_storage
storage_type = var.storage_type
max_allocated_storage = var.max_allocated_storage
storage_encrypted = var.storage_encrypted
kms_key_id = var.kms_key_id
# placement
availability_zone = var.availability_zone
multi_az = var.multi_az
db_subnet_group_name = var.create_db_subnet_group == true ? aws_db_subnet_group.group[0].name : var.db_subnet_group_name
# upgrade, maintenance, backup
allow_major_version_upgrade = var.allow_major_version_upgrade
auto_minor_version_upgrade = var.auto_minor_version_upgrade
apply_immediately = var.apply_immediately
backup_retention_period = var.backup_retention_period
backup_window = var.backup_window
delete_automated_backups = var.delete_automated_backups
maintenance_window = var.maintenance_window
skip_final_snapshot = var.skip_final_snapshot
final_snapshot_identifier = var.final_snapshot_identifier
# database name
name = var.name
# access, security
username = var.username
password = var.password
domain = var.domain
domain_iam_role_name = var.domain_iam_role_name
ca_cert_identifier = var.ca_cert_identifier
publicly_accessible = var.publicly_accessible
vpc_security_group_ids = var.vpc_security_group_ids
# parameters and options
parameter_group_name = var.create_db_parameter_group == true ? aws_db_parameter_group.default[0].name : null
option_group_name = var.create_db_option_group == true ? aws_db_option_group.default[0].name : null
character_set_name = local.is_mssql == true ? var.character_set_name : null
# deletion protection
deletion_protection = var.deletion_protection
# logs
enabled_cloudwatch_logs_exports = var.enabled_cloudwatch_logs_exports
# tags
tags = var.tags
}
# ms sql only
resource "aws_db_instance" "db_instance_mssql" {
count = local.is_mssql == true ? 1 : 0
identifier = var.identifier
instance_class = var.instance_class
# engine
engine = var.engine
engine_version = var.engine_version
# storage
allocated_storage = var.allocated_storage
storage_type = var.storage_type
max_allocated_storage = var.max_allocated_storage
storage_encrypted = var.storage_encrypted
kms_key_id = var.kms_key_id
# placement
availability_zone = var.availability_zone
multi_az = var.multi_az
db_subnet_group_name = var.create_db_subnet_group == true ? aws_db_subnet_group.group[0].name : var.db_subnet_group_name
# upgrade, maintenance, backup
allow_major_version_upgrade = var.allow_major_version_upgrade
auto_minor_version_upgrade = var.auto_minor_version_upgrade
apply_immediately = var.apply_immediately
backup_retention_period = var.backup_retention_period
backup_window = var.backup_window
delete_automated_backups = var.delete_automated_backups
maintenance_window = var.maintenance_window
skip_final_snapshot = var.skip_final_snapshot
final_snapshot_identifier = var.final_snapshot_identifier
# access, security
username = var.username
password = var.password
domain = var.domain
domain_iam_role_name = var.domain_iam_role_name
ca_cert_identifier = var.ca_cert_identifier
publicly_accessible = var.publicly_accessible
vpc_security_group_ids = var.vpc_security_group_ids
# parameters and options
parameter_group_name = var.create_db_parameter_group == true ? aws_db_parameter_group.default[0].name : null
option_group_name = var.create_db_option_group == true ? aws_db_option_group.default[0].name : null
character_set_name = local.is_mssql == true ? var.character_set_name : null
# deletion protection
deletion_protection = var.deletion_protection
# logs
enabled_cloudwatch_logs_exports = var.enabled_cloudwatch_logs_exports
# mssql specific
timezone = var.timezone
license_model = "license-included"
# tags
tags = var.tags
}