Amazon cloudformation 基于条件使用两个不同入口点的cloudformatoin任务定义
我必须根据条件添加TaskDefinition条目。下面是我创建的模板Amazon cloudformation 基于条件使用两个不同入口点的cloudformatoin任务定义,amazon-cloudformation,ecs-taskdefinition,Amazon Cloudformation,Ecs Taskdefinition,我必须根据条件添加TaskDefinition条目。下面是我创建的模板 Conditions IsProdEnv: !Equals [ !Ref envtype, "prod" ] TaskDefinition: Type: AWS::ECS::TaskDefinition Properties: ContainerDefinitions: EntryPoint: - !If [IsPr
Conditions
IsProdEnv: !Equals [ !Ref envtype, "prod" ]
TaskDefinition:
Type: AWS::ECS::TaskDefinition
Properties:
ContainerDefinitions:
EntryPoint:
- !If [IsProdEnv, !Split [",", ["python3", "hello.py"]], "./script.sh"]
我要走了
模板错误:每个Fn::Split对象都需要两个参数,(1)字符串分隔符,(2)要拆分的字符串或返回要拆分的字符串的函数
您有两个字符串而不是一个:
“python3”
和“hello.py”
。您需要有一个字符串,例如“python3,hello.py”
。这个字符串的外观取决于您的用例。我也尝试过这种方法。得到下面的错误。资源处理程序返回消息:“模型验证失败。”(#/ContainerDefinitions/0/VolumesFrom/0/ReadOnly:expected type:Boolean,found:String#/ContainerDefinitions/0/EntryPoint/3:expected type:String,found:JSONArray#/ContainerDefinitions/0/挂载点/0/ReadOnly:expected type:Boolean,found:String#/ContainerDefinitions/1/基本:预期类型:布尔,已找到:字符串#/ContainerDefinitions/1/装入点/0/只读:预期类型:布尔,已找到:字符串)”