调试时退出 Ansible playbook 的最简单方法

s g*_* g 17 ansible

假设我正在调试 Ansible playbook 并想在给定任务后退出(而不是运行以下所有任务)。是否有任何可用的单行魔术命令,或者我是否必须手动创建退出/断言任务?

ansible-playbook手册中,我看到有一个--start-at-task=START_AT标志,但我没有看到类似“结束”对应的东西。

xdd*_*dsg 18

使用- pause:可能适合。

暂停剧本执行一段时间,或直到确认提示。所有参数都是可选的。默认行为是在提示下暂停。ctrl+c如果您希望在设置为过期之前提前暂停,或者如果您需要完全中止剧本运行,您可以使用。要提前继续:按ctrl+c,然后按c。要中止剧本:按ctrl+c,然后按a

http://docs.ansible.com/pause_module.html

或者,- fail:如果您肯定不想继续,则只是直道。

如果你想要执行一个任务块,你可以使用标签和--with-tags:。Ansible v2 将具有适当的代码块,因此您可以将单个代码块when:用于多个任务。


xdd*_*dsg 18

- meta: end_play

end_play (在 2.2 中添加)导致播放结束而不会使主机失败。

  • 这结束了_play_而不是_playbook_。 (3认同)

小智 5

ansible-playbook --step 将让您确认要运行的每个任务并随时停止执行。