Site icon Mr. 沙先生

CloudFormation 建立 RDS DB Subnet GroupName 自動轉小寫

這陣子接獲同事抱怨,CloudFormation 的雷非常多(深有同感),這篇記下同事暴雷的事件

事件發生在寫 CloudFormation Template 時在處理 AWS::RDS::DBSubnetGroup 時把 DBSubnetGroupName 也一併 Output 給其他 Stack 使用

情境是,DBSubnetGroupName 定義的是大駝峰的大小寫名稱

而在文件內是說 DBSubnetGroupName 會轉成小寫字元,可是 Example 又是大小寫混合。

DBSubnetGroupName

The name for the DB subnet group. This value is stored as a lowercase string.
Constraints: Must contain no more than 255 letters, numbers, periods, underscores, spaces, or hyphens. Must not be default.
Example: mySubnetgroup

此時的 CloudFormation DBSubnetGroupName Output 和實際的 DBSubnetGroupName 差異會是:

如果按照範例「大小寫混合」的情況,拿 Output 掛 RDS 就會發生錯誤(ExampleDbSG),因為實際上的值是 exampledbsg

Service: AmazonRDS; Status Code: 404; Error Code: DBSubnetGroupNotFoundFault …

最好的方式就是都用 “小寫” …

Exit mobile version