当前位置:  开发笔记 > 编程语言 > 正文

python的Jenkins接口调用方式

这篇文章主要介绍了python的Jenkins接口调用方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

本来非常喜欢偷懒

最好就是不干活那种

所以最近在研究把Jenkins模块集成起来

做成傻瓜界面这样就给他们用

本人Python搓望大神不要喷,多多指导

jenkins的Python模块模块安装

pip:
pip install python-jenkins

easy_install:
easy_install python-jenkins

使用:

class jenkins_tools():
  def __init__(self):
    cf = get_conf()
    self.username = cf.get('jenkins', 'username')
    self.password = cf.get('jenkins', 'password')
    self.php_jenkins = '''			#本屌自己的jenkins的conf文件
    				#这里可以去抄jenkins的项目文件夹里面的配置文件
     				#记得不要加xml头,源码哪里帮我们加了,自己加就是作死
     		#项目需求不一样,配置文件也不一样,你们不要抄我的
     false
     
      
       
        
         Branch
         
         %s
        
       
      
     
     
     true
     false
     false
     false
     
     false
     
      
       xxxxxxx	
      
     
     
     
    
      '''
    self.java_newjenkins = '''		#本屌的另外一个jenkins的conf文件
      
       
       
       false
       
        
         
          
           Branch
           
           %s
          
         
        
       
       
       true
       false
       false
       false
       
       false
       
        
         xxxx	
        
       
       
       
      
        '''
  def __conn_jenkins_server(self, url):
    try:
	  #获得一个jenkins的操作实例
      server = jenkins.Jenkins(url, username=self.username, password=self.password)
      return server
    except Exception:
      logging.warning('login jenkins failed!')
      return None
	
  def create_project(self, host_ip, project_name, git_path, git_branch, url, environment):
    server = self.__conn_jenkins_server(url)
    if server:
      server.create_job(project_name, self.php_jenkins)	#参数1写的是项目名称,参数2是xml文档
      return True
    else:
      return None
 
  def project_built(self, url, project_name, git_branch):	#这个函数作用是构建项目
    server = self.__conn_jenkins_server(url)		
    server.build_job(project_name, {'Branch': git_branch})
 
  def check_project_exist(self, project_name, url):		#这个函数是检查项目是否已经存在虽然写得很挫忘不要见怪
    server = self.__conn_jenkins_server(url)
    name = server.get_job_name(project_name)
    if name is None:
      return False
    return True

详细可以看官方文档:http://python-jenkins.readthedocs.io/en/latest/api.html

补充知识:python调用jenkinsapi

在通过python 调用jenkinsapi的时候,需要对一些作业进行定时对构建

报错:

Error 403 No valid crumb was included in the request\n\n

HTTP ERROR 403

原因是在jenkins的安全配置里勾选里下面这个选项,在预防跨站点请求,将其勾掉即可。

以上这篇python的Jenkins接口调用方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有