我寻找一个解决方案,实际上是 Jenkins 在 git 中查找拉取请求并触发作业并报告结果。
通常是 git hook 触发 Jenkins 中的工作。但是由于一个新的程序,我正在以另一种方式工作。
应该是 Jenkins 做所有事情。从检查 git 上的任何拉取请求到触发自身并将结果发送到 git。
我寻找一个解决方案,实际上是 Jenkins 在 git 中查找拉取请求并触发作业并报告结果。
通常是 git hook 触发 Jenkins 中的工作。但是由于一个新的程序,我正在以另一种方式工作。
应该是 Jenkins 做所有事情。从检查 git 上的任何拉取请求到触发自身并将结果发送到 git。
这将是很多工作逻辑。我不推荐tbh。
您将使用管道 cron 触发器来设置您的作业的定期执行。
pipelineTriggers([cron('''* 1 * * *''')]),
然后你需要检查 bitbucket/github 并确定是否有任何新的变化,然后是否采取行动。
这将是很多逻辑,我会改为通过 webhook 路径保留在 git > jenkins 上,并在 jenkins 文件中设置关于做什么的条件。
您是否尝试过轮询 SCM 选项?它是核心的一部分,位于 UI 的 Build Triggers 部分。
代替:
triggers {
cron('@hourly')
}
利用:
triggers {
scm('@hourly')
}
如果 Jenkins 检测到与之前相同的提交,它会再次休眠。