CloudFormation模板:如何在短时间内同时使用Sub和GetAtt?

我正在使用yaml。 所以,我们可以使用:

!GetAtt [ WebServer, AvailabilityZone ] !GetAtt WebServer.AvailabilityZone 

另外,我们可以使用:

 !Sub 'sometext-${AWS::StackName}' 

我怎样才能使用GetAtt输出,而不是${AWS::StackName} ,最好使用GetAtt的第二种forms? 我知道如何使用Join但是我想留在Sub

只需删除!GetAtt并引用所需的variables。 在下面的代码中,EIP.AllocationId通常通过!GetAtt返回。

 !Sub | #!/bin/bash export INSTANCEID=$(curl -s http://169.254.169.254/latest/meta-data/instance-id) aws ec2 associate-address --instance-id $INSTANCEID --allow-reassociation --allocation-id ${EIP.AllocationId} --region ${AWS::Region}