我正在尝试让 Jenkins 的多分支管道工作以与分支类似的方式构建标签。在 Jenkins 2.73 中(不确定何时添加了该功能),可以将 Multibranch 项目配置为从源存储库中检索分支和标签。最初我认为这对我的需求来说是完美的(我的 Jenkinsfile 现在可以从 Jenkins 的同一个地方构建开发或生产构建)。 配置了标签发现的多分支作业
我的构建过程本身已经启动并使用脚本管道非常愉快地运行,但是我的问题是,虽然分支作业完美地触发了我的触发器(每周 Cron),因此可以使用 Git 插件的 notifyOnCommit 功能触发(允许我每周清理构建,但通过 repo scan webhook 也可以在提交到 repo 时构建),标签构建不会。
有没有其他人遇到过这个?如果是这样,你有没有找到任何合理的方法来解决它?
我的脚本管道中的相关片段(我尝试了有无overrideIndexTriggers
设置):
properties(
[
pipelineTriggers(
triggers: [
cron('H 02 * * 7')
]
),
overrideIndexTriggers(true)
]
)
从多分支管道生成的分支作业轮询配置似乎很好多分支管道 从标签生成的作业没有收到相同的配置,奇怪的是......
多分支管道扫描日志中有一条注释表明标签永远不会被自动调度:
Processed 8 branches
Checking tags...
Checking tag testing
‘Jenkinsfile’ found
Met criteria
No automatic builds for testing
Processed 1 tags
[Mon Oct 23 09:55:00 UTC 2017] Finished branch indexing. Indexing took 8.1 sec
Finished: SUCCESS
我的项目是基于 docker 的,我想每周运行一次发布版本,以引入任何基础映像更改等。
有没有人知道我可以做些什么来让多分支项目安排标签构建?