我计划每 5 分钟拉取一次 Jenkins:*/5 * * * *。
我提交了对 SVN 的更改,我可以在 SVN 历史记录(日志)中看到它们。 Jenkins 开始构建,但它显示:Revision: x 没有变化。所有配置的都在运行。
5 分钟后,Jenkins 开始另一次运行,并显示消息:Revision: x+1 变化 仅用于测试 Jenkins 部署(详细信息) 按用户名
之后为了测试我改成了* * * * *每分钟运行一次,结果是这样的:
Jenkins 运行:
- 成功 > 控制台输出#1 76 2018 年 11 月 29 日下午 2:14
- 成功 > 控制台输出#1 75 2018 年 11 月 29 日下午 2:13
- 成功 > 控制台输出#1 74 2018 年 11 月 29 日下午 2:11
- 成功 > 控制台输出#1 73 2018 年 11 月 29 日下午 2:10
- 成功 > 控制台输出#1 72 2018 年 11 月 29 日下午 2:09
- 成功 > 控制台输出#1 71 2018 年 11 月 29 日下午 2:08
- 成功 > 控制台输出#1 70 2018 年 11 月 29 日下午 2:07
- 成功 > 控制台输出#1 69 2018 年 11 月 29 日下午 2:06 ---提交到这里
- 成功 > 控制台输出#1 68 2018 年 11 月 29 日下午 1:01
从 2.06 开始,他看到有变化,他运行作业,但它确实没有看到那里有什么变化,直到 2:14 才写了 SVN 提交消息。
也在最近的更改日志中:
变化
176(2018 年 11 月 29 日下午 2:14:19)
仅用于测试 Jenkins 部署 — 用户名/详细信息
168(2018 年 11 月 29 日下午 1:01:36)
这是奇怪的行为,有人知道吗,问题出在哪里?
最佳答案
根据对话,我们发现罪魁祸首是两台服务器(Jenkins 和 SVN)的时差,大约 7-8 分钟是问题所在。
Why does this happen ?
Jenkins 意识到有新版本可用,但无法 checkout 只要它自己的时间小于新版本的时间。
这里描述了一个类似的问题:
Why up-to-date files committed to SVN will not be immediately pulled out by Hudson to build
关于Jenkins - SVN 中存在更改,但 Jenkins 未显示任何更改,但构建正在运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53539651/