我使用py-winrm-plugin来执行一些命令形式rundeck。但是,在执行过程中,我得到以下错误:
Failed: IOFailure: [WinRMPython] Cannot run program "python": error=2, No such file or directory
如果我在项目配置中将默认节点执行器更改为Python WinRM并将Python解释器更改为python3
,则可以正常工作,但我希望将默认节点执行器保留为SSH,因为90%的节点都是基于Linux的。对于windows节点,我想将这些设置定义为节点定义的一部分,我尝试了设置winrm-python-Interpreter
或winrm-Interpreter
,但这些似乎都没有任何影响。
官方文档也没有提到如何在节点定义中指定解释器。
"ahost ":{
"description":"server"
"hostname":"ahost",
"node-executor":"WinRMPython",
"nodename":" ahost ",
"osArch":"amd64",
"osFamily":"windows",
"osName":"Windows",
"osVersion":"2020",
"tags":"windows",
"winrm-python-Interpreter":"python3"
},
1条答案
按热度按时间agxfikkp1#
这还没有实现(官方),但是你可以尝试编译包含this pull request的插件,其中包含
winrm-interpreter
属性以在节点级别定义它。现在,一个好的解决方法是将
python
可执行文件定义为指向操作系统级所需特定解释器的符号链接。另一种解决方法是使用PyWinRM作为默认的项目节点执行器(在项目级别配置解释),并在节点级别定义SSH节点。