今天早上发现Jenkins的所有的任务都报错了,自己也很纳闷,没有做任何代码的提交,也没有修改Jenkins的配置,为什么为失败呢?

定位思路:

1.服务器上执行脚本,import jira,居然也报错。看了一下python的版本,python --version,不知道什么时候,python版本降到了2.7

2.解决方法,1)先从Path路径配置入手,看了下/etc/profile文件,发现路径配置没有问题 2)看了下软链,果然,软链回复到了linux系统默认的python指向。
        ln -s /usr/local/python/bin/python3.8 /usr/local/python
        ln -s /usr/local/python/bin/pip3.8 /usr/local/bin/pip

配置完成后,重新在本地执行了python脚本,运行没有问题了。启动了Jenkins执行任务,结果还是报错。顿时傻眼了。

3.在代码中打出了 sys.path的路径,发现路径上出现了 python3.6,我自己原来安装的是python3.8,进入到site-packages中,没有任何的包,所以执行脚本用到python3.6后,一定不会执行成功。

['/usr/lib64/python36.zip', '/usr/lib64/python3.6', '/usr/lib64/python3.6/lib-dynload', '/usr/lib64/python3.6/site-packages', '/usr/lib/python3.6/site-packages', None]

        解决方法:

                1.把python3.6给删除,

                2.软链的修改

                        ln -s /usr/local/software/python/bin/pip3.8 /usr/bin/pip

                        ln -s /usr/local/software/python/bin/python3.8 /usr/bin/python

最后重新运行Jenkins任务,执行成功。

总结:实际上从问题发现到解决的过程,都能够判断出是python版本的原因导致的。但是因为在最开始的时候,一直固定的认为服务器上只有python2.7和python3.8这两个版本,在本地执行也没有问题,导致反复查找根本原因。后来不知道是做了什么操作,系统中有自动安装了对应依赖的python3.6版本,导致了整体Jenkinks任务的执行失败。还是需要细致判断才能解决问题。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐