Ansible中 'changed_when’关键字的作用是在条件成立时,将对应任务的执行状态设置为changed
Ansible中用得比较多的是handler, 当task真正执行后状态变为 change时候 handler下的task生效
当然change_when 还有个 false用法,这样task返回状态永远为ok
---
- hosts: sf
remote_user: root
tasks:
- debug:
msg: "ansible change test"
changed_when: 2 > 1
TASK [debug] ********************************************************************************************************************************************************
changed: [10.0.5.89] => {
"msg": "ansible change test"
}
---
- hosts: sf
remote_user: root
tasks:
- debug:
msg: "ansible change test"
changed_when: false
TASK [debug] ********************************************************************************************************************************************************
ok: [10.0.5.89] => {
"msg": "ansible change test"
}