如何在IDE(PyCharm)中运行/调试Ansible剧本?

时间:2019-01-18 23:41:42

标签: ansible pycharm

通过使用-vvvv作为参数运行剧本,例如,我可以深入了解正在发生的事情。 ansible-playbook myplaybook.yaml -vvvv。而且我可以将各个模块导入Python程序中,将参数传递给它们,然后逐步进入IDE。方便。

我真正想要的是使用PyCharm打开Ansible剧本,并逐行调试器,以了解所有变量的状态。由于Ansible是用Python编写的,因此我认为应该有一种在Python IDE中运行Ansible剧本的方法。

有人知道该怎么做吗?

1 个答案:

答案 0 :(得分:1)

  1. 将ansible安装到您的virtualenv中,或者进行其他安装,以便PyCharm可以看到ansible中的bin文件;遗憾的是,由于它们有164行python,而不仅仅是__main__,因此您不能将其作为python -m ansible.cli.playbook或任何类似的方法来调用
  2. 使用指向.../bin/ansible.../bin/ansible-playbook等的“ Python脚本”创建运行配置

    为方便起见,您还可以在PyCharm中打开bin/ansible,导航到if __name__行,然后点击左侧装订线中的“播放三角形”,尽管这样做会导致python进程在bin目录中启动,可能会很烦人

  3. 在您选择的ansible python文件中设置一个断点
  4. 启动调试器

请注意,在某些情况下,ansible会花钱做事,据我所知,PyCharm的调试器不会跟随子进程或其朋友,因此您会如果您希望能够调试那些样式的模块,包括在library/*.py中的任何自己的脚本或任何其他内容,则必须跳过一些箍。

我非常喜欢PyCharm,但是对于这种特定情况,您可能更乐于在剧本中使用strategy: debug并与 ansible 调试器进行战斗