調用內建函式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"}
]
}
]
}
}
}