我在GitHub上托管的开源项目中具有以下配置: https://github.com/wez/wezterm/blob/master/azure-pipelines.yml#L9
schedules:
- cron: "0 0 * * *"
displayName: Daily build
always: true
branches:
include:
- master
我的azure组织是https://dev.azure.com/wez0788/wezterm。我的项目是开源的,并且使用了免费套餐。
该时间表似乎没有任何效果;没有计划的版本显示在版本列表中。
构建触发器的文档中有一个“疑难解答”部分,其中没有关于为何未安排计划的构建的任何有用信息。尚不清楚语法是否正确,因为没有UI来指示管道是否已选择时间表。该配置足以推送到存储库,PR确实触发了成功构建。
这个问题听起来很相似,但是有一个显着的区别,就是我从未运行过一个预定的构建,因此这不是一个间歇性问题: Azure DevOps build pipeline unreliable triggering by schedule
其他人似乎也有同样的问题,并在此处提出了GH问题,但是由于这是一个文档问题跟踪程序,因此已关闭: https://github.com/MicrosoftDocs/vsts-docs/issues/4589
如何使计划的构建实际运行?
答案 0 :(得分:0)
尝试使用以下内容,只需将双引号“替换为单引号'
schedules:
- cron: '0 0 * * *'
displayName: Daily build
branches:
include:
- master
always: true
答案 1 :(得分:0)
一个贡献者刚刚提供了一个方法,我认为这可能会对您有所帮助。当您第一次开始使用github repo构建管道时,它不会触发计划触发器。您需要修改yaml文件。修改后,计划构建应正常触发。
第二种情况是:有两个贡献者都使用同一github上的repo来构建管道。一个贡献者的构建管道不能触发进度表构建,而另一个贡献者可以正常地触发进度表构建。他们的解决方案是:在可以触发计划构建的管道中,再次运行计划构建。此时,无法触发计划构建的管道也显示了此正在运行的计划构建。此后,他可以正常触发时间表构建。因此,我建议您可以尝试在另一个项目或组织中使用相同的github存储库构建管道。如果Pipelien可以正常触发计划构建,那么您可以使用我的方法恢复无法触发计划构建的管道。
此外,我认为您的yaml语句没有问题,我使用相同的语句对其进行了测试,它可以正常触发计划构建。
我建议您将触发时间设置为较短,以便于测试,例如:此设置用于每分钟触发一次计划构建。
我还看到您here正在与有相同问题的贡献者进行讨论,我还将继续关注此问题。
希望这会有所帮助。