我在Azure DevOps中运行构建流程,用于每日更新Dockerfile并使用更新的依赖项重新构建容器映像。目的是为项目拥有最新版本的依赖项,并在容器注册表中发布新的构件。
在Azure DevOps中,我有三个被链接的构建流程。第一个流程使用计划触发器每天触发。下两个流程则使用CI触发器和文件路径过滤器触发。这一切都很好,大部分时间都能正常工作。
我的问题是有时计划不会触发。这种情况会在流程正常运行数天后发生(大约1到15天)。复选框"仅当源或流程发生更改时才安排构建"未选中,因此没有提交不应该是问题的原因。
奇怪的是,在这种问题情况下,当我登录Azure DevOps门户网站时,计划事件立即触发,我可以看到最新的每日构建开始运行。我不需要手动启动它,它就会自动启动,就像按计划时间一样,但是在我登录时。
此项目正在使用Azure DevOps的免费版本。该项目和流程在Azure DevOps为VSTS时创建,同样的触发问题也存在于VSTS中。有时我会用完免费配额,然后我会收到代理无法启动的错误。当计划触发器未运行时,情况并非如此。
什么原因会导致按计划触发问题?你们有没有遇到过这个问题?我该如何调试或解决此问题,并使构建可靠运行?我找不到关于触发事件的任何调试信息,只能在触发后从代理日志中获取。我还没有重新创建流水线以查明是否在这种情况下“重新启动”有帮助。如果没有更好的答案,那就是接下来要做的。