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

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

相关文章

python 获取一个值在某个区间的指定倍数的值方法

如下所示: #获取一个值在某个区间的指定倍数的值方法 #1 # print([i for i in range(1,101) if i%5==0]) # 2 # L = rang...

python分布式环境下的限流器的示例

项目中用到了限流,受限于一些实现方式上的东西,手撕了一个简单的服务端限流器。 服务端限流和客户端限流的区别,简单来说就是: 1)服务端限流 对接口请求进行限流,限制的是单位时间内请求的数...

python实现简单登陆系统

新手,虽然比较简单的东西,但是弄了我很久。 很多不完善的地方,比如锁定用户,同一用户输入错三次密码就会锁定,但是如果在第二第三次换了用户再输入原来的用户,则计数会重新计算。 另外不存在的...

Python编写的com组件发生R6034错误的原因与解决办法

解决该问题的方法可以为调用本程序的exe文件建立一个合适的manifest文件,指定正确的msvcr90.dll版本即可,具体可参照/post/35219.htm ps:可以使用mt.e...

解决Django连接db遇到的问题

解决Django连接db遇到的问题

1、django.db.utils.ConnectionDoesNotExist: The connection default doesn't exist 解决:第一个连接的命名一定...