Jenkins remote access API
https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API
如果通過python來操作控制Jenkins, 有兩個module可以使用,JenkinsAPI 和 Python-Jenkins。
JenkinsAPI: https://pypi.python.org/pypi/jenkinsapi
Python-Jenkins: https://pypi.python.org/pypi/python-jenkins/
Python-Jenkins線上文檔:http://python-jenkins.readthedocs.io/en/latest/api.html
執行個體如下:
import jenkinsimport timeimport sysdef run(): server = jenkins.Jenkins(url=url, username=user, password=pwd) server.build_job(name=jobName, token=jobToken) while True: time.sleep(1) print 'check running job...' if len(server.get_running_builds()) == 0: break else: time.sleep(20) last_build_number = server.get_job_info(jobName)['lastCompletedBuild']['number'] build_info = server.get_build_info(jobName, last_build_number) build_result = build_info['result'] print 'Build result is ' + build_result if build_result == 'SUCCESS': sys.exit(0) else: sys.exit(-1)if __name__ == '__main__': run()
說明:
1. 建立Jenkins連結
2. 遠程觸發Jenkins上面的一個job
3. 檢測job是否build完成,如果完成,則檢查build結果