API Reference

PREVIEW DOCUMENTATION - This is a preview of a new format for the AWS SDK for Go API Reference documentation. For the current AWS SDK for Go API Reference, see

We welcome your feedback on this new version of the documentation. Send your comments to


import ""

type ResourceChangeDetail struct { CausingEntity *string `type:"string"` ChangeSource *string `type:"string" enum:"ChangeSource"` Evaluation *string `type:"string" enum:"EvaluationType"` Target *ResourceTargetDefinition `type:"structure"` }

For a resource with Modify as the action, the ResourceChange structure describes the changes AWS CloudFormation will make to that resource.


Type: *string

The identity of the entity that triggered this change. This entity is a member of the group that is specified by the ChangeSource field. For example, if you modified the value of the KeyPairName parameter, the CausingEntity is the name of the parameter (KeyPairName).

If the ChangeSource value is DirectModification, no value is given for CausingEntity.


Type: *string

The group to which the CausingEntity value belongs. There are five entity groups:

  • ResourceReference entities are Ref intrinsic functions that refer to resources in the template, such as { "Ref" : "MyEC2InstanceResource" }.

  • ParameterReference entities are Ref intrinsic functions that get template parameter values, such as { "Ref" : "MyPasswordParameter" }.

  • ResourceAttribute entities are Fn::GetAtt intrinsic functions that get resource attribute values, such as { "Fn::GetAtt" : [ "MyEC2InstanceResource",

"PublicDnsName" ] }.
  • DirectModification entities are changes that are made directly to the template.

  • Automatic entities are AWS::CloudFormation::Stack resource types, which are also known as nested stacks. If you made no changes to the AWS::CloudFormation::Stack resource, AWS CloudFormation sets the ChangeSource to Automatic because the nested stack's template might have changed. Changes to a nested stack's template aren't visible to AWS CloudFormation until you run an update on the parent stack.


Type: *string

Indicates whether AWS CloudFormation can determine the target value, and whether the target value will change before you execute a change set.

For Static evaluations, AWS CloudFormation can determine that the target value will change, and its value. For example, if you directly modify the InstanceType property of an EC2 instance, AWS CloudFormation knows that this property value will change, and its value, so this is a Static evaluation.

For Dynamic evaluations, cannot determine the target value because it depends on the result of an intrinsic function, such as a Ref or Fn::GetAtt intrinsic function, when the stack is updated. For example, if your template includes a reference to a resource that is conditionally recreated, the value of the reference (the physical ID of the resource) might change, depending on if the resource is recreated. If the resource is recreated, it will have a new physical ID, so all references to that resource will also be updated.


The field that AWS CloudFormation will change, such as the name of a resource's property, and whether the resource will be recreated.



func (s ResourceChangeDetail) GoString() string

GoString returns the string representation


func (s *ResourceChangeDetail) SetCausingEntity(v string) *ResourceChangeDetail

SetCausingEntity sets the CausingEntity field's value.


func (s *ResourceChangeDetail) SetChangeSource(v string) *ResourceChangeDetail

SetChangeSource sets the ChangeSource field's value.


func (s *ResourceChangeDetail) SetEvaluation(v string) *ResourceChangeDetail

SetEvaluation sets the Evaluation field's value.


func (s *ResourceChangeDetail) SetTarget(v *ResourceTargetDefinition) *ResourceChangeDetail

SetTarget sets the Target field's value.


func (s ResourceChangeDetail) String() string

String returns the string representation

On this page: