Назад | Перейти на главную страницу

Шаблон CloudFormation: как использовать Sub и GetAtt одновременно в краткой форме?

Я использую ямл. Итак, мы можем использовать либо:

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

Также мы можем использовать:

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

как я могу использовать вывод GetAtt вместо ${AWS::StackName}, предпочтительно используя вторую форму GetAtt? Я знаю как использовать Join но я бы хотел остаться с Sub.

Просто удалите! GetAtt и укажите нужную переменную. В следующем коде 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}