jenkins执行python脚本的方法

发布时间:2019-09-14 09:49:50编辑:auto阅读(3195)

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

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

    wKiom1h178STxToIAAA1X0Hoalc246.png-wh_50

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

    wKiom1h178WRWYk-AAAm_aTDbeY607.png-wh_50

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

    wKioL1h178XwFuGUAAAg-BVcp98973.png-wh_50

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

    wKiom1h178WAXivFAAAmERFlieE547.png-wh_50

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

    执行的错误提示:

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

    wKioL1h178aj33oRAADYOStN9Xg958.png-wh_50

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

    wKiom1h178bDFqijAABsztCQiV8094.png-wh_50

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

    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的安装路径才可以。


关键字