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设计】。

相关文章

PyQt QListWidget修改列表项item的行高方法

PyQt QListWidget修改列表项item的行高方法

百度,谷歌之后都说用setHintSize(self,QCore.QSize(width,height)),然并卵,后来用qss修改就可以了,具体用法如下 以上这篇PyQt QList...

python中enumerate函数用法实例分析

本文实例讲述了python中enumerate函数用法。分享给大家供大家参考。具体分析如下: 今日发现一个新函数 enumerate 。一般情况下对一个列表或数组既要遍历索引又要遍历元素...

浅析python继承与多重继承

记住以下几点: 直接子类化内置类型(如dict,list或str)容易出错,因为内置类型的方法通常会忽略用户覆盖的方法,不要子类化内置类型,用户自定义的类应该继承collections模...

Python中的条件判断语句基础学习教程

if语句用来检验一个条件, 如果 条件为真,我们运行一块语句(称为 if-块 ), 否则 我们处理另外一块语句(称为 else-块 )。 else 从句是可选的。 使用if语句:...

对python numpy数组中冒号的使用方法详解

对python numpy数组中冒号的使用方法详解

python中冒号实际上有两个意思:1.默认全部选择;2. 指定范围。 下面看例子 定义数组 X=array([[1,2,3,4],[5,6,7,8],[9,10,11,12],[1...