playbook的逻辑控制语句
- when
- 条件判断语句,类似if
- loop
- 循环语句,类似loop
- block
- 将几个任务组成一个代码块,便于针对一组操作的异常进行处理
when的基本用法
when的运算符操作
- when关键字可以配合各种运算符进行操作,如下:
- 比较运算符
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
== | 相等 | != | 不等 |
> | 大于 | < | 小于 |
>= | 大于等于 | <= | 小于等于 |
- 逻辑运算符
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
and | 逻辑与 | or | 逻辑或 |
not | 逻辑否 | () | 组合表达式 |
- 路径条件判断
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
is exists | 路径存在 | is not exists | 路径不存在 |
- 判断变量
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
defined | 变量已定义 | undefined | 变量未定义 |
none | 变量为空 |
- 判断执行结果
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
success/successed | 任务成功 | failure/failed | 任务失败 |
change/changed | 任务状态为changed | skip/skipped | 任务被跳过 |
- 判断路径
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
file | 路径是文件 | directory | 路径是目录 |
link | 路径是软链接 | mount | 路径是挂载点 |
exists | 路径存在 |
- 判断字符串
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
lower | 字符均小写 | upper | 字符均大写 |
- 判断整除
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
even | 为偶数 | odd | 为奇数 |
divisibleby(n) | 能被n整除 |
- 版本号大小比较
version
运算符 | 用法 | 运算符 | 用法 |
---|---|---|---|
>/gt | 大于 | >=/ge | 大于等于 |
</lt | 小于 | <=/le | 小于等于 |
=/==/eq | 等于 | !=/<>/ne | 不等于 |
- 判断一个list是不是另一个list的子集
superset
- 判断一个字符串是否存在于另一个字符串中
in
- 判断对象是否为一个数字
number