持续集成 Jenkins 插件——Job Generator Plugin (二)

咚咚 · April 05, 2019 · Last by 咚咚 replied at April 11, 2019 · 1273 hits

Job Generator Plugin插件

官方定义:

This plugin adds a new job type "Job Generator" which can generate new projects when executed.

理解:就是用来生成job的job,该job是一个模版,根据填入的参数生成不同的job。
使用情景:需要创建很多job,而且这些job只是某些地方配置不同。例如Android出包的job,只是git地址/产品名称不同,其他出包job的配置都一样,则可以把git地址及产品名称参数化填入,使用生成job生成不同产品的出包job

安装方法

直接进入插件管理中心搜索 Job Generator Plugin 安装即可。

使用

1、创建job的时候,选择Job Generator
2、其他所有的配置,当你生成的job需要什么配置的时候,则在此job增加什么job。可以当成此时这个job就是你要生成的job配置即可
3、执行shell,被生成的job需要执行什么样的shell脚本,则这里填写什么。

###下面开始说明特殊的部分
4、参数化构建过程

A、Generator Parameter:
是在生成job时候用的参数,如上面#3说的执行shell模版中什么时候变化的,则把什么参数化。例如,定义一个变量是gitlab,在#3shell中取该变量的值${gitlab}。在生成工程的时候填入gitlab的地址,那么生成的job#3shell中的gitlab地址则是该job对应需要的地址。

B、Generator Choice
同#4A,如果参数化是可选的参数,则选择这个参数。

5、Generated Job Additional Configuration

A、Generated Job Name/Generated Job Display Name
被生成job的名字,可以参数化。例如:在参数化构建的时候,有个Generator Parameter叫appname,则被生成job的名字可以取值为:BuildTestApk_${appname}

相同插件介绍:Job DSL Plugin

Job DSL Plugin
对于很多开发者来说,不同的仓库和项目分支都需要去 Jenkins 上重新创建任务。这是一个重复且单调的工作,对于开发者来说非常不友好。

Jenkins Job DSL Plugin 可以让开发者通过 Groovy 脚本来定义和配置任务,随后插件会通过执行这些脚本来维护 Jenkins 任务。这样开发团队可以定制自己的模板文件,通过领域特定语言(Domain Specific Language,DSL)直接定义和创建任务。

Job Generator Plugin
和 Job DSL Plugin 类似,Job Generator Plugin 也是用于快速创建任务。对于大团队来说,整个持续集成流程应该类似,不同的项目的区别主要就是代码分支等。该插件可以让团队的配置管理员为整个团队定义一个参数化的模板,项目开发人员可以通过这个模板快速的在 Jenkins 上创建出任务。

该插件和 Job DSL 插件的最大区别是使用者无需了解 Groovy。

####参考文档
1、官方文档:
https://wiki.jenkins.io/display/JENKINS/Job+Generator+Plugin
https://wiki.jenkins.io/display/JENKINS/Job+DSL+Plugin
2、十佳插件介绍:https://infoq.cn/article/2018/07/devops-10best-jenkins-plugins

共收到 2 条回复 时间 点赞

感谢

—— 来自TesterHome官方 安卓客户端

咚咚 #2 · April 11, 2019 作者
rockyrock 回复

客气~

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up