Как записать псевдопараметры в тропосфере?
Я хочу использовать псевдопараметр для тем TopicConfigurations. Так что я могу позволить выбор арн. Как я могу написать псевдопараметр, используя тропосферу?
Конфигурация темы: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html
Параметр псевдо: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/pseudo-parameter-reference.html
2 ответа
Я думаю, что это должно быть, из тропосферы /init.py:
Ref(AWS_NOTIFICATION_ARNS))
Вы бы просто использовали имя параметра в вызове Ref(), вот так:
Ref("AWS::NotificationARNs")
Я использую это все время, в основном с "AWS::NoValue" или "AWS::Region" в большинстве моих случаев использования.
Удачи!
Пример использования Fn::Join, AWS::Region и AWS::AccountId для формирования ARN
# Region and AccountId are pseudo parameters
from troposphere import Join, Region, AccountId
cloudwatch_log_arn = Join(
":", ["arn", "aws", "logs", Region, AccountId, "log-group", "log-name"]
)
Псевдопараметры используются с функцией Ref, но каждый из них определяется как отдельный объект в Troposphere:
AccountId = Ref(AWS_ACCOUNT_ID)
NotificationARNs = Ref(AWS_NOTIFICATION_ARNS)
NoValue = Ref(AWS_NO_VALUE)
Partition = Ref(AWS_PARTITION)
Region = Ref(AWS_REGION)
StackId = Ref(AWS_STACK_ID)
StackName = Ref(AWS_STACK_NAME)
URLSuffix = Ref(AWS_URL_SUFFIX)
Таким образом, их можно импортировать и использовать напрямую, как в примере выше.