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