pythonl控制jenkins操作
来源:互联网 发布:正见 佛陀的证悟 知乎 编辑:程序博客网 时间:2024/06/03 23:30
本人新博客地址
jenkins不仅可以集成python进行操作,同时也可以被集成,通过python在后端代码中操控Jenkins
通过python来操作控制Jenkins, 有两个包可以使用,JenkinsAPI 和 Python-Jenkins
JenkinsAPI: https://pypi.python.org/pypi/jenkinsapi
Python-Jenkins官网:https://pypi.python.org/pypi/python-jenkins/
Python-Jenkins Doc:http://python-jenkins.readthedocs.io/en/latest/index.html
下面是Python-Jenkins的一些使用,供参考
#!/usr/bin/env python#coding:utf-8'''FuncName: JzPythonJenkins.pyDesc: python control jenkinsDate: 2017-09-18 08:30Author: johnny'''import jenkinsclass JzPythonJenkins(object): ''' Installing: pip install python-jenkins Import: import jenkins ''' def __init__(self): username = 'admin' password = 'admin' url = 'http://localhost:8080/jenkins' timeout = 1 self.server = self.Connect(url, username, password, timeout) def Used(self): self.get_version() def Connect(self,url, username, password, timeout): '''Create handle to Jenkins instance''' self.server = jenkins.Jenkins(url, username, password, timeout) return self.server def get_version(self): '''get jenkins version''' version = self.server.get_version() print version def job(self): # 创建Project,内容为空 self.server.create_job('test', jenkins.EMPTY_CONFIG_XML) # job构建empty self.server.build_job('empty') # 获取job配置 prints XML configuration my_job = self.server.get_job_config('empty') print my_job # 禁用Project self.server.disable_job('empty') # 拷贝Project self.server.copy_job('empty', 'empty_copy') # 启用已配置好Project self.server.enable_job('empty') # 删除Project self.server.delete_job('empty') def view(self): # 创建空视图 self.server.create_view('EMPTY', jenkins.EMPTY_VIEW_CONFIG_XML) # 获取视图的配置xml信息 view_config = self.server.get_view_config('EMPTY') # 获取视图信息 views = self.server.get_views() print views # 删除视图 self.server.delete_view('EMPTY') def plugins(self): # 获取插件信息 plugins = self.server.get_plugins_info() print plugins def node(self): # 创建node节点 self.server.create_node('slave123456') ## create node with parameters params = { 'port': '22', 'username': 'juser', 'credentialsId': '10f3a3c8-be35-327e-b60b-a3e5edb0e45f', 'host': 'my.jenkins.slave11' } ## 名称,描述,远程工作目录,标签,用法,启动方法(连接方式),参数(如host) self.server.create_node( 'slave11', nodeDescription='my test slave', remoteFS='/home/juser', labels='precise', exclusive=True, launcher=jenkins.LAUNCHER_SSH, launcher_params=params) # 获取node信息 nodes = self.server.get_nodes() print nodes # 获取node配置信息 node_config = self.server.get_node_info('slave123456') print node_config # 连接或中断node self.server.disable_node('slave11') self.server.enable_node('slave11') def queue(self): # 获取信息 queue_info = self.server.get_queue_info() print queue_infoif __name__ == "__main__": JzPythonJenkins = JzPythonJenkins() JzPythonJenkins.Used()
阅读全文
0 0
- pythonl控制jenkins操作
- Jenkins的安全控制
- jenkins权限控制
- mysql-connector-pythonl驱动安装
- Python操作Jenkins
- Jenkins Pipeline 常用操作
- jenkins安全和访问控制
- Jenkins控制台中乱码问题
- Jenkins控制管理MAVEN工程
- jenkins授权和访问控制
- Jenkins控制管理MAVEN工程
- Jenkins系列之—09 Jenkins纳入版本控制
- Jenkins系列之—14 修改Jenkins权限控制
- Jenkins进阶系列之——Jenkins纳入版本控制
- Jenkins学习七:Jenkins的授权和访问控制
- jenkins搭建与简单操作
- jenkins 命令行操作说明文档
- jenkins下自动编译操作
- 第九周项目1-二叉树算法库
- 链表 实例代码
- mongodb node.js 身份验证启动/连接
- maven项目红色叹号解决办法
- WebAPI记录发布3
- pythonl控制jenkins操作
- 我
- 第八周项目1
- 自定义组合控件
- C语言的Socket编程例子(TCP和UDP)
- 阿里云CentOS安装SVN
- CentOS 7 安装OpenCV
- 第八周【项目3-稀疏矩阵的三元组表示的实现及应用】
- 决定去面试前,考虑好这些问题!