设置Jenkins工作流(管道)构建的内部版本号

Vla*_*lad 17 jenkins jenkins-workflow

我正在将jenkins-workflow作业迁移到基于新模板的工作流作业.因为构建号用作构建工件版本的一部分,所以工作流产生我必须以比旧工作流更大的数字开始新工作流的构建号.不幸的是,"Next Build Number"插件不适用于工作流程管道.

有人知道这样做的好方法吗?

Mar*_*kHu 17

或者,您可以将这样的代码段添加到您的Pipeline/Workflow作业DSL脚本(也称为Jenkinsfile):

offset = 5
currentBuild.displayName = "#" + (currentBuild.number + offset)
Run Code Online (Sandbox Code Playgroud)

  • 请注意,这只是装饰性的——不会更改_实际_版本号。 (2认同)

小智 12

不幸的是,上面列出的方法在使用文件夹时对我不起作用.我在Jenkins脚本控制台中使用了以下内容:

job = Jenkins.getInstance().getItemByFullName("BSKAzureConversion-Jobs/master", Job.class)
job.nextBuildNumber = 92
job.save()
Run Code Online (Sandbox Code Playgroud)


Jay*_*yan 10

尝试在Jenkins脚本控制台中运行以下脚本.将"workFlow"更改为您的作业名称

def job = Jenkins.instance.getItem("workFlow")
job.nextBuildNumber = 10
job.saveNextBuildNumber()
Run Code Online (Sandbox Code Playgroud)

  • 此代码段不会将新的内部版本号写入`nextBuildNumber`文件.因此,如果您(优雅地)重新启动Jenkins然后触发构建,它最终会使用`nextBuildNumber`文件中存在的任何构建号(而不是上面代码段中指定的构建号).使用`job.saveNextBuildNumber()`而不是`job.save()`来解决这个问题. (2认同)