gpt4 book ai didi

amazon-web-services - 模板格式错误: Every Mappings attribute must be a String or a List

转载 作者:行者123 更新时间:2023-12-03 15:43:16 25 4
gpt4 key购买 nike

我希望在 CloudFormation 模板的顶部有一些快速引用,这样我就不必在整个模板中每次需要时都编写复杂的引用。

所以我写了这个:

Mappings:
StandardResourcesMap:
AWSExecuteApi:
string: !Join [ ':' , ['arn', !Sub '${AWS::Partition}', 'execute-api', !Sub '${AWS::Region}', !Sub '${AWS::AccountId}'] ]
AWSLambdaFunctions:
string: !Join [ ':' , ['arn', !Sub '${AWS::Partition}', 'apigateway', !Sub '${AWS::Region}', 'lambda:path/2015-03-31/functions/'] ]

CloudFormation 模板的其余部分遵循此,并且,如果没有上面的行,模板将进行部署(S3 存储桶、DynamoDB 表和基于 python 3.7 的 Lambda)。

希望我可以使用:

!FindInMap [StandardResourcesMap,AWSExecuteApi,string]

每当我需要冗长的值时,但是模板验证失败:

An error occurred (ValidationError) when calling the CreateChangeSet operation: Template format error: Every Mappings attribute must be a String or a List.

正如标题所说。

我尝试了 Mappings 的多种变体,例如使用 !Ref 变体:

Mappings:
StandardResourcesMap:
AWSExecuteApi:
string: !Join [ ':' , ['arn', !Ref 'AWS::Partition', 'execute-api', !Ref 'AWS::Region', !Ref 'AWS::AccountId'] ]
AWSLambdaFunctions:
string: !Join [ ':' , ['arn', !Ref 'AWS::Partition', 'apigateway', !Ref 'AWS::Region', 'lambda:path/2015-03-31/functions/'] ]

我刚刚遇到了各种验证错误,主要集中在上面提到的错误。

任何帮助将不胜感激。

最佳答案

问题是这样的:您不能在“映射”部分中包含参数、伪参数或内部函数。 Mappings

关于amazon-web-services - 模板格式错误: Every Mappings attribute must be a String or a List,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60236834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com