首页 > 解决方案 > Azure Devops:将生成排队以在晚上运行

问题描述

我们正在尝试从代码中排队构建构建,但它不应该立即运行,而是在晚上运行,因为我们的构建管道在晚上非常空闲,而且这项工作不需要立即运行。

我们每天排队大约 20 个或那些构建,现在不幸的是它正在阻止其他构建。我知道我们可以使用构建优先级,但这还不够好,因为我们想要“推迟”的构建需要相当长的时间,并且如果在高重要性构建之前启动它会阻止其他构建。

我们还看到可以创建一个计划,但这听起来更像是一个构建,它应该在我们需要构建只运行一次的地方重新发生。

标签: azure-devopsazure-pipelines-release-pipeline

解决方案


有一种解决方法可以使用 Azure CLI 和 CMD 计划任务在指定时间运行一次构建。您可以尝试按照以下步骤操作。

1、需要安装Azure CLI。您可以按照此博客中的步骤开始使用 Azure CLI。[博客]:https ://devblogs.microsoft.com/devops/using-azure-devops-from-the-command-line/

2,创建如下所示的 CMD 脚本并将其保存到本地磁盘,有关 az 管道命令的更多信息,请访问https://docs.microsoft.com/en-us/cli/azure/ext/azure-devops/pipelines /build?view=azure-cli-latest#ext-azure-devops-az-pipelines-build-queue

az pipelines build queue --definition-name your-build-definition-name -o table

3,使用 schtask.exe 创建一个计划的 CMD 任务脚本,如以下示例,有关更多信息,请访问https://www.windowscentral.com/how-create-task-using-task-scheduler-command-prompt

schtasks /create /tn "give-your-task-a-name" /tr "the-location-of-the-scripts-file-you-created-in-previous-step" /sc ONCE /st 指定-运行你的构建的时间

您也可以将此脚本保存到本地磁盘,下次当您想安排构建在晚上运行时,您可以只运行此脚本。

希望以上步骤可以帮助您,这种解决方法似乎很乏味,需要一点努力。但这是一劳永逸的工作。


推荐阅读