python jenkins 打包构建代码的示例代码

yipeiwu_com6年前Python基础

python jenkins 打包构建代码

# pip install python-jenkins

import jenkins
import pprint
import time

# 在jenkins 的Configure Global Security下 , 取消“防止跨站点请求伪造(Prevent Cross Site Request Forgery exploits)”的勾选
server = jenkins.Jenkins('http://192.168.100.151:8081', username='admin', password='admin')

# 下次构建的id
jenkins_next_build_number = server.get_job_info("test")['nextBuildNumber']

# 开始构建 build_job(self, name, parameters=None, token=None)  parameters可以加入参数
server.build_job("test", parameters={'version': '1.0.2', "env": "test"})

time.sleep(10)

while True:
  time.sleep(1)
  if server.get_job_info("test")['lastCompletedBuild']['number'] == jenkins_next_build_number:
    print("-------------------构建完成-----------------------")
    break

  result = server.get_build_console_output("test", jenkins_next_build_number)
  print(result)

info = server.get_build_info("test", jenkins_next_build_number)
print(f"构建时间 {int(info['duration']) / 1000}秒")

if server.get_job_info("test")['lastCompletedBuild']['number'] == \
    server.get_job_info("test")['lastSuccessfulBuild']['number']:
  print("构建成功")
else:
  print("构建失败")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)

使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)

本文介绍了如何在pytorch下搭建AlexNet,使用了两种方法,一种是直接加载预训练模型,并根据自己的需要微调(将最后一层全连接层输出由1000改为10),另一种是手动搭建。 构建模...

Python比较配置文件的方法实例详解

工作中最常见的配置文件有四种:普通key=value的配置文件、Json格式的配置文件、HTML格式的配置文件以及YMAML配置文件。 这其中以第一种居多,后三种在成熟的开源产品中较为...

Python竟能画这么漂亮的花,帅呆了(代码分享)

Python竟能画这么漂亮的花,帅呆了(代码分享)

阅读本文大概需要3分钟 关于函数和模块讲了这么久,我一直想用一个好玩有趣的小例子来总结一下,同时也作为实战练习一下。 趣味编程其实是最好的学习途径,回想十几年前我刚毕业的时候,第一份工...

为Python的web框架编写前端模版的教程

为Python的web框架编写前端模版的教程

虽然我们跑通了一个最简单的MVC,但是页面效果肯定不会让人满意。 对于复杂的HTML前端页面来说,我们需要一套基础的CSS框架来完成页面布局和基本样式。另外,jQuery作为操作DOM的...

Python中的time模块与datetime模块用法总结

time模块 time模块是包含各方面对时间操作的函数. 尽管这些常常有效但不是所有方法在任意平台中有效. time用struct_time表示时间 import time # t...