hashicorp / terraform-provider-aws

The AWS Provider enables Terraform to manage AWS resources.
https://registry.terraform.io/providers/hashicorp/aws
Mozilla Public License 2.0
9.73k stars 9.09k forks source link

[Bug]: Automated RDS snapshots are deleted after blue green deployment #37775

Open lbertorello opened 3 months ago

lbertorello commented 3 months ago

Terraform Core Version

1.5.5

AWS Provider Version

5.51.1

Affected Resource(s)

aws_db_instance

Expected Behavior

Automated RDS snashots are retained

Actual Behavior

Automated RDS snapshots are deleted

Relevant Error/Panic Output Snippet

No response

Terraform Configuration Files

Before Blue Green deployment

resource "aws_db_instance" "lbe_primary" {
  identifier               = "test-lbe"
  allocated_storage        = 10
  db_name                  = "mydb"
  engine                   = "mysql"
  engine_version           = "8.0.35"
  instance_class           = "db.t3.micro"
  username                 = "root"
  password                 = "Toto1234"
  parameter_group_name     = "default.mysql8.0"
  db_subnet_group_name     = module.vpc.database_subnet_group_name
  backup_retention_period  = 7
  delete_automated_backups = false
  skip_final_snapshot      = false
  apply_immediately        = true

}

resource "aws_db_instance" "lbe_read_replica" {
  count = 1
  identifier = "test-lbe-rr-${count.index}"
  engine                   = "mysql"
  engine_version           = "8.0"
  instance_class           = "db.t3.micro"
  parameter_group_name     = "default.mysql8.0"
  replicate_source_db      = aws_db_instance.lbe_primary.identifier
  db_subnet_group_name = module.vpc.database_subnet_group_name
  delete_automated_backups = false
  skip_final_snapshot      = true
  apply_immediately = true
}

Blue Green deployment

resource "aws_db_instance" "lbe_primary" {
  identifier               = "test-lbe"
  allocated_storage        = 10
  db_name                  = "mydb"
  engine                   = "mysql"
  engine_version           = "8.0.36"
  instance_class           = "db.t3.micro"
  username                 = "root"
  password                 = "Toto1234"
  parameter_group_name     = "default.mysql8.0"
  db_subnet_group_name     = module.vpc.database_subnet_group_name
  backup_retention_period  = 7
  delete_automated_backups = false
  skip_final_snapshot      = false
  apply_immediately        = true

  blue_green_update {
    enabled = true
  }
}

resource "aws_db_instance" "lbe_read_replica" {
  count                    = 1
  identifier               = "test-lbe-rr-${count.index}"
  engine                   = "mysql"
  engine_version           = "8.0"
  instance_class           = "db.t3.micro"
  parameter_group_name     = "default.mysql8.0"
  replicate_source_db      = aws_db_instance.lbe_primary.identifier
  db_subnet_group_name     = module.vpc.database_subnet_group_name
  delete_automated_backups = false
  skip_final_snapshot      = true
  apply_immediately        = true
}

Steps to Reproduce

Capture d'écran 2024-05-30 194409 PS : I don't know why 1 RDS instance is not deleted. Drift ?

Debug Output

No response

Panic Output

No response

Important Factoids

Snapshots are managed by AWS RDS, not by AWS Backup.

References

No response

Would you like to implement a fix?

None

github-actions[bot] commented 3 months ago

Community Note

Voting for Prioritization

Volunteering to Work on This Issue