前言:
此刻兄弟们对“jenkins执行python”大致比较关心,朋友们都需要分析一些“jenkins执行python”的相关内容。那么小编也在网络上汇集了一些有关“jenkins执行python””的相关内容,希望大家能喜欢,看官们一起来了解一下吧!今天在翻有道云笔记,看到了曾经在LS写过的一段python脚本,拿来给大家分享下
#!/usr/bin/python#-*- coding: utf-8 -*-import jenkinsimport timeimport sysimport jsondef jenkins_job(job_name,kw=""): server = jenkins.Jenkins(';, username='leo.li', password='111111') reload(sys) sys.setdefaultencoding('utf-8') job_name=job_name.decode('gbk').encode('utf-8') #kw={"app":"search-service","ip": "172.16.1.130","bantch":"master"} print kw kw_len=len(kw) r1= server.get_job_info(job_name)['lastCompletedBuild']['number']#最后一次完成的构建号 r2= server.get_job_info(job_name)['lastBuild']['number'] print type(kw) if kw_len != 0: kwj1=eval(kw) print kwj1 kwj2=json.dumps(kwj1) print kwj2 kwj=json.loads(kwj2) print kwj print type(kwj) parameters=kwj else: parameters={} print u'构建号','r2=',r2 if r1 == r2: server.build_job(job_name,parameters=parameters) print u'正在发送构建命令,请等待10秒' time.sleep(10) num_id=server.get_job_info(job_name)['lastBuild']['number'] print u'新的构建号numb_id=',num_id a=num_id-r2 print u'新旧构建号差值为a=',a if a == 1: re_rn=server.get_build_info(job_name,num_id)['building'] while re_rn : print u'构建还在执行中,请等待10秒' time.sleep(10) re_rn=server.get_build_info(job_name,num_id)['building'] print u"构建完毕" result1=server.get_build_info(job_name,num_id)['result'] print "构建结果是:%s" %result1 else: print u'构建编号异常,请重试' else: print u'还有job正在执行中,请稍后再试'if __name__ == '__main__': job_name=sys.argv[1] if len(sys.argv) == 3 : kw=sys.argv[2] jenkins_job(job_name,kw) if len(sys.argv) == 2 : jenkins_job(job_name)
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #jenkins执行python