文档版本 | v 1.0 |
---|---|
更新日期 | 2017.12.26 |
作者 | 追马 |
扩散范围 | 全网 |
- 一、准备工作
- 1.1、环境准备
- 1.2、推荐阅读
- 二、Jenkins API介绍
- 2.1、关于Jenkins API
- 2.2、通过Jenkins API我们能做什么?
- 三、基于python的Jenkins API简单使用[本文选用的是Python-Jenkins]
- 3.1、基于python的Jenkins API的选择
- 3.2、简单使用
- 四、参考文档
- 五、下期预告
阅读本文能学到的知识点
- 了解Jenkins的API
- 基于python的Jenkins API的简单使用演示
一、准备工作 1.1、环境准备 软件版本功能jenkins2.95提供平台python2.6 提供平台python0.4.14提供平台1.2、推荐阅读 分分钟部署安装jenkins 二、Jenkins API介绍 2.1、关于Jenkins API 2.1.1、关于Jenkins api的描述
代码语言:javascript复制Jenkins provides machine-consumable remote access API to its functionalities. Currently it comes in three flavors:
XML
JSON with JSONP support
Python
2.2、通过Jenkins API我们能做什么?
- 实现对Jenkins的增删改查操作
- 实现批量创建job
- 和第三方工具联动操作
- 自动化(虽然有装逼的嫌疑~)
三、基于python的Jenkins API简单使用[本文选用的是Python-Jenkins] 3.1、基于python的Jenkins API的选择 3.1.1、官方给出的两个python的库
- Python-Jenkins [后续文章都是使用这个来讲解]
- JenkinsAPI
2.1.2、获取机器上安装python模块的信息
代码语言:javascript复制pip list --outdated --format=legacy |awk '{print $1}'
3.2、简单使用
- 如果你不熟悉python, go,使用curl同样能达到你的需求
- 推荐python的库httpie, 你值得拥有
3.2.1、列出所有插件
代码语言:javascript复制#!/usr/bin/env python# -*- coding: utf-8 -*-# Author: zhuima# zhuima @ 2017-12-21 19:09:22# Function:-
"""
pip install python-jenkins==0.4.14
"""
import jenkins
jks = jenkins.Jenkins('http://zhuima.just.me:8080',username='zhuima',password='zhuima')
for plugin in jks.get_plugins_info(depth=2):
print "DisplayName: {0: <60} | ShortName: {1: <30} | Version: {2: <30}".format(plugin.get('longName'), plugin.get('shortName'), plugin.get('version'))
3.2.2、如何获取xml
代码语言:javascript复制>>> import jenkins
>>> server = jenkins.Jenkins('http://zhuima.just.me:8080', username='zhuima', password='zhuima')# 展示pipeline_demo项目的xml内容
>>> print server.get_job_config("pipeline_demo")
四、参考文档 Python-Jenkins: https://goo.gl/wB7LZn JenkinsAPI: https://goo.gl/9Q6uXn 五、下期预告
- 如何快速批量创建job