From 466f090b277e92b6d26c00af97ab55e75439f736 Mon Sep 17 00:00:00 2001
From: Melissa Greenbaum <69476188+magreenbaum@users.noreply.github.com>
Date: Sat, 20 Jul 2024 17:08:13 -0400
Subject: [PATCH] feat: Support `engine_lifecycle_support` (#459)
engine lifecycle support
---
README.md | 5 +++--
examples/autoscaling/README.md | 4 ++--
examples/autoscaling/versions.tf | 2 +-
examples/global-cluster/README.md | 6 +++---
examples/global-cluster/versions.tf | 2 +-
examples/multi-az/README.md | 4 ++--
examples/multi-az/versions.tf | 2 +-
examples/mysql/README.md | 4 ++--
examples/mysql/versions.tf | 2 +-
examples/postgresql/README.md | 4 ++--
examples/postgresql/main.tf | 2 ++
examples/postgresql/versions.tf | 2 +-
examples/s3-import/README.md | 4 ++--
examples/s3-import/versions.tf | 2 +-
examples/serverless/README.md | 4 ++--
examples/serverless/versions.tf | 2 +-
main.tf | 1 +
variables.tf | 6 ++++++
versions.tf | 2 +-
19 files changed, 35 insertions(+), 25 deletions(-)
diff --git a/README.md b/README.md
index 6448898..45e1a42 100644
--- a/README.md
+++ b/README.md
@@ -224,13 +224,13 @@ Terraform documentation is generated automatically using [pre-commit hooks](http
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.0 |
-| [aws](#requirement\_aws) | >= 5.58 |
+| [aws](#requirement\_aws) | >= 5.59 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.58 |
+| [aws](#provider\_aws) | >= 5.59 |
## Modules
@@ -323,6 +323,7 @@ No modules.
| [enabled\_cloudwatch\_logs\_exports](#input\_enabled\_cloudwatch\_logs\_exports) | Set of log types to export to cloudwatch. If omitted, no logs will be exported. The following log types are supported: `audit`, `error`, `general`, `slowquery`, `postgresql` | `list(string)` | `[]` | no |
| [endpoints](#input\_endpoints) | Map of additional cluster endpoints and their attributes to be created | `any` | `{}` | no |
| [engine](#input\_engine) | The name of the database engine to be used for this DB cluster. Defaults to `aurora`. Valid Values: `aurora`, `aurora-mysql`, `aurora-postgresql` | `string` | `null` | no |
+| [engine\_lifecycle\_support](#input\_engine\_lifecycle\_support) | The life cycle type for this DB instance. This setting is valid for cluster types Aurora DB clusters and Multi-AZ DB clusters. Valid values are `open-source-rds-extended-support`, `open-source-rds-extended-support-disabled`. Default value is `open-source-rds-extended-support`. | `string` | `null` | no |
| [engine\_mode](#input\_engine\_mode) | The database engine mode. Valid values: `global`, `multimaster`, `parallelquery`, `provisioned`, `serverless`. Defaults to: `provisioned` | `string` | `"provisioned"` | no |
| [engine\_native\_audit\_fields\_included](#input\_engine\_native\_audit\_fields\_included) | Specifies whether the database activity stream includes engine-native audit fields. This option only applies to an Oracle DB instance. By default, no engine-native audit fields are included | `bool` | `false` | no |
| [engine\_version](#input\_engine\_version) | The database engine version. Updating this argument results in an outage | `string` | `null` | no |
diff --git a/examples/autoscaling/README.md b/examples/autoscaling/README.md
index e5ef334..4d08596 100644
--- a/examples/autoscaling/README.md
+++ b/examples/autoscaling/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.58 |
+| [aws](#requirement\_aws) | >= 5.59 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.58 |
+| [aws](#provider\_aws) | >= 5.59 |
## Modules
diff --git a/examples/autoscaling/versions.tf b/examples/autoscaling/versions.tf
index 2c346da..7ea0158 100644
--- a/examples/autoscaling/versions.tf
+++ b/examples/autoscaling/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.58"
+ version = ">= 5.59"
}
}
}
diff --git a/examples/global-cluster/README.md b/examples/global-cluster/README.md
index d926ce7..d65f305 100644
--- a/examples/global-cluster/README.md
+++ b/examples/global-cluster/README.md
@@ -20,15 +20,15 @@ Note that this example may create resources which cost money. Run `terraform des
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.0 |
-| [aws](#requirement\_aws) | >= 5.58 |
+| [aws](#requirement\_aws) | >= 5.59 |
| [random](#requirement\_random) | >= 2.2 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.58 |
-| [aws.secondary](#provider\_aws.secondary) | >= 5.58 |
+| [aws](#provider\_aws) | >= 5.59 |
+| [aws.secondary](#provider\_aws.secondary) | >= 5.59 |
| [random](#provider\_random) | >= 2.2 |
## Modules
diff --git a/examples/global-cluster/versions.tf b/examples/global-cluster/versions.tf
index eb5aea8..50297cf 100644
--- a/examples/global-cluster/versions.tf
+++ b/examples/global-cluster/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.58"
+ version = ">= 5.59"
}
random = {
diff --git a/examples/multi-az/README.md b/examples/multi-az/README.md
index 0dc02a7..e8a3627 100644
--- a/examples/multi-az/README.md
+++ b/examples/multi-az/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.58 |
+| [aws](#requirement\_aws) | >= 5.59 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.58 |
+| [aws](#provider\_aws) | >= 5.59 |
## Modules
diff --git a/examples/multi-az/versions.tf b/examples/multi-az/versions.tf
index 2c346da..7ea0158 100644
--- a/examples/multi-az/versions.tf
+++ b/examples/multi-az/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.58"
+ version = ">= 5.59"
}
}
}
diff --git a/examples/mysql/README.md b/examples/mysql/README.md
index 288bc8b..6151b6c 100644
--- a/examples/mysql/README.md
+++ b/examples/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.58 |
+| [aws](#requirement\_aws) | >= 5.59 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.58 |
+| [aws](#provider\_aws) | >= 5.59 |
## Modules
diff --git a/examples/mysql/versions.tf b/examples/mysql/versions.tf
index 2c346da..7ea0158 100644
--- a/examples/mysql/versions.tf
+++ b/examples/mysql/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.58"
+ version = ">= 5.59"
}
}
}
diff --git a/examples/postgresql/README.md b/examples/postgresql/README.md
index a15949a..e06d6ba 100644
--- a/examples/postgresql/README.md
+++ b/examples/postgresql/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.58 |
+| [aws](#requirement\_aws) | >= 5.59 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.58 |
+| [aws](#provider\_aws) | >= 5.59 |
## Modules
diff --git a/examples/postgresql/main.tf b/examples/postgresql/main.tf
index 639cd8f..64673db 100644
--- a/examples/postgresql/main.tf
+++ b/examples/postgresql/main.tf
@@ -78,6 +78,8 @@ module "aurora" {
apply_immediately = true
skip_final_snapshot = true
+ engine_lifecycle_support = "open-source-rds-extended-support-disabled"
+
create_db_cluster_parameter_group = true
db_cluster_parameter_group_name = local.name
db_cluster_parameter_group_family = "aurora-postgresql14"
diff --git a/examples/postgresql/versions.tf b/examples/postgresql/versions.tf
index 2c346da..7ea0158 100644
--- a/examples/postgresql/versions.tf
+++ b/examples/postgresql/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.58"
+ version = ">= 5.59"
}
}
}
diff --git a/examples/s3-import/README.md b/examples/s3-import/README.md
index 793f18a..76dc63b 100644
--- a/examples/s3-import/README.md
+++ b/examples/s3-import/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.58 |
+| [aws](#requirement\_aws) | >= 5.59 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.58 |
+| [aws](#provider\_aws) | >= 5.59 |
## Modules
diff --git a/examples/s3-import/versions.tf b/examples/s3-import/versions.tf
index 2c346da..7ea0158 100644
--- a/examples/s3-import/versions.tf
+++ b/examples/s3-import/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.58"
+ version = ">= 5.59"
}
}
}
diff --git a/examples/serverless/README.md b/examples/serverless/README.md
index 4a128b9..d7f1120 100644
--- a/examples/serverless/README.md
+++ b/examples/serverless/README.md
@@ -20,14 +20,14 @@ Note that this example may create resources which cost money. Run `terraform des
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.0 |
-| [aws](#requirement\_aws) | >= 5.58 |
+| [aws](#requirement\_aws) | >= 5.59 |
| [random](#requirement\_random) | >= 3.5 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.58 |
+| [aws](#provider\_aws) | >= 5.59 |
| [random](#provider\_random) | >= 3.5 |
## Modules
diff --git a/examples/serverless/versions.tf b/examples/serverless/versions.tf
index bc79575..51786a5 100644
--- a/examples/serverless/versions.tf
+++ b/examples/serverless/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.58"
+ version = ">= 5.59"
}
random = {
source = "hashicorp/random"
diff --git a/main.tf b/main.tf
index 5e34179..64e4f4d 100644
--- a/main.tf
+++ b/main.tf
@@ -64,6 +64,7 @@ resource "aws_rds_cluster" "this" {
engine = var.engine
engine_mode = var.engine_mode
engine_version = var.engine_version
+ engine_lifecycle_support = var.engine_lifecycle_support
final_snapshot_identifier = var.final_snapshot_identifier
global_cluster_identifier = var.global_cluster_identifier
domain = var.domain
diff --git a/variables.tf b/variables.tf
index 3967ae0..654405d 100644
--- a/variables.tf
+++ b/variables.tf
@@ -180,6 +180,12 @@ variable "engine_version" {
default = null
}
+variable "engine_lifecycle_support" {
+ description = "The life cycle type for this DB instance. This setting is valid for cluster types Aurora DB clusters and Multi-AZ DB clusters. Valid values are `open-source-rds-extended-support`, `open-source-rds-extended-support-disabled`. Default value is `open-source-rds-extended-support`."
+ type = string
+ default = null
+}
+
variable "final_snapshot_identifier" {
description = "The name of your final DB snapshot when this DB cluster is deleted. If omitted, no final snapshot will be made"
type = string
diff --git a/versions.tf b/versions.tf
index 2c346da..7ea0158 100644
--- a/versions.tf
+++ b/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.58"
+ version = ">= 5.59"
}
}
}