python调用jenkinsAPI

一、概述

在工作中我们会有直接想通过http方式运行Jenkins job的需求,这样就不需要每次都进入JENKINS的页面了。

二、安装python-jenkins

pip3 install python-jenkins

基本用法:

import jenkins
# 登录jenkins
server = jenkins.Jenkins('http://192.168.59.149:8080', username='jenkins', password='[email protected]!23')
# 构建普通job
server.build_job('jxInstantQuery')
# 构建参数化job
server.build_job('jxInstantQuery2', {'param1': 'aaa', 'param2': 'bbb'})

三、项目演示

本文采用 Jenkins 2.222.4,ip地址为:10.212.82.86

构建普通job

这里有一个普通job,构建时,不需要任何参数。

                                   python调用jenkinsAPI

 

python代码如下:

jenkins_build.py

import jenkins
server = jenkins.Jenkins('http://10.212.82.86:8080', username='admin', password='admin')
server.build_job('test')

执行代码

python3 jenkins_build.py

查看jenkins页面,此时会有提示,等待几秒构建。

                                                    python调用jenkinsAPI

 

等待几分钟,就会构建成功。

构建参数化job

 再来看另外一个参数化job

点击Build with Parameters

 

                                              python调用jenkinsAPI

                                   python调用jenkinsAPI

 

注意:这里有2个参数。其中发布时,是不需要填写BUILD_ID的。只有回滚时,才需要BUILD_ID。

发布

jenkins_build.py

import jenkins
server = jenkins.Jenkins('http://10.212.82.86:8080', username='admin', password='admin')
server.build_job('test_admin', {'Status': 'Deploy', 'BUILD_ID': ''})

回滚

jenkins_build.py

import jenkins
server = jenkins.Jenkins('http://10.212.82.86:8080', username='admin', password='admin')
server.build_job('test_admin', {'Status': 'Rollback', 'BUILD_ID': '26'})

注意,这里的BUILD_ID,指的是jenkins job构建id。

俺叫小枫,一个成天想着一夜暴富的测试员

(1140267353)一起成长一起加油的伙伴群!软件测试,与你同行!
群内可领取小枫给大家准备的最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!

点赞评论关注不迷路!!!【三连?】,有问题也可私聊哟~(*?▽?*)