【发布时间】:2021-05-23 22:42:39
【问题描述】:
我正在与一个开发团队一起开发 Ansible 插件。有些使用 Windows,有些使用 Linux。我们依赖 Visual Studio Code 作为 IDE。我们使用pipenv 来定义我们的开发环境。
我想要实现的是一个调试配置 (launch.json),它适用于所有开发人员而无需修改(因此可以安全地提交到 git 存储库)。
我们想用于调试的ansible-playbook 命令是stub file 的符号链接,实际功能由sys.argv[0] 定义。
VSCode Python 扩展允许 debugging 通过指定 Python 文件或模块 (python3 -m <module>)。对于我的方法,我更喜欢后者,因为它不需要实际路径。虽然python3 -m ansible.cli.scripts.ansible_cli_stub 调用了正确的模块,但由于sys.argv[0] 值与ansible-playbook 不匹配,因此它不起作用。创建一个指向 ansible-playbook 符号链接作为源文件的启动配置是可行的,但由于不同开发人员的虚拟环境位置不同,因此不可移植。
您知道我们如何创建一个可移植的launch.json,其运行配置对应于ansible-playbook some-playbook.yml吗?
【问题讨论】:
标签: python visual-studio-code ansible vscode-debugger