InvalidTemplateException Every Condition member must be a string.
。 CLI 没有提供有关哪里出现问题的更多详细信息。Parameters:
LocalExecution:
Type: String
Default: "false"
AllowedValues:
Conditions:
IsLocalExecution: !Equals [ !Ref LocalExecution, 'true' ]
Resources:
ProductionDeploy:
Type: AWS::Serverless::Function
Condition: !Not [ IsLocalExecution ]
Properties:
...
LocalExecution:
Type: AWS::Serverless::Function
Condition: IsLocalExecution
Properties:
...
这就是问题:
Condition: !Not [ IsLocalExecution ]
创造新条件
IsNotLocalExecution: !Equals [ !Ref LocalExecution, 'false' ]
改为使用该条件:
ProductionDeploy:
Type: AWS::Serverless::Function
Condition: IsNotLocalExecution
Properties:
...
由于我的条件是一个字符串,我不确定出了什么问题。
这是一个误解。
!Not
会将条件转换为布尔值。它不再是一根绳子了。