jenkins执行python脚本的方法,和python版本的兼容性问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins执行python脚本的方法,和python版本的兼容性问题相关的知识,希望对你有一定的参考价值。

在jenkins上打算运行一段python脚本,查到一些常用的方法,下面会介绍。还遇到了版本兼容性问题导致的怎么都执行不成功,最终试了各种版本,定位到兼容性问题,真是各种坑。

一般有三种方法:
1.安装执行python的插件: Python Plugin,安装后在配置那里就可以看到以下的选项,可以在Script部分直接写python代码

技术分享

2. 用Execute Windows batch command执行python脚本

技术分享

3. 用Execute shell执行python脚本,注意开始要写#!python.exe

技术分享

以上三种方法需要在搭建jenkins的机器上安装python环境,并在jenkins的系统添加一个python安装路径的全局变量,键名试过写“python”或“Path”都ok。

技术分享

实际使用时遇到的问题是:在我搭建的环境中以上三种开始只有第二种可以执行成功,后来安装了EnvInject Plugin插件后第二种执行方法也不行。

执行的错误提示:

用第一种方法执行的错误提示下面这幅图:

技术分享

用第二种方法执行的错误提示下面这样,一直停留在我框住的那一行,不返回,图中是我手动返回的。

技术分享

反复试验查找问题的原因都未果,后来开始排查问题,我系统的环境如下:

jenkins版本:2.7.1

python环境:3.6.0 (python-3.6.0-amd64.exe)

1. 怀疑python安装包位数问题:

因为jenkins是安装在Program Files (x86)下的,开始怀疑是不是python的安装包的位数的问题,是不是应该安装32位的python。卸载之前的python环境,先安装了一个python3.5.1 的32位的安装包结果依然不行。

2. 我用的jenkins也不是最新版,怀疑是不是对python3的支持不好。

卸载之前的版本,安装了2.7.8的版本的python之后,采用3种方法运行python脚本都可以正确运行。但还是要记得在系统设置里添加python的安装路径才可以。


本文出自 “ntting” 博客,请务必保留此出处http://ntting.blog.51cto.com/12385331/1891132

以上是关于jenkins执行python脚本的方法,和python版本的兼容性问题的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins执行Python脚本不实时输出

python脚本引用jenkins的选项参数

我刚刚学会用Jenkins自动执行Python脚本输出测试报告!你呢?

【python3-5】Jenkins pipline 执行python脚本发送企业微信通知

jenkins学习5-jenkins拉取git仓库代码,执行python自动化脚本

在Jenkins2.X使用Pipeline执行python测试脚本