我正在尝试使用join,sub和import值,但是当我尝试它时,我会收到格式错误的模板错误。
以下是我的代码部分:
EventSourceMapping:
Type: AWS::Lambda::EventSourceMapping
Properties:
EventSourceArn:
!Join [ "/", [ !Select [0, !Split ["/", Fn::ImportValue: !Sub '${project}-${EnvironmentApp}-stream-arn']],Fn::ImportValue: !Sub '${project}-${EnvironmentApp}-dynamodb-name','stream','*' ] ]
FunctionName:
Fn::GetAtt:
- LambdaDynamoEsConnector
- Arn
StartingPosition: TRIM_HORIZON
所以我得到错误:
!Join [ "/", [ !Select [0, !Split ["/", Fn::ImportValue: !Sub '${project}-${EnvironmentApp}-stream-arn']],Fn::ImportValue: !Sub '${project}-${EnvironmentApp}-dynamodb-name','stream','*' ] ]
我在做什么有什么问题?
答案 0 :(得分:2)
试试这个:
EventSourceMapping:
Type: "AWS::Lambda::EventSourceMapping"
Properties:
EventSourceArn:
!Join
- "/"
-
- !Select
- 0
- !Split
- "/"
- Fn::ImportValue:
!Sub "${project}-${EnvironmentApp}-stream-arn"
- Fn::ImportValue:
!Sub "${project}-${EnvironmentApp}-dynamodb-name"
- "stream"
- "*"
由于您未提及${project}-${EnvironmentApp}-stream-arn
和${project}-${EnvironmentApp}-dynamodb-name
的值,我不知道您要创建的EventSourceArn
是什么,但基于您的 < em>加入 条件,我相信这就是你想要实现的目标。