如何使用changed_when与ansible shell模块?

sor*_*rin 3 ansible

我有一个由ansible运行的复杂shell脚本,我确实希望在系统上进行更改时从它进行通信,因此Ansible将知道主机已被修改.

这是通过使用来实现的,changed_when: condition但问题是我不能真正依赖于用于success_with_change而不是success_without_change的特定退出代码.

还有哪些其他选择?我可以register:在里面使用和使用注册变量changed_when:来检查输出中的占位符字符串吗?

Kon*_*rov 6

是的,您可以使用注册变量.例如:

- shell: mycommand.sh
  register: script_res
  changed_when: "'changed' in script_res.stdout"
Run Code Online (Sandbox Code Playgroud)