andreineculau / fl-aws

Flaws at AWS
Apache License 2.0
15 stars 0 forks source link

cloudformation: renaming an apigateway recordsetgroup resource ends up in deletion #32

Open andreineculau opened 6 years ago

andreineculau commented 6 years ago

imagine you have a diff in a cloudformation stack template similar to

-    "RouteGroup": {
+    "ApiRouteGroup": {
       "Properties": {
         "HostedZoneName": "example.com.",
         "RecordSets": [
           {
             "Name": "foo.example.com",
             "ResourceRecords": [
               "bar.example.com"
             ],
             "TTL": 300,
             "Type": "CNAME"
           }
         ]
       },
       "Type": "AWS::Route53::RecordSetGroup"
     },

basically a rename.

Don't be confused when you see this in your cloudformation event log:

18:17:12 UTC+0100   UPDATE_COMPLETE AWS::CloudFormation::Stack  ci  
18:17:12 UTC+0100   DELETE_COMPLETE AWS::Route53::RecordSetGroup    RouteGroup  
18:16:39 UTC+0100   DELETE_IN_PROGRESS  AWS::Route53::RecordSetGroup    RouteGroup  
18:16:36 UTC+0100   UPDATE_COMPLETE_CLEANUP_IN_PROGRESS AWS::CloudFormation::Stack  ci  
18:16:33 UTC+0100   CREATE_COMPLETE AWS::Route53::RecordSetGroup    ApiRouteGroup   
18:15:27 UTC+0100   CREATE_IN_PROGRESS  AWS::Route53::RecordSetGroup    ApiRouteGroup   Resource creation Initiated
18:15:24 UTC+0100   CREATE_IN_PROGRESS  AWS::Route53::RecordSetGroup    ApiRouteGroup   
18:15:20 UTC+0100   UPDATE_IN_PROGRESS  AWS::CloudFormation::Stack  ci  User Initiated

CloudFormation DELETES the DNS record !