我对配置Jenkins或Python还是很陌生,但我必须在Jenkins中设置单一测试。我的程序是在Python中运行的,但仅在Python 2.6上可以运行,而我应该使用的Jenkins版本是2.7,因此我试图设置Jenkins来设置一些环境变量,以便它准备为该特定测试启动准确的Python(它是一个更大的项目的一部分,该项目将成功运行其他运行良好的测试)。
我的想法是在命令中设置执行几个环境变量,例如PATH,LD_LIBRARY_PATH和PYTHONPATH,例如“ Execute shell”命令行解释器中的以下命令:
PYTHONPATH=/path/to/python2.6/lib:$PYTHONPATH PATH=/path/to/python2.6/bin:$PATH LD_LIBRARY_PATH=/path/to/python2.6/lib:$LD_LIBRARY_PATH
…但是,它仍然在调用错误的Python版本。因此,我将这些变量强制为:
PYTHONPATH=/path/to/python2.6/lib PATH=/path/to/python2.6/bin LD_LIBRARY_PATH=/path/to/python2.6/lib
…而且我仍然会收到错误消息,因为调用了旧版本的Python,即使它不应该出现在PATH中也是如此…看来Jenkins会记住旧库的位置,但是会尝试先加载它们。
如何在Jenkins的“子项目”中正确设置环境,以便可以调用其他版本的Python?
感谢你并致以真诚的问候,
〜斯特凡
愚蠢的我……我的确确实在做正确的事情,我的代码中有一部分覆盖了PYTHONPATH值,所以我以前找到的解决方案很好。仅供参考,如果对任何人有帮助,我都会修改我的shebang;)