通常,当Ansible使用win_command
/win_shell
/win_psexec
启动PowerShell脚本时,只要它没有遇到错误,它就会返回changed
,因为它当然不知道所有脚本都做了什么。
由于我们可以在PowerShell脚本中返回任何退出代码,是否有办法通过退出代码或其他方式通知Ansible不需要更改,以便Ansible返回OK
状态?
还是无论发生什么都返回changed
(假设没有失败)?
通常,当Ansible使用win_command
/win_shell
/win_psexec
启动PowerShell脚本时,只要它没有遇到错误,它就会返回changed
,因为它当然不知道所有脚本都做了什么。
由于我们可以在PowerShell脚本中返回任何退出代码,是否有办法通过退出代码或其他方式通知Ansible不需要更改,以便Ansible返回OK
状态?
还是无论发生什么都返回changed
(假设没有失败)?
1条答案
按热度按时间cnh2zyt31#
changed
,因为它当然不知道所有脚本做了什么 *对,因为这是为这种类型的模块定义的默认行为。
关于你的问题
OK
状态?*这已经是一个正确的想法了,也就是说,是的,这种行为是可能的。
除了已经给出的关于定义
changed
的注解之外,还需要定义失败,因为否则non-zero return code
会导致失败。行动手册最小示例
将导致输出
类似的问答
shell
command and set taskchanged
win_powershell
module accesses the$Ansible
PowerShell variable