如何解决FindInMap
我正在尝试转换传递给FindInMap的键之一。我尝试遵循的示例来自此处:
- Fn::FindInMap
- 'Fn::Transform':
Name: 'String'
Parameters:
InputString: !Ref Env
Operation:
Replace:
Old: "-"
New: ""
- !Ref "AWS::Region"
- 'AppSubnetIds'
我收到以下错误消息作为响应:
mapping values are not allowed here
in "<unicode string>",line 186,column 28:
- 'Fn::Transform':
^ (line: 186)
我的语法有问题吗?还是通常不可能?
解决方法
这是语法错误。 in the repository为Replace
操作提供了一个示例。这是我能够部署的模板,它在Transform
内使用FindInMap
并创建带有test-key:test-value
标签的S3存储桶:
Parameters:
Env:
Type: String
Default: env-dev
Mappings:
envdev:
us-east-1:
AppSubnetIds: test-value
Resources:
S3Bucket:
Type: "AWS::S3::Bucket"
Properties:
Tags:
- Key: test-key
Value:
'Fn::FindInMap':
- 'Fn::Transform':
Name: 'String'
Parameters:
InputString: !Ref Env
Operation: Replace
Old: "-"
New: ""
- !Ref "AWS::Region"
- AppSubnetIds
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。