azure-devops - Azure Devops:将生成排队以在晚上运行
问题描述
我们正在尝试从代码中排队构建构建,但它不应该立即运行,而是在晚上运行,因为我们的构建管道在晚上非常空闲,而且这项工作不需要立即运行。
我们每天排队大约 20 个或那些构建,现在不幸的是它正在阻止其他构建。我知道我们可以使用构建优先级,但这还不够好,因为我们想要“推迟”的构建需要相当长的时间,并且如果在高重要性构建之前启动它会阻止其他构建。
我们还看到可以创建一个计划,但这听起来更像是一个构建,它应该在我们需要构建只运行一次的地方重新发生。
解决方案
有一种解决方法可以使用 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 指定-运行你的构建的时间
您也可以将此脚本保存到本地磁盘,下次当您想安排构建在晚上运行时,您可以只运行此脚本。
希望以上步骤可以帮助您,这种解决方法似乎很乏味,需要一点努力。但这是一劳永逸的工作。
推荐阅读
- node.js - 在 socket.disconnect() 上传递参数
- java - 对 WAV 文件进行相位消除处理会生成没有声音的 WAV 文件
- javascript - 无法从活动用户列表中将接收者的 ID(用于私人消息应用程序)从客户端 JS 传递到服务器端。欢迎任何帮助
- c# - 什么是 C# 中的 GetMulticastInvoke() GetInvokeMethod()
- flutter - 使用警报管理器启动应用程序的正确方法是什么?
- swift - 如何从 UIKit 中的父剪辑中排除子视图?
- r - R Hunspell 自动更正和 2 列 tribble / 带有 unnest_tokens 的管道函数中的词干
- flutter - Flutter:图像调整大小动画滞后
- android - 使用处理程序线程避免 SCREEN_ON 上的 ANR
- c# - C# 错误:RestClient 从 SoapENV XML 读取值