如何为每个(新)Jenkins作业创建默认配置?

时间:2015-08-17 09:45:22

标签: jenkins default

在我长期使用Jenkins的过程中,我提出了一组默认设置,用于每个新工作,例如:

  • 在每次构建之前使用Workspace Cleanup Plugin清理工作区,
  • 将时间戳添加到控制台输出
  • 使用相同的SCM查看器

..但是现在我手动设置/复制现有作业作为新模板的模板,但这显然不是最佳的。


我已经找了一个插件/设置,可以让我配置新作业/全局作业设置的默认设置,它会覆盖每个作业设置,但我还没有找到任何解决方案。

你知道怎么做吗?

更新

我看过Configuration Slicing Plugin,但我不清楚这是否会有所帮助..

更新2

我刚刚被提醒Jenkins Job DSL / Plugin,我会很快调查它的功能,但我仍然对更简单的解决方案感兴趣,但入门级别更低。

2 个答案:

答案 0 :(得分:2)

您可以通过构建工作(使用其他工作)来尝试Job DSL将Dev Ops'配置作为代码'

Implements

或者,新方法是定义pipeline(Jenkins 2.0) 这是您的回购根

中的The Jenkins "Job DSL / Plugin" is made up of two parts: The Domain Specific Language (DSL) itself that allows users to describe jobs using a Groovy-based language, and a Jenkins plugin which manages the scripts and the updating of the Jenkins jobs which are created and maintained as a result.
Jenkinsfile

答案 1 :(得分:0)

我这样做的方法是使用默认选项创建作业,这些选项仅用作模板。然后在创建新作业时,我选择“复制自”选项并写入模板作业的名称。

更好的解决方案是使用类似继承的东西 - 拥有其他作业继承的父作业,因此如果要为所有作业添加选项,只需将其添加到父作业即可。 Inheritance plugin似乎是这样做的,但不幸的是,它在尝试配置时会干扰其他插件和崩溃。