我正在使用 jenkins job dsl 来配置我的多分支管道作业。实际上,除了日志旋转器之外,我的所有设置都有效。我的目标是删除旧版本并保留特定数量的构建版本。我可以使用
options {
buildDiscarder(logRotator(numToKeepStr: '10'))
}
为此目的在自由泳工作中。多分支管道作业配置部分在 UI 中没有放弃旧生成部分作为选项。有什么方法可以在不将其添加到我的 jenkins 文件中的情况下使用 logRotator。
我在代码中添加了以下部分,以便在多分支管道作业中实现 buildDiscarder 功能。
multibranchPipelineJob("job") {
branchSources {
branchSource {
source {
bitbucket {
credentialsId("myid")
repoOwner("iam")
repository("job")
traits {
headWildcardFilter {
includes("branchestoinclude")
excludes("toexclude")
}
}
}
}
strategy {
defaultBranchPropertyStrategy {
props {
buildRetentionBranchProperty {
buildDiscarder {
logRotator {
daysToKeepStr("-1")
numToKeepStr("8")
artifactDaysToKeepStr("-1")
artifactNumToKeepStr("-1")
}
}
}
}
}
}
}
}
在 Jenkins job dsl中,multibranchPipelineJob 有一个选项,可以添加以下行来丢弃旧构建。
orphanedItemStrategy {
discardOldItems { numToKeep(10) }
}