Repository: cloudtools/troposphere

Issue:
RDS VPC example instance classes are out of date
https://github.com/cloudtools/troposphere/blob/565247a50bd27a8f45c3e408b466b193473cb9a6/examples/RDS_VPC.py#L67-L76

The current list of instance classes is documented here: https://aws.amazon.com/rds/instance-types/


Discussion:

Resolving patch:
diff --git a/examples/RDS_VPC.py b/examples/RDS_VPC.py
--- a/examples/RDS_VPC.py
+++ b/examples/RDS_VPC.py
@@ -70,8 +70,17 @@
     Description="Database instance class",
     Type="String",
     AllowedValues=[
-        "db.m1.small", "db.m1.large", "db.m1.xlarge", "db.m2.xlarge",
-        "db.m2.2xlarge", "db.m2.4xlarge"],
+      "db.m5.large", "db.m5.xlarge", "db.m5.2xlarge", "db.m5.4xlarge",
+      "db.m5.12xlarge", "db.m5.24xlarge", "db.m4.large", "db.m4.xlarge",
+      "db.m4.2xlarge", "db.m4.4xlarge", "db.m4.10xlarge", "db.m4.16xlarge",
+      "db.r4.large", "db.r4.xlarge", "db.r4.2xlarge", "db.r4.4xlarge",
+      "db.r4.8xlarge", "db.r4.16xlarge", "db.x1e.xlarge", "db.x1e.2xlarge",
+      "db.x1e.4xlarge", "db.x1e.8xlarge", "db.x1e.16xlarge", "db.x1e.32xlarge",
+      "db.x1.16xlarge", "db.x1.32xlarge", "db.r3.large", "db.r3.xlarge",
+      "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", "db.t2.micro",
+      "db.t2.small", "db.t2.medium", "db.t2.large", "db.t2.xlarge",
+      "db.t2.2xlarge"
+    ],
     ConstraintDescription="must select a valid database instance type.",
 ))
 


Test patch:
diff --git a/tests/examples_output/RDS_VPC.template b/tests/examples_output/RDS_VPC.template
--- a/tests/examples_output/RDS_VPC.template
+++ b/tests/examples_output/RDS_VPC.template
@@ -40,12 +40,43 @@
         },
         "DBClass": {
             "AllowedValues": [
-                "db.m1.small",
-                "db.m1.large",
-                "db.m1.xlarge",
-                "db.m2.xlarge",
-                "db.m2.2xlarge",
-                "db.m2.4xlarge"
+                "db.m5.large",
+                "db.m5.xlarge",
+                "db.m5.2xlarge",
+                "db.m5.4xlarge",
+                "db.m5.12xlarge",
+                "db.m5.24xlarge",
+                "db.m4.large",
+                "db.m4.xlarge",
+                "db.m4.2xlarge",
+                "db.m4.4xlarge",
+                "db.m4.10xlarge",
+                "db.m4.16xlarge",
+                "db.r4.large",
+                "db.r4.xlarge",
+                "db.r4.2xlarge",
+                "db.r4.4xlarge",
+                "db.r4.8xlarge",
+                "db.r4.16xlarge",
+                "db.x1e.xlarge",
+                "db.x1e.2xlarge",
+                "db.x1e.4xlarge",
+                "db.x1e.8xlarge",
+                "db.x1e.16xlarge",
+                "db.x1e.32xlarge",
+                "db.x1.16xlarge",
+                "db.x1.32xlarge",
+                "db.r3.large",
+                "db.r3.xlarge",
+                "db.r3.2xlarge",
+                "db.r3.4xlarge",
+                "db.r3.8xlarge",
+                "db.t2.micro",
+                "db.t2.small",
+                "db.t2.medium",
+                "db.t2.large",
+                "db.t2.xlarge",
+                "db.t2.2xlarge"
             ],
             "ConstraintDescription": "must select a valid database instance type.",
             "Default": "db.m1.small",