调用内部函数Fn::Or代表OR运算符,最少包含两个条件。如果任意一个指定条件计算为true,则返回true;如果所有条件都计算为false,则返回false。
函数声明
JSON
{ "Fn::Or": [ "condition1", "condition2", ... ] }
YAML
完整函数的语法。
Fn::Or: - condition1 - condition2 - ...
缩写形式。
!Or [condition1, condition2, ...]
参数信息
condition
:计算为true或false的条件。
返回值
true或false。
使用示例
您只能在Conditions和Rules中使用Fn::Or定义条件。
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
EnvType:
Type: String
Default: pre
Conditions:
TestEqualsCond:
!Equals
- prod
- !Ref EnvType
TestOrCond:
!Or
- TestEqualsCond
- !Equals
- pre
- !Ref EnvType
{
"Parameters": {
"EnvType": {
"Default": "pre",
"Type": "String"
}
},
"Conditions": {
"TestEqualsCond": {
"Fn::Equals": [
"prod",
{"Ref": "EnvType"}
]
},
"TestAndCond": {
"Fn::Or": [
"TestEqualsCond",
{
"Fn::Equals": [
"pre",
{"Ref": "EnvType"}
]
}
]
}
}
}