diff --git a/README.md b/README.md index 8805ceb9..9d382cf6 100644 --- a/README.md +++ b/README.md @@ -210,7 +210,7 @@ Users have the ability to: | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers @@ -263,6 +263,7 @@ No resources. | [db\_subnet\_group\_name](#input\_db\_subnet\_group\_name) | Name of DB subnet group. DB instance will be created in the VPC associated with the DB subnet group. If unspecified, will be created in the default VPC | `string` | `null` | no | | [db\_subnet\_group\_tags](#input\_db\_subnet\_group\_tags) | Additional tags for the DB subnet group | `map(string)` | `{}` | no | | [db\_subnet\_group\_use\_name\_prefix](#input\_db\_subnet\_group\_use\_name\_prefix) | Determines whether to use `subnet_group_name` as is or create a unique name beginning with the `subnet_group_name` as the prefix | `bool` | `true` | no | +| [dedicated\_log\_volume](#input\_dedicated\_log\_volume) | Use a dedicated log volume (DLV) for the DB instance. Requires Provisioned IOPS. | `bool` | `false` | no | | [delete\_automated\_backups](#input\_delete\_automated\_backups) | Specifies whether to remove automated backups immediately after the DB instance is deleted | `bool` | `true` | no | | [deletion\_protection](#input\_deletion\_protection) | The database can't be deleted when this value is set to true | `bool` | `false` | no | | [domain](#input\_domain) | The ID of the Directory Service Active Directory domain to create the instance in | `string` | `null` | no | diff --git a/examples/blue-green-deployment/README.md b/examples/blue-green-deployment/README.md index 48434afb..93ea0a27 100644 --- a/examples/blue-green-deployment/README.md +++ b/examples/blue-green-deployment/README.md @@ -27,13 +27,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/blue-green-deployment/versions.tf b/examples/blue-green-deployment/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/blue-green-deployment/versions.tf +++ b/examples/blue-green-deployment/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/complete-mssql/README.md b/examples/complete-mssql/README.md index 05a8a40b..535bdc54 100644 --- a/examples/complete-mssql/README.md +++ b/examples/complete-mssql/README.md @@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/complete-mssql/versions.tf b/examples/complete-mssql/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/complete-mssql/versions.tf +++ b/examples/complete-mssql/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/complete-mysql/README.md b/examples/complete-mysql/README.md index caf2d798..edd6eb66 100644 --- a/examples/complete-mysql/README.md +++ b/examples/complete-mysql/README.md @@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/complete-mysql/versions.tf b/examples/complete-mysql/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/complete-mysql/versions.tf +++ b/examples/complete-mysql/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/complete-oracle/README.md b/examples/complete-oracle/README.md index 3b667c06..ab73755f 100644 --- a/examples/complete-oracle/README.md +++ b/examples/complete-oracle/README.md @@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/complete-oracle/versions.tf b/examples/complete-oracle/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/complete-oracle/versions.tf +++ b/examples/complete-oracle/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/complete-postgres/README.md b/examples/complete-postgres/README.md index e9eb041a..79e8b95a 100644 --- a/examples/complete-postgres/README.md +++ b/examples/complete-postgres/README.md @@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/complete-postgres/versions.tf b/examples/complete-postgres/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/complete-postgres/versions.tf +++ b/examples/complete-postgres/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/cross-region-replica-postgres/README.md b/examples/cross-region-replica-postgres/README.md index ac8edc4c..553afa2c 100644 --- a/examples/cross-region-replica-postgres/README.md +++ b/examples/cross-region-replica-postgres/README.md @@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/cross-region-replica-postgres/versions.tf b/examples/cross-region-replica-postgres/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/cross-region-replica-postgres/versions.tf +++ b/examples/cross-region-replica-postgres/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/enhanced-monitoring/README.md b/examples/enhanced-monitoring/README.md index 1cd48c16..fca316d6 100644 --- a/examples/enhanced-monitoring/README.md +++ b/examples/enhanced-monitoring/README.md @@ -22,13 +22,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/enhanced-monitoring/versions.tf b/examples/enhanced-monitoring/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/enhanced-monitoring/versions.tf +++ b/examples/enhanced-monitoring/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/groups/README.md b/examples/groups/README.md index 1f5b86f2..b0c06506 100644 --- a/examples/groups/README.md +++ b/examples/groups/README.md @@ -20,7 +20,7 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers diff --git a/examples/groups/versions.tf b/examples/groups/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/groups/versions.tf +++ b/examples/groups/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/replica-mysql/README.md b/examples/replica-mysql/README.md index 39b2621f..2462116e 100644 --- a/examples/replica-mysql/README.md +++ b/examples/replica-mysql/README.md @@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/replica-mysql/versions.tf b/examples/replica-mysql/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/replica-mysql/versions.tf +++ b/examples/replica-mysql/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/replica-postgres/README.md b/examples/replica-postgres/README.md index 0584e1ea..aa8c468c 100644 --- a/examples/replica-postgres/README.md +++ b/examples/replica-postgres/README.md @@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/replica-postgres/versions.tf b/examples/replica-postgres/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/replica-postgres/versions.tf +++ b/examples/replica-postgres/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/role-association-postgres/README.md b/examples/role-association-postgres/README.md index 838f91e5..cfcce3eb 100644 --- a/examples/role-association-postgres/README.md +++ b/examples/role-association-postgres/README.md @@ -10,13 +10,13 @@ Further database configurations for creating extension and invoking from postgre | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/role-association-postgres/versions.tf b/examples/role-association-postgres/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/role-association-postgres/versions.tf +++ b/examples/role-association-postgres/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/examples/s3-import-mysql/README.md b/examples/s3-import-mysql/README.md index 81f79a88..01fe9fea 100644 --- a/examples/s3-import-mysql/README.md +++ b/examples/s3-import-mysql/README.md @@ -49,13 +49,13 @@ Note that this example may create resources which cost money. Run `terraform des | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/examples/s3-import-mysql/versions.tf b/examples/s3-import-mysql/versions.tf index 3b3b588a..407a9554 100644 --- a/examples/s3-import-mysql/versions.tf +++ b/examples/s3-import-mysql/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/main.tf b/main.tf index 31fefcd9..45a8227c 100644 --- a/main.tf +++ b/main.tf @@ -99,12 +99,13 @@ module "db_instance" { option_group_name = var.engine != "postgres" ? local.option_group : null network_type = var.network_type - availability_zone = var.availability_zone - multi_az = var.multi_az - iops = var.iops - storage_throughput = var.storage_throughput - publicly_accessible = var.publicly_accessible - ca_cert_identifier = var.ca_cert_identifier + availability_zone = var.availability_zone + multi_az = var.multi_az + iops = var.iops + storage_throughput = var.storage_throughput + publicly_accessible = var.publicly_accessible + ca_cert_identifier = var.ca_cert_identifier + dedicated_log_volume = var.dedicated_log_volume allow_major_version_upgrade = var.allow_major_version_upgrade auto_minor_version_upgrade = var.auto_minor_version_upgrade diff --git a/modules/db_instance/README.md b/modules/db_instance/README.md index d02e6dfa..6c1656d4 100644 --- a/modules/db_instance/README.md +++ b/modules/db_instance/README.md @@ -6,14 +6,14 @@ | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | | [random](#requirement\_random) | >= 3.1 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | | [random](#provider\_random) | >= 3.1 | ## Modules @@ -57,6 +57,7 @@ No modules. | [db\_instance\_tags](#input\_db\_instance\_tags) | A map of additional tags for the DB instance | `map(string)` | `{}` | no | | [db\_name](#input\_db\_name) | The DB name to create. If omitted, no database is created initially | `string` | `null` | no | | [db\_subnet\_group\_name](#input\_db\_subnet\_group\_name) | Name of DB subnet group. DB instance will be created in the VPC associated with the DB subnet group. If unspecified, will be created in the default VPC | `string` | `null` | no | +| [dedicated\_log\_volume](#input\_dedicated\_log\_volume) | Use a dedicated log volume (DLV) for the DB instance. Requires Provisioned IOPS. | `bool` | `false` | no | | [delete\_automated\_backups](#input\_delete\_automated\_backups) | Specifies whether to remove automated backups immediately after the DB instance is deleted | `bool` | `true` | no | | [deletion\_protection](#input\_deletion\_protection) | The database can't be deleted when this value is set to true. | `bool` | `false` | no | | [domain](#input\_domain) | The ID of the Directory Service Active Directory domain to create the instance in | `string` | `null` | no | diff --git a/modules/db_instance/main.tf b/modules/db_instance/main.tf index 2d6765c9..06f2989f 100644 --- a/modules/db_instance/main.tf +++ b/modules/db_instance/main.tf @@ -62,12 +62,13 @@ resource "aws_db_instance" "this" { option_group_name = var.option_group_name network_type = var.network_type - availability_zone = var.availability_zone - multi_az = var.multi_az - iops = var.iops - storage_throughput = var.storage_throughput - publicly_accessible = var.publicly_accessible - ca_cert_identifier = var.ca_cert_identifier + availability_zone = var.availability_zone + multi_az = var.multi_az + iops = var.iops + storage_throughput = var.storage_throughput + publicly_accessible = var.publicly_accessible + ca_cert_identifier = var.ca_cert_identifier + dedicated_log_volume = var.dedicated_log_volume allow_major_version_upgrade = var.allow_major_version_upgrade auto_minor_version_upgrade = var.auto_minor_version_upgrade diff --git a/modules/db_instance/variables.tf b/modules/db_instance/variables.tf index 6013f0ea..c35abeb7 100644 --- a/modules/db_instance/variables.tf +++ b/modules/db_instance/variables.tf @@ -426,6 +426,12 @@ variable "network_type" { default = null } +variable "dedicated_log_volume" { + description = "Use a dedicated log volume (DLV) for the DB instance. Requires Provisioned IOPS." + type = bool + default = false +} + ################################################################################ # CloudWatch Log Group ################################################################################ diff --git a/modules/db_instance/versions.tf b/modules/db_instance/versions.tf index 45bd18cd..81fefdae 100644 --- a/modules/db_instance/versions.tf +++ b/modules/db_instance/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } random = { diff --git a/modules/db_instance_automated_backups_replication/versions.tf b/modules/db_instance_automated_backups_replication/versions.tf index 3b3b588a..407a9554 100644 --- a/modules/db_instance_automated_backups_replication/versions.tf +++ b/modules/db_instance_automated_backups_replication/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/modules/db_instance_role_association/README.md b/modules/db_instance_role_association/README.md index 0e0a3f7c..ebd3847a 100644 --- a/modules/db_instance_role_association/README.md +++ b/modules/db_instance_role_association/README.md @@ -6,13 +6,13 @@ | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/modules/db_instance_role_association/versions.tf b/modules/db_instance_role_association/versions.tf index 3b3b588a..407a9554 100644 --- a/modules/db_instance_role_association/versions.tf +++ b/modules/db_instance_role_association/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/modules/db_option_group/README.md b/modules/db_option_group/README.md index caf96fbd..6f5cd17f 100644 --- a/modules/db_option_group/README.md +++ b/modules/db_option_group/README.md @@ -6,13 +6,13 @@ | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/modules/db_option_group/versions.tf b/modules/db_option_group/versions.tf index 3b3b588a..407a9554 100644 --- a/modules/db_option_group/versions.tf +++ b/modules/db_option_group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/modules/db_parameter_group/README.md b/modules/db_parameter_group/README.md index 4b4faabf..945977ac 100644 --- a/modules/db_parameter_group/README.md +++ b/modules/db_parameter_group/README.md @@ -6,13 +6,13 @@ | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/modules/db_parameter_group/versions.tf b/modules/db_parameter_group/versions.tf index 3b3b588a..407a9554 100644 --- a/modules/db_parameter_group/versions.tf +++ b/modules/db_parameter_group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/modules/db_subnet_group/README.md b/modules/db_subnet_group/README.md index 6a794497..61b516a6 100644 --- a/modules/db_subnet_group/README.md +++ b/modules/db_subnet_group/README.md @@ -6,13 +6,13 @@ | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 1.0 | -| [aws](#requirement\_aws) | >= 5.36 | +| [aws](#requirement\_aws) | >= 5.47 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.36 | +| [aws](#provider\_aws) | >= 5.47 | ## Modules diff --git a/modules/db_subnet_group/versions.tf b/modules/db_subnet_group/versions.tf index 3b3b588a..407a9554 100644 --- a/modules/db_subnet_group/versions.tf +++ b/modules/db_subnet_group/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } } diff --git a/variables.tf b/variables.tf index 123ec430..8837ec24 100644 --- a/variables.tf +++ b/variables.tf @@ -316,6 +316,12 @@ variable "s3_import" { default = null } +variable "dedicated_log_volume" { + description = "Use a dedicated log volume (DLV) for the DB instance. Requires Provisioned IOPS." + type = bool + default = false +} + variable "tags" { description = "A mapping of tags to assign to all resources" type = map(string) diff --git a/versions.tf b/versions.tf index 3b3b588a..407a9554 100644 --- a/versions.tf +++ b/versions.tf @@ -4,7 +4,7 @@ terraform { required_providers { aws = { source = "hashicorp/aws" - version = ">= 5.36" + version = ">= 5.47" } } }