使用python-Jenkins批量创建及修改jobs操作

1.使用jobsName.ini文件保存要创建job的名字

jobs1
jobs2
jobs3

2.使用Jenkins创建job时自动生成的config.xml文件为模板进行批量创建jobs或修改jobs,一般生成的job会在你安装的Jenkins目录下找到

3.脚本实现

import jenkins

jobsOperation = input("请选择是新建jobs还是修改jobs:\na.创建jobs \nb.修改jobs \n")

# 连接远程Jenkins
server=jenkins.Jenkins("http://127.0.0.1:8080/", username="admin", password="admin")
# 读取及修改的配置模板
pathConfigxml = open("config.xml",encoding='utf-8').read()

# 读取要创建的jobs名称
def readJobsName():
  jobnames = open('jobsName.ini',encoding="utf-8")
  return jobnames
  pass

# 读取要修改配置的jobs名称
def readChangeJobsName():
  changeJobsName = open('changeJobsName.ini', encoding='utf-8')
  return changeJobsName
  pass

# 创建新的jobs
def createNewJobs():
  jobsname = readJobsName()
  for jobName in jobsname:
    server.create_job(jobName.replace("\n",""),pathConfigxml)

  pass

# 批量修改已有的jobs
def changeJobs():
  changeJobsName = readChangeJobsName()
  for changeJobName in changeJobsName:
    server.reconfig_job(changeJobName.replace("\n",""), pathConfigxml)
  pass

if "a"==jobsOperation:
  createNewJobs()
elif "b"==jobsOperation:
  changeJobs()
else:print("未选择操作,退出任务!")

补充知识:python写一个功能:禁用jenkins中某一个job任务

import requests

#python写一个功能:禁用jenkins某一个任务(job)
print(requests.get('http://localhost:8080/jenkins/job/Test_version/').text)
url = 'http://localhost:8080/jenkins/job/Test_version/disable'
re = requests.post(url, data={}, auth=('wyq', 'wyq'))
print(re.status_code)
print(re.headers)
print(re.reason)

执行成功并在jenkins下查看Test_version任务已被成功禁用:

以上这篇使用python-Jenkins批量创建及修改jobs操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 基于Python的Jenkins的二次开发操作

    背景 最近我们在整一个云执行的平台,底层用的是Jenkins来做执行引擎,方便的把我们的脚本做一个统一的调度. Jenkins确实是一个非常方便的框架,它提供了一整套的RESTful的API,可以非常方便的做二次开发,而且提供了一个python的库,操作起来就更加方便了. 常用的Jenkins概念 我们在使用Jenkins的时候,一般看到的都是Jenkins的View. 也就是说我们看到的基本上都是一些视图. 每一个构建的内容,无论是执行用例,跑脚本,还是打包编译发布,都是一个job. 每一个j

  • jenkins+python自动化测试持续集成教程

    一.首先我们安装Jenkins,我这里采用的是.msi应用程序,根据提示进行安装(傻瓜式),最后会打开默认的网页地址:http://localhost:8080 如果端口有冲突,可以去Jenkins的安装目录下的这个文件去改端口: 二.进入Jenkins的界面,会提示输入解锁密码,根据界面提示找对对应文件输入密钥即可. 三.选择推荐安装插件即可,两者都可以,看自己需要选择,选择后会进入插件安装页面,会需要一些时间,会因为网络等原因导致一些插件安装失败(国外服务器),不过后面可以再去装. 四.创建

  • Python-jenkins模块获取jobs的执行状态操作

    1 获取jobs的当前任务状态 server_1 = jenkins.Jenkins('http://%s:%s@192.168.37.134:8081/',username, password) 获取状态前先确认2019文件夹下的get_node_list任务是否存在: server_1.assert_job_exists('2019/get_node_list') 获取最后一次完成(不包括执行中的)的job任务执行number: server_1.get_job_info('2019/get

  • jenkins配置python脚本定时任务过程图解

    这篇文章主要介绍了jekins配置python脚本定时任务过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.首先安装jekins环境,访问网页https://jenkins.io/zh/download/,下载长期稳定版如下: 2.下载安装包后直接运行,进行选择安装路径,傻瓜式安装.安装完成后,点Finished,弹出jekins输入密匙网页,根据网页提示路径,找到 对应的jekins密匙输入后,选择推荐插件安装即可.(也可以不安装插

  • Python-jenkins模块之folder相关操作介绍

    我就废话不多说了,看代码吧 import jenkins server = jenkins.Jenkins('http://localhost/jenkins', username='username', password='password') # 确保jenkins安装了Folders Plugin server.create_job('folder', jenkins.EMPTY_FOLDER_XML) # 创建一个文件夹 如果找不到EMPTY_FOLDER_XML是因为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 =

  • python jenkins 打包构建代码的示例代码

    python jenkins 打包构建代码 # pip install python-jenkins import jenkins import pprint import time # 在jenkins 的Configure Global Security下 , 取消"防止跨站点请求伪造(Prevent Cross Site Request Forgery exploits)"的勾选 server = jenkins.Jenkins('http://192.168.100.151:8

  • Python-jenkins 获取job构建信息方式

    官方文档: 需求:当1个job启动构建后,获取它的构建状态.(成功,失败,驳回,构建中,正在排队) 关键函数: 获取job是否在排队的结果 获取正在排队构建的job队列 即pending状态中的所有job,如果没有 pending状态的job即返回1个空列表 queue_info = server.get_queue_info() 获取job构建结果 server.get_build_info(name, build_number)[ 'result'] # 构建结束 SUCCESS|FAILU

  • 使用python-Jenkins批量创建及修改jobs操作

    1.使用jobsName.ini文件保存要创建job的名字 jobs1 jobs2 jobs3 2.使用Jenkins创建job时自动生成的config.xml文件为模板进行批量创建jobs或修改jobs,一般生成的job会在你安装的Jenkins目录下找到 3.脚本实现 import jenkins jobsOperation = input("请选择是新建jobs还是修改jobs:\na.创建jobs \nb.修改jobs \n") # 连接远程Jenkins server=jen

  • Shell脚本之文件批量创建与修改的简单方法

    一.脚本要求 1.所有操作在/python下 2.批量创建12个以py后缀结尾的文件,文件名中必须包含_hcip,文件名除了_hcip固定字符串外,文件名还包含8个小写随机的字符. 3.创建的12个文件后缀名改为大写的PY,固定字符串改为_hcie 二.脚本内容 #!/bin/bash ########################################################## #File Name:create_file.sh #Version:V1.0 #Aurhor

  • Python之批量创建文件的实例讲解

    批量创建文件其实很简单,只需要按照需要创建写文件.写完关闭当前写文件.创建新的写文件.写完关闭当前文件...不断循环即可,以下是一个简单例子,将大文件big.txt按照每1000行分割成一个个小文件. 具体做法如下: # -*- coding: utf-8 -*- index = 0 count = 0 f_in = open("%d.txt" % index, "w") with open("big.txt", "r") a

  • python global的创建和修改实例讲解

    1.global在函数内创建全局变量,相当于在文件内创建全局变量. 2.修改函数内的全局变量.由于函数中直接对全局变量进行分配/修改,因此被视为创建新的局部变量. 当然,可以通过索引定位全局变量中的元素进行修改. 实例 global 变量1, 变量2, - 变量1 = 赋值数据 # 错误示范 期望修改的全局变量1 = 数据 # python 认为创建了一个局部变量:变量1. # 正确示范 global 期望修改的全局变量1 # 先告诉 python 这个变量在这个局部也是当做全局变量看. 期望修

  • python批量创建变量并赋值操作

    一,简单的情况: 核心是exec函数,exec函数可以执行我们输入的代码字符串.exec函数的简单例子: exec ('print "hello world"') hello world 可以很清晰的看到,我们给exec传入一个字符串'print "hello world"',exec是执行字符串里面的代码print "hello world".根据这个特性,我们可以用占位符实现我们对变量的定义,如: exec ("temp%s=1&q

  • 利用Python如何批量修改数据库执行Sql文件

    前言 由于上篇文章中批量修改了文件,有的时候数据库也需要批量修改一下,之前的做法是使用宝塔的phpMyAdmin导出一个已经修改好了的sql文件,然后依次去其他数据库里导入,效率不说极低,也算低了,且都是些重复性的劳动,所以打算用Python来批量执行sql 环境 版本:Python3.6 系统:MacOS IDE:PyCharm 第三方库:pymysql Show Code import pymysql host = 'xxx.65.9.191' username = 'root' passw

  • Python批量创建迅雷任务及创建多个文件

    其实不是真的创建了批量任务,而是用python创建一个文本文件,每行一个要下载的链接,然后打开迅雷,复制文本文件的内容,迅雷监测到剪切板变化,弹出下载全部链接的对话框~~ 实际情况是这样的,因为用python分析网页非常,比如下载某页中的全部pdf链接 from __future__ import unicode_literals from bs import BeautifulSoup import requests import codecs r = requests.get('you ur

  • Python实现批量修改文件名实例

    本文实例讲述了Python实现批量修改文件名的方法.分享给大家供大家参考.具体如下: 下载了评书<贺龙传奇>,文件名中却都含有xxx有声下载,用脚本将其去掉.脚本涉及os.rename重命名方法,str.partition方法使用, 及正则match,search方法区别 # encoding:utf-8 ## # 文件名如: # 贺龙传奇\d+[有声下吧www.ysx8.com].mp3 ## import os,re fs=os.listdir('单田芳_贺龙传奇') for f in f

  • python批量创建指定名称的文件夹

    本文实例为大家分享了python批量创建指定名称的文件夹具体代码,供大家参考,具体内容如下 继删除多余文件之后,做了一些数据处理,需要重新保存数据,但文件夹的名称又不能改 所以只能创建新的文件夹,换个路径用之前的文件夹名 import os import glob #txt文件生成一次就好,或者用os.walk遍历需要的文件夹名称路径 def mk_text(txt_path): folders = glob.glob(txt_path + '/*_1') writeText = open('F

  • python实现批量修改服务器密码的方法

    求:机房.线上有多台主机,为了保障安全,需要定期修改密码.若手动修改,费时费力易出错. 程序应该满足如下需求 : 1.在现有的excel密码表格,在最后一个字段后面生成新的密码,另存为一个新的excel密码文件 2.根据新的excel密码文件,更新服务器密码,将更新后的结果保存到另外一个excel文件. a.原始excel文件字段格式,最后一个字段为原始密码 IP USER PORT pwd b.生成新的密码文件字段格式,最后一个字段为更新密码 IP USER PORT pwd pwd20180

随机推荐