Skip to content

Commit 1165395

Browse files
committed
Adding more parameters to rds
1 parent 46b848a commit 1165395

File tree

4 files changed

+115
-0
lines changed

4 files changed

+115
-0
lines changed

operations/deployment/terraform/aws/aws_variables.tf

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -731,6 +731,48 @@ variable "aws_rds_db_performance_insights_kms_key_id" {
731731
default = ""
732732
}
733733

734+
variable "aws_rds_db_insights_mode" {
735+
type = string
736+
description = "The mode for Performance Insights."
737+
default = "standard"
738+
}
739+
740+
variable "aws_rds_db_allow_major_version_upgrade" {
741+
type = bool
742+
description = "Indicates that major version upgrades are allowed."
743+
default = false
744+
}
745+
746+
variable "aws_rds_db_auto_minor_version_upgrade" {
747+
type = bool
748+
description = "Indicates that minor version upgrades are allowed."
749+
default = true
750+
}
751+
752+
variable "aws_rds_db_backup_retention_period" {
753+
type = string
754+
description = "The number of days to retain backups for. Must be between 0 (disabled) and 35."
755+
default = 0
756+
}
757+
758+
variable "aws_rds_db_backup_window" {
759+
type = string
760+
description = "The window during which backups are taken."
761+
default = ""
762+
}
763+
764+
variable "aws_rds_db_blue_green_update" {
765+
type = bool
766+
description = "Toggle for Blue/Green deployments, minimizing downtime."
767+
default = false
768+
}
769+
770+
variable "aws_rds_db_copy_tags_to_snapshot" {
771+
type = bool
772+
description = "Indicates whether to copy tags to snapshots."
773+
default = false
774+
}
775+
734776
variable "aws_rds_db_additional_tags" {
735777
type = string
736778
description = "A list of strings that will be added to created resources"

operations/deployment/terraform/aws/bitovi_main.tf

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,13 @@ module "rds" {
194194
aws_rds_db_performance_insights_enable = var.aws_rds_db_performance_insights_enable
195195
aws_rds_db_performance_insights_retention = var.aws_rds_db_performance_insights_retention
196196
aws_rds_db_performance_insights_kms_key_id = var.aws_rds_db_performance_insights_kms_key_id
197+
aws_rds_db_insights_mode = var.aws_rds_db_insights_mode
198+
aws_rds_db_allow_major_version_upgrade = var.aws_rds_db_allow_major_version_upgrade
199+
aws_rds_db_auto_minor_version_upgrade = var.aws_rds_db_auto_minor_version_upgrade
200+
aws_rds_db_backup_retention_period = var.aws_rds_db_backup_retention_period
201+
aws_rds_db_backup_window = var.aws_rds_db_backup_window
202+
aws_rds_db_blue_green_update = var.aws_rds_db_blue_green_update
203+
aws_rds_db_copy_tags_to_snapshot = var.aws_rds_db_copy_tags_to_snapshot
197204
# Others
198205
#aws_ec2_security_group = var.aws_ec2_instance_create ? module.ec2[0].aws_security_group_ec2_sg_id : ""
199206
aws_selected_vpc_id = module.vpc.aws_selected_vpc_id

operations/deployment/terraform/modules/aws/rds/aws_rds.tf

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,14 @@ resource "aws_db_instance" "default" {
8080
performance_insights_enabled = var.aws_rds_db_performance_insights_enable
8181
performance_insights_retention_period = var.aws_rds_db_performance_insights_enable ? var.aws_rds_db_performance_insights_retention : null
8282
performance_insights_kms_key_id = var.aws_rds_db_performance_insights_enable ? var.aws_rds_db_performance_insights_kms_key_id : null
83+
# Updgrades
84+
database_insights_mode = var.aws_rds_db_insights_mode ## NTH
85+
allow_major_version_upgrade = var.aws_rds_db_allow_major_version_upgrade ## NTH
86+
auto_minor_version_upgrade = var.aws_rds_db_auto_minor_version_upgrade ## NTH
87+
backup_retention_period = var.aws_rds_db_backup_retention_period ## NTH
88+
backup_window = var.aws_rds_db_backup_window ## NTH
89+
blue_green_update = var.aws_rds_db_blue_green_update ## NTH
90+
copy_tags_to_snapshot = var.aws_rds_db_copy_tags_to_snapshot ## NTH
8391
tags = {
8492
Name = "${var.aws_resource_identifier}-rds"
8593
}
@@ -154,4 +162,55 @@ output "rds_sg_id" {
154162

155163
output "db_port" {
156164
value = aws_db_instance.default.port
165+
}
166+
167+
168+
169+
170+
171+
resource "aws_db_instance" "default" {
172+
173+
174+
175+
#region # Not a must
176+
allocated_storage = tonumber(var.aws_rds_db_allocated_storage)
177+
apply_immediately = var.aws_rds_db_apply_immediately
178+
#availability_zone = var.aws_rds_db_availability_zone ## NTH ???
179+
#backup_target = var.aws_rds_db_backup_target ## NTH
180+
ca_cert_identifier = var.aws_rds_db_ca_cert_identifier
181+
#character_set_name = var.aws_rds_db_character_set_name ## NTH
182+
#custom_iam_instance_profile = var.aws_rds_db_custom_iam_instance_profile ## NTH ???
183+
db_name = var.aws_rds_db_name != null ? var.aws_rds_db_name : null
184+
db_subnet_group_name = aws_db_subnet_group.selected.name
185+
#dedicated_log_volume = var.aws_rds_db_dedicated_log_volume ## NTH ???
186+
#delete_automated_backups = var.aws_rds_db_delete_automated_backups ## NTH
187+
#deletion_protection = var.aws_rds_db_deletion_protection ## NTH ???
188+
189+
enabled_cloudwatch_logs_exports = [var.aws_rds_db_cloudwatch_logs_exports]
190+
engine = var.aws_rds_db_engine
191+
engine_version = var.aws_rds_db_engine_version
192+
final_snapshot_identifier = var.aws_rds_db_final_snapshot != "" ? var.aws_rds_db_final_snapshot : null
193+
skip_final_snapshot = var.aws_rds_db_final_snapshot != "" ? false : true
194+
195+
identifier = var.aws_rds_db_identifier
196+
instance_class = var.aws_rds_db_instance_class
197+
maintenance_window = var.aws_rds_db_maintenance_window
198+
max_allocated_storage = tonumber(var.aws_rds_db_max_allocated_storage)
199+
multi_az = var.aws_rds_db_multi_az
200+
password = random_password.rds.result
201+
performance_insights_enabled = var.aws_rds_db_performance_insights_enable
202+
performance_insights_retention_period = var.aws_rds_db_performance_insights_enable ? var.aws_rds_db_performance_insights_retention : null
203+
performance_insights_kms_key_id = var.aws_rds_db_performance_insights_enable ? var.aws_rds_db_performance_insights_kms_key_id : null
204+
port = var.aws_rds_db_port != null ? tonumber(var.aws_rds_db_port) : null
205+
publicly_accessible = var.aws_rds_db_publicly_accessible
206+
207+
storage_encrypted = var.aws_rds_db_storage_encrypted
208+
storage_type = var.aws_rds_db_storage_type
209+
kms_key_id = var.aws_rds_db_kms_key_id
210+
username = var.aws_rds_db_user != null ? var.aws_rds_db_user : "dbuser"
211+
snapshot_identifier = var.aws_rds_db_restore_snapshot_identifier
212+
vpc_security_group_ids = [aws_security_group.rds_db_security_group.id]
213+
tags = {
214+
Name = "${var.aws_resource_identifier}-rds"
215+
}
157216
}

operations/deployment/terraform/modules/aws/rds/aws_rds_vars.tf

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,13 @@ variable "aws_rds_db_apply_immediately" {}
2525
variable "aws_rds_db_performance_insights_enable" {}
2626
variable "aws_rds_db_performance_insights_retention" {}
2727
variable "aws_rds_db_performance_insights_kms_key_id" {}
28+
variable "aws_rds_db_insights_mode" {}
29+
variable "aws_rds_db_allow_major_version_upgrade" {}
30+
variable "aws_rds_db_auto_minor_version_upgrade" {}
31+
variable "aws_rds_db_backup_retention_period" {}
32+
variable "aws_rds_db_backup_window" {}
33+
variable "aws_rds_db_blue_green_update" {}
34+
variable "aws_rds_db_copy_tags_to_snapshot" {}
2835
variable "aws_resource_identifier" {}
2936
variable "aws_resource_identifier_supershort" {}
3037
variable "aws_selected_vpc_id" {}

0 commit comments

Comments
 (0)