Skip to content

Commit b0730dd

Browse files
jogoldrix0rrr
authored andcommitted
fix(rds): allow setting backupRetentionPeriod=0 (#2875)
0 would get turned into `undefined` which would lead to the default value of 1.
1 parent 936464f commit b0730dd

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

packages/@aws-cdk/aws-rds/lib/instance.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,7 @@ abstract class DatabaseInstanceNew extends DatabaseInstanceBase implements IData
507507
this.newCfnProps = {
508508
autoMinorVersionUpgrade: props.autoMinorVersionUpgrade,
509509
availabilityZone: props.multiAz ? undefined : props.availabilityZone,
510-
backupRetentionPeriod: props.backupRetentionPeriod ? props.backupRetentionPeriod.toString() : undefined,
510+
backupRetentionPeriod: props.backupRetentionPeriod !== undefined ? props.backupRetentionPeriod.toString() : undefined,
511511
copyTagsToSnapshot: props.copyTagsToSnapshot !== undefined ? props.copyTagsToSnapshot : true,
512512
dbInstanceClass: `db.${props.instanceClass}`,
513513
dbInstanceIdentifier: props.instanceIdentifier,

packages/@aws-cdk/aws-rds/test/test.instance.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -406,6 +406,28 @@ export = {
406406
]
407407
});
408408

409+
test.done();
410+
},
411+
412+
'can deactivate backup'(test: Test) {
413+
// GIVEN
414+
const stack = new cdk.Stack();
415+
const vpc = new ec2.Vpc(stack, 'VPC');
416+
417+
// WHEN
418+
new rds.DatabaseInstance(stack, 'Instance', {
419+
engine: rds.DatabaseInstanceEngine.Mysql,
420+
instanceClass: new ec2.InstanceTypePair(ec2.InstanceClass.Burstable2, ec2.InstanceSize.Small),
421+
masterUsername: 'admin',
422+
vpc,
423+
backupRetentionPeriod: 0,
424+
});
425+
426+
// THEN
427+
expect(stack).to(haveResource('AWS::RDS::DBInstance', {
428+
BackupRetentionPeriod: '0'
429+
}));
430+
409431
test.done();
410432
}
411433
};

0 commit comments

Comments
 (0)