美文网首页python之路
jenkins批量创建任务

jenkins批量创建任务

作者: 非鱼2018 | 来源:发表于2021-05-19 21:50 被阅读0次

    jenkins需要迁移,把旧jenkins上的job迁移到新jenkins,配置大部分都是相同的,于是想批量创建,网上查了下,很多方法,个人觉得用jenkins-cli最简单
    几行代码就搞定了
    使用jenkins-cli
    首先下载jenkins-cli,

    思路:
    新jenkins,新建一个待复制job
    获取老jenkins的job列表,master的woekspace或执行机的workspace目录
    然后使用python脚本调用jenkins-cli的copy job循环创建任务

    import os
    import time
    jobs=os.listdir(".")
    for job in jobs:
        print("开始复制job:{}".format(job))
        os.system('java -jar jenkins-cli.jar -s http://localhost:8080 -auth admin:123456 copy-job oldjobs {}'.formate(job))
        time.sleep(0.5)
    

    如果有重名job则会复制失败,可以在执行复制job前先执行删除job
    os.system('java -jar jenkins-cli.jar -s http://localhost:8080 -auth admin:123456 delete-job {}'.formate(i))

    也可以通过list-jobs获取目标jenkins的所有job

    import subprocess
    get_jobs='java -jar jenkins-cli.jar -s http://localhost:8080 -auth admin:123456 list-jobs viewname'
    #viewname为指定视图下job
    jobs=subprocess.check_output(get_jobs,shell=true)
    job_lists=jobs.splitlines()
    for job in job_lists:
        print("job名称",job)
    

    相关文章

      网友评论

        本文标题:jenkins批量创建任务

        本文链接:https://www.haomeiwen.com/subject/tzmfrltx.html