cloudtools / troposphere

troposphere - Python library to create AWS CloudFormation descriptions
BSD 2-Clause "Simplified" License
4.93k stars 1.45k forks source link

Remove gp3 from list of storage types that require Iops to be set for RDS #2153

Closed romanglovahs closed 1 year ago

romanglovahs commented 1 year ago

Cloudformation does not allow to set Iops for storage GP3 < 400Gib, example error: Resource handler returned message: "You can't specify IOPS or storage throughput for engine mysql and a storage size less than 400. (Service: Rds, Status Code: 400 For <400Gib it's set automatically to 3000 and >=400 Gib is set to 12000

romanglovahs commented 1 year ago

@markpeek Hello Mark, can you please look into this

codingtim commented 1 year ago

We also just ran into this issue. However the storage size limit for specifying the Iops is different per DB engine as can be seen in this table: (for example Oracle Iops cannot be specified is storage size < 200) https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage So either the validation can be removed or take DB engine and storage size into consideration.

tnielsen2 commented 1 year ago

I have a PR in here that adds additional validator logic, but this would also fix our deployment issues we are experiencing as well.

https://github.com/cloudtools/troposphere/pull/2164

Note: this PR was also attempting to update refspec, but failed.

tnielsen2 commented 1 year ago

Tagging Mr @markpeek , Hi Mark is this something we can look at trying to get into the next release or some variation of it?

romanglovahs commented 1 year ago

@tnielsen2 Looks like Mark is not interested in this tool, I'd recommend to migrate to something else or fork it for full access

markpeek commented 1 year ago

@tnielsen2 was this resolved via 0faace5?

tnielsen2 commented 1 year ago

@tnielsen2 was this resolved via 0faace5?

Yep!

markpeek commented 1 year ago

Excellent. Thanks!