dustincarr
dustincarr

Reputation: 1415

On aws-rds on aws-cdk, where is the setting to make database publicly accessible?

With AWS RDS, the console and the CLI/API both have a switch to make the database publicly accessible, but I cannot find a way to do this with the new aws-cdk using the constructs provided. There is a boolean for this in the Cloud Formation classes (e.g. CfnDBInstance), but I can't find documentation on how to use that in combination with the constructs. The CDK is pretty amazing, and it set up everything perfectly with just a few lines of code, except for this one piece.

Upvotes: 7

Views: 1886

Answers (2)

jogold
jogold

Reputation: 7407

Whether the database is made publicly accessible or not is derived from the vpcSubnets prop which is of type ec2.SubnetSelection.

const instance = new rds.DatabaseInstance(this, 'Instance', {
  ... // other props
  vpcSubnets: { subnetType: ec2.SubnetType.PUBLIC }
});

See https://github.com/aws/aws-cdk/blob/v1.62.0/packages/%40aws-cdk/aws-rds/lib/instance.ts#L315

Upvotes: 11

iamthecodemonkey
iamthecodemonkey

Reputation: 51

For the python crowd:

database = rds.DatabaseInstance(self, "Instance", 
        ... // other props
            vpc_placement=ec2.SubnetSelection(subnet_type=ec2.SubnetType.PUBLIC),
        )

Upvotes: 5

Related Questions