在init.groovy.d脚本中使用管道初始化Jenkins 2.0

为了自动化,我想用管道作业初始化Jenkins 2.0实例.我想创建一个Groovy脚本,在启动时复制到/usr/share/jenkins/ref/init.groovy.d/文件夹.该脚本应创建一个Jenkins 2.0 Pipeline作业,以便从SCM处理Jenkins文件.

我找不到2.0管道类的相关Javadoc或如何执行此操作的示例.

以前,使用Job DSL创建管道,我使用Groovy脚本创建一个带有ExecuteDslScripts构建器的FreeStyleProject.这项工作将成为Job DSL种子工作.

一种选择是使用init脚本创建Job DSL种子作业以创建Jenkins 2.0管道.它似乎不必要地复杂.

我正在试验这个回购:https://github.com/martinmosegaard/vigilant-sniffle

解决方法

如果只需要创建一个简单的管道作业,则可以使用Jenkins API.但是,这在创建一个简单的工作时才有效,对于复杂的设置,您需要一些像Job DSL这样的抽象.

从这里开始:http://javadoc.jenkins-ci.org/jenkins/model/Jenkins.html#createProject(java.lang.Class,%20java.lang.String).

例:

import jenkins.model.Jenkins
import org.jenkinsci.plugins.workflow.job.WorkflowJob

WorkflowJob job = Jenkins.instance.createProject(WorkflowJob,'my-pipeline')

然后你需要填写工作,例如设置流程定义.

或者你可以等待System Config DSL Plugin做好准备.但它尚未发布,我不确定它是否可以创造就业机会.

相关文章

背景:    8月29日,凌晨4点左右,某服务告警,其中一个...
https://support.smartbear.comeadyapi/docs/soapui/steps/g...
有几个选项可用于执行自定义JMeter脚本并扩展基线JMeter功能...
Scala和Java为静态语言,Groovy为动态语言Scala:函数式编程,...
出处:https://www.jianshu.com/p/ce6f8a1f66f4一、一些内部...
在运行groovy的junit方法时,报了这个错误:java.lang.Excep...