@@ -41,9 +41,10 @@ resource "aws_iam_role_policy_attachment" "this" {
41
41
}
42
42
43
43
locals {
44
- parameter_groups = { for pg in try (var. parameter_groups , []) : pg . name => pg }
45
- parameter_group_name = try (var. rds_instance . parameter_group_name , null )
46
- parameter_group_managed = local. parameter_group_name != null ? contains (keys (local. parameter_groups ), local. parameter_group_name ) : false
44
+ parameter_groups = { for pg in try (var. parameter_groups , []) : pg . name => pg }
45
+ parameter_group_name = try (var. rds_instance . parameter_group_name , null )
46
+ parameter_group_managed = local. parameter_group_name != null ? contains (keys (local. parameter_groups ), local. parameter_group_name ) : false
47
+ aws_db_instance_needs_engine = try (var. rds_instance . replicate_source_db , null ) == null && try (var. rds_instance . snapshot_identifier , null ) == null ? true : false
47
48
}
48
49
49
50
resource "aws_db_parameter_group" "this" {
@@ -115,7 +116,7 @@ resource "aws_db_instance" "this" {
115
116
domain_iam_role_name = try (var. rds_instance . domain_iam_role_name , null )
116
117
domain_ou = try (var. rds_instance . domain_ou , null )
117
118
enabled_cloudwatch_logs_exports = try (var. rds_instance . enabled_cloudwatch_logs_exports , null )
118
- engine = try ( var. rds_instance . engine , null )
119
+ engine = local . aws_db_instance_needs_engine ? var. rds_instance . engine : null
119
120
engine_version = try (var. rds_instance . engine_version , null )
120
121
final_snapshot_identifier = try (var. rds_instance . final_snapshot_identifier , null )
121
122
iam_database_authentication_enabled = try (var. rds_instance . iam_database_authentication_enabled , null )
0 commit comments