三十三.python脚本调用jenkins构建任务

最近针对CI/CD进行了一段时间的研究,由于工作中的实际需求,需要通过python脚本实现对jenkins中任务的调用。并通过脚本获取返回的结果。
接下来分享下具体的脚本代码:
1.首先创建一个demo文件夹,简单介绍下文件夹下的三个文件:
(1)\demo\conf\server.properties 存放相关配置型信息,包括jenkins地址,项目名称,邮箱地址等。
(2)\demo\jenkins_build_jobs.py调用jenkins构建任务接口
(3)\demo\jenkins_paser_jobs.py通过脚本获取当前构建的任务状态。
需要安装一下第三方库,jenkins,requests,multi_key_dict。

server.properties具体代码如下

[jenkins]
jenkins_url= http://192.168.2.100:8080/jenkins
job=common-sit-1-baseline-sit1
user=admin
pwd=admin123

[smtp]
mail_user = xxxx
sender = xxxxx@xxxx.com
smtpserver = mail.xxxx.com
password = xxxx
postfix= xxxxx
mail_postfix = xxxx.com

[email_address]
yangxy=524832241@qq.com

[dingding_manager]
CorpID=ding1aeb3554483ce275
CorpSecret=Yu7PKg0Lhy8XVrgpys4Kq5_91bi6K6V-d3JnvgDD2PfqQ8lan3BXNGm4bXDX83FY
agentID=35330198

[dingding_id]
yangxy=02345263135362

jenkins_build_jobs.py代码如下:

#!/usr/bin/env
#coding: utf-8
import time
import sys
import urllib
import jenkins
import ConfigParser
import json
import requests
from  jenkins_email  import  jenkinsEmail

default_encoding = 'utf-8'
if sys.getdefaultencoding() != default_encoding:
    reload(sys)
    sys.setdefaultencoding(default_encoding)

def get_conf(key,session='smtp'):
    config_file_path=r"conf/server.properties"
    cf = ConfigParser.ConfigParser()
    cf.read(config_file_path)
    s = session
    value = cf.get(s, key)
    return value

if len(

你可能感兴趣的:(python,自动化基本使用,python)