[英]Script a Jenkins Pipeline Job
我正在使用Docker映像: jenkins / jenkins:lts
我有很多groovy腳本,這些腳本在$JENKINS_HOME/init.groovy.d/
構建期間復制到$JENKINS_HOME/init.groovy.d/
目錄中。
我想編寫一個腳本來創建一個新的Pipeline作業,但是我一直在尋找有關如何執行此操作的任何信息。 創建作業后,所有教程似乎都是關於如何使用管道插件的...
下面的腳本是我所追求的示例,但這是針對Freestyle項目而不是Pipeline的:
#!groovy
import jenkins.model.Jenkins;
import hudson.model.FreeStyleProject;
import hudson.tasks.Shell;
import hudson.triggers.SCMTrigger;
def jenkins = Jenkins.getInstance();
def initJob = jenkins.createProject(FreeStyleProject, 'init-job');
initJob.setDescription('This is a dummy project');
好的,所以我真的很笨。管道以前稱為Workflow,它在UI中告訴您
所以對我來說是:
#!groovy
import jenkins.model.Jenkins;
import hudson.model.WorkflowJob;
import hudson.tasks.Shell;
import hudson.triggers.SCMTrigger;
def jenkins = Jenkins.getInstance();
def initJob = jenkins.createProject(WorkflowJob, 'init-job');
initJob.setDescription('This is a dummy project');
Job DSL Plugin讓您使用groovy編寫作業腳本。 您可以將所有配置保留在VCS中,並告訴Jenkins運行Job DSL腳本以生成所有作業。 創建管道作業很簡單:
pipelineJob('example') {
definition {
cps {
script(readFileFromWorkspace('project-a-workflow.groovy'))
sandbox()
}
}
}
本示例取自Job DSL API Viewer 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.