快速创建Jenkins任务 -- Jenkins-job-builder
博客专区 > Firxiao 的博客 > 博客详情
快速创建Jenkins任务 -- Jenkins-job-builder
Firxiao 发表于9个月前
快速创建Jenkins任务 -- Jenkins-job-builder
  • 发表于 9个月前
  • 阅读 54
  • 收藏 0
  • 点赞 0
  • 评论 0

移动开发云端新模式探索实践 >>>   

摘要: 简单介绍Jenkins-job-builder的用法

前言

近日需要修改些Jenkins任务,无奈之前全是手动创建的,一个一个修改起来甚是麻烦。于是想到使用cli的方式去做,但是又发现原生的方式不是很友好。于是进行了一番搜索,找到了jenkins-job-builder,并且由openstack社区维护。看了下介绍感觉蛮不错: 支持yaml格式存储Jenkins 任务模板,可以做版本控制,支持使用模板创建相似的任务.

安装

pip install --user jenkins-job-builder

配置

jenkins-job-builder_默认会从以下位置找配置文件~/.config/jenkins_jobs/jenkins_jobs.ini_, <script directory>/jenkins_jobs.ini/etc/jenkins_jobs/jenkins_jobs.ini. 当然也支持自定义位置,使用_--conf jenkins_jobs.ini_参数即可

这里将创建默认配置文件. 记得把Jenkins信息修改为你自己的.其他默认配置即可.

mkdir ~/.config/jenkins_jobs/
cat  > ~/.config/jenkins_jobs/jenkins_jobs.ini  << EOF
[job_builder]
ignore_cache=True
keep_descriptions=False
include_path=.:scripts:~/git/
recursive=False
exclude=.*:manual:./development
allow_duplicates=False

[jenkins]
user=admin
password=password
url=http://localhost:8080
query_plugins_info=False
##### This is deprecated, use job_builder section instead
#ignore_cache=True
EOF

使用示例

生成任务配置文件

创建一个example.yml文件复制如下内容:

- job:
    name: example
    project-type: freestyle
    defaults: global
    description: 'Do not edit this job through the web!'
    disabled: false
    display-name: 'example'
    concurrent: true
    workspace: /srv/build-area/example
    quiet-period: 5
    block-downstream: false
    block-upstream: false
    retry-count: 3
    node: NodeLabel1 || NodeLabel2
    logrotate:
      daysToKeep: 3
      numToKeep: 20
      artifactDaysToKeep: -1
      artifactNumToKeep: -1

检查配置文件

这里的检查是通过生成Jenkins任务xml文件,你可以通过与现有Jenkins任务对比

jenkins-jobs test example.yml

更新任务

jenkins-jobs update example.yml

删除任务

jenkins-jobs delete example

最后

总的来讲,_Jenkins-job-builder_是一个很不错的工具,符合基础设施即代码(infrastructure as code)的思想,使用易读的yaml文件即可生成jenkins任务,另外也支持JSON,如果你想更好的管理Jenkins任务, 那么你值得尝试。

参考: https://docs.openstack.org/infra/jenkins-job-builder/quick-start.html

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 20
博文 92
码字总数 34836
×
Firxiao
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: