当我尝试同时使用 join、sub 和 importvalue 时出现模板格式错误
Template format error when I try to use join,sub and importvalue together
我正在尝试同时使用 join、sub 和 import value,但是当我尝试使用它时,出现格式错误的模板错误。
这是我的代码部分:
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','*' ] ]
我这样做有什么问题吗?
试试这个:
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
是什么,但是根据你的加入条件,相信这就是你要达到的效果。
我正在尝试同时使用 join、sub 和 import value,但是当我尝试使用它时,出现格式错误的模板错误。
这是我的代码部分:
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','*' ] ]
我这样做有什么问题吗?
试试这个:
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
是什么,但是根据你的加入条件,相信这就是你要达到的效果。