Skip to content

aws-rds: Add support for engineLifecycleSupport configuration in L2/L3 constructs #33859

Open
@mMeijden

Description

@mMeijden

Describe the feature

We would like to be able to configure the engineLifecycleSupport through the L2 constructs. This is currently unsupported and can only be set by using the propertyOverride function

const CfnDBCluster = this.node.defaultChild as CfnDBCluster;
CfnDBCluster.addPropertyOverride('EngineLifecycleSupport', 'open-source-rds-extended-support-disabled');

Use Case

We have use cases where we explicitly disable/enable the engine lifecycle support.
https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_rds.CfnDBCluster.html#enginelifecyclesupport

Proposed Solution

I'm not entirely sure where this property can be properly implemented as this is only applicable to RDS for MySQL and RDS for PostgreSQL and on Aurora it is configured on the cluster.
Perhaps extending the interfaces provided to tge DatabaseClusterEngine. auroraMysql(),DatabaseClusterEngine. auroraPostgres() ,DatabaseInstanceEngine.mysql(), DatabaseInstanceEngine.postgres() functions to accept an optional parameter.

For example:

engine: rds.DatabaseClusterEngine.auroraPostgres(
  {
  	version: rds.AuroraPostgresEngineVersion.VER_17_2,
  	engineLifecycleSupport: EngineLifecycleSupport.OPEN_SOURCE_RDS_EXTENDED_SUPPORT_DISABLED // explicitly disabled. by default set to enabled.
  }
),

Other Information

No response

Acknowledgements

  • I may be able to implement this feature request
  • This feature might incur a breaking change

CDK version used

2.185.0

Environment details (OS name and version, etc.)

any

Metadata

Metadata

Assignees

No one assigned

    Labels

    @aws-cdk/aws-rdsRelated to Amazon Relational Databaseeffort/mediumMedium work item – several days of effortfeature-requestA feature should be added or improved.p2

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions