from jenkins import Jenkins # 判断job是否运行结束 def build(): job = 'branch-deploy-wap' params = { 'server_ip': '10.160.30.XXX', 'server_username': 'root', 'server_userpass': 'XXXXXX', 'node_branch': 'master' } jenkins_server_url = 'http://jenkins.XXX.XX.ted:8080/' user_id = 'zhzhgo' api_token = '11e6d803fd4ab788626134de41344fd2dd' server = Jenkins(jenkins_server_url, username=user_id, password=api_token) queue_num = server.build_job(job, parameters=params) print(queue_num) ans = server.get_queue_item(queue_num) print(json.dumps(ans)) start = time.time() isBuilding = True buildnum = -1 status = 'FAILURE' try: while isBuilding: if ans != None and 'executable' in ans and 'number' in ans['executable']: buildnum = ans['executable']['number'] while isBuilding: time.sleep(5) isBuilding = server.get_build_info(job, buildnum)['building'] else: time.sleep(5) ans = server.get_queue_item(queue_num) print(json.dumps(ans)) status = server.get_build_info(job, buildnum)['result'] except Exception as e: print('getbuildinfo_resultexpt:'+str(e)) # ans = {'buildnum': buildnum, 'status': status} end = time.time() print("time:", end-start, "buildstatus:", status) return status # 运行job def jenkins_start(job, params): url = 'http://10.XXX.XX.XX:8080/' id = 'zhzhgo' token = "zhzhgo" server = Jenkins(url, username=id, password=token) server.build_job(job, parameters=params) return 'job is running, please wait for report.'
原文地址:https://blog.51cto.com/zhzhgo/2655844
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。